答案1
您可以尝试使用显示的代码在这个答案中\proofatend
但改变的定义
\long\def\proofatend#1\endproofatend{%
\proof See page \pageref{pr\pat@label}.\endproof
\edef\next{\noexpand\begin{proof}[Proof of \pat@label]\noexpand\label{pr\pat@label}}%
\toks\numexpr\prooftoks+\value{proofcount}\relax=\expandafter{\next#1\end{proof}}
\stepcounter{proofcount}}
这将放在Proof. See page nnn.
语句后面。
如果你喜欢以环境形式编写证明,那么也可以加载环境\proofatend
封装并写入,而不是之前的定义:
\NewEnviron{proofatend}
{\proof See page \pageref{pr\pat@label}.\endproof
\edef\next{\noexpand\begin{proof}[Proof of \pat@label]\noexpand\label{pr\pat@label}}%
\toks@=\expandafter{\next}%
\global\toks\numexpr\prooftoks+\value{proofcount}\relax=
\expandafter{\the\expandafter\toks@\BODY\end{proof}}%
\stepcounter{proofcount}}
然后你可以将证明写成
\begin{lem}\label{addition}
$1+1=2$
\end{lem}
\begin{proofatend}
It's quite clear.
Here's a paragraph break.
\end{proofatend}