<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/css" href="../webstyle/mxh.css"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1 plus MathML 2.0//EN" "http://www.w3.org/Math/DTD/mathml2/xhtml-math11-f.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<link rel="stylesheet" type="text/css" href="../webstyle/mxh.css" />
<meta name="surtitle" content="GELLMU: Introductory User's Guide" />
<meta name="title" content="Introductory User's Guide to Regular GELLMU" />
<meta name="subtitle" content="Version 0.8.4 release, July&#xA0;2007" />
<meta name="author" content="William F. Hammond" />
<title>GELLMU: Introductory User's Guide</title>
</head>
<body>
<h1 class="display">Introductory User's Guide to <em>Regular</em> GELLMU</h1>
<h4 class="display">Version 0.8.4 release, July&#xA0;2007</h4>
<h2 class="display">William F. Hammond</h2>
<h4 class="display">
Dept. of Mathematics &amp; Statistics <br
/> University at Albany <br
/> Albany, New York 12222 (USA)</h4>
<h4 class="display">revision of July 6, 2007</h4>
<div class="tableofcontents">
<h3>Table of Contents</h3>
<dl class="tableofcontents">
<dd>1&#xA0;&#xA0;Introduction...&#xA0;<a href="#SU-1">*</a>
</dd><dd>
2&#xA0;&#xA0;First Steps...&#xA0;<a href="#SU-2">*</a>
<dl><dd>
2.1&#xA0;&#xA0;Acquiring and Installing...&#xA0;<a href="#SU-2.1">*</a>
</dd><dd>
2.2&#xA0;&#xA0;Writing an Article...&#xA0;<a href="#SU-2.2">*</a>
</dd></dl></dd><dd>
3&#xA0;&#xA0;Basic Markup Within Sentences...&#xA0;<a href="#SU-3">*</a>
</dd><dd>
4&#xA0;&#xA0;Sectioning...&#xA0;<a href="#SU-4">*</a>
</dd><dd>
5&#xA0;&#xA0;Lists...&#xA0;<a href="#SU-5">*</a>
</dd><dd>
6&#xA0;&#xA0;<em>Tabular</em> Environment Emulation...&#xA0;<a href="#SU-6">*</a>
</dd><dd>
7&#xA0;&#xA0;Labels, Cross References, and Anchors...&#xA0;<a href="#SU-7">*</a>
</dd><dd>
8&#xA0;&#xA0;Mathematics...&#xA0;<a href="#SU-8">*</a>
</dd><dd>
9&#xA0;&#xA0;Beyond this Introductory Guide...&#xA0;<a href="#SU-9">*</a>
</dd></dl>
</div>

<div class="section">
<h3>1.&#xA0;&#xA0;<a id="SU-1"></a><a id="intro"></a>Introduction</h3>

<p>Regular GELLMU is the part of the GELLMU Project under which
source language markup most closely resembles actual <em>LaTeX</em> source
markup.    Much of the markup vocabulary is the same as that of
actual <em>LaTeX</em>.    The differences &#x2014; and, indeed, the whole reason
for the GELLMU Project &#x2014; arises from the author's conclusion in
1998 that it would not be possible in a robust way to write rules
for actual <em>LaTeX</em> source markup so that the collection of documents
in the <em>article</em> document class prepared under such rules would
admit fully reliable automatic translation to other formats<sup><a id="revfnote1" href="#fnote1">1</a></sup>.  </p>

<p>The version 0.8 release of the GELLMU Project was the first
release providing an output stream for the XML form of HTML extended
by the World Wide Web Consortium's
<a href="http://www.w3.org/Math/">Mathematical Markup Language (MathML)</a>.
The driver script <kbd>mmkg</kbd> provides translations of regular GELLMU
articles to (1) actual <em>LaTeX</em> (and from there to DVI and
PDF), (2) classic HTML, and (3) XHTML+MathML, while the driver
script <kbd>mkg</kbd> omits XHTML+MathML.     Though the
PDF output may be read on a screen, it is intended primarily
for printing by end consumers.  </p>

<p>While one could provide a landscape version of the PDF output with
live anchors for screen consumption, the XHTML+MathML version
would still be superior for screen reading since, as with ordinary
HTML, the text is re-formatted to conform naturally both to
magnification and window-resizing actions by the end user.    The
quality of the rendering of mathematics in the XHTML+MathML
version is very nearly as good as that in the PDF version.  </p>

<p>Indeed the author, as an author, finds that the best venue for proof
reading what he writes is XHTML+MathML when displayed in a suitable web
browser<sup><a id="revfnote2" href="#fnote2">2</a></sup>
with larger than normal font size and narrower than normal
line length.  </p>

<p>Moreover, the XHTML+MathML version is fully compliant with the
<a href="http://www.w3.org/WAI/">Accessibility Guidelines</a> of the
<a href="http://www.w3.org/">World Wide Web Consortium</a>.  </p>

<p>This document is an introductory user guide.    The relation of regular
GELLMU to the GELLMU Project overall is explained in the <a href="glman.html">Manual</a>, and
advanced user information on regular GELLMU is found there as well.
This document covers fundamentals not mentioned in the manual.    It is
available in <a href="userdoc.pdf">PDF</a>, <a href="userdoc.xhtml">XHTML+MathML</a>,
and <a href="userdoc.html">classical HTML</a> versions.    Online copies of
this Introductory Guide and of the Manual may be found at
<a href="http://www.tex.ac.uk/tex-archive/help/Catalogue/entries/gellmu.html
">CTAN</a> and the <a href="http://www.albany.edu/~hammond/gellmu/">GELLMU web site</a>.  </p>

<p>To use this document as an example for learning refer to its
<a href="userdoc.glm">source markup</a> and to use the project manual
as an example refer to the
<a href="glman.glm">manual's source markup</a>.
</p>
</div>

<div class="section">
<h3>2.&#xA0;&#xA0;<a id="SU-2"></a><a id="firststeps"></a>First Steps</h3>

<div class="subsection">
<h4>2.1.&#xA0;&#xA0;<a id="SU-2.1"></a>Acquiring and Installing</h4>

<p>GELLMU is implemented as cross-platform free software licensed under
the GNU <a href="http://www.gnu.org/copyleft/">General Public
License</a>. Its package is available from the
<a href="http://www.ctan.org">Comprehensive TeX Archive Network</a> (CTAN)
and from the <a href="http://www.albany.edu/~hammond/gellmu/">GELLMU web site</a>.  </p>

