summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/piff/newproof.sty
blob: 6b9afbad9a2b230fb1d7d517c9e0b05a19eeaf55 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
% This package defines a "\newproof" command similar to "\newtheorem".
% Its arguments are
%     #1  Name of proof environment, eg, "proof".
%     #2  Starting text, eg, Proof.
%     #3  Finishing text, eg, [] flushed right.
%
% The package goes on to define a "proof" environment with exactly the
% above setup, but other unnumbered environments can be set up in the
% same way.
%
% The created environments take one optional argument, which, if present,
% goes in brackets after #2.   Eg,
%
% \begin{proof}
%   A proof.
% \end{proof}
%
% \begin{proof}[B. L. User]
%   A named proof.
% \end{proof}
%
% \begin{proof}[of Theorem \ref{thm}]
%   Yet another.
% \end{proof}
%
% Command "\qed" is set up to flush "\qedtext" right; "\qedtext" defaults
% to a square, but can be re-defined as "QED" or whatever.
%
% M.Piff@shef.ac.uk
%
% This file is placed in the public domain.  No provision is made for
% support of the use of the facilities herein.
%
\NeedsTeXFormat{LaTeX2e}[1995/12/01]
\ProvidesPackage{newproof}
\newcommand{\newproof}[3]{
   \newenvironment{#1}[1][]%
   {%
      \begin{trivlist}%
         \item[\hspace{\labelsep}\textnormal{\textbf{#2%
            \def\op@@@arg{##1}%
            \ifx\op@@@arg\empty
            \else~(##1)\fi
         }}]%
   }%
   {%
      #3
      \end{trivlist}%
   }%
}
\newproof{proof}{Proof}{\qed}
\def\qed{{\ifhmode\unskip\nobreak\hfil\penalty50 \hskip1em \else\nobreak\fi
   \mbox{}\nobreak\hfil\qedtext%
   \parfillskip=0pt \finalhyphendemerits=0 \par}}

\def\qedtext{\ensuremath{\square}}
\RequirePackage{amsfonts}
\DeclareMathSymbol{\square}       {\mathord}{AMSa}{"03}