使用 thmtools 对不同的定理名称进行编号

使用 thmtools 对不同的定理名称进行编号

我正在使用thmtools包在文档末尾生成定理列表。我还使用了几个不同的定理标题(命题、引理、定义等),它们是不是独立编号。编号按照章节进行。

在实现 thmtools 包之前,我可以通过包含以下内容来使章节编号适用于所有定理样式

\setcounter{theorem}{0}
\numberwithin{theorem}{section}

在第一节标题之后。

在实施 thmtools 包后,这似乎不起作用,并且只能正确地对定理进行编号。我现在必须添加一行单独的代码

\numberwithin{foo}{section}

对于每个foo,,,,等等...definitionlemmafactexercise

有没有办法不必为每种定理样式添加单独的行,而是用一行来一次涵盖所有样式(即使我稍后添加一些新的样式)?


编辑:这是我所指的一个例子。

我的原始代码(在需要定理列表之前)

\documentclass{article}
\usepackage{amsmath, amssymb}
\usepackage[mathscr]{eucal}
\usepackage{amsthm}
\usepackage{amscd}

\newtheorem{theorem}{Theorem}
\newtheorem{lemma}[theorem]{Lemma}
\newtheorem{corollary}[theorem]{Corollary}
\theoremstyle{definition}
\newtheorem{definition}[theorem]{Definition}

\begin{document}

\section{Some Results}
\setcounter{theorem}{0}
\numberwithin{theorem}{section}

\begin{lemma}
Here is a lemma.
\end{lemma}

\begin{definition}
Here is a definition.
\end{definition}

\begin{theorem}
Here is a theorem.
\end{theorem}

\begin{theorem}
Here is another theorem.
\end{theorem}

\begin{corollary}
Here is a corollary.
\end{corollary}

\end{document}

如果你编译这个,你会看到结果列为引理 1.1、定义 1.2、定理 1.3、定理 1.4、推论 1.5。这就是我想要的。

然后,我决定我需要一个定理列表。所以我添加了\usepackage{thmtools}\listoftheorems命令(在正文末尾)。

所以现在我得到了定理列表,但编号是错误的。具体来说,结果编号为引理 1、定义 2、定理 1.3、定理 1.4、推论 5。所以只有定理继承了章节编号。我知道的唯一修复方法是添加

\numberwithin{lemma}{section}
\numberwithin{corollary}{section}
\numberwithin{definition}{section}

低于\numberwithin{theorem}{section}线。如果不必这样做就好了。特别是当我不可避免地决定添加事实、示例、命题、练习等时……

答案1

你要

\newtheorem{theorem}{Theorem}[section]

不是\numberwithin。我在示例中添加了thmtools和。\listoftheorems

\documentclass{article}
\usepackage{amsmath, amssymb}
\usepackage[mathscr]{eucal}
\usepackage{amsthm,thmtools}
\usepackage{amscd}

\newtheorem{theorem}{Theorem}[section]
\newtheorem{lemma}[theorem]{Lemma}
\newtheorem{corollary}[theorem]{Corollary}
\theoremstyle{definition}
\newtheorem{definition}[theorem]{Definition}

\begin{document}

\section{Some Results}

\begin{lemma}
Here is a lemma.
\end{lemma}

\begin{definition}
Here is a definition.
\end{definition}

\begin{theorem}
Here is a theorem.
\end{theorem}

\begin{theorem}
Here is another theorem.
\end{theorem}

\begin{corollary}
Here is a corollary.
\end{corollary}

\listoftheorems

\end{document}

在此处输入图片描述

相关内容