我希望获得如下结果:
介绍
...
我们将得到以下定理:
定理 2.X
[定理陈述]
...
- 第一节
...
- 第二节
...
这给出
定理 2.X
[定理陈述]
...
当然,我不想在介绍中手动输入定理,这样每次我在定理 2.X 之前添加一些新定理时都必须更新数字。
我能想到的最好方法是使用 \cref 表示定理的数量,比如
\documentclass{article}
\usepackage{hyperref}
\usepackage{cleveref}
\usepackage{amsthm}
\newtheorem{theorem}{Theorem}[section]
\crefname{theorem}{theorem}{theorems}
\begin{document}
\section*{Introduction}
\Cref{label}
\textit{[statement of the theorem]}
\section{Section One}
\section{Section Two}
\begin{theorem}\label{label}
[statement of the theorem]
\end{theorem}
\end{document}
这似乎还不错,但我仍然需要手动操作以保持语句和文本样式同步。此外,如果我使用 tcbtheorem 来处理我的定理,那么我需要创建一个 tcolorbox 并使其与我的定理框具有相同的样式,如果有一天我想更改样式,那就太麻烦了。
我想知道是否有更好的解决方案,可以自动完成所有操作。提前致谢。
答案1
该thmtools
包定义可重述的通过thm-restate
包可以实现定理。下面是手册中的示例,展示了如何使用它:
\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}
在右边,我只需使用
\firsteuclid*