相互参照された方程式は決して定義されない

相互参照された方程式は決して定義されない

方程式の相互参照に関して奇妙な問題が発生しています。pdflatex を何度実行しても、方程式は未定義のままです。他の参照は解決されます。

方程式にラベルを付ける方法に何か問題がありますか? Pdflatex はそれについて文句を言いません (参照しようとしたときに未定義であると報告する以外は)。

編集: 下記の要求に応じて、最小限の動作例を作成しました。これにより、問題は amsmath パッケージと ntheorem パッケージ間の競合であると思われることがわかりました。どちらか一方を含めなければ、問題は解決します。

たとえば次の例を考えてみましょう。

\documentclass{article}
\usepackage{amsmath}
\usepackage[thmmarks]{ntheorem}

\begin{document}

\section{My Section}
\label{sec:MySection}

\begin{equation} \label{eq:MyEquation}
a = b
\end{equation}

Reference my section \ref{sec:MySection}.
Reference my equation \ref{eq:MyEquation}.

\end{document}

次のように表示されます。

動作しない

答え1

amsmathの追加オプションが必要ですntheorem。「3.2.1 amsmath」を参照してください。ntheorem。のドキュメンテーション

\documentclass{article}
\usepackage{amsmath}
\usepackage[thmmarks,amsmath]{ntheorem}

\begin{document}
\setcounter{section}{4}
\section{My Section}
\label{sec:MySection}

\begin{equation} \label{eq:MyEquation}
a = b
\end{equation}

Reference my section \ref{sec:MySection}.
Reference my equation \ref{eq:MyEquation}.

\end{document}

結果

関連情報