在修改论文时,我需要在引理 1 之后和引理 2 之前插入一个引理。我不想将其称为“引理 2”,因为之前的引理 2 会更改为引理 3,之前的引理 3 会更改为引理 4 等,这会让审阅者感到困惑。因此,至少对于审阅来说,我想将新引理命名为“引理 1*”或“引理 1.5”或“引理 1a”之类的名称。我尝试使用更改计数器,\setcounter{lemma}{1.5}
但没有成功。
有没有办法使用引理环境来做到这一点?(如果可能的话,我希望也能够\label
在这个引理中使用,以便以后可以引用它\ref
)。
答案1
这假设引理有自己的反引理
\let\savedthelemma\thelemma
\edef\thelemma{\thelemma.5}
\begin{lemma}\label{newlemma}
This is the added lemma.
\end{lemma}
\let\thelemma\savedthelemma
\addtocounter{lemma}{-1}
当然,在审阅者同意后,您将删除最终版本的附加代码。数字和参考资料将自动更新。
完整示例
\documentclass{article}
\newtheorem{lemma}{Lemma}
\begin{document}
\setcounter{lemma}{3}% just to show that the mid-lemma can go anywhere
Let's see the references:
lemma~\ref{bestlemma}, lemma~\ref{newlemma}, lemma~\ref{anotherlemma}.
\begin{lemma}\label{bestlemma}
This is a lemma.
\end{lemma}
%%% cut in final version
\let\savedthelemma\thelemma
\edef\thelemma{\thelemma.5}
%%% end cut here
\begin{lemma}\label{newlemma}
This is the added lemma.
\end{lemma}
%%% cut in final version
\let\thelemma\savedthelemma
\addtocounter{lemma}{-1}
%%% end cut here
\begin{lemma}\label{anotherlemma}
Another lemma.
\end{lemma}
\end{document}
最终版本剪辑后你将获得
如果你有类似的东西
\newtheorem{theorem}{Theorem}
\newtheorem{lemma}[theorem]{Lemma}
因此引理与定理共享计数器,在给定代码中的任何地方使用它来thetheorem
代替。thelemma
如果您需要更多的中间引理,您可以避免污染打字稿,以便最终版本只需要进行最少的更改。
\documentclass{article}
\newtheorem{lemma}{Lemma}
%%% cut for final version
%%% and remember to change
%%% \begin{lemma*}{...} --> \begin{lemma}
%%% \end{lemma*} --> \end{lemma}
\newenvironment{lemma*}[1]
{%
\let\savedthelemma\thelemma
\edef\thelemma{\thelemma#1}%
\lemma
}
{\endlemma\addtocounter{lemma}{-1}}
%\renewenvironment{lemma*}[1]{\lemma}{\endlemma}
%%% end cut
\begin{document}
\setcounter{lemma}{3}% just to show that the mid-lemma can go anywhere
Let's see the references:
lemma~\ref{bestlemma}, lemma~\ref{newlemma}, lemma~\ref{newlemmaagain}, lemma~\ref{anotherlemma}.
\begin{lemma}\label{bestlemma}
This is a lemma.
\end{lemma}
\begin{lemma*}{a}\label{newlemma}
This is the added lemma.
\end{lemma*}
\begin{lemma*}{b}\label{newlemmaagain}
This is the added lemma.
\end{lemma*}
\begin{lemma}\label{anotherlemma}
Another lemma.
\end{lemma}
\end{document}
相同警告如果有共享计数器,则适用前面的方法。
您甚至可以通过取消注释行而不修改主体来测试最终的编号\renewenvironment
,但对于真正的最终版本,最好lemma*
消失。