![如何在重复使用定理编号以方便使用](https://linux22.com/image/352318/%E5%A6%82%E4%BD%95%E5%9C%A8%E9%87%8D%E5%A4%8D%E4%BD%BF%E7%94%A8%E5%AE%9A%E7%90%86%E7%BC%96%E5%8F%B7%E4%BB%A5%E6%96%B9%E4%BE%BF%E4%BD%BF%E7%94%A8.png)
我想要一个包含定理证明的附录。该定理出现在文档正文中,为了方便起见,我希望它也出现在附录中。
如果我只是复制原始定理环境,它将在附录中以新编号呈现。我想通过 使用相同的原始编号\ref
。实现此目的的最简洁方法是什么?
加分点:如果能以某种方式管理定理的整个副本,而实际上不重复源代码,而是引用第一次出现的内容,那就更好了。这样,如果我决定更改定理中的细节,它们将自动反映在附录的副本中。有没有一种干净的方法可以做到这一点?
答案1
您拥有restatable
来自thmtools
+ 的环境thmrestate
。请参阅 §1.4 中的详细信息和解释,重复定理的文档thmtools
。请注意,此包与amsthm
以及配合使用ntheorem
。
文档中的示例如下:首先声明你的定理环境:
\usepackage{thmtools, thm-restate}
\declaretheorem{theorem}
\begin{restatable}[Euclid]{theorem}{firsteuclid}
\label{thm:euclid}%
For every prime $p$, there is a prime $p’>p$.
In particular, the list of primes,
\begin{equation}\label{eq:1}
2,3,45,7,\dots
\end{equation}
is infinite.
\end{restatable}
环境的最后一个参数restatable
是用于重述定理的命令的名称:
\firsteuclid
或带星号的版本:\firsteuclid*
,其中重现了原始版本的编号。