我在用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}