%%@texfile{% %% filename="amslatex.tex", \def\filename{amslatex.tex} %% version="1.1c", \def\fileversion{1.1c} %% date="24-FEB-1993", \def\filedate{24-FEB-1993} %% filetype="AMS-LaTeX: documentation", %% copyright="Copyright (C) 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.", %% author="American Mathematical Society", %% address="American Mathematical Society, %% Technical Support Department, %% P. O. Box 6248, %% Providence, RI 02940, %% USA", %% telephone="401-455-4080 or (in the USA) 800-321-4AMS", %% email="Internet: Tech-Support@Math.AMS.org", %% checksumtype="line count", %% checksum="3919", %% codetable="ISO/ASCII", %% keywords="latex, amslatex, ams-latex", %% abstract="This file is part of the AMS-\LaTeX{} package, version 1.1. %% It contains the User's Guide, in the form of a \LaTeX{} document. %% It can be printed using standard \LaTeX{}, BEFORE the installation %% of the AMS-\LaTeX{} add-on. Installation instructions are in %% Appendix A." %%} %%% end of file header \immediate\write16{% AMS-LaTeX file `\filename' (\fileversion, \filedate)} % %% This file can be typeset on most computer systems using the command %% %% latex amslatex.tex %% %% even before the rest of the installation has been carried out. %% Installation instructions are in Appendix A. %% \ifx\undefined\selectfont % If we are using an old LaTeX format file that does not incorporate % the Mittelbach--Sch"opf font selection scheme, we will % use the following documentstyle declaration: \documentstyle{article} % \ntt is defined differently below. \newcommand{\ntt}{\tt} % Otherwise we will use this one: \else \documentstyle[oldlfont]{article} % With the Mittelbach--Sch"opf font selection scheme in effect, % we define \ntt so that it always produces \mediumseries % \normalshape\tt even if \ntt is used inside a section heading % or similar place where the current font is not \mediumseries % \normalshape. This is to avoid font substitution warnings % for odd combinations like \cmtt/bx/n/10 which are usually % not available. \newcommand{\ntt}{\series m\shape n\tt} \fi %\makeindex % write index information to the file amslatex.idx \newtheorem{prop}{Proposition} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% Special definitions for use in producing the %% AMS-LaTeX User's Guide. \makeatletter % Indent a little on the left in the verbatim environment. \renewcommand{\verbatim}{\interlinepenalty\@M \@verbatim \leftskip\@totalleftmargin\advance\leftskip2pc \frenchspacing\@vobeyspaces \@xverbatim} % The @ character requires special handling because it's % a special character for MakeIndex. To avoid trouble we % make a direct call to the \char command. \newcommand{\atsign}{\char64\relax} \chardef\bslash=`\\ % p. 424, TeXbook % We define some macros to do automatic indexing of control sequences, % environments, options, and file names. For the index part we % let \- to \empty; without this, entries with and without discretionary % hyphens would be treated as separate entities by the makeindex % program. 4-AUG-1990 mjd \newcommand{\autoindex}{\index} % control sequence \newcommand{\cs}{\protect\pcs} \newcommand{\pcs}[1]{{\ntt\bslash#1}{\let\-\empty \autoindex{#1@{\string\ntt\bslash#1}}}} % LaTeX documentstyle name \newcommand{\sty}{\protect\psty} \newcommand{\psty}[1]{{\ntt#1}{\let\-\empty \autoindex{#1@{\string\ntt{}#1} documentstyle}}} % LaTeX option name \newcommand{\opt}{\protect\popt} \newcommand{\popt}[1]{{\ntt#1}{\let\-\empty \autoindex{#1@{\string\ntt{}#1} option}}} % environment name \newcommand{\env}{\protect\penv} \newcommand{\penv}[1]{{\ntt#1}{\let\-\empty \autoindex{#1@{\string\ntt{}#1} environment}}} % file name \newcommand{\fn}{\protect\pfn} \newcommand{\pfn}[1]{{\ntt#1}{\let\-\empty \autoindex{#1@{\string\ntt{}#1}}}} % to index a control sequence without printing it \newcommand{\indexcs}[1]{{\let\-\empty \autoindex{#1@{\string\ntt\bslash#1}}}} % We allow some slop at the right margin because we have some % long control sequence names and verbatim text to deal with. \hfuzz2pc % Macros for the various macro package names. \newcommand{\AmS}{{\protect\the\textfont2 A\kern-.1667em\lower.5ex\hbox{M}\kern-.125emS}} % ``LaTeX'' is always set in roman (per latex.tex). We substitute % \scriptfont0 for \sc for the `A', to avoid font unavailability % problems at odd sizes. \renewcommand{\LaTeX}{{\rm L\kern-.36em\raise.3ex\hbox{% \protect\the\scriptfont0 A}\kern-.15emT\kern-.1667em% \lower.7ex\hbox{E}\kern-.125emX}} \newcommand{\Textures}{{\it Textures}} % `Meta' macro. \def\<#1>{{$\langle$\it#1\/$\rangle$}} % To introduce permissible breakpoints for line breaks in verbatim text: \newcommand{\5}{\penalty500 } % A modified form of \sloppypar, to be used at the end of a paragraph: \renewcommand{\sloppypar}{{\tolerance9999\par}} % Used in the first appendix, for listings of files: \newenvironment{filelist}{\par \addvspace{\medskipamount}\hrule\nobreak\addvspace{\medskipamount}\noindent \begin{tabular*}{\columnwidth}[t]{p{7pc}@{\extracolsep{\fill}}p{20pc}}}% {\end{tabular*}\par} \newcommand{\BibTeX}{{\sc Bib\kern-.1em\TeX}} \makeatother \begin{document} \begin{titlepage} \pagestyle{empty} \title{\protect\AmS-\protect\LaTeX{} Version 1.1\\User's Guide} \author{American Mathematical Society} \date{August 1991} \maketitle \end{titlepage} % By not using arabic numbers for the table of contents pages, we % avoid having to run this file three times to get correct page % numbers. Setting \count1 helps to distinguish in the TeX log % that these are special pages, not part of the normal % numbering sequence. \pagenumbering{roman}\count1=-1 \message{Table of contents} % We turn off \autoindex temporarily while doing the table of % contents, to avoid indexing things that use \opt, \cs, \sty, % or \env in section headings. \renewcommand{\autoindex}[1]{} \tableofcontents \renewcommand{\autoindex}{\index} \newpage \message{Part I} \pagenumbering{arabic}\count1=0 \part{General} \section{Introduction} The necessary documentation for using the \AmS-\LaTeX{} package has two parts: this {\em User's Guide\/}, and some sample files illustrating the features available in the \AmS-\LaTeX{} package. The file used to produce this {\it User's Guide} is \fn{amslatex.tex}; the sample files are named \fn{testart.tex} and \fn{testbook.tex}. Installation instructions for the \AmS-\LaTeX{} package are found in Appendix~\ref{a:install}. As explained there, installation requires making a new \LaTeX{} format file. This {\em User's Guide}, however, can be typeset without the new format file, so that users can read it before proceeding further if they wish. As a consequence, though, it was impractical in many cases to show sample output for commands from the \opt{amstex} option; this is done instead in the sample file \fn{testart.tex}. In the {\em User's Guide\/} approximate output has been shown for the purposes of illustration when it was practical to do so in ordinary \LaTeX{}. For best understanding, you should be reasonably familiar with the \LaTeX{} manual: {\it\LaTeX{}: A document preparation system}, by Leslie Lamport \cite{lm}. Reading the {\it Joy of \TeX\/} \cite{jt} (the manual for \AmS-\TeX{}) will help you get the most out of the \AmS-\LaTeX{} software, but is not mandatory. For users whose background is in \AmS-\TeX{} rather than \LaTeX{}, there is an appendix describing the ways in which the \LaTeX{} \opt{amstex} option differs from \AmS-\TeX{} 2.1. \subsection{Notes} The notation \, \, \index{dimension@{\it dimension}}\ index{number@{\it number}} and the like will be used to indicate that an arbitrary dimension or number or whatever is to be substituted by the user. By {\it dimension\/} we mean a number followed by one of \TeX{}'s standard units {\tt pt}, {\tt pc}, {\tt in}, {\tt mm}, {\tt cm}, and so forth. It is important in this {\it User's Guide} that we distinguish between the original, non-\LaTeX{} implementation of \AmS-\TeX{} and the modified form of it that constitutes the \LaTeX{} option \opt{amstex}. Typewriter type will be used for the \LaTeX{} option \opt{amstex}, and the standard logo \AmS-\TeX{} will be used for the original non-\LaTeX{} version. \section{The \protect\AmS-\protect\LaTeX{} project} \AmS-\TeX{} was originally released for general use in 1982. Its main strength is that it makes it easy for the user to typeset mathematics, while taking care of the many details necessary to make the output satisfy the high standards of mathematical publishing. It provides a predefined set of natural commands such as \cs{matrix} and \cs{text} that make complicated mathematics reasonably convenient to type. These commands incorporate the typesetting experience and standards of the American Mathematical Society, to handle problematic possibilities without burdening the user: matrices within matrices, or a word of text within a subscript, and so on. \AmS-\TeX{}, unlike \LaTeX{} does not have certain features that are very convenient for authors---automatic numbering that adjusts to addition or deletion of material being the primary one. There are also labor-saving ways provided in \LaTeX{} for preparing such items as indexes, bibliographies, tables, and simple diagrams. These features are such a convenience for authors that the use of \LaTeX{} spread rapidly in the mid-80s (a reasonably mature version of \LaTeX{} was available by the end of 1983), and the American Mathematical Society began to be asked by its authors to accept electronic submissions in \LaTeX{}. The obvious question to ask was whether the strengths of \AmS-\TeX{} could be combined with the strengths of \LaTeX{}, and in 1987 the American Mathematical Society began to investigate the possibility of doing just that. Work on the \AmS-\LaTeX{} project was carried out over the next three years by Romesh Kumar, a \TeX{} consultant in the Chicago area, and by West German \LaTeX{} experts Frank Mittelbach and Rainer Sch\"opf, with assistance from Michael Downes of the American Mathematical Society technical support staff. The overall philosophy was to provide \AmS-\TeX{} commands to the \LaTeX{} user while adhering to standard \LaTeX{} syntax as much as possible. Thus, to make their syntax more like normal \LaTeX{} syntax, \AmS-\TeX{} commands having the form \cs{something}\5$\ldots$\5\cs{endsomething} were converted to \LaTeX{} environments, so that they now have the form \cs{begin}\verb'{something}'\5$\ldots$\5\cs{end}\verb'{something}'. For example, a matrix is typed as \cs{begin}\verb'{matrix}'\5\dots\5\cs{end}\verb'{matrix}' instead of \cs{matrix}\5$\ldots$\5\cs{endmatrix}. Also, some commands that have top and bottom options were changed so that the option is specified using \verb'[t]' or \verb'[b]' instead of by a prefix \verb'top' or \verb'bot' in the command name. See Appendix~\ref{a:diff} for more details. A good part of the original \AmS-\TeX{} was whittled off in the creation of the \opt{amstex} option. Many commands were redundant and were simply dropped; others seemed only marginally useful and were omitted in order to conserve control sequence memory. Some internal control sequences were eliminated by restructuring the code. \AmS-\LaTeX{} is different enough from the original \AmS-\TeX{} that using the {\it Joy of \TeX\/} as documentation would be unsatisfactory. Instead, this {\it User's Guide\/} aims to be more or less self-sufficient. The {\it Joy of \TeX\/} is still recommended reading because it provides background information that helps explain why some things are handled the way they are. \section{Major components of the \protect\AmS-\protect\LaTeX{} package} The first major part of the \AmS-\LaTeX{} package is an extensive modification of \AmS-\TeX{} 2.0+ that allows it to be used in \LaTeX{} as a documentstyle option. In other words, if you are writing an article, your documentstyle declaration should look like this: \begin{verbatim} \documentstyle[amstex]{article} \end{verbatim} The second major part of the \AmS-\LaTeX{} package is a pair of documentstyles called \sty{amsart} and \sty{amsbook}, parallel to \LaTeX{}'s \sty{article} and \sty{book}, which are designed to be used in preparing manuscripts for submission to the AMS. There is nothing to prohibit their use for other purposes; some users have said that they like using these documentstyles, even when they don't intend to submit their manuscripts to the AMS, just because they find the general design pleasing. When the \sty{amsart} and \sty{amsbook} style files are used the \opt{amstex} option will be automatically included, so that the documentstyle declarations would simply be \cs{documentstyle}\verb'{amsart}' or \cs{documentstyle}\verb'{amsbook}'. The analog in \AmS-\TeX{} of the \sty{amsart} documentstyle is the documentstyle \sty{amsppt} (``AMS preprint''). In \sty{amsart} and \sty{amsbook} the document structure commands of the {\tt amsppt} style described in Appendix~A of the {\it Joy of \TeX\/} have been superseded by their \LaTeX{} equivalents, where equivalents existed, and otherwise have been reimplemented in \LaTeX{} form. The bibliography commands described in Appendix~C of the {\it Joy of \TeX\/} have been dropped in favor of \BibTeX{}, partly because this saves a significant amount of memory. \message{Part II} \newpage \part{Font considerations} \label{s:fonts} \section{The font selection scheme of Mittelbach and Sch\"opf} In order to provide not only access to the AMSFonts currently available but a general, reliable mechanism for making new math fonts accessible to the user, the Society enlisted Frank Mittelbach and Rainer Sch\"opf to adapt their recently developed font selection scheme to accommodate the needs of the \AmS-\LaTeX{} project. This new scheme has a couple of distinctive features: (1) fonts (even math fonts) need not be preloaded but can be loaded on demand; (2) font switches work a bit differently---attributes are independent, and only one is changed at a time. In \LaTeX{} terms this means that, for example, \verb'\bf\Large' has the same effect as \verb'\Large\bf'. At the present time the files for the new font selection scheme are being distributed along with the \AmS-\LaTeX{} package, with the permission of Mittelbach and Sch\"opf; in the future the new scheme is slated to become an official part of \LaTeX{}, in place of the current scheme. A detailed description of the workings of the font selection scheme can be found in an article by Mittelbach and Sch\"opf that appeared in {\it TUGboat\/}, June 1990 (vol.~11, no.~2): {\it The new font family selection---user interface to standard \LaTeX{}\/} \cite{msf}. If you don't have access to that article, see the file \fn{fontsel.tex} in the {\tt fontsel} distribution. \section{Basic concepts} In normal use, the ordinary \LaTeX{} commands \cs{rm}, \cs{it}, \cs{tt}, \cs{bf} are defined in terms of more primitive commands \cs{family} etc., and still function in much the same way as before. Knowledge of the more primitive commands will not be essential except in documentstyle design or similar tasks. The Mittelbach--Sch\"opf font selection scheme classifies fonts based on the attributes {\em shape}, {\em series}, {\em size}, and {\em family}. Each attribute can be changed independently using the commands \cs{shape}, \cs{series}, \cs{size}, and \cs{family}. For example, to change the family attribute to {\tt cmr} (Computer Modern roman), the command would be \cs{family}\verb'{cmr}'. Note that these commands do not actually select the new font, because it's not uncommon for you to want to change several attributes at a time before actually switching to the new font. The command for putting the new attributes into effect is \cs{selectfont}. For example, if the current font is family {\tt cmr}, size 10/12 (10-point type with 12-point baselineskip), series {\tt m} (medium weight and width), and shape {\tt it} (italic), then the command \begin{verbatim} \family{cmtt}\shape{n}\selectfont \end{verbatim} would switch to a Computer Modern typewriter font in the ``normal,'' i.e., upright, shape. The size and series values used in the selection of the new font would remain the same as before. \subsection{Shape} The {\em shape} attribute is either: normal ({\tt n}), italic ({\tt it}), small caps ({\tt sc}), slanted (or ``sloped'') ({\tt sl}), or upright italic ({u}). The first three of these are the shapes that were typically found together in the same font case, in the days of manual typesetting. The latter two are somewhat unusual variant shapes that are present in the Computer Modern fonts. The command to switch to a particular shape, say {\tt sc}, without changing other font attributes would be \begin{verbatim} \shape{sc}\selectfont \end{verbatim} but there are abbreviations for the most common shape changes: \cs{sc}, \cs{it}, \cs{sl}, and \cs{normalshape}. These are the same as in the previous font selection scheme, except for \cs{normalshape}, which may be understood as a replacement for \cs{rm}. In the new font selection scheme \cs{rm} is a family-changing command, not a shape-changing command. If you are dismayed at the prospect of typing many instances of \cs{normalshape}, which is obviously much longer than \cs{rm}, you needn't be. As you will see, many former uses of \cs{rm}, especially in mathematics, are better handled by other means. With astute use of grouping, most documents can be done without using \cs{normalshape} at all. \subsection{Series} The series attribute is actually a combination of two related attributes, weight and width. The font charts of type manufacturers typically show weights of light, medium, and bold, and widths of condensed, medium, and expanded, with intermediate and extreme variations such as semibold, extra bold, and ultra bold. The full list of the weights and widths allowed for in the Mittelbach--Sch\"opf scheme are as shown in Table~\ref{weight-width} (adapted from Table~1 in \cite{msf}), along with their corresponding abbreviations for use with the \cs{series} command. Examples: \begin{description} \item[\cs{series}{\tt\char`\{ux\char`\}}\cs{selectfont}] Switches to an ultra expanded version of the current font. \item[\cs{series}{\tt\char`\{sbc\char`\}}\cs{selectfont}] Switches to a semibold condensed version of the current font. \item[\cs{series}{\tt\char`\{m\char`\}}\cs{selectfont}] Switches to a medium weight, medium width version of the current font. \end{description} Only two series changes are common enough to require abbreviations: \cs{bf} and \cs{mediumseries} are abbreviations for, respectively, \begin{verbatim} \series{bx}\selectfont \series{m}\selectfont \end{verbatim} or, in other words, ``bold'' and ``not bold''.\footnote{% See the remarks in Subsection~\ref{s:otherfam} about {\tt\bslash bfdefault}.}% \begin{table}[htp] % Since we are not making a list of tables, we use the [] % option of \caption to avoid putting the caption text % into the .lot file (which could cause % `TeX capacity exceeded---buffer size' if the caption % is long, as here.) \caption[]{Font weights and widths, and their abbreviations. For use in the {\tt\bslash series\-} command, combine the weight and width abbreviations, dropping any {\tt m}'s (for ``medium''), except in the case where both weight and width are medium: then use a single {\tt m}. Examples: Ultra Bold Condensed: {\tt ubc}; Medium Condensed:~{\tt c}.} \label{weight-width} \begin{center} \begin{tabular}{|ll@{\hspace{2\tabcolsep}}ll|} \hline Weight&& Width&\\ \hline \vrule width0pt height10pt Ultra Light& {\tt ul}& Ultra Condensed& {\tt uc}\\ Extra Light& {\tt el}& Extra Condensed& {\tt ec}\\ Light& {\tt l}& Condensed& {\tt c}\\ Semilight& {\tt sl}& Semicondensed& {\tt sc}\\ Medium (normal)& {\tt m}& Medium& {\tt m}\\ Semibold& {\tt sb}& Semiexpanded& {\tt sx}\\ Bold& {\tt b}& Expanded& {\tt x}\\ Extra Bold& {\tt eb}& Extra Expanded& {\tt ex}\\ Ultra Bold& {\tt ub}& Ultra Expanded& {\tt ux}\\[3pt] \hline \end{tabular} \end{center} \end{table} \subsection{Size} Because a change in font size is usually accompanied by a change in baselineskip, the \cs{size} command is designed to take two arguments, the new size and the new baselineskip. To switch to 14-point type with a baselineskip of 18 points, the command would be \begin{verbatim} \size{14}{18pt}\selectfont \end{verbatim} All the usual \LaTeX{} size-changing commands from \cs{tiny} to \cs{Huge} have suitable definitions based on the \cs{size} command. {\em Note}.\ In the specification for the baselineskip, it is necessary to give the units, because in some situations a unit other than {\tt pt} may be desirable, or a skip register (see \cite[p.~118]{kn}) might be used instead of an explicit value. \subsection{Family}\label{s:families} We define a font {\em family} as a group of fonts of various shapes, widths, and weights, that share distinctive design features, such as x-height, the relative thickness of horizontal and vertical strokes, distinctive shapes of particular letters, and so forth. In other words, fonts in the same family share a resemblance that fonts from different families don't share (though in some cases the resemblance is obvious only to an experienced eye). Table~\ref{fams} gives a classification of some of the Computer Modern fonts according to family. \begin{table}[htp] \caption[]{Computer Modern font families} \label{fams} \begin{center} \begin{tabular}{|p{12pc}|l|} \hline Font file name& Family (and abbreviation)\\ \hline \tt \raggedright cmr10, cmti10, cmsl10, cmcsc10, cmu10, cmbx10, cmbxti, cmbxsl, cmb10& Computer modern roman ({\tt cmr})\\ \hline \tt \raggedright cmss10, cmssi10, cmssbx10, cmssdc10& Computer modern sans serif ({\tt cmss})\\ \hline \tt \raggedright cmtt10, cmitt10, cmsltt, cmtcsc10& Computer modern typewriter ({\tt cmtt})\\ \hline \end{tabular} \end{center} \end{table} The abbreviations \cs{rm}, \cs{tt}, and \cs{sf} are provided for switching to the Computer Modern roman, typewriter, and sans serif families. (The definition of \cs{sf}, for example, is \verb'\family{cmss}\selectfont'.) \subsection{Using other font families}\label{s:otherfam} If the base family of a document is Computer Modern roman, with other families used only sporadically, the other families would be selected using the \cs{family} command as described in \S\ref{s:families}. If you want to change the {\it base family\/} of the document, however, say to Times Roman or Baskerville, then the best way is to change the default family settings. In a canonical setup with all Computer Modern fonts, the following definitions are in effect: \begin{verbatim} \newcommand\rmdefault{cmr} \newcommand\sfdefault{cmss} \newcommand\ttdefault{cmtt} \end{verbatim} Some or all of these default settings can be changed using \cs{renewcommand}. For example, if you have families {\tt pstr}, {\tt pshel}, and {\tt pstt} for respectively PostScript Times Roman, PostScript Helvetica, and Postscript Typewriter fonts, then you could make them the default via the commands \begin{verbatim} \renewcommand{\rmdefault}{pstr} \renewcommand{\sfdefault}{pshel} \renewcommand{\ttdefault}{pstt} \end{verbatim} either in the preamble of an individual document, or in an option file (which then could be used by more than one document). After these changes, the commands \cs{rm}, \cs{sf}, and \cs{tt} will select the PostScript families rather than Computer Modern families. Computer Modern families would still be accessible through explicit use of the \cs{family} command, e.g., \begin{verbatim} \family{cmtt}\selectfont \end{verbatim} Note that in order to use such alternate families you must have on your computer system a fontdef file that defines which fonts belong to the families {\tt pstr}, {\tt pshel}, and {\tt pstt}, as well as what sizes, shapes, and weights are available on your particular system; see the file \fn{fontdef.max} for more details (and also section~\ref{s:custom-fontdef}). In addition to the family defaults, there are defaults for some other font attributes: \cs{bfdefault}, \cs{itdefault}, \cs{scdefault}, and \cs{sldefault}. These give further control over fonts. I.e., if you wanted to have all the slanted fonts in a document come out in italic, it could be done like this: \begin{verbatim} \renewcommand{\sldefault}{it} \end{verbatim} The normal values for these defaults are \begin{verbatim} \bfdefault bx \itdefault it \scdefault sc \sldefault sl \end{verbatim} Notice that by default bold fonts come from the Bold Expanded series rather than the Bold series. A comparison of the bold Computer Modern fonts provided in standard distributions of \TeX{} shows why: \[\begin{tabular}{|l|lll|} \hline Bold& \multicolumn{3}{c|}{Bold Expanded}\\[2pt] \hline {\tt cmb10}& {\tt cmbxsl8}& {\tt cmbx5}& {\tt cmbx9}\\ & {\tt cmbxsl10}& {\tt cmbx6}& {\tt cmbx10}\\ & {\tt cmbxti7}& {\tt cmbx7}& {\tt cmbx12}\\ & {\tt cmbxti10}& {\tt cmbx8}&\\ \hline \end{tabular}\] \subsection{The \opt{oldlfont} option} \label{s:oldlfont} When the Mittelbach--Sch\"opf font selection scheme is in use, emulation of the old font selection scheme can be obtained by adding the option \opt{oldlfont} to the documentstyle options list. When the \opt{oldlfont} option is used, size-changing commands return to normal shape and medium series in addition to changing the font size; \cs{rm} gives normal shape and medium series; \cs{tt} gives the normal shape and medium series of the typewriter font; and \cs{sf} gives the normal shape and medium series of sans serif. \subsection{Warnings} Many combinations of font attributes are not available at the present time because the corresponding fonts do not exist. The combination \begin{verbatim} \family{cmr}\series{bx}\shape{sl} \end{verbatim} happens to be available, because the corresponding font file, {\tt cmbxsl10}, is part of the standard \TeX{} distribution. However, for the combination \begin{verbatim} \family{cmss}\series{sbux}\shape{sc} \end{verbatim} ``Computer Modern sans serif semibold ultra expanded small caps,'' no font file currently exists. When a combination of font attributes is selected that is not available, the nearest available font will be substituted, and a warning message---not an error message, just a warning message---will appear on-screen during the processing of the document file. The warning message will indicate which font was substituted. Once in a while, you may find surprising results from a few commands in standard \LaTeX{} because they do not reset all the font attributes in the new font selection scheme. For example, if the \cs{footnote} command appears within italic text (e.g., in a theorem), then the text of the footnote will also be italic, because the standard definition of \cs{footnote} resets only the {\em size\/} attribute, not the {\em shape\/} or {\em family\/} or {\em series\/} attributes. Problems of this nature have been corrected in the \sty{amsart} and \sty{amsbook} documentstyles, and will be rectified in future versions of \LaTeX{} for the standard \LaTeX{} documentstyles. In the meantime, you can add explicit font commands where needed: to get a normal footnote in italic text, type\indexcs{normalshape} \begin{verbatim} \footnote{\normalshape ...} \end{verbatim} instead of just \cs{footnote}. When using the Mittelbach--Sch\"opf scheme, the font names listed in an ``overfull hbox'' message won't look the same as before. Each font name will have the family, series, shape, and size, separated by slashes. For example, 10-point Computer Modern bold extended will appear as {\tt \bslash cmr/bx/n/10}. Formerly it would have appeared as \cs{tenbf}. \subsection{Customization of fontdef files} \label{s:custom-fontdef} There are three {\it fontdef\/} files in the standard collection of \AmS-\LaTeX{} files. Two of them, \fn{fontdef.ori} and \fn{fontdef.max}, originated with Mittelbach and Sch\"opf, while the third, \fn{fontdef.ams}, was produced at the AMS by adapting \fn{fontdef.max}. Although these standard fontdef files will work reasonably well for most users, it will often be to users' advantage to make a customized fontdef file for their own use. This is because two users chosen at random seldom have exactly the same collection of fonts, unless they bought the same product at the same time from the same company. Printer drivers that use bitmapped fonts (usually in the form of .PK files) generally require a separate bitmap file for each size of each font, so that a fairly frequent problem is for a particular user to be missing a few of the particular bitmaps needed for the fonts and sizes called for in a document. The action taken by printer drivers when a font is not found varies from useful (offering to substitute another font) to not at all useful (refusing entirely to print the document). The Mittelbach--Sch\"opf font scheme offers a substitution mechanism in the fontdef files for getting around the latter problem, as described below. \subsubsection{A typical font definition} Here is a typical font definition from \fn{fontdef.max}, for Computer Modern text italic: \begin{verbatim} \new@fontshape{cmr}{m}{it}{% <5>cmti7 at5pt% <6>cmti7 at6pt% <7>cmti7% <8>cmti8% <9>cmti9% <10>cmti10% <11>cmti10 at10.95pt% <12>cmti12% <14>cmti12 at14.4pt% <17>cmti12 at17.28pt% <20>cmti12 at20.74pt% <25>cmti12 at24.88pt% }{} \end{verbatim} We now discuss the definition piece by piece. \begin{description} \item[\tt\bslash new\atsign fontshape] This is the command used to define each family/series/shape combination. The \verb'@' character in the command name indicates that this is an internal command. It has five {\it arguments}, indicated by the pairs of curly braces \verb'{'~\verb'}'. \item[\tt\char`\{cmr\char`\}] The font family: argument 1. \item[\tt\char`\{m\char`\}] The font series: argument 2. \item[\tt\char`\{it\char`\}] The font shape: argument 3. \item[\tt\char`\{<5>cmti7 ...\char`\}] A list of point sizes and the external font descriptions of the fonts that will be used for each point size. For example, the line \verb'<7>cmti7' means that if a seven-point font in this particular family/series/shape combination is required, the external font file ``cmti7'' will be used. There shouldn't be any spaces in this list, except before ``at'' clauses, and since end-of-line normally produces a space, percent signs are used in the point size list to comment out those spaces. \item[\tt at10.95pt, at14.4pt, ...] When scaling up fonts to sizes larger than their original size, the best strategy normally is to follow a {\it magstep\/} progression rather than using exact point sizes: \begin{center} \begin{tabular}{|ll|} \hline at 10.95pt& instead of at 11pt\\ at 12pt& no change\\ at 14.4pt& instead of at 14pt\\ at 17.28pt& instead of at 17pt\\ at 20.74pt& instead of at 20pt\\ at 24.88pt& instead of at 25pt\\ \hline \end{tabular} \end{center} The reason this is good strategy is that for printer drivers using bitmapped fonts, you are more likely to have the right sizes if you use the magstep values than if you specify exact point sizes. (If you have a PostScript printer driver or other vector-based driver, you won't have to worry about this.) \item[\tt\char`\{\char`\}] The fifth argument of the \cs{new\atsign fontshape} command is normally empty. It is used for specifying, if necessary, additional action to be taken when a particular font is loaded. \end{description} There are two kinds of substitutions that can be done: substituting for an individual size of a particular font, or substituting for all sizes of a particular family/series/shape combination. \subsubsection{Substitutions for individual sizes} The smallest size in the above example is five-point, \verb'<5>cmti7 at5pt', obtained by reducing the seven-point version of the font to 5pt. If you don't have a .PK (bitmap) file corresponding to this particular size, and want to substitute \fn{cmti7} at its natural size, then you would change this line in the font definition to read \verb'<5>1cmti7'. The number 1 at the beginning will cause \LaTeX{} to print an informational message about the fact that a substitution was made, if the font is actually used at that size. Alternatively, instead of substituting a larger size of exactly the same font, you might prefer to get the proper size and substitute a different font shape. For example, if you wanted to substitute five-point roman instead of seven-point italic, you would change the line to read \verb'<5>2cmr5'. (The number 2 at the beginning causes a slightly different informational message to be given if and when that size is actually used.) \subsubsection{Substitution of a different series, shape, or family} Substitution of a different family/series/shape combination for one that is unavailable to you is done with a command called \cs{subst\atsign fontshape}. It takes six arguments, the first three the family, series, and shape that aren't available, and the second three the family, series, and shape that you wish to substitute. For example, let's suppose you want to substitute Computer Modern medium slanted for Computer Modern medium italic. The command would be \begin{verbatim} \subst@fontshape{cmr}{m}{it}{cmr}{m}{sl} \end{verbatim} Further examples of the use of \cs{subst\atsign fontshape} can be found in the files \fn{fontdef.ori} and \fn{fontdef.max}. \section{Names of math font commands} \label{s:mathfonts} The single biggest issue in the integration of \AmS-\TeX{} and \LaTeX{} font usage was that in \AmS-\TeX{} math font commands work differently than text font commands and have different names. Instead of being a simple switch, whose scope is bounded by curly braces, a math font command in \AmS-\TeX{} is a command with one argument. This means that in \AmS-\LaTeX{}, to obtain a single bold letter in math you type \cs{bold}\verb'{A}' rather than \verb'{\bf A}', and two bold letters would be typed \verb'\bold{A}'\5\verb'\bold{B}' instead of \verb'{\bf AB}'. (A similar distinction between text accents and math accents already existed in \LaTeX{}.) Having the font command apply only to a single letter in this way is more natural in math formulas, because letters are usually single variables rather than components of a word, and different fonts are mixed in all combinations; four consecutive letters might be from four different fonts. The full list of math font commands in the \opt{amstex} option is \cs{mathrm}, \cs{bold}, \cs{cal}, with the addition of \cs{frak} (Fraktur) and \cs{Bbb} (blackboard bold) if AMSFonts are available. Math italic, the default font for letters in math, also has a name, \cs{mit}, but this is never needed in ordinary use. Tables \ref{fonttable} and~\ref{mathfonts} give a comprehensive listing of font change commands for convenient reference. \begin{table}[htp] \chardef\{=`\{ \chardef\}=`\} \caption[]{Font commands used in text} \label{fonttable} \begin{center} \begin{tabular}{|lll|} \hline \multicolumn{1}{|l}{Font command}& Equivalent& Font selected\\ \hline \cs{normalshape}& \tt\cs{shape}\{n\}& normal, upright, ``roman''\\ \cs{it}& \tt\cs{shape}\{it\}& italic\\ \cs{em}& \tt\cs{shape}\{it\}$^*$ & emphasis\\ \cs{sl}& \tt\cs{shape}\{sl\}& slanted\\ \cs{sc}& \tt\cs{shape}\{sc\}& small caps\\ \cs{mediumseries}& \tt\cs{series}\{m\}& medium weight\\ \cs{bf}& \tt\cs{series}\{bx\}& bold extended weight\\ \cs{tt}& \tt\cs{family}\{cmtt\}& typewriter style\\ \cs{sf}& \tt\cs{family}\{cmss\}& sans serif\\ \cs{rm}& \tt\cs{family}\{cmr\}& roman\\ \hline \multicolumn{3}{|l|}{\parbox{20pc}{$^*$\strut The command \cs{em} selects shape {\tt it} if the current font is upright, otherwise it selects shape {\tt n} (normal).}}\\[6pt] \hline \end{tabular} \end{center} \bigskip \caption[]{Font commands used in math} \label{mathfonts} \begin{center} \begin{tabular}{|lp{20pc}|} \hline \cs{bold}& Used to obtain bold letters from the English alphabet.\\ \cs{boldsymbol}& Used to obtain bold numbers and other nonalphabetic symbols, as well as bold Greek letters.\\ \cs{pmb}& ``Poor man's bold,'' used for math symbols when bold versions don't exist in the currently available fonts.\\ \cs{cal}& Calligraphic letters. Only uppercase is available.\\ \cs{mit}& Math italic. This font is automatically selected in math mode, so the command \cs{mit} is not needed in normal use.\\ \cs{mathrm}& Roman, normal shape. Note: most of the time, \cs{text} or \cs{operatorname} should be used instead of \cs{mathrm} to produce this font in math.\\ \cs{frak}& Euler Fraktur alphabet.\\ \cs{Bbb}& Blackboard bold alphabet. Only uppercase is available.\\ \hline \end{tabular} \end{center} \end{table} To gain access to a new math alphabet, you use the \cs{new\-math\-alpha\-bet} command in the preamble of your document. If you have the AMSFonts package, for example, and you want to use Russian letters in math, taking them from the University of Washington Cyrillic fonts, then you need to find out the family name assigned to the fonts and the shapes and weights available. See Table~\ref{fonts} to see what family names are included in the standard font definition file \fn{fontdef.max}. If you made a custom fontdef file to match your available fonts, look in that file to find the information. If you are running \LaTeX{} at a larger institution where some technical person has been assigned to handle arcane font matters, you may need to consult that person. \begin{table}[htp] \caption[]{Font name assignments made in {\tt fontdef.max}} \label{fonts} \medskip \begin{tabular}{|lllp{17pc}|} \hline \multicolumn{1}{|c}{Family}& \multicolumn{1}{c}{Series}& \multicolumn{1}{c}{Shape}& \\ \hline cmr& m& n& Computer Modern Roman\\ cmr& m& sl& CM slanted\\ cmr& m& it& CM italic\\ cmr& m& sc& CM small caps\\ cmr& m& u& CM upright italic\\ cmr& b& n& CM bold\\ cmr& bx& n& CM bold extended\\ cmr& bx& sl& CM bold extended slanted\\ cmr& bx& it& CM bold extended italic\\ cmss& m& n& CM sans serif\\ cmss& m& sl& CM sans serif slanted\\ cmss& sbc& n& CM sans serif semibold condensed\\ cmss& bx& n& CM sans serif bold extended\\ cmtt& m& n& CM typewriter\\ cmtt& m& it& CM typewriter italic\\ cmtt& m& sl& CM typewriter slanted\\ cmtt& m& sc& CM typewriter small caps\\ cmm& m& it& CM math italic\\ cmm& b& it& CM bold math italic\\ cmsy& m& n& CM math symbols\\ cmsy& b& n& CM bold math symbols\\ lasy& m& n& \LaTeX{} extra symbols\\ lasy& b& n& \LaTeX{} bold extra symbols\\ msa& m& n& AMS extra symbols~A\\ msb& m& n& AMS extra symbols~B\\ euf& m& n& Euler fraktur\\ euf& b& n& Euler fraktur bold\\ eur& m& n& Euler roman\\ eur& b& n& Euler bold roman\\ eus& m& n& Euler script\\ eus& b& n& Euler bold script\\ euex& m& n& Euler math extension symbols\\ UWCyr& m& n& University of Washington Cyrillic\\ UWCyr& m& it& UW Cyrillic italic\\ UWCyr& m& sc& UW Cyrillic small caps\\ UWCyr& b& n& UW Cyrillic bold\\ UWCyss& m& n& UW Cyrillic sans serif\\ ccr& m& n& Concrete Roman\\ ccr& m& it& Concrete italic\\ ccr& m& sc& Concrete small caps\\ ccr& c& sl& Concrete condensed slanted\\ ccm& m& it& Concrete math italic\\ \hline \end{tabular} \end{table} Suppose, then, that the family name for the University of Washington fonts is {\tt UWCyr}. Decide on the name of the command you'd like to use for Cyrillic, let's say \cs{cy}. In the preamble area of your document, add the line \begin{verbatim} \newmathalphabet*{\cy}{UWCyr}{m}{n} \end{verbatim} Thenceforth \verb'\cy{A}', \verb'\cy{d}', and so on will give you a Russian A, d, or whatever in math. Since there is not a one-to-one correspondence between the Russian alphabet and the English alphabet, you may need to refer to your documentation to find out how to obtain certain letters. The {\it AMSFonts User's Guide\/} \cite{amsfonts} gives a complete table. If you also want to use bold Russian letters, you could define another math alphabet and name it, say, \verb'\boldcy'. Alternatively, you could set things up so that bold Russian letters are accessible through the commands \cs{boldsymbol} and \cs{boldmath}. If you add the line \begin{verbatim} \addtoversion{bold}{\cy}{UWCyr}{b}{n} \end{verbatim} in your document's preamble, then \verb'\cy{A}' would produce a normal-weight Russian A and \begin{verbatim} {\boldmath $ ... \cy{A} ... $ } \end{verbatim} would produce a bold Russian A (with the rest of the formula being made bold as well). Furthermore, you could then obtain a bold Russian A in the midst of normal math using \cs{boldsymbol}: {\samepage \begin{verbatim} $ ... \boldsymbol{\cy{A}} ... $ \end{verbatim} }% End of \samepage In the \opt{amstex} option \cs{boldsymbol} is to be used for individual bold math symbols and bold Greek letters---everything in math except for letters (where you would use \cs{bold}). For example, to obtain a bold $\infty$, $+$, $\pi$, or $0$, you would use the commands \verb'\boldsymbol{\infty}', \verb'\boldsymbol{+}', \verb'\boldsymbol{\pi}', or \verb'\boldsymbol{0}'. Because they are not included in the standard distribution of \TeX{} fonts, sizes other than 10-point of bold fonts for math symbols, Greek, and math italic ({\sc CMBSY} and {\sc CMMIB}) are provided in the AMSFonts distribution (version 2.0+). Since \cs{boldsymbol} takes rather a lot of typing, you would usually put some definitions in the preamble of the form \begin{verbatim} \newcommand{\bpi}{\boldsymbol{\pi}} \newcommand{\binfty}{\boldsymbol{\infty}} \end{verbatim} for any bold symbols you're going to use frequently. For some math symbols \cs{boldsymbol} will not have any effect because bold versions of those symbols do not exist in the currently available fonts. These include extension symbols and large operator symbols from the font CMEX, as well as the AMS extra math symbols from the fonts MSAM and MSBM. ``Poor man's bold'' (\cs{pmb}) can be used for some of the things that aren't handled properly by \cs{boldsymbol}. It works by typesetting several copies of the symbol with slight offsets. With large operators and extension symbols, however, \cs{pmb} does not currently work very well because the proper spacing and treatment of limits is not preserved. To make an entire math formula bold (or as much of it as possible, depending on the available fonts), use \cs{boldmath} preceding the formula, as described in the \LaTeX{} manual. The sequence \verb'{\bf\hat{a}}' (in ordinary \LaTeX{}) or \verb'\bold{\hat{a}}' (in the \opt{amstex} option) produces a bold accent character over the {\bf a}, as you would expect. However, combinations like \verb'{\cal\hat{a}}' will not work in ordinary \LaTeX{} because the \cs{cal} font does not have its own accents. In the \opt{amstex} option the font change commands are defined in such a way that accent characters will be taken from the \cs{rm} font if they are not available in the current font (in addition to the \cs{cal} font, the \cs{Bbb} and \cs{frak} fonts don't contain accents). In ordinary \LaTeX{} uppercase Greek can be made bold by, e.g., \verb'{\bf\Gamma}'. In the \opt{amstex} option uppercase Greek can be made bold only by using \cs{boldsymbol} (in other words, uppercase Greek is handled the same as lowercase Greek). \sloppypar \section{The command \cs{newsymbol}} \label{s:newsym} The command \cs{newsymbol} is presently used only for symbols from the AMS extra symbol fonts, MSAM and MSBM. \cs{newsymbol} allows you to create a control sequence that will properly produce a symbol from the extra symbol fonts. The use of \cs{newsymbol} is explained in the {\em AMSFonts User's Guide\/}. In a \LaTeX{} document there is one main difference in usage, which is only applicable if you want to use AMSFonts without using the \opt{amstex} option: instead of using the additional setting-up commands \cs{loadmsam} and \cs{loadmsbm}, you should put ``\opt{amsfonts}'' in the documentstyle options list. Otherwise \cs{newsymbol} commands can be used exactly as shown in the {\em AMSFonts User's Guide\/}. Like \cs{newcommand}'s, they should be placed in the preamble. The \opt{amsfonts} option is geared to version 2.0 or later of the AMSFonts package. Font layout and font names for some of the fonts are different than in earlier versions. If you have an earlier version, you would need to contact the AMS for an upgrade in order to use the \opt{amsfonts} option successfully. See Appendix~\ref{a:help} for information on how to obtain the AMSFonts. \section{The \opt{amssymb} option} If you are running a version of \LaTeX{} with extra memory available for control sequence names, and you use quite a few of the extra math symbols from the AMSFonts, it may be more convenient for you to use the \opt{amssymb} documentstyle option, which will define all the symbol names (about 200), so you won't have to include an individual \cs{newsymbol} command in your document for each one. You may prefer to include it in the construction of a format file (see the installation instructions, Appendix~\ref{a:install}) to save processing time; it is a stand-alone option, so it can be included in the format file without including the \opt{amstex} option. \message{Part III} \newpage \part{Features of the \opt{amstex} option} \section{Math spacing commands} Both\indexcs{,}\indexcs{:}\indexcs{;}\indexcs{thinspace}% \indexcs{negthinspace}\indexcs{medspace}\indexcs{negmedspace}% \indexcs{thickspace}\indexcs{negthickspace} the spelled-out and abbreviated forms of these commands are robust, and in addition they can also be used outside of math. The primary math spacing commands are: \begin{center} \begin{tabular}{|l|l||l|l|} Abbrev.&Spelled out&Abbrev.&Spelled out\\ \verb'\,'&\verb'\thinspace'&\verb'\!'&\verb'\negthinspace'\\ \verb'\:'&\verb'\medspace'&&\verb'\negmedspace'\\ \verb'\;'&\verb'\thickspace'&&\verb'\negthickspace'\\ \verb'@,'&&\verb'@!'&\\ &\verb'\quad'&&\\ &\verb'\qquad'&& \end{tabular} \end{center} \verb'@,'\index{"@,@{\tt{}\atsign,}} and \verb'@!'\index{"@"!@{\tt{}\atsign"!}} give one-tenth the space of \cs{,} and {\tt\bslash !}\index{"!@{\tt\bslash "!}} respectively, for extra fine tuning where necessary. \section{Multiple integral signs} \cs{iint}, \cs{iiint}, and \cs{iiiint} give multiple integral signs with the spacing between them nicely adjusted, in both text and display style. \cs{idotsint} is an extension of the same idea that gives two integral signs with dots between them. \section{Over and under arrows} There are some additional over and under arrow operations provided in the \opt{amstex} option: {\samepage \begin{tabbing} \qquad\={\tt\bslash overleftrightarrow\qquad}\=\kill \> \cs{underleftarrow} \> \cs{underrightarrow} \+\\ \cs{overleftrightarrow} \> \cs{underleftrightarrow} \end{tabbing} } All over and under operations, including the previously available ones (\cs{over\-right\-arrow}, \cs{over\-left\-arrow}), have been modified to scale properly in subscript sizes. (After you have installed \AmS-\LaTeX{}, you can process and print the sample file \fn{testart.tex} to see examples of the arrows.) \section{Dots} In the \opt{amstex} option, ellipsis dots should almost always be typed as \cs{dots}. Placement (on the baseline or centered) is selected according to whatever follows the \cs{dots}. If the next thing is a plus sign, the dots will be centered; if it's a comma, they will be on the baseline. These default dot placements provided by the \opt{amstex} option can be changed by the documentstyle if different conventions are wanted. If the dots fall at the end of a math formula, the next thing is something like \cs{end} or \verb'\)' or \verb'$', which does not give any information about how to place the dots. Then you must help by using \cs{dotsc} for ``dots with commas,'' or \cs{dotsb} for ``dots with binary operators/relations,'' or \cs{dotsm} for ``multiplication dots,'' or \cs{dotsi} for ``dots with integrals.'' For example, the input \begin{verbatim} Then we have the series $A_1,A_2,\dotsc$, the regional sum $A_1+A_2+\dotsb$, the orthogonal product $A_1A_2\dotsm$, and the infinite integral \[\int_{A_1}\int_{A_2}\dotsi\]. \end{verbatim} will produce low dots in the first instance and centered dots in the others, with the spacing on either side of the dots nicely adjusted. \begin{quotation} Then we have the series $A_1,A_2,\ldots\,$, the regional sum $A_1+A_2+\cdots\,$, the orthogonal product $A_1A_2\cdots\,$, and the infinite integral \[\int_{A_1}\int_{A_2}\cdots\,.\] \end{quotation} Specifying dots this way, in terms of their meaning rather than in terms of their visual placement, is in keeping with the general philosophy of \LaTeX{} and makes documents more portable between places where different conventions prevail. The control sequences \cs{ldots} and \cs{cdots} are still available, however, for compatibility. \section{Accents in math} The following accent commands automatically give good positioning of double accents: \begin{verbatim} \Hat \Check \Tilde \Acute \Grave \Dot \Ddot \Breve \Bar \Vec \end{verbatim} In ordinary \LaTeX{} the second accent will usually be askew: $\hat{\hat A}$ (\cs{hat}\verb'{\hat A}'). In the \opt{amstex} option, if you type \cs{Hat}\5\verb'{\Hat A}' (using the capitalized form for both accents) the second accent will be properly positioned (see \fn{testart.tex} for examples). As explained in the {\it Joy of \TeX\/}, this double accent operation is complicated and tends to slow down the processing of a \TeX{} file. If your document contains many double accents, you can use \cs{accentedsymbol} in the preamble of your document to help speed things up. It stores the result of the double accent command in a box register, for quick retrieval. \cs{accented\-symbol} is used like \cs{newcommand}: \begin{verbatim} \accentedsymbol{\Ahathat}{\Hat{\Hat A}} \end{verbatim} Some accents have a wide form: typing \verb'$'\cs{widehat} \verb'{xy},'\cs{widetilde}\verb'{xy}$' produces $\widehat{xy},\widetilde{xy}$. Because these wide accents have a certain maximum size, extremely long expressions are better handled by a different notation: $(AmBD)^{\widehat{\hphantom{x}}}$ instead of $\widehat{AmBD}$. But getting an accent into a superscript is a little tricky (try it), so \opt{amstex} has the following control sequences to make it easier: \begin{verbatim} \sphat \spcheck \sptilde \spdot \spddot \spdddot \spbreve \end{verbatim} The example above would be typed \verb'(AmBD)\sphat'. Finally, \cs{dddot} and \cs{ddddot} are available to produce triple and quadruple dot accents in addition to the \cs{dot} and \cs{ddot} accents already available in \LaTeX{}. \section{Roots} In ordinary \LaTeX{} the placement of root indices is sometimes not so good: $\sqrt[\beta]{k}$ (\verb'\sqrt'\5\verb'[\beta]{k}'). In the \opt{amstex} option \cs{leftroot} and \cs{uproot} allow you to adjust the position of the root: \verb'\sqrt'\5\verb'[\leftroot{-2}'\5\verb'\uproot{2}'\5\verb'\beta]{k}' will move the beta up and to the right. (See the sample file \fn{testart.tex}.) The negative argument used with \cs{leftroot} moves the $\beta$ to the right. The units are a small dimension that is a useful size for such adjustments. \section{Boxed formulas} The command \cs{boxed} puts a box around its argument, like \cs{fbox} except that the contents are in math mode. \section{Extensible arrows} \verb'@>>>' and \verb'@<<<' produce arrows that extend automatically to accommodate unusually wide subscripts or superscripts. The text of a superscript is typed in between the first and second \verb'>' or \verb'<' symbols, and for a subscript, it's typed between the second and third symbols. For example, \verb'@>\xi F_k\Gamma_k\alpha>>' would have a superscript $\xi F_k\Gamma_k\alpha$ placed above the arrow. These arrows were originally developed for use in commutative diagrams but can be used elsewhere also. (See section \ref{s:commdiag} for more information about the \opt{amscd} option.) \section{\cs{overset}, \cs{underset} and \cs{sideset}} \LaTeX{} provides \cs{stackrel} for placing a superscript above a binary relation. In \opt{amstex} there are somewhat more general commands, \cs{overset} and \cs{underset}, that can be used to place one symbol above or below another symbol, whether it's a relation or something else. The input \verb'\overset{*}{X}' will place a superscript-size $*$ above the $X$; \cs{underset} performs the parallel operation that you'd expect. There's also a command called \cs{sideset}, for a rather special purpose: putting symbols at the subscript and superscript corners of a large operator symbol such as $\sum$ or $\prod$. The prime example is the case when you want to put a prime on a sum symbol. If there are no limits above or below the sum, you could just use \cs{nolimits}: here's \verb+\sum\nolimits' E_n+ in display mode: \begin{equation}\sum\nolimits' E_n.\end{equation} But if you want not only the prime but also something below or above the sum symbol, it's not so easy. If you have \begin{equation}\sum_{n\verb']'\5\verb'{...}'\5\verb'{...}' makes a fraction where the thickness of the horizontal rule is determined by the given dimension. The sample file \fn{testart.tex} shows an example using a thickness of \verb'1.5pt'. \cs{fracwithdelims}\5\\5\\5\verb'['\\verb']' is an extension of the same idea, with delimiters on either side specified by the user.% \setbox0=\hbox{\footnotesize \verb'\left'\5\verb'(\frac'\5\verb'{...}'\5\verb'{...}'\5\verb'\right)'}% \footnote{The perceptive reader may wonder why this command is necessary when you can type things like \unhbox0. The answer is that \cs{fracwithdelims} provides slightly better spacing.} For binomial expressions such as $\bigl({n\atop k}\bigr)$ \opt{amstex} has \cs{binom}, \cs{dbinom} and \cs{tbinom}. \cs{binom} is an abbreviation for \cs{fracwithdelims}\verb'()[0pt]'. After you have installed \AmS-\LaTeX{}, you can typeset and print the sample file \fn{testart.tex} to see examples of \cs{frac} and \cs{binom}. \section{Continued fractions} The continued fraction \begin{equation} \def\cfrac#1#2{{\displaystyle\strut#1\over\displaystyle#2}% \kern-\nulldelimiterspace} \cfrac{1}{\sqrt{2}+ \cfrac{1}{\sqrt{2}+ \cfrac{1}{\sqrt{2}+ \cfrac{1}{\sqrt{2}+ \cfrac{1}{\sqrt{2}+\cdots }}}}} \end{equation} can be obtained by typing {\samepage \begin{verbatim} \cfrac{1}{\sqrt{2}+ \cfrac{1}{\sqrt{2}+ \cfrac{1}{\sqrt{2}+ \cfrac{1}{\sqrt{2}+ \cfrac{1}{\sqrt{2}+\dotsb }}}}} \end{verbatim} }% End of \samepage Left or right placement of any of the numerators is accomplished by using \cs{lcfrac} or \cs{rcfrac} instead of \cs{cfrac}. \section{Smash options}\label{ss:smash} The plain \TeX{} command \cs{smash} is used to typeset a subformula and give it an effective height and depth of zero, which is sometimes useful in adjusting the subformula's position with respect to adjacent symbols. In \opt{amstex} there are optional arguments \verb't' and \verb'b' for \cs{smash}, because sometimes it is advantageous to be able to ``smash'' only the top or only the bottom of something while retaining the natural depth or height. For example, to smash only the part of a subformula that extends below the baseline, you would type \verb'\smash[b]{'\5\\5\verb'}'. \section{New \protect\LaTeX{} environments} \subsection{The ``cases'' environment} ``Cases'' constructions like the following are common in mathematics: \begin{equation} P_{r-j}= \left\{ \begin{array}{ll} 0 &\mbox{if $r-j$ is odd},\\ r!\,(-1)^{(r-j)/2} &\mbox{if $r-j$ is even}. \end{array} \right. \end{equation} and in the \opt{amstex} option there is a \env{cases} environment: \begin{verbatim} \begin{equation} P_{r-j}= \begin{cases} 0& \text{if $r-j$ is odd},\\ r!\,(-1)^{(r-j)/2}& \text{if $r-j$ is even}. \end{cases} \end{equation} \end{verbatim} Notice the use of \cs{text} and the embedded math. \subsection{Matrix}\label{ss:matrix} In the creation of the \opt{amstex} option, \AmS-\TeX{}'s \cs{matrix} could have been discarded, since \LaTeX{}'s \env{array} environment has the same function. But we wanted to keep \AmS-\TeX{}'s \cs{pmatrix}, \cs{bmatrix}, \cs{vmatrix} and \cs{Vmatrix} commands, with delimiters built in; for consistency, the basic \cs{matrix} has been retained also. It and the other matrix commands have been changed into \LaTeX{} environments that work like \env{array}, except that they don't have an argument specifying the format of the columns. Instead a default format is provided: up to 10 centered columns. The maximum number of columns is determined by the counter \verb'MaxMatrixCols', which you can change if necessary using \LaTeX{}'s \cs{setcounter} or \cs{addtocounter} commands. I.e., suppose you have a big matrix with 19 or 20 columns. Then you'd do something like this: \begin{verbatim} \begin{equation} \setcounter{MaxMatrixCols}{20} A=\begin{pmatrix} ...&...&...&...&...&...&...&...&...&...&...&...& ... \\ ... \\ ... \end{pmatrix} \end{equation} \end{verbatim} To produce a small matrix suitable for use in text, use the \env{smallmatrix} environment. \begin{verbatim} \begin{math} \bigl( \begin{smallmatrix} a&b\\ c&d \end{smallmatrix} \bigr) \end{math} \end{verbatim} \cs{hdotsfor}\verb'{'\\verb'}' produces a row of dots in a matrix spanning the given number of columns. \begin{verbatim} \begin{matrix} a&b&c&d\\ e&\hdotsfor{3} \end{matrix} \end{verbatim} would give dots spanning the last three columns in the second row. The spacing of the dots can be varied through use of a square-bracket option, for example, \verb'\hdotsfor[1.5]{3}'. The number in square brackets will be used as a multiplier; the normal value is 1. \subsection{The \env{Sb} and \env{Sp} environments} The \env{Sb} and \env{Sp} environments can be used to typeset several lines as a subscript or superscript: for example \begin{verbatim} \begin{equation} \sum\begin{Sb} 0\le i\le m\\ 0j>> T\\ @VVV @VV{\End P}V\\ (S\otimes T)/I @= (Z\otimes T)/J \end{CD} \end{verbatim} (with \cs{End} defined as \cs{operatorname}\verb'{End}'; see \S\ref{s:opname}). This would give longer horizontal arrows than in (\ref{e:cd}) and improved spacing between elements of the diagram (see \fn{testart.tex}). In the \env{CD} environment the commands \verb'@>>>', \verb'@<<<', \verb'@VVV', and \verb'@AAA' give respectively right, left, down, and up arrows.\index{"@VVV@{\tt{}\atsign VVV}}% \index{"@AAA@{\tt{}\atsign AAA}}% \index{"@<<<@{\tt{}\atsign<<<}}% \index{"@>>>@{\tt{}\atsign>>>}} For the horizontal arrows, material between the first and second \verb'>' or \verb'<' symbols will be typeset as a superscript, and material between the second and third will be typeset as a subscript. Similarly, material between the first and second or second and third {\tt A}s or {\tt V}s of vertical arrows will be typeset as left or right ``sidescripts''. \section{Alignment structures for equations} \label{s:displays} In the \opt{amstex} option several environments exist for creating multi-line displayed equations. They are similar in function to \LaTeX{}'s \env{equation} and \env{eqnarray} environments. These environments are: \begin{verbatim} align gather alignat xalignat xxalignat multline split \end{verbatim} Each environment, except for \env{split}, has both starred and unstarred forms, where the unstarred forms have automatic numbering, using \LaTeX{}'s \env{equation} counter. You can suppress the number on any particular line by putting \cs{notag} before the \cs\bslash; you can also override it with a tag of your own using \cs{tag}\verb'{'\