第 1 部分

第 1 部分

我正在写一篇与 llncs 类有关的文章,并且试图在不同的章节中重复一个定理两次。

例如,

第 1 部分

定理 1.1。 ...

然后在论文的后面,我想通过重印它来回顾这个定理

第 4 部分

我们回想一下定理 1.1:

定理 1.1。 ...

我使用了 [1,2,3,4,5] 中提出的解决方案,但它们似乎与 llncs 类发生冲突且不起作用。有没有办法将这些解决方案用于 llncs 类?

[1]-如何重复定理编号?

[2]-使用 LaTeX,如何在论文中用相同的定理编号重新表述定理?

[3]-回顾一个定理

[4]-重复定理

[5]-如何自动重复所有定理?

答案1

llncs课程使用不同的方式定义类似定理的环境,因此其他建议的方法不起作用并不奇怪。 这两种amsthm解决ntheorem方案都行不通。

这里我假设重复定理先于重复。我定义了一个reptheorem存储文本的新环境;它有一个强制参数,还设置了\label同名的。

在示例中,我还表明可选参数是被尊重的。

\documentclass[envcountsect]{llncs}
\usepackage{environ}

\newcommand{\repeattheorem}[1]{%
  \begingroup
  \renewcommand{\thetheorem}{\ref{#1}}%
  \expandafter\expandafter\expandafter\theorem
  \csname reptheorem@#1\endcsname
  \endtheorem
  \endgroup
}

\NewEnviron{reptheorem}[1]{%
  \global\expandafter\xdef\csname reptheorem@#1\endcsname{%
    \unexpanded\expandafter{\BODY}%
  }%
  \expandafter\theorem\BODY\unskip\label{#1}\endtheorem
}

\begin{document}

\section{Title}

\begin{reptheorem}{foo}[Somebody]
Let $x$ be a foo. Then $x$ is also a baz.
\end{reptheorem}

\section{Another}

\repeattheorem{foo}

\end{document}

在此处输入图片描述

评论中询问的一项功能促使为这项工作编写“更现代的代码”。

\documentclass[envcountsect]{llncs}
\usepackage{amsmath}

\newcommand{\replabel}{\label} % will be redefined in restatements

\ExplSyntaxOn

\NewDocumentCommand{\repeattheorem}{m}
 {
  \group_begin:
  \renewcommand{\thetheorem}{\ref{#1}}
  \renewcommand{\replabel}[1]{\tag{\ref{##1}}}
  \prop_item:Nn \g_reptheorem_prop { #1 }
  \endtheorem
  \group_end:
 }

\NewDocumentEnvironment{reptheorem}{m+b}
 {
  \prop_gput:Nnn \g_reptheorem_prop { #1 } { \theorem #2 \endtheorem }
  \theorem#2\unskip\label{#1}\endtheorem
 }{}

\prop_new:N \g_reptheorem_prop

\ExplSyntaxOff

\begin{document}

\section{Title}

\begin{reptheorem}{foo}[Somebody]
Let $x$ be a foo. Then $x$ is also a baz.
\begin{equation}\replabel{fooeq}
1=1
\end{equation}
with an equation.
\end{reptheorem}

\section{Another}

\repeattheorem{foo}

\end{document}

在需要重复的定理中,方程的标签(强制性)应设置为\replabel。这样,我们可以将含义改为使用\tag\label不能使用 命令,因为amsmath( 的必要性)会将显示中\tag的含义改回。\label

在此处输入图片描述

相关内容