使用 Springer 模板中的预定义定理和推论命令时svmono
,定理和推论计数器不同。如何使计数器匹配?期望的效果是
定理1。
定理2。
推论3.
定理4。
答案1
该类svmono
有自己的方法来定义类似定理的环境:
\spnewtheorem{<env>}{<label>}[<within>]{<label font>}{<body font>}
或者
\spnewtheorem{<env>}[<counter>]{<label>}{<label font>}{<body font>}
前者语法对应于\newtheorem{<env>}{<label>}[<within>]
,后者语法对应于\newtheorem{<env>}[<counter>]{<label>}
。还有
\spnewtheorem*{<env>}{<label>}{<label font>}{<body font>}
适用于未编号的环境。
该类theorem
以下列格式之一预定义了一个环境
\spnewtheorem{theorem}{Theorem}{\bfseries}{\itshape}
是默认的;\spnewtheorem{theorem}{Theorem}[chapter]{\bfseries}{\itshape}
如果envcountchap
指定了类选项;\spnewtheorem{theorem}{Theorem}[section]{\bfseries}{\itshape}
如果envcountsect
指定了类选项。
该类还预定义了几个环境:
\spn@wtheorem{case}{Case}{\itshape}{\rmfamily}
\spn@wtheorem{conjecture}{Conjecture}{\itshape}{\rmfamily}
\spn@wtheorem{corollary}{Corollary}{\bfseries}{\itshape}
\spn@wtheorem{definition}{Definition}{\bfseries}{\rmfamily}
\spn@wtheorem{example}{Example}{\itshape}{\rmfamily}
\spn@wtheorem{exercise}{Exercise}{\bfseries}{\rmfamily}
\spn@wtheorem{lemma}{Lemma}{\bfseries}{\itshape}
\spn@wtheorem{note}{Note}{\itshape}{\rmfamily}
\spn@wtheorem{problem}{Problem}{\bfseries}{\rmfamily}
\spn@wtheorem{property}{Property}{\itshape}{\rmfamily}
\spn@wtheorem{proposition}{Proposition}{\bfseries}{\itshape}
\spn@wtheorem{question}{Question}{\itshape}{\rmfamily}
\spn@wtheorem{solution}{Solution}{\bfseries}{\rmfamily}
\spn@wtheorem{remark}{Remark}{\itshape}{\rmfamily}
它在内部使用\spn@wtheorem
,以便这些定义可以根据另一个类选项进行调整;如果envcountsame
在类选项中指定了,则所有这些环境都将从属于theorem
。
还有两个预定义的未编号环境:
\spnewtheorem*{claim}{Claim}{\itshape}{\rmfamily}
\spnewtheorem*{proof}{Proof}{\itshape}{\rmfamily}
例子
\documentclass[
envcountsame,% all theorem-like environments are subordinate to theorem
envcountchap,% theorem is subordinate to chapter: `Theorem <chap>.<theorem>'
% envcountsect,% theorem is subordinate to section: `Theorem <chap>.<section>.<theorem>'
]{svmono}
\usepackage{fix-cm}% or \usepackage{lmodern}
\usepackage[T1]{fontenc}
\begin{document}
\chapter{Title}
\section{Title}
\begin{lemma}
Something
\end{lemma}
\begin{theorem}
Something
\end{theorem}
\begin{corollary}
Something
\end{corollary}
\begin{theorem}
Something
\end{theorem}
\end{document}
最后的话
没有人强迫您使用\spnewtheorem
命令和预定义环境,但如果您这样做,Springer 的文字编辑可能会更高兴。如果您将其用于svmono
个人用途,则不应使用:在我看来,该类不是您能找到的最好的。供您自己的专著使用memoir
。
答案2
这样可以吗?
\documentclass{svmono}
\newtheorem{thm}{Theorem}
\newtheorem{lem}[thm]{Lemma}
\newtheorem{cor}[thm]{Corollary}
\begin{document}
\chapter{Title}
\section{Title}
\begin{lem}
Something
\end{lem}
\begin{thm}
Something
\end{thm}
\begin{cor}
Something
\end{cor}
\begin{thm}
Something
\end{thm}
\end{document}