[Tex/LaTex] Amsbook: Theoremstyles definition and remark identical

amsmathfontstheorems

If I understand the documentation of the AMS classes correctly, then a theorem in the style "plain" should have bold heading and italic body text, in the style "definition", there should be bold heading and normal body text, and in "remark", there should be an italic heading and normal body text. This is described her in section 4: http://www-math.mit.edu/~psh/amshelp/2.2/amshelp.pdf

Here, with amsbook, all headings look the same (in small caps), and there is no distinction between "definition" and remark in the body text.

Example:

\documentclass{amsbook}
\theoremstyle{plain}
\newtheorem{thm}{Theorem}
\theoremstyle{definition}
\newtheorem{dfn}{Definition}
\theoremstyle{remark}
\newtheorem{rmk}{Remark}
\begin{document}
\begin{thm}
Here comes a theorem.
\end{thm}
\begin{dfn}
Here comes a definition.
\end{dfn}
\begin{rmk}
Here comes a remark.
\end{rmk}
\end{document}

Is this behaviour correct or is there a problem in my LaTeX environment? I did not find any remarks in the documentation about a different behaviour for amsbook (then for, say, amsart). I also remember that, using an older version of TeXLive, the look of the headings was dependent on whether hyperref was loaded or not.

Best Answer

As tohecz mentions in his comment, the difference in the styles that you mention is the one of the amsthm package: however, the amsbook class internally defines the remark and definition styles in a different way. Here are the definitions:

\def\th@definition{%
  \let\thm@indent\indent
  \thm@headfont{\scshape}% heading font small caps
  \let\thmhead\thmhead@plain \let\swappedhead\swappedhead@plain
  \thm@preskip.5\baselineskip\@plus.2\baselineskip
                                    \@minus.2\baselineskip
  \thm@postskip\thm@preskip
  \upshape
}
\def\th@remark{%
  \let\thm@indent\indent
  \thm@headfont{\scshape}% heading font small caps
  \let\thmhead\thmhead@plain \let\swappedhead\swappedhead@plain
  \thm@preskip.5\baselineskip\@plus.2\baselineskip
                                    \@minus.2\baselineskip
  \thm@postskip\thm@preskip
  \upshape
}

As you can see, both styles behave exactly the same when using amsbook.cls.

Related Question