diff options
author | Norbert Preining <norbert@preining.info> | 2019-09-02 13:46:59 +0900 |
---|---|---|
committer | Norbert Preining <norbert@preining.info> | 2019-09-02 13:46:59 +0900 |
commit | e0c6872cf40896c7be36b11dcc744620f10adf1d (patch) | |
tree | 60335e10d2f4354b0674ec22d7b53f0f8abee672 /info/maltby-intro.tex |
Initial commit
Diffstat (limited to 'info/maltby-intro.tex')
-rw-r--r-- | info/maltby-intro.tex | 3590 |
1 files changed, 3590 insertions, 0 deletions
diff --git a/info/maltby-intro.tex b/info/maltby-intro.tex new file mode 100644 index 0000000000..d492d9f5f0 --- /dev/null +++ b/info/maltby-intro.tex @@ -0,0 +1,3590 @@ +% introduction to \TeX +% written for course at unp, november 1992 +% written in \LaTeX +% with the NFSS, but should work with normal \LaTeX + +\documentstyle[12pt]{report} + +\begin{document} +\pagenumbering{roman} + +\newcommand{\contact}{Gavin Maltby (Maths Department, UNP)} + +\newcommand{\AmSLaTeX}{{\protect\the\textfont2 A}\kern-.1667em\lower.5ex\hbox +{\protect\the\textfont2 M}\kern-.125em{\protect\the\textfont2 S}-\LaTeX} + + +\newcommand{\AmSTeX}{{\protect\the\textfont2 A}\kern-.1667em\lower.5ex\hbox +{\protect\the\textfont2 M}\kern-.125em{\protect\the\textfont2 S}-\TeX} + +\newcommand{\usertype}[1]{\vspace{3pt plus 3pt}\centerline{% +#1}\vspace{3pt plus 3pt}} + +\newcommand{\BibTeX}{{\rm B\kern-.05em{\sc i\kern-.025em b}\kern-.08em +T\kern-.1667em\lower.7ex\hbox{E}\kern-.125emX}} + +\newcommand\bs{\char '134 } % A backslash character for \tt font +\newcommand{\lb}{\char '173 } % A left brace character for \tt font +\newcommand{\rb}{\char '175 } % A right brace character for \tt font + +\newenvironment{syntax}[1]{\smallskip\hspace{1.3cm}\tt\bs#1}{\smallskip} +\newcommand{\opt}[1]{[{\em #1\/}]} +\newcommand{\man}[1]{\{{\em #1\/}\}} + +\long\def\result#1{{\smallskip\moveright0.1\textwidth\vbox{\hsize 0.8\textwidth\footnotesize#1}}\smallskip} + +%\newcommand{\nsubsubsection}[1]{\subsubsection{#1}\addcontentsline{toc} +%{subsection}{\quad\quad#1}} +\newcommand{\nsubsubsection}[1]{\subsection{#1}} + +\newenvironment{mathegs}% +{\medskip\footnotesize\begin{center}% +\renewcommand{\arraystretch}{1.3} +\begin{tabular}{ll}% +\it \makebox[190pt][l]{Type} & \it To produce\\} +{\end{tabular}\end{center}\medskip} + +\title{An introduction to \TeX\ and friends} +\author{Gavin Maltby} +\date{November 1992} + +\maketitle +\tableofcontents +\listoftables +\newpage +\pagenumbering{arabic} + +\chapter{Getting acquainted with \TeX} +\TeX\ is well known to be {\em the\/} typesetting package, +and a vast cult of \TeX\ lovers has evolved. But to the beginning +\TeX\ user, or to someone wondering if they should bother changing +to \TeX, it is often not clear what all the fuss is about. After all, +are not both WordPerfect and Ventura Publisher capable of +high quality output? Newcomers have often already seen what \TeX\ +is capable of (many books, journals, letters are now prepared with \TeX) +and so expect to find a tremendously powerful and friendly package. +In fact they {\em do}, but that fact is well hidden in one's initial +\TeX\ experiences. In this chapter we describe a little of what +makes \TeX\ great, and why other packages cannot even begin +to compete. Be warned that a little patience is required---\TeX's +virtues are rather subtle to begin with. But when the penny drops, +you will wonder how you ever put up with anything different. + +\section{The spirit of \TeX} +In order to really appreciate \TeX\ one needs to get a feel +for what I call the ``spirit'' of \TeX. When \TeX\ +appears to be making me work overtime to achieve something +that I think ought to be perfectly straightforward, consultation +with the \TeX\ spirit shows me the error of my ways. + +\subsection{\TeX\ is a typesetter, not a word-processor} +% we chat about the pros and cons of this; +% talk about compilation, previewing, printing +% start to convince of the essential power of this +% a few examples +% macro packages & style files +\TeX\ was designed with no limiting application in mind. +It was intended to be able to prepare practically any document---from +a single page all-text letter to a full blown book with huge numbers +of formulae, tables, figures etc. The size and the complexity of a +{\TeX}able document is limited only by hardware considerations. +Furthermore, \TeX\ seeks to achieve all this whilst setting +typesetting standards of the highest order for itself. The expertise +of generations of professional printers has been captured in +\TeX, and it has been taught all the tricks of the trade. + +Historically, printers prepared a document by placing metal +characters in a large tray and arranging and binding them +to form a page. This was very precisely done, but the ultimate +precision was limited because of the mechanical nature of +things and by time considerations. \TeX\ prepares a page +in an analogous manner (putting your characters and +formulae into ``boxes'' which are then ``glued'' together +to form the page), but has the advantage of enormous +precision because placement calculations are performed +by computer. Indeed, \TeX's internal unit (the ``scaled +point'') is about one-hundredth of the wavelength of +natural light! + +``But conventional word processors run on computers , too'', +you object. Yes, but their fundamental limitation is that +they try to ``keep up'' with you and ``typeset'' your document +as you type. This means that it can only make decisions at +a local level (eg, it decides where to break a line just as you +type the end of the line). \TeX's secret is that it waits until +you have typed the {\em whole\/} document before it typesets +a single thing! This means that \TeX\ can make decisions of +a global nature in order to optimise the aesthetic appeal of +your document. It has been taught what looks good and what +looks bad (having been given a measure of the ``badness'' of +various possibilities) and makes choices for your document that +are designed to make it ``minimally bad''. + +But \TeX's virtues run much deeper than that, which is just as well +because it is possible to get satisfactory, though imperfect, results from +some word processors. One of \TeX's strongest points is its ability +to typeset complicated formulae with ease. Not only does \TeX\ +make hundreds of special symbols easily accessible, it will lay them +out for you in your formulae. It has been taught all the spacing, +size, font, \ldots conventions that printers have decided look +best in typeset formulae. Although, of course, it doesn't understand +any mathematics it knows the grammar of mathematics---it +recognises binary relations, binary operators, unary operators, etc.\ +and has been taught how these parts should be set. It is consequently +rather difficult to get an equation to look bad in \TeX. + +Another advantage of compiling a document after it is typed is that +cross-referencing can be done. You can label and refer back to +chapters, sections, tables etc.\ by {\em name\/} rather than absolute +number, and \TeX\ will number and cross-reference these for you. +Similarly, it will compile a table of contents, glossary, index and bibliography +for you. + +Essential to the spirit of \TeX\ is that {\em it formats the document whilst +you just take care of the content}, making for increased productivity. +The cross-referencing just mentioned is just part of this. Many more +labour-saving mechanisms are provided for through {\em style files}. +These are generic descriptions of classes of documents, teaching \TeX\ +just how each class likes to be formatted. This is taught in terms +of font preferences, default page sizes, placement of title, author, date, +etc. For instance, a {\tt paper} style file could teach \TeX\ that +when typesetting a theorem it should embolden the part that states +the theorem number and typeset the text of the theorem statement +in slanted Roman typeface (as in many journals). The typist simply +provides and indication that a theorem is being stated, and then +types the text of the theorem {\em without\/} bothering to choose +any fonts or do any formatting---all that is done by the style +file. Style files exist for all manner of document---letters, +articles, papers, books, proceedings, review articles, and so on. + +In addition to style files, there are {\em macro packages}. A +{\em macro\/} is just a definition of a new \TeX\ command +in terms of existing ones. Don't think small when you think of +macros! When typing a document that has a lot of repetition +in it, say the same expression is used again and again in different +different equations, you can define a macro in your document +to abbreviate that expression. But macros can teach \TeX\ +how to typeset all sorts of complicated structures, not just +parts of an equation. Many macro packages (files that are +just collections of definitions) have been written to teach \TeX\ +all sorts of applications. There are specialist maths packages +(\AmSTeX, \AmSLaTeX), general purpose packages (\LaTeX), +packages for setting tree diagrams, Feynmann diagrams, +languages like Chinese, Arabic and Ancient Greek, +orchestral scores, and many, many more. All these are +freely available, a spin-off of the giant \TeX\ cult. + +Another facet of the design of \TeX\ allows it to use +practically {\em any\/} output device. In fact, \TeX\ +doesn't talk to any printers, screens, phototypesetters +at all! Instead, when a document is compiled a +{\em device independent\/} ({\tt .dvi}) is produced---% +\TeX\ does not compile with any particular output +device in mind. Printer drivers are then invoked on +this {\tt .dvi} file and, in consultation with the font +data for that printer, produce output suitable for the +particular device. You can choose an HP Laserjet +driver, or an Apple LaserWriter driver, or a dot matrix +driver etc. All use the same {\tt .dvi} file as input (and +remember the material in there is set to enormous +accuracy) and attempt to image that file on the particular +device as faithfully as possible. If you are using a top of the +line laser printer or phototypesetter, then \TeX's +massive internal precision will not be wasted. Alternatively, +a dot matrix printer +will give a coarse approximation of the ideal image that is +suitable only for proof-reading. In addition to portability, +these {\tt .dvi} files help ensure that there are very few printing +surprises when you move from one device to another: how many times +has your favourite word-processor made you reformat a document when +you wish to change printers? + +There are many other motivations one could cite for the +superiority of \TeX. But it is time that we started to get +our hands dirty. One last comment: \TeX\ was not designed +to supplant secretaries and professional printers---it was designed +to aid them in their work and, in the words of the \TeX\ designer +Donald Knuth, allow them to ``go forward and create masterpieces +of the publishing art''.% or was that typesetting art? +It also allows those who generate the material +to be typeset---mathematicians, physicists, computer scientists, etc---to +prepare their own documents in a language that is intimately linked +to the language we use for writing such material. + +The novice reader will still have no idea of what a \TeX\ source file +looks like. Indeed, why do we keep referring to it as a {\em source +file}? The fact of the matter is that \TeX\ is essentially a +{\em programming language}. Just as in any compiled language +(e.g.,\ Pascal, C) one prepares a source file and submits it to the +compiler which attempts to produce an object file ({\tt .dvi} file +in the \TeX\ case). To learn \TeX\ is to learn the command syntax +of the commands that can be used in the source file. + +\subsection{Typical \TeX\ interfaces} +% multicompter setting +% device independence +% command line level and script files +% \TeX\ shells +\TeX\ was designed to run on a multitude of computers. It is therefore +the case that the documentation for \TeX\ and its ``friends'' +\LaTeX, \AmSTeX, etc.\ is not computer specific. Only +command syntax is described---i.e., the content of your source file---but +few details of how to get from there to a printout are given. Those details +are left to site-specific documents. + +The average user loses little in using \TeX\ on, say, a PC rather than +on a bigger machine. Indeed, compilation times on the +new PCs begin to rival those on a Sun Sparc +Station 2 (no slouch). Running on top of DOS can cause memory problems +when very large documents are being prepared. That aside, the quality +of the document is not affected because of the careful design of \TeX---% +whether you work on a a machine with massive floating point precision or +a modest XT the {\tt .dvi} files produced on compilation will be +identical; and when those files are submitted to printer equivalent +printer drivers (say for an HP LaserJet III attached to a Sun in one case +and a PC in the other) the output will be identical because the font +information they draw on is identical. + +By the nature of \TeX\ most time is spent editing the source document +(before submitting it for compilation). No special interface is necessary +here, you just use your favourite text editor (perhaps customising it +to enhance {\TeX}nical typing. Thus \TeX\ user interfaces are usually +small and simple, often even missing. One frequently uses \TeX\ at +command line level, just running the editor, compiler etc.\ as you need them. +Sometimes a {\TeX}shell program is present, which runs these for you +when you choose various menu options. + +Whatever the interface, there are just a few basic steps to preparing +a document: +\begin{enumerate} +\item Choose a document style to base your document on (e.g., letter, article). +\item Glance through the material you have to type, and decide what + definitions might be made to save you a lot of time. Also, decide on + the overall structure of the prospective document (e.g., will the largest + sectional unit be a chapter or a part?). If you are going to compose as + you type, then pause a moment to think ahead and plan the structure + of your document. The importance of this step cannot be overstressed, + for it makes clear in {\em your\/} mind what you want from \TeX. +\item Prepare your input file, specifying only the content and the logical + structure (parts, sections, theorems,...) thereof and forgetting about formatting details. +\item Submit your input, or source, file to the \TeX\ compiler for compilation + of a {\tt .dvi} file. +\item If the compiler finds anything in your source file strongly objectionable, + say incorrect command syntax, then return to editing. +\item Run a {\em previewer\/} to preview your compiled document on the + screen. Resolution is only limited by your screen, and can be very + good indeed on some modern monitors. +\item Go back to editing your document until glaring errors have been taken + care of. +\item Make a printout of your compiled document, and check for those errors that + you failed to notice on the screen. +\end{enumerate} +Performing these steps may be effected through typing at the system prompt +(barebones technique) or through choosing menu options in a {\TeX}shell program. +The latter will probably provide some conveniences to make your life easier. + +If you think this sounds like a lot of work, it is time that you consult with the +\TeX\ spirit! Sure your first couple of tries may be hesitant, but before long +you'll find that you can take {\em less\/} time to prepare a document on \TeX\ +than on any other package. + + +\chapter{Getting started with \LaTeX} +\section{Why start with \LaTeX?} +To answer this question we must say a little more about +some of the macro packages we mentioned earlier. + +The \TeX\ typesetting system was designed by the eminent Stanford +computer scientist Donald Knuth, on commission from the American +Mathematical Society. It was designed with enormous care, to be +ultimately powerful and maximally flexible. The enormous success +of Knuth's design is apparent from the vast number of diverse applications +\TeX\ has found. In reading the following you must keep one thing clearly +in mind: {\em there is only \TeX\ language, and all the other packages whose +names end in the suffix \mbox{-\TeX} simply harness it's power via a whole +lot of complicated macro definitions}. + +\TeX\ proper is a collection of around 300 so called {\em primitive\/} +typesetting commands. These work at the very lowest level, affording +enormous power. But to make this raw power manageable, some macros +must be defined to tame raw \TeX\ somewhat. The standard set +of macros is called Plain \TeX, and consists of about 600 macro definitions. +It is clear that these definitions must be made in terms of \TeX\ primitives, +or in terms of previously made definitions. Plain \TeX, however, is still +no place for the timid. A strong working knowledge of \TeX\ is still required +to understand the ins and outs of Plain \TeX. + +In the few years after the initial \TeX\ release (1982), the macro packages +\AmSTeX\ and \LaTeX\ were born. \AmSTeX\ was written by Michael +Spivak, also on commission from the AMS. This package was designed to +facilitate the preparation of the numerous books, journals, and review +indices that fall under the auspices of the AMS and its affiliates. +Married to the macro package was a style file---the AMS preprint style. +This was distributed along with the macro package, so that authors +submitting to journals could use it in the preparation of their articles. +The given style was based on the style used by the {\em Journal of the +American Mathematical Society}, i.e., it conformed to their page sizes +and typographical conventions. This meant that people around the world +produced papers that were all based on the same style. The clever part +is this: when a source file is submitted to a journal {\em other\/} than +the {\em Journal of the AMS}, the journal staff simply substitute their +style file for the AMS preprint style and the paper will appear completely +different {\em with no other changes to the source code\/}! To create +their style file, a journal just needed to tweak the standard AMS prepint +style: for instance, the original preprint style places author addresses +at the very end of a paper; If a journal wishes this to appear on the first +page then they just modify their in-house version of the style file, and +the change will be effected without having to change the file submitted +by the author. + +\LaTeX\ was written for more general usage. It lacks some of the +mathematical finesse inherited by \AmSTeX\ from the vast experience of the AMS +technical staff, but more than makes up for this in its ability to enhance +the typesetting of letters, books, poetry, etc. \LaTeX\ also scores high +points for its enhanced command syntax. + +With \AmSTeX\ and \LaTeX\ being released at around the same time (1984--1985), +there were born many \AmSTeX\ literate but \LaTeX\ illiterate users, +and conversely. \LaTeX\ was easier to learn because of its more friendly +syntax, and also provided powerful cross-referencing commands that +\AmSTeX\ did not. So the AMS commissioned another project to +furnish \LaTeX\ users with the additional power of \AmSTeX\ +while not compromising the \LaTeX\ command syntax or +cross-referencing commands. This resulted in the \AmSLaTeX\ +macro package and associated style file for submission to journals. + +{\em That\/} is why we will kick off our \TeX\ careers with \LaTeX! +It is easier to learn and provides many conveniences, and the user +who requires additional mathematical typesetting prowess can +easily move on to \AmSLaTeX. Much of what we say will be true +for \TeX\ itself, but we shall regard \LaTeX\ as the lowest +common-denominator. By far the majority of \LaTeX\ and +\AmSLaTeX\ users will never have to learn ``raw'' \TeX, for they will +be shielded from direct exposure by the numerous powerful macro packages. +In the rare case that something way out of the ordinary is required, +the local \TeX\ guru can be consulted. + +\section{\LaTeX\ formats, and we compose} +% free form nature of input file +The {\em free form nature\/} of the input file is essential to the +spirit of \TeX. As we type, we do not concern ourselves with linebreaks +and pagebreaks so much as the content of what we are typing. In fact, +we'll see that \TeX\ will choose nice line breaks even for bizarre looking +input. This is just part of the concept of only having to describe the +{\em logical\/} structure of the document to \LaTeX, and not worry +about nuisance-value formatting details. We inform \LaTeX\ +of the logical structure of our document by telling it when to begin +a new paragraph, subsection, section, chapter, theorem, definition, +remark, poem, list etc. When typing a particular element of the logical +structure, we need pay little attention to how we lay our source file out. + +A consequence of this is that we have to go to a bit of effort to mess things +up. Starting a new line, for instance, entails more than just pressing +Return because \LaTeX\ will just regard the next word you type +as exactly that---the next word in the paragraph. You have to specifically +ask for a line to be terminated. Things like this may seem to be a bit of a +nuisance, but it is a small price to pay for the automatic formatting that +necessitated it. Further, such small inconveniences have been localised +to rare events. I have, for instance, not once forced a new line up until +this point in the present document. + +\section{Document styles} +We have explained the concept of a document style during our discussion +of the virtues of \TeX\ and the discussion of \AmSTeX. It remains to +name a few, and indicate where they would be used. One {\em always\/} +has to choose a document style when preparing a document with \LaTeX. + +The basic document styles in \LaTeX\ are {\tt letter}, {\tt article}, {\tt report}, +and {\tt book}. Many more are available, but these few cover the majority +of straightforward applications. This is because styles are not rigid---you +can impose your own parameter choices if you want. So one chooses the +style that most closely approximates the document you have in mind, and +performs some minor tweaks here and there. The {\tt article} style is +used for documents that are to have the appearance of a journal or +magazine article. The {\tt report} style is usually used +for larger documents than the {\tt article} style. These styles really only +differ in their choice of default page size, font, placement of title and author, +sectional units, etc.\ and on how they format certain \LaTeX\ constructs. +You use the same \LaTeX\ commands in each. Since the +examples here will be small, we will choose to use the {\tt article} document +style. + +There are a number of possible options with each document style. The syntax +for choosing a document style follows. Don't worry if this leaves you with no idea +of how to choose a document style, for we will soon be seeing some examples. Also, +remember that an argument in square brackets is optional, and can omitted +altogether (including the brackets). +\begin{syntax}{documentstyle} +\opt{options}\man{style} +\end{syntax} +where {\em style\/} is the main document style (eg {\tt report}) +and the optional argument {\em options\/} is a list of document style options chosen +from the following list: +\begin{itemize} +\item[\tt 11pt] chooses 11-point as the default font size for the document, instead + of the default 10-point. +\item[\tt 12pt] chooses 12-point as the default font size. +\item[\tt twoside] formats output as left and right pages, as in a book. +\item[\tt twocolumn] produces two-column magazine like output. +\item[\tt titlepage] applies to the {\tt article} style only, causing the + title and abstract to appear on a page each. +\end{itemize} + +In fact there are many, many more document style options but we +won't mention any more here. + +\section{Preparing a non-mathematical document} +We assume that you have read the local guides to \TeX\ at your site and have +decided which system environment you want to work in. There you have been +shown how to perform the steps required to produce a printed document from a +\LaTeX\ source file. + +\subsection{Sentences and paragraphs} +Let's create our very first \LaTeX\ document, which will consist +of just a few paragraphs. + +As mentioned above, paragraph input is free-form. You type the words +and separate them by spaces so that \LaTeX\ can distinguish between +words. For these purposes, pressing Return is equivalent to inserting +a space---it does not indicate the end of a line, but the end of a word. +You tell \LaTeX\ that a sentence has ended by typing a period followed +by a space. \LaTeX\ ignores extra spaces; typing three or three thousand will +get you no more space between the words that these spaces separate than +typing just one space. Finally, you tell \LaTeX\ that a paragraph has +ended by leaving one or more blank lines. +In summary: \LaTeX\ concerns itself only with the +logical concepts end-of-word, end-of-sentence, and end-of-paragraph. +Sounds complicated? An example should clear things up: + +\moveright0.1\textwidth\vbox{% +\footnotesize\begin{verbatim} +\documentstyle{article} +\begin{document} +Words within a sentence are ended by spaces. One space +between words is equivalent to any number. We are only +interested in separating one word from the +next, not in formatting the space between them. +For these purposes, pressing Return +at the end of a line +and starting a new word on the next line +just serves to separate +words, not to cut a line short. +The end of a sentence is indicated by a period +followed by one or more spaces. + +The end of a paragraph is indicated by leaving a blank line. +All this +means that we can type without too much regard for layout, and +the typesetter will sort things out for us. +\end{document} +\end{verbatim} +} +\noindent produces the result + +\result{% +Words within a sentence are ended by spaces. One space +between words is equivalent to any number. We are only +interested in separating one word from the +next, not in formatting the space between them. +For these purposes, pressing Return +at the end of a line +and starting a new word on the next line +just serves to separate +words, not to cut a line short. +The end of a sentence is indicated by a period +followed by one or more spaces. + +The end of a paragraph is indicated by leaving a blank line. All this +means that we can type without too much regard for layout, and +the typesetter will sort things out for us. +} + +Perhaps you would like to try running \LaTeX\ on the above input. +Consult your local guide for details. + +Note that we have learned more than just how \LaTeX\ recognises words, +sentences and paragraphs. We've also seen how to specify our choice +of document style and how to tell \LaTeX\ where our document begins +and ends. Any material that is to be printed must lie somewhere between +the declaration of \verb@\begin{document}@ and that of \verb@\end{document}@. +Definitions that are to apply to the entire document can be made before +the declaration of the document beginning. The specification of +document style must precede all other material. + +In future examples we won't explicitly display the commands that +select document style and delimit the start and end of the document. +But if you wish to try any of the examples, don't forget to include those +commands. The {\tt article} document style will do for most of our examples. +Of course, the preceding example looks not at all like an article because +it is so short and because we specified no title or author information. + +Most of what you need to know to type regular text is contained in the +example above. When you consider that by far the majority of any document +consists of straight text, it is obvious that \LaTeX\ makes this fabulously straightforward. +\LaTeX\ will do all the routine work of formatting, and we simply get on with the +business of composing. + +\LaTeX\ does more than simply choose pleasing line breaks and +provide natural spacing when setting a paragraph. Remember we +said that \TeX\ has inherited the knowledge of generations of +professional printers---well part of that knowledge includes +being on the look-out for {\em ligatures}. These are combinations +of letters within words which should be typeset as a single special +symbol because they will ``clash'' with each if this is not done. +Have a look at these words +\begin{center} +flight, flagstaff, chaff, fixation +\end{center} +and compare them with these +\begin{center} +f{l}ight, f{l}agstaf{f}, chaf{f}, f{i}xation +\end{center} +See the difference? In the first set I let \LaTeX\ run as it usually does. +In the second I overruled it somewhat, and stopped it from creating +ligatures. Notice how the `fl', `ff', and `fi' combinations are different +in the two sets---in the former they form a single symbol (a ligature) +and in the latter they are comprised of two disjoint symbols. There +are other combinations that yields ligatures, but we don't have to bother +remembering any of them because \LaTeX\ will take care of these, too. + +Notice, too, that \LaTeX\ has been taught how to hyphenate the +majority of words. It will hyphenate a word if it feels that the overall +quality of the paragraph will be improved. For long words it has been +taught several potential hyphenation positions. + +\LaTeX\ also goes to a lot of trouble to try to choose pleasing page +breaks. It avoids ``widows'', which are single lines of a paragraph +occurring by themselves at either the bottom of a page (where +it would have to be the first line of a paragraph) or at the top +of a page (where it would have to be the last). It also +``vertically justifies'' your page so that all pages have exactly +the same height, no matter what appears on them. As testimony +to the success of the pagebreaking algorithm, I have (to +this point) not once chosen a page break in this document. + +\subsection{Punctuation} +Typists have a convention whereby a single space is left after a +mid-sentence comma, and two spaces are left after a sentence-ending +period. How do we enforce this if \LaTeX\ treats a string of spaces just like +a single one? The answer, unsurprisingly, is that we {\em don't}. + +\moveright0.1\textwidth\vbox{% +\footnotesize\begin{verbatim} +To have a comma followed by the appropriate space, we simply +type a comma follows by at least one space. To end a sentence +we type a period with at least one following space. No space will +be inserted if we type a comma or period followed straight away +by something other than a space, because there are times when +we won't require any space, i.e., we do what comes narurally. +\end{verbatim} +} +\noindent will produce + +\result{% +To have a comma followed by the appropriate space, we simply +type a comma follows by at least one space. To end a sentence +we type a period with at least one following space. No space will +be inserted if we type a comma or period followed straight away +by something other than a space, because there are times when +we won't require any space, i.e., we do what comes naturally. +} + +\LaTeX\ will produce suitable space after commas, periods, +semi-colons and colons, exclamation marks, question marks etc.\ +if they are followed by a space. +In stretching a line to justify to the +right margin, it also knows that space after a punctuation +character should be more ``stretchable'' than normal inter-word +space and that space after a sentence-ending period should be stretched +more than space after a mid-sentence comma. \TeX\ knows the nature of +punctuation if you stick to the simple rules outlined here. As we've already +said, those rules tell \LaTeX\ how to distinguish consecutive words, +sentences, phrases, etc. + +Actually, there is more to ending sentences than mentioned above. +Since \LaTeX\ cannot speak English, it works on the assumption +that {\em a period followed by a space ends a sentence unless the period +follows a capital +letter}. This works most of the time, but can fail. To get a normal +inter-word space after a period that doesn't end a sentence, +follow the period by a {\em control space}---a \verb*@\ @ +(a {\tt \bs} character followed by a space or return). Very +rarely, you will have to force a sentence to end after a +period that follows a capital letter (remember that \LaTeX\ +assumes this doesn't end a sentence). This is done by preceding +the period with a \verb!\@! command (you can guess from the odd +syntax that this is rarely needed). + +It's time we saw some examples of this. After all, this is our first +experience of {\em control symbols} (don't worry, there are many +more to come). + +\moveright0.1\textwidth\vbox{% +\footnotesize\begin{verbatim} +We must be careful not to confuse intra-sentence periods +with periods that end a sentence, i.e.\ we must remember +that our task is to describe the sentence structure. Periods +that the typesetter requires a little help with typically result +from abbreviations, as in etc.\ and others. We have to work +somewhat harder to break a sentence after a capital letter, +but that shouldn't bother us to much if we keep up our intake +of vitamin E\@. All this goes for other sentence-ending +punctuation characters, so I could have said vitamin E\@! +Fortunately, these are rare occurrences. +\end{verbatim} +} +\noindent results in + +\result{% +We must be careful not to confuse intra-sentence periods +with periods that end a sentence, i.e.\ we must remember +that our task is to describe the sentence structure. Periods +that the typesetter requires a little help with typically result +from abbreviations, as in etc.\ and others. We have to work +somewhat harder to break a sentence after a capital letter, +but that shouldn't bother us to much if we keep up our intake +of vitamin E\@. All this goes for other sentence-ending +punctuation characters, so I could have said vitamin E\@! +Fortunately, these are rare occurrences. +} + +Quotation marks is another area where \LaTeX\ will do some +work for us. Keyboards have the characters \verb@`@, \verb@`@, and \verb@"@ but we +want to to have access to each of `, ', ``, and ''. So we proceed like this: + +\moveright0.1\textwidth\vbox{% +\footnotesize\begin{verbatim} +`\LaTeX' is no conventional word-processor, and +to to get quotes, like ``this'', we type repeated +` and ' characters. Note that modern +convention is that ``punctuation comes after +the closing quote character''. +\end{verbatim} +} +\noindent which gives just what we want + +\result{% +`\LaTeX' is no conventional word-processor, and +to to get quotes, like ``this'', we type repeated +{\tt `} and {\tt '} characters. Note that modern +convention is that ``punctuation comes after +the closing quote character''. +} + +Very rarely, you have three quote characters together. +Merely typing those three quote characters one-after-the-other +is ambiguous---how should they be grouped? You tell +\LaTeX\ how you want them grouped by inserting a +very small space called \verb@\,@. + +\moveright0.1\textwidth\vbox{% +\footnotesize\begin{verbatim} +``\,`Green ham' or `Eggs?'\,'' is the question. +\end{verbatim} +} +\noindent gives the desired result + +\result{% +``\,`Green ham' or `Eggs?'\,'' is the question. +} + +Since we have a typesetter at our disposal, we might as +well use the correct dashes where we need them. There +are three types of dash: the hyphen, the endash, and +the emdash. A minus sign is not a dash. + +Hyphens are typed as you'd hope, just by typing a \verb@-@ +at the point in the word that you want a hyphen. Don't +forget that \LaTeX\ takes care of hyphenation that is +required to produce pretty linebreaks. You only type +a hyphen when you explicitly want one to appear, +as in a combination like ``inter-college''. + +An endash is the correct dash to use in indicating +number ranges, as in ``questions~1--3''. To +specify an endash you type two consecutive +dashes on the keyboard, as in \verb@1--3@. + +An emdash is a punctuation dash, used at the end +of a sentence---I tend to use them too much. +To specify an emdash you type three consecutive +dashes on the keyboard, as in ``\ldots\verb@a sentence---I tend to@\ldots''. + +\moveright0.1\textwidth\vbox{% +\footnotesize\begin{verbatim} +Theorems 1--3 concern the semi-completeness +of our new construct---in the case that it +satisfies the first axiom. +\end{verbatim} +} +\noindent yields + +\result{% +Theorems 1--3 concern the semi-completeness +of our new construct---in the case that it +satisfies the first axiom. +} + +\subsection{Ties} +When you always remember to use {\em ties\/}, you know +that you are becoming {\TeX}nically inclined. Ties are +used to prevent \LaTeX\ from breaking lines at +certain places. \LaTeX\ will always choose line breaks +that result in the most aesthetically pleasing paragraph +as judged by its stringent rules. But because \LaTeX\ +does not actually understand the material it is setting +so beautifully, it can make some poor choices. + +A {\em tie\/} is the character \verb@~@. It behaves as a +normal interword space in all respects {\em except\/} +that the line-breaking algorithm will never break a +line at that point. Thus + +\moveright0.1\textwidth\vbox{% +\footnotesize\begin{verbatim} +Dr. Seuss should be typed as Dr.~Seuss +\end{verbatim} +} +\unskip\noindent for this makes sure that \LaTeX\ will never +leave the `Dr' at the end of one line and put the `Seuss' +at the beginning of the next. + +One should try to get in to the habit of typing ties first-time, +not after waiting to see if \LaTeX\ will make a poor choice This will allow +you to make all sorts of changes to your text without ever +having to go back and insert a tie at a point that has migrated +to the end of a line from the middle of a line as a result +of those changes. Remember, of course, that the line-breaks + +Here are some more examples of places where you should remember to +place ties. + +\moveright0.1\textwidth\vbox{% +\footnotesize\tt\begin{tabbing} +Lemmas 3 and\verb!~!4\quad \= \kill +Chapter\verb!~!10 \> Donald\verb!~!E. Knuth\\ +Appendix\verb!~!C \> width\verb!~!2\\ +Figure\verb!~!1 \> function\verb!~!f\\ +Theorem\verb!~!2 \> 1,\verb!~!2, or\verb!~!3\\ +Lemmas 3 and\verb!~!4 \> equals\verb!~!5\\ +\end{tabbing} +} + +\subsection{Specially reserved symbols}\label{sec:reserved} +In the sequel we will see that the the ten characters + +\moveright0.1\textwidth\hbox{\verb!# $ % & ~ _ ^ \ { }!} + +\noindent are reserved for special use. Indeed, we have seen already +that {\tt\bs} and \verb@~@ are non-printing characters +that perform special services (and we'll have a lot more to +say about the use of {\tt\bs}). + +But what if we need one of these special symbols to appear +in our document? The answer for seven of the symbols +is to precede them by a {\tt\bs} character, so forming +another {\em control symbol\/} (remember that +{\tt\bs} followed by a space was also a control symbol). + +\moveright0.1\textwidth\vbox{% +\footnotesize\begin{verbatim} +It is not 100\% straightforward to typeset the +characters \$ \& \% \_ \{ \}, but given the +enormous convenience of the use they are normally +reserved for this is a small price to pay. +\end{verbatim} +} +\noindent produces + +\result{% +It is not 100\% straightforward to typeset the +characters \$ \& \% \_ \{ \}, but given the +enormous convenience of the use they are normally +reserved for this is a small price to pay. +} + +\subsection{So what are control symbols and words?} +In typing a document, we can think of ourselves as +being in one of two distinct modes. We are either +typing {\em literal text\/} (which will just be set into neat +paragraphs for us) or we are typing text that will +be {\em interpreted\/} by \LaTeX\ as an instruction +to insert a special symbol or to perform some action. +Thus we are either typing material that will go +straight into the document (with some beautification), +or we are giving commands to \LaTeX. + +Some commands are implicit, in that we don't have to +do anything much extra. For instance, we command +\LaTeX\ to end the present sentence by typing a +period (that doesn't follow a capital letter). These are +no so much commands as part of having to describe +the logical structure of a document. + +A {\em control word\/} is something of the form +\verb@\commandname@, where the command name +is a word made up only of the letters a to~z and A to~Z. A +{\em control symbol\/} consists of a {\tt\bs} +followed by single symbol that is not a letter. + +Here are some examples: +\begin{itemize} +\item we have met the control space symbol \verb*@\ @ before, +\item the commands to set symbols like \% and \$ are control symbols +\item \verb!\@! was a control symbol that told told \LaTeX\ that + the very next period did really end the sentence, +\item \verb@\LaTeX@ is a control word that tell \LaTeX\ to insert + its own name at the current point, +\item \verb@\clubsuit@ instructs that a $\clubsuit$ be inserted, +\item \verb@\pounds@ inserts a \pounds\ symbol, +\item \verb@\S@ inserts a \P\ symbol, +\item \verb@\em@ makes the ensuing text {\em be emphasised}, +\end{itemize} + +These examples show that control sequences can be used to +access symbols not available from the keyboard, +do some typesetting tricks like setting the word +\LaTeX\ the way it does, and change the appearance of +whole chunks of text as with \verb@\em@. We'll be meeting +many more of these type of control sequences. + +Another enormously powerful class of control sequences is +those that accept {\em arguments}. They tell \LaTeX\ +to take the parts of text you supply and do something +with them---like make a fraction by setting the first +argument over the second and drawing a line of the +appropriate length between them. These are part of +what makes \LaTeX\ so powerful, and here are some +examples. + +\begin{itemize} +\item \verb@\chapter{The beginning}@ causes \LaTeX\ to + start a new chapter with name ``The Beginning'', number + it in sequence, typeset the chapter heading in a suitable + font, and make an entry in the table of contents, +\item \verb@\overline{words}@ causes $\overline{\mbox{words}}$ to + be overlined, +\item \verb@\frac{a+b}{c+d}@ sets the given two argument as + a fraction, doing most of the dirty work for us: $\frac{a+b}{c+d}$, +\item \verb@\sqrt[5]{a+b}@ typesets the fifth-root of $a+b$, + like this: $\sqrt[5]{a+b}$. The {\tt 5} is in square brackets + instead of braces because it is an optional argument and + could be ommited all together (giving the default of square root), +\end{itemize} + +Mandatory arguments are given enclosed by braces, and +optional arguments enclosed by square brackets. Each +command knows how many arguments to expect, so +you don't have to provide any indication of that. + +We have actually jumped the gun a little. The above examples +include examples of {\em mathematical\/} typesetting, and we +haven't yet seen how to tell \LaTeX\ that it is typesetting +maths as opposed to some other random string of symbols +that it doesn't understand either. We'll come to mathematical +typesetting in good time. + +We need to dwell on a {\TeX}nicality for a moment. How does +\LaTeX\ know where the name of a control sequence ends? +Will it accept both \verb@\pounds3@ and \verb@\pounds 3@ +in order to set \pounds3, and will \verb@\emWalrus@ +and \verb@\em Walrus@ both be acceptable in order to +get {\em Walrus\/}? The answer is easy when you remember +that a control word consists only of alphabetic characters, +and a control symbol consists of exactly one nonalphabetic +character. + +So to determine which control sequence you typed, +\LaTeX\ does the following: +\begin{enumerate} +\item when a {\tt\bs} character is encountered, \LaTeX\ knows + that either a control symbol or a control word will follow. +\item If the {\tt\bs} is followed by a nonalphabetic character, + then \LaTeX\ knows that it is a control {\em symbol\/} + that you have typed. It then recognises which one it was, + typesets it, and goes on to read the character which follows + the symbol you typed. +\item If the {\tt\bs} is followed by an alphabetic character, then + \LaTeX\ knows that it is a control word that you have typed. + But it has to work out where the name of the control word ends + and where the ensuing text takes over again. Since only alphabetic + characters are allowed, \LaTeX\ reads everything up to + just before that first + nonalphabetic character as the control sequence name. Since + it is common to delimit the end of a control word by a space, + \LaTeX\ will {\em ignore\/} any space that follows a control + word, since you want that space treated as end-of-control-word + space rather than interword space. +\end{enumerate} + +This has one important consequence: The character in the input +file immediately after a control symbol will be ``seen'' by \LaTeX, +but {\em any space following a control word will be +discarded and never processed.} This does not affect one much if you adopt +the convention of always typing a space after a control sequence name. + +There is a rare circumstance where this necessitates a little extra work +and thought, which we illustrate by example: + +\moveright0.1\textwidth\vbox{% +\footnotesize\begin{verbatim} +If we type a control word like \LaTeX in the running text +then we must be cautious, because the string of spaces that +come after it will be discarded by the \LaTeX\ system. +\end{verbatim} +} +\noindent which produces the output + +\result{% +If we type a control word like \LaTeX in the running text +then we must be cautious, because the string of spaces that +come after it will be discarded by the \LaTeX\ system. +} + +\subsection{Commands to change appearance}\label{sec:groups} +We've seen a little of how to access various symbols using +control sequences and we mentioned the \verb@\em@ +command to emphasise text, but we didn't see how to use +them. We look here at commands that change the appearance +of the text. + +Each of the control words here is a directive rather +than a control sequence that accepts an argument. +This is because potential arguments consisting +of text that wants to be emboldened or emphasised +are very large, and it would be a nuisance to have +to enclose such an argument in argument-enclosing +braces. + +To delimit the area of text over which one of these commands +has effect (its {\em scope}) we make that text into what +is called a {\em group}. Groups are used extensively in +\LaTeX\ to keep effects local to an area, rather than +affecting the whole document. Apart from enhancing +usability, this also in a sense protects distinct parts +of a document from each other. + +The \LaTeX\ commands for changing type style are given +in table~\ref{tab:typestyles}, and those for changing type +size are given in table~\ref{tab:sizes}. Commands for +selecting fonts other than these are not discussed here. + +\begin{table}[ht] +\centering +\begin{tabular}{llllllll} +\verb@\rm@ & Roman & & \verb@\it@ & \it italic & & \verb@\sc@ & \sc Capitals\\ +\verb@\em@ & \em Emphasised & & \verb@\sl@ & \sl slanted & & \verb@\tt@ & \tt typewriter\\ +\verb@\bf@ & \bf boldface & & \verb@\sf@ & \sf sans serif & &\\ +\end{tabular} +\caption{Commands for selecting type styles} +\label{tab:typestyles} +\end{table} + +Each of the type style selection commands selects the specified style but does +not change the size of font being used. The default type style is roman (you +are reading a roman style font now). To change type size you issue one of +the type size changing commands in table~\ref{tab:sizes}, which will select +the indicated size in the currently active style. The release of \LaTeX\ +3.0 (the present version is 2.09) will see the New Font Selection Scheme +in place as a standard feature. This makes font matters much easier to deal +with. + +% part 2 of 4 +\begin{table}[ht] +\centering +\begin{tabular}{l|r|r|r|} +\multicolumn{1}{l}{size} & +\multicolumn{1}{c}{default (10pt)} & + \multicolumn{1}{c}{11pt option} & + \multicolumn{1}{c}{12pt option}\\ +\cline{2-4} +\verb|\tiny| & 5pt & 6pt & 6pt\\ +\cline{2-4} +\verb|\scriptsize| & 7pt & 8pt & 8pt\\ +\cline{2-4} +\verb|\footnotesize| & 8pt & 9pt & 10pt \\ +\cline{2-4} +\verb|\small| & 9pt & 10pt & 11pt \\ +\cline{2-4} +\verb|\normalsize| & 10pt & 11pt & 12pt \\ +\cline{2-4} +\verb|\large| & 12pt & 12pt & 14pt \\ +\cline{2-4} +\verb|\Large| & 14pt & 14pt & 17pt \\ +\cline{2-4} +\verb|\LARGE| & 17pt & 17pt & 20pt\\ +\cline{2-4} +\verb|\huge| & 20pt & 20pt & 25pt\\ +\cline{2-4} +\verb|\Huge| & 25pt & 25pt & 25pt\\ +\cline{2-4} +\end{tabular} +\caption{\LaTeX\ size-changing commands.}\label{tab:styles} +\label{tab:sizes} +\end{table} + +The point-size option referred to in table~\ref{tab:sizes} is that +specified in the \verb@\documentstyle@ command issued at the +beginning of the input file. Through it you select that base +(or default) font for your document to be 10, 11, or~12 point Roman. +If no options are specified, the default is 10-point Roman. The +table shows, for instance, that if I issue a \verb@\large@ in +this document for which I chose the {\tt 12pt} document style +option the result will be a {\large 14-point Roman typeface}. + +We mentioned that to restrict the scope of a type-changing +command we will set the text to be affected off in a group. +Let's look at an example of this. + +\moveright0.1\textwidth\vbox{% +\footnotesize\begin{verbatim} +When we want to {\em emphasise\/} some text we +use the {\tt em} command, and use grouping to +restrict the scope. We can change font {\large sizes} +in much the same way. We can also obtain {\it italicised}, +{\bf emboldened}, {\sc Capitals} and {\sf sans serif} styles. +\end{verbatim} +} + +\result{% +When we want to {\em emphasise\/} some text we +use the {\tt em} command, and use grouping to +restrict the scope. We can change font {\large sizes} +in much the same way. We can also obtain {\it italicised}, +{\bf emboldened}, {\sc Capitals} and {\sf sans serif} styles. +} + +Notice how clever grouping allows us to do all that without +once having to use \verb@\rm@ or \verb@\normalsize@. + +One more thing slipped into that example---and {italic correction\/} +\verb@\/@. This is a very small amount of additional space that +we asked to be inserted to allow for the change from sloping +{\em emphasised} text to upright text, because the interword +space has been made to look less substantial from the terminal +sloping character. One has to keep an eye open for circumstances +where this is necessary. See the effect of omitting an italic correction +after the emphasised text earlier in this paragraph. + +One might expect, by now, that \LaTeX\ would insert an italic correction +for us. But there are enough occasions when it is not wanted, and there +is no good rule for \LaTeX\ to use to decide just when to do it for us. +So the italic correction is always left up to the typist. + +\subsection{Accents} +\LaTeX\ provides accents for just about all occasions. They are +accessed through a variety of control symbols and single-letter +control worlds which accept a single argument---the letter to be +accented. These control sequences are detailed in table~\ref{tab:accents}. + +\begin{table}[ht] +\centering +\begin{tabular}{lll} +\verb@\`{o}@ & \`{o} & (grave accent)\\ +\verb@\'{o}@ & \'{o} &(acute accent)\\ +\verb@\^{o}@ & \^{o} & (circumflex or ``hat'')\\ +\verb@\"{o}@ & \"{o} & (umlaut or dieresis)\\ +\verb@\~{o}@ & \~{o} & (tilde or ``squiggle'')\\ +\verb@\={o}@ & \={o} & (macron or ``bar'')\\ +\verb@\.{o}@ & \.{o} & (dot accent)\\ +\verb@\u{o}@ & \u{o} & (breve accent)\\ +\verb@\v{o}@ & \v{o} & (h\'{a}\v{c}ek or ``check'')\\ +\verb@\H{o}@ & \H{o} & (long Hungarian umlaut)\\ +\verb@\t{oo}@ & \t{oo} & (tie-after accent)\\ +\verb@\c{o}@ & \c{o} & (cedilla accent)\\ +\verb@\d{o}@ & \d{o} & (dot-under accent)\\ +\verb@\b{o}@ & \b{o} & (bar-under accent) +\end{tabular} +\caption{Control sequences for accents} +\label{tab:accents} +\end{table} + +Thus we can produce \'{o} by typing \verb@\'{o}@, +\v{a} by typing \verb@\v{a}@, and P\'{a}l Erd\"{o}s +by typing \verb@P\'{a}l Erd\"{o}s@. Take special +care when accenting an $i$ or a $j$, for they should +lose their dots when accented. Use the control +words \verb@\i@ and \verb@\j@ to produce dotless +versions of these letters. Thus the best way to type +to type \u{e}x\u{\i}gent is \verb"\u{e}x\u{\i}gent". + +\subsection{Over-ruling some of \TeX's choices} +We've seen that ties can be used to stop linebreaks +occurring between words. But how can we stop +\LaTeX\ from hyphenating a particular word? +More generally, how can we stop it from splitting +any given group of characters across two lines. +The answer is to make that group of characters +appears as one solid {\em box\/}, through +use of an \verb@\mbox@ command. + +\moveright0.1\textwidth\vbox{% +\footnotesize\begin{verbatim} +For instance, if we wanted to be sure that the word +{\em currentitem\/} is not split across lines +then we should type it as \mbox{\em currentitem}. +\end{verbatim} +} + +If for some reason we wish to break a line\\ +in the middle of nowhere, preventing \LaTeX\ +from justifying that line to the prevailing right +margin, the we use the \verb@\newline@ +command. One can also use the abbreviated +form \verb@\\@. + +\moveright0.1\textwidth\vbox{% +\footnotesize\begin{verbatim} +We start with a short line.\newline +And now we continue with the normal +text, remembering that where we press +Return in the input file probably won't +correspond to a line break in the final +document. More short lines\\ +are easy, too. +\end{verbatim} +} +\noindent will produce the line breaks we want + +\result{% +We start with a short line.\newline +And now we continue with the normal +text, remembering that where we press +Return in the input file probably won't +correspond to a line break in the final +document. More short lines\\ +are easy, too. +} + +A warning is in order: \verb@\newline@ +must only end part of a line that is ``already +set''. It cannot be used to add additional +space between paragraphs, nor to leave +space for a picture you want to paste in. +This is not to be awkward, but is just part +of \LaTeX\ holding up its end of the deal +by making you have to specially request +additional vertical space. This prevents +unwanted extra space from entering +your document. + +Later we shall see how to impose our own choice +of page size, paragraph indentation, etc. For now +we will continue to accept those declared for +us in the document style. + +\subsection{Commenting your document} +It is handy to be able to make comments +to yourself in the source file for a document. +Things like ``I must rewrite this section'' and +``This is version 3 of the document'' are likely. +It would also be useful to be able to make +the compiler ignore certain parts of the +document at times. For this purpose +we can use the \verb@%@ character, for +all text on an input line that is +after a \verb@%@ which is not part of +an occurrence of the control symbol +\verb@\%@ is discarded by the compiler. +Here is an example: + +\moveright0.1\textwidth\vbox{% +\footnotesize\begin{verbatim} +There was a 100\% turnout today, +an all-time record. %perhaps I should check this claim! +%Indeed, there are lots of unsubstantiated claims here! +This made for an extremely productive session. +\end{verbatim} +} +\noindent will yields + +\result{% +There was a 100\% turnout today, +an all-time record. %perhaps I should check this claim! +%Indeed, there are lots of unsubstantiated claims here! +This made for an extremely productive session. +} + +\subsection{Footnotes} +Inserting footnotes is easy---\LaTeX\ will position and +number them for you. You just indicate {\em exactly\/} +where the footnote marker should go, and provide the +text of the footnote. The footnote text will be +placed at the bottom of the present page in a somewhat +smaller font, and be separated from the main text by +a short horizontal rule\footnote{See for yourself! It's +easy when you don't have to do any work.} to conform with +convention. The footnote in the last line was typed +like this: + +\moveright0.1\textwidth\vbox{% +\footnotesize\begin{verbatim} +...rule\footnote{See for yourself! It's easy ...work.} to conform +\end{verbatim} +} +No space was typed between the {\tt rule} and the +\verb@\footnote@, because we want the footnote +marker to appear right next to the last letter of the word. + +Multiple footnotes\footnote{Here is another footnote} are +obtained just by using the \verb@\footnote@ command +again and again. + +\subsection{Topmatter} +We declare the title and author information using the +\verb@\title@ and \verb@\author@ commands, each of +which accept a single argument. Multiple authors +are all listed in the argument of \verb@\title@, +separated by \verb@\and@'s. The \verb@\date@ +command can be used to date a document. After +we have declared each of these, we issue a +\verb@\maketitle@ command to have them typeset for +us. In the \verb@book@ and \verb@article@ document +styles this will result in a separate page; in +the \verb@article@ style the ``top matter'' will +be placed at the top of the first page. The style +files determine the placement and the choice of font. + +\moveright0.1\textwidth\vbox{% +\footnotesize\begin{verbatim} +\title{A Thought for the Day} +\author{Fred Basset \and Horace Hosepipe} +\date{November 1992} +\maketitle +\end{verbatim} +} +\noindent will produce something along the lines of + +\result{% +\begin{center} +{\Large A Thought for the Day}\\ +\smallskip Fred Basset\quad Horace Hosepipe\\ +\smallskip November 1992 +\end{center} +} + +This topmatter must appear {\em after\/} the +\verb"\begin{document}" and before any other printing material. + +\subsection{Sectioning commands} +As part of our task of describing the logical structure of +the document, we must indicate to \LaTeX\ where to start sectional +units. To do this we make use of the sectioning commands shown +in table~\ref{tab:sectioning}. + +\begin{table}[ht] +\centering +{\tt +\begin{tabular}{lll} +\bs part & \bs subsection & \bs paragraph\\ +\bs chapter & \bs subsubsection & \bs subparagraph\\ +\bs section & & \\ +\end{tabular} +} +\caption{\LaTeX\ sectioning commands} +\label{tab:sectioning} +\end{table} + +Each sectioning command accepts a single argument---the section +heading that is to be used. \LaTeX\ will provide the section +numbering (and numbering of subsections within sections, etc.)\ +so there is no need to include any number in the argument. +\LaTeX\ will also take care of whatever spacing is required to +set the new logical unit off from the others, perhaps through +a little extra space and using a larger font. It will +also start a new page in the case that a new chapter is +begun. + +The \verb@\part@ command is used for major subdivisions of +substantial documents. The \verb@\paragraph@ and +\verb@\subparagraph@ commands are, unfortunately +confusing. They are used to section off a modest number of +paragraphs of text---they don't start new paragraphs (remember that +that was done by leaving a blank line in our input file). +The names were retained for historical reasons. + +It is always a good idea to {\em plan\/} the overall +sectional structure of a document in advance, or at least +give it a little thought. Not that it would be difficult to +change your mind later (you could use the global replace +feature of an editor, for instance), but so that you have +a good idea of the structure that you have to describe to +\LaTeX. + +The sectioning command that began the present sectional unit +of this document was + +\moveright0.1\textwidth\vbox{% +\begin{verbatim} +\subsection{Sectioning commands} +\end{verbatim} +} +\noindent and that was all that was required to get the numbered +section name and the table of contents entry. + +There are occasions when you want a heading to have all the +appearance of a particular sectioning command, but shouldn't +be numbered as a section in its own right or produce a table +of contents entry. This can be achieved through using the +{\em *-form\/} of the command, as in \verb@\section*{...}@. +We'll see that many \LaTeX\ commands have such a *-form +which modify their behaviour slightly. + +Not only will \LaTeX\ number your sectional units for you, +it will compile a table of contents too. Just include the +command \verb@\tableofcontents@ after the +\verb@\begin{document}@ command and after the topmatter that +should precede it. + + +\subsection{\LaTeX\ environments} +Perhaps the most powerful and convenient concept in the \LaTeX\ +syntax is that of an {\em environment}. We will see most of +the ``heavy'' typesetting problems we will encounter can be best +tackled by one or other of the \LaTeX\ environments. + +Some environments are used to {\em display\/} a portion of text, +i.e.\ to set it off from the surrounding text by indenting it. +The {\tt quote} and {\tt verse} environments are examples of +these. The {\tt center} environment allows us to centre +portions of text, while the {\tt flushright} environment +sets small portions of text flush against the right margin. + +But the true power of \LaTeX\ begins to show itself when +we look at environments such as those that provide facilities +for itemised or enumerated lists, complex tabular arrangements, +and for taking care of figure and table positioning and captioning. +What we learn here will also be applicable in typesetting some +complicated mathematical arrangements in the next chapter. + +All the environments are begun by a {\tt \bs begin{\{{\em name}\}}} +command and ended by an {\tt \bs end{\em \{name\}}}, where +{\em name\/} is the environment name. These commands also +serve as begin-group and end-group\footnote{See section \ref{sec:groups}} +markers, so that all commands are local to the present environment---they +cannot affect text outside the environment. + +We can also have environment embedded within environment within +environment and so on, limited only by memory available on the +computer. We must, however, be careful to check that each of +these {\em nested\/} environments is indeed contained within +the one just outside of it. + +\nsubsubsection{{\tt em} environment} +We start with a very simple environment, one which provides +an alternative to the \verb@\em@ command. Remember that +\verb@\em@ does not accept an argument; it applies to +everything within its scope as dictated by the group +within which it is used. This can be tricky if we wish +to emphasise a large amount of text, for we may forget +a group-delimiting brace and so upset the entire grouping +structure of our document. In cases where we fear this might +happen, we can proceed as follows. + +\moveright0.1\textwidth\vbox{% +\footnotesize\begin{verbatim} +\begin{em} +We must always be careful to match our group-delimiting +braces correctly. If the braces in a document are unevenly +matched then \LaTeX\ will become confused because we will +have, in effect, indicated different scopes than we +intended for commands. +\end{em} +\end{verbatim} +} +\noindent which will give + +\result{% +\begin{em} +We must always be careful to match our group-delimiting +braces correctly. If the braces in a document are unevenly +matched then \LaTeX\ will become confused because we will +have, in effect, indicated different scopes than we +intended for commands. +\end{em} +} + +Although \LaTeX\ doesn't care too much for how we format +our source file, it is obviously a good idea to lay it +out logically and readably anyway. This helps minimise +errors as well as aids in finding them. For this reason +I have adopted the convention of always placing the +environment \verb@\begin@ and \verb@\end@ commands on +lines by themselves. + +\nsubsubsection{{\tt quote} and {\tt quotation} environments} +This environment can be used to display a part +of a sentence or paragraph, or even several +paragraphs, in such a manner that the material +stands out from the rest of the text. This can +be used to enhance readability, or to simply +emphasise something. Its syntax is simple: + +\moveright0.05\textwidth\vbox{% +\footnotesize\begin{verbatim} +Horace smiled and retaliated: +\begin{quote} +\em You can mock the non-WYSIWYG nature of \TeX\ +all you like. You don't understand that that is +precisely what makes \TeX\ enormously more powerful +than that lame excuse for a typesetter you use. +And I'll bet that from start to finish of preparing +a document I'm quicker than you are, even if you +do type at twice the speed and have the so-called +advantage of WYSIWYG. In your case, what you see +is {\em all\/} you get! +\end{quote} +and then continued with composing his masterpiece of the +typesetting art. +\end{verbatim} +} +\noindent produces the following typeset material: + +\moveleft0.05\textwidth\vbox{\result{% +\noindent Horace smiled and retaliated: +\begin{quote} +\noindent\em You can mock the non-WYSIWYG nature of \TeX\ +all you like. You don't understand that that is +precisely what makes \TeX\ enormously more powerful +than that lame excuse for a typesetter you use. +And I'll bet that from start to finish of preparing +a document I'm quicker than you are, even if you +do type at twice the speed and have the so-called +advantage of WYSIWYG. In your case, what you see +is {\em all\/} you get! +\end{quote} +and then continued with composing his masterpiece of the +typesetting art. +} +} + +That is a much more readable manner of presenting Horace's +piece of mind than embedding it within a regular paragraph. +The {\tt quote} environment was responsible for the margins +being indented on both sides during the quote. This example +has also been used to show how the commands that begin and +end an environment restrict the scope of commands issued within +that environment: The \verb@\em@ at the beginning of the +quote did not affect the text following the quote. We have +also learned here that if we use \verb@\em@ within already +emphasised text, the result is roman type---and we don't +require an italic correction here because the final letter +of `all' was not sloping to the right. + +The {\tt quotation} environment is used in just the same way +as the {\tt quote} environment above, but it is intended +for setting long quotations of several paragraphs. It would +be suitable for quoting a few paragraphs from the text of +some speech, for instance. \LaTeX\ treats the given +text just like normal text that it has to set into paragraphs, +except that it indents the margins a little. + +\nsubsubsection{{\tt verse} environment} +This is provided to facilitate the setting of poetry. +When within the {\tt verse} environment, we use +\verb@\newline@ (or \verb@\\@) to end a line; and +what would normally signify a new paragraph +serves to indicate the start of a new stanza. +Let's have a shot at some cheap poetry. + +\moveright0.1\textwidth\vbox{% +\footnotesize\begin{verbatim} +\begin{verse} +Roses are red\\ +Violets are blue\\ +I think \TeX\ is great\\ +And so will you! + +Roses are still red\\ +Violets are still blue\\ +I'm schizophrenic\\ +And so am I. +\end{verse} +\end{verbatim} +} +\noindent will produce the following stunningly-creative ``poem'': + +\result{% +\begin{verse} +Roses are red\\ +Violets are blue\\ +I think \TeX\ is great\\ +And so will you! + +Roses are still red\\ +Violets are still blue\\ +I'm schizophrenic\\ +And so am I. +\end{verse} +} + + + +\nsubsubsection{{\tt center} environment} +This environment allows the centring of consecutive lines +of text, new lines being indicated by a \verb@\\@. If you +don't separate lines with the \verb@\\@ command then you'll +get a centred paragraph the width of the page, +which won't look any different to normal. If only one +line is to be centred, then no \verb@\\@ is necessary. + +\moveright0.1\textwidth\vbox{% +\footnotesize\begin{verbatim} +The {\tt center} environment takes care of the vertical +spacing before and after it, so we don't need to leave any. +\begin{center} +If we leave no blank line after the\\ +{\tt center} environment\\ +then the ensuing text will not\\ +be regarded as part of a new\\ +paragraph, and so will not be indented.\\ +\end{center} + +In this case we left a blank line after the environment, +so the new text was regarded as starting a new paragraph. +\end{verbatim} +} +\noindent gives the following text + +\result{% +The {\tt center} environment takes care of the vertical +spacing before and after it, so we don't need to leave any. +\begin{center} +If we leave no blank line after the\\ +{\tt center} environment\\ +then the ensuing text will not\\ +be regarded as part of a new\\ +paragraph, and so will not be indented.\\ +\end{center} + +In this case we left a blank line after the environment, +so the new text was regarded as starting a new paragraph. +} + +\nsubsubsection{{\tt flushright} and {\tt flushleft} environments} +The {\tt flushright} environment causes each line to be set +with its last character against the right margin, without trying +to stretch the line to to current text width. The {\tt flushleft} +environment is similar. + +\moveright0.1\textwidth\vbox{% +\footnotesize\begin{verbatim} +We can stop \LaTeX\ from justifying each line to both the +left and the right margins. +\begin{flushright} +The {\tt flushright} environment is\\ +used for text with an even right margin\\ +and a ragged left margin. +\end{flushright} +\begin{flushleft} +and the {\tt flushleft} environment is\\ +used for text with an even left margin\\ +and a ragged right margin. +\end{flushleft} +\end{verbatim} +} +\noindent gives the desired display + +\result{% +We can stop \LaTeX\ from justifying each line to both the +left and the right margins. +\begin{flushright} +The {\tt flushright} environment is\\ +used for text with an even right margin\\ +and a ragged left margin. +\end{flushright} +\begin{flushleft} +and the {\tt flushleft} environment is\\ +used for text with an even left margin\\ +and a ragged right margin. +\end{flushleft} +} + +One must be wary not to lapse into ``word-processing'' mode +when using these environments. Remember that pressing return +at the end of a line in the input file does not serve to end +the current line there, but just to indicate the end of another word. +We have to use the \verb@\\@ command to end a line. + +\nsubsubsection{{\tt verbatim} environment} +We can simulate typed text using the {\tt verbatim} environment. +The \verb@\tt@ (typewriter text) type style can be used for +simulating typed words, but runs into trouble if one of the +characters in the simulated typed text is a specially reserved +\LaTeX\ character. For instance, \verb@{\tt type \newline}@ +would not have the desired effect because \LaTeX\ would +interpret the \verb@\newline@ is an instruction to start +a new line. + +The {\tt verbatim} environment allows the simulation of multiple +typed lines. {\em Everything\/} within the environment is +typeset in typewriter font exactly as it appears in our source +file---obeying spaces and line breaks as in the source file and +not recognising the existence of any special symbols. + +% this is going to be ugly, because we can't demonstrate an +% \end{verbatim} using the verbatim environment +\moveright0.1\textwidth\vbox{% +\footnotesize\begin{flushleft} +\tt\bs begin\{verbatim\}\\ +In the verbatim environment we can type anything\\ +we like.\\ +So we don't need to look out for uses of \%, \$, \& etc,\\ +nor will control sequences like \bs newline have any\\ +effect.\\ +\bs end\{verbatim\} +\end{flushleft} +} +\noindent will produce the simulated input text + +\moveright0.1\textwidth\vbox{% +\footnotesize\begin{verbatim} +In the verbatim environment we can type anything +we like. +So we don't need to look out for uses of %, $, & etc, +nor will control sequences like \newline have any +effect. +\end{verbatim} +} + +The only thing that cannot be typed in the {\tt verbatim} +environment is the sequence \verb@\end{verbatim}@. You +might notice that I still managed to simulate that +control sequence above. One can always get what you want +in \TeX, perhaps with a little creativity. + +If we want only to simulate a few typed words, such as when +I say to use \verb@\newline@ to start a new line, then the +\verb@\verb@ command is used. This command has a slightly +odd syntax, pressed upon it by the use for which it was +intended. It cannot accept an argument, because we may +want to simulate typed text that is enclosed by +\verb@{braces}@. What one does is to choose any character +that is {\em not\/} in the text to be simulated, and use +a pair of these characters as ``argument delimiters''. I usually use the +\verb"@" or \verb@"@ charachters, as I rarely have any other uses for them. +Thus + +\result{% +\noindent use \verb"\%" to obtain a \% sign +} +\noindent is typed as + +\moveright0.1\textwidth\vbox{ +\footnotesize\begin{verbatim} +use \verb"\%" to obtain a \% sign +\end{verbatim} +} + +\nsubsubsection{{\tt itemize}, {\tt enumerate}, {\tt description} environments} +\LaTeX\ provides three predefined list-making environment, and a +``primitive'' list environment for designing new list environments +of your own. We shall just describe the predefined ones here. + +There is delightfully little to learn in order to be able to create +lists. The only new command is \verb@\item@ which indicates the +beginning of a new list item (and the end of the last one if this is +not the first item). This command accepts an optional argument +(which means you'd enclose it in square brackets) that can be +used to provide an item label. If no optional argument is given, then +\LaTeX\ will provide the item label for you; in an +{\tt itemize} list it will bullet the items, in an +{\tt enumerate} list it will number the items, and in a list +of {\tt description}s the default is to have no label (which would look +a bit odd, so you're expected to use the optional argument there). + +Remember that \verb@\item@ is used to separate list items; it +does not accept the list item as an argument. + +\moveright0.1\textwidth\vbox{% +\footnotesize\begin{verbatim} +\begin{itemize} +\item an item is begun with \verb@\item@ +\item if we don't specify labels, then + \LaTeX\ will bullet the items for us +\item I indent lines after the first in the + input file, but that is just to keep things + readable. As always, \LaTeX\ ignores additional + spaces. + +\item a blank line between items is ignored, for + \LaTeX\ is responsible for spacing items. +\item \LaTeX\ is in paragraph-setting mode when + it reads the text of an item, and so will + perform all the usual functions +\end{itemize} +\end{verbatim} +} +\noindent produces the following itemised list: + +\result{ +\begin{itemize} +\item an item is begun with {\tt\bs item}%\verb blew up here! +\item if we don't specify labels, then + \LaTeX\ will bullet the items for us +\item I indent lines after the first in the + input file, but that is just to keep things + readable. As always, \LaTeX\ ignores additional + spaces. + +\item a blank line between items is ignored, for + \LaTeX\ is responsible for spacing items. +\item \LaTeX\ is in paragraph-setting mode when + it reads the text of an item, and so will + perform all the usual functions +\end{itemize} +} + +Lists can also be embedded within one another, +for they are just environments and we said that +environments have this property. Remember that +we must nest them in the correct order. We +demonstrate with the following list, which also +shows how to use the {\tt enumerate} environment. + +\moveright0.1\textwidth\vbox{% +\footnotesize\begin{verbatim} +\noindent I still have to do the following things: +\begin{enumerate} +\item Sort out LAN accounts for people on the course + \begin{itemize} + \item Have new accounts created for those not already + registered on the LAN + \item Make sure all users have a personal directory + on the data drive + \item Give read and scan rights to users in the \TeX\ + directories + \item Add users to the appropriate LAN print queues + \end{itemize} +\item Have a \TeX\ batch file added to a directory that + is on a public search path +\item Finish typing these course notes and proof-read them +\item Photocopy and bind the finished notes +\end{enumerate} +\end{verbatim} +} +\noindent will give the following list + +\result{ +I still have to do the following things: +\begin{enumerate} +\item Sort out LAN accounts for people on the course + \begin{itemize} + \item Have new accounts created for those not already + registered on the LAN + \item Make sure all users have a personal directory + on the data drive + \item Give read and scan rights to users in the \TeX\ + directories + \item Add users to the appropriate LAN print queues + \end{itemize} +\item Have a \TeX\ batch file added to a directory that + is on a public search path +\item Finish typing these course notes and proof-read them +\item Photocopy and bind the finished notes +\end{enumerate} +} + +See how I lay the source file out in a readable fashion. +This is to assist myself, not \LaTeX. + +The {\tt description} environment is, unsurprisingly, +for making lists of descriptions. + +\moveright0.1\textwidth\vbox{% +\footnotesize\begin{verbatim} +\begin{description} +\item[\tt itemize] an environment for setting itemised lists. +\item[\tt enumerate] an environment for setting numbered lists. +\item[\tt description] an environment for listing descriptions. +\end{description} +\end{verbatim} +} +\noindent will typeset the following descriptions: + +\result{% +\begin{description} +\item[\tt itemize] an environment for setting itemised lists. +\item[\tt enumerate] an environment for setting numbered lists. +\item[\tt description] an environment for listing descriptions. +\end{description} +} + +Note that the scope of the \verb@\tt@ commands used in the +item labels was restricted to the labels. + +\nsubsubsection{{\tt tabbing} environment} +This environment simulates tabbing on typewriters. +There one chose the tab stops in advance (analysing +the material to be typed for the longest item in +each column) and typed entries consecutively, +hitting the tab key to move to the next tab stop +and return to move to the next line. + +In the {\tt tabbing} environment, we proceed similarly. +We look for the worst-case line (that which will +determine the desired tab stops) and use it to +set the tabs by inserting \verb@\=@ control symbols +at the points where we want tab stops. We then discard +that line using \verb@\kill@, since the worst-case line +might not be the first line in the material we have to +type. We then type each line, using \verb@\>@ to move +to the next tab stop and \verb@\\@ to end a line. + +\moveright0.1\textwidth\vbox{% +\footnotesize\begin{verbatim} +\begin{tabbing} +Cheddar cheese \= Recommended \= \$2.00 \kill +Green Ham \> Recommended \> \$2.00 +Eggs \> 1 a week \> \$1.50 +Cheddar cheese \> Hmmm \> \$0.80 +Yak cheese \> Avoid \> \$0.05 +\end{tabbing} +\end{verbatim} +} +\noindent gives the following uniformly-tabbed table + +\result{% +\begin{tabbing} +Cheddar cheese \= Recommended \= \$2.00 \kill +Green Ham \> Recommended \> \$2.00\\ +Eggs \> 1 a week \> \$1.50\\ +Cheddar cheese \> Hmmm \> \$0.80\\ +Yak cheese \> Avoid \> \$0.05 +\end{tabbing} +} + +In the format line I chose the longest entry +from each of the prospective columns. I lined +some of the \verb@\>@ commands up in the source +just to keep things readable. + +Remember that excess spaces are ignored. \LaTeX\ +sets the \verb@\kill@ed line normally and sees where the +tab stops requested will be needed in the typeset text. +Note also that commands given within the {\tt tabbing} +environment are local to {\em the current item}. + +Actually, we use the above approach in the case that +we require uniformly tabbed columns. The format line +is not compulsory, and we can define tab stops dynamically. +See if you can make sense of the following. + +\moveright0.1\textwidth\vbox{% +\footnotesize\begin{verbatim} +\begin{tabbing} +Entry in position 1,1 \= Entry 1,2 \= Entry 1,3\\ +Entry in position 2,1 \> Entry 2,2 \> Entry 2,3\\ +Entry 3,1 \= Entry 3,2 \> Entry 3,3\\ +Entry 4,1 \> Entry 4,2 \> Entry 4,3 +\end{tabbing} +\end{verbatim} +} +\noindent which produces + +\result{% +\begin{tabbing} +Entry in position 1,1 \= Entry 1,2 \= Entry 1,3\\ +Entry in position 2,1 \> Entry 2,2 \> Entry 2,3\\ +Entry 3,1 \= Entry 3,2 \> Entry 3,3\\ +Entry 4,1 \> Entry 4,2 \> Entry 4,3 +\end{tabbing} +} + +The are additional commands that can be used within +the tabbing environment to achieve special effects, +but we won't be discussing them here. + +\nsubsubsection{{\tt tabular} environment} +The {\tt tabular} environment is used to produce +tables of items, particularly when the table +is predominantly rectangular and when line drawing +is required. \LaTeX\ will make most decisions for +us; for instance it will align everything for us +without having to be told which are the longest +entries in each column. + +This environment is the first of many that use the +\TeX\ ``tabbing character'' {\tt \&}. This character +is used to separate consecutive entries in a row +of a table, array, etc. The end of a row is indicated +in the usual manner, by using \verb@\\@. +In this way the individual cells of the table, or array, +are clearly described to \LaTeX, and it can analyse +them to make typesetting decisions. Commands issued +within a cell so defined are, again, local to that +cell. + +The {\tt tabular} environment is also our first example +of an {\em environment with arguments}. The arguments +are given, in braces as usual, just after the closing +brace after the environments name. In the case of +{\tt tabular} there is a single mandatory argument +giving the justification of the entries in each column: +{\tt l} for left justified, {\tt r} for right justified, +and {\tt c} for centred. There must be an entry for each +column of the table, and there is no default. Let's start +with a simple table. + +\moveright0.1\textwidth\vbox{% +\footnotesize\begin{verbatim} +\begin{tabular}{llrrl} +\bf Student name & \bf Number & \bf Test 1 & \bf Test 2 & \bf Comment\\ +F. Basset & 865432 & 78 & 85 & Pleasing\\ +H. Hosepipe & 829134 & 5 & 10 & Improving\\ +I.N. Middle & 853931 & 48 & 47 & Can make it +\end{tabular} +\end{verbatim} +} +\noindent will produce the following no-frills table + +\result{% +\begin{tabular}{llrrl} +\bf Student name & \bf Number & \bf Test 1 & \bf Test 2 & \bf Comment\\ +F. Basset & 865432 & 78 & 85 & Pleasing\\ +H. Hosepipe & 829134 & 5 & 10 & Improving\\ +I.N. Middle & 853931 & 48 & 47 & Can make it +\end{tabular} +} +Note that a \verb@\\@ was not necessary at the end +of the last row. Also note that, once again, the alignment +of the \verb@&@ characters was for human readability. +It is conventional to set columns of numbers with right +justification. The \verb@\bf@ directives apply only the +entries in which they are given. + +A {\tt |} typed in the {\tt tabular} environment's argument +causes a vertical line to be drawn at the indicated position +and extending for the height of the entire table. An +\verb@\hline@ given in the environment draws a horizontal +line extending the width of the table to be drawn at the +vertical position at which the command is given. +A \verb@\cline@$\{i$-$j\}$ draws a line spanning columns +$i$ to $j$, at the vertical position at which the +command is given. A repeated line-drawing command +causes a double line to be drawn. We illustrate line +drawing in tables by putting some lines into our first +table. We will type this example in a somewhat expanded +form, trying to make it clear why the lines appear where they +do. + +\moveright0.1\textwidth\vbox{% +\footnotesize\begin{verbatim} +\begin{tabular}{|l|l|r|r|l|} +\hline +\bf Student name & \bf Number & \bf Test 1 & \bf Test 2 & \bf Comment\\ +\hline +F. Basset & 865432 & 78 & 85 & Pleasing\\ +\hline +H. Hosepipe & 829134 & 5 & 10 & Improving\\ +\hline +I.N. Middle & 853931 & 48 & 47 & Can make it\\ +\hline +\end{tabular} +\end{verbatim} +} +\noindent which will give + +\result{% +\begin{tabular}{|l|l|r|r|l|} +\hline +\bf Student name & \bf Number & \bf Test 1 & \bf Test 2 & \bf Comment\\ +\hline +F. Basset & 865432 & 78 & 85 & Pleasing\\ +\hline +H. Hosepipe & 829134 & 5 & 10 & Improving\\ +\hline +I.N. Middle & 853931 & 48 & 47 & Can make it\\ +\hline +\end{tabular} +} +% part 3 of 4 +That way of laying out the source file makes it clear where +the lines will go. As we (by now) well know, the returns that +we pressed after the \verb@\\@s in typing this table might +as well have been spaces as far as \LaTeX\ is concerned. Thus +it is common to have the \verb@\hline@ commands following the +\verb@\\@s on the input lines. We will do this in future examples. + +The \verb@\multicolumn@ column can be used to overrule the overall +format of the table for a few columns. The syntax of this command +is + +\begin{syntax}{multicolumn} +\man{n}\man{pos}\man{item} +\end{syntax} + +\noindent where $n$ is the number of columns +of the original format that {\em item\/} +is to span, and {\em pos\/} specifies the justification +of the new argument. + +\moveright0.1\textwidth\vbox{% +\footnotesize\begin{verbatim} +\begin{tabular}{||l|c|c|c||} \hline +\multicolumn{4}{|c|}{\LaTeX\ size changing commands}\\ \hline +Style option & 10pt (default) & \tt 11pt & \tt 12pt\\ \hline +\tt\bs footnotesize & 8pt & 9pt & 10pt\\ \hline +\tt\bs small & 9pt & 10pt & 11pt\\ \hline +\tt\bs large & 12pt & 12pt & 14pt\\ \hline +\end{tabular} +\end{verbatim} +} +\noindent produces the following table: + +\begin{center}\footnotesize +\begin{tabular}{||l|c|c|c||} \hline +\multicolumn{4}{|c|}{\LaTeX\ size changing commands}\\ \hline +Style option & 10pt (default) & \tt 11pt & \tt 12pt\\ \hline +\tt\bs footnotesize & 8pt & 9pt & 10pt\\ \hline +\tt\bs small & 9pt & 10pt & 11pt\\ \hline +\tt\bs large & 12pt & 12pt & 14pt\\ \hline +\end{tabular} +\end{center} + +\nsubsubsection{{\tt figure} and {\tt table} environments} +Figures (diagrams, pictures, etc.)\ and tables (perhaps created +with the {\tt tabular} environment) cannot be split across +pages. So \LaTeX\ provides a mechanism for ``floating'' +them to a nearby place where there is room for them. This +may mean that your figure or table may appear a little later in the +document than its declaration in the source file might suggest. +You can suggest to \LaTeX\ that it try to place the figure or +table at the present position if there is room +or, failing that, at the top or bottom of +the present or following page. You can also ask for it to be presented by +itself on a ``page of floats''. + +You suggest these options to \LaTeX\ through an optional +argument to the environment. One lists a combination +of the letters {\tt h}, {\tt t}, {\tt b}, and {\tt p} where +\begin{description} +\item[h] means that the object should be placed {\em here} if there + is room, so that things will appear in the same order as + in the source file, +\item[t] means that the object can be placed at the {\em top\/} of the of a text + page, but no earlier than the present page. +\item[b] means that the object can be placed at the {\em bottom\/} of a text + page, but no earlier than the present page. +\item[p] means that the object should be set on a {\em page of floats\/} that consists + only of tables and figures. +\end{description} + +A combination of these indicates decreasing order of preference. +The default is {\tt tbp}. In this document I have tended to use +{\tt htbp}. + +\LaTeX\ will also number and caption a figure or table for you, +and compile a list of tables and a list of figures. +Just include \verb@\listoffigures@ and \verb@\listoftables@ +next to your \verb@\tableofcontents@ command at the beginning +of the document. To caption a table of figure, include +\verb@\caption{@{\em caption text}\verb@}@ just before the +\verb@\end{table}@ or \verb@\end{figure}@ command. Here's +a sample source file. + +\moveright0.1\textwidth\vbox{% +\footnotesize\begin{verbatim} +\begin{table}[htbp] + \begin{tabular}{lrll} + ... + \end{tabular} +\caption{Mark analysis} +\end{table} +\end{verbatim} +} + +To leave space for a figure that will inserted by some +other means at a later date, we can use the \verb@\vspace@ +command: + +\moveright0.1\textwidth\vbox{% +\footnotesize\begin{verbatim} +\begin{figure}[htbp] +\vspace{9.5cm} +\caption{An artists impression} +\end{figure} +\end{verbatim} +} + +Including graphics files prepared with drawing packages is +possible, but beyond the scope of this introduction. + +\subsection{The {\tt letter} document style} +All this and we still don't know how to prepare +a simple letter! Actually, there is very little +to it. + +Figure~\ref{fig:letter} shows a sample letter. We declare +our own address and signature before entering the {\tt letter} +environment because we can use repeated {\tt letter} +environments to prepare multiple letters from the same source +file. The address of the intended recipient of a particular +letter is given as an argument to the {\tt letter} environment. + +\begin{figure}[p] +\moveright0.1\textwidth\vbox{% +\footnotesize\begin{verbatim} +\documentstyle[12pt]{letter} +\begin{document} +\address{(Underneath) Lion Bridge\\ +Midway down Commercial Road\\ +Pietermaritzburg\\ +3200} + +\signature{F. Basset\\ +Public nuisance} + +\begin{Letter}{Director of Public Parks\\ +Pietermaritzburg Municipality\\ +Pietermaritzburg} + +\opening{Kind Sir/Madam} + +I wish to complain about the shocking practice of +fencing off the base of trees. I notice with grave +concern that this has occurred in the park bordering +my stately residence. + +This has already caused me great inconvenience +and public embarrassment, as you can imagine it would +for a hound of my social standing. I demand that +you take these obscene obstructions away without +delay. + +\closing{Yours anxiously} +\end{letter} +\end{document} +\end{verbatim} +} +\vfil\caption{A sample letter} +\label{fig:letter} +\end{figure} + +\subsection{Common pitfalls; Error messages} +By now it should be clear that we have to work quite +accurately when preparing a document. Typing errors +in the running text can be absorbed, but messing up +a control sequence name will halt the compiler with +an error message. Before we look at some common errors and +some ways to avoid them, let's have a look at a sample +error message. + +You'll have noticed by now that when you run \LaTeX\ +on a source file, the transcript of the compiler +session is written on a log file. When errors have +accumulated to the point that \LaTeX\ is hopelessly +confused, it is time to debug your source file. The +log file contains a reference to the line, or lines, of +your source file that generated the error together with +a description of the error. + +\TeX\ and \LaTeX\ error messages appear frightening at first +sight, to say the least. They are actually very informative, +but they can take some getting used to. Mistyped control +sequences cause little pain, but a missing +\verb@\end{@{\em environment}\verb@}@ can cause a good deal +of confusion because it has the effect of making \LaTeX\ +try to set material into that environment that was never +intended/designed to fit in such a place. Also, ommiting a mandatory +argument can cause great confusion. + +Suppose we type \verb@\bold@ instead of \verb@\bf@ in the following +line: + +\moveright0.1\textwidth\vbox{ +\footnotesize\begin{verbatim} +this is going to be {\bold very} messy. +\end{verbatim} +} +\noindent This produces the following error message: + +\moveright0.1\textwidth\vbox{ +\footnotesize\begin{verbatim} +! Undefined control sequence. +1.683 this is going to be {\bold + very} messy. +? +\end{verbatim} +} +That not so bad! The line beginning with {\tt!} tells us that we +have tried to used a control sequence that was not known to +\LaTeX; the {\tt 1.683} tells us that the error occurred on line +683 of the source file; and the error message is split over two lines +with the break occurring at the point where \LaTeX\ detected a problem. + +But suppose we try the following + +\moveright0.1\textwidth\vbox{% +\footnotesize\begin{verbatim} +\begin{tabular}{llrrl} +Student name & Number & Test 1 & Test 2 & Comment\\ +F. Basset & 865432 & 78 & 85 & Pleasing\\ +H. Hosepipe & 829134 & 5 & 10 & Improving\\ +I.N. Middle & 853931 & 48 & 47 & Can make it + +This shows that H.~Hosepipe's newfound concentration has... +\end{verbatim} +} +i.e., we omit to provide the \verb@\end{tabular}@ that +delimits the end of the environment. Not having been +told that the environment is supposed to be concluded, +\LaTeX\ will try to set the text of the next paragraph +as a table item---and will scream blue murder when it +finds that it doesn't conform to the syntax demanded. + +\moveright0.1\textwidth\vbox{% +\footnotesize\begin{verbatim} +LaTeX error. See LaTeX manual for explanation. + Type H <return> for immediate help. +! \begin{tabular} ended by \end{document}. +\@latexerr ...diate help.}\errmessage {#1} + +\@checkend ...urrenvir \else \@badend {#1} + \fi +\enddocument ->\@checkend {document} + \clearpage \begingroup \if@filesw... +\end #1->\csname end#1\endcsname + \@checkend {#1}\expandafter \endgrou... +l.58 \end{document} + +? +\end{verbatim} +} + +Now {\em that's\/} informative! Actually it {\em is} if we +agree to ignore all but the the error indication line +(the one beginning with the {\tt!}) and the line telling us +where \LaTeX\ noticed that all was not well (the one beginning +{\tt 1.58} in this case). The rest of the error message you can +regard as being for your local \TeX\ wizard to sort your problem +out if you are unable to after consulting the manuals. +Tough as it looks, we can decipher this message straight +away: the error indicator line tell us that a {\tt tabular} +environment was ended incorrectly (in this case by an +\verb@\end{document}@). + +\TeX\ error messages aren't all that bad once you've made +enough errors to get used to a few! Most can be avoided +through {\em careful\/} preparation of the source file. +Typing accurately and knowledge of the command syntax is a good start, +but there are some other precautions that make good sense: +\begin{enumerate} +\item Even if \LaTeX\ is happy with free-form input, try to + lay your input file out as regularly and logically as + possible. See our examples of environments for + formats to adopt. +\item It is important that all group delimiters be properly matched, + i.e., braces and {\tt\bs begin\{\}}\ldots{\tt\bs end\{\}} must + come in pairs. A good habit to fall in to is to always type + such things in pairs and then move the cursor back between + them and type the intervening material. +\item Don't forget command arguments when they are mandatory. + Always ask yourself what a particular commands {\em needs + from you\/} in order to make the decisions that are required of it. +\item Remember the 10 characters that are specially reserved for + commenting, table item separation, etc. +\item When we look at mathematical typesetting in the next chapter, + we will see that the same principles apply there. +\item Try to use a text editor that has a \TeX\ mode, or at least + one that will match brackets for you. +\end{enumerate} + +\section{Summary} +We have learned pretty much all we need to know in order to +prepare non-mathematical documents. There has been quite +a lot of material, all told, but we're fortunate that the +average document requires only a fraction of what we've +listed here. Furthermore, we'll find that what we've +learned equips us with a good deal of the framework +needed for mathematical typesetting. + +The important thing to extract from this chapter is some +feel for what I termed the ``spirit of \TeX'' at the +chapter beginning. I cannot emphasise enough the +importance of getting your mind out of ``word processing'' +mode and into ``typesetting'' mode. Always keep uppermost +in your mind the task at hand: you are to describe the +logical content of the document to \LaTeX, so furnishing +it with enough information to perform all the formatting +for you. + +Many of the earlier sections of this chapter will become +trivially easy to you after just a little experimentation +with \LaTeX. The best way to learn the syntax of the more +complicated environments is to use them---try typesetting +the examples, for instance. It is important that you come +to terms with the {\tt tabular} environment, for its +syntax is typical of many of the mathematical constructs +that we will use. + +If you have not already done so, then now is the time +to try preparing some documents of your own. Try +including all the material from this chapter, for +that is the best way to remember it all. When +the initial lack of familiarity wears off, you'll +find that \LaTeX\ is really a whole lot friendlier +and easier to use than you expected. + +We must also recognise that there is a lot more to some of the command +than detailed here. Some accept optional argumnets that were not mentioned, +others have more options than we considered. And even once we have a full +description of each command, there is still much to be learned for there +is much that can be achieved through creative use of some of the environments. + + + + + +\chapter{Mathematical typesetting with \LaTeX} + + +The last chapter taught us a good deal of what we need to know in order to +prepare quite complicated non-mathematical documents. There are still a +number of useful topics that we have not covered (such as cross-referencing), +but we'll defer discussion of those until a later chapter. In the present +chapter, we'll learn how \LaTeX\ typesets mathematics. It should come +as no surprise that \LaTeX\ does most of the work for us. + +\section{Introduction} +In text-only documents we saw that our task was to describe the logical +components of each sentence, paragraph, section, table, etc. +When we tell \LaTeX\ to go into {\em mathematical mode}, we have to +describe the logical parts of a formula, matrix, operator, special symbol, etc. +\TeX\ has been taught to recognize a binary operation, a binary relation, +a variable, an operator that expects limits, and so on. We just need to +supply the parts that make up each of these, and \TeX\ will take care of +the rest. It will leave appropriate space around operators, italicise variables, +set an operator name in roman type, leave the correct space after colons, +place sub- and superscripts in the correct positions (based on what it is +you're working with), choose the correct typesizes, \ldots\ the list of things it has been taught is +enormous. When you want to revert to setting normal text again, you tell +\LaTeX\ too leave maths mode and go back into the mode it was in (paragraphing +mode). + +\LaTeX\ cannot be expected to perform these mode shifts itself, for it +is not always clear just when it is mathematics that has been typed. +For example, should an isolated letter {\tt a} in the input file be +regarded as a word (as in the definite article) or a mathematical +variable (as in the variable $a$). There are no reliable rules for +\LaTeX\ to make such decisions by, so the begin-math and end-math +mode switching is left entirely to you. + +The symbol \verb@$@ is specially reserved\footnote{See section \ref{sec:reserved}} +by \LaTeX\ as the ``math shift'' symbol. When \LaTeX\ starts setting +a document it is in paragraphing mode, ready to set lines of the +input file into paragraphs. It remains in this mode until +it encounters a \verb@$@ symbol, which shifts \LaTeX\ into mathematical +mode. It now knows to be on the look-out for the components of a mathematical +expression, rather than for words and paragraphs. It reads everything +up to the next \verb@$@ sign in this mathemtical mode, and then shifts back to +paragraphing mode (i.e.\ the mode it was in before we took it in to +maths mode). + +You must be careful to balance your begin-math and end-math +symbols. It is often a good idea to type two \verb@$@ symbols +and then move back between them and type the mathematical +expression. If the math-shift symbols in a document are +not matched, then \LaTeX\ will become confused because +it will be trying to set non-mathematical material as +mathematics. + +For those who find having the same symbol for both math-begin +and math-end confusing or dangerous, there are two control symbols that perform +the same operations: the control symbol \verb@\(@ is +a begin-math instruction, and the control symbol \verb@\)@ +is an end-math instruction. Since it is easy to ``lose'' a \verb@$@ +sign when typing a long formula, a math environment is provided +for such occasions: you can use \verb@\begin{math}@ and +\verb@\end{math}@ as the math-shift instructions. Of course, you +could just decide to use \verb@$@ and take your chances. + +Let's have a look at some mathematics. + +\moveright0.1\textwidth\vbox{% +\footnotesize\begin{verbatim} +\LaTeX\ is normally in paragraphing mode, where +it expects to find the usual paragraph material. Including +a mathematical expression, like $2x+3y - 4z= -1$, in the +paragraph text is easy. \TeX\ has been taught to recognize +the basic elements of an expression, and typeset them appropriately, +choosing spacing, positioning, fonts, and so on. +Typing the above expression without entering maths +mode produces the incorrect result: 2x+3y - 4z= -1 +\end{verbatim} +} +\noindent will produce the following paragraph + +\result{ +\LaTeX\ is normally in paragraphing mode, where +it expects to find the usual paragraph material. Including +a mathematical expression, like $2x+3y - 4z= -1$, in the +paragraph text is easy. \TeX\ has been taught to recognize +the basic elements of an expression, and typeset them appropriately, +choosing spacing, positioning, fonts, and so on. +Typing the above expression without entering maths +mode produces the incorrect result: 2x+3y - 4z= -1 +} + +Notice that \LaTeX\ sets space around the binary relation +$=$ and space around the binary operators $+$ and $-$ on the +left hand side of the equation, ignoring the +spacing we typed in the input. It was also able to recognize +that the $-1$ on the right hand side of the equation was +a unary minus---negating the $1$ rather than being used to +indicate subtraction---and so did not put space around it. +It also italicised the +variables $x$, $y$, and $z$. However, it did not italicise +the number $1$. + +In typing a mathematical expression we must remember to keep the +following in mind: +\begin{enumerate} +\item All letters that are not part of an argument to some control +sequence will be italicised. Arguments to control sequences will +be set according to the definition of the command used. So +typing \verb@$f(x)>0 for x > 1$@ will produce +$$f(x)>0 for x > 1$$ +instead of the expression +$$f(x)>0 \mbox{\quad for\quad} x>1$$ +that we intended. Numerals and punctuation marks are set +in normal roman type but \LaTeX\ will take care of the +spacing around punctuation symbols, as in + +\moveright0.1\textwidth\vbox{% +\footnotesize\begin{verbatim} +$f(x,y) \geq 0$ +\end{verbatim} +} +\noindent which produces +$$f(x,y) \geq 0\quad.$$ + +\item Even a single letter can constitute a formula, as in +``the constant $a$''. To type this you enter \verb@$a$@ in +your source file. If you do not go in to maths mode to type +the symbol, you'll get things like ``the constant a''. + +\item Some symbols have a different meaning when typed in maths +mode. Not only do ordinary letters become variables, but symbols +such as \verb@-@ and \verb@+@ are now interpreted as mathematical +symbols. Thus in maths mode \verb@-@ is no longer considered +a hyphen, but as a minus sign. + +\item \LaTeX\ ignores all spaces and carriage returns +when in maths mode, without exception. So typing something +like \verb@the constant$ a$@ will produce ``the constant$ a$''. +You should have typed \verb@the constant $a$@. \LaTeX\ +is responsible for all spacing when in maths mode, and +(as in paragraphing mode) you have to specially ask to have +spacing changed. Even if \LaTeX\ does ignore all spaces +when in maths mode you should (as always in \TeX) still employ +spaces to keep your source file readable. +\end{enumerate} + +The above means that, at least for most material, a typist need +not understand the mathematics in order to typeset it correctly. +And even if one does understand the mathematics, \LaTeX\ is there to +make sure that you adhere to accepted typesetting conventions (whether +you were aware of their existence or not). + +So one could type either + +\moveright0.1\textwidth\vbox{ +\footnotesize\begin{verbatim} +$f(x, y) = 2 (x+ y)y/(5xy - 3 )$ +\end{verbatim} + +\noindent{\normalsize or} + +\begin{verbatim} +$f(x,y) = 2(x+y)y / (5xy-3)$ +\end{verbatim} +} +\noindent and you'd still get the correct result +$$f(x,y) = 2(x+y)y / (5xy-3)\quad.$$ + +There are some places where this can go wrong. For instance, +if we wish to speak of the $x$-$y$ plane then one has to know +that it is an {\em endash\/} that is supposed to be placed between +the $x$ and the $y$, not a minus sign (as \verb@$x-y$@ would produce). +But typing \verb@$x--y$@ will produce $x--y$ since both dashes are +interpreted as minus signs. +To avoid speaking of the $x-y$ plane or the $x--y$ plane, we should type +it as \verb@the $x$--$y$ plane@. We are fortunate that \LaTeX\ +can recognise and cope with by far the majority of our mathematical +typesetting needs. + +Another thing to look out for is the use of braces in an expression. +Typing + +\moveright0.1\textwidth\vbox{ +\footnotesize\begin{verbatim} +${x : f(x)>0}$ +\end{verbatim} +} +\noindent will not produce any braces. This is because, as we well +know, braces are reserved for delimiting groups in the input file. +Looking back to section~\ref{sec:reserved}, we see how it should be done: + +\moveright0.1\textwidth\vbox{ +\footnotesize\begin{verbatim} +$ \{ x: f(x)>0 \} $ +\end{verbatim} +} + +Math shift commands also behave as scope delimiters, so that +commands issued in an expression cannot affect anything else in +a document. + +\section{Displaying a formula}\label{sec:display} +\LaTeX\ considers an expression \verb@$ ... $@ to be word-like in the +sense that it considers it to be eligible for splitting across lines +of a paragraph (but without hyphenation, of course). \LaTeX\ assigns +quite a high penalty to doing this, thus trying to avoid it (remember +that \LaTeX\ tries to minimize the ``badness'' of a paragraph). +When there is no other way, it will split the expression at a suitable place. +But there are some expressions which are just too long to fit into the +running text without looking awkward. These are best ``displayed'' on +a line by themselves. Also, some expressions are sufficiently important +that they should be made to stand out. These, too, should be displayed +on a line of their own. + +The mechanism for displaying an expression is the {\em display math\/} +mode, which is begun by typing \verb@$$@ and ended by typing the same +sequence (which again means that we'd better be sure to type them in pairs). +Corresponding to the alternatives \verb@\(@ and \verb@\)@ that we had +for the math shift character \verb@$@, we may use \verb@\[@ and +\verb@\]@ as the display-math shift sequences. One can also +use the environment + +\moveright0.1\textwidth\vbox{% +\footnotesize\begin{verbatim} +\begin{displaymath} ... \end{displaymath} +\end{verbatim} +} +\noindent which is equivalent to \verb@$$ ... $$@ and is suitable for +use with long displayed expressions. If you wish \LaTeX\ +to number your equations for you you can use the environment + +\moveright0.1\textwidth\vbox{ +\footnotesize\begin{verbatim} +\begin{equation} ... \end{equation} +\end{verbatim} +} +\noindent which is the same as the \verb@displaymath@ environment, except that +an equation number will be generated. + +It is poor style to have a displayed expression either begin a paragraph +or be a paragraph by itself. This can be avoided if you agree to +{\em never leave a blank line in your input file before a math display}. + +We will see later how to typeset an expression that is to span +multiple lines. For now, let's look at an example of displaying +an expression: + +\moveright0.1\textwidth\vbox{% +\footnotesize\begin{verbatim} +For each $a$ for which the Lebesgue-set $L_a(f) \neq \emptyset$ we define +$$ % We could have used \begin{displaymath} here +{\cal B}_a(f) = \{ L_{a+r}(f) : r > 0 \}, +$$ % and \end{displaymath} here +and these are easily seen to be completely regular. +\end{verbatim}} +\noindent which produces + +\result{ +For each $a$ for which the Lebesgue-set $L_a(f) \neq \emptyset$ we define +$$ +{\cal B}_a(f) = \{ L_{a+r}(f) : r > 0 \}, +$$ +and these are easily seen to be completely regular. +} + +That illustrates how to display an expression, but also shows that +we've got a lot more to learn about mathematical typesetting. Before +we have a look at how to arrange symbols all over the show (e.g.\ +the subscripting above) we must learn how to access the multitude +of symbols that are used in mathematical texts. + +\section{Using mathematical symbols}\label{sec:symbols} +\LaTeX\ puts all the esoteric symbols of mathematics at +our fingertips. They are all referenced by name, with the naming system +being perfectly logical and systematic. None of the control words that +access these symbols accepts an argument, but we'll soon see that +some of them prepare \LaTeX\ for something that might follow. For instance, +when you ask for the symbol `$\sum$' \LaTeX\ is warned that any sub- or +superscripts that follow should be positioned appropriately as limits +to a summation. In keeping +with the \TeX\ spirit, none of this requires any additional work on your +part. + +We'll also see that some of the symbols behave differently depending on +where they are used. For instance, when I ask for $\sum_{i=1}^{n}a_i$ within +the running text, the limits are places differently to when I ask +for that expression to be displayed: +$$\sum_{i=1}^{n}a_i\quad.$$ +Again, I typed nothing different here---just asked for display math mode. + +It is important to note that {\em almost all of the special maths symbols are +unavailable in ordinary paragraphing mode}. If you need to use one there, +then use an in-line math expression \verb@$...$@. + +\subsection{Symbols available from the keyboard} +A small percentage of the available symbols can be obtained from just +a single key press. They are $+$ $-$ $=$ $<$ $>$ $|$ $/$ $($ $)$ +$[$ $]$ and $*$. Note that these must be typed {\em within maths mode\/} +to be interpreted as math symbols. + +Of course, all of $a$--$z$, $A$--$Z$, the numerals $0, 1, 2, \ldots, 9$ and +the punctuation characters $,$ $;$ and $:$ are available directly from the keyboard. +Alphabetic letters will be assumed to be variables that are to be +italicised, unless told otherwise\footnote{See section \ref{sec:mathtext}}. +The numerals receive no special attention, appearing precisely as in +normal paragraphing mode. The punctuation symbols +are still set in standard roman type when read in maths mode, but a little +space is left after them so that expressions like $\{x_i : i=1,2,\ldots,10\}$ +look like they should. Note that this means that normal sentence punctuation +should not migrate into an expression. + +\subsection{Greek letters} + +\newcommand{\ds}[1]{$\csname#1\endcsname$ & \tt\bs #1 } +\newcommand{\dsf}[4]{\ds{#1}&\ds{#2}&\ds{#3}&\ds{#4}} +\newcommand{\dst}[3]{\ds{#1}&\ds{#2}&\ds{#3}} + +Tables \ref{tab:lgreek} and \ref{tab:ugreek} show the control sequences that produce the +letters of the Greek alphabet. We see that a lowercase Greek letter +is simply is accessed by typing the control word of the same name +as the symbol, using all lowercase letters. To obtain an uppercase +Greek letter, simply capitalise the {\em first\/} letter of its name. + +Just as \verb@$mistake$@ produces $mistake$ because the letters +are interpreted as variables, so too will \verb@$\tai \epsilon \chi$@ +produce the incorrectly spaced $\tau \epsilon \chi$ if you try to +type greek words like this. \TeX\ can be taught to set Greek, but +this is not the way. $\tau\!\epsilon\!\chi$, % and nor is this +incidentally, is the Greek word for ``art'' and it is from the initials of the +Greek letters constituting this word that the name \TeX\ was derived. +\TeX\ is ``the art of typesetting''. + +\begin{table}[thbp] +\centering\footnotesize +\begin{tabular}{llllllll} +\dsf{alpha}{beta}{gamma}{delta}\\ +\dsf{epsilon}{varepsilon}{zeta}{eta}\\ +\dsf{theta}{vartheta}{iota}{kappa}\\ +\dsf{lambda}{mu}{nu}{xi}\\ +\dsf{pi}{varpi}{rho}{varrho}\\ +\dsf{sigma}{varsigma}{tau}{upsilon}\\ +\dsf{phi}{varphi}{chi}{psi}\\ +\ds{omega} +\end{tabular} +\caption{\rm Lowercase Greek letters} +\label{tab:lgreek} +\end{table} + +\begin{table}[htbp] +\centering\footnotesize +\begin{tabular}{llllllll} +\dsf{Gamma}{Delta}{Theta}{Lambda}\\ +\dsf{Xi}{Pi}{Sigma}{Upsilon}\\ +\dst{Phi}{Psi}{Omega} +\end{tabular} +\caption{\rm Uppercase Greek letters} +\label{tab:ugreek} +\end{table} + +\subsection{Calligraphic uppercase letters} +The letters $\cal A, \ldots, \cal Z$ are available through use of the +style changing command \verb@\cal@. This command behaves like +the other style changing commands \verb@\em@, \verb@\it@, etc.\ +so its scope must be delimited as with them. Thus we can type + +\moveright0.1\textwidth\vbox{ +\footnotesize\begin{verbatim} +... for the filter $\cal F$ we have $\varphi({\cal F}) = \cal G$. +\end{verbatim} +} +\noindent to obtain + +\result{% +for the filter $\cal F$ we have $\varphi({\cal F}) = \cal G$. +} + +There is no need to tabulate all the calligraphic letters, since they +are all obtained by just a type style changing command. We will just +list them so that we can see, for reference purposes, what they all look like. +Here they are: + +\newcommand{\calf}[5]{\cal{#1}\cal{#2}\cal{#3}\cal{#4}\cal{#5}} +$$ % cos we're using AmSLaTeX, things have changed! +\calf{A}{B}{C}{D}{E}\calf{F}{G}{H}{I}{J}\calf{K}{L}{M}{N}{O} +\calf{P}{Q}{R}{S}{T}\calf{U}{V}{W}{X}{Y}\cal Z +$$ + +\subsection{Binary operators} +\LaTeX\ has been taught to recognise binary operators and set the +appropriate space either side of one---i.e., it sets the first +argument followed by a little space, then the operator followed +by the same little space and finally the second argument. +Table~\ref{tab:binops} shows the binary operators that are available +via \LaTeX\ control words (recall that the binary operators $+$, +$-$, and $*$ can be typed from the keyboard). Here are some examples of their use: + +\begin{mathegs} +\verb@$a+b$@ & $a+b$\\ +\verb@$(a+b) \ otimes c$@ & $(a+b)\otimes c$\\ +\verb@$(a \vee b) \wedge c$@ & $(a \vee b)\wedge c$\\ +\verb@$X - (A \cap B) = (X-A) \cup (X-B)$@ & $X - (A \cap B) = (X-A) \cup (X-B)$ +\end{mathegs} + +\begin{table} +\centering\footnotesize +\begin{tabular}{llllllll} +\dsf{pm}{cap}{diamond}{oplus}\\ +\dsf{mp}{cup}{bigtriangleup}{ominus}\\ +\dsf{times}{uplus}{bigtriangledown}{otimes}\\ +\dsf{div}{sqcap}{triangleleft}{oslash}\\ +\dsf{ast}{sqcup}{triangleright}{odot}\\ +\dsf{star}{vee}{wedge}{bigcirc}\\ +\dsf{dagger}{setminus}{amalg}{circ}\\ +\dsf{ddagger}{cdot}{wr}{bullet} +\end{tabular} +\caption{\rm Binary Operation Symbols} +\label{tab:binops} +\end{table} + +\subsection{Binary relations} +\LaTeX\ has been taught to recognize the use of binary relations, too. +Table~\ref{tab:binrels} shows those available via \LaTeX\ control words. +There are a few that you can obtain directly from the keyboard: +$<$, $>$, $=$, and $|$. + +To negate a symbol you can precede the control word that gives the symbol +by a \verb@\not@. Some symbols come with ready-made negations, which +should be used above the \verb@\not@'ing method because the slope of the +negating line is just slightly changed to look more pleasing. +Thus \verb@\notin@ should be used above \verb@\not\in@, and +\verb@\neq@ should be used above \verb@\not =@. + +If negating a symbol produces a slash whose horizontal positioning +is not to your liking, then use the math spacing characters described +in section~\ref{sec:mathspace} to adjust it. + + +\begin{table}[htbp] +\centering\footnotesize +\begin{tabular}{llllllll} +\dsf{leq}{geq}{equiv}{models}\\ +\dsf{prec}{succ}{sim}{perp}\\ +\dsf{preceq}{succeq}{simeq}{mid}\\ +\dsf{ll}{gg}{asymp}{parallel}\\ +\dsf{subset}{supset}{approx}{bowtie}\\ +\ds{subseteq} & \ds{supseteq}& \ds{cong} & $\bowtie$ & \tt\bs Join\\ % lazy? +\dsf{sqsubset}{sqsupset}{neq}{smile}\\ +\dsf{sqsubseteq}{sqsupseteq}{doteq}{frown}\\ +\dst{in}{ni}{propto}\\ +\ds{vdash} & \ds{dashv} +\end{tabular} +\caption{\rm Binary relations} +\label{tab:binrels} +\end{table} + +\subsection{Miscellaneous symbols} +Table~\ref{tab:miscsym} shows a number of general-purpose symbols. +Remember that these are only available in maths mode. Note that +\verb@\imath@ and \verb@\jmath@ should be used when you need to +accent an $i$ or a~$j$ in maths mode\footnote{See section \ref{sec:mathacc}}% +---you cannot use \verb@\i@ or \verb@\j@ that were available in +paragraphing mode. To get a prime symbol, you can use \verb@\prime@ +or you can just type \verb@'@ when in maths mode, as in +\verb@$f''(x)=x$@ which produces $f''(x)=x$. + +\begin{table}[htbp] +\centering\footnotesize +\begin{tabular}{llllllll} +\dsf{aleph}{prime}{forall}{infty}\\ +\dsf{hbar}{emptyset}{exists}{Box}\\ +\dsf{imath}{nabla}{neg}{triangle}\\ +\dsf{jmath}{surd}{flat}{triangle}\\ +\dsf{ell}{top}{natural}{clubsuit}\\ +\dsf{wp}{bot}{sharp}{diamondsuit}\\ +\dsf{Re}{|}{backslash}{heartsuit}\\ +\dsf{Im}{angle}{partial}{spadesuit}\\ +\ds{mho} +\end{tabular} +\caption{\rm Miscellaneous symbols} +\label{tab:miscsym} +\end{table} + +\subsection{Arrow symbols} + +\LaTeX\ has a multitude of arrow symbols, which it will set the correct +space around. Note that vertical arrows can all be used as +delimiters---see section~\ref{sec:delims}. The available symbols +are listed in table~\ref{tab:arrows}. + +\begin{table}[htbp] +\centering\footnotesize +\begin{tabular}{llllll} +\dst{leftarrow}{longleftarrow}{uparrow}\\ +\dst{Leftarrow}{Longleftarrow}{Uparrow}\\ +\dst{rightarrow}{longrightarrow}{downarrow}\\ +\dst{Rightarrow}{Longrightarrow}{Downarrow}\\ +\dst{leftrightarrow}{longleftrightarrow}{updownarrow}\\ +\dst{Leftrightarrow}{Longleftrightarrow}{Updownarrow}\\ +\dst{mapsto}{longmapsto}{nearrow}\\ +\dst{hookleftarrow}{hookrightarrow}{searrow}\\ +\dst{leftharpoonup}{rightharpoonup}{swarrow}\\ +\dst{leftharpoondown}{rightharpoondown}{nwarrow}\\ +\ds{rightleftharpoons} & \ds{leadsto} +\end{tabular} +\caption{\rm Arrow symbols} +\label{tab:arrows} +\end{table} + +\subsection{Expression delimiters}\label{sec:delims} +A pair of delimters often enclose an expression, as in +$$ +\left[\begin{array}{cc} +a_{11} & a_{12} \\ +a_{21} & a_{22} +\end{array}\right] +\mbox{\quad and\quad} +f(x) = \left\{ \begin{array}{ll} +x & \mbox{if } x < 1 \\ +x^2 & \mbox{if } x \geq 1 +\end{array}\right. +\quad.$$ +\LaTeX\ will scale delimiters to the correct size (determined by what +they enclose) for you, if you ask it to. There are times when you don't +want a delimiter to be scaled, so it is left up to you to ask for +scaling. + +To ask that a delimter be scaleable, you precede it by +\verb@\left@ or \verb@\right@ according as it is the left or right +member of the pair. Scaled delimiters must be balanced correctly. +It sometimes occurs, as in the right-hand example above, that only +one member of a delimiting pair is to be visible. For this purpose, +use the commands \verb@\left.@ and \verb@\right.@ which will produce +no visible delimiter but can be used to correctly balance the +delimiters in an expression. For examples of the use of delimiters, +see section~\ref{sec:arrays} where we learn about arrays. + +Table~\ref{tab:delims} shows the symbols that \LaTeX\ will +recognise as delimiters, i.e.\ symbols that may follow +a \verb@\left@ or a \verb@\right@. Note that you have to +use \verb@\left\{@ and \verb@\right\}@ in order to get +scaled braces. + +\begin{table}[htbp] +\centering\footnotesize +\begin{tabular}{llllll} +$($ & \makebox[90pt][l]{(} & $)$ & \makebox[90pt][l]{)} & $\uparrow$ & \makebox[90pt][l]{\tt\bs uparrow}\\ +$[$ & ] & $]$ & ] & $\downarrow$ & \tt\bs downarrow\\ +$\{$ & \verb@\{@ & $\}$ & \verb@\}@ & $\updownarrow$ & \tt\bs updownarrow\\ +\dst{lfloor}{rfloor}{Uparrow}\\ +\dst{lceil}{rceil}{Downarrow}\\ +\dst{langle}{rangle}{Updownarrow}\\ +$/$ & / & \ds{backslash}\\ +$|$ & | & \ds{|} +\end{tabular} +\caption{\rm Delimiters} +\label{tab:delims} +\end{table} + +\subsection{Operators like $\displaystyle\int$ and $\displaystyle\sum$} +These behave differently when used in display-math mode as +compared with in-text math mode. When used in text, they +will appear in their small form and any limits provided will +be set so as to reduce the overall height of the operator, +as in $\sum_{i=1}^{N}f_i$. When used in display-math mode, \LaTeX\ +will choose to use the larger form and will not try to +reduce the height of the operator, as in +$$ +\sum_{i=1}^{N} f_i \quad . +$$ + +Table~\ref{tab:bigops} describes what variable-size symbols are +available, showing both the small (in text) and the large (displayed) +form of each. In section~\ref{sec:subsup} we will learn how to +place limits on these operators. + +\begin{table}[htbp] +\centering\footnotesize +\newcommand{\od}[1]{\makebox[27pt]{$\csname#1\endcsname\hfil\displaystyle\csname#1\endcsname$} & \tt\bs #1} +\newcommand{\odt}[3]{\od{#1} & \od{#2} & \od{#3}} +\begin{tabular}{ll@{\hspace{1.5cm}}ll@{\hspace{1.5cm}}ll} +\odt{sum}{bigcap}{bigodot}\\ +\odt{prod}{bigcup}{bigotimes}\\ +\odt{coprod}{bigsqcup}{bigoplus}\\ +\odt{int}{bigvee}{biguplus}\\ +\od{oint} & \od{bigwedge} +\end{tabular} +\caption{\rm Variable-sized symbols} +\label{tab:bigops} +\end{table} + +\subsection{Accents}\label{sec:mathacc} +The accenting commands that we learned for paragraphing mode do not +apply in maths mode. Consult table~\ref{tab:mathacc} to see how +to accent a symbol in maths mode (all the examples there accent +the symbol $u$, but they work with any letter). Remember that $i$ and $j$ +should lose their dots when accented, so \verb@\imath@ and +\verb@\jmath@ should be used. + +There also exist commands that give a ``wide hat'' or a +``wide tilde'' to their argument, \verb@\widehat@ and +\verb@\widetilde@. + +\begin{table}[htbp] +\centering\footnotesize +\newcommand{\da}[1]{$\csname#1\endcsname{u}$ & \tt\bs #1\{u\}} +\newcommand{\daf}[4]{\da{#1} & \da{#2} & \da{#3} & \da{#4}} +\begin{tabular}{llllllll} +\daf{hat}{acute}{bar}{dot}\\ +\daf{check}{grave}{vec}{ddot}\\ +\da{breve} & \da{tilde} +\end{tabular} +\caption{\rm Math accents} +\label{tab:mathacc} +\end{table} + +\section{Some common mathematical structures} +In this section we shall begin to learn how to manipulate +all the symbols listed in section~\ref{sec:symbols}. +Indeed, by the end of this section we'll be able to typeset +some quite large expressions. In the section following +this we will learn how use various alignment environments +that allow us to prepare material like multi-line expressions +and arrays. + +\subsection{Subscripts and superscripts}\label{sec:subsup} +Specifying a sub- or superscript is as easy as you'd hope---% +you just give an indication that you want a sub- or superscript +to the last expression and provide the material to be +placed there, and \LaTeX\ will position things correctly. +So sub- and superscripting a single symbol, an operator, or a big +array all involve the same input, and \LaTeX\ places the material +according to what the expression is that is being sub- or superscripted: +$$ +x^2\quad,\quad \prod_{i=1}^{N}X_i \quad,\quad +\left[\begin{array}{ccc} +a_{11} & a_{12} & a_{13}\\ +a_{21} & a_{22} & a_{23}\\ +a_{31} & a_{32} & a_{33} +\end{array}\right]^2 +\quad.$$ + +To tell \LaTeX\ that you want a single character set as a superscript +to the last expression, you just type a \verb@^@ before it. The +``last expression'' is the preceding group or, if there is no preceding +group, the single character or symbol that the \verb@^@ follows: + +\begin{mathegs} +\verb@$x^2$@ & $x^2$\\ +\verb@$a^b$@ & $a^b$\\ +\verb@$Y^X$@ & $Y^X$\\ +\verb@$\gamma^2$@ & $\gamma^2$\\ +\verb@$(A+B)^2$@ & $(A+B)^2$\\ +\verb@$\left[ \frac{x^2+1}{x^2 + y^2} \right]^n$@ & $\left[ \frac{x^2+1}{x^2 + y^2} \right]^n$ +\end{mathegs} + +Subscripts of a single character are equally easy---you just use +the underscore character \verb@_@ where you used \verb@^@ for +superscripting: + +\begin{mathegs} +\verb@$x_2$@ & $x_2$\\ +\verb@$x_i$@ & $x_i$\\ +\verb@$\Gamma_1(x)$@ & $\Gamma_1(x)$ +\end{mathegs} + +%part 4 of 4 +Now let's see how to set a sub- or superscript that consists of more than +just one character. This is no more difficult than before if we remember +the following rule: {\em \verb@_@ and \verb@^@ set the group that +follows them as a sub- and superscripts to the group that precedes +the sub- and superscript symbols.} We see now now that our initial examples worked by considering a single +character to be a group by itself. Here are some examples: + +\begin{mathegs} +\verb@$a^2b^3$@ & $a^2b^3$\\ +\verb@$2^{21}$@ & $2^{21}$\\ +\verb@$2^21$@ & $2^21$\\ +\verb@$a^{x+1}$@ & $a^{x+1}$\\ +\verb@$a^{x^2+1}$@ & $a^{x^2+1}$\\ +\verb@$(x+1)^3$@ & $(x+1)^3$\\ +\verb@$\Gamma_{\alpha\beta\gamma}$@ & $\Gamma_{\alpha\beta\gamma}$\\ +\verb@${}_1A_2$@ & ${}_1A_2$\\ +\end{mathegs} + +In the very last example we see a case of setting a subscript to +an empty group, which +resulted in a kind of ``pre-subscript''. With some imagination this +can be put to all sorts of uses. + +In all of the above examples the sub- and superscripts were set +to single-character groups. Nowhere did we group an expression +before sub- or superscripting it. Even in setting the expression +$(x+1)^3$, the superscript ${}^3$ was really only set to the +character $)$. If we had wanted to group the $(x+1)$ before +setting the superscript, we would have typed \verb@${(x+1)}^3$@ which +gives ${(x+1)}^3$, with the superscript slightly raised. One has +to go to this trouble because, to most people, something like +$(x^a)^b$ is just as acceptable and as readable as ${(x^a)}^b$. +It also has the advantage of aligning the base lines in expressions +such as +$$ +(ab)^{-2} = [(ab)^{-1}]^2 = [b^{-1}a^{-1}]^2 = b^{-1}a^{-1}b^{-1}a^{-1} +$$ +which looks more pleasing than if we use additional grouping to force +$$ +{(ab)}^{-2} = {[{(ab)}^{-1}]}^2 = {[b^{-1}a^{-1}]}^2 = b^{-1}a^{-1}b^{-1}a^{-1}\quad, +$$ +and the latter has rather more braces in it that require balancing. + +Here are some more examples, showing how \LaTeX\ will set things just as we +want without any further work on our part: + +\begin{mathegs} +\verb@$x^{y^z}$@ & $x^{y^z}$\\ +\verb@$2^{(2^2)}$@ & $2^{(2^2)}$\\ +\verb@$2^{2^{2^{\aleph_0}}}$@ & $2^{2^{2^{\aleph_0}}}$\\ +\verb@$\Gamma^{z_c^d}$@ & $\Gamma^{z_c^d}$ +\end{mathegs} + +We can also make use of empty groups in order to stagger sub- and +superscripts to an expression, as in + +\moveright0.1\textwidth\vbox{ +\footnotesize\begin{verbatim} +$\Gamma_{\alpha\beta}{}^{\gamma}{}_\delta$ +\end{verbatim} +} +\noindent which will yield + +\result{% +$\Gamma_{\alpha\beta}{}^{\gamma}{}_\delta$ +} + +One can specify the sub- and superscripts to a group in any order, +but it is best to be consistent. The most natural order seems to +be to have subscripts first, but you may think otherwise. +It is also a good idea to always include your sub- and superscripts +in braces (i.e.\ make them a group), whether they consist of just +a single character or not. This enhances readability and also helps +avoid the unfortunate case where you believe that a particular control +word gives a single symbol yet it really is defined in terms of several. + +\subsection{Primes} +\LaTeX\ provides the control word \verb@\prime@ ($\prime$) for +priming symbols. Note that it is not automatically at the superscript +height, so that to get $f^\prime$ you would have to type + +\moveright0.1\textwidth\vbox{ +\footnotesize\begin{verbatim} +$f^\prime$ . +\end{verbatim} +} +\noindent To make lighter work of this, \LaTeX\ will interpret +a right-quote character as a prime if used in maths mode. +Thus we can type + +\moveright0.1\textwidth\vbox{ +\footnotesize\begin{verbatim} +$f'(g(x)) g'(x) h''(x)$ +\end{verbatim} +} +\noindent in order to get + +\noindent + +\result{% +$f'(g(x)) g'(x) h''(x)\quad.$ +} + +\subsection{Fractions} +\LaTeX\ provides the \verb@\frac@ command that accepts two +arguments: the numerator and the denominator (in that order). +Before we look at examples of its use, let us just note that many simple +in-text fractions are often better written in the form +$\mbox{\it num} / \!\mbox{\it den}$, as with $3/8$ which can be typed +as \verb@$3/8$@. This is also often the better form for +a fraction that occurs {\em within\/} some expression. + +\begin{mathegs} +\verb@$\frac{x+1}{x+2}$@ & $\displaystyle\frac{x+1}{x+2}$\\ +\verb@$\frac{1}{x^2+1}$@ & $\displaystyle\frac{1}{x^2+1}$\\ +\verb@$\frac{1+x^2}{x^2+y^2} + x^2 y$@ & $\displaystyle\frac{1+x^2}{x^2+y^2} + x^2 y$\\ +\verb@$\frac{1}{1 + \frac{x}{2}}$@ & $\displaystyle\frac{1}{1 + \frac{x}{2}}$\\ +\verb@$\frac{1}{1+x/2}$@ & $\displaystyle\frac{1}{1+x/2}$ +\end{mathegs} + +\subsection{Roots} +The \verb@\sqrt@ command accepts two arguments. The first, +and optional, argument specifies what order of root you desire +if it is anything other than the square root. The second, and +mandatory, argument specifies the expression that the root sign +should enclose: + +{\renewcommand{\arraystretch}{1.6} +\begin{mathegs} +\verb@$\sqrt{a+b}$@ & $\displaystyle\sqrt{a+b}$\\ +\verb@$\sqrt[5]{a+b}$@ & $\displaystyle\sqrt[5]{a+b}$\\ +\verb@$\sqrt[n]{\frac{1+x}{1+x^2}}$@ & $\displaystyle\sqrt[n]{\frac{1+x}{1+x^2}}$\\ +\verb@$\frac{\sqrt{x+1}} {\sqrt[3]{x^3+1}}$@ & $\displaystyle\frac{\sqrt{x+1}} {\sqrt[3]{x^3+1}}$ +\end{mathegs} +} + +\subsection{Ellipsis} +Simply typing three periods in a row will not give the correct +spacing of the periods if it is an ellipsis that is desired. So +\LaTeX\ provides the commands \verb@\ldots@ and \verb@\cdots@. +Centered ellipsis should be used between symbols like +$+$, $-$, $*$, $\times$, and $=$. Here are some examples: + +\begin{mathegs} +\verb@$a_1+ \cdots + a_n$@ & $a_1+ \cdots + a_n$\\ +\verb@$x_1 \times x_2 \times \cdots \times x_n$@ & $x_1 \times x_2 \times \cdots \times x_n$\\ +\verb@$v_1 = v_2 = \cdots = v_n = 0$@ & $v_1 = v_2 = \cdots = v_n = 0$\\ +\verb@$f(x_1,\ldots,x_n) = 0$@ & $f(x_1,\ldots,x_n) = 0$ +\end{mathegs} + +\subsection{Text within an expression}\label{sec:mathtext} +One can use the \verb@\mbox@ command to insert normal text into +an expression. This command forces \LaTeX\ temporarily out of +maths mode, so that its argument will be treated as normal text. +It's use is simple, but we must be wary on one count: remember that +\LaTeX\ ignores all space characters when in maths mode; so to +surround words in an expression that were placed by an +\verb@\mbox@ command by space you must include the space +in the \verb@\mbox@ argument. + +\begin{mathegs} +\verb@$f_i(x) \leq 0 \mbox{ for } x \in I$@ & $f_i(x) \leq 0 \mbox{ for } x \in I$\\ +\verb@$\Gamma(n)=(n-1)! \mbox{ when $n$ is an integer}$@ & $\Gamma(n)=(n-1)! \mbox{ when $n$ is an integer}$ +\end{mathegs} + +In section~\ref{sec:mathspace} we'll learn of some special spacing commands +that can be used in math mode. These are often very useful in positioning +text within an expression, enhancing readability and logical layout. + +\subsection{Log-like functions} +There are a number of function names and operation symbols that should +be set in normal (roman) type in an expression, such as in +$$ +f(\theta) = \sin\theta + \log(\theta+1) - \sinh(\theta^2+1) +$$ +and +$$ +\lim_{h \rightarrow 0} \frac{\sin h}{h} = 1\quad. +$$ + +We know that simply typing \verb@$log\theta$@ would produce the +incorrect result +$$ +log\theta +$$ +and that using \verb@$\mbox{log}\theta$@ would leave us having to insert +a little extra space between the log and the $\theta$ +$$ +\mbox{log}\theta\quad. +$$ +So \LaTeX\ provides a collection of ``log-like functions'' defined +as control sequences. Table~\ref{tab:loglike} shows those that are +available. Here are some examples of their use: + +\begin{table}[tbp] +{\centering\footnotesize\tt +\begin{tabular}{llllllll} +\bs arccos & \bs cos & \bs csc &\bs exp & \bs ker & \bs limsup & \bs min & \bs sinh\\ +\bs arcsin & \bs cosh & \bs deg & \bs gcd & \bs lg & \bs ln & \bs Pr & \bs sup\\ +\bs arctan & \bs cot & \bs det & \bs hom & \bs lim & \bs log & \bs sec & \bs tan\\ +\bs arg & \bs coth & \bs dim & \bs inf & \bs liminf & \bs max & \bs sin & \bs tanh +\end{tabular}} +\caption{\rm Log-like functions} +\label{tab:loglike} +\end{table} + +\begin{mathegs} +\verb@$f(x)=\sin x + \log(x^2)$@ & $f(x)=\sin x + \log(x^2)$\\ +\verb@$\delta = \min \{ \delta_1, \delta_2 \}$@ & $\delta = \min \{ \delta_1, \delta_2 \}$\\ +\verb@$\chi(X) = \sup_{x\in X} \chi(x)$@ & $\chi(X) = \sup_{x\in X} \chi(x)$\\ +\verb@$\lim_{n \rightarrow \infty} S_n = \gamma$@ & $\lim_{n \rightarrow \infty} S_n = \gamma$ +\end{mathegs} + +Notice how \LaTeX\ does more than just set an operation like +sup in roman type. It also knew where a subscript to that operator +should go. + +\subsection{Over- and Underlining and bracing} +The \verb@\underline@ command will place an unbroken line +under its argument, and the \verb@\overline@ command will place +an unbroken line over its argument. These two commands can also +be used in normal paragraphing mode (but be careful: \LaTeX\ will +not break the line within an under- or overlined phrase, so don't +go operating on large phrases). + +You can place horizontal braces above or below an expression +by making that expression the argument of \verb@\overbrace@ +or \verb@\underbrace@. You can place a label on an overbrace +(resp.\ underbrace) by superscripting (resp.\ subscripting the +group defined by the bracing command. + +\begin{mathegs} +\verb@$\overline{a+bi} = a- bi$@ & $\overline{a+bi} = a- bi$\\ +\verb@$\overline{\overline{a+bi}} = a+bi$@ & $\overline{\overline{a+bi}} = a+bi$\\ +\end{mathegs} + +And some examples of horizontal bracing: + +\moveright0.1\textwidth\vbox{ +\footnotesize\begin{verbatim} +$A^n=\overbrace{A \times A \times \ldots \times A}^{\mbox{$n$ terms}}$ + +$\forall x \underbrace{\exists y (y \succ x)}_{\mbox{scope of $\forall$}}$ +\end{verbatim} +} +\noindent will produce +$$A^n=\overbrace{A \times A \times \ldots \times A}^{\mbox{$n$ terms}}$$ +and +$$\forall x \underbrace{\exists y (y \succ x)}_{\mbox{scope of $\forall$}}$$ + +\subsection{Stacking symbols} +\LaTeX\ allows you to set one symbol above another through the +\verb@\stackrel@ command. This command accepts two arguments, +and sets the first centrally above the second. + +\begin{mathegs} +\verb@$X \stackrel{f^*}{\rightarrow}Y$@ & $X \stackrel{f^*}{\rightarrow}Y$\\ +\verb@$f(x) \stackrel{\triangle}{=} x^2 + 1$@ & $f(x) \stackrel{\triangle}{=} x^2 + 1$ +\end{mathegs} + +\subsection{Operators; Sums, Integrals, etc.} +Each of the operation symbols in table~\ref{tab:bigops} can occur +with limits. They are specified as sub- and superscripts to the +operator, and \LaTeX\ will position them appropriately. In an in-text +formula they will appear in more-or-less the usual scripting positions; +but in a displayed formula they will be set below and above the +symbol (which will also be a little larger). The following should +give you an idea of how to use them: + +\begin{mathegs} +\verb@$\sum_{i=1}^{N} a_i$@ & $\sum_{i=1}^{N} a_i$\\ +\verb@$\int_a^b f$@ & $\int_a^b f$\\ +\verb@$\oint_{\cal C}f(x)\,dx$@ & $\oint_{\cal C}f(x)\,dx$\\ +\verb@$\prod_{\alpha \in A} X_\alpha$@ & $\prod_{\alpha \in A} X_\alpha$\\ +\verb@$\lim_{N\rightarrow\infty}\sum_{i=1}^{N}f(x_i)\Delta x_i$@ & $\lim_{N\rightarrow\infty}\sum_{i=1}^{N}f(x_i)\Delta x_i$ +\end{mathegs} + +We'll have more to say about the use of \verb@\,@ in section~\ref{sec:mathspace}. +Let's have a look at each of those expressions when displayed: + +$$ +\sum_{i=1}^{N} a_i\quad,\quad +\int_a^b f\quad,\quad +\oint_{\cal C}f(x)\,dx\quad,\quad +\prod_{\alpha \in A} X_\alpha\quad,\quad +\lim_{N\rightarrow\infty}\sum_{i=1}^{N}f(x_i)\Delta x_i +$$ + +\subsection{Arrays}\label{sec:arrays} + +The \verb@array@ environment is provided for typesetting arrays +and array-like material. It accepts two arguments, one optional +and one mandatory. The optional argument specifies the vertical +alignment of the array---use \verb@t@, \verb@b@, or \verb@c@ to align +the top, bottom, or centre of the array with the centreline of the +line it occurs on (the default being \verb@c@). The second argument +is as for the \verb@tabular@ environment: a series of \verb@l@, +\verb@r@, and \verb@c@'s that specify the number of columns and the +justification of these columns. The body of the \verb@array@ environment +uses the same syntax as the \verb@tabular@ environment to specify +the individual entries of the array. + +For instance the input + +\moveright0.1\textwidth\vbox{ +\footnotesize\begin{verbatim} +... let $A = \begin{array}{rrr} +12 & 3 & 4\\ +-2 & 1 & 0\\ +3 & 7 & 9 +\end{array}$ ... +\end{verbatim} +} +\noindent will produce the output + +\result{% +let $A = \left[\begin{array}{rrr} +12 & 3 & 4\\ +-2 & 1 & 0\\ +3 & 7 & 9 +\end{array}\right] +$} + +Note that we had to choose and supply the enclosing brackets +ourselves (they are not placed for us so that we can use the +\verb@array@ environment for array-like material; also, +we get to choose what type of brackets we want this way). +As in the \verb@tabular@ environment, the scope of a command +given inside a matrix entry is restricted to that entry. + +We can use ellipsis within arrays as in the following example: + +\moveright0.1\textwidth\vbox{ +\footnotesize\begin{verbatim} +\det A = \left| \begin{array}{cccc} +a_{11} & a_{12} & \cdots & a_{1n}\\ +a_{21} & a_{22} & \cdots & a_{2n}\\ +\vdots & \vdots & \ddots & \vdots\\ +a_{m1} & a_{m2} & \cdots & a_{mn} +\end{array} \right| +\end{verbatim} +} +\noindent which produces + +\result{% +$\det A = \left| \begin{array}{cccc} +a_{11} & a_{12} & \cdots & a_{1n}\\ +a_{21} & a_{22} & \cdots & a_{2n}\\ +\vdots & \vdots & \ddots & \vdots\\ +a_{m1} & a_{m2} & \cdots & a_{mn} +\end{array} \right|$ +} + + +The \verb@array@ environment is often used to typeset material that +is not, strictly speaking, an array: + +\moveright0.1\textwidth\vbox{ +\footnotesize\begin{verbatim} +f(x) = \left\{ \begin{array}{ll} + x & \mbox{for $x<1$}\\ +x^2 & \mbox{for $x \geq 1$} +\end{array} \right. +\end{verbatim} +} +\noindent which will yield + +\result{% +$f(x) = \left\{ \begin{array}{ll} + x & \mbox{for $x<1$}\\ +x^2 & \mbox{for $x \geq 1$} +\end{array} \right.$ +} + +\subsection{Changes to spacing}\label{sec:mathspace} +Sometimes \LaTeX\ needs a little help in spacing an expression, +or perhaps you think that the default spacing needs adjusting. +For these purposes we have the following spacing commands:\medskip + +\begin{tabular}{lllll} +\verb@\,@ & thin space & & \verb@\:@ & medium space\\ +\verb@\!@ & negative thin space && \verb@\;@ & thick space\\ +\verb@\quad@ & a quad of space && \verb@\qquad@ & two quads of space +\end{tabular}\medskip + +The spacing commands \verb@\,@, \verb@\quad@, and \verb@\qquad@ can +be used in paragraphing mode, too. Here are some examples of these +spacing commands used to make subtle modifications to some expressions. + +\begin{mathegs} +\verb@$\sqrt{2} \, x$@ & $\sqrt{2} \, x$\\ +\verb@$\int_a^b f(x)\,dx$@ & $\int_a^b f(x)\,dx$\\ +\verb@$\Gamma_{\!2}$@ & $\Gamma_{\!2}$\\ +\verb@$\int_a^b \! \int_c^d f(x,y)\,dx\,dy$@ & $\int_a^b \! \int_c^d f(x,y)\,dx\,dy$\\ +\verb@$x / \! \sin x$@ & $x / \! \sin x$\\ +\verb@$\sqrt{\,\sin x}$@ & $\sqrt{\,\sin x}$ +\end{mathegs} + +\section{Alignment} +Recall that the \verb@$equation$@ +environment can be used to display and automatically number a single-\ +line equation\footnote{See section \ref{sec:display}}. +The \verb@eqnarray@ environment is used for displaying +and automatically numbering either a single expression that spreads +over several lines or multiple expressions, while taking care of +alignment for us. The syntax is similar to that of the +\verb@tabular@ and \verb@array@ environments, except that no argument +is necessary to declare the number and justification of columns. The +\verb@eqnarray*@ environment does this without numbering any equations. + +\moveright0.1\textwidth\vbox{ +\footnotesize\begin{verbatim} +\begin{eqnarray} +(a+b)(a+b) & = & a^2 + 2ab + b^2\\ +(a+b)(a-b) & = & a^2 - b^2 +\end{eqnarray} +\end{verbatim} +} +\noindent will give + +\begin{eqnarray} +(a+b)(a+b) & = & a^2 + 2ab + b^2\\ +(a+b)(a-b) & = & a^2 - b^2 +\end{eqnarray} + +See how we identify the columns so as to line the $=$ signs up. +We can also leave entries empty, to obtain effect like the +following: + +\vbox{ +\footnotesize\begin{verbatim} +\begin{eqnarray*} +\frac{d}{dx} \sin x & = & \lim_{h\rightarrow0}\frac{\sin(x+h)-\sin x}{h}\\ +& = & \lim_{h\rightarrow0}\frac{\sin x\cos h + \cos x\sinh - \sin x}{h}\\ +& = & \lim_{h\rightarrow0}\frac{\sin x(\cos h-1)}{h} + \cos x\frac{\sin h}{h}\\ +& = & \cos x +\end{eqnarray*} +\end{verbatim} +} +\noindent which produces + +\begin{eqnarray*} +\frac{d}{dx} \sin x & = & \lim_{h\rightarrow0}\frac{\sin(x+h)-\sin x}{h}\\ +& = & \lim_{h\rightarrow0}\frac{\sin x\cos h + \cos x\sinh - \sin x}{h}\\ +& = & \lim_{h\rightarrow0}\left\{\frac{\sin x(\cos h-1)}{h} + \cos x\frac{\sin h}{h}\right\}\\ +& = & \cos x +\end{eqnarray*} + +\section{Theorems, Propositions, Lemmas, $\ldots$} +Suppose you document contains four kinds of theorem-like structures: +``theorems'', ``propositions'', ``conjectures'', and ``wild guesses''. +Then near the beginning of the document you should have something +like the following: + +\moveright0.1\textwidth\vbox{ +\footnotesize\begin{verbatim} +\newtheorem{thm}{Theorem} +\newtheorem{prop}{Proposition} +\newtheorm{conjec}{Conjecture} +\newtheorem{wildshot}{Hypothesis} % make it sound good! +\end{verbatim} +} + +\newtheorem{thm}{Theorem} +\newtheorem{prop}{Proposition} +\newtheorem{conjec}{Conjecture} +\newtheorem{wildshot}{Hypothesis} + +The first argument to \verb@\newtheorem@ defines a new +theorem-like environment name of your own choosing. The second argument +contains the text that you want inserted when your theorem is +proclaimed: + +\moveright0.1\textwidth\vbox{ +\footnotesize\begin{verbatim} +\begin{thm} $X$ is normal if, and only if, each pair of disjoint +closed sets in $X$ is completely separated. +\end{thm} + +\begin{wildshot} % remember, we chose the name 'wildshot' +The property of Moore extends to all objects of the class $\Sigma$. +\end{wildshot} +\end{verbatim} +} +\noindent which will produce the following: + +\begin{thm} $X$ is normal if, and only if, each pair of disjoint +closed sets in $X$ is completely separated. +\end{thm} + +\begin{wildshot} +The property of Moore extends to all objects of the class $\Sigma$. +\end{wildshot} + +Notice that \LaTeX\ italicises the theorem statement, and that you +still have to shift in to maths mode when you want to set symbols +and expression. Typically, it is the style file that determines +what a theorem will appear like---so don't go changing this if +you are preparing for submission for publication (because the journal +staff want to substitute their production style for your document style +choice, and not be over-ridden by other commands). + +\section{Where to from here?} +We have covered a good deal of \LaTeX's mathematical abilities, +albeit rather superficial coverage here and there. There is +much that has been impressive, but there is clearly a lot more +to {\TeX}nical typesetting than we have covered here---it is +not difficult to think of an expression that we don't yet know +how to typeset. Also, there are places where \LaTeX\ is a +little weak and it leaves us to do somewhat more work than +the spirit of \TeX\ would suggest. + +Of course, we cannot criticise \LaTeX\ until we know its full +capability. So the first place to go from here is the +{\em\LaTeX\ User's Guide \& Reference Manual}. Particularly, the +command reference guide in Appendix C of that book is an +invaluable source of \LaTeX\ information that few can afford to +do without. With good knowledge of the \LaTeX\ environments and their +options (and we've left out many here) one can accomplish a good +deal of most typesetting problems. A little imagination (say +putting an environment to a slightly non-standard use) can often +solve more difficult problems. Lastly, of course, much of +raw \TeX\ still sits underneath \LaTeX\ and so it is true to say that +you can do {\em anything\/} with \LaTeX---but you may need some +divine inspiration from time to time (ask your local \TeX\ guru). + +In the next chapter we will look, very briefly, at a number of +\LaTeX\ commands that we have not yet considered. Nothing +exciting on the mathematical front, but there is some other +important material (e.g.\ cross-referencing and page-sizing). +For now, let's look at the ``way forward'' with respect to +mathematical typesetting. + +\section{\AmSLaTeX} +Back in the introduction we said that \AmSLaTeX\ was just a big +macro package, the result of a marriage of \LaTeX\ and \AmSTeX\ +designed to endow the powerful general-purpose \LaTeX\ package with the +mathematical prowess of \AmSTeX\ without compromising the \LaTeX\ syntax. +Most of that is true, except that \AmSLaTeX\ is really just +a document-style option (like \verb@12pt@) that can be used within +a ``tweaked \LaTeX''. The most visible part of this tweak is the +{\em new font selection scheme of Mittelbach and Sch\"{o}pf}, +discussed more fully in the next chapter. Almost every +\LaTeX\ command and environment survived the transition to \AmSLaTeX, the +exceptions being those that were considered redundant or under-used (space +is at a premium with such a big package). +The tweaked \LaTeX\ package is therefore able to deal with practically +every existing \LaTeX\ document, giving just a few (often pleasant) +surprises. + +With the \verb@amstex@ style option, one can just start a \LaTeX\ +document with + +\moveright0.1\textwidth\vbox{ +\footnotesize\begin{verbatim} +\documentstyle[amstex]{article} % or report, book, etc +\end{verbatim} +} +\noindent to gain access to the {\TeX}nical excellence of the +AMS technical staff. It is not necessary to have read +{\em The Joy of \TeX} (the \AmSTeX\ reference guide) to +be able to use the \verb@amstex@ option, for \AmSLaTeX\ +comes with its own reference guide. Even so, +{\em The Joy of TeX\/} is still highly recommended reading. +The syntax of \AmSTeX\ has been changed to that of \LaTeX, +but one can perform that transformation as you read ``{\em Joy\/}'' +and still learn much of the art of technical typesetting. Nowhere +else will you find so comprehensive a coverage of the conventions +and pitfalls of mathematical typesetting. In addition, {\em Joy\/} +lists all the extra symbols that are available through the +\verb@amstex@ option (if you thought \LaTeX\ had a fair selection +of esoteric symbols, just wait 'til you see those!) and provides +in-depth accounts where the \AmSLaTeX\ documentation is brief. + +Just as \AmSTeX\ comes with the AMS preprint style +(\verb@amsppt@), \AmSLaTeX\ comes with a specialist style file for +preparation of articles with \AmSLaTeX\ for submission to journals: +\verb@amsart@. The \AmSLaTeX\ User's Guide is quite short and very +terse in its explanations (assuming you to be competent in \LaTeX), +but is supplemented by a large body of examples and a comprehensive +sample article that is a showcase of the abilities of the \verb@amsart@ +style. You must read both these documents to really +learn \AmSLaTeX. The AMS also distributes a guide to authors +who wish to submit using \AmSLaTeX, and this is a must-read once +you are familiar with some of \AmSLaTeX. + +\end{document} |