# 2017-04-24 Many variants of a Beamer presentation – part III

Some time ago I wrote about making both a presentation and lecture notes out of a single source in Beamer. I’m still using the setup shown there, but recently I encountered an unexpected problem.

Consider this:

\documentclass{article}
\usepackage{beamerarticle}

\begin{document}
\begin{frame}
\frametitle{A frame with a theorem}
\begin{theorem}
A~cool theorem.
\end{theorem}
\end{frame}

\begin{frame}<presentation>
\frametitle{A~presentation-only frame with a theorem}
\begin{theorem}
Another theorem, visible only on a~presentation.
\end{theorem}
\end{frame}

\begin{frame}
\frametitle{Another frame with a theorem}
\begin{theorem}
The final theorem.
\end{theorem}
\end{frame}

\end{document}


If you compile this, you’ll spot the problem immediately: while the second theorem is not present in the pdf, its number is taken up, and we have Theorem 3 right after Theorem 1.

(In case of the beamer document class, everything works just fine – try it if you want.)

It does make sense. Imagine a Beamer theme which actually does typeset theorem numbers. You would like then your theorem labels in the presentation and in the lecture notes to match. Usually, this is not the case, though, and I don’t really care for theorem numbers in the slides. So, here’s my simple solution. (While at that, I also turn the frametitles off in the lecture notes. If you want to do that automatically for all slides, see here.)

\documentclass{article}
\usepackage{beamerarticle}

\theoremstyle{plain}
\newtheorem*{theorem*}{Theorem}

\begin{document}
\begin{frame}
\frametitle<presentation>{A frame with a theorem}
\begin{theorem}
A~cool theorem.
\end{theorem}
\end{frame}

\begin{frame}<presentation>
\frametitle{A~presentation-only frame with a theorem}
\begin{theorem*}
Another theorem, visible only on a~presentation.
\end{theorem*}
\end{frame}

\begin{frame}
\frametitle<presentation>{Another frame with a theorem}
\begin{theorem}
The final theorem.
\end{theorem}
\end{frame}

\end{document}