LaTeX 中数学符号类型与间距

在 LaTeX 中, 不同类型的数学符号间的间距时有所不同的, 比如 $0-2 = -2$ 中, 前一个 – 是二元运算符 (bin) 减号, 而后一个是作为普通符号 (ord) 的负号. 稍微仔细观察一下就会发现间距不同.

在 LaTeX 中定义了八种类型的符号, 一般使用中需要注意的就是普通符 (ord), 二元符 (bin), 关系符 (rel) 以及算符 (op, 或算子符, 一元运算符).

首先看普通符与二元符或关系符之间的区别, 最直接也是最本质的就是, 普通符没有额外的间距, 比如 $ABC$ 中间就是挨着, 但是 $1 + 1 = 2$ 中, 加号是二元符, 前后间距 \: , 等号是关系符, 前后间距是 \; (比 \: 略大, 后续给出对比). 实际使用中有时会需要把一个符号原本的类型改为其他的类型, 比如表示卡氏积的方框, 应该是一个二元运算符, 不过无论 \square 还是 \Box (这两个我找到区别) 都只是普通符号, 比如 $A \square B$ (习惯用 \square ), 而正确的写法应该是
A \mathbin{\square} B
得到 $A \mathbin{\square} B$, 其中 \mathbin 的功能就是转换为 二元符. 可以对比一下间距. 另外, 转换为关系符用 \mathrel, 下面给个对比看看 (建议至少放大为两倍再看), 其中第一个加号是原始的, 第二个特别转换为 bin, 第三个转换为 rel.

$a+b$
$a \mathbin{+} b$
$a \mathrel{+} b$

一类算符代表就是求和号 $\sum$ 之类, 另一个就是函数名, 如 $\sin$ 之类. 在第一类中, 有一个符号, 形式幂级数的求和号为了和正常的求和号区别, 使用 $\mathop{\sigma}$, 但是仅仅 \sigma 没法满足上下标的格式要求, 这里有三种办法, 第一二种示例如下, 是如果使用次数很少时采用的 \mathop{\sigma} 和 \operatorname*{\sigma}, 代码为

\[ \mathop{\sigma}_{i=1}^n, \operatorname*{\sigma}_{i=1}^n \]

\[ \mathop{\sigma}_{i=1}^n, \operatorname*{\sigma}_{i=1}^n \]
第三种是使用较多时采用的在导言区 DeclareMathOperator*{\abc}{abc} 定义, 文中使用 \abc.

实际中第二类算符更常见, 一般规则, 在数理中使用两个或以上字母共同表示一个含义时, 参照函数名对待. 意思就是比如 abc 三个一起表达了一个意思, 而不是表示 a,b,c 的乘积, 就像 $\sin$ 一样. 这时候同样, 如果使用次数很少, 建议用 \operatorname{abc} x 得到 $\operatorname{abc} x$ (似乎和前一个命令有点区别), 使用较多时, 在导言区通过 DeclareMathOperator{\abc}{abc} 定义, 文中使用 \abc 即可. 接下来给出 \operatorname 的示例如下, 代码为

\[ \operatorname{ess}_{j=1}^n, \operatorname*{ess}_{j=1}^n\]

\[ \operatorname{ess}_{j=1}^n, \operatorname*{ess}_{j=1}^n\]

这时候, 就可以通过定义微分符号 $\operatorname{d\!}$ 而得到 $\operatorname{d\!}x$, 而不是有些人使用的 $dx$.

本文主要参考 胡伟 LaTeX 完全学习手册.