使用“prooftree”包进行 QED 放置

使用“prooftree”包进行 QED 放置

我在用Paul Taylor 的prooftree包裹排版自然演绎证明树。

当证明以证明树结尾时,如何才能获得 QED 符号的正确位置?例如下面的 MWE,通过\qedhere在最后三行中的任意一行的末尾和开头放置 ,并改变和命令\end{proof}的顺序,我能够获得 QED 标记的所有以下位置:\using\justifies

  • 与右边距水平对齐,但以下证明树的结束(与没有一样\qedhere);
  • 水平方向与右边距齐平,但垂直方向与中间证明树;
  • 证明树的最后一行,紧邻最后一个公式的末尾;
  • 在证明树的最后一行,紧邻开始最后一个公式。

但不是想要的

  • 垂直方向,与校样树的最后一行齐平;水平方向,与右边距齐平。

有没有人遇到过/解决过类似的问题?

\documentclass{amsart}
\usepackage{amsthm}
\newtheorem{theorem}{Theorem}
\usepackage{prooftree}
\begin{document}

  \begin{theorem}
  Equality is transitive.
  \end{theorem}
  \begin{proof}
    \[
    \begin{prooftree}
      \[
      \justifies \thickness=0.08em
      t = t
      \using{\scriptstyle{refl}}
      \]
      \qquad
      t = s
      \using{\scriptstyle{subst}}
      \justifies \thickness=0.08em
      s = t
    \end{prooftree}
    \]
  \end{proof}

\end{document}

答案1

定义一个bprooftree环境,将证明树的参考点设置在底部而不是中心。

\documentclass{amsart}
\usepackage{amsthm}
\newtheorem{theorem}{Theorem}
\usepackage{prooftree,adjustbox}

\newenvironment{bprooftree}
 {\begin{adjustbox}{raise=\depth}\begin{prooftree}}
 {\end{prooftree}\end{adjustbox}}

\begin{document}

\begin{theorem}
Equality is transitive.
\end{theorem}

\begin{proof}
\[
\begin{bprooftree}
  \[
  \justifies \thickness=0.08em
  t = t
  \using{\scriptstyle\mathit{refl}}
  \]
  \qquad
  t = s
  \using{\scriptstyle\mathit{subst}}
  \justifies \thickness=0.08em
  s = t
\end{bprooftree}
\qedhere
\]
\end{proof}

\end{document}

在此处输入图片描述

相关内容