|
2.8.15 Operatoren ohne eingebaute Bedeutungen
Wird als Input zum Beispiel 2 + 2 eingegeben, so erkennt Mathematica zuerst + als einen Operator, konstruiert den Ausdruck Plus[2, 2] und verwendet dann die eingebauten Regeln für Plus, um den Ausdruck zu evaluieren und das Ergebnis 4 zu erhalten.
Nicht alle von Mathematica erkannten Operatoren hängen mit Funktionen zusammen, die eine eingebaute Bedeutung haben. Mathematica unterstützt mehrere Hundert zusätzliche Operatoren, die zur Konstruktion von Ausdrücken verwendet werden können, für die es anfangs jedoch keine Evaluierungsregeln gibt.
Mit diesen Operatoren läßt sich in der Mathematica-Sprache eine eigene individuelle Schreibweise konstruieren.
wird als Infix-Operator erkannt, hat aber keinen vordefinierten Wert.
In[1]:= 
Out[1]//FullForm= 
In StandardForm druckt als Infix-Operator.
In[2]:= 
Out[2]= 
Sie können einen Wert für definieren.
In[3]:= x_ y_ := Mod[x + y, 2]
Nun wird nicht nur als ein Operator erkannt, sondern kann auch evaluiert werden.
In[4]:= 2 3
Out[4]= 
Einige Mathematica-Operatoren, die Funktionen ohne vordefinierte Werte entsprechen
Mathematica folgt der allgemeinen Vereinbarung, daß die mit einem speziellen Operator verknüpfte Funktion denselben Namen wie das Sonderzeichen, das den Operator repräsentiert, haben sollte.
\[Congruent] wird als dargestellt.
In[5]:= x \[Congruent] y
Out[5]= 
Es entspricht der Funktion Congruent.
In[6]:= FullForm[%]
Out[6]//FullForm= 
Die übliche Entsprechung in Mathematica zwischen Operatoren- und Funktionsnamen
Sie sollten sich bewußt machen: Auch wenn die Funktionen CirclePlus und CircleTimes keine eingebauten Evaluierungsregeln haben, so haben die Operatoren und doch jeweils eingebaute Rangordnungswerte. Im Abschnitt A.2.7 werden alle Operatoren, die Mathematica erkennt, nach ihrem Rangordnungswert sortiert aufgelistet.
Die Operatoren und haben eine bestimmte Rangordnung—wobei die von höher ist als die von .
In[7]:= x y z // FullForm
Out[7]//FullForm= 
Einige zweidimensionale Formen ohne eingebaute Bedeutungen
Tiefstellungen haben in Mathematica keine eingebauten Bedeutungen.
In[8]:= 
Out[8]//InputForm= Subscript[x, 2] + Subscript[y, 2]
Die meisten Hochstellungen werden jedoch vorgabemäßig als Potenzen interpretiert.
In[9]:= 
Out[9]//InputForm= x^2 + y^2
Einige spezielle Hochstellungen werden nicht als Potenzen interpretiert.
In[10]:= 
Out[10]//InputForm= SuperDagger[x] + SuperPlus[y]
Balken und Spitzdach werden als OverBar und OverHat interpretiert.
In[11]:= 
Out[11]//InputForm= OverBar[x] + OverHat[y]
|