%%% ==================================================================== %%% @LaTeX-file{ %%% filename = "diff12.tex", %%% version = "1.2d", %%% date = "29 October 1996", %%% time = "11:46:47 EST", %%% checksum = "12584 490 3372 24527", %%% author = "American Mathematical Society", %%% copyright = "Copyright (C) 1995 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, %%% Electronic Products and Services, %%% P. O. Box 6248, %%% Providence, RI 02940, %%% 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)", %%% supported = "yes", %%% keywords = "amslatex, ams-latex", %%% abstract = "This is part of the AMS-\LaTeX{} distribution. It %%% describes differences between versions 1.1 and 1.2.", %%% 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.", %%% } %%% ==================================================================== \NeedsTeXFormat{LaTeX2e}% LaTeX 2.09 can't be used (nor non-LaTeX) [1994/12/01]% LaTeX date must December 1994 or later \documentclass{amsdtx} \usepackage{amsmath} \title{Differences between \amslatex/ version 1.1 and \amslatex/ version 1.2} \author{American Mathematical Society (Michael Downes)} \date{29 October 1996 \\ Version 1.02} \MakeShortVerb{\|} % Fake article-style maketitle since ams-doc-article class doesn't % exist yet \makeatletter \def\maketitle{\chapter*{\large\@title}% \section*{\large\normalfont\@author\\\@date}% \markboth{DIFFERENCES BETWEEN VERSIONS 1.1 AND 1.2}% {DIFFERENCES BETWEEN VERSIONS 1.1 AND 1.2}% \mbox{}% get some extra blank space \thispagestyle{plain}} \makeatother \renewcommand{\labelenumi}{(\theenumi)} \begin{document} \maketitle \section{Overview} \subsection{Transition to \LaTeXe{}} Version 1.1 of \amslatex/ was designed to work with \latex/2.09, which became obsolete as of June 1994; version 1.2 of \amslatex/ is designed to work with the new \latex/, aka \LaTeXe{}. Generally speaking, pre-existing documents that were written for \latex/2.09 can be processed by current \latex/ through a `compatibility mode' that is automatically entered when a document uses \cn{documentstyle} instead of \cn{documentclass} (see below). For generic \latex/ the emulation provided by \latex/'s compatibility mode is extremely good---at least for well-formed documents that avoided commands not documented in the \latex/ manual; the most common point of failure is due to use of internal font commands such as \cn{fivrm} or \cn{tenrm}, or to the loading of an option file that uses old internal commands (font-related or otherwise). For third-party extensions such as \amslatex/ the quality of the emulation in compatibility mode varies; when this documentation was written (1995/01/18) the emulation was fairly good for AMS packages such as \pkg{amstex} or \pkg{amssymb}, but less good for the AMS documentstyles \cls{amsart} and \cls{amsbook}; work to improve the accuracy of the emulation is on-going. No examination has been made of the situation at this revision (1996/10/28). In general, version 1.2 of \amslatex/ adheres as faithfully as possible to the \latex/ conventions and command set described in the second edition of \emph{\latex/: A document preparation system} (Lamport, 1994). For end users the changes lie primarily in the use of \cn{documentclass} and \cn{usepackage} instead of \cn{documentstyle} plus options, and in the changed syntax of font commands---e.g., |\textbf{...}| and |\mathbf{...}| instead of |{\bf...}|. For example, to use the \pkg{amsbsy} package with a general document class such as \cls{article}, you should no longer write \begin{verbatim} \documentstyle[amsbsy]{article}% obsolete \end{verbatim} but write instead \begin{verbatim} \documentclass{article} \usepackage{amsbsy} \end{verbatim} For pre-existing documents running in compatibility mode the old forms \cn{bf}, \cn{it}, etc., for the standard font commands now behave as described in the first edition of the \latex/ manual. Depending on the installation options used for your copy of \amslatex/ version 1.1, this may be the `right' behavior for your existing \amslatex/ 1.1 documents; if not, you will need to update the options list of the \cn{documentstyle} command by adding \opt{newlfont}, for example: \begin{verbatim} \documentstyle[newlfont]{amsart} \end{verbatim} Internally the changes in version 1.2 of \amslatex/ were somewhat more extensive; various parts were rewritten to take advantage of the most recent version of the font selection scheme, for example, as well as the new methods for managing packages and document classes, for defining robust commands, for writing technical commentary in typesettable form, and for providing installation scripts. In other words this version of \amslatex/ is thoroughly integrated with current \latex/, not just jury-rigged. The user's guide for \amslatex/ 1.2 describes only the current behavior; it doesn't attempt to describe the ways in which current behavior differs from the behavior of previous versions (that's the purpose of this document). \subsection{Packages \pkg{amsfonts}, \pkg{amssymb} moved to the AMSFonts distribution} In version 1.2, \latex/ support for the use of fonts in the AMSFonts distribution was moved out of the \amslatex/ distribution and into the AMSFonts distribution, where it more properly belongs. This means the packages \pkg{amsfonts}, \pkg{amssymb}, \pkg{euscript}, and \pkg{eufrak}, as well as associated font definition files. Please note that certain Computer Modern fonts that were formerly found only% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \footnote{Here `only' is an oversimplification, in light of the availability of (for example) the Sauter versions of the CM Metafont source files.} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% in the AMSFonts distribution are considered standard in \LaTeXe{}: \fn{cmmib} and \fn{cmbsy} in sizes 5--9, and \fn{cmex} in sizes 7--9. I.e., when you get a copy of \LaTeXe{} (and you cannot use \amslatex/ otherwise), those fonts should be included. If they are not, please inquire to the source where you obtained \LaTeXe{}. If you obtained \LaTeXe{} from CTAN, you can get Metafont source files for those fonts in the directory \fn{/tex-archive/fonts/latex/mf}. As \fn{.fd} files for those particular fonts are provided in the basic \latex/ distribution, the AMSFonts distribution does not redundantly provide them. \subsection{Package \pkg{amstex} renamed to \pkg{amsmath}} The \pkg{amstex} package has been renamed \pkg{amsmath}. The old name `amstex' came from the fact that version 1.0 was a more or less straight port into \latex/ of selected portions from the macro package \AmS-\tex/ written by Michael Spivak, but the historical origins of the package are likely of less interest to the general usership---especially looking to the future---than a straightforward declaration in the name `amsmath' of the sort of features that are provided. Another important reason for the name change was to make possible some progress that would be out of the question (because of the impact on existing documents) if the name `amstex' were retained. For example, unlike \pkg{amstex}, \pkg{amsmath} doesn't automatically load the \pkg{amsfonts} package, as that package was moved out to the AMSFonts distribution as described above. If this change were not accompanied by a name change, many existing documents would have to be updated by hand (adding |\usepackage{amsfonts}|) in order to run without error. A frozen version of \fn{amstex.sty} is provided for processing pre-existing documents; it won't have active maintainence henceforth except for bug fixes. For new documents, authors should use the \pkg{amsmath} package (not just because we advise it, but because it's a better package than its predecessor in a number of ways). If it \emph{is} necessary to use \fn{amstex.sty}, this should always be done by specifying |\documentstyle[amstex]{style}|; \fn{amstex} is not robust if loaded with |\usepackage| under |\documentclass|. [bnb, 1996/09/29] \subsection{New documentclass \cls{amsproc}} A new documentclass \cls{amsproc} for collections of articles, such as the proceedings of a conference, is now provided in addition to \cls{amsart} and \cls{amsbook}. \section{Differences in the \pkg{amsmath} package} Here we describe differences that users will see in the \pkg{amsmath} package, as the successor of \pkg{amstex} version 1.1. In general, commands and options that were dropped during the creation of the \pkg{amsmath} package are retained in the frozen version of \pkg{amstex} that is provided for compatibility mode use. \begin{enumerate} \item The options \opt{intlim}, \opt{nosumlim}, \opt{nonamelm}, \opt{righttag}, \opt{ctagsplt} for the \pkg{amstex} package are superseded by more intelligible names \opt{intlimits}, \opt{nosumlimits}, \opt{nonamelimits}, \opt{reqno}, \opt{centertags} for the \pkg{amsmath} package. \item The \qc{\@} character is no longer used as a special command prefix, except for the \pkg{amscd} package, and then only within the \env{CD} environment. Practically speaking, this means primarily that it is no longer necessary to use doubled |@@| to get a single printed @ character (e.g., in e-mail addresses). \item The extensible arrow commands |@>>>| and |@<<<| are no longer available outside of the \env{CD} environment of the \pkg{amscd} package; alternative commands \cn{xleftarrow} and \cn{xrightarrow} are provided by the \pkg{amsmath} package. The sub and superscripts are given through an optional resp.\ mandatory argument, for example \begin{ctab}{ll} |X\xleftarrow[a]{b}Y|& $X\xleftarrow[a]{b}Y$\\ |X'\xrightarrow[\alpha]{\beta}Y'|& $X'\xrightarrow[\alpha]{\beta}Y'$ \end{ctab} \item The command \cn{bold} has been superseded by the command \cn{mathbf}, as the latter is now the standard name provided by \latex/ for this purpose. \item The commands \cn{newsymbol}, \cn{frak}, \cn{Bbb} are no longer available because the \pkg{amsfonts} package is not loaded by \pkg{amsmath}. (In any case those commands now have new names---see the \pkg{amsfonts} documentation for details.) \item The \pkg{amsmath} package provides \cn{lvert} and \cn{rvert} for $\vert$ symbols when they act as delimiters (compare \cn{langle}, \cn{rangle} for $\langle\ldots\rangle$ delimiters). This is to address the problem that the \qc{\|} character is overloaded to represent several different notations with \emph{different typographical treatment}. Although this overloading is handled easily enough in reading by the discriminatory powers of the knowledgeable reader, it presents more difficult obstacles to the processing of electronic documents by various computer tools. Commands \cn{lVert} and \cn{rVert} are likewise provided instead of \cn{\|} for paired-delimiter use of the $\|$ symbol. Further discussion is found in the \amslatex/ user's guide (\fn{amsldoc.tex}). \item The \qc{\~} command is left unchanged by \pkg{amsmath}; the change that makes it remove a redundant preceding or following space character is now done only by AMS documentclasses (in version 1.1 this was done by the \pkg{amstex} package). \item The following rarely used commands are gone: \cn{accentedsymbol}, \cn{sphat}, \cn{spcheck}, \cn{sptilde}, \cn{spdot}, \cn{spddot}, \cn{spdddot}, \cn{spbreve}, \cn{@)))}, \cn{@(((}. They can be obtained through the \pkg{amsxtra} package if necessary. \item The six generalized fraction commands \cn{over}, \cn{overwithdelims}, \cn{atop}, \cn{atopwithdelims}, \cn{above}, \cn{abovewithdelims} are expressly forbidden by the \pkg{amsmath} package; use of the recommended forms \cn{frac}, \cn{binom}, and variants is now required, instead of merely recommended, and a new command \cn{genfrac} has been added to fill in the access gaps that used to exist. Use of the \cn{genfrac} command is discussed in the \amslatex/ user's guide (\fn{amsldoc.tex}). Not only is the unusual syntax of the primitive \tex/ fraction commands rather out of place in \latex/, but furthermore that syntax seems to be solely responsible for one of the most significant flaws in \tex/'s mathematical typesetting capabilities: the fact that the current mathstyle at any given point in a math formula cannot be determined until the end of the formula, because of the possibility that a following generalized fraction command will change the mathstyle of the \emph{preceding} material. As the side effects are a bit technical in nature, they are discussed in \fn{technote.tex} rather than here. \item The \cn{fracwithdelims} command is gone, as \cn{genfrac} provides equivalent functionality (and a little more). \item The optional argument of \cn{frac} that allowed changing the thickness of the fraction line is gone. That functionality is now provided only through \cn{genfrac}: the need to change the line thickness is so rare in practice that it seems better not to burden the ubiquitous \cn{frac} command with the somewhat time-consuming look-ahead process required for an optional argument. I.e., this change will contribute in a small way to making your documents run faster. \item The commands \cn{lcfrac} and \cn{rcfrac} for left or right alignment of continued fraction numerators are gone; they are replaced by an optional argument of the \cn{cfrac} command. \item A new command \cn{DeclareMathOperator} is provided for defining new operator names: \begin{verbatim} \DeclareMathOperator{\Tr}{Tr} \DeclareMathOperator*{\xlim}{x-lim} \end{verbatim} The |*| form makes the operator name produce limit-style sub and superscripts, like \cn{max} or \cn{lim}. This is now the preferred method, instead of using the old command \cn{operatorname} (which is, however, retained for now). The command \cn{operatornamewithlimits} has been renamed \cn{operatorname*}. These commands now can also be obtained through a separate package \pkg{amsopn}, so it's not necessary to load the entire \pkg{amsmath} package just to get that feature. \item The environments \env{Sb} and \env{Sp} for multiline subscripts have been replaced by a single command \cn{substack}, used as follows: \begin{verbatim} \sum_{\substack{first line\\second line}} \end{verbatim} This command can be used equally well in a subscript or superscript, and provides better vertical positioning (as compared to \env{Sb}, \env{Sp}) if a multiline subscript is placed on the side, as perhaps for an integral. There is also a slightly generalized alternative, an environment \env{subarray} that allows you to specify either centering or left alignment for the contents: \begin{verbatim} \sum_{\begin{subarray}{l}first line\\second line\end{subarray}} \end{verbatim} \item A command \cn{nobreakdash} is provided to suppress the possibility of a linebreak after the following hyphen or dash. For example, if you write `pages 1--9' as |pages 1\nobreakdash--9| then a linebreak will never occur between the dash and the 9. You can also use \cn{nobreakdash} to prevent undesirable hyphenations in combinations like |$p$-adic|. For frequent use, it's advisable to make abbreviations, e.g., \begin{verbatim} \newcommand{\p}{$p$\nobreakdash}% for "\p-adic" \newcommand{\Ndash}{\nobreakdash--}% for "pages 1\Ndash 9" \end{verbatim} \item The \env{[xx]align[at]} family of environments has been thoroughly revised: now the \env{xalignat} environment is gone, as its function has been merged into the \env{align} environment (it's no longer necessary to specify how many side-by-side structures, as was required for \env{xalignat}, because \env{align} automatically handles any number of them). Similarly, the \env{xxalignat} environment has been replaced by an environment \env{flalign} that doesn't require you to specify how many side-by-side structures will be needed. Certain numbering problems (presence of an equation number when it should be absent, or vice versa) have also been cleared up. \item The \env{alignedat} environment was changed to take two arguments rather than one: a mandatory argument (as formerly) specifying the number of align structures, and a new optional one specifying the placement of the environment (parallel to the optional argument of \env{aligned}). However, \env{aligned} is simpler to use, allowing any number of aligned structures automatically, and therefore the use of \env{alignedat} is deprecated. [bnb, 1996/09/29] \item The placement of equation numbers has been substantially improved for \env{align}, \env{gather}, and \env{split}. Numbers will now \emph{never} overlap on top of the equation body (as far as we can ascertain), and they are much less likely to be shifted up or down unnecessarily when there is actually adequate space to leave the number in the normal place. In a few remaining cases, an equation number will be shifted unnecessarily because technical complications make accurate measurement of the available room too difficult; for those cases a \cn{raisetag} command is provided that allows you to manually adjust the vertical position of the equation number. (Thanks to David M. Jones for his substantial [volunteer] work behind this change and the preceding one.) \item The seldom-used command \cn{oldnos} is gone; if you need it, you should consult the \latex/ documentation on using fonts (e.g., \fn{fntguide.tex}) to find out how to construct an equivalent command. \item A new \env{subequations} environment causes all numbered equation environments within its scope to be numbered (4.9a) (4.9b) (4.9c) etc., if the preceding numbered equation was 4.8. A \cn{label} command immediately after |\begin{subequations}| will produce a \cn{ref} of the parent number `4.9', not `4.9a'. The counters used by the \env{subequations} environment are |parentequation| and |equation| and standard uses of \cn{addtocounter}, \cn{setcounter}, etc., are possible with those counter names. \item The \pkg{amsmath} package (unlike \pkg{amstex}) respects the setting provided by the documentclass for putting equation numbers on the right or the left. [Technical note: a documentclass that has \opt{leqno} as the default should explicitly pass that option to the \pkg{amsmath} package with \cn{PassOptionsToPackage} in order for it to be effective.] \item The \opt{fleqn} option for left-aligned instead of centered equations is now supported (thanks to David M. Jones). \end{enumerate} \section{Differences in the \cls{amsart} and \cls{amsbook} document classes} \begin{enumerate} \item Instructions for using AMS documentclasses are no longer included in \fn{amsldoc.tex} (also known formerly as \fn{amslatex.tex}). They are now found in \fn{instr-l.tex} in the \fn{classes} subdirectory. This is a copy of the file \fn{instr-l.tex} that is found in the \fn{author-info} area of \fn{e-math.ams.org}. That area contains additional information pertaining specifically to the submission of \latex/ or \AmS-\tex/ documents to AMS publications. \item As mentioned earlier, a companion document class \cls{amsproc} is now provided for books that consist of a collection of articles, such as the proceedings of a conference. \item The abstract should now be entered \emph{before} the \cn{maketitle} command. This provides maximum control over the position and vertical spacing when printing the abstract information at different places, as required by different AMS publications---for example, in some publications the abstract may be required to fall between certain other elements in the beginning section of a document, or it may be postponed to the end of the document, or it might even be omitted entirely. If an abstract is entered after \cn{maketitle}, it will still be printed, but with a warning (and possibly in the wrong place or with wrong spacing). \item As the AMS document classes automatically load the \pkg{amsmath} package, all changes described above for the \pkg{amsmath} package affect the AMS classes also. Note in particular that the \qc{\@} character is no longer a special command prefix, so to produce a printed \qc{\@} in an e-mail address you should now write simply \qc{\@} instead of |@@|. \item The nonbreaking dash commands |@-|, |@--|, |@---| are no longer available because \qc{\@} as a special command prefix has disappeared. An alternative \cn{nobreakdash} command is provided in the \pkg{amsmath} package, as described above. \item The AMS document classes now take an option \opt{nomath} that suppresses the automatic loading of the \pkg{amsmath} package. This is sometimes helpful in converting a pre-existing document to AMS style if you only want to do a quick conversion without attempting to deal with any of the math. \item The old environments \env{pf}, \env{pf*} are superseded by a single \env{proof} environment. It takes an optional argument to specify an alternative heading text. If you are converting an older document to run with \cn{documentclass} instead of \cn{documentstyle}, here is how you could provide backward-compatible definitions for \env{pf} and \env{pf*}: \begin{verbatim} \newenvironment{pf}{\proof[\proofname]}{\endproof} \newenvironment{pf*}[1]{\proof[#1]}{\endproof} \end{verbatim} \item Formerly \cn{small} produced the same typesize as \cn{footnotesize} (8pt). Now they produce different sizes, normally 9 and 8 respectively. Furthermore, documentclass options \verb'8pt', \verb'9pt', \verb'11pt', \verb'12pt' are now offered in addition to the default \verb'10pt'. Also the range of typesize-changing commands is filled out to include, below \cn{normalsize}, the following: \cn{small}, \cn{Small}, \cn{SMALL}, \cn{tiny}, \cn{Tiny}. \cn{footnotesize} and \cn{scriptsize} are retained as synonyms of \cn{Small} and \cn{SMALL} respectively. As it stands \cn{tiny} no longer produces the same typesize as it did before (now 6 instead of 5), except in compatibility mode. This might affect some existing documents if they are updated to use \cn{documentclass} instead of \cn{documentstyle}. Similarly, \cn{large} now produces 11pt if the base size is 10pt, where formerly it produced 12pt. Finally, new commands \cn{larger} and \cn{smaller} are provided for changing the typesize relative to the current size. These commands take an optional integer argument to specify how many steps to go up or down: \verb'\larger[2]' means go up two sizes, and \verb'\larger' without an optional argument is the same as \verb'\larger[1]'. The list of sizes is a standard progression of type sizes and associated linespacing values as defined by the documentclass. If you need finer control over type size or linespacing, consult the \latex/ documentation about the \cn{fontsize} command. \item The \cn{qed} symbol is now an open square, not a filled black square, and it is positioned at the right margin, instead of at a fixed horizontal distance from the preceding text. There is one exception to this rule, namely that at the end of a display, the open square is positioned one quad from the end of the display, not at the right margin. [bnb, 1996/10/28] \item The command \cn{rom}, for making numbers and punctuation roman/upright in italic text, has been renamed \cn{upn} ``upright punctuation or number''. It will in most cases suffice to leave this refinement undone until a document is sent to a publisher for final typesetting, and furthermore, certain publications at the AMS now use special in-house italic fonts that have upright numbers and punctuation built in, making the use of \cn{upn} unnecessary even then. For general preprint-type use, this refinement is one that most users probably won't care to bother with. \end{enumerate} \end{document}