20

Like the OP in Is it possible to skip the first line in a theorem environment?, I would like to be able to skip a line after the word "Proof" so that the first line of the proof is actually part of its own paragraph. For whatever reason the \leavevmode command suggested in the answer to the referenced question doesn't always work; it only seems to work whenever the body of the proof consists of an enumeration. I'm just using the amsthm package with the default settings. Is there a command that can be issued at the beginning of the proof that will allow me to skip a line? Of course, like the OP, I've tried \\ and variants thereof and am only rewarded with the obnoxious "There's no line here to end" error.

9
  • 6
    I'd say that \begin{proof}\mbox{}\\* should do. (I'd never go to a new line, though.) In amsthm the proof environment is not implemented as a theorem-like one (differently from ntheorem), so those advices don't necessary work for proof.
    – egreg
    Dec 1, 2011 at 22:07
  • As suggested by the UK TeX FAQ entry on No line here to end, you could also use \hspace*{\fill}. As @egreg suggests, the implementation of amsthm's proof environment is that of a trivlist.
    – Werner
    Dec 1, 2011 at 22:09
  • If you would like to do this consistently for the whole document, you could define \newenvironment{myproof}{\proof\mbox{}\\*}{\endproof}.
    – Stefan Kottwitz
    Dec 1, 2011 at 22:11
  • @egreg That seemed to do the trick. Would I be better off overall anyway if I transitioned to ntheorem?
    – 3Sphere
    Dec 1, 2011 at 22:11
  • 1
    Simply put ~ after \begin{proof}
    – D063520
    Jun 27, 2014 at 15:25

4 Answers 4

22

If this is to apply to all the proof environments in your document, you can redefine the proof environment to add \\* after the proof name has been written; here's such a redefinition (a \mbox{} will be necessary before \\*):

\documentclass{article}
\usepackage{amsthm}
\usepackage{lipsum}% just to generate text for the example

\makeatletter
\renewenvironment{proof}[1][\proofname]{\par
  \pushQED{\qed}%
  \normalfont \topsep6\p@\@plus6\p@\relax
  \trivlist
  \item[\hskip\labelsep
        \itshape
    #1\@addpunct{.}]\mbox{}\\*
}{%
  \popQED\endtrivlist\@endpefalse
}
\makeatother

\begin{document}

\begin{proof}
\lipsum*[1]
\end{proof}

\end{document}

enter image description here

12

Use \hfill:

\begin{lemma}
balbla
\begin{proof}
\hfill
\begin{enumerate}
\item one
\item two
\end{enumerate}
\end{proof}
\end{lemma}
2
  • 2
    I like this solution, since I am needing it only in few cases, not in every proof environment. Thanks for that.
    – quapka
    Apr 18, 2014 at 20:09
  • Very simple! :)
    – Green.H
    Aug 3, 2018 at 16:54
10

Instead of redefining the proof environment, you could define your own, based on proof but leaving the old proof intact, and you need just one line:

\newenvironment{myproof}[1][\proofname]{\proof[#1]\mbox{}\\*}{\endproof}

Using a new name makes also clear, that it's a different proof environment. Further, you are still able to use the original proof in cases when you don't like a line break, for example if the proof would consist of one short equation or a reference.

Complete example:

\documentclass{article}
\usepackage[english]{babel}
\usepackage{blindtext}
\usepackage{amsthm}
\newenvironment{myproof}[1][\proofname]{\proof[#1]\mbox{}\\*}{\endproof}
\begin{document}
\begin{myproof}
\blindtext
\end{myproof}
\begin{myproof}[Proof sketch]
\blindtext
\end{myproof}
\end{document}

proof with line break

1
  • Didn't you want to show in the first example, that you still can use the original \begin{proof} environment? Just saying:)
    – quapka
    Apr 18, 2014 at 20:11
5

Use \ \\ after \begin{proof} like this: \begin{proof}\ \\.

This solution works fine for me with package amsthm.

\documentclass{article} 
\usepackage[english]{babel} 
\usepackage{blindtext} 
\usepackage{amsthm} 

\begin{document} 

    \begin{proof}\ \\ 
        \blindtext 
    \end{proof} 

    \begin{proof}[Proof sketch]\ \\ 
        \blindtext 
    \end{proof} 

\end{document}

You will get something like:

enter image description here

Also, in case you want the new paragraph to be indented, you can start it with the command \indent. The code is as follows.

\documentclass{article} 
\usepackage[english]{babel} 
\usepackage{blindtext} 
\usepackage{amsthm} 

\begin{document} 

    \begin{proof}\ \\ 
        \indent\blindtext 
    \end{proof} 

    \begin{proof}[Proof sketch]\ \\ 
        \indent\blindtext 
    \end{proof} 

\end{document}

In this case, you will get something like:

enter image description here

PS. I borrowed the code from Stefan Kottwitz'answer.

1
  • 1
    This is simple and memorable, but you have to use \indent to indent.
    – U2647
    May 16, 2019 at 11:48

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .