What does each AMS package do?
Most of the answer was extracted from the Introduction sections of the documentation of amsmath
and amsthm
:
amsmath
provides miscellaneous enhancements for improving the information structure and printed output of documents containing mathematical formulas. Some of the features provided by this package are:- The
\DeclareMathOperator
command (through the auxiliary packageamsopn
) to define new "operator name" commands analogous to\sin
and\lim
, including proper side spacing and automatic selection of the correct font style and size (even when used in sub- or superscripts). - Multiple substitutes for the
eqnarray
environment to make various kinds of equation arrangements easier to write. - Equation numbers automatically adjust up or down to avoid overprinting
on the equation contents (unlike
eqnarray
). - Spacing around equals signs matches the normal spacing in the
equation
environment (unlikeeqnarray
). - A way to produce multiline subscripts as are often used with summation or product symbols.
- An easy way to substitute a variant equation number for a given equation instead of the automatically supplied number.
- An easy way to produce subordinate equation numbers of the form (1.3a) (1.3b) (1.3c) for selected groups of equations.
- The
\text
command (through the auxiliary packageamstext
) for typesetting a fragment of text inside a display.
- The
amsthm
helps to define theorem-like structures; the introduction to the documentation gives a nice concise description of the package:The
amsthm
package provides an enhanced version of LaTeX's\newtheorem
command for defining theorem-like environments. The enhanced\newtheorem
recognizes a\theoremstyle
specification (as in Mittelbach'stheorem
package) and has a*
form for defining unnumbered environments. Theamsthm
package also defines aproof
environment that automatically adds a QED symbol at the end. AMS document classes incorporate theamsthm
package, so everything described here applies to them as well.If the
amsthm
package is used with a non-AMS document class and with theamsmath
package,amsthm
must be loaded afteramsmath
, not before.amssymb
provides an extended symbol collection. For example, after loadingamssymb
you have the following additional binary relation symbols:\barwedge
,\boxdot
,\boxminus
,\boxplus
,\boxtimes
,\Cap
,\Cup
(and many more), the arrow\leadsto
, and some other symbols such as\Box
and\Diamond
. Another useful feature is the\mathbb
command to produce blackboard bold characters
Since amssymb
internally loads amsfonts
, it's enough to load the former.
As far as I know, there's not a single package loading amsmath
, amsthm
, and amssymb
so all three of them will have to be loaded when using the standard classes (book
, report
, article
).
If one of the document classes of the AMS-collection (amsbook
, amsart
) is being used, there's no need to load amsmath
, or amsthm
; amssymb
will have to be explicitly loaded.
Here is the package dependency hierarchy in terms of the AMS-LaTeX bundle:
amsmath
amstext
amsgen
*
amsbsy
amsgen
*
amsopn
amsgen
*
amssymb
amsfonts
*
amsthm
At the moment, there exists no (say) ams-all
package that would load the entire bundle.
* This package has no dependencies.