siamltx + amsthm:“LaTeX 错误:没有定义计数器‘定理’。”

siamltx + amsthm:“LaTeX 错误:没有定义计数器‘定理’。”

使用 LaTeX 类时siamltx(来自SIAM 页面) 和...一起阿姆斯特丹(我需要它的theoremstyle命令),我收到了错误消息

! LaTeX Error: No counter 'Theorem' defined.

以下代码重现了该错误。

\documentclass{siamltex}                                                        

\let\proof\relax                                                                
\let\endproof\relax                                                             
\usepackage{amsthm}                                                             

\begin{document}                                                                

\begin{theorem}                                                                 
dasdas                                                                          
\end{theorem}                                                                   

\end{document}

有什么办法可以解决这个问题吗?

答案1

这个类已经定义了定理环境,但amsthm重新定义了该定义中使用的一些(但不是全部)内部命令(特别是\@thm)。这完全搞乱了一切。因此,amsthm无法在下加载siamltex.cls。有时,在文档类之前加载包是可行的。这可以通过以下方式完成

\RequirePackage{amsthm}
\documentclass{siamltex}

不幸的是,出现了相反的问题:重新定义了环境版本siamltex的内部宏()并将其搞乱。amsthmtheorem\@begintheorem

唯一的解决方法是不将这两者一起使用。该类已经定义了各种定理类环境以及proof环境,并且按照 SIAM 发布者选择的方式进行定义,因此似乎没有理由这样做amsthm

相关内容