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 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374
|
%%% ====================================================================
%%% @LaTeX-file{
%%% filename = "amsthdoc.tex",
%%% version = "2.20",
%%% date = "2004/08/03",
%%% time = "15:02:46 EDT",
%%% checksum = "15807 374 1763 14655",
%%% author = "American Mathematical Society",
%%% copyright = "Copyright 1999, 2004 American Mathematical Society,
%%% all rights reserved. Copying of this file is
%%% authorized only if either:
%%% (1) you make absolutely no changes to your copy,
%%% including name; OR
%%% (2) if you do make changes, you first rename it
%%% to some other name.",
%%% address = "American Mathematical Society,
%%% Technical Support,
%%% Publications Technical Group,
%%% 201 Charles Street,
%%% Providence, RI 02904,
%%% USA",
%%% telephone = "401-455-4080 or (in the USA and Canada)
%%% 800-321-4AMS (321-4267)",
%%% FAX = "401-331-3842",
%%% email = "tech-support@ams.org (Internet)",
%%% codetable = "ISO/ASCII",
%%% supported = "yes",
%%% keywords = "latex, theorem, proof, amsthm",
%%% abstract = "This file is the User's Guide for the amsthm
%%% package.",
%%% docstring = "The checksum field above contains a CRC-16
%%% checksum as the first value, followed by the
%%% equivalent of the standard UNIX wc (word
%%% count) utility output of lines, words, and
%%% characters. This is produced by Robert
%%% Solovay's checksum utility.",
%%% }
%%% ====================================================================
\documentclass[twoside]{article}
\pagestyle{myheadings}
% Use the same version numbers as for the amslatex instructions.
\def\instrversion{2.20}
\def\instrdate{August 2004}
\title{Using the \pkg{amsthm} Package}
\author{Version \instrversion, \instrdate\\American Mathematical Society}
\date{}
\providecommand{\qq}[1]{\textquotedblleft#1\textquotedblright}
\providecommand{\mdash}{\textemdash\penalty\hyphenpenalty}
% Embedded \index commands are a legacy from the time when this
% documentation was part of amsldoc. Since they don't hurt anything,
% let's leave them in. Maybe they will become useful again in the
% future. [mjd,2000/06/06]
\chardef\bslchar=`\\ % p. 424, TeXbook
\newcommand{\ntt}{%
\fontfamily\ttdefault \fontseries\mddefault \fontshape\updefault
\selectfont
}
\DeclareRobustCommand{\cn}[1]{{\ntt\bslchar#1}}
\DeclareRobustCommand{\cls}[1]{{\ntt#1}}
\DeclareRobustCommand{\pkg}[1]{{\ntt#1}}
\DeclareRobustCommand{\opt}[1]{{\ntt#1}}
\DeclareRobustCommand{\env}[1]{{\ntt#1}}
\DeclareRobustCommand{\fn}[1]{{\ntt#1}}
\providecommand{\qedsymbol}{\leavevmode
\hbox to.77778em{%
\hfil\vrule
\vbox to.675em{\hrule width.6em\vfil\hrule}%
\vrule\hfil}}
%% Provide a meta-command facility; provide an alternate escape
%% character so it can be used within the verbatim environment.
\catcode`\|=0
\begingroup \catcode`\>=13 % in LaTeX2e verbatim env makes > active
\gdef\?#1>{{\normalfont$\langle$\textup{#1}$\rangle$}}
\gdef\0{\relax}
\endgroup
\def\<#1>{{\normalfont$\langle$\textup{#1}$\rangle$}}
\def\ntnote#1{{\normalfont$^{#1}$}}
\hfuzz4pt \vbadness9999 \hbadness5000
\def\latex/{{\protect\LaTeX}}
\setlength{\textwidth}{210mm}\addtolength{\textwidth}{-2in}
\setlength{\oddsidemargin}{39pt}
\setlength{\evensidemargin}{39pt}
\addtolength{\textwidth}{-2\oddsidemargin}
\begin{document}
\maketitle
\markboth{USING THE \pkg{amsthm} PACKAGE}{USING THE \pkg{amsthm} PACKAGE}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{Introduction}
\begin{sloppypar}
The \pkg{amsthm} package provides an enhanced version of \latex/'s
\cn{newtheorem} command for defining theorem-like environments. The
enhanced \cn{newtheorem} recognizes a
\cn{theoremstyle} specification (as in Mittelbach's \pkg{theorem}
package) and has a \verb'*' form for defining unnumbered environments. The
\pkg{amsthm} package also defines a \env{proof} environment that
automatically adds a QED symbol at the end. AMS document classes
incorporate the \pkg{amsthm} package, so everything described here
applies to them as well.
\end{sloppypar}
If the \pkg{amsthm} package is used with a non-AMS document class and
with the \pkg{amsmath} package, \pkg{amsthm} must be loaded
\emph{after} \pkg{amsmath}, not before.
Examples are given in the file \fn{thmtest.tex}. For best understanding,
examine the output side-by-side with the input.
\section{The \cn{newtheorem} command}
In mathematical research articles and books, theorems\index{theorems}
and proofs\index{proofs} are among the most common elements, but authors
also use many others that fall in the same general class: lemmas,
propositions, axioms, corollaries, conjectures, definitions, remarks,
cases, steps, and so forth. It is natural to handle these elements as
\latex/ environments, but document classes do not
provide predefined environments for theorem-like elements because
(a)~that would make it difficult for authors to exercise the necessary
control over the automatic numbering, and (b)~the variety of such
elements is so wide that it's not possible for a document class to
provide every one that will ever be needed. Instead there is a command
\cn{newtheorem}, similar in effect to \cn{newenvironment}, that makes it
easy for authors to set up the elements required for a particular
document.
The \cn{newtheorem} command has two mandatory arguments; the first one
is the environment name that the author would like to use for this
element; the second one is the heading text. For example,
\begin{verbatim}
\newtheorem{lem}{Lemma}
\end{verbatim}
means that instances in the document of
\begin{verbatim}
\begin{lem} Text text ... \end{lem}
\end{verbatim}
will produce
\[\makebox[.8\columnwidth]{%
\textbf{Lemma 1.} \textit{Text text \dots}\hfill}\]
where the heading consists of the specified text \qq{Lemma} and an
automatically generated number and punctuation.
If \cn{newtheorem*} is used instead of \cn{newtheorem} in this
example, numbers will not be generated automatically for
any of the lemmas in the document. This form of the command can be
useful if you have only one lemma and don't want it to be
numbered; more often, though, it is used to produce a special named
variant of one of the common theorem types. For example, if you have a
lemma that should be labeled \qq{Klein's Lemma}, then the statement
\begin{verbatim}
\newtheorem*{KL}{Klein's Lemma}
\end{verbatim}
would allow you to write
\begin{verbatim}
\begin{KL} Text text ... \end{KL}
\end{verbatim}
and get the desired output.
Sometimes additional information is desired in the heading of a
theorem or lemma, often because it is cited from another source.
An optional argument is used to provide this information:
\begin{verbatim}
\begin{lem}[Alinhac-Lerner \cite{a-l}]
\end{verbatim}
yielding the output
\[\makebox[.8\columnwidth]{%
\textbf{Lemma 2.} (Alinhac-Lerner [1]). \textit{Text text \dots}\hfill}\]
\section{Numbering modifications}
In addition to the two mandatory arguments, \cn{newtheorem} has two
mutually exclusive optional arguments. These affect the
sequencing\index{theorems!numbering} and hierarchy of the numbering.
By default each kind of theorem-like environment is numbered
independently. Thus if you have three lemmas and two theorems
interspersed, they will be numbered something like this: Lemma 1, Lemma
2, Theorem 1, Lemma 3, Theorem 2. If you want lemmas and theorems to
share the same numbering sequence\mdash Lemma 1, Lemma 2, Theorem 3, Lemma
4, Theorem 5\mdash then you should indicate the desired relationship as
follows:
\begin{verbatim}
\newtheorem{thm}{Theorem}
\newtheorem{lem}[thm]{Lemma}
\end{verbatim}
The optional argument \verb'[thm]' in the second statement means that
the \texttt{lem} environment should share the \texttt{thm} numbering
sequence instead of having its own independent sequence.
To have a theorem environment numbered subordinately within a
sectional unit\mdash e.g., to get propositions numbered Proposition 2.1,
Proposition 2.2, and so on in Section~2\mdash put the name of the parent
unit in square brackets in final position:
\begin{verbatim}
\newtheorem{prop}{Proposition}[section]
\end{verbatim}
With the optional argument \verb'[section]', the \verb'prop' counter
will be reset to 0 whenever the parent counter \verb'section' is
incremented, and the proposition label will have the section number
prepended.
Note that theorem numbering is not accomplished by the same method
as the \cn{numberwithin} facility of \pkg{amsmath}, so an attempt to
use that to relate theorem numbers to equation numbers will not work
in the expected way. A method for accomplishing that, as well as
some other variations, is given in the AMS Author FAQ \cite{AF},
in the section on \qq{Theorems in AMS-\LaTeX}.
\section{Changing styles for theorem-like environments}
\subsection{The \cn{theoremstyle} command}
The \pkg{amsthm} package supports the notion of a current theorem style,
which determines what will be produced by a given \cn{newtheorem}
command. The three theorem styles provided\mdash
\verb'plain',\index{plain theo@\texttt{plain} theorem style}\relax
\index{definition theo@\texttt{definition} theorem style}\relax
\index{remark theo@\texttt{remark} theorem style} \verb'definition',
and \verb'remark'\mdash specify different degrees of
visual emphasis corresponding to their relative importance. The
details of this typographical treatment may vary depending on the
document class, but typically the \verb'plain' style produces italic
body text, while the other two styles produce roman body text.
If no \cn{theoremstyle} command is given, the style used will be
\texttt{plain}. To specify different styles,
divide your \cn{new\-theorem} commands into groups and preface each
group with the appropriate \cn{theo\-rem\-style}. Some examples:
\begin{verbatim}
\theoremstyle{plain}% default
\newtheorem{thm}{Theorem}[section]
\newtheorem{lem}[thm]{Lemma}
\newtheorem{prop}[thm]{Proposition}
\newtheorem*{cor}{Corollary}
\newtheorem*{KL}{Klein's Lemma}
\theoremstyle{definition}
\newtheorem{defn}{Definition}[section]
\newtheorem{conj}{Conjecture}[section]
\newtheorem{exmp}{Example}[section]
\theoremstyle{remark}
\newtheorem*{rem}{Remark}
\newtheorem*{note}{Note}
\newtheorem{case}{Case}
\end{verbatim}
The following list summarizes the types of structures which are
normally associated with each theorem style.
\smallskip
\begin{tabular}{ll}
\relax\env{plain} & Theorem, Lemma, Corollary, Proposition, Conjecture, \\
& Criterion, Algorithm \\
\relax\env{definition} \quad & Definition, Condition, Problem, Example \\
\relax\env{remark} & Remark, Note, Notation, Claim, Summary, \\
& Acknowledgment, Case, Conclusion
\end{tabular}
\subsection{Number swapping}
A common style variation is to have the theorem number at the beginning
of the heading instead of at the end, for example \qq{1.4 Theorem}
instead of \qq{Theorem 1.4}. As this variation is usually applied
to all \cn{theoremstyle}s, it is done by
placing a \cn{swapnumbers} command at the beginning of the list of
\cn{newtheorem} statements that should be affected. For example:
\begin{verbatim}
\swapnumbers
\theoremstyle{plain}
\newtheorem{thm}{Theorem}
\theoremstyle{remark}
\newtheorem{rem}{Remark}
\end{verbatim}
In AMS document classes, when numbers are swapped, the style of the
numbers matches that of section headings; this may not be the same
style as the rest of the theorem heading.
\subsection{New theorem styles}
The \pkg{amsthm} package provides a \cn{newtheoremstyle} command
to aid in the creation of custom styles, should the three predefined
styles prove insufficient. The following example illustrates the use
of the \cn{newtheoremstyle} command.
\begin{verbatim}
\newtheoremstyle{note}% |?name>
{3pt}% |?Space above>
{3pt}% |?Space below>
{}% |?Body font>
{}% |?Indent amount>|ntnote1
{\itshape}% |?Theorem head font>
{:}% |?Punctuation after theorem head>
{.5em}% |?Space after theorem head>|ntnote2
{}% |?Theorem head spec (can be left empty, meaning `normal')>
\end{verbatim}
\noindent
\ntnote1 Indent amount: empty = no indent, \cn{parindent} = normal
paragraph indent
\noindent
\ntnote2 Space after theorem head: \verb+{ }+ = normal interword space;
\cn{newline} = linebreak
\smallskip
Apply the new theorem style in the same manner as the predefined ones.
For examples, see the file \fn{thmtest.tex}.
\section{Proofs}
A predefined \env{proof} environment provided by the \pkg{amsthm}
package produces the heading \qq{Proof} with appropriate spacing and
punctuation. The proof environment is primarily intended for short
proofs, no more than a page or two in length; longer proofs are
usually better done as a separate \cn{section} or \cn{subsection} in
your document.
An optional argument of the proof environment allows you to substitute
a different name for the standard \qq{Proof\/}. If you want
the proof heading to be, say, \qq{Proof of the Main Theorem}, then write
\begin{verbatim}
\begin{proof}[Proof of the Main Theorem]
\end{verbatim}
A QED symbol, \qedsymbol, is automatically appended at the end of
a \env{proof} environment. To substitute a different end-of-proof
symbol, use \cn{renewcommand} to redefine the command \cn{qedsymbol}.
For a long proof done as a subsection or section instead of with the
\env{proof} environment, you can obtain the symbol and the usual
amount of preceding space by using \cn{qed}.
Placement of the QED symbol can be problematic if the last part of
a \env{proof} environment is a displayed equation or list environment
or something of that nature. In that case put a \cn{qedhere} command at
the place where the QED symbol should appear, for example,
\begin{verbatim}
\begin{proof}
...
\begin{equation}
G(t)=L\gamma!\,t^{-\gamma}+t^{-\delta}\eta(t) \qedhere
\end{equation}
\end{proof}
\end{verbatim}
When used with the \pkg{amsmath} package, version 2 or later, \cn{qedhere}
will position the QED symbol flush right; with earlier versions, the
symbol will be spaced a quad away from the end of the text or display.
If \cn{qedhere} produces an error message in an equation, try using
\verb'\mbox{\qedhere}' instead.
\begin{thebibliography}{[AF]}
\bibitem[AF]{AF} AMS Author FAQ,
\texttt{http://www.ams.org/authors/author-faq.html}
\end{thebibliography}
\end{document}
|