在我的 LaTeX 文档中,一些证明只有一行:
\documentclass[letterpaper]{article}
\usepackage{amsmath}
\usepackage{amsthm}
\usepackage{lipsum}
\theoremstyle{plain}
\newtheorem{theorem}{Theorem}
\newtheorem{property}[theorem]{Property}
\begin{document}
\lipsum[2-5]
\begin{property}
\lipsum[1]
\end{property}
\begin{proof}
By construction.
\end{proof}
\lipsum[6-8]
\end{document}
有时,证明会打印在页面顶部,这看起来真的很荒谬。将这种单行证明粘贴到其相关定理环境中的最佳方法是什么?
答案1
我认为你面临着两个不太理想的结果之间的权衡:要么将整个类定理环境(可能包含很多行,对吧?)移动到下一页,以避免类定理环境和相关的一次性证明环境之间出现分页符,或者将当前页面放大 1 或 2 行。您已经为前一个选项提供了解决方案;它的缺点是页面底部可能会出现相当大的“空洞”。要实现第二个选项,您可以编写类似
...
\begin{property}
\lipsum[1]
\end{property}
\enlargethispage{1\baselineskip} % or, possibly, "2\baselineskip"
\begin{proof}
By construction.
\end{proof}
...
无论如何,我不会在文章写作的最后才应用这一修改。
答案2
以下是 Barbara 建议的解决方案:
\documentclass[letterpaper]{article}
\usepackage{amsmath}
\usepackage{amsthm}
\usepackage{needspace}
\usepackage{lipsum}
\theoremstyle{plain}
\newtheorem{theorem}{Theorem}
\newtheorem{property}[theorem]{Property}
\begin{document}
\lipsum[2-5]
\needspace{13\baselineskip}
\begin{property}
\lipsum[1]
\end{property}
\begin{proof}
By construction.
\end{proof}
\lipsum[6-8]
\end{document}