[Tex/LaTex] Indicator at end of theorem

amsmathamsthmenvironmentstheorems

I'm writing a text with some very long theorem-environments in it and I find the italicised theorems visually not pleasing when they are rather longish. So I'm using the definition theorem style most of the times. This however has disadvantage that it is pretty unclear when a theorem actually ends. I have tried the following:

\documentclass{book}
\usepackage{amsthm}
\parindent0pt

\theoremstyle{definition}
\newtheorem{theorem}{Theorem}
\newenvironment{thm}{\begin{theorem}}{\hfill$\diamond$\end{theorem}}

\begin{document}

\begin{thm} This is some long theorem. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. 

\begin{enumerate}
\item Part A
\item Part B
\end{enumerate}

Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. \end{thm}

Here is some text not in the theorem anymore.

\begin{thm}
Here is some other theorem that ends with a list.
\begin{enumerate}
\item Part 1
\item Part 2 
\end{enumerate} 
\end{thm}

Some more text.

\end{document}

The result is:
LaTeX document

I like the diamond indicator in theorem 1. It is not distracting and makes it very clear where the theorem actually ends. In theorem 2 however the position of the diamond looks a bit awkward.

What would you recommend in such situations?

Best Answer

You can use the QED mechanism that amsthm provides: define an appropriate symbol, push a QED at the beginning of the theorem, pop it at the end. You can then put \qedhere somewhere if you need the marker earlier, and the final pop will then do nothing.

Sample output

\documentclass{book}
\usepackage{amsthm}
\parindent0pt

\newcommand{\thmsymbol}{\( \diamond \)}

\theoremstyle{definition}
\newtheorem{theorem}{Theorem}

\newenvironment{thm}{\begin{theorem}%
  \renewcommand{\qedsymbol}{\thmsymbol}\pushQED{\qed}}%
  {\popQED\end{theorem}}

\begin{document}

\begin{thm}
  This is some long theorem. Lorem ipsum dolor sit amet, consetetur
  sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore
  et dolore magna aliquyam erat, sed diam voluptua. At vero eos et
  accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren,
  no sea takimata sanctus est Lorem ipsum dolor sit amet.
  \begin{enumerate}
  \item Part A
  \item Part B
  \end{enumerate}

  Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam
  nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam
  erat, sed diam voluptua. At vero eos et accusam et justo duo dolores
  et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est
  Lorem ipsum dolor sit amet.
\end{thm}

Here is some text not in the theorem anymore.

\begin{thm}
  Here is some other theorem that ends with a list.
  \begin{enumerate}
  \item Part 1
  \item Part 2 \qedhere
  \end{enumerate}
\end{thm}

Some more text.

\begin{proof}
  Exactly.
\end{proof}

\end{document}