我想在定理证明中对断言进行编号,但证明并未出现在定理陈述之后。也就是说,我想生成:
定理1.XXXX
定理2.YYYY
定理 1 的证明:....
索赔 1.1 xxxx
....
我正在使用 thmtools,因此希望避免使用 ntheorem。
答案1
这是一个可能的解决方案,它基于lateproof
建立的环境proof
,将我们要证明的定理对应的标签作为参数。
\documentclass{article}
\usepackage{amsthm,thmtools}
\declaretheorem[
style=plain,
name=Theorem,
]{theorem}
\declaretheorem[
style=plain,
name=Claim,
within=theorem,
]{claim}
\renewcommand{\theclaim}{\thetheorem.\arabic{claim}}
\newenvironment{lateproof}[1]
{%
\renewcommand{\theclaim}{\ref{#1}.\arabic{claim}}%
\begin{proof}[Proof of Theorem~\ref{#1}]%
}
{\end{proof}}
\begin{document}
\begin{theorem}
This theorem is proved just below.
\end{theorem}
\begin{proof}
We do some claims.
\begin{claim}
First claim.
\end{claim}
\begin{claim}
Second claim.
\end{claim}
The proof is complete.
\end{proof}
\begin{theorem}\label{tobeprovedlater}
This theorem is proved later.
\end{theorem}
\begin{theorem}
This is an intermediate theorem.
\end{theorem}
\begin{lateproof}{tobeprovedlater}
We do some claims.
\begin{claim}
First claim.
\end{claim}
\begin{claim}
Second claim.
\end{claim}
The proof is complete.
\end{lateproof}
\end{document}