Latex 定理和证明类环境(amsthm)和(ntheorm)的区别

最近在写毕业论文,出现了一些定理和证明的环境的问题,问题出现在对两个包的理解程度不够的问题上:

\RequirePackage{ntheorem}   

1、\newtheorem*{proof}{\hspace{2em}证:} 这个是让证明失去计数原则,该命令不能用于 amsthm

2、该证明环境下,定理的字体和证明的字体一致。

3、关键:证明的环境中,所有的引用(\ref{})都会斜体出现。相对来说比较丑。可通过增加公式符号解决:$\ref{--}$ 。

4、证明结束不会有 证明结束的标志。

\RequirePackage{amsthm}          

参考1:Latex 定理和证明类环境的配置(amsthm) - 知乎 (zhihu.com)

参考2: LaTeX (7)——amsthm - 知乎 (zhihu.com): 

1、该包是自动添加 qed symbol。即证明自动结束的标志。

2、证明proof 环境不参与自动编号,与包ntheorem的区别。

参考: LaTeX系列笔记(10)-证明 - 知乎 (zhihu.com)

     可通下命令修改证明的两字的字体和证毕的标志。

\renewcommand{\proofname}{\indent\bf 证明:}   %修改证明字体

\renewcommand{\qedsymbol}{证毕} %设置QED为其它形式
\renewcommand{\qedsymbol}{$\blacksquare$}   % 证毕符号改成黑色的正方形

3、该包有个问题就是定理后面会附上一个点,比如 定理2.1. 

latex排版的一个问题,怎么去掉1后面的点? - 知乎 (zhihu.com)

\newtheoremstyle{mystyle}
{}
{}
{}
{} %定理缩进两格
{\bfseries}
{} %定理编号后无点
{.5em}
{}

使用自定义的环境要是先声明比如:

\theoremstyle{mystyle}
\newtheorem{definition}{\hspace{2em}定义}[chapter]
\newtheorem{proposition}{\hspace{2em}命题}[chapter]
\newtheorem{property}{\hspace{2em}性质}[chapter]
\newtheorem{lemma}{\hspace{2em}引理}[chapter]
\newtheorem{theorem}{\hspace{2em}定理}[chapter]
\newtheorem{corollary}{\hspace{2em}推论}[chapter]
\newtheorem{example}{\hspace{2em}例}
\newtheorem{remark}{\hspace{2em}注}
\renewcommand{\proofname}{\indent\bf 证明:}
\renewcommand{\qedsymbol}{$\blacksquare$}    % 证毕符号改成黑色的正方形

这里给出一个不推荐 ntheorem的理由:

转载:为什么推荐使用定理宏包thmtools? - 知乎 (zhihu.com)

  • ntheorem 的劣势:有一些长期存在而未修复的 bug,缺乏维护。相关讨论和问答(不全),见
    • Theorem packages: which to use, which conflict?
      这是 2010 年写的三个定理宏包的比较,其中提到的 ntheorem 的 bug,现在仍然存在
    • ntheorem with thmmarks and standard options fails when thebibliography is empty
      这是 2020 年 5 月的问答,涉及 ntheorem 的一个具体 bug。
      • 回答该问题的是 TeX-SX 上积分最高的用户、LaTeX3 团队(他们维护着 LaTeX2e)成员之一的 egreg,
      • 他在评论里回应为什么不推荐使用 ntheorem 时说,"unfortunately, ntheorem seems essentially unmaintaned and has severe problems."
  • amsmaththmtools 的优势:前者实现和功能都简单而稳定,后者提供了 key-value 接口,功能也更丰富。

你可能感兴趣的:(Latex写作,定理和证明类,amsthm)