这是输入:
$\left|-\infty\right|\showlists$
\end
这是输出:
\mathinner
.\left"26A30C
.\mathbin
..\fam2 ^^@
.\mathord
..\fam2 1
.\right"26A30C
目前尚不清楚哪些原子\left"26A30C
与哪些原子相对应\right"26A30C
。无法打开和关闭,因为根据 TeXbook 第 170 页的表格打开不能跟在垃圾桶(表格条目为*
)。
答案1
你写了,
[ ] 的状态
\left|
不能为Open
...,因为根据 TeXbook 第 170 页的表格,Open
后面不能跟Bin
(表格条目为*
)
TeXbook 第 170 页表格的解释是不是完全正确。例如,请参阅下面@egreg 的 [还有谁?!] 对我的后续评论他的回答针对这个问题右对齐环境的正确对齐的正确空间是多少?。
*
TeXbook 第 170 页表格中的含义的更好解释方式是:如果 TeX 遇到“不可能的组合” -- 例如open
后面跟着bin
-- 那么原子的状态bin
就会变为ord
。
让我们将其应用到\left|-\infty\right|
:
\left|
具有状态mathopen
。-
mathbin
默认情况下具有 状态。但是,由于open/bin
是“不可能”的组合, 的状态-
更改为ord
。请注意,最终结果完全符合预期,因为-
是手头公式中的一元运算符,而不是二元运算符。\infty
状态为。 也没有问题,因为在和ord
之间没有插入额外的空格-- 这对于一元运算符来说是合适的。-
\infty
\right|
有状态mathclose
;仍然没问题。
答案2
如果你将示例修改为
\tracingonline=1 \showboxdepth=\maxdimen \showboxbreadth=\maxdimen
$\mathopen|-\infty\mathclose| \left|-\infty\right|\showlists$\showlists
\end
你进入终端
### math mode entered at line 3
\mathopen
.\fam2 j
\mathbin
.\fam2 ^^@
\mathord
.\fam2 1
\mathclose
.\fam2 j
\mathinner
.\left"26A30C
.\mathbin
..\fam2 ^^@
.\mathord
..\fam2 1
.\right"26A30C
这应该可以回答你的问题:原子的“变化”\mathbin
发生在稍后,即在将数学列表转换为水平列表期间插入空格时。事实上,第二个\showlists
结果是
### horizontal mode entered at line 3
\hbox(0.0+0.0)x20.0
\mathon
\tensy j
\tensy ^^@
\tensy 1
\tensy j
\glue(\thinmuskip) 1.66663
\hbox(7.5+2.5)x23.33339
.\hbox(7.5+2.5)x2.77779
..\tensy j
.\tensy ^^@
.\tensy 1
.\hbox(7.5+2.5)x2.77779
..\tensy j
\mathoff
请注意,的 ASCII 码j
是"6A
,因此在所有情况下都使用相同的字形来实现垂直条。