我想将多个方程式对齐,使得中心运算符始终居中,但在右侧有一列用于注释,在左侧有一列用于 \iff-arrows 和 \Rightarrow-arrows。这是我所能做到的:
\begin{align*}
&& A &\aprecdot \mathfrak{G}^{\signminus 1}_1(\mathfrak{G}(C))
&& \text{by \eqref{eq:C}} \\
\iff && \mathfrak{G}(A) &\cprecdot \mathfrak{G}(\mathfrak{G}^{\signminus 1}_1(\mathfrak{G}(C)))
&& \text{by \eqref{eq:D}} \\
\iff && \mathfrak{G}(A) &\cprecdot \mathfrak{G}(C)
&& \text {by axiom 1.} \\
\iff && \mathfrak{G}^{\signminus 1}_1(\mathfrak{G}(A)) &\aprecdot \mathfrak{G}^{\signminus 1}_1(\mathfrak{G}(C)) \\
\iff && A &\aprecdot B
\end{align*}
它工作得很好,但问题是,如果我有多个这样的列表,它们彼此之间用文本分隔,这看起来会很难看,因为列宽差别很大。因此,我想将 \iff-arrows 放在左边框上,而注释则左对齐,与右边框保持固定距离。我该怎么做?
提前致谢。
答案1
我同意 A. Ellet 的观点。 flalign
如果你想发表任何评论,这可能是最好的选择。这是一个更基本的例子,它只解决一个特定的变量:
\documentclass{article}
\usepackage{amsmath}
\usepackage{amssymb}
\begin{document}
\begin{flalign*}
&& d &= v_{o}t + \frac{1}{2}at^{2} && \text{A kinematic equation} \\
\Rightarrow && d - v_{o}t &= \frac{1}{2}at^{2} && \text{Another comment} \\
\Rightarrow && \frac{2(d - v_{o}t)}{a} &= t^{2} && \text{One here too} \\
\Rightarrow && \sqrt{\frac{2(d - v_{o}t)}{a}} &= t && \text{Solved for $t$}
\end{flalign*}
\end{document}
这产生了
不过,我不太清楚如何使评论和箭头更接近整体方程。
答案2
amsmath
你可以使用 内部技巧将条目置于比对的列中amsmath
。首先扫描比对以获取列宽,这些列宽存储在\maxcolumn@width
格式下
\or<widht1>\or<width2>\or...
因此,我们可以利用这一点,定义一个宏\Cen
,在进行测量时只传递其第二个参数,然后使用计算出的列宽将其参数居中。该宏有两个参数:第一个是列号,第二个是材料。
我还把 的定义改为关系符号,而不是二元运算。我还引入了和 removed 的\cprecdot
简写,这只会产生非常糟糕的结果(但文档是你的,所以随你喜欢)。\mathfrak{G}
\signminus
\documentclass{article}
\usepackage{amsmath,amssymb,graphicx}
\newcommand{\cprecdot}{\prec\joinrel\mathrel{\cdot}}
\newcommand{\aprecdot}{\mathbin{\dot{\ast}}}
\newcommand{\fG}{\mathfrak{G}}
\makeatletter
\newcommand{\Cen}[2]{%
\ifmeasuring@
#2%
\else
\makebox[\ifcase\expandafter #1\maxcolumn@widths\fi]{$\displaystyle#2$}%
\fi
}
\makeatother
\begin{document}
\begin{align*}
&& \Cen{3}{A \aprecdot \fG^{-1}_1(\fG(C))}
&& \text{by \eqref{eq:C}} \\
&\iff & \Cen{3}{\fG(A) \cprecdot \fG(\fG^{-1}_1(\fG(C)))}
&& \text{by \eqref{eq:D}} \\
&\iff & \Cen{3}{\fG(A) \cprecdot \fG(C)}
&& \text {by axiom 1.} \\
&\iff & \Cen{3}{\fG^{-1}_1(\fG(A)) \aprecdot \fG^{-1}_1(\fG(C))} \\
&\iff & \Cen{3}{A \aprecdot B}
\end{align*}
\end{document}
答案3
我不完全清楚你想要什么效果,但这里有一个使用环境的例子flalign
。
% arara: pdflatex
% arara: pdflatex
% arara: open
\documentclass{article}
\usepackage{amsmath,amssymb}
\let\aprecdot\cdot
\let\signminus\pm
\let\cprecdot\cdot
\pagestyle{empty}
\usepackage{lipsum}
\begin{document}
\lipsum[1]
\begin{flalign*}
& & & A & \aprecdot \mathfrak{G}^{\signminus 1}_1(\mathfrak{G}(C)) & & & & \text{by \eqref{eq:C}} \\
& \iff & & \mathfrak{G}(A) & \cprecdot \mathfrak{G}(\mathfrak{G}^{\signminus 1}_1(\mathfrak{G}(C))) & & & & \text{by \eqref{eq:D}}
\intertext{Here's something in the middle of the text}
& \iff & & \mathfrak{G}(A) & \cprecdot \mathfrak{G}(C) & & & & \text {by axiom 1.} \\
& \iff & & \mathfrak{G}^{\signminus 1}_1(\mathfrak{G}(A)) & \aprecdot \mathfrak{G}^{\signminus 1}_1(\mathfrak{G}(C)) \\
& \iff & & A & \aprecdot B
\end{flalign*}
\lipsum[2]
\end{document}
此外,由于您仅提供了部分示例,我不确定在哪里\aprecdot,\signimuns,
或被\cprecdot
定义......