2

Using package amsthm, the desired theorem style achieved,

\documentclass{book}
\usepackage{amsthm}

\newtheoremstyle{mystyle}{}{}{}{}{\bf}{}{\newline}{}
\theoremstyle{mystyle}
\newtheorem*{mythm}{Theorem}

\begin{document}
\begin{mythm}
This is a normal body text.
\end{mythm}
\end{document}

enter image description here

But itemizing the body makes trouble,

\documentclass{book}
\usepackage{amsthm}

\newtheoremstyle{mystyle}{}{}{}{}{\bf}{}{\newline}{}
\theoremstyle{mystyle}
\newtheorem*{mythm}{Theorem}

\begin{document}
\begin{mythm}
    \begin{itemize}
        \item This an itemized body text.
        \item This an itemized body text.
    \end{itemize}
\end{mythm}
\end{document}

enter image description here

As the last output shows, first item has jumped to the head line.

How can I bring it back to the body?

  • potential duplicate: Enumerate alignment problem in theorem environment – barbara beeton Apr 30 '16 at 12:58
  • Actually this is not a duplicate. I do not want to align items with what is on head line. – Shaqpad Apr 30 '16 at 13:01
  • 2
    Use \leavevmode before \begin{itemize} – user31729 Apr 30 '16 at 13:05
  • 1
    @Shaqpad -- the use of \leavevmode is exactly what that answer recommends, as christian has repeated. items are not aligned with the head line, but treated as a "usual" list. i'll add an example to the cited answer to make this clear. – barbara beeton Apr 30 '16 at 13:42
  • @Christian Hupfer: leavevmode is not enough, as there will be a spurious vertical space. – Bernard Apr 30 '16 at 15:00
2

Here is a solution with enumitem. One can define a thmitemise clone, which incorporates by default the given setup, to avoid having to type it each time it is used:

\documentclass{book}
\usepackage{amsthm} \newtheoremstyle{mystyle}{}{}{}{}{\bf}{}{\newline}{}
\theoremstyle{mystyle}
\newtheorem*{mythm}{Theorem}
\usepackage{enumitem, showframe}

\begin{document}

\begin{mythm}
    \begin{itemize}[wide=0.5em, leftmargin =*, nosep, before = \leavevmode\vspace{-\baselineskip}]
        \item This an itemized body text.
        \item This an itemized body text.
    \end{itemize}
\end{mythm}
\end{document} 

enter image description here

| improve this answer | |
2

here is a mechanism for removing the extra space between the theorem head and the list. i don't really like it, but it will provide necessary information to make this a feature of the ams theorem facility when that is overhauled. (latex doesn't make things like this easy.)

\documentclass{amsart}
\newtheorem{thm}{Theorem}[section]

\begin{document}
\begin{thm}
\leavevmode
\makeatletter
\@nobreaktrue
\makeatother
\begin{enumerate}
\item Item 1
\item Item 2
\item Item 3
\end{enumerate}
\end{thm}
\end{document}

enter image description here

| improve this answer | |
2

An even easier solution may be this:

\usepackage[inline]{enumitem}
\begin{mythm}
\begin{enumerate}[label=(\arabic*)]
   \item[]
   \item state 1
   \item state 2
\end{enumerate}
\end{mythm}
| improve this answer | |
0

Possibly the easiest solution is hfill

\begin{theorem} 
\hfill
\begin{enumerate}
    \item Item 1
    \item Item 2
    \item Item 3
\end{enumerate}
\end{theorem}
| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.