计数定理,如定理 part.chapter.number

计数定理,如定理 part.chapter.number

我使用的是 scrreprt 文档类,它提供部分和章节。虽然我找到了枚举定理的解决方案,例如定理 chapter.section.number,但我无法获得定理 part.chapter.number。我要么得到 chapter.number 的 part.number。这是一个最小示例:

\documentclass{scrreprt}
\usepackage{amsmath,amsthm,thmtools} %thmtools is used to share counters
\declaretheorem[numberwithin=chapter, name=Theorem]{Thm} %print Theorem 1.1
%\newtheorem{Thm}{Theorem}[part] %prints Theorem I.1
%\numberwithin{Thm}{part} %back to Theorem 1.1

\begin{document}

\part{First part}
\chapter{A chapter}

\begin{Thm}
A theorem.
\end{Thm}

\end{document}

答案1

您在寻找以下内容吗?

在此处输入图片描述

在此处输入图片描述

\documentclass{scrreprt}
\usepackage{amsmath,amsthm,thmtools} %thmtools is used to share counters
\declaretheorem[numberwithin=chapter, name=Theorem]{Thm} %print Theorem 1.1
\renewcommand\theThm{\thepart.\thechapter.\arabic{Thm}} % <--- added part number

\begin{document}

\part{First part}
\chapter{first chapter}

\begin{Thm}
A theorem. \theThm
\end{Thm}
\begin{Thm}
A theorem. \theThm
\end{Thm}

\chapter{second chapter}

\begin{Thm}
A theorem. 
\end{Thm}
\begin{Thm}
A theorem. 
\end{Thm}

\end{document}

答案2

我不明白这有什么意义。当你开始一个新的时\part,章节号不会重置。所以如果你有这个骨架

\part{First part}
\chapter{A}
\begin{Thm} text \end{Thm}
\chapter{B}
\begin{Thm} text \end{Thm}

\part{Second part}
\chapter{C}
\begin{Thm} text \end{Thm}

你会得到定理编号

一.1.1
一.2.1
二.3.1

并且知道该定理出现在哪个部分是多余的。

除非您还需要重置每个章节编号\part,这也会造成混淆,因为您将冗余移动到了其他地方。

无论如何,你该怎么做呢?用一个非常简单的指令,即

\counterwithin{chapter}{part}

完整示例,其中geometry线条仅用于制作较小的图片。

\documentclass{scrreprt}

\usepackage[a6paper]{geometry}% just to make smaller pictures

\usepackage{amsmath,amsthm,thmtools}

\counterwithin{chapter}{part}

\declaretheorem[
  numberwithin=chapter,
  name=Theorem
]{Thm}

\begin{document}

\part{First part}
\chapter{A chapter}

\begin{Thm}
A theorem.
\end{Thm}

\chapter{Another chapter}

\begin{Thm}
Another theorem.
\end{Thm}

\part{Second part}
\chapter{Further chapter}

\begin{Thm}
Further theorem
\end{Thm}

\end{document}

在此处输入图片描述

如果您希望章节号前面是零件号(这样会增加新的混乱),您可以这样做。

\documentclass{scrreprt}

\usepackage[a6paper]{geometry}% just to make smaller pictures

\usepackage{amsmath,amsthm,thmtools}

\counterwithin*{chapter}{part}

\declaretheorem[
  numberwithin=chapter,
  name=Theorem
]{Thm}
\renewcommand{\theThm}{\thepart.\thechapter.\arabic{Thm}}

\begin{document}

\part{First part}
\chapter{A chapter}

\begin{Thm}
A theorem.
\end{Thm}

\chapter{Another chapter}

\begin{Thm}
Another theorem.
\end{Thm}

\part{Second part}
\chapter{Further chapter}

\begin{Thm}
Further theorem
\end{Thm}

\end{document}

当然,你的读者无法找到章节的交叉引用,除非你总是在页眉中打印与该部分相关的内容,而且你无论如何都需要说“第三部分第三章”。好的,这本书是你的了。

\documentclass{scrreprt}

\usepackage[a6paper]{geometry}% just to make smaller pictures

\usepackage{amsmath,amsthm,thmtools}

\counterwithin*{chapter}{part}

\declaretheorem[
  numberwithin=chapter,
  name=Theorem
]{Thm}
\renewcommand{\theThm}{\thepart.\thechapter.\arabic{Thm}}

\begin{document}

\part{First part}
\chapter{A chapter}

\begin{Thm}
A theorem.
\end{Thm}

\chapter{Another chapter}

\begin{Thm}
Another theorem.
\end{Thm}

\part{Second part}
\chapter{Further chapter}

\begin{Thm}
Further theorem
\end{Thm}

\end{document}

在此处输入图片描述

这也许是一本著名教科书的版式。但我知道一本更著名的教科书,就是欧几里得的《几何原本》。我们需要遵循欧几里得的风格吗?当然不需要。

答案3

下面的方法可以达到这个效果:

\renewcommand\theThm{\thepart.\thechapter.\arabic{Thm}}
\makeatletter
  \@addtoreset{Thm}{chapter}
  \@addtoreset{chapter}{part}
\makeatother

不确定这是否是首选方式。

相关内容