如何将证明的 QED 符号放在对齐内的正确位置?

如何将证明的 QED 符号放在对齐内的正确位置?

当证明以公式equationequation*环境中的公式结尾时,\qedhere在方程式后面放置会导致 QED 符号出现在正确的位置。即在方程式出现的行的末尾。例如:

\begin{equation}
  x = y+z \qedhere
\end{equation}

align但是,当公式位于/align*环境中时,使用相同方法无法获得相同的结果:

\begin{align}
  x &= a+b \\
    &= y+z \qedhere
\end{align}

正方形出现在 (y+z) 之后,并没有移动到页面的右边界。

以下是 MWE:

\documentclass[a4paper]{article}
\usepackage{hyperref}
\usepackage{amsthm}
\usepackage[cmex10]{amsmath}
\interdisplaylinepenalty=2500
\usepackage{amssymb}

\title{Example to Show QED is Misplaced}
\author{}
\begin{document}
\begin{proof}
  This proof is typeset correctly:
  \begin{equation*}
    x = y + z \qedhere
  \end{equation*}
\end{proof}

\begin{proof}
  But this one not!
  \begin{align*}
    x & = u + v \\
    & = y + z \qedhere
  \end{align*}
\end{proof}

\end{document}

答案1

改变顺序,这样就可以了,amsthm amsmath否则它可能很难钩住align*

\documentclass[a4paper]{article}
\usepackage{amsmath}
\usepackage{amsthm}
\interdisplaylinepenalty=2500
\usepackage{amssymb}
\usepackage{hyperref}

\title{Example to Show QED is Misplaced}
\author{}
\begin{document}
\begin{proof}
This proof is typeset correctly:
\begin{equation*}
x = y + z \qedhere
\end{equation*}
\end{proof}

\begin{proof}
But this one not!
\begin{align*}
x & = u + v \\
& = y + z \qedhere
\end{align*}
\end{proof}

\end{document}

答案2

第 5 条阿姆斯特丹包文档包含以下内容。

amsmath与版本 2 或更高版本的软件包一起使用时, \qedhereQED 符号将位于右侧齐平;使用早期版本时,符号将与文本或显示末尾相隔四分之一。如果 \qedhere在方程式中产生错误消息,请尝试使用 \mbox{\qedhere}

但是,当我尝试使用您的示例时,我得到的 QED 符号位于显示屏末尾一个四边形处,尽管我的发行版包含 amsmath 版本 2.13。但是,使用

\tag*{\qedhere} 

反而解决了这个问题。

相关内容