这个问题与以下问题相关:回顾一个定理,它使用 thmtools 和 thm-restate 包以及可重述环境来定义一个以后可以重述的定理。
是否可以引用稍后定义的内容?在之前的章节中,我进行了一些讨论,这些讨论引用了在后面的章节中正确定义的定义,但我无法在定义之前重复使用这个定义...
例如,当我执行以下操作时
\documentclass{article}
\usepackage{thmtools}
\usepackage{thm-restate}
\declaretheorem[name=Theorem,numberwithin=section]{thm}
\begin{document}
\section{First}
\goldbach*
\begin{restatable}[Goldbach's conjecture]{thm}{goldbach}
\label{thm:goldbach}
Every even integer greater than 2 can be expressed as the sum of two primes.
\end{restatable}
\end{document}
我收到一个错误 -
undefined control sequence \goldbach
有没有办法导出这些定义,以便在实际定义之前可以引用它们......?
答案1
反过来做,利用restatable*
环境。
\documentclass{article}
\usepackage{thmtools}
\usepackage{thm-restate}
\usepackage{lipsum}
\declaretheorem[name=Theorem,numberwithin=section]{thm}
\begin{document}
\section{First}
\begin{restatable*}[Goldbach's conjecture]{thm}{goldbach}
\label{thm:goldbach}
Every even integer greater than 2 can be expressed as the sum of two primes.
\end{restatable*}
\lipsum[2]
\begin{thm}
One
\end{thm}
\lipsum[3]
\begin{thm}
Two
\end{thm}
\lipsum[3]
\goldbach
\lipsum[3]
\end{document}