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.
4 Answers
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}
Use \hfill:
\begin{lemma}
balbla
\begin{proof}
\hfill
\begin{enumerate}
\item one
\item two
\end{enumerate}
\end{proof}
\end{lemma}
-
2I like this solution, since I am needing it only in few cases, not in every
proof
environment. Thanks for that.– quapkaApr 18, 2014 at 20:09 -
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}
-
Didn't you want to show in the first example, that you still can use the original
\begin{proof}
environment? Just saying:)– quapkaApr 18, 2014 at 20:11
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:
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:
PS. I borrowed the code from Stefan Kottwitz'answer.
-
1
\begin{proof}\mbox{}\\*
should do. (I'd never go to a new line, though.) In amsthm theproof
environment is not implemented as a theorem-like one (differently from ntheorem), so those advices don't necessary work forproof
.\hspace*{\fill}
. As @egreg suggests, the implementation ofamsthm
'sproof
environment is that of atrivlist
.\newenvironment{myproof}{\proof\mbox{}\\*}{\endproof}
.