<p>The package requires a number of other cross-platform free software
packages including GNU Emacs, <em>Perl</em>, and some standard items of
SGML/XML software, chiefly <em>Open SP</em>.    Locations may be
found in the <a href="glman.html#requiredsoftware">Manual (key &#x201C;<kbd>requiredsoftware</kbd>&#x201D;)</a>.  </p>

<p><b>Linux:</b> The required packages are generally part of a full
GNU/<em>Linux</em> distribution.    The package should be installed in
<kbd>/usr/local/gellmu</kbd> and symlinks to driver scripts should be
made from a suitable place in one's command path.  </p>

<p><b>MacOS-X and other Unix variants:</b> The only difference from
GNU/<em>Linux</em> is that some of the supporting packages may need
to be acquired and installed.  </p>

<p><b>MS Windows:</b> The best strategy is to acquire and install a
<b>full</b> <a href="http://www.cygwin.com/"><em>Cygwin</em></a> distribution.
Then proceed as with <em>Linux</em>.  </p>

<p>Additional information may be found in the <a href="glman.html">Manual</a>.
</p>
</div>

<div class="subsection">
<h4>2.2.&#xA0;&#xA0;<a id="SU-2.2"></a>Writing an Article</h4>

<p>The minimal form of a regular GELLMU article is this:</p>

<p></p>
<dl class="verblist">
<dd><kbd>
\documenttype{article}</kbd></dd>
<dd><kbd>
\title{Some&#xA0;title}</kbd></dd>
<dd><kbd>
&#xA0;</kbd></dd>
<dd><kbd>
\begin{document}</kbd></dd>
<dd><kbd>
&#xA0;</kbd></dd>
<dd><kbd>
First&#xA0;Paragraph.</kbd></dd>
<dd><kbd>
&#xA0;</kbd></dd>
<dd><kbd>
Second&#xA0;Paragraph.</kbd></dd>
<dd><kbd>
&#xA0;</kbd></dd>
<dd><kbd>
&#xA0;.&#xA0;.</kbd></dd>
<dd><kbd>
&#xA0;</kbd></dd>
<dd><kbd>
\end{document}</kbd></dd>
</dl>
<p></p>

<p>An article must begin with <kbd>\documenttype{article}</kbd>.    The initial
part of an article up to the required <kbd>\begin{document}</kbd> is the
article's <em>preamble</em>, and the rest of the article is the
article's <em>body</em>.  </p>

<p>Almost everything in the <em>body</em> of an article must be part of
a paragraph.    Most typically a paragraph is begun with a blank line.
Paragraphs themselves may be parts of sectional units.  </p>

<p>Beware special characters.    For example &#x2018;<kbd>%</kbd>&#x2019; converts the rest
of its line to comment status.    To use &#x2018;<kbd>%</kbd>&#x2019; in text write
&#x201C;<kbd>\%</kbd>&#x201D;.    The special characters are with small exceptions
the same as those in <em>LaTeX</em>.    Note, however, that in dealing with
multiple downstream formats any character that is not alpha-numeric
becomes potentially special.    Therefore, there is a named form for
every non-alphanumeric ASCII character.    For example,
&#x201C;<kbd>\tld;</kbd>&#x201D; is the name of ASCII &#x2018;<kbd>~</kbd>&#x2019;,
which is sometimes handy when forming a URL.<sup><a id="revfnote3" href="#fnote3">3</a></sup></p>

<p>The names of special characters may be found by browsing the SGML
document type definition in the file <kbd>gellmu.dtd</kbd> at the top of
the distribution tree.<sup><a id="revfnote4" href="#fnote4">4</a></sup>
</p>
</div>
</div>

<div class="section">
<h3>3.&#xA0;&#xA0;<a id="SU-3"></a><a id="sentences"></a>Basic Markup Within Sentences</h3>

<p>Although there is no markup for a sentence as a unit, there is markup
for the end of a sentence or a &#x201C;full stop&#x201D;.    The normal way to
indicate the end of a sentence is to use an ASCII period
&#x2018;<kbd>.</kbd>&#x2019;  followed by either a newline or two or more blank spaces.
An end of sentence is marked up as the SGML empty element <em>eos</em>.
This is automatically generated under the condition indicated above.
For most purposes it will not matter if an ASCII period is followed
by only a single blank space, but in that case no <em>eos</em> will be
generated.  </p>

<p>The foregoing paragraph provides several instances of markup within
sentences other than <em>eos</em>.    There are (1) a quoted phrase,
(2) two abbreviations, (3) a quoted character, and (4) two instances
of emphasized text.    The source for that paragraph is:</p>

<p></p>
<dl class="verblist">
<dd><kbd>
Although&#xA0;there&#xA0;is&#xA0;no&#xA0;markup&#xA0;for&#xA0;a&#xA0;sentence&#xA0;as&#xA0;a&#xA0;unit,&#xA0;there&#xA0;is&#xA0;markup</kbd></dd>
<dd><kbd>
for&#xA0;the&#xA0;end&#xA0;of&#xA0;a&#xA0;sentence&#xA0;or&#xA0;a&#xA0;``full&#xA0;stop''.&#xA0;&#xA0;The&#xA0;normal&#xA0;way&#xA0;to</kbd></dd>
<dd><kbd>
indicate&#xA0;the&#xA0;end&#xA0;of&#xA0;a&#xA0;sentence&#xA0;is&#xA0;to&#xA0;use&#xA0;an&#xA0;\abbr{ASCII}&#xA0;period</kbd></dd>
<dd><kbd>
\quochar{.}&#xA0;&#xA0;followed&#xA0;by&#xA0;either&#xA0;a&#xA0;newline&#xA0;or&#xA0;two&#xA0;or&#xA0;more&#xA0;blank&#xA0;spaces.</kbd></dd>
<dd><kbd>
An&#xA0;end&#xA0;of&#xA0;sentence&#xA0;is&#xA0;marked&#xA0;up&#xA0;as&#xA0;the&#xA0;\sgml&#xA0;empty&#xA0;element&#xA0;\emph{eos}.</kbd></dd>
<dd><kbd>
This&#xA0;is&#xA0;automatically&#xA0;generated&#xA0;under&#xA0;the&#xA0;condition&#xA0;indicated&#xA0;above.</kbd></dd>
<dd><kbd>
For&#xA0;most&#xA0;purposes&#xA0;it&#xA0;will&#xA0;not&#xA0;matter&#xA0;if&#xA0;an&#xA0;\ascii&#xA0;period&#xA0;is&#xA0;followed</kbd></dd>
<dd><kbd>
by&#xA0;only&#xA0;a&#xA0;single&#xA0;blank&#xA0;space,&#xA0;but&#xA0;in&#xA0;that&#xA0;case&#xA0;no&#xA0;\emph{eos}&#xA0;will&#xA0;be</kbd></dd>
<dd><kbd>
generated.</kbd></dd>
</dl>
<p></p>

<p>The <kbd>``full&#xA0;stop''</kbd> is a marked up quoted phrase.    The named form of a
quoted phrase is <em>quophrase</em>.    The markup <kbd>\quophrase{full&#xA0;stop}</kbd>
is the equivalent expanded form. An abbreviation is indicated with the
command <em>abbr</em>.    There is, of course, no requirement that an
abbreviation be marked up; it is merely good practice.  </p>

<p>The name of markup for emphasized text is <em>emph</em>.    A common
alternate form of emphasis is called <em>bold</em>.    One way the two
differ is that <em>emph</em> has order two effect, i.e., <em>emph</em>
within <em>emph</em> removes emphasis while <em>bold</em> is not permitted
within itself.    Note that <em><b>bold</b></em> may be emphasized.  </p>

<p>In the cited marked up text above the instances <kbd>\sgml</kbd> and <kbd>\ascii</kbd>
are user-defined <em>newcommands</em> occurring in the preamble (or at least
before the invocations):
</p>
<dl class="verblist">
<dd><kbd>
\newcommand{\ascii}{\abbr{ASCII}}</kbd></dd>
<dd><kbd>
\newcommand{\sgml}{\abbr{SGML}}</kbd></dd>
</dl>
<p>
The command <em>newcommand</em> is a meta-command in GELLMU source.
All <em>newcommand</em> instances are fully expanded by the syntactic
translator before it writes any output.  </p>

<p>The markup <kbd>\quochar{x}</kbd> produces a quoted character: in this case
&#x2018;<kbd>x</kbd>&#x2019;.    There is no compelling reason why <em>quophrase</em> could
not have been used instead of <em>quochar</em>, but it is customary in
technical documentation to use a different presentation style for
quoted characters than for quoted phrases.    Beyond that for
non-traditional forms of processing it can be very useful to provide
for semantic distinctions such as the distinction between a quoted
phrase in normal discourse and a quoted string in technical discourse.
More particularly, it is significant that in some languages for
computer programming there is an important distinction between a
character and a string of unit length.    Some of the markup commands
useful with technical documentation are
</p>
<div class="display"><table class="gdisplay"><tbody><tr><td>
<table><tbody>
<tr><td align="left"><b>command</b></td><td align="left"><b>example in source</b></td><td align="left"><b>example rendered</b></td></tr
><tr><td align="left"><em>quochar</em></td><td align="left"><kbd>use&#xA0;\quochar{\%}&#xA0;to&#xA0;comment</kbd></td><td align="left">use &#x2018;<kbd>%</kbd>&#x2019; to comment</td></tr
><tr><td align="left"><em>quostr</em></td><td align="left"><kbd>\quostr{unsigned&#xA0;long&#xA0;num;}</kbd></td><td align="left"><kbd>unsigned long num;</kbd></td></tr
><tr><td align="left"><em>qquostr</em></td><td align="left"><kbd>type&#xA0;\qquostr{done}&#xA0;to&#xA0;exit</kbd></td><td align="left">type &#x201C;<kbd>done</kbd>&#x201D; to exit</td></tr
><tr><td align="left"><em>path</em></td><td align="left"><kbd>\path{C:\bsl;TEX\bsl;TEXMF}</kbd></td><td align="left"><kbd>C:\TEX\TEXMF</kbd></td></tr
><tr><td align="left"><em>urlanch</em></td><td align="left"><kbd>see&#xA0;\urlanch{userdoc.glm}&#xA0;&#xA0;</kbd></td><td align="left">see <a href="userdoc.glm"><kbd>userdoc.glm</kbd></a></td></tr
></tbody></table>
</td></tr></tbody></table></div>
<p>
With regular <em>LaTeX</em> standard practice is to use <em>texttt</em> for the
examples just cited involving <em>quochar</em>, <em>quostr</em>,
<em>path</em>, and, apart from web-related considerations,
<em>urlanch</em>.    The name <em>url</em> has been used variously in
regular <em>LaTeX</em>; therefore, <em>url</em> has not been introduced as a
name in regular GELLMU so that an author may safely use it, if
desired, as a macro name.
</p>
</div>

<div class="section">
<h3>4.&#xA0;&#xA0;<a id="SU-4"></a><a id="sectioning"></a>Sectioning</h3>

<p>Unless one wants fancy non-default behavior, one may provide
sections, subsections, and subsubsections as in <em>LaTeX</em>.    Thus,
for example,</p>

<p></p>
<dl class="verblist">
<dd><kbd>
\documenttype{article}</kbd></dd>
<dd><kbd>
\title{Some&#xA0;title}</kbd></dd>
<dd><kbd>
&#xA0;</kbd></dd>
<dd><kbd>
\begin{document}</kbd></dd>
<dd><kbd>
&#xA0;</kbd></dd>
<dd><kbd>
\section{Title&#xA0;of&#xA0;first&#xA0;section}</kbd></dd>
<dd><kbd>
First&#xA0;Paragraph.</kbd></dd>
<dd><kbd>
&#xA0;</kbd></dd>
<dd><kbd>
Second&#xA0;Paragraph.</kbd></dd>
<dd><kbd>
&#xA0;</kbd></dd>
<dd><kbd>
&#xA0;.&#xA0;.</kbd></dd>
<dd><kbd>
&#xA0;</kbd></dd>
<dd><kbd>
\section{Title&#xA0;of&#xA0;second&#xA0;section}</kbd></dd>
<dd><kbd>
First&#xA0;Paragraph.</kbd></dd>
<dd><kbd>
&#xA0;</kbd></dd>
<dd><kbd>
Second&#xA0;Paragraph.</kbd></dd>
<dd><kbd>
&#xA0;</kbd></dd>
<dd><kbd>
&#xA0;.&#xA0;.</kbd></dd>
<dd><kbd>
&#xA0;</kbd></dd>
<dd><kbd>
\end{document}</kbd></dd>
</dl>
<p></p>

<p>With this style of markup one does not indicate the end of a section
although there is a way described in the <a href="glman.html#secusage">Manual (key &#x201C;<kbd>secusage</kbd>&#x201D;)</a> to gain finer
control over sectional units.
</p>
</div>

<div class="section">
<h3>5.&#xA0;&#xA0;<a id="SU-5"></a><a id="lists"></a>Lists</h3>

<p>As with <em>LaTeX</em> GELLMU <em>article</em> provides lists with the
names <em>description</em>, <em>enumerate</em>, and <em>itemize</em>.
For example, the markup
</p>
<dl class="verblist">
<dd><kbd>
\begin{enumerate}</kbd></dd>
<dd><kbd>
\item&#xA0;bird</kbd></dd>
<dd><kbd>
\item&#xA0;cat</kbd></dd>
<dd><kbd>
\item&#xA0;dog</kbd></dd>
<dd><kbd>
\end{enumerate}</kbd></dd>
</dl>
<p>
yields:
</p>
<dl>
<dd> <ol class="decimal">
<li><p> bird</p>
</li>
<li><p> cat</p>
</li>
<li><p> dog</p>
</li>
</ol>
</dd>
</dl>
<p>
while the markup
</p>
<dl class="verblist">
<dd><kbd>
\begin{description}</kbd></dd>
<dd><kbd>
\item[Parrot]&#xA0;a&#xA0;type&#xA0;of&#xA0;bird</kbd></dd>
<dd><kbd>
\item[Persian]&#xA0;a&#xA0;type&#xA0;of&#xA0;house&#xA0;cat</kbd></dd>
<dd><kbd>
\item[Pointer]&#xA0;a&#xA0;type&#xA0;of&#xA0;dog</kbd></dd>
<dd><kbd>
\end{description}</kbd></dd>
</dl>
<p>
yields:
</p>
<dl>
<dd> <dl>
<dt><b>
Parrot</b></dt>
<dd>a type of bird</dd><dt><b>
Persian</b></dt>
<dd>a type of house cat</dd><dt><b>
Pointer</b></dt>
<dd>a type of dog</dd></dl>
</dd>
</dl>
<p></p>

<p>A list is normally part of a paragraph, but a list may occur outside
of a paragraph in a sectional unit or even at the top level of
an article's body.  </p>

<p>An <em>item</em> in a list may contain paragraphs but, as the foregoing
examples show, may contain loose text.  </p>

<p>While <em>LaTeX</em> provides an excellent construction facility for customized
lists through its <em>list</em> environment, which may be used in
conjunction with its <em>newenvironment</em> command, there is no facility
for the provision of on-the-fly markup in SGML.    Therefore, the
<em>article</em> document type provides several other kinds of list.  </p>

<p>The lists called <em>menu</em> and <em>Menu</em> consist of
<em>items</em>.    These lists have no item labels.    They differ only
in intention for spacing in presentation formats.  </p>

<p>It often makes sense for <em>menu</em> to be used inside an <em>item</em>
of another list.    Moreover, a single item <em>menu</em> will render in
either the <em>LaTeX</em> or HTML formattings as &#x201C;hanging indentation&#x201D;.  </p>

<p>A <em>defnlist</em> is intended to be more like the list called <em>dl</em>
in HTML than like <em>description</em>.    It must consist of one or
more <em>term</em>, <em>desc</em> pairs with <em>term</em> mandatory and
<em>desc</em> optional.  </p>

<p>There are also other lists that will not be mentioned here except to
point out that when the name <em>verbatim</em> is enabled as a
metacommand, rather than as a command, by calling the syntactic
translator with a non-default function<sup><a id="revfnote5" href="#fnote5">5</a></sup>
such as <kbd>verblist</kbd> or <kbd>latex-faq</kbd>, the verbatim material
is organized as a <em>verblist</em>.  </p>

<p>For more information about lists browse the document type definitions
<kbd>gellmu.dtd</kbd> and <kbd>xml/xgellmu.dtd</kbd> being mindful that
default processing in the didactic production system sometimes does
a small amount of list manipulation between the SGML and XML versions
of an <em>article</em>.
</p>
</div>

<div class="section">
<h3>6.&#xA0;&#xA0;<a id="SU-6"></a><a id="tabular"></a><em>Tabular</em> Environment Emulation</h3>

<p>Most users having a <em>LaTeX</em> background will find that <em>tabular</em>
with column arguments limited to &#x2018;<kbd>l</kbd>&#x2019;, &#x2018;<kbd>r</kbd>&#x2019;,
&#x2018;<kbd>c</kbd>&#x2019;, and &#x2018;<kbd>p</kbd>&#x2019; is reasonably functional.
Improvement made during 2006 were made possible by the increased
availability to users of web browsers supporting version 2 of the
cascading style sheets (CSS) specification.  </p>

<p>For example, the following markup underlies a small
<a href="#mathzones"><em>lcc</em> table</a> in the section on mathematics.
</p>
<dl class="verblist">
<dd><kbd>
\display{\begin{tabular}{lcc}</kbd></dd>
<dd><kbd>
\bold{Name}&#xA0;&amp;&#xA0;\bold{Opener}&#xA0;&#xA0;&#xA0;&#xA0;&#xA0;&#xA0;&#xA0;&amp;&#xA0;\bold{Closer}&#xA0;&#xA0;&#xA0;\\</kbd></dd>
<dd><kbd>
math&#xA0;&#xA0;&#xA0;&#xA0;&#xA0;&#xA0;&#xA0;&#xA0;&amp;&#xA0;\quostr{\bsl;(}&#xA0;&#xA0;&#xA0;&#xA0;&#xA0;&amp;&#xA0;\quostr{\bsl;)}&#xA0;\\</kbd></dd>
<dd><kbd>
tmath&#xA0;&#xA0;&#xA0;&#xA0;&#xA0;&#xA0;&#xA0;&amp;&#xA0;\quostr{\$}&#xA0;&#xA0;&#xA0;&#xA0;&#xA0;&#xA0;&#xA0;&#xA0;&#xA0;&amp;&#xA0;\quostr{\$}&#xA0;&#xA0;&#xA0;&#xA0;&#xA0;\\</kbd></dd>
<dd><kbd>
displaymath&#xA0;&amp;&#xA0;\quostr{\bsl\lsb;}&#xA0;&#xA0;&amp;&#xA0;\quostr{\bsl\rsb;}</kbd></dd>
<dd><kbd>
\end{tabular}}</kbd></dd>
</dl>
<p>
(In this markup <em>bsl</em> is a name for the backslash character
and <em>lsb</em>, <em>rsb</em> the names of the square brackets.)</p>

<p>There is presently no concept of &#x201C;float&#x201D;.  </p>

<p>More information is available in the <a href="glman.html#tabular">Manual (key &#x201C;<kbd>tabular</kbd>&#x201D;)</a>.
</p>
</div>

<div class="section">
<h3>7.&#xA0;&#xA0;<a id="SU-7"></a><a id="links"></a>Labels, Cross References, and Anchors</h3>

<p>The basic idea is very simple.    Use
</p>
<div class="display"><table class="gdisplay"><tbody><tr><td>
<kbd>\label{</kbd><em>mylabelkey</em><kbd>}</kbd></td></tr></tbody></table></div>
<p>
to <b>mark</b> a location that is associated with the named
label key, and use
</p>
<div class="display"><table class="gdisplay"><tbody><tr><td>
<kbd>\ref{</kbd><em>mylabelkey</em><kbd>}</kbd></td></tr></tbody></table></div>
<p>
or one of several other methods to reference that location.
The command <em>ref</em> may be regarded as the default method.
In an online version, however, it has <b>not</b> been designed to
create a selectable anchor but rather simply to indicate section
number.  </p>

<p>For example, in this document there is a label with the key
&#x201C;<kbd>math</kbd>&#x201D; at the beginning of the section (8) on
mathematics.    The previous sentence contains a reference with
the markup <kbd>\ref{math}</kbd> to that section.    This markup results
in the number of that section appearing in the first sentence.
For clarity the markup for the entire first sentence of this
paragraph is:
</p>
<dl class="verblist">
<dd><kbd>
For&#xA0;example,&#xA0;in&#xA0;this&#xA0;document&#xA0;there&#xA0;is&#xA0;a&#xA0;label&#xA0;with&#xA0;the&#xA0;key</kbd></dd>
<dd><kbd>
\qquostr{math}&#xA0;at&#xA0;the&#xA0;beginning&#xA0;of&#xA0;the&#xA0;section&#xA0;(\ref{math})&#xA0;on</kbd></dd>
<dd><kbd>
mathematics.</kbd></dd>
</dl>
<p></p>

<p>If, on the other hand, one wants an online version to contain
a <a href="#math">selectable anchor to section 8</a> to the
section on math, then
in the preamble of the document one might place the newcommand
definition
</p>
<div class="display"><table class="gdisplay"><tbody><tr><td>
<kbd>\newcommand{\iref}[2]{\anch[iref=&#x0022;#1&#x0022;]{#2}}</kbd></td></tr></tbody></table></div>
<p>
and then, as in the foregoing portion of this sentence use
the markup
</p>
<div class="display"><table class="gdisplay"><tbody><tr><td>
<kbd>\iref{math}{selectable&#xA0;anchor&#xA0;to&#xA0;section&#xA0;\ref{math}}</kbd> .</td></tr></tbody></table></div>
<p>
Note that this markup uses the label key &#x201C;<kbd>math</kbd>&#x201D; twice:
once as the first argument to the newcommand called <em>iref</em>
and once as the sole argument of the command <em>ref</em> that
itself appears in the second argument of <em>iref</em>.  </p>

<p>On the question of whether to use <em>ref</em> or one of several
other commands to make a reference, there are several considerations:
</p>
<ol class="decimal">
<li><p> How should the reference be indicated in an online format
     that will be viewed in an ebook or a web browser? </p>
</li>
<li><p> How should the reference be indicated in a typeset format
     where there is neither a cursor nor the possibility of automatic
     scrolling? </p>
</li>
</ol>
<p>
More details on this subject may be found in the
<a href="glman.html#labelref">Manual (key &#x201C;<kbd>labelref</kbd>&#x201D;)</a>.
</p>
</div>

<div class="section">
<h3>8.&#xA0;&#xA0;<a id="SU-8"></a><a id="math"></a>Mathematics</h3>

<p>GELLMU <em>article</em> provides 5 containers for mathematical
content: <em>math</em>, <em>tmath</em>, <em>displaymath</em>, <em>equation</em>,
<em>eqnarray</em>.    All may be referenced by name.    However,
<em>LaTeX</em>-like markup is supported:
<a id="mathzones"></a>
</p>
<div class="display"><table class="gdisplay"><tbody><tr><td>
<table><tbody>
<tr><td align="left"><b>Name</b></td><td align="center"><b>Opener</b></td><td align="center"><b>Closer</b></td></tr
><tr><td align="left">math</td><td align="center"><kbd>\(</kbd></td><td align="center"><kbd>\)</kbd></td></tr
><tr><td align="left">tmath</td><td align="center"><kbd>$</kbd></td><td align="center"><kbd>$</kbd></td></tr
><tr><td align="left">displaymath</td><td align="center"><kbd>\[</kbd></td><td align="center"><kbd>\]</kbd></td></tr
></tbody></table>
</td></tr></tbody></table></div>
<p></p>

<p>The containers <em>math</em> and <em>tmath</em> are essentially
equivalent non-displayed containers.    The current <em>LaTeX</em> formatter
provides a tiny amount of extra horizontal space around <em>math</em>
but not around <em>tmath</em>.  </p>

<p>Just as with ordinary <em>LaTeX</em> there can be difficulty locating
a missing &#x2018;<kbd>$</kbd>&#x2019; if one uses these for <em>tmath</em>.    Unbalanced
&#x2018;<kbd>$</kbd>&#x2019; characters usually lead the syntactic translator to
complain (correctly, though not with as much user-friendliness as one
might wish) about not being able to balance a brace.    In this case
if <em>tmath</em> is seen in the displayed surrounding text, a missing
&#x2018;<kbd>$</kbd>&#x2019; is likely.  </p>

<p>MathML rendering support (with MathML's presentation markup) in HTML
versions, i.e., the modern XML form of HTML extended with MathML, is
new in the summer of 2004.  </p>

<p>A program to generate an output stream providing content-level MathML
markup, i.e., semantic markup transparent for computer algebra
systems, has not yet been written.  </p>

<p>Those who use mathematics may find the following illustrations
instructive.  </p>

<p>The markup
</p>
<dl class="verblist">
<dd><kbd>
Just&#xA0;as&#xA0;with&#xA0;\tex;&#xA0;or&#xA0;\latex;&#xA0;it&#xA0;is&#xA0;easy&#xA0;to&#xA0;provide&#xA0;a&#xA0;mathematical</kbd></dd>
<dd><kbd>
formula,&#xA0;such&#xA0;as&#xA0;$y&#xA0;=&#xA0;x^3/(x^2&#xA0;+&#xA0;1)$\aoc&#xA0;either&#xA0;inline&#xA0;or&#xA0;displayed.</kbd></dd>
</dl>
<p>
produces:
</p>
<dl>
<dd> Just as with <em>TeX</em> or <em>LaTeX</em> it is easy to provide a mathematical
formula, such as <math xmlns="http://www.w3.org/1998/Math/MathML" mode="inline"
><mi>y</mi><mo>=</mo><msup><mi>x</mi><mn>3</mn></msup
><mo stretchy="true" lspace="0.3em" rspace="0.3em">&#x2044;</mo><mfenced open="(" close =")"
><mrow><msup><mi>x</mi><mn>2</mn></msup
><mo>+</mo><mn>1</mn></mrow></mfenced
></math
>, either inline or displayed.  </dd>
</dl>
<p></p>

<p>This markup
</p>
<dl class="verblist">
<dd><kbd>
Here&#xA0;the&#xA0;same&#xA0;formula&#xA0;is&#xA0;displayed.</kbd></dd>
<dd><kbd>
\[&#xA0;y&#xA0;=&#xA0;\frac{x^3}{x^2&#xA0;+&#xA0;1}&#xA0;\eos\]</kbd></dd>
</dl>
<p>
yields:
</p>
<dl>
<dd> Here the same formula is displayed.

<math xmlns="http://www.w3.org/1998/Math/MathML" display="block" mode="display"
><mi>y</mi><mo>=</mo><mrow><mfrac
><mrow><msup><mi>x</mi><mn>3</mn></msup
></mrow
><mrow><msup><mi>x</mi><mn>2</mn></msup
><mo>+</mo><mn>1</mn></mrow
></mfrac></mrow
><mtext>.</mtext
></math>
</dd>
</dl>
<p>
The <em>eos</em> corresponds to an empty SGML element for &#x201C;end of
sentence&#x201D; (or &#x201C;full stop&#x201D;).    Normally one simply uses &#x2018;<kbd>.</kbd>&#x2019;,
but inside a displayed math zone there is semantic-level risk of
confusion with various possible uses of &#x2018;<kbd>.</kbd>&#x2019; as a mathematical
symbol.  </p>

<p>Markup:
</p>
<dl class="verblist">
<dd><kbd>
The&#xA0;square&#xA0;root&#xA0;of&#xA0;a&#xA0;compound&#xA0;fraction:</kbd></dd>
<dd><kbd>
\[&#xA0;\sqrt{\frac{\frac{a}{b}}{\frac{c}{d}}}&#xA0;\eos&#xA0;\]</kbd></dd>
</dl>
<p>
Rendered:
</p>
<dl>
<dd> The square root of a compound fraction:

<math xmlns="http://www.w3.org/1998/Math/MathML" display="block" mode="display"
><msqrt><mfrac
><mfrac
><mi>a</mi><mi>b</mi></mfrac
><mfrac
><mi>c</mi><mi>d</mi></mfrac
></mfrac
></msqrt
><mtext>.</mtext
></math>
</dd>
</dl>
<p></p>

<p>In the current XHTML+MathML formatting by default radical signs in
source markup are converted by default to fractional exponents because
of an intellectual property issue with fonts available for use by the
open source <em>Mozilla</em> browser and its spinoffs including
<em>Firefox</em>, <em>Galeon</em>, and <em>Nautilus</em>.<sup><a id="revfnote6" href="#fnote6">6</a></sup></p>

<p>Using the markup for numbered equations
</p>
<dl class="verblist">
<dd><kbd>
The&#xA0;quadratic&#xA0;equation</kbd></dd>
<dd><kbd>
\begin{equation}&#xA0;a&#xA0;x^2&#xA0;+&#xA0;b&#xA0;x&#xA0;+&#xA0;c&#xA0;=&#xA0;0&#xA0;\end{equation}</kbd></dd>
<dd><kbd>
has&#xA0;roots</kbd></dd>
<dd><kbd>
\begin{equation}</kbd></dd>
<dd><kbd>
&#xA0;x&#xA0;=&#xA0;\frac{-b&#xA0;\pm&#xA0;\sqrt{b^2&#xA0;-&#xA0;4&#xA0;a&#xA0;c}}{2&#xA0;a}&#xA0;\&#xA0;\eos</kbd></dd>
<dd><kbd>
\end{equation}</kbd></dd>
</dl>
<p>
one obtains the rendering:
</p>
<dl>
<dd> The quadratic equation
<a id="EqnKey-1"></a>
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block" mode="display"
><mtable><mtr class="labeled" id="EqnAutoEqnKey-1"><mtd><mtext>(1)</mtext></mtd
><mtd><mrow><mi>a</mi><msup><mi>x</mi><mn>2</mn></msup
><mo>+</mo><mi>b</mi><mi>x</mi><mo>+</mo><mi>c</mi><mo>=</mo><mn>0</mn></mrow></mtd></mtr></mtable></math
>
has roots
<a id="EqnKey-2"></a>
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block" mode="display"
><mtable><mtr class="labeled" id="EqnAutoEqnKey-2"><mtd><mtext>(2)</mtext></mtd
><mtd><mrow><mi>x</mi><mo>=</mo><mrow><mfrac
><mrow><mo>&#x2212;</mo><mi>b</mi><mo>&#x00B1;</mo><msqrt><mrow><msup><mi>b</mi><mn>2</mn></msup
><mo>&#x2212;</mo><mn>4</mn><mi>a</mi><mi>c</mi></mrow></msqrt
></mrow
><mrow><mn>2</mn><mi>a</mi></mrow
></mfrac></mrow
><mspace width="0.6em"/><mtext>.</mtext
></mrow></mtd></mtr></mtable></math
></dd>
</dl>
<p></p>

<p><b>Rule for subscripts and superscripts:</b> A subscript or
superscript must be braced if keyboarding it involves more than
one character.    Thus, one <em>may</em> use <kbd>$C^2$</kbd> or <kbd>$C^{2}$</kbd>
to produce <math xmlns="http://www.w3.org/1998/Math/MathML" mode="inline"
><msup><mi>C</mi><mn>2</mn></msup
></math
>, but one <em>must</em> use <kbd>$C^{\infty}$</kbd> to
generate <math xmlns="http://www.w3.org/1998/Math/MathML" mode="inline"
><msup><mi>C</mi><mi>&#x221E;</mi></msup
></math
>.  </p>

<p>The Taylor series of the <em>exponential</em> function is

<math xmlns="http://www.w3.org/1998/Math/MathML" display="block" mode="display"
><msup><mi>e</mi><mi>t</mi></msup
><mo>=</mo><mrow><munderover><mo>&#x2211;</mo><mrow><mi>k</mi><mo>=</mo><mn>0</mn></mrow><mi>&#x221E;</mi></munderover><mrow><mspace width="0.3em"/><mfrac
><mrow><msup><mi>t</mi><mi>k</mi></msup
></mrow
><mrow><mi>k</mi><mo>!</mo></mrow
></mfrac
></mrow></mrow
><mspace width="0.6em"/><mtext>.</mtext
></math>

Note here that the <em>sum</em> markup <kbd>\sum</kbd> requires a formal
terminator <kbd>\sum:</kbd> (likewise with <kbd>\int</kbd> for integral and <kbd>\prod</kbd>
for product).
</p>
<dl class="verblist">
<dd><kbd>
\[&#xA0;e^t&#xA0;=&#xA0;\sum_{k&#xA0;=&#xA0;0}^{\infty}&#xA0;\,&#xA0;\frac{t^k}{k!}&#xA0;\sum:&#xA0;\&#xA0;\eos&#xA0;\]</kbd></dd>
</dl>
<p></p>

<p>The markup
</p>
<dl class="verblist">
<dd><kbd>
The&#xA0;continued&#xA0;fraction&#xA0;expansion&#xA0;of&#xA0;the&#xA0;\emph{golden&#xA0;mean}:</kbd></dd>
<dd><kbd>
\[\frac{1&#xA0;+&#xA0;\sqrt{5}}{2}&#xA0;=</kbd></dd>
<dd><kbd>
&#xA0;&#xA0;&#xA0;&#xA0;&#xA0;1&#xA0;+&#xA0;\frac{1}{1+\frac{1}{1+\frac{1}{1+\frac{1}{1+\ldots;}}}}&#xA0;\eos&#xA0;\]</kbd></dd>
</dl>
<p>
produces:
</p>
<dl>
<dd> The continued fraction expansion of the <em>golden mean</em>:

<math xmlns="http://www.w3.org/1998/Math/MathML" display="block" mode="display"
><mrow><mfrac
><mrow><mn>1</mn><mo>+</mo><msqrt><mn>5</mn></msqrt
></mrow
><mn>2</mn></mfrac></mrow
><mo>=</mo><mn>1</mn><mo>+</mo><mrow><mfrac
><mn>1</mn><mrow><mn>1</mn><mo>+</mo><mrow><mfrac
><mn>1</mn><mrow><mn>1</mn><mo>+</mo><mrow><mfrac
><mn>1</mn><mrow><mn>1</mn><mo>+</mo><mrow><mfrac
><mn>1</mn><mrow><mn>1</mn><mo>+</mo><mi>&#x2026;</mi></mrow
></mfrac></mrow
></mrow
></mfrac></mrow
></mrow
></mfrac></mrow
></mrow
></mfrac></mrow
><mtext>.</mtext
></math>
</dd>
</dl>
<p>
while the markup
</p>
<dl class="verblist">
<dd><kbd>
Mixed&#xA0;function&#xA0;application&#xA0;and&#xA0;multiplication:</kbd></dd>
<dd><kbd>
\[&#xA0;{\func{sin}\aF;{ax}}\itimes;{\func{cos}\aF;{bx}}&#xA0;\eos&#xA0;\]</kbd></dd>
</dl>
<p>
yields
</p>
<dl>
<dd> Mixed function application and multiplication:

<math xmlns="http://www.w3.org/1998/Math/MathML" display="block" mode="display"
><mrow><mrow><mspace width="0.2em"/><mi>sin</mi></mrow><mo class="invisible">&#x2061;</mo><mrow><mi>a</mi><mi>x</mi></mrow></mrow><mo class="invisible">&#x2062;</mo><mrow><mrow><mspace width="0.2em"/><mi>cos</mi></mrow><mo class="invisible">&#x2061;</mo><mrow><mi>b</mi><mi>x</mi></mrow></mrow><mtext>.</mtext
></math>
</dd>
</dl>
<p></p>

<p>Markup:
</p>
<dl class="verblist">
<dd><kbd>
Newton's&#xA0;binomial&#xA0;series:</kbd></dd>
<dd><kbd>
\[&#xA0;(1&#xA0;+&#xA0;t)^r&#xA0;=&#xA0;\sum_{k=0}^{\infty}&#xA0;\,</kbd></dd>
<dd><kbd>
&#xA0;&#xA0;\frac{r(r&#xA0;-&#xA0;1)(r&#xA0;-&#xA0;2)\ldots(r&#xA0;-&#xA0;k&#xA0;+&#xA0;1)}{k!}\,&#xA0;t^k&#xA0;\sum:&#xA0;\eos&#xA0;\]</kbd></dd>
</dl>
<p>
rendering:
</p>
<dl>
<dd> Newton's binomial series:

<math xmlns="http://www.w3.org/1998/Math/MathML" display="block" mode="display"
><msup><mfenced open="(" close =")"
><mrow><mn>1</mn><mo>+</mo><mi>t</mi></mrow></mfenced
><mi>r</mi></msup
><mo>=</mo><mrow><munderover><mo>&#x2211;</mo><mrow><mi>k</mi><mo>=</mo><mn>0</mn></mrow><mi>&#x221E;</mi></munderover><mrow><mspace width="0.3em"/><mfrac
><mrow><mi>r</mi><mfenced open="(" close =")"
><mrow><mi>r</mi><mo>&#x2212;</mo><mn>1</mn></mrow></mfenced
><mfenced open="(" close =")"
><mrow><mi>r</mi><mo>&#x2212;</mo><mn>2</mn></mrow></mfenced
><mi>&#x2026;</mi><mfenced open="(" close =")"
><mrow><mi>r</mi><mo>&#x2212;</mo><mi>k</mi><mo>+</mo><mn>1</mn></mrow></mfenced
></mrow
><mrow><mi>k</mi><mo>!</mo></mrow
></mfrac
><mspace width="0.3em"/><msup><mi>t</mi><mi>k</mi></msup
></mrow></mrow
><mtext>.</mtext
></math>
</dd>
</dl>
<p></p>

<p>Markup:
</p>
<dl class="verblist">
<dd><kbd>
A&#xA0;differential&#xA0;equation:</kbd></dd>
<dd><kbd>
\[&#xA0;D^2&#xA0;y&#xA0;-&#xA0;3&#xA0;x&#xA0;(D&#xA0;y)^2&#xA0;=&#xA0;x&#xA0;\func{cos}&#xA0;x&#xA0;\&#xA0;\eos&#xA0;\]</kbd></dd>
</dl>
<p>
rendering:
</p>
<dl>
<dd> A differential equation:

<math xmlns="http://www.w3.org/1998/Math/MathML" display="block" mode="display"
><msup><mi>D</mi><mn>2</mn></msup
><mi>y</mi><mo>&#x2212;</mo><mn>3</mn><mi>x</mi><msup><mfenced open="(" close =")"
><mrow><mi>D</mi><mi>y</mi></mrow></mfenced
><mn>2</mn></msup
><mo>=</mo><mi>x</mi><mrow><mspace width="0.2em"/><mi>cos</mi></mrow><mi>x</mi><mspace width="0.6em"/><mtext>.</mtext
></math>
</dd>
</dl>
<p></p>

<p>The statement of Stokes's Theorem in space

<math xmlns="http://www.w3.org/1998/Math/MathML" display="block" mode="display"
><mrow><mo>&#x222B;</mo><mrow><msub><mo>&#x222B;</mo><mi>S</mi></msub><mrow><mspace width="0.3em"/><mfenced open="(" close =")"
><mrow><mi mathvariant="bold" fontweight="bold" fontstyle="normal">curl</mi><mspace width="0.3em"/><mi mathvariant="bold" fontweight="bold" fontstyle="normal">F</mi><mspace width="0.3em"/><mo>&#x00B7;</mo><mspace width="0.3em"/><mi mathvariant="bold" fontweight="bold" fontstyle="normal">N</mi></mrow></mfenced
><mspace width="0.3em"/><mi>d</mi><mi>&#x03C3;</mi></mrow></mrow
></mrow
><mo>=</mo><mrow><msub><mo>&#x222B;</mo><mrow><mi>&#x2202;</mi><mi>S</mi></mrow></msub><mrow><mspace width="0.3em"/><mfenced open="(" close =")"
><mrow><mi mathvariant="bold" fontweight="bold" fontstyle="normal">F</mi><mspace width="0.3em"/><mo>&#x00B7;</mo><mspace width="0.3em"/><mi mathvariant="bold" fontweight="bold" fontstyle="normal">T</mi></mrow></mfenced
><mspace width="0.3em"/><mi>d</mi><mi>s</mi></mrow></mrow
><mspace width="0.3em"/><mtext>.</mtext
></math>

may be generated by the markup
</p>
<dl class="verblist">
<dd><kbd>
\[&#xA0;\int\int_S&#xA0;\,&#xA0;(\mbox{\bold{curl}}</kbd></dd>
<dd><kbd>
&#xA0;\,&#xA0;\regch{\bold{F}}&#xA0;\,\cdot\,&#xA0;\regch{\bold{N}})\,&#xA0;d\sigma;</kbd></dd>
<dd><kbd>
\int:\int:</kbd></dd>
<dd><kbd>
&#xA0;=&#xA0;</kbd></dd>
<dd><kbd>
\int_{\partial&#xA0;S}&#xA0;\,&#xA0;(\regch{\bold{F}}</kbd></dd>
<dd><kbd>
\,\cdot\,&#xA0;\regch{\bold{T}})\,&#xA0;ds&#xA0;\int:\,&#xA0;\eos&#xA0;\]</kbd></dd>
</dl>
<p>
Note that each <kbd>\int</kbd> integral opener must be followed eventually
by a <kbd>\int:</kbd> closer (or braces could be used, i.e., <kbd>\int{&#xA0;...&#xA0;}</kbd>,
or <kbd>\begin{int}</kbd> &#x2026; <kbd>\end{int}</kbd> also could be used.  </p>

<p>The branched definition of the absolute value of a real number may
be marked up with
</p>
<dl class="verblist">
<dd><kbd>
\[&#xA0;\absval{x}&#xA0;=&#xA0;\lbalbr{\begin{array}{rl}</kbd></dd>
<dd><kbd>
&#xA0;&#xA0;&#xA0;&#xA0;&#xA0;&#xA0;&#xA0;&#xA0;&#xA0;&#xA0;&#xA0;&#xA0;&#xA0;&#xA0;&#xA0;&#xA0;x&#xA0;&amp;&#xA0;\text{\&#xA0;if\&#xA0;}&#xA0;x&#xA0;\geq&#xA0;0&#xA0;\\</kbd></dd>
<dd><kbd>
&#xA0;&#xA0;&#xA0;&#xA0;&#xA0;&#xA0;&#xA0;&#xA0;&#xA0;&#xA0;&#xA0;&#xA0;&#xA0;&#xA0;&#xA0;-x&#xA0;&amp;&#xA0;\text{\&#xA0;if\&#xA0;}&#xA0;x&#xA0;&lt;&#xA0;0</kbd></dd>
<dd><kbd>
&#xA0;&#xA0;&#xA0;&#xA0;&#xA0;&#xA0;&#xA0;&#xA0;&#xA0;&#xA0;&#xA0;&#xA0;&#xA0;&#xA0;&#xA0;\end{array}}&#xA0;\&#xA0;\eos&#xA0;\]</kbd></dd>
</dl>
<p>
to yield

<math xmlns="http://www.w3.org/1998/Math/MathML" display="block" mode="display"
><mfenced open="|" close="|"><mi>x</mi></mfenced><mo>=</mo><mfenced open="{" close =""
><mtable
><mtr><mtd columnalign="right"><mi>x</mi></mtd
><mtd columnalign="left"><mtext
>&#xA0;if&#xA0;</mtext
><mi>x</mi><mo>&#x2265;</mo><mn>0</mn></mtd
></mtr><mtr><mtd columnalign="right"><mo>&#x2212;</mo><mi>x</mi></mtd
><mtd columnalign="left"><mtext
>&#xA0;if&#xA0;</mtext
><mi>x</mi><mo>&lt;</mo><mn>0</mn></mtd
></mtr></mtable
></mfenced
><mspace width="0.6em"/><mtext>.</mtext
></math>
</p>

<p>The <em>LaTeX</em>-like command <em>mathbf</em> is new in GELLMU
<em>article</em>.    It may only be used in math.    The command
<em>bold</em>, which indicates bold-style emphasis, parallel to
<em>strong</em> in HTML and <em>textbf</em> in <em>LaTeX</em>, may be
used inside mathematical content as well as outside.    However,
<em>bold</em> may not contain math-special symbols such as that given by
<kbd>\alpha</kbd>, while <em>mathbf</em> may.  </p>

<p>A certain amount of attention to semantics is required in order to
have robust generation of the XHTML+MathML output.    An absolutely
basic part of this is having unambiguous determination of what is a
single symbol.    By long convention in <em>TeX</em> the string &#x201C;abcd&#x201D; in
math is understood as the product (in whatever sense of &#x201C;product&#x201D;)
of four symbols.    If a string with more than one character &#x2014; for
example, &#x201C;Hom&#x201D; &#x2014; is to be a single symbol, it may be marked up
with <em>mbox</em> or, in GELLMU source, be assigned a symbol name
having custom print representation using <em>mathsym</em> in the preamble.
In GELLMU source <em>mathbf</em> should only contain a single symbol.


</p>

<p>The markup
</p>
<dl class="verblist">
<dd><kbd>
\display{$\nabla\times\vec{\mbox{\bold{B}}}$</kbd></dd>
<dd><kbd>
&#xA0;&#xA0;&#xA0;&#xA0;&#xA0;&#xA0;&#xA0;&#xA0;&#xA0;\&#xA0;with&#xA0;``mbox''&#xA0;and&#xA0;``bold''&#xA0;versus</kbd></dd>
<dd><kbd>
&#xA0;&#xA0;&#xA0;&#xA0;&#xA0;&#xA0;&#xA0;&#xA0;&#xA0;\&#xA0;$\nabla\times\vec{\mathbf{B}}$&#xA0;\&#xA0;with&#xA0;``mathbf''\,.}</kbd></dd>
</dl>
<p>
produces
</p>
<div class="display"><table class="gdisplay"><tbody><tr><td>
<math xmlns="http://www.w3.org/1998/Math/MathML" mode="inline"
><mi>&#x2207;</mi><mo lspace="0.25em" rspace="0.25em">&#x00D7;</mo><mover accent="true"><mi mathvariant="bold" fontweight="bold" fontstyle="normal">B</mi><mo>&#x21C0;</mo></mover
></math
>
         with &#x201C;mbox&#x201D; and &#x201C;bold&#x201D; versus
         <math xmlns="http://www.w3.org/1998/Math/MathML" mode="inline"
><mi>&#x2207;</mi><mo lspace="0.25em" rspace="0.25em">&#x00D7;</mo><mover accent="true"><mi mathvariant="bold-italic" fontweight="bold">B</mi
><mo>&#x21C0;</mo></mover
></math
>  with &#x201C;mathbf&#x201D;.</td></tr></tbody></table></div>
<p></p>

<p>Diagrams are done using <em>array</em>.    They must, therefore, be
rectangular.    The markup
</p>
<dl class="verblist">
<dd><kbd>
\newcommand{\ra}{\rightarrow}</kbd></dd>
<dd><kbd>
\newcommand{\da}{\downarrow}</kbd></dd>
<dd><kbd>
\[&#xA0;\begin{array}{ccccccccc}</kbd></dd>
<dd><kbd>
0&#xA0;&amp;&#xA0;\ra&#xA0;&#xA0;&amp;&#xA0;A'&#xA0;&#xA0;&amp;&#xA0;\ra&#xA0;&#xA0;&amp;&#xA0;A&#xA0;&#xA0;&#xA0;&amp;&#xA0;\ra&#xA0;&amp;&#xA0;&#xA0;A''&#xA0;&#xA0;&amp;&#xA0;\ra&#xA0;&amp;&#xA0;0&#xA0;\\</kbd></dd>
<dd><kbd>
~&#xA0;&amp;&#xA0;&#xA0;&#xA0;&#xA0;&#xA0;&#xA0;&amp;&#xA0;\da&#xA0;&amp;&#xA0;&#xA0;&#xA0;&#xA0;&#xA0;&#xA0;&amp;&#xA0;\da&#xA0;&amp;&#xA0;&#xA0;&#xA0;&#xA0;&#xA0;&amp;&#xA0;\da&#xA0;&#xA0;&#xA0;&amp;&#xA0;&#xA0;&#xA0;&#xA0;&#xA0;&amp;&#xA0;&#xA0;&#xA0;\\</kbd></dd>
<dd><kbd>
0&#xA0;&amp;&#xA0;\ra&#xA0;&#xA0;&amp;&#xA0;B'&#xA0;&#xA0;&amp;&#xA0;\ra&#xA0;&#xA0;&amp;&#xA0;B&#xA0;&#xA0;&#xA0;&amp;&#xA0;\ra&#xA0;&amp;&#xA0;&#xA0;B''&#xA0;&#xA0;&amp;&#xA0;\ra&#xA0;&amp;&#xA0;0</kbd></dd>
<dd><kbd>
\end{array}&#xA0;\]</kbd></dd>
</dl>
<p>
yields

<math xmlns="http://www.w3.org/1998/Math/MathML" display="block" mode="display"
><mtable
><mtr><mtd columnalign="center"><mn>0</mn></mtd
><mtd columnalign="center"><mo>&#x2192;</mo></mtd
><mtd columnalign="center"><msup><mi>A</mi><mo>&#x2032;</mo></msup
></mtd
><mtd columnalign="center"><mo>&#x2192;</mo></mtd
><mtd columnalign="center"><mi>A</mi></mtd
><mtd columnalign="center"><mo>&#x2192;</mo></mtd
><mtd columnalign="center"><msup><mi>A</mi><mo>&#x2032;&#x2032;</mo></msup
></mtd
><mtd columnalign="center"><mo>&#x2192;</mo></mtd
><mtd columnalign="center"><mn>0</mn></mtd
></mtr><mtr><mtd columnalign="center"><mspace width="0.6em"/></mtd
><mtd columnalign="center"></mtd
><mtd columnalign="center"><mo>&#x2193;</mo></mtd
><mtd columnalign="center"></mtd
><mtd columnalign="center"><mo>&#x2193;</mo></mtd
><mtd columnalign="center"></mtd
><mtd columnalign="center"><mo>&#x2193;</mo></mtd
><mtd columnalign="center"></mtd
><mtd columnalign="center"></mtd
></mtr><mtr><mtd columnalign="center"><mn>0</mn></mtd
><mtd columnalign="center"><mo>&#x2192;</mo></mtd
><mtd columnalign="center"><msup><mi>B</mi><mo>&#x2032;</mo></msup
></mtd
><mtd columnalign="center"><mo>&#x2192;</mo></mtd
><mtd columnalign="center"><mi>B</mi></mtd
><mtd columnalign="center"><mo>&#x2192;</mo></mtd
><mtd columnalign="center"><msup><mi>B</mi><mo>&#x2032;&#x2032;</mo></msup
></mtd
><mtd columnalign="center"><mo>&#x2192;</mo></mtd
><mtd columnalign="center"><mn>0</mn></mtd
></mtr></mtable
></math>


</p>
<dl>
<dd> <b>Comments about <em>array</em>, <em>eqnarray</em>, <em>tabular</em></b>
<ol class="decimal">
<li><p> In this markup note the appearance of the character &#x2018;<kbd>~</kbd>&#x2019; at
the beginning of the second row of the array.    The modular design of
the didactic production system requires that the syntactic translator
may only deal with markup syntax.    The &#x2018;<kbd>~</kbd>&#x2019;, which is markup
in GELLMU source as in <em>LaTeX</em> for &#x201C;non-breaking space&#x201D;, in the
first cell of the second row serves to keep the first cell from being
empty.    There is a technical error in the SGML output of the
syntactic translator when the first cell in an <em>array</em> or
<em>tabular</em> row is empty unless there is an explicit opentag for
the first cell.    The technical error will trigger a validation error
though it should not interfere with the generation of a correct parsed
output.<sup><a id="revfnote7" href="#fnote7">7</a></sup>
</p>
</li>
<li><p> Also in the foregoing markup note that the <em>LaTeX</em>-like use of the
character &#x2018;<kbd>&amp;</kbd>&#x2019; as the introducer of a new cell must in GELLMU
source be followed by whitespace.    Otherwise there is risk of
confusion with the alternative markup use of &#x2018;<kbd>&amp;</kbd>&#x2019; in GELLMU
source (though not in <em>LaTeX</em> source) to initiate an SGML entity
reference.  </p>
</li>
</ol>
</dd>
</dl>
<p></p>

<p>There is multiscript support.    The command <em>mscript</em> takes 5
arguments.    The first is its base.    The script order is counter-clockwise
beginning with upper-left.    For example,

<math xmlns="http://www.w3.org/1998/Math/MathML" display="block" mode="display"
><mmultiscripts><mi mathvariant="bold-italic" fontweight="bold">C</mi
><mrow><mn>5</mn><mo>+</mo></mrow><mn>2</mn><mprescripts/><mn>2</mn><mn>14</mn></mmultiscripts
><mspace width="1.8em"/><mmultiscripts><mi>Hom</mi><mi>c</mi><mi>d</mi><mprescripts/><mi>b</mi><mi>a</mi></mmultiscripts
><mfenced open="(" close =")"
><mrow><mi>X</mi><mo>,</mo><mi>Y</mi></mrow></mfenced
></math>

is produced by
</p>
<dl class="verblist">
<dd><kbd>
\[</kbd></dd>
<dd><kbd>
\mscript{\mathbf{C}}{14}{2}{5+}{2}\quad</kbd></dd>
<dd><kbd>
\mscript{\mbox{Hom}}{a}{b}{c}{d}(X,Y)</kbd></dd>
<dd><kbd>
\]</kbd></dd>
</dl>
<p></p>

<p><em>AMSMath</em>-like overset and underset: <kbd>\overset{A}{B}</kbd>
then <kbd>\underset{A}{B}</kbd>

<math xmlns="http://www.w3.org/1998/Math/MathML" display="block" mode="display"
><mover><mi>B</mi><mi>A</mi></mover
><mspace width="1.8em"/><munder><mi>B</mi><mi>A</mi></munder
></math>
</p>

<p>The command <em>overset</em> is the <em>AMSMath</em> replacement in <em>LaTeX</em>
for <em>LaTeX</em>'s native <em>stackrel</em>.  </p>

<p></p>
<dl class="verblist">
<dd><kbd>
A&#xA0;map&#xA0;may&#xA0;be&#xA0;labeled&#xA0;using&#xA0;\emph{overset}:</kbd></dd>
<dd><kbd>
\[&#xA0;X&#xA0;\overset{f}{\longrightarrow}&#xA0;Y&#xA0;\]</kbd></dd>
<dd><kbd>
or&#xA0;using&#xA0;\emph{underset}:</kbd></dd>
<dd><kbd>
\[&#xA0;X&#xA0;\underset{f}{\longrightarrow}&#xA0;Y&#xA0;\]</kbd></dd>
</dl>
<p>
</p>
<dl>
<dd> A map may be labeled using <em>overset</em>:

<math xmlns="http://www.w3.org/1998/Math/MathML" display="block" mode="display"
><mi>X</mi><mover><mo>&#x2192;</mo><mi>f</mi></mover
><mi>Y</mi></math>

or using <em>underset</em>:

<math xmlns="http://www.w3.org/1998/Math/MathML" display="block" mode="display"
><mi>X</mi><munder><mo>&#x2192;</mo><mi>f</mi></munder
><mi>Y</mi></math>
</dd>
</dl>
<p></p>

<p>Binary or pseudo-binary operators:

<math xmlns="http://www.w3.org/1998/Math/MathML" display="block" mode="display"
><mtext
>vee:</mtext
><mspace width="0.6em"/><mo>&#x2228;</mo><mspace width="1.8em"/><mtext
>setminus:</mtext
><mspace width="0.6em"/><mo>&#x2216;</mo><mspace width="1.8em"/><mtext
>ll:</mtext
><mspace width="0.6em"/><mo>&#x226A;</mo><mspace width="1.8em"/><mtext
>gg:</mtext
><mspace width="0.6em"/><mo>&#x226B;</mo><mspace width="1.8em"/><mtext
>approx:</mtext
><mspace width="0.6em"/><mo>&#x224A;</mo><mspace width="1.8em"/><mtext
>asymp:</mtext
><mspace width="0.6em"/><mo>&#x2248;</mo><mspace width="1.8em"/></math>


<math xmlns="http://www.w3.org/1998/Math/MathML" display="block" mode="display"
><mtext
>rightarrow:</mtext
><mspace width="0.6em"/><mo>&#x2192;</mo><mspace width="1.8em"/><mtext
>leftarrow:</mtext
><mspace width="0.6em"/><mo>&#x2190;</mo><mspace width="1.8em"/><mtext
>implies:</mtext
><mspace width="0.6em"/><mo>&#x21D2;</mo><mspace width="1.8em"/><mtext
>revimplies:</mtext
><mspace width="0.6em"/><mo>&#x21D0;</mo><mspace width="1.8em"/><mtext
>iff:</mtext
><mspace width="0.6em"/><mo>&#x21D4;</mo><mspace width="1.8em"/></math>
</p>

<p>Other operators:

<math xmlns="http://www.w3.org/1998/Math/MathML" display="block" mode="display"
><mtext
>uparrow:</mtext
><mspace width="0.6em"/><mo>&#x2191;</mo><mspace width="1.8em"/><mtext
>downarrow:</mtext
><mspace width="0.6em"/><mo>&#x2193;</mo><mspace width="1.8em"/><mtext
>triangle:</mtext
><mspace width="0.6em"/><mo>&#x25B5;</mo><mspace width="1.8em"/><mtext
>abuts:</mtext
><mspace width="0.6em"/><mo>&#x21D2;</mo><mspace width="1.8em"/></math>
</p>

<p>The command <em>vect</em> is for vector generation.    Its usage is:
</p>
<div class="display"><table class="gdisplay"><tbody><tr><td>
<kbd>\vect[</kbd><em>open-close-separator spec</em><kbd>]{</kbd><em>coordinate</em><kbd>}</kbd> &#x2026;</td></tr></tbody></table></div>
<p>
Thus, the markup <kbd>\vect{x}{y}{z}</kbd> produces <math xmlns="http://www.w3.org/1998/Math/MathML" mode="inline"
><mfenced><mi>x</mi><mi>y</mi><mi>z</mi></mfenced
></math
>.
On the other hand the markup <kbd>\vect[]{x}{y}{z}</kbd> produces
<math xmlns="http://www.w3.org/1998/Math/MathML" mode="inline"
><mfenced open="" close="" separators=""><mi>x</mi><mi>y</mi><mi>z</mi></mfenced
></math
>.    This might be useful, for example, in
providing reasonably semantic (but visibly traditional) markup for a
tensor field.    For example

<math xmlns="http://www.w3.org/1998/Math/MathML" display="block" mode="display"
><msubsup><mi>T</mi><mfenced open="" close="" separators=""><mrow><msub><mi>j</mi><mn>1</mn></msub
></mrow><mrow><msub><mi>j</mi><mn>2</mn></msub
></mrow><mi>&#x2026;</mi><mrow><msub><mi>j</mi><mi>q</mi></msub
></mrow></mfenced
><mfenced open="" close="" separators=""><mrow><msub><mi>i</mi><mn>1</mn></msub
></mrow><mrow><msub><mi>i</mi><mn>2</mn></msub
></mrow><mi>&#x2026;</mi><mrow><msub><mi>i</mi><mi>p</mi></msub
></mrow></mfenced
></msubsup
></math>

When <em>vect</em>'s option is empty, vector opener, closer, and coordinate
separators are all nil.    <em>vect</em> might be used to provide the stylized,
though semantically dubious,
inner product markup <kbd>\vect[&lt;&gt;;]{v}{w}</kbd> yielding

<math xmlns="http://www.w3.org/1998/Math/MathML" display="block" mode="display"
><mfenced open="&lt;" close="&gt;" separators=";"><mi>v</mi><mi>w</mi></mfenced
><mspace width="0.6em"/><mtext>,</mtext></math>

or with the markup <kbd>\vect[\lsb;\rsb;:]{a}{b}{c}</kbd>
to customize notation for the homogeneous coordinate triple
representing a point of <math xmlns="http://www.w3.org/1998/Math/MathML" mode="inline"
><msup><mi mathvariant="bold-italic" fontweight="bold">P</mi
><mn>2</mn></msup
></math
>:

<math xmlns="http://www.w3.org/1998/Math/MathML" display="block" mode="display"
><mfenced open="[" close="]" separators=":"><mi>a</mi><mi>b</mi><mi>c</mi></mfenced
><mspace width="0.6em"/><mtext>.</mtext
></math>
</p>

<p>Leray's spectral sequence:
</p>
<dl>
<dd> If

<math xmlns="http://www.w3.org/1998/Math/MathML" display="block" mode="display"
><mi>X</mi><mspace width="0.6em"/><mo>&#x2192;</mo><mspace width="0.6em"/><mi>B</mi></math>

with fibre <math xmlns="http://www.w3.org/1998/Math/MathML" mode="inline"
><mi>F</mi></math
>, then

<math xmlns="http://www.w3.org/1998/Math/MathML" display="block" mode="display"
><mrow><mmultiscripts><mi>E</mi><mn>2</mn><mfenced open="" close="" separators=""><mi>p</mi><mi>q</mi></mfenced
></mmultiscripts
><mo>=</mo><msup><mi>H</mi><mi>p</mi></msup
><mo class="invisible">&#x2061;</mo><mfenced open="(" close =")"
><mrow><mi>B</mi><mo>,</mo><msup><mi>H</mi><mi>q</mi></msup
><mo class="invisible">&#x2061;</mo><mfenced open="(" close =")"
><mi>F</mi></mfenced
></mrow></mfenced
></mrow><mo>&#x21D2;</mo><msup><mi>H</mi><mi>*</mi></msup
><mo class="invisible">&#x2061;</mo><mfenced open="(" close =")"
><mi>X</mi></mfenced
><mspace width="0.6em"/><mtext>.</mtext
></math>
</dd>
</dl>
<p>
is produced by
</p>
<dl class="verblist">
<dd><kbd>
If</kbd></dd>
<dd><kbd>
\[&#xA0;X&#xA0;\&#xA0;\longrightarrow&#xA0;\&#xA0;&#xA0;B&#xA0;\]</kbd></dd>
<dd><kbd>
with&#xA0;fibre&#xA0;$F$\@,&#xA0;then&#xA0;</kbd></dd>
<dd><kbd>
\[&#xA0;{\mscript{E}{}{}{2}{\vect[]{p}{q}}&#xA0;=&#xA0;H^p\aF(B,&#xA0;H^q\aF(F))}</kbd></dd>
<dd><kbd>
&#xA0;&#xA0;&#xA0;\abuts&#xA0;H^{*}\aF(X)&#xA0;\&#xA0;\eos&#xA0;\]</kbd></dd>
</dl>
<p>
In this markup the command <kbd>\aF</kbd>, is not strictly necessary.
It provides a deliberate way to indicate that, in the second
instance above, the symbol <math xmlns="http://www.w3.org/1998/Math/MathML" mode="inline"
><mi>X</mi></math
> is argument-like in relation to
the symbol <math xmlns="http://www.w3.org/1998/Math/MathML" mode="inline"
><msup><mi>H</mi><mi>*</mi></msup
></math
>.    In MathML rendering <em>aF</em> gives rise to
presentation-level MathML's invisible operator <em>ApplyFunction</em>.
</p>
</div>

<div class="section">
<h3>9.&#xA0;&#xA0;<a id="SU-9"></a>Beyond this Introductory Guide</h3>

<p>More information about GELLMU is available in the <a href="glman.html">Manual</a>.
Some examples of topics to be found there include:
</p>
<ul>
<li><p> Inclusion of graphic objects: <a href="glman.html#graphics">Manual (key &#x201C;<kbd>graphics</kbd>&#x201D;)</a>.  </p>
</li>
<li><p> Equations and equation arrays: <a href="glman.html#eqn">Manual (key &#x201C;<kbd>eqn</kbd>&#x201D;)</a>.  </p>
</li>
<li><p> Emulation of <em>LaTeX</em>'s <em>newtheorem</em> environments: <a href="glman.html#assert">Manual (key &#x201C;<kbd>assert</kbd>&#x201D;)</a>.  </p>
</li>
<li><p> Emulation of <em>LaTeX</em>'s counters: <a href="glman.html#counters">Manual (key &#x201C;<kbd>counters</kbd>&#x201D;)</a>.  </p>
</li>
<li><p> The flowchart for regular GELLMU processing: <a href="glman.html#flow">Manual (key &#x201C;<kbd>flow</kbd>&#x201D;)</a>.  </p>
</li>
</ul>
<p></p>

<p>The author tries to keep fresh information on the <a href="http://www.albany.edu/~hammond/gellmu/">GELLMU web site</a>.
</p>
</div>
<hr />
<h3>Footnotes</h3>
<ol>
<li><a id="fnote1" href="#revfnote1">*</a> This should not be construed to mean, however, that standard <em>LaTeX</em>
processing could not incorporate this type of source markup at some
time in the future.  </li>
<li><a id="fnote2" href="#revfnote2">*</a> The author prefers the freely available cross-platform
browser <em>Firefox</em> (<a href="http://www.mozilla.com/"><kbd>http://www.mozilla.com/</kbd></a>) from the
<em>Mozilla</em> Project.  </li>
<li><a id="fnote3" href="#revfnote3">*</a> In
GELLMU source, as in <em>LaTeX</em> source &#x2018;<kbd>~</kbd>&#x2019; is markup for
&#x201C;non-breaking space&#x201D;.    Note further that ASCII tilde
&#x201C;<kbd>\tld;</kbd>&#x201D; should not be confused with either the accent
command &#x201C;<kbd>\tilde</kbd>&#x201D; or the math command &#x201C;<kbd>\sim</kbd>&#x201D;
(rendered as <math xmlns="http://www.w3.org/1998/Math/MathML" mode="inline"
><mo>&#x223C;</mo></math
>) that is typically used for mathematical
operators.</li>
<li><a id="fnote4" href="#revfnote4">*</a> The SGML document type definition is
more elaborately commented than its XML mirror found in the file
<kbd>xml/xgellmu.dtd</kbd>.</li>
<li><a id="fnote5" href="#revfnote5">*</a> The most convenient
way to call the syntactic translator with a non-default function is to
make the first line of the source file point to the name of the
special function.    For example, the function &#x201C;gellmu-verblist&#x201D; will
be called if the first line of the source file is &#x201C;<kbd>%!verblist</kbd>&#x201D;.</li>
<li><a id="fnote6" href="#revfnote6">*</a> Similar intellectual property issues pertain more widely to fonts.
In particular, for this reason by default in the XHTML+MathML
output character coloring is used to cover possible font failures
for the blackboard bold, calligraphic, and fraktur math fonts; the
colors corresponding colors are, respectively, red, blue, and green.</li>
<li><a id="fnote7" href="#revfnote7">*</a> Beyond that in certain situations some web browsers
appear not to deal well with empty table cells, and placing an HTML
non-breaking space in such a cell is often a good thing for that
reason.    Of course, the special character &#x2018;<kbd>~</kbd>&#x2019; for
non-breaking space in GELLMU source gives rise in HTML output to the
SGML non-breaking space character denoted with the entity reference
&#x201C;&amp;#xA0;&#x201D;.</li>
</ol>
</body>
</html>