对齐环境中数学行末尾的文本

对齐环境中数学行末尾的文本

如何在 align* 环境中将文本放在行末(最右外)?我在 align* 中有一组方程式,我想在每一行的末尾写一点文本来解释这一行。我希望它位于每一行的右侧。

答案1

有两种不同类型的对象可以修饰等式:

  1. 一个数字或标签或
  2. 一个解释”。

数字或标签不属于等式:它只是为了交叉引用的方便,比“第 234 页的第三个等式”更方便。

一个解释等式的一部分(或推导中的步骤),并且不应右对齐。代码:

\begin{alignat*}{2}
a+(b+s(c))
&=a+s(b+c)    &\qquad& \text{(definition)} \\
&=s(a+(b+c))  && \text{(definition)} \\
&=s((a+b)+c)) && \text{(induction)} \\
&=(a+b)+s(c)  && \text{(definition)}
\end{alignat*}

在此处输入图片描述

相同(ab)使用\tag

\begin{align*}
a+(b+s(c))
&=a+s(b+c)    \tag{definition} \\
&=s(a+(b+c))  \tag{definition} \\
&=s((a+b)+c)) \tag{induction} \\
&=(a+b)+s(c)  \tag{definition}
\end{align*}

在此处输入图片描述

但这有一个明显的问题:如果文档类指定leqno,你会得到

在此处输入图片描述

没有任何警告。

一个可能的解决方法是使用flalign*

\documentclass[leqno]{article}
\usepackage{amsmath}
\usepackage{showframe}

\begin{document}

After observing that $a+(b+0)=a+b=(a+b)+0$ we can proceed to prove
the associativity of addition by induction, namely
\begin{flalign*}
&&a+(b+s(c))
&=a+s(b+c)    &&\text{(definition)} \\
&&&=s(a+(b+c))  &&\text{(definition)} \\
&&&=s((a+b)+c)) &&\text{(induction)} \\
&&&=(a+b)+s(c)  &&\text{(definition)}
\end{flalign*}


\end{document}

在此处输入图片描述

但我会坚持使用第一个显示,原因已经在开头概述。

相关内容