LaTeXにおけるamsthmパッケージで,使用する証明環境を別で新たに定義する方法について紹介する.
以下,amsthmパッケージの使用を仮定する.
動機づけ
補題などの証明の途中で,別の小さな主張を引き合いに出して本題の証明をすっきり書きたいことがある.そのようなとき,気持ちとしては
\begin{lemma}%補題を立項する.定理環境を整備すれば実現できる.ここでは傍論. (補題の内容) \end{lemma} \begin{proof}%補題の証明. 下準備をする. \begin{claim}%主張を立項する.定理環境を整備すれば実現できる.ここでは傍論. (主張の内容) \end{claim} \begin{proof}%主張の証明.ここを代替する claimproof環境 をこれから作る. 主張を証明した. \end{proof} この主張より,~~が言え,補題が従う. \end{proof}
のように,補題の証明を構成したい.しかし,主張の証明 に 補題の証明 と同一の証明環境を使ってしまうと,主張に係る"□"を 補題に係る"□” と誤読してしまう可能性がある:
この誤読を,これから防ぐ.
別環境の定義
プリアンブルに,次を挿入する.%\theoremstyle{definition}%定理環境の整備.ここでは傍論 %\newtheorem*{lemma}{Lemma}%補題を番号なしで表示する.ここではもっと傍論 %\newtheorem*{claim}{Claim}%主張を番号なしで表示する.ここでは傍論 \newcommand{\claimproofname}{Proof of Claim}%主張の証明を始める記号を定義する \newcommand{\claimqedsymbol}{$\openbox_\mathrm{Claim}$}%主張の証明を終える記号を定義する %主張の証明を終える記号が文書の右端に来るよう調整する \DeclareRobustCommand{\claimqed}{% \ifmmode \mathqed \else \leavevmode\unskip\penalty9999 \hbox{}\nobreak\hfill \quad\hbox{\claimqedsymbol}% \fi } %新たな証明環境 claimproof を定義する \makeatletter \newenvironment{claimproof}[1][\claimproofname]{\par \pushQED{\claimqed}% \normalfont \topsep6\p@\@plus6\p@\relax \trivlist \item[\hskip\labelsep \itshape #1\@addpunct{.}]\ignorespaces }{% \popQED\endtrivlist\@endpefalse } \makeatother
仕上がりは,次のようになる:
関連
次のサイトも参照するとよい.傍論部分を解説している: 【LaTeX】定理環境amsthmパッケージの使い方を徹底解説 | 数学の景色
証明環境のカスタマイズについて詳しい: 【LaTeX】証明環境proofのあれこれ | 数学の景色