TeX - LaTeX Stack Exchange is a question and answer site for users of TeX, LaTeX, ConTeXt, and related typesetting systems. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

How would I define a proof environment that is basically used with

some proof here

and it would be equivalent to:

\paragraph{Proof:} some proof here
\hfill \box


share|improve this question
You probably want to add a “qed” box at the end of a proof. For this, it is enough to load a package such as amsmath. – Juan A. Navarro Feb 3 '11 at 7:25
Environments for proofs, theorems etc. are provided by either the amsthm or the ntheorem package. – Carsten Thiel Feb 3 '11 at 8:34
up vote 11 down vote accepted

With LaTeX syntax:


I assume here that you mean \hbox{} not \box in your code. The \null macro is short for \hbox{}. The \box is a TeX primitive and is more like \usebox.

share|improve this answer
this "box" at the end is quite invisible. and if the proof ends with a display or a list, there's an extra blank line. – barbara beeton May 21 '13 at 21:29
@barbarabeeton: It was not my original intension to draw a real box there because I took the \box macro of the OP with it's normal TeX meaning ;-) I modified the answer now to draw a real box. I don't have a quick fix for blank line issue. IMHO Someone should post an answer based on amsthm or a similar package. – Martin Scharrer May 22 '13 at 6:44
This solution gave me an extra blank line at the beginning. Replacing \paragraph{Proof:}} with \textbf{Proof:} solved the problem. – ntc2 Jan 28 '14 at 4:46
@ntc2, I'm guessing that was an indent from \paragraph{} which can be suppressed with \noindent – PatrickT Feb 1 '14 at 22:22

You can also use the amsthm package which is a really nice and quick way of creating a proof.



    Your proof here.


It will add Proof in italics at the beginning of the text given as argument and a white square (Q.E.D. symbol) at the end of it.

I found this easy solution at 1. You can also look up there how you define your own environments using this package.

share|improve this answer
amsthm's proof has the (known) flaw of introducing too much space when the proof directly starts with an enumerate or itemize environment. – Marius Hofert Apr 26 '14 at 18:55

This is a solution using the ntheorem package. Here some explanations:

  • amssymb is loaded to use \blacksquare
  • The package ntheorem is loaded using the option thmmarks to support the placement of endmarks.
  • \theoremheaderfont{\bfseries} sets the theorem title in bold.
  • \theorembodyfont{\normalfont} preserves the normal text font for the theorem content.
  • \theoremseparator{:} set : to be the separator between title and content.
  • \theoremsymbol{$\blacksquare$} will place a solid black square at the end of every theorem environment.
  • \newtheorem*{proof}{Proof} sets up a new unnumbered environment named proof with the default title "Proof".

Afterwards you can use \begin{proof} ... \end{proof} just like any other environment.


    We immediately see, that
    \[ 1 + 1 = 2. \]
    Thus the proof is done.



share|improve this answer
the box won't be there if the proof ends with a display or a list. regarding ending with a display, that's not great style; better to finish off with text as in this example. but a list might be harder to avoid. – barbara beeton May 21 '13 at 21:23
Actually in some case the box will be there when ending with a dislay (although the order of appearance seems very random to me). Nevertheless I agree with you on the style issue. – Henri Menke May 21 '13 at 21:37
The claimed output is not the one I get when i compile the given code. – anderstood Oct 7 '14 at 15:57
OK I see: the figure is wrapped in a SE environment... – anderstood Oct 7 '14 at 15:58
share|improve this answer
this one seems to be giving an error about \begin{document} missing whenever I try to use \begin{proof} \end{proof} – kloop Feb 2 '11 at 23:46
@kloop: I think it's the problem Martin pointed out - \box is a Tex primitive that looks ahead for the box number, and I guess then will eat the closing parenthesis. I've changed the code. – Charles Stewart Feb 2 '11 at 23:58
Aaahhh, he meant to draw a box using \box, ok ... I sometimes I think to complicated. – Martin Scharrer Feb 3 '11 at 0:20
The \square should be enclosed in $ signs: \def\QEDmark{$\square$}. – user31011 May 21 '13 at 3:10
@user31011: This is true if you use the environment (or \QEDmark) in running text. If you use it in one of the AMS multiline math environments, putting in the '$' will cause an error. If you might use it in either, try \ensuremath, but cf. tex.stackexchange.com/questions/34830/… – Charles Stewart May 22 '13 at 7:22

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

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