无内部定义的运算符

为例,当进行输入时,Mathematica 首先将 识别为一个运算符,并构造表达式 Plus[2, 2],然后用 Plus 的内部规则计算该表达式从而得到结果 .

当并非所有能被 Mathematica 识别的运算符都与一个有内部含义的函数相联系. Mathematica 也支持几百种额外的运算符用于表达式的构造,但对这些运算符没有事先定义的计算规则.

Mathematica 语言内部,可以用这些运算符构造自己的记号.

被看作一个中缀运算符,但没有事先定义的值.
In[1]:=
Click for copyable input
Out[1]//FullForm=
StandardForm 中, 显示为一个中缀运算符.
In[2]:=
Click for copyable input
Out[2]=
可以为 定义一个值.
In[3]:=
Click for copyable input
现在 不仅被看作一个运算符,而且可以进行计算.
In[4]:=
Click for copyable input
Out[4]=
xyCirclePlus[x,y]
xyTildeTilde[x,y]
xyTherefore[x,y]
xyLeftRightArrow[x,y]
xDel[x]
xSquare[x]
x,y,...AngleBracket[x,y,...]

对应于未预先定义值函数的一些 Mathematica 运算符.

Mathematica 按照常规约定,与一个运算符对应的函数与表示这个运算的特定字符具有相同的名称.

显示为 .
In[5]:=
Click for copyable input
Out[5]=
它对应于函数 Congruent.
In[6]:=
Click for copyable input
Out[6]//FullForm=
x \[name] yname[x, y]
\name[x]
\[Leftname] x,y,... \[Right name]
name[x, y, ...]

Mathematica 中运算符名称和函数名称之间的常规对应.

应该认识到,即使函数 CirclePlusCircleTimes 没有给定的内部运算规则,运算符 仍具有内部设定的优先级别. "运算符的输入形式" 一节中按照优先次序列出了能被 Mathematica 识别的全部运算符.

运算符 有明确的优先级别—— 的优先级高于 .
In[7]:=
Click for copyable input
Out[7]//FullForm=

一些没有内部定义的二维形式.

Mathematica 中的下标没有内部定义.
In[8]:=
Click for copyable input
Out[8]//InputForm=
而大部分上标被默认解释为幂.
In[9]:=
Click for copyable input
Out[9]//InputForm=
一些特殊上标不被解释为幂.
In[10]:=
Click for copyable input
Out[10]//InputForm=
- 和 ^ 被解释为 OverBarOverHat.
In[11]:=
Click for copyable input
Out[11]//InputForm=
New to Mathematica? Find your learning path »
Have a question? Ask support »