使用 \swapnumbers 时,如何获得定理数字后面的句点?

使用 \swapnumbers 时,如何获得定理数字后面的句点?

我正在尝试模仿如下格式的讲义:

http://ocw.mit.edu/courses/mathematics/18-01-single-variable-calculus-fall-2005/lecture-notes/lecture_25.pdf

我想格式化一个定理样式,产生与以下行相同的结果

  1. 反双曲函数。

在上面的 pdf 中。到目前为止,我一直在尝试使用 amsthm 包使其保持简单,因为我很难找到使用 ntheorem 或 thmtools 来做到这一点的方法。

我的第一次尝试是使用\swapnumbers以下定理定义:

\documentclass[reqno,12pt]{article}
\usepackage{amsmath,amssymb,amsthm}

\swapnumbers
\newtheoremstyle{numberfirst}
{}
{}
{}
{}
{\bfseries}
{.}
{.5em}
%
{\thmnote{#3}}

\theoremstyle{numberfirst}
\newtheorem{varthm}{.}

\begin{document}

\begin{varthm}[The angle between vectors]

Let $\vec{u} = \langle {u_1, u_2} \rangle$ and $\vec{v} = \langle {v_1, v_2}
\rangle$ be two vectors in $\mathbb{R}^2$, and consider the triangle formed by
connecting the heads of $\vec{u}$ and $\vec{v}$.  The third side of this triangle is 
$\vec{u} - \vec{v}$.\footnote{We could also use $\vec{v} - \vec{u}$.  Either will 
suffice because we are only interested in its magnitude.} Let $\theta$ be the angle 
between $\vec{u}$ and $\vec{v}$, opposite $\vec{u} - \vec{v}$.  

\end{varthm}

\end{document}

另一个结果来自于注释掉\swapnumbers,这实际上更接近我想要的,但现在编号消失了!

答案1

对我来说,您的 mwe 中的第一个缺陷是 的使用\newtheorem。您正在使用\newtheorem{varthm}{.}。但是,文档中解释的正确语法是:

\newtheorem{name}{Printed output}

所以你的句号是错误的。相关我认为正确的语法是

\newtheorem{varthm}{Varthm}

该命令\swapnumbers(在文档中解释)将定理编号放在标题的开头而不是结尾。该命令仅影响常见的定理样式。

该命令\newtheoremstyle是指定定理环境行为的合适方法。它有 9 个强制参数,其中最后一个参数指定标题。此时,重要的是要强调该命令\swapnumbers禁用了第九个参数的声明\newtheoremstyle。因此,根据您的需求,我建议避免\swapnumbers使用第九个参数:

\newtheoremstyle{numberfirst}
 {}%space above
 {}%space below
 {}%body font
 {}%Indent amount
 {\bfseries}%Theorem head font
 {}%Punctuation after theorem head
 {.5em}%Space after theorem head
 {#2.~\thmnote{#3}}%Theorem head spec
\theoremstyle{numberfirst}
\newtheorem{varthm}{Varthm}

相关内容