如何消除证明环境前后的垂直多余空间?

如何消除证明环境前后的垂直多余空间?

考虑以下代码:

\documentclass{scrartcl}
\usepackage[ngerman]{babel}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{graphicx}
\usepackage{amsmath}
\usepackage{amsthm}
\usepackage{enumerate}

\theoremstyle{plain}
\newtheorem{thm}{Theorem}
\theoremstyle{definition}
\newtheorem{rmk}[thm]{Remark}


\begin{document}

\begin{thm}
Normal theorem.
\end{thm}
\begin{proof}
Normal proof.
\end{proof}

%%%%%%%%%%%%%%%%%%%%%%

\begin{rmk}
\begin{enumerate}[(a)]
\item Some remark.
\begin{proof}
Proof for that remark. %!!!
\end{proof}
\item Other information.
\end{enumerate}
\end{rmk}


\end{document}

我想介绍(最佳方式newenvironment)一种新的证明环境,我可以用它来做备注,并且除了通常的垂直行距外,在证明前后没有额外的垂直空间。

因此,上面的例子看起来像

在此处输入图片描述

我想去掉第二个周围的多余空间Beweis

答案1

您可以定义一个新的环境,复制proof

\makeatletter
\newenvironment{proof*}[1][\proofname]{\par
  \pushQED{\qed}%
  \normalfont \partopsep=\z@skip \topsep=\z@skip
  \trivlist
  \item[\hskip\labelsep
        \itshape
    #1\@addpunct{.}]\ignorespaces
}{%
  \popQED\endtrivlist\@endpefalse
}
\makeatother

现在你可以输入“内部”证明

\begin{proof*}
This is a proof without additional vertical space
\end{proof*}

相关内容