下面的代码将
\begingroup
\everymath{\displaystyle}
\scriptsize
$XXXXXXX(XXXX(A,B,C),XXXX(D,E,F)) \leftarrow XXXXXX(A,B,C) \wedge XXXXXX(D,E,F) \wedge XXXXX(XX(A,B),XX(D,E)) \wedge XXXXX(XX(B,C),XX(E,F)) \wedge XXXXXX(XXX(A,B,C),XXX(D,E,F)).$
\endgroup
像这样格式化我的规则:
我真的不喜欢这个,因为它倾向于将表达式拉伸到覆盖整行,这完全没有必要。即使它没有扩展到覆盖整行,我只想在那里有一些自然的间距。有什么建议吗?
答案1
也许是这个样子?
\documentclass{article}
\begin{document}
$\scriptstyle
\begin{array}{l@{\quad}r}
XXXXXXX(XXXX(A,B,C),XXXX(D,E,F)) &\leftarrow \\
XXXXXX(A,B,C) \quad \wedge \quad XXXXXX(D,E,F) &\wedge\\
XXXXX(XX(A,B),XX(D,E)) & \wedge \\
XXXXX(XX(B,C),XX(E,F)) & \wedge \\
XXXXXX(XXX(A,B,C),XXX(D,E,F)).\\
\end{array}$
\end{document}
如果\quad
为您提供的空间太多,请尝试\mkern n mu
--\mkern18mu
对应于\quad
。
附录:如果您希望行尾\rightarrow
和\wedge
符号与右侧的材料之间有相同的距离(例如\quad
),那么单列array
可能就是您要找的。
\documentclass{article}
\begin{document}
$\scriptstyle\begin{array}{l}
XXXXXXX(XXXX(A,B,C),XXXX(D,E,F)) \quad\leftarrow \\
XXXXXX(A,B,C) \quad \wedge \quad XXXXXX(D,E,F) \quad\wedge\\
XXXXX(XX(A,B),XX(D,E)) \quad \wedge \\
XXXXX(XX(B,C),XX(E,F)) \quad \wedge \\
XXXXXX(XXX(A,B,C),XXX(D,E,F)).\\
\end{array}$
\end{document}
答案2
你可以让 TeX 决定换行符:
\documentclass{article}
\usepackage{amsmath}
\usepackage{lipsum} % just for the example
\newcommand{\lrand}{\mathrel{\land}} % a relation, while \wedge=\land is an operation
\newenvironment{mrule}
{\relpenalty=0 \flushleft$\displaystyle}
{$\endflushleft}
\newenvironment{mruleA}
{\relpenalty=0
\quote
\raggedright
$\displaystyle}
{$\endquote}
\begin{document}
\lipsum*[2]
\begin{mrule}
XXXXXXX(XXXX(A,B,C),XXXX(D,E,F)) \gets
XXXXXX(A,B,C) \lrand
XXXXXX(D,E,F) \lrand
XXXXX(XX(A,B),XX(D,E)) \lrand
XXXXX(XX(B,C),XX(E,F)) \lrand
XXXXXX(XXX(A,B,C),XXX(D,E,F)).
\end{mrule}
\lipsum*[3]
\begin{mruleA}
XXXXXXX(XXXX(A,B,C),XXXX(D,E,F)) \gets
XXXXXX(A,B,C) \lrand
XXXXXX(D,E,F) \lrand
XXXXX(XX(A,B),XX(D,E)) \lrand
XXXXX(XX(B,C),XX(E,F)) \lrand
XXXXXX(XXX(A,B,C),XXX(D,E,F)).
\end{mruleA}
\lipsum[4]
\end{document}
我更喜欢第二种方法,在左侧(和右侧)留出一些空间。如果你想达到右边距,请将定义更改为
\newenvironment{mruleA}
{\relpenalty=0
\list{}{\leftmargin=\leftmargini \rightmargin=0pt}
\raggedright\item\relax$\displaystyle}
{$\endlist}
通过设置,\relpenalty=0
我们告诉 TeX 在关系符号处断开是可以的。使用\lrand
而不是\wedge
可以确保 ∧ 和 ← 周围的间距相同(请注意\gets
与 相同\leftarrow
,但输入起来更短)。