読者です 読者をやめる 読者になる 読者になる

Texの定理環境での通し番号についてのメモ

LaTex

Texの定理環境については,以下の記事に書いた.
kinakotopos.hatenablog.com

さて,テキストの定理の証明がわかりにくい場合,その定理についてだけ証明を書き直してノートを作っておきたいときがある.こんなとき,意図した通し番号を出力する方法があれば便利である.

あまり綺麗なやり方ではないかもしれないが,\setcounterを濫用すれば,意図した通し番号を出せる.プリアンブルは,以下の通り.

% http://www.math.tohoku.ac.jp/~kuroki/LaTeX/howtolatex.html
\usepackage{amsthm}
\theoremstyle{definition}
\newtheorem{theorem}{定理}[section] % 定理のカウンターをsectionに合わせる.
\newtheorem*{theorem*}{定理}
\newtheorem{definition}[theorem]{定義}
\newtheorem*{definition*}{定義}
\newtheorem{prop}[theorem]{命題}
\newtheorem*{prop*}{命題}
\newtheorem{lem}[theorem]{補題}
\newtheorem*{lem*}{補題}
\newtheorem{example}[theorem]{}
\newtheorem*{example*}{}
\newtheorem{problem}[theorem]{}
\newtheorem*{problem*}{}
%\numberwithin{theorem}{section}  % 定理番号を「定理2.3」のように出力
\renewcommand\proofname{\bf 証明}
%
% \qed を自動で入れない proof 環境を再定義
%
\makeatletter
\renewenvironment{proof}[1][\proofname]{\par
  \normalfont
  \topsep6\p@\@plus6\p@ \trivlist
  \item[\hskip\labelsep{\bfseries #1}\@addpunct{\bfseries.}]\ignorespaces
}{%
  \endtrivlist
}
\renewcommand{\proofname}{証明}
\makeatother

濫用の例.

\setcounter{section}{100}
\setcounter{theorem}{50}
\begin{theorem} %通し番号は,100.51になる.
これはテスト.
\end{theorem}