对定理进行子编号,但子定理作为单独的块

对定理进行子编号,但子定理作为单独的块

我希望有字母作为子编号一些定理,类似于这个问题但我希望将这两个子定理“分开”,以便能够包含它们之间的任何内容。

我找到了一种方法newcounter来回答一个略有不同的问题,并尝试对其进行修改以达到我想要的效果,但无法使其发挥作用。以下是我尝试的方法:

\documentclass{article}

\usepackage{amsthm}

\newtheorem{theorem}{Theorem}
\newtheorem{theorem2}{Theorem}

\newcounter{pretheorem}
\counterwithin{theorem2}{pretheorem}
\renewcommand\thetheorem{\arabic{pretheorem}\alph{theorem2}}
\newcommand{\theoremgroup}{\refstepcounter{pretheorem}}

\begin{document}

\begin{theorem}
This should be Theorem 1.
\end{theorem}

\theoremgroup
\begin{theorem2}
This should be Theorem 2a.
\end{theorem2}

\begin{theorem2}
This should be Theorem 2b.
\end{theorem2}

\begin{theorem}
This should be Theorem 3.
\end{theorem}

\end{document}

答案1

通过反复试验,我找到了一种方法。事实证明,在这种情况下,Latex 不喜欢定理名称以数字结尾。

\newtheorem{theorem}{Theorem}
\newtheorem{theoremgrp}{Theorem}

\newcounter{subtheorem}
\counterwithin{theoremgrp}{subtheorem}
\renewcommand\thetheoremgrp{\arabic{theorem}\alph{theoremgrp}}
\newcommand{\theoremgroup}{\refstepcounter{subtheorem}\refstepcounter{theorem}}

用法是

\begin{theorem}
Lorem ipsum
\end{theorem}

对于只有一个数字的正规定理,以及

\theoremgroup
\begin{theoremgrp}
Lorem ipsum
\end{theoremgrp}

\begin{theoremgrp}
Lorem ipsum
\end{theoremgrp}

...

对于多部分定理。编号很常见,例如 1、2a、2b、2c、3...

我还是不知道为什么这有效,所以欢迎任何解释!

相关内容