summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/fac
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
committerNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
commite0c6872cf40896c7be36b11dcc744620f10adf1d (patch)
tree60335e10d2f4354b0674ec22d7b53f0f8abee672 /macros/latex/contrib/fac
Initial commit
Diffstat (limited to 'macros/latex/contrib/fac')
-rw-r--r--macros/latex/contrib/fac/fac.cls1134
-rw-r--r--macros/latex/contrib/fac/fac2egui.tex1113
2 files changed, 2247 insertions, 0 deletions
diff --git a/macros/latex/contrib/fac/fac.cls b/macros/latex/contrib/fac/fac.cls
new file mode 100644
index 0000000000..65b6df91ab
--- /dev/null
+++ b/macros/latex/contrib/fac/fac.cls
@@ -0,0 +1,1134 @@
+%%
+%% This is file `fac.cls'
+%%
+%% Springer Formal Aspects in Computing document class
+%% Copyright (2000) Cambridge University Press
+%%
+%% by Alison Woollatt, based on fac.cls v1.01 1999/08/03
+%%
+%% Includes fleqn.clo by the LaTeX3 project team
+%%
+%% Bugs (in the case of unchanged files) should be reported to
+%% texline@cup.cam.ac.uk
+%%
+%% \CharacterTable
+%% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
+%% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z
+%% Digits \0\1\2\3\4\5\6\7\8\9
+%% Exclamation \! Double quote \" Hash (number) \#
+%% Dollar \$ Percent \% Ampersand \&
+%% Acute accent \' Left paren \( Right paren \)
+%% Asterisk \* Plus \+ Comma \,
+%% Minus \- Point \. Solidus \/
+%% Colon \: Semicolon \; Less than \<
+%% Equals \= Greater than \> Question mark \?
+%% Commercial at \@ Left bracket \[ Backslash \\
+%% Right bracket \] Circumflex \^ Underscore \_
+%% Grave accent \` Left brace \{ Vertical bar \|
+%% Right brace \} Tilde \~}
+%%
+\NeedsTeXFormat{LaTeX2e}[1997/12/01]
+\ProvidesClass{fac}[2000/07/13 v2.00 Springer Formal Aspects in Computing
+ ^^Jdocument class (wide design)]
+
+\newif\ifprodtf
+
+\DeclareOption{oneside}{\relax}
+\DeclareOption{twoside}{\@twosidetrue \@mparswitchtrue}
+\DeclareOption{draft}{\setlength\overfullrule{5\p@}}
+\DeclareOption{final}{\setlength\overfullrule{\z@}}
+\DeclareOption{onecolumn}{\@twocolumnfalse}
+\DeclareOption{twocolumn}{\relax}
+\DeclareOption{titlepage}{\relax}
+\DeclareOption{notitlepage}{\relax}
+\DeclareOption{leqno}{\relax}
+\DeclareOption{fleqn}{\relax}
+\DeclareOption{prodtf}{\prodtftrue}
+\ExecuteOptions{twoside,final,onecolumn}
+\ProcessOptions\relax
+
+\PassOptionsToPackage{fleqn}{amsmath}
+\AtBeginDocument{\@ifpackageloaded{amsmath}{\@mathmargin\mathindent\relax}{}}
+
+%\RequirePackage{multicol}% version 1997/12/16 v1.5 or later
+%\RequirePackage{pagefram}% CUP LaTeX 2e package version 1998/04/23 v0.2
+
+%\RequirePackage{pagefram}% CUP LaTeX 2e package version 1998/04/23 v0.2
+\ifprodtf \RequirePackage{CUPTimes,fac2esym,pagefram}\fi
+
+\setlength\lineskip{1\p@}
+\setlength\normallineskip{1\p@}
+\renewcommand\baselinestretch{}
+
+\renewcommand\normalsize{%
+ \@setfontsize\normalsize\@xpt\@xipt
+ \abovedisplayskip 6\p@ \@plus 1\p@ \@minus 1\p@
+ \belowdisplayskip \abovedisplayskip
+ \abovedisplayshortskip 3\p@ \@plus 1\p@
+ \belowdisplayshortskip \abovedisplayshortskip
+ \let\@listi\@listI
+}
+
+\normalsize
+
+\newcommand\small{%
+ \@setfontsize\small\@viiipt\@ixpt
+ \abovedisplayskip 6\p@ \@plus 1\p@ \@minus 1\p@
+ \belowdisplayskip \abovedisplayskip
+ \abovedisplayshortskip 3\p@ \@plus 1\p@
+ \belowdisplayshortskip \abovedisplayshortskip
+ \def\@listi{\leftmargin\leftmargini
+ \topsep 2\p@ \@plus 1\p@ \@minus 1\p@
+ \parsep \z@ \itemsep 2\p@}%
+}
+
+\newcommand\footnotesize{%
+ \@setfontsize\footnotesize\@viiipt\@ixpt
+ \abovedisplayskip 5\p@ \@plus 1\p@ \@minus 1\p@
+ \belowdisplayskip \abovedisplayskip
+ \abovedisplayshortskip \z@ \@plus 1\p@
+ \belowdisplayshortskip \abovedisplayshortskip
+ \def\@listi{\leftmargin\leftmargini
+ \topsep 2\p@ \@plus 1\p@ \@minus 1\p@
+ \parsep \z@ \itemsep 2\p@}%
+}
+
+\newcommand\scriptsize{\@setfontsize\scriptsize\@viipt\@viiipt}
+\newcommand\tiny{\@setfontsize\tiny\@vpt\@vipt}
+\newcommand\large{\@setfontsize\large\@xiipt\@xivpt}
+\newcommand\Large{\@setfontsize\Large\@xivpt{16}}
+
+\ifprodtf
+ \newcommand\LARGE{\@setfontsize\LARGE{16}{18}}
+ \newcommand\titlesize{\@setfontsize\titlesize{24}{29}}
+\else
+ \newcommand\LARGE{\@setfontsize\LARGE\@xviipt{18}}
+ \newcommand\titlesize{\@setfontsize\titlesize\@xxvpt{29}}
+\fi
+\newcommand\huge{\@setfontsize\huge\@xxpt{25}}
+\newcommand\Huge{\@setfontsize\Huge\@xxvpt{30}}
+
+\newcommand\affilsize{\@setfontsize\affilsize\@viiipt\@xpt}
+\newcommand\medium{\@setfontsize\medium\@xipt\@xipt}
+
+\DeclareOldFontCommand{\rm}{\normalfont\rmfamily}{\mathrm}
+\DeclareOldFontCommand{\sf}{\normalfont\sffamily}{\mathsf}
+\DeclareOldFontCommand{\tt}{\normalfont\ttfamily}{\mathtt}
+\DeclareOldFontCommand{\bf}{\normalfont\bfseries}{\mathbf}
+\DeclareOldFontCommand{\it}{\normalfont\itshape}{\mathit}
+\DeclareOldFontCommand{\sl}{\normalfont\slshape}{\@nomath\sl}
+\DeclareOldFontCommand{\sc}{\normalfont\scshape}{\@nomath\sc}
+\DeclareRobustCommand*\cal{\@fontswitch\relax\mathcal}
+\DeclareRobustCommand*\mit{\@fontswitch\relax\mathnormal}
+
+\ifprodtf \else
+ \DeclareTextFontCommand\textsfi{\usefont{OT1}{cmss}{m}{sl}}
+ \DeclareMathAlphabet\mathsfi {OT1}{cmss}{m}{sl}
+ \DeclareTextFontCommand\textsfb{\usefont{OT1}{cmss}{bx}{n}}
+ \DeclareMathAlphabet\mathsfb {OT1}{cmss}{bx}{n}
+ \DeclareTextFontCommand\textsfbi{\usefont{OT1}{cmss}{m}{sl}}
+ \DeclareMathAlphabet\mathsfbi {OT1}{cmss}{m}{sl}
+
+ \setlength\oddsidemargin{0pc}
+ \setlength\evensidemargin{0pc}
+ \setlength\topmargin{0pc}
+\fi
+
+\setlength\marginparwidth{2.0cm}
+\setlength\marginparsep{10\p@}
+
+\setlength\headheight{11\p@}
+%\setlength\headsep{11\p@}
+\setlength\headsep{22\p@}
+\setlength\topskip{11\p@}
+\setlength\footskip{26\p@}
+
+%\setlength\textheight{50\baselineskip}
+\setlength\textheight{55\baselineskip}
+\addtolength\textheight{\topskip}
+\setlength\textwidth{165mm}%{29pc}
+\setlength\columnsep{8.5mm}%{10\p@}
+\setlength\columnseprule{\z@}
+
+\setlength\footnotesep{6.65\p@}
+\setlength{\skip\footins}{16.5\p@ \@plus 12\p@ \@minus 1\p@}
+
+\setlength\floatsep{11\p@ \@plus 5.5\p@ \@minus 1\p@}
+\setlength\textfloatsep{15\p@ \@plus 4.5\p@ \@minus 3\p@}
+\setlength\intextsep{11\p@ \@plus 5.5\p@ \@minus 2\p@}
+
+\setlength\dblfloatsep{11\p@ \@plus 5.5\p@ \@minus 2\p@}
+\setlength\dbltextfloatsep{15\p@ \@plus 4.5\p@ \@minus 3\p@}
+
+\setlength\@fptop{\z@ \@plus 0fil}
+\setlength\@fpsep{11\p@ \@plus 0fil}
+\setlength\@fpbot{\z@ \@plus 3fil}
+\setlength\@dblfptop{\z@ \@plus 0fil}
+\setlength\@dblfpsep{11\p@ \@plus 0fil}
+\setlength\@dblfpbot{\z@ \@plus 3fil}
+\setlength\marginparpush{5\p@}
+
+\setlength\parskip{\z@ \@plus .3\p@}
+\setlength\parindent{1.5em}
+\setlength\partopsep{\z@ \@plus 1\p@}
+\@lowpenalty 51
+\@medpenalty 151
+\@highpenalty 301
+\@beginparpenalty -\@lowpenalty
+\@endparpenalty -\@lowpenalty
+\@itempenalty -\@lowpenalty
+\clubpenalty\z@
+\widowpenalty\@M
+
+\newcommand\section{%
+ \@startsection{section}{1}{\z@}
+ {-19\p@ \@plus -5.5\p@ \@minus -2.25\p@}
+ {11\p@ \@plus \z@ \@minus 1\p@}
+ {\large\normalfont\bfseries\raggedright}%
+}
+
+\newcommand\subsection{%
+ \@startsection{subsection}{2}{\z@}
+ {-21\p@ \@plus -2.25\p@ \@minus -2.25\p@}
+ {11\p@ \@plus \z@ \@minus 1\p@}
+ {\medium\normalfont\bfseries\raggedright}%
+}
+
+\newcommand\subsubsection{%
+ \@startsection{subsubsection}{3}{\z@}
+ {-11\p@ \@plus -2.25\p@ \@minus -2.25\p@}
+ {11\p@ \@plus \z@ \@minus 1\p@}
+ {\medium\normalfont\itshape\raggedright}%
+}
+
+\newcommand\paragraph{%
+ \@startsection{paragraph}{4}{\z@}
+ {11\p@ \@plus 2.25\p@ \@minus 1\p@}
+ {-.5em}
+ {\normalsize\normalfont\bfseries}%
+}
+
+\newcommand\subparagraph{%
+ \@startsection{subparagraph}{4}{\parindent}
+ {11\p@ \@plus 2.25\p@ \@minus 1\p@}
+ {-.5em}
+ {\normalsize\normalfont\itshape}%
+}
+
+\def\@seccntformat#1{\csname the#1\endcsname.\enskip}% FROM LATEX.LTX
+
+%\newcommand\appendixname{Appendix}
+
+\newcommand\appendix{\par
+ \setcounter{section}\z@
+ \renewcommand\thesection{\@Alph\c@section}%
+}
+
+% from latex.ltx
+
+% remove \clearpage
+\def \twocolumn {%
+% \clearpage
+ \global\columnwidth\textwidth
+ \global\advance\columnwidth-\columnsep
+ \global\divide\columnwidth\tw@
+ \global\hsize\columnwidth
+ \global\linewidth\columnwidth
+ \global\@twocolumntrue
+ \global\@firstcolumntrue
+ \col@number \tw@
+ \@ifnextchar [\@topnewpage\@floatplacement
+}
+
+\setlength\leftmargini {1.5em}
+\setlength\leftmarginii {1.25pc}
+\setlength\leftmarginiii{1.25pc}
+\setlength\leftmarginiv {1.25pc}
+\setlength\leftmarginv {1pc}
+\setlength\leftmarginvi {1pc}
+
+\setlength\leftmargin{\leftmargini}
+\setlength\labelsep{.5em}
+\setlength\labelwidth{\leftmargini}
+\addtolength\labelwidth{-\labelsep}
+
+\newcommand\makeRLlabel[1]{\rlap{{\normalfont\rmfamily #1}}\hss}
+\newcommand\makeRRlabel[1]{\hss\llap{{\normalfont\rmfamily #1}}}
+
+\def\@listI{\leftmargin\leftmargini
+ \topsep 6\p@ \@plus 1\p@ \@minus 1\p@
+ \itemsep 2\p@ \@plus 1\p@ \@minus .5\p@
+ \parsep \z@
+}
+\let\@listi\@listI
+\@listi
+
+\def\@listii{\leftmargin\leftmarginii
+ \labelwidth\leftmarginii \advance\labelwidth-\labelsep
+ \topsep 6\p@ \@plus 1\p@ \@minus 1\p@
+ \parsep \z@ \itemsep 2\p@
+ \let\makelabel\makeRRlabel
+}
+
+\def\@listiii{\leftmargin\leftmarginiii
+ \labelwidth\leftmarginiii \advance\labelwidth-\labelsep
+ \topsep 6\p@ \@plus 1\p@ \@minus 1\p@
+ \parsep \z@ \partopsep \z@ \itemsep \topsep
+ \let\makelabel\makeRRlabel
+}
+
+\def\@listiv{\leftmargin\leftmarginiv
+ \labelwidth\leftmarginiv \advance\labelwidth-\labelsep
+ \let\makelabel\makeRRlabel
+}
+
+\def\@listv{\leftmargin\leftmarginv
+ \labelwidth\leftmarginv \advance\labelwidth-\labelsep
+ \let\makelabel\makeRRlabel
+}
+
+\def\@listvi{\leftmargin\leftmarginvi
+ \labelwidth\leftmarginvi \advance\labelwidth-\labelsep
+ \let\makelabel\makeRRlabel
+}
+
+\renewenvironment{itemize} % FROM LATEX.LTX
+ {\ifnum \@itemdepth >\thr@@ \@toodeep \else
+ \advance\@itemdepth\@ne
+ \edef\@itemitem{labelitem\romannumeral\the\@itemdepth}%
+ \expandafter
+ \list
+ \csname\@itemitem\endcsname
+ {\let\makelabel\makeRRlabel}%
+ \fi}
+ {\endlist}
+
+\newcommand\labelitemi{$\m@th\bullet$}
+\newcommand\labelitemii{\normalfont\bfseries --}
+\newcommand\labelitemiii{$\m@th\cdot$}
+\newcommand\labelitemiv{$\m@th*$}
+
+\renewenvironment{enumerate} % FROM LATEX.LTX
+ {\ifnum \@enumdepth >\thr@@ \@toodeep\else
+ \advance\@enumdepth\@ne
+ \edef\@enumctr{enum\romannumeral\the\@enumdepth}%
+ \fi
+ \@ifnextchar [{\@enumeratetwo}{\@enumerateone}}
+ {\endlist}
+
+\def\@enumeratetwo[#1]{%
+ \expandafter
+ \list
+ \csname label\@enumctr\endcsname
+ {\settowidth\labelwidth{\normalfont\rmfamily #1}%
+ \leftmargin\labelwidth \advance\leftmargin\labelsep
+ \usecounter{\@enumctr}%
+ \let\makelabel\makeRRlabel}%
+}
+
+\def\@enumerateone{%
+ \expandafter
+ \list
+ \csname label\@enumctr\endcsname
+ {\usecounter{\@enumctr}%
+ \let\makelabel\makeRRlabel}%
+}
+
+\newcommand\labelenumi {\theenumi.}
+\newcommand\labelenumii {(\theenumii)}
+\newcommand\labelenumiii{\theenumiii}
+\newcommand\labelenumiv {\theenumiv}
+
+\renewcommand\theenumi {\@arabic\c@enumi}
+\renewcommand\theenumii {\@alph\c@enumii}
+\renewcommand\theenumiii{\@roman\c@enumiii}
+\renewcommand\theenumiv {\@Alph\c@enumiv}
+
+\renewcommand\p@enumii {\theenumi.}
+\renewcommand\p@enumiii{\theenumi.\theenumii.}
+\renewcommand\p@enumiv {\p@enumiii\theenumiii.}
+
+\newcommand*\descriptionlabel[1]{\hspace\labelsep \normalfont\bfseries #1}
+
+\newenvironment{description}
+ {\list{}{\labelwidth\z@
+ \itemindent-\leftmargin
+ \let\makelabel\descriptionlabel}}
+ {\endlist}
+
+\newenvironment{verse}
+ {\let\\\@centercr
+ \list{}{\itemsep\z@
+ \itemindent -1.5em%
+ \listparindent \itemindent
+ \leftmargin \parindent
+ \rightmargin\leftmargin
+ \advance\leftmargin 1.5em}\item[]}
+ {\endlist}
+
+\newenvironment{quotation}
+ {\small\normalfont\rmfamily
+ \list{}{\listparindent 1.5em%
+ \leftmargin\z@ \rightmargin\leftmargin
+ \parsep \z@ \@plus 1\p@}%
+ \item[]}
+ {\endlist}
+
+\let\quote\quotation
+\let\endquote\endquotation
+
+\newcommand\maketitle{\par
+% \begingroup
+ \newpage
+ \global\@topnum\z@
+ \@maketitle
+ \thispagestyle{titlepage}%
+ \@thanks
+ \if@correspondset\relax \else \make@correspond\fi
+% \endgroup
+% \setcounter{footnote}\z@
+ \global\let\@maketitle\relax
+ \global\let\@thanks\@empty
+ \global\let\@title\@empty
+ \global\let\@author\@empty
+ \global\let\maketitle\relax
+ \global\let\thanks\relax
+}
+
+\renewcommand\and{\end{author@tabular}\vskip 6\p@\par
+ \begin{author@tabular}[t]{@{}l@{}}}
+
+\def\@maketitle{\newpage
+% \if@shortcom \vspace*{30\p@}\else \vspace*{95\p@}\fi
+% \if@shortcom \vspace*{30\p@}\else \vspace*{74\p@}\fi
+ \if@shortcom \vspace*{30\p@}\else \vspace*{85\p@}\fi
+ {\raggedright \sloppy
+ \if@shortcom
+ {\LARGE\normalfont
+ \bfseries\itshape\selectfont\strut Short Communication\par}%
+ {\large\normalfont\itshape Edited by\ \@editor\par}%
+ \vskip 38\p@
+ \fi
+ {\titlesize\normalfont\bfseries\strut \@title \par}%
+ \vskip 11\p@
+ {\large\normalfont\rmfamily
+ \begin{author@tabular}[t]{@{}l@{}}\@author
+ \end{author@tabular}\par}%
+ \vskip 11\p@
+ }%
+ \par\noindent
+ \vskip 22\p@
+}
+
+\newenvironment{abstract}
+ {\normalsize\normalfont\rmfamily
+ \list{}{\leftmargin\z@ \rightmargin\leftmargin
+ \parsep \z@ \@plus 1\p@ \listparindent\parindent}%
+ \item[]{\normalfont\bfseries Abstract.}\enskip\ignorespaces}
+% {\endlist\titlerule}
+ {\endlist}
+
+\newcommand\titlerule{\vspace{3\p@}\footnoterule\vspace{7\p@}\par}
+
+\renewcommand\twocolumn{\begin{multicols}{2}}
+\renewcommand\onecolumn{\end{multicols}\bigskip}
+
+\newenvironment{keywords}
+ {\normalsize\normalfont\rmfamily
+ \list{}{\leftmargin\z@ \rightmargin\leftmargin
+ \parsep \z@ \@plus 1\p@}%
+ \item[]{\normalfont\bfseries Keywords:}\enskip\ignorespaces}
+ {\endlist\vspace{38pt plus 5pt}}% extra vert space added for 2-col version
+
+
+\mark{{}{}}
+
+\renewcommand\author{\@ifnextchar [{\@authortwo}{\@authorone}}
+\def\@author{}
+\def\@authortwo[#1]#2{\gdef\@author{#2}\gdef\@shortauthor{#1}}
+\def\@authorone#1{\gdef\@author{#1}\gdef\@shortauthor{#1}}
+
+\newcommand\shortauthor[1]{\gdef\@shortauthor{#1}}
+\def\@shortauthor{}
+
+\renewcommand\title{\@ifnextchar [{\@titletwo}{\@titleone}}
+\def\@title{}
+\def\@titletwo[#1]#2{\gdef\@title{#2}\gdef\@shorttitle{#1}}
+\def\@titleone#1{\gdef\@title{#1}\gdef\@shorttitle{#1}}
+
+\newcommand\shorttitle[1]{\gdef\@shorttitle{#1}}
+\def\@shorttitle{\@title}
+
+\newcommand\volume[1]{\gdef\@volume{#1}}
+\def\@volume{0}
+
+\newcommand\pagerange[1]{\gdef\@pagerange{#1}}
+\def\@pagerange{1--000}
+
+\newcommand\pubyear[1]{\gdef\@pubyear{#1}}
+\def\@pubyear{19XX}
+
+\newif\if@shortcom
+\newcommand\shortcom{\@shortcomtrue}
+
+\newcommand\editor[1]{\gdef\@editor{#1}}
+\def\@editor{}
+
+\newif\if@correspondset
+\newcommand\correspond[1]{\gdef\@correspond{#1}\@correspondsettrue}
+\def\@correspond{\@shortauthor}
+
+\newcommand\makecorrespond{\make@correspond}
+
+\def\make@correspond{%
+ {\def\@makefntext##1{\parindent 1em\noindent\normalfont\rmfamily ##1}%
+ \footnotetext{{\normalfont\itshape
+ Correspondence and offprint requests to\/}: \@correspond}}%
+}
+
+\newcommand\receivedline{\@ifnextchar [{\rec@arg}{\rec@noarg}}
+\def\rec@noarg{\par\noindent{\small\normalfont\itshape Received \@date}}
+\def\rec@arg[#1]{\par\noindent{\small\normalfont\itshape Received #1}}
+
+\newcommand\acceptedline[2]{\par\noindent{\small\normalfont\itshape
+ Accepted in revised form #1 by #2}}
+
+\newcommand\journal[1]{\gdef\@journal{#1}}
+\ifprodtf
+ \journal{Formal Aspects of Computing (\number\@pubyear) \@volume: \@pagerange\\
+ \copyright\ \@pubyear\ BCS}
+\else
+ \journal{Under consideration for publication in Formal Aspects of
+ \rlap{Computing}\\ {}}
+\fi
+
+\def\ps@headings{%
+ \let\@mkboth\markboth
+ \def\@oddhead{\small\normalfont\rmfamily \@shorttitle \hfill \thepage}%
+ \def\@evenhead{\small\normalfont\rmfamily \thepage \hfill \@shortauthor}%
+ \let\@oddfoot\@empty
+ \let\@evenfoot\@empty
+ \def\sectionmark##1{\markboth{##1}{}}%
+ \def\subsectionmark##1{\markright{##1}}%
+}
+
+\def\ps@myheadings{%
+ \let\@mkboth\@gobbletwo
+ \def\@oddhead{\small\normalfont\rmfamily \rightmark \hfill \thepage}%
+ \def\@evenhead{\small\normalfont\rmfamily \thepage \hfill \leftmark}%
+ \let\@oddfoot\@empty
+ \let\@evenfoot\@empty
+ \let\sectionmark\@gobble
+ \let\subsectionmark\@gobble
+}
+
+\newcommand\outerline{\rule{100\p@}{1.5\p@}}
+
+\def\ps@titlepage{%
+ \let\@mkboth\@gobbletwo
+ \def\@oddhead{\footnotesize\normalfont\rmfamily
+ \raisebox{\z@}[8\p@][1\p@]{\parbox{.7\textwidth}{\@journal}}\hfill
+ \ifprodtf
+ \raisebox{8\p@}[10\p@][2\p@]{\parbox[t]{100\p@}{\raggedleft
+ \outerline\\[-3.3\p@]%
+ {\normalfont\sffamily\bfseries\fontsize{14}{14}\selectfont
+ Formal Aspects\break
+ of Computing\par}\vskip-3.4\p@ \outerline}}%
+ \fi}%
+ \let\@evenhead\@oddhead
+ \let\@evenfoot\@empty
+ \let\@oddfoot\@empty
+ \let\sectionmark\@gobble
+ \let\subsectionmark\@gobble
+}
+
+\def\@xnthm#1#2[#3]{% FROM LATEX.LTX
+\expandafter\@ifdefinable\csname #1\endcsname
+ {\@definecounter{#1}\@newctr{#1}[#3]%
+ \expandafter\xdef\csname the#1\endcsname{\expandafter\noexpand
+ \csname the#3\endcsname \@thmcountersep \@thmcounter{#1}}%
+ \global\@namedef{#1}{\@thm{#1}{#2}}%
+ \global\@namedef{#1*}{\@thmstar{#1}{#2}}%
+ \global\@namedef{end#1}{\@endtheorem}%
+ \global\@namedef{end#1*}{\@endthmstar}}%
+}
+
+\def\@ynthm#1#2{% FROM LATEX.LTX
+\expandafter\@ifdefinable\csname #1\endcsname
+ {\@definecounter{#1}%
+ \expandafter\xdef\csname the#1\endcsname{\@thmcounter{#1}}%
+ \global\@namedef{#1}{\@thm{#1}{#2}}%
+ \global\@namedef{#1*}{\@thmstar{#1}{#2}}%
+ \global\@namedef{end#1}{\@endtheorem}%
+ \global\@namedef{end#1*}{\@endthmstar}}%
+}
+
+\def\@othm#1[#2]#3{% FROM LATEX.LTX
+ \@ifundefined{c@#2}{\@nocounterr{#2}}%
+ {\expandafter\@ifdefinable\csname #1\endcsname
+ {\global\@namedef{the#1}{\@nameuse{the#2}}%
+ \global\@namedef{#1}{\@thm{#2}{#3}}%
+ \global\@namedef{#1*}{\@thmstar{#2}{#3}}%
+ \global\@namedef{end#1}{\@endtheorem}%
+ \global\@namedef{end#1*}{\@endthmstar}}}%
+}
+
+\newif\ifrembrks
+\newcommand\removebrackets{\rembrkstrue}
+
+\def\@begintheorem#1#2{% FROM LATEX.LTX
+ \normalfont\rmfamily \trivlist
+ \item[\hskip \labelsep{\normalfont\bfseries #1\ #2.}]%
+}
+
+\def\@opargbegintheorem#1#2#3{% FROM LATEX.LTX
+ \normalfont\rmfamily \trivlist
+ \item[\hskip \labelsep{\normalfont\bfseries
+ #1\ #2\ \ifrembrks #3\global\rembrksfalse\else (#3)\fi.}]%
+}
+
+\def\@endtheorem{\endtrivlist}% FROM LATEX.LTX
+
+\def\@thmstar#1#2{\@ifnextchar[{\@ythmstar{#1}{#2}}{\@xthmstar{#1}{#2}}}
+\def\@xthmstar#1#2{\@beginthmstar{#2}{\csname the#1\endcsname}\ignorespaces}
+\def\@ythmstar#1#2[#3]{\@opargbeginthmstar{#2}{\csname the#1\endcsname}{#3}%
+ \ignorespaces}
+
+\def\@thmstarcounter#1{{}}
+\def\@thmstarcountersep{{}}
+
+\def\@beginthmstar#1#2{%
+ \normalfont\rmfamily \trivlist
+ \item[\hskip \labelsep{\normalfont\bfseries #1.}]%
+}
+
+\def\@opargbeginthmstar#1#2#3{%
+ \normalfont\rmfamily \trivlist
+ \item[\hskip \labelsep{\normalfont\bfseries
+ #1\ \ifrembrks #3\global\rembrksfalse\else (#3)\fi.}]%
+}
+
+\def\@endthmstar{\endtrivlist}
+
+\newenvironment{proof}
+ {\@ifnextchar[{\@oprf}{\@nprf}}
+ {\hspace*{1em}{\proofbox}\endtrivlist}
+
+\newenvironment{proof*}
+ {\@ifnextchar[{\@oprf}{\@nprf}}
+ {\endtrivlist}
+
+\def\@oprf[#1]{\normalfont\rmfamily \trivlist
+ \item[\hskip \labelsep{\normalfont\itshape #1}]%
+}
+
+\def\@nprf{\normalfont\rmfamily \trivlist
+ \item[\hskip \labelsep{\normalfont\itshape Proof.}]%
+}
+
+\ifprodtf
+ \newcommand\proofbox{\ensuremath{\CUPproofbox}\relax}
+\else
+ \newsavebox{\proofsavebox}
+ \sbox{\proofsavebox}
+ {\unitlength 1\p@\begin{picture}(6.5,6.5)%
+ \put(0,0){\framebox(6.5,6.5){}}\end{picture}}
+ \newcommand\proofbox{\usebox{\proofsavebox}\relax}
+\fi
+
+\newcommand\mathproofbox{\rlap{\quad\proofbox}}
+
+\setlength\arraycolsep{5\p@}
+\setlength\tabcolsep{6\p@}
+\setlength\arrayrulewidth{.5\p@}
+\setlength\doublerulesep{1.5\p@}
+
+\setlength\tabbingsep{\labelsep}
+\setlength{\skip\@mpfootins}{\skip\footins}
+
+\setlength\fboxsep{3\p@}
+\setlength\fboxrule{\arrayrulewidth}
+
+\setcounter{secnumdepth}{3}
+
+%\newcounter{part}
+\newcounter{section}
+\newcounter{subsection}[section]
+\newcounter{subsubsection}[subsection]
+\newcounter{paragraph}[subsubsection]
+\newcounter{subparagraph}[paragraph]
+%\def\thepart {\arabic{part}}
+\renewcommand\thesection {\@arabic\c@section}
+\renewcommand\thesubsection {\thesection.\@arabic\c@subsection}
+\renewcommand\thesubsubsection {\thesubsection.\@arabic\c@subsubsection}
+\renewcommand\theparagraph {\thesubsubsection.\@arabic\c@paragraph}
+\renewcommand\thesubparagraph {\theparagraph.\@arabic\c@subparagraph}
+
+\newcommand\@pnumwidth{1.55em}
+\newcommand\@tocrmarg {2.55em}
+\newcommand\@dotsep{4.5}
+\setcounter{tocdepth}{2}
+
+\def\@dottedtocline#1#2#3#4#5{% FROM LATEX.LTX
+ \ifnum #1>\c@tocdepth \else
+ \vskip \z@ \@plus.2\p@
+ {\leftskip #2\relax \rightskip \@tocrmarg \parfillskip -\rightskip
+ \parindent #2\relax\@afterindenttrue
+ \interlinepenalty\@M
+ \leavevmode
+ \@tempdima #3\relax
+ \advance\leftskip \@tempdima \null\hskip -\leftskip
+ {#4}\nobreak
+ \leaders\hbox{$\m@th
+ \mkern \@dotsep mu\hbox{\phantom{.}}\mkern \@dotsep
+ mu$}\hfill
+ \nobreak
+ \hb@xt@\@pnumwidth{\hfil\normalfont \normalcolor #5}%
+ \par}%
+ \fi
+}
+
+\newcommand\contentsname{Contents}
+
+\newcommand\tableofcontents{%
+ \section*{\contentsname}\@starttoc{toc}%
+ \par\vspace{11\p@}%
+}
+
+\newcommand*\l@section[2]{%
+ \addpenalty{\@secpenalty}%
+ \@tempdima 1.5em%
+ \begingroup
+ \parindent \z@ \rightskip \@pnumwidth
+ \parfillskip -\@pnumwidth
+ \normalfont\rmfamily\leavevmode
+ \advance\leftskip\@tempdima
+ \hskip -\leftskip
+ #1\nobreak\hfil \nobreak\hb@xt@\@pnumwidth{\hss \ }\par
+ \endgroup
+}
+
+\newcommand*\l@subsection{\@dottedtocline{2}{1.5em}{2.3em}}
+\newcommand*\l@subsubsection{\@dottedtocline{3}{3.8em}{3.2em}}
+\newcommand*\l@paragraph{\@undottedtocline{4}{7.0em}{4.1em}}
+\newcommand*\l@subparagraph{\@undottedtocline{5}{10em}{5em}}
+
+\newcommand\listfigurename{List of Figures}
+
+\newcommand\listoffigures{%
+ \section*{\listfigurename\@mkboth{\listfigurename}{\listfigurename}}%
+ \@starttoc{lof}%
+ \par\vspace{11\p@}%
+}
+
+\newcommand*\l@figure{\@dottedtocline{1}{1.5em}{2.3em}}
+
+\newcommand\listtablename{List of Tables}
+
+\newcommand\listoftables{%
+ \section*{\listtablename\@mkboth{\listtablename}{\listtablename}}%
+ \@starttoc{lot}%
+ \par\vspace{11\p@}%
+}
+
+\let\l@table\l@figure
+
+\newif\ifnobr@cket
+\DeclareRobustCommand\nbcite{\nobr@ckettrue\cite}
+
+\def\@cite#1#2{\ifnobr@cket\else[\fi % FROM LATEX.LTX
+ {#1\if@tempswa , #2\fi}%
+ \ifnobr@cket\nobr@cketfalse\else]\fi
+}
+
+\newcommand\refname{References}
+
+\newenvironment{thebibliography}[1]
+ {\section*{\refname}%
+ \addcontentsline{toc}{section}{\refname}%
+ \small\normalfont\rmfamily
+ \list{\@biblabel{\@arabic\c@enumiv}}
+ {\labelwidth 3.5pc%
+ \leftmargin\labelwidth
+ \advance\leftmargin\labelsep
+ \itemsep \z@
+ \usecounter{enumiv}%
+ \let\p@enumiv\@empty
+ \renewcommand\theenumiv{\@arabic\c@enumiv}%
+ \let\makelabel\makeRLlabel}
+ \parindent\z@
+ \parskip\z@ \@plus .1\p@\relax
+ \sloppy\clubpenalty\z@ \widowpenalty\@M
+ \sfcode`\.\@m}
+ {\def\@noitemerr
+ {\@latex@warning{Empty `thebibliography' environment}}%
+ \endlist}
+
+\newcommand\newblock{\hskip .11em \@plus.33em \@minus.07em}
+
+\newcommand\indexname{Index}
+
+\newenvironment{theindex}
+ {\section*{\indexname}%
+ \addcontentsline{toc}{section}{\indexname}%
+ \footnotesize\normalfont\rmfamily
+ \parindent\z@
+ \parskip\z@ \@plus .1\p@\relax
+ \let\item\@idxitem}
+ {\par}
+
+\newcommand\@idxitem{\par\hangindent 1em}
+\newcommand\subitem {\@idxitem \hspace*{1em}}
+\newcommand\subsubitem{\@idxitem \hspace*{1em}}
+\newcommand\indexspace{\par\vskip\baselineskip \relax}
+
+\renewcommand\footnoterule{%
+ \kern-3\p@ \hrule \@width 12pc \@height .5\p@ \kern 2.5\p@}
+
+\newcommand\@makefntext[1]{%
+ \parindent 1em\noindent $^{\@thefnmark}$\enskip \normalfont\rmfamily #1}
+
+\setcounter{topnumber}{2}
+\renewcommand\topfraction{.9}
+\setcounter{bottomnumber}{1}
+\renewcommand\bottomfraction{.5}
+\setcounter{totalnumber}{3}
+\renewcommand\textfraction{.1}
+\renewcommand\floatpagefraction{.85}
+\setcounter{dbltopnumber}{2}
+\renewcommand\dbltopfraction{.9}
+\renewcommand\dblfloatpagefraction{.85}
+
+\let\@@caption\caption
+\newif\if@contcap
+\newcommand\contcaption{\@contcaptrue\addtocounter{\@captype}\m@ne \@@caption}
+
+\newif\ifrem@fullpt
+\newcommand\removefullpoint{\global\rem@fullpttrue}
+
+\def\cap@extra{\if@contcap {\normalfont\itshape ---cont.}\else \ifrem@fullpt \else .\fi\fi\ }
+
+\long\def\@makecaption@figure#1#2{%
+ \ifbot@fig \rule{\textwidth}{.25\p@}\fi
+ \vskip 5.5\p@
+ \setbox\@tempboxa\hbox{#1\cap@extra #2}%
+ \ifdim \wd\@tempboxa >\hsize
+ #1\cap@extra #2\par
+ \else
+ \hb@xt@\hsize{\hfil\box\@tempboxa\hfil}%
+ \fi
+ \global\rem@fullptfalse
+ \global\@contcapfalse
+ \global\bot@figfalse
+}
+
+\long\def\@makecaption@table#1#2{\vskip 5.5\p@
+ \setbox\@tempboxa\hbox{#1\cap@extra #2}%
+ \ifdim \wd\@tempboxa >\hsize
+ #1\cap@extra #2\par
+ \else
+ \hb@xt@\hsize{\box\@tempboxa\hfill}%
+ \fi
+ \global\rem@fullptfalse
+ \global\@contcapfalse
+}
+
+\newcounter{table}
+\renewcommand\thetable{\@arabic\c@table}
+\def\fps@table{tbp}
+\def\ftype@table{1}
+\def\ext@table{lot}
+\newcommand\tablename{Table}
+\def\fnum@table{\tablename~\thetable}
+
+\def\fstyle@table{\small\normalfont\rmfamily}
+\def\fjust@table{\sloppy}
+\def\fcapjust@table{\sloppy}
+\def\fcapsize@table{\small\normalfont\bfseries}
+\def\fcapstyle@table{\small\normalfont\rmfamily}
+
+\newenvironment{table}
+ {\@float{table}\let\@makecaption\@makecaption@table}
+ {\end@float}
+
+\newenvironment{table*}
+ {\@dblfloat{table}\let\@makecaption\@makecaption@table}
+ {\end@dblfloat}
+
+\newcounter{figure}
+\renewcommand\thefigure{\@arabic\c@figure}
+\def\fps@figure{tbp}
+\def\ftype@figure{2}
+\def\ext@figure{lof}
+\newcommand\figurename{Fig.}
+\def\fnum@figure{\figurename~\thefigure}
+
+\def\fstyle@figure{\normalfont\rmfamily}
+\def\fjust@figure{\sloppy}
+\def\fcapjust@figure{\sloppy}
+\def\fcapsize@figure{\small\normalfont\bfseries}
+\def\fcapstyle@figure{\small\normalfont\rmfamily}
+
+\newenvironment{figure}
+ {\@float{figure}\let\@makecaption\@makecaption@figure}
+ {\end@float}
+
+\newenvironment{figure*}
+ {\@dblfloat{figure}\let\@makecaption\@makecaption@figure}
+ {\end@dblfloat}
+
+\newif\ifbot@fig
+\newenvironment{bottomfigure}{\let\@makecaption\@makecaption@figure
+ \def\fps@figure{b}%
+ \setcounter{bottomnumber}{1}%
+ \global\bot@figtrue
+ \@float{figure}\fstyle@figure}
+ {\end@float}
+
+\long\def\@caption#1[#2]#3{\par\addcontentsline{\csname % FROM LATEX.LTX
+ ext@#1\endcsname}{#1}{\protect\numberline{\csname
+ the#1\endcsname}{\ignorespaces #2}}\begingroup
+ \@parboxrestore
+ \normalsize
+ \@makecaption{\csname fcapjust@#1\endcsname
+ \csname fcapsize@#1\endcsname
+ \csname fnum@#1\endcsname}%
+ {\csname fcapstyle@#1\endcsname \ignorespaces #3}\par
+ \endgroup
+}
+
+\def\@xfloat #1[#2]{% FROM LATEX.LTX
+ \def\@captype {#1}%
+ \def\@fps {#2}%
+ \@onelevel@sanitize \@fps
+ \def \reserved@b {!}%
+ \ifx \reserved@b \@fps
+ \@fpsadddefault
+ \else
+ \ifx \@fps \@empty
+ \@fpsadddefault
+ \fi
+ \fi
+ \ifhmode \@bsphack\@floatpenalty-\@Mii \else \@floatpenalty-\@Miii\fi
+ \ifinner
+ \@parmoderr\@floatpenalty\z@
+ \else
+ \@next\@currbox\@freelist
+ {%
+ \@tempcnta \sixt@@n
+ \expandafter \@tfor \expandafter \reserved@a
+ \expandafter :\expandafter =\@fps
+ \do
+ {%
+ \if \reserved@a h%
+ \ifodd \@tempcnta
+ \else
+ \advance \@tempcnta \@ne
+ \fi
+ \fi
+ \if \reserved@a t%
+ \@setfpsbit \tw@
+ \fi
+ \if \reserved@a b%
+ \@setfpsbit 4%
+ \fi
+ \if \reserved@a p%
+ \@setfpsbit 8%
+ \fi
+ \if \reserved@a !%
+ \ifnum \@tempcnta>15
+ \advance\@tempcnta -\sixt@@n\relax
+ \fi
+ \fi
+ }%
+ \@tempcntb \csname ftype@\@captype \endcsname
+ \multiply \@tempcntb \@xxxii
+ \advance \@tempcnta \@tempcntb
+ \global \count\@currbox \@tempcnta
+ }%
+ \@fltovf
+ \fi
+ \global \setbox\@currbox
+ \color@vbox
+ \normalcolor
+ \vbox \bgroup
+ \hsize\columnwidth \@parboxrestore
+ \@floatboxreset
+ \csname fstyle@\@captype\endcsname
+ \csname fjust@\@captype\endcsname
+}
+
+\def\author@tabular{\let\@halignto\@empty \@authortable}
+\let\endauthor@tabular\endtabular
+
+\def\@authortable{\leavevmode \hbox \bgroup $\let\@acol\@tabacol
+ \let\@classz\@tabclassz
+ \let\@classiv\@tabclassiv
+ \let\\\author@tabcrone
+ \@tabarray}
+
+\def\author@tabcrone{{\ifnum0=`}\fi
+ \@xtabularcr
+ \affilsize\normalfont\rmfamily
+ \let\\\author@tabcrtwo
+ \ignorespaces}
+
+\def\author@tabcrtwo{{\ifnum0=`}\fi
+ \@xtabularcr[-4\p@]%
+ \affilsize\normalfont\rmfamily
+ \let\\\author@tabcrtwo
+ \ignorespaces}
+
+\let\oldtabular\tabular
+\let\endoldtabular\endtabular
+
+\renewenvironment{tabular}% FROM LATEX.LTX
+ {\let\@halignto\@empty
+%
+ \def\hline{\noalign{\ifnum0=`}\fi
+ \vskip 3\p@
+ {\hb@xt@.667\textwidth{\hrulefill}}%
+ \vskip 3\p@
+ \futurelet \@tempa\@xhline}%
+%
+ \def\@xhline{\ifx\@tempa\hline
+ \vskip -6\p@
+ \vskip \doublerulesep
+ \fi
+ \ifnum0=`{\fi}}%
+%
+ \def\fullhline{\noalign{\ifnum0=`}\fi
+ \vskip 3\p@
+ {\hb@xt@\textwidth{\hrulefill}}%
+ \vskip 3\p@
+ \futurelet \@tempa\@xfhline}%
+%
+ \def\@xfhline{\ifx\@tempa\fullhline
+ \vskip -6\p@
+ \vskip \doublerulesep
+ \fi
+ \ifnum0=`{\fi}}%
+%
+ \def\@arrayrule{\@addtopreamble{\hskip -.5\arrayrulewidth
+ \hskip .5\arrayrulewidth}}%
+ \@tabular}
+ {\endoldtabular}
+
+\newdimen\mathindent
+\mathindent\parindent
+%\mathindent 0pc
+
+\renewcommand\[{\relax
+ \ifmmode\@badmath
+ \else
+ \begin{trivlist}%
+ \@beginparpenalty\predisplaypenalty
+ \@endparpenalty\postdisplaypenalty
+ \item[]\leavevmode
+% \newdimen\nsize %following 4 lines to reduce displayed eqns by 1pt
+% \nsize\f@size\p@
+% \advance\nsize -1\p@
+% \fontsize{\nsize}{\f@baselineskip}\selectfont
+ \hb@xt@\linewidth\bgroup $\m@th\displaystyle %$
+ \hskip\mathindent\bgroup
+ \fi}
+
+\renewcommand\]{\relax
+ \ifmmode
+ \egroup $\hfil% $
+ \egroup
+ \end{trivlist}%
+ \else \@badmath
+ \fi}
+
+\renewenvironment{equation}%
+ {\@beginparpenalty\predisplaypenalty
+ \@endparpenalty\postdisplaypenalty
+ \refstepcounter{equation}%
+ \trivlist \item[]\leavevmode
+ % \newdimen\nsize %following 4 lines to reduce displayed eqns by 1pt
+ % \nsize\f@size\p@
+ % \advance\nsize -1\p@
+ % \fontsize{\nsize}{\f@baselineskip}\selectfont
+ \hb@xt@\linewidth\bgroup $\m@th% $
+ \displaystyle
+ \hskip\mathindent}%
+ {$\hfil % $
+ \displaywidth\linewidth\hbox{\@eqnnum}%
+ \egroup
+ \endtrivlist}
+
+\renewenvironment{eqnarray}{%
+ \stepcounter{equation}%
+ \def\@currentlabel{\p@equation\theequation}%
+ \global\@eqnswtrue\m@th
+ \global\@eqcnt\z@
+ \tabskip\mathindent
+ \let\\=\@eqncr
+ \setlength\abovedisplayskip{\topsep}%
+ \ifvmode
+ \addtolength\abovedisplayskip{\partopsep}%
+ \fi
+ \addtolength\abovedisplayskip{\parskip}%
+ \setlength\belowdisplayskip{\abovedisplayskip}%
+ \setlength\belowdisplayshortskip{\abovedisplayskip}%
+ \setlength\abovedisplayshortskip{\abovedisplayskip}%
+% \newdimen\nsize %following 4 lines to reduce displayed eqns by 1pt
+% \nsize\f@size\p@
+% \advance\nsize -1\p@
+% \fontsize{\nsize}{\f@baselineskip}\selectfont
+ $$\everycr{}\halign to\linewidth% $$
+ \bgroup
+ \hskip\@centering
+ $\displaystyle\tabskip\z@skip{##}$\@eqnsel&%
+ \global\@eqcnt\@ne
+% \hskip \tw@\arraycolsep \hfil${##}$\hfil
+ \hfil${\;##\;}$\hfil
+% &\global\@eqcnt\tw@ \hskip \tw@\arraycolsep
+ &\global\@eqcnt\tw@
+ $\displaystyle{##}$\hfil \tabskip\@centering&%
+ \global\@eqcnt\thr@@
+ \hb@xt@\z@\bgroup\hss##\egroup\tabskip\z@skip\cr}%
+ {\@@eqncr
+ \egroup
+ \global\advance\c@equation\m@ne$$% $$
+ \@ignoretrue
+ }
+
+\iffalse
+\def\eqnarray{\stepcounter{equation}\let\@currentlabel=\theequation
+\global\@eqnswtrue
+\global\@eqcnt\z@\tabskip\@centering\let\\=\@eqncr
+$$\halign to \displaywidth\bgroup\@eqnsel\hskip\@centering
+ $\displaystyle\tabskip\z@{##}$&\global\@eqcnt\@ne
+% \hskip 2\arraycolsep \hfil${##}$\hfil
+ \hfil${\;##\;}$\hfil
+% &\global\@eqcnt\tw@ \hskip 2\arraycolsep $\displaystyle\tabskip\z@{##}$\hfil
+ &\global\@eqcnt\tw@ $\displaystyle\tabskip\z@{##}$\hfil
+ \tabskip\@centering&\llap{##}\tabskip\z@\cr}\fi
+
+
+\newcommand\today{}
+\edef\today{\number\day\ \ifcase\month\or
+ January\or February\or March\or April\or May\or June\or
+ July\or August\or September\or October\or November\or December\fi
+ \ \number\year}
+
+\newif\iffontfound
+\newcommand\checkfont[1]{%
+ \batchmode
+ \font\test=#1\relax
+ \errorstopmode
+ \fontfoundfalse
+ \ifx\test\nullfont \else \fontfoundtrue\fi
+}
+
+\pagestyle{headings}
+\pagenumbering{arabic}
+\frenchspacing
+\flushbottom
+
+
+\endinput
+
+% end of file fac.cls
diff --git a/macros/latex/contrib/fac/fac2egui.tex b/macros/latex/contrib/fac/fac2egui.tex
new file mode 100644
index 0000000000..c947672048
--- /dev/null
+++ b/macros/latex/contrib/fac/fac2egui.tex
@@ -0,0 +1,1113 @@
+% This is file FAC2egui.tex
+% v2.00, 13th July 2000
+% (based on FACguide.tex v1.12)
+
+% Copyright (C) 1999,2000 Cambridge University Press
+
+\NeedsTeXFormat{LaTeX2e}
+
+% The following saves the original definitions of \geq and \leq (guide only).
+\let\realgeq\geq
+\let\realleq\leq
+
+\documentclass{fac}
+
+\ifprodtf \else \usepackage{latexsym}\fi
+
+% The following macros automatically define symbols to be used in Table 1 of
+% the authors' guide, using characters from the AMS symbol font MSAM.
+
+\newcommand\black{\ensuremath{\blacktriangleright}}
+\newcommand\white{\ensuremath{\vartriangleright}}
+
+\newif\ifamsfontsloaded
+\ifprodtf
+ \newcommand\whbl{\white\kern-.1em--\kern-.1em\black}
+ \newcommand\blwh{\black\kern-.1em--\kern-.1em\white}
+ \newcommand\blbl{\black\kern-.1em--\kern-.1em\black}
+ \newcommand\whwh{\white\kern-.1em--\kern-.1em\white}
+ \amsfontsloadedtrue
+\else
+ \checkfont{msam10}
+ \iffontfound
+ \IfFileExists{amssymb.sty}
+ {\usepackage{amssymb}\amsfontsloadedtrue
+ \newcommand\whbl{\white\kern-.125em--\kern-.125em\black}%
+ \newcommand\blwh{\black\kern-.125em--\kern-.125em\white}%
+ \newcommand\blbl{\black\kern-.125em--\kern-.125em\black}%
+ \newcommand\whwh{\white\kern-.125em--\kern-.125em\white}}
+ {}
+ \fi
+\fi
+
+%% Macros for the guide only %%
+\newcommand\eg{\textit{e.g.\ }}
+\newcommand\etc{\textit{etc}}
+\newcommand\hatp{\skew3\hat{p}}
+\newcommand\lra{\ensuremath{\quad\longrightarrow\quad}}
+\providecommand\AMSLaTeX{AMS\,\LaTeX}
+%% End of macros for the guide %%
+
+\newtheorem{theorem}{Theorem}[section]
+
+\title[Formal Aspects of Computing: \LaTeXe\ Submissions]
+ {Formal Aspects of Computing:\\
+ \LaTeXe\ Guide for Authors}
+
+\author[M. Reed and C. Notarmarco]
+ {Mark Reed$^1$ and Christiane Notarmarco$^2$\\
+ $^1$Electronic Products and Composition Group,\\
+ Cambridge University Press, Cambridge,\\
+ $^2$Springer-Verlag London Limited, Godalming, Surrey, UK}
+
+\correspond{Christiane Notarmarco, Springer-Verlag London
+ Limited, Sweetapple House, Catteshall Road,
+ Godalming, Surrey GU7 3DJ, UK.
+ e-mail: chris@svl.co.uk}
+
+\pubyear{2000}
+\pagerange{\pageref{firstpage}--\pageref{lastpage}}
+
+\begin{document}
+\label{firstpage}
+
+\makecorrespond
+
+\maketitle
+
+\begin{abstract}
+This guide is for authors who are preparing papers for the
+\emph{Formal Aspects of Computing} journal using the \LaTeXe\ %
+document-preparation system and the Formal Aspects of Computing
+class file (\texttt{fac.cls}).
+\end{abstract}
+
+\begin{keywords}
+\LaTeXe; Class file; \verb"fac.cls"; User guide
+\end{keywords}
+
+\section{Introduction}
+
+In addition to the standard submission of hardcopy from authors,
+\emph{Formal Aspects of Computing} now accepts machine-readable forms of papers
+in \LaTeXe. The layout design for the \emph{Formal Aspects of Computing} journal
+has been implemented as a \LaTeXe\ class file, based on the \verb"article"
+class as discussed in the \LaTeX\ manual (2nd edition) \cite{Lam:LaTeX}.
+
+Commands which differ from the standard \LaTeX\ interface, or which are
+provided in addition to the standard interface, are explained in this
+guide (which is \emph{not} a substitute for the \LaTeX\ manual itself).
+
+Note that the final printed version of papers will use the Monotype Times
+typeface rather than the Computer Modern available to authors. For this reason
+line and page breaks will change and authors should not insert hard breaks
+in their text.
+
+Authors planning to submit their papers in \LaTeXe\ are advised to use
+\verb"fac.cls" as early as possible in the creation of their files.
+
+\subsection{Introduction to \LaTeX}
+
+\LaTeX\ is constructed as a series of macros on top of the \TeX\ typesetting
+program. \LaTeX\ adds to \TeX\ a collection of facilities which simplify
+typesetting for authors by allowing them to concentrate on the logical
+structure of the document rather than its visual layout. Careful use of the
+\LaTeX\ mark-up philosophy results in uniform layout rather than the
+\emph{ad hoc} results of some word-processing systems. Authors are advised to
+let the defaults control font selection etc., rather than tinker themselves.
+
+The \LaTeX\ system provides a consistent and comprehensive document preparation
+interface. Among other things, \LaTeX\ can automatically number list
+entries, equations, figures, tables and footnotes, as well as sections and
+subsections. Using this numbering system, bibliographic citations, page
+references and cross references to any other numbered entity (e.g. sections,
+equations, figures) are straightforward.
+
+\subsection{The FAC document class}
+
+The use of document classes allows a simple change of style (or style option)
+to transform the appearance of your document. The Springer-Verlag London Limited
+(SVL) FAC class preserves the standard \LaTeX\ interface such that any document
+which can be produced using the standard \LaTeX\ \verb"article" class can also be
+produced with the FAC class.
+However, the measure (or width of text) is different from that
+for ARTICLE; therefore line breaks will change and it is possible that
+longer equations may need re-setting.
+Authors are urged to use \verb"fac.cls" from the beginning of their document
+preparation, otherwise longer lines may require re-formatting at a later stage.
+
+\subsection{General style issues}
+
+Use of \LaTeX\ defaults will result in a pleasing uniformity of layout
+and font selection. Authors should resist the temptation to make
+\emph{ad hoc} changes to these. Also avoid use of direct formatting unless
+really necessary. Papers will be edited as usual, and this process may be
+obstructed by the use of inserted line breaks, etc.
+
+For general style issues, authors are referred to the `Preparation of
+manuscripts' in the back cover of the journal. Authors who are interested in
+the details of style are referred to \cite{But:Copy} and \cite{Chicago}. The
+language used in the journals is British English, and spelling should conform
+to this.
+
+Use should be made of symbolic references (\verb"\ref") in order to
+protect against late changes of order, etc.
+
+\subsection{Submission of \LaTeX\ articles}
+
+Authors who intend to submit a \LaTeX\ article to FAC should obtain a
+copy of the journal's class file \verb"fac.cls". This is available on
+request in the first instance from Springer-Verlag London Limited; remember to
+specify the type of media you require. Alternatively, you can download
+the files from the Springer Web page
+(\verb"http://link.springer.de/link/service/journals/00165/")
+
+If you cannot obtain the proper journal class file, use the standard
+\verb"article" class with the default `\verb"10pt"' option.
+
+When submitting the final article, ensure that the following are included and
+are clearly labelled.
+\begin{enumerate}
+ \item A hardcopy printout of the article.
+ \item The input file (exactly matching the hardcopy).
+ \item A copy of all user-defined macros.
+ \item If you have used \textsc{Bib}\TeX, the \verb".bib", \verb".bbl"
+ and \verb".bst" files that were used.
+ \item Any other files necessary to prepare the article for typesetting.
+\end{enumerate}
+Submit this, if at all possible by e-mail, and the hardcopy by post
+to D.\,J. Cooke (see the inside-cover of the journal for correct e-mail
+and postal addresses). If you do not have access to e-mail, send the files
+on disc -- PC or Macintosh $3\frac{1}{2}$ in. -- along with the hard copy
+to D.\,J. Cooke.
+
+\section{Using the FAC class file}
+
+First, copy the file \verb"fac.cls" into an appropriate subdirectory on
+your system. The FAC class is implemented as a complete document class,
+and \emph{not} as an class option.
+In order to use the FAC class, replace \verb"article" by \verb"fac" in the
+\verb"\documentclass" command at the beginning of your document: that is,
+%
+\begin{verbatim}
+ \documentclass{article}
+\end{verbatim}
+%
+is replaced by
+%
+\begin{verbatim}
+ \documentclass{fac}
+\end{verbatim}
+%
+Author-defined macros should be inserted before \verb"\begin{document}",
+or in a separate file and should be included with the submission.
+Authors must not change any of the macro definitions or parameters
+in \verb"fac.cls".
+
+\subsection{Document class options}\label{sec:ClassOp}
+
+In general, the following standard document class options should \emph{not} be
+used with the FAC class file:
+%
+\begin{itemize}
+ \item \texttt{10pt}, \texttt{11pt} and \texttt{12pt} -- unavailable;
+ \item \texttt{twoside} is the default (\texttt{oneside} is disabled);
+ \item \texttt{onecolumn} is the default (\texttt{twocolumn} is disabled);
+ \item \texttt{titlepage} is not required and is disabled;
+ \item \texttt{fleqn} and \texttt{leqno} should not be used
+ (\verb"fleqn" is already incorporated into the FAC class).
+\end{itemize}
+%
+\ifprodtf
+The following new class options are provided:
+\begin{itemize}
+ \item \texttt{prodtf} -- tells the class file that we want to use the
+ production typeface. This automatically resets the odd, even and top
+ margins.
+\end{itemize}
+\fi
+
+\section{Additional facilities}
+
+In addition to all the standard \LaTeX\ design elements, the FAC class
+includes the following features.
+%
+\begin{enumerate}
+ \item Additional commands for typesetting the title page. Extended
+ commands for specifying a short version of the title and author(s)
+ for the running headlines.
+ \item The \verb"\correspond" and \verb"\makecorrespond" commands for printing
+ the name and address for further correspondence.
+ \item The \verb"keywords" environment.
+ \item Extended \verb"\newtheorem" command which can produce
+ unnumbered environments.
+ \item Proof environment.
+ \item Control of enumerated lists.
+\end{enumerate}
+%
+Once you have used these additional facilities in your document,
+it can be processed only with \verb"fac.cls".
+
+\subsection{Titles and author's name}
+
+In the FAC style, the title of the article and the author's name (or
+authors' names) are used both at the beginning of the article for the main
+title and throughout the article as running headlines at the top of every
+page.
+The title is used on odd-numbered pages (rectos) and the author's name
+appears on even-numbered pages (versos).
+Although the main heading can run to several lines of text, the running
+head line must be a single line.
+Moreover, the main heading can also incorporate new line commands
+(\eg \verb"\\") but these are not acceptable in a running headline.
+To enable you to specify an alternative short title, which should not be
+more than 48 characters and spaces, and an alternative short author's name,
+the standard \verb"\title" and \verb"\author" commands have been extended
+to take an optional argument to be used as the running headline. \eg
+%
+\begin{verbatim}
+ \title[Formal Aspects of Computing: \LaTeXe\ Submissions]
+ {Formal Aspects of Computing:\\
+ \LaTeXe\ Guide for Authors}
+
+ \author[M. Reed and C. Notarmarco]
+ {Mark Reed$^1$ and Christiane Notarmarco$^2$\\
+ $^1$Electronic Products and Composition Group,\\
+ Cambridge University Press,Cambridge,\\
+ $^2$Springer-Verlag London Limited, Godalming, Surrey, UK}
+\end{verbatim}
+
+You may wish to add a \verb"\thanks" note, which produces a footnote to the
+title or author. In this case, the superscripts by the authors' names
+will be automatically generated.
+
+\subsection{Correspondence note}
+
+The footnote at the bottom of the first page is generated automatically,
+and begins with the words `\emph{Correspondence and offprint
+requests to}'.
+The appropriate name and address must be given as an argument to the
+\verb"\correspond" command in the preamble:
+%
+\begin{verbatim}
+ \correspond{Christiane Notarmarco, Springer-Verlag London
+ Limited, Sweetapple House, Catteshall Road,
+ Godalming, Surrey GU7 3DJ, UK.
+ e-mail: chris@svl.co.uk}
+\end{verbatim}
+%
+This information is subsequently used by the \verb"\makecorrespond" command.
+This may be placed anywhere after the \verb"\begin{document}" but within the
+text of the first page. If you have other footnotes on the first page, the
+\verb"\makecorrespond" command should follow them ensuring the output of this
+command is printed at the foot of the page.
+
+If you omit the \verb"\correspond" and \verb"\makecorrespond" commands,
+the name in the correspondence note defaults to the short author's name.
+
+\subsection{Abstract and keywords}
+
+At the beginning of your article, the title should be generated in the
+usual way using the \verb"\maketitle" command. Immediately following the
+title you should include an abstract followed by a list of keywords. For
+example, the titles for this guide were produced by the following source:
+%
+\begin{verbatim}
+ \maketitle
+
+ \begin{abstract}
+ This guide is for authors who are preparing papers for the
+ \emph{Formal Aspects of Computing} journal using the \LaTeXe\ %
+ document-preparation system and the Formal Aspects of Computing
+ class file (\texttt{fac.cls}).
+ \end{abstract}
+
+ \begin{keywords}
+ \LaTeXe; Class file; \verb"fac.cls"; User guide
+ \end{keywords}
+\end{verbatim}
+
+\subsection{Theorems}
+
+The FAC class provides an extended \verb"\newtheorem" command which enables
+you to generate unnumbered environments. e.g. An unnumbered `Theorem' can be typeset
+with the following:
+%
+\begin{verbatim}
+ \newtheorem{theorem}{Theorem}[section]
+ :
+ \begin{theorem}
+ This gives a normal numbered theorem.
+ \end{theorem}
+ \begin{theorem*}
+ This gives an unnumbered theorem.
+ \end{theorem*}
+\end{verbatim}
+%
+Which produces:
+%
+\begin{theorem}
+This gives a normal numbered theorem.
+\end{theorem}
+\begin{theorem*}
+This gives an unnumbered theorem.
+\end{theorem*}
+%
+The preferred numbering scheme is for theorems to be numbered within sections,
+as 1.1, 1.2, 1.3, etc. In order to allow
+authors maximum flexibility in numbering and naming, \emph{no} theorem-like
+environments are defined in \verb"fac.cls". Rather, you have to define
+each one yourself. Theorem-like environments include Theorem, Definition,
+Lemma, Corollary, and Proposition.
+
+\subsection{Proofs}
+
+A new environment exists for Proofs, e.g.
+%
+\begin{proof}
+Noting that a state satisfying $VS$ has no elements
+$V_{xi}$ of $V$ satisfying $0<V_{xi}<1$, it follows
+that the proof is just as the proof was for the
+corresponding case of \emph{Bi-States}.
+\end{proof}
+%
+This was produced by the following code:
+%
+\begin{verbatim}
+ \begin{proof}
+ Noting that a state satisfying $VS$ has no elements
+ $V_{xi}$ of $V$ satisfying $0<V_{xi}<1$, it follows
+ that the proof is just as the proof was for the
+ corresponding case of \emph{Bi-States}.
+ \end{proof}
+\end{verbatim}
+%
+The end of proof marker \proofbox\ is produced automatically. If you wish
+to omit this, use the \verb"proof*" environment instead.
+
+The proof environment can also take an optional argument which allows you
+to produce `special' proofs, e.g.
+%
+ \begin{proof}[Proof of Theorem~1.1.]
+ Noting that a state satisfying $VS$ has no elements
+ $V_{xi}$ of $V$ satisfying $0<V_{xi}<1$, it follows
+ that the proof is just as the proof was for the
+ corresponding case of \emph{Bi-States}.
+ \end{proof}
+%
+Which was produced like this:
+%
+\begin{verbatim}
+ \begin{proof}[Proof of Theorem~1.1.]
+ Noting that a state satisfying $VS$ has no elements
+ $V_{xi}$ of $V$ satisfying $0<V_{xi}<1$, it follows
+ that the proof is just as the proof was for the
+ corresponding case of \emph{Bi-States}.
+ \end{proof}
+\end{verbatim}
+%
+Notice that once the optional argument is used, you have to type all of
+the text which is to appear as the heading (including the full-stop).
+
+\subsection{Lists}
+
+The FAC class provides the three standard list environments:
+\begin{itemize}
+ \item Numbered lists, created using the \verb"enumerate" environment;
+ \item Labelled lists, created using the \verb"description" environment;
+ \item Bulleted lists, created using the \verb"itemize" environment.
+\end{itemize}
+The enumerated list numbers each list item with an arabic numeral.
+Alternative styles can be achieved by inserting a redefinition of the
+number labelling command after the \verb"\begin{enumerate}".
+For example, a list numbered with roman numerals inside parentheses can be
+produced by the following commands:
+%
+\begin{verbatim}
+ \begin{enumerate}
+ \renewcommand\theenumi{\roman{enumi}}
+ \renewcommand\labelenumi{(\theenumi)}
+ \item first item
+ :
+ \end{enumerate}
+\end{verbatim}
+%
+This produces the following list:
+%
+\begin{enumerate}
+ \renewcommand\theenumi{\roman{enumi}}
+ \renewcommand\labelenumi{(\theenumi)}
+ \item first item
+ \item second item
+ \item \etc\ldots
+\end{enumerate}
+%
+In the last example, the labels were pushed out into the margin because
+the standard list indentation is designed to be sufficient for arabic
+numerals rather than for the wider roman numerals. In order to enable
+different labels to be used more easily, the \verb"enumerate" environment
+in the FAC class can be given an optional argument which (like the standard
+\verb"thebibliography" environment) specifies the \emph{widest label}. For
+example,
+%
+\begin{enumerate}[(iii)]
+ \renewcommand\theenumi{\roman{enumi}}
+ \renewcommand\labelenumi{(\theenumi)}
+ \item first item
+ \item second item
+ \item \etc\ldots
+\end{enumerate}
+%
+was produced by the following input:
+%
+\begin{verbatim}
+ \begin{enumerate}[(iii)]
+ \renewcommand\theenumi{\roman{enumi}}
+ \renewcommand\labelenumi{(\theenumi)}
+ \item first item
+ :
+ \end{enumerate}
+\end{verbatim}
+
+\section{Mathematics}
+
+The FAC class will set displayed mathematics with the correct indent
+provided you use the \LaTeX\ standard of open and closed square brackets
+as delimiters. The following equation
+ \[ \sum_{i=1}^p \lambda_i = \mathrm{trace}(\mathbf{S}) \]
+was typeset in the FAC style using the commands:
+\begin{verbatim}
+ \[ \sum_{i=1}^p \lambda_i = \mathrm{trace}(\mathbf{S}) \]
+\end{verbatim}
+Note the difference between the positioning of this equation and of
+the following centred equation
+ $$ \alpha_{j+1} > \bar{\alpha}+ks_{\alpha} $$
+which was (wrongly) typeset using double dollars as follows:
+\begin{verbatim}
+ $$ \alpha_{j+1} > \bar{\alpha}+ks_{\alpha} $$
+\end{verbatim}
+Also, do not leave blank lines above and below displayed equations
+unless a new paragraph is really intended.
+
+\section{Typeface}
+
+\subsection{AMS fonts -- especially if you do not have them}
+
+If you need symbols from the AMS font set but do not have them installed,
+you can ensure that they will be correctly typeset by taking the following
+steps.
+Set up user-defined macros that can be redefined by the typesetter to use
+the correct AMS macros. For example, the blackboard bold symbols,
+sometimes called shell or outline characters, are obtained with the AMS
+macro \verb"\mathbb{..}". Instead, use a macro definition such as:
+%
+\begin{verbatim}
+ % replace font!
+ \newcommand\BbbE{\ensuremath{\mathsf{E}}} % Blackboard bold E
+\end{verbatim}
+%
+This substitutes a sans serif character where you want blackboard
+bold. You can typeset the input file and the typesetter is alerted to do the
+substitution.
+
+The following example (which uses the \verb"\providecommand" macro) will work
+without modification by the typesetter, because the \verb"\providecommand"
+macro will not overwrite any existing \verb"\mathbb" definition.
+%
+\begin{verbatim}
+ \providecommand\mathbb[1]{\ensuremath{\mathsf{#1}}}
+ ...
+ \newcommand\BbbE{\mathbb{E}} % Blackboard bold E
+\end{verbatim}
+
+Plain \TeX\ provides only \verb"\leq" and \verb"\qeq" which typeset the
+Computer Modern symbols $\realleq$ and $\realgeq$, respectively. These will
+be redefined at typesetting to use the AMS symbols \verb"\leqslant" and
+\verb"\geqslant", to give slanted symbols.
+
+If you wish to use AMS fonts with \LaTeXe\ you must be using at least
+version 2.0. Earlier versions are not supported.
+
+\subsection{Sans serif symbols}
+
+The \verb"\textsf" and \verb"\mathsf" commands change the typeface to
+sans serif, giving upright characters. Occasionally, other sans serif
+fonts are needed. You should use the following supplied macros to obtain
+these other fonts.\\[6pt]
+%
+\verb" \textsf{text} " \lra \textsf{text}
+ \qquad \verb"$\mathsf{math}$ " \lra $\mathsf{math}$\\
+\verb" \textsfi{text} " \lra \textsfi{text}
+ \qquad \verb"$\mathsfi{math}$ " \lra $\mathsfi{math}$\\
+\verb" \textsfb{text} " \lra \textsfb{text}
+ \qquad \verb"$\mathsfb{math}$ " \lra $\mathsfb{math}$\\
+\verb" \textsfbi{text}" \lra \textsfbi{text}
+ \qquad \verb"$\mathsfbi{math}$" \lra $\mathsfbi{math}$\\[6pt]
+%
+You can use them like this:
+%
+\begin{verbatim}
+ \newcommand\ssC{\mathsf{C}} % for sans serif C
+ \newcommand\sfsP{\mathsfi{P}} % for sans serif slanted P
+ \newcommand\sfbsX{\mathsfbi{X}} % for sans serif bold slanted X
+\end{verbatim}
+%
+Note that the bold-slanted macros \verb"\textsfbi" and
+\verb"\mathsfbi" use the slanted sans serif font \verb"cmssi"
+-- because there is no bold-slanted math sans serif font in available in
+Computer Modern! If you use the supplied sans-serif text and math commands
+the typesetter will be able to substitute the fonts automatically.
+
+\subsection{Bold math italic symbols}
+
+If you require bold math italic symbols/letters, \LaTeX\ provides several ways
+of getting them. Firstly, \LaTeX's \verb"\boldmath" switch which can be
+used like this:
+\begin{verbatim}
+ $ \mbox{\boldmath $P$} = \mathsf{J}\mathcal{E} T $
+\end{verbatim}
+As you can see it takes quite alot of typing to achieve a bold math italic P.
+Another problem is that you can't use \verb"\boldmath" in math mode, thus the
+\verb"\mbox" forces the resulting text into text style (which you may not
+want).
+
+You can cut down on the typing by defining the following macro (which
+is in the preamble of this guide):
+\begin{verbatim}
+ \providecommand\boldsymbol[1]{\mbox{\boldmath $#1$}}
+\end{verbatim}
+Then for the above example you can define:
+\begin{verbatim}
+ \newcommand\bldP{\boldsymbol{P}}
+\end{verbatim}
+the achieve the same result. This still doesn't remove the default to
+text style problem.
+
+If you have the \verb"amsbsy" package on your system, then you can remove
+this limitation as well by placing a \verb"\usepackage{amsbsy}" after the
+\verb"\documentclass" line in your document, and then use \verb"\boldsymbol"
+for bold math italic symbols (don't define \verb"\boldsymbol" yourself when
+using \verb"amsbsy").
+
+\subsection{Script characters}
+
+Script characters should be typeset using \LaTeXe's \verb"\mathcal"
+command. This produces Computer Modern symbols such as $\mathcal{E}\,$
+and $\mathcal{F}\,$ in your hard copy but the typesetter will substitute
+the more florid script characters normally seen in the journal.
+
+\subsection{Skewing of accents}
+
+Accents such as hats, overbars and dots are normally centred over letters,
+but when these are italic or sloping greek the accent may need to be moved
+to the right so that it is centred over the top of the sloped letter. For
+example,
+%
+\begin{verbatim}
+ \newcommand\hatp{\skew3\hat{p}}
+\end{verbatim}
+will produce $\hatp$.
+
+\section{User-defined macros}
+
+If you define your own macros, you must ensure that their names do not
+conflict with any existing macros in \LaTeX\ (or \AMSLaTeX\ %
+if you are using this). You should also place them in the preamble of
+your input file, between the \verb"\documentclass" line (but after any
+\verb"\usepackage" commands) and before the \verb"\begin{document}" command.
+
+Apart from scanning the indexes of the relevant manuals, you can check
+whether a macro name is already used by using \verb"\newcommand", which
+will check for the existence of the macro you are trying to define.
+If the macro exists \LaTeX\ will respond with:
+%
+\begin{verbatim}
+ ! LaTeX Error: Command ... already defined.
+\end{verbatim}
+%
+In this case you should choose another name, and try again.
+
+Such macros must be in a place where they can easily be found and
+modified by the journal's editors or typesetter. They must be gathered
+together in the preamble of your input file, or in a separate
+\verb"macros.tex" file with the command \verb"\input{macros}" in the
+preamble. Macro definitions must not be scattered about your document
+where they are likely to be completely overlooked by the typesetter.
+
+The same applies to font definitions that are based on Computer Modern
+fonts. These must be changed by the typesetter to use the journal's
+correct typeface. In this case, you should draw
+attention to these font definitions on the hard copy that you submit for
+publication and by placing a comment in your input file just before the
+relevant definitions, for example \verb"% replace font!"
+
+\section{Some guidelines for using standard facilities}
+
+The following notes may help you achieve the best effects with the FAC
+class file.
+
+\subsection{Sections}
+
+\LaTeX\ provides five levels of section headings and they are all
+defined in the FAC class file:
+%
+\begin{itemize}
+ \item[] Heading A -- \verb"\section{...}"
+ \item[] Heading B -- \verb"\subsection{...}"
+ \item[] Heading C -- \verb"\subsubsection{...}"
+ \item[] Heading D -- \verb"\paragraph{...}"
+ \item[] Heading E -- \verb"\subparagraph{...}"
+\end{itemize}
+%
+Section numbers are given for sections, subsection and subsubsection
+headings.
+
+\subsection{Illustrations (or figures)}
+
+The FAC class will cope with most positioning of your illustrations, and you
+should not normally use the optional positional qualifiers on the
+\verb"figure" environment which would override these decisions.
+See `Instructions for authors' in the FAC journal for submission of artwork.
+Figure captions should be below the figure itself therefore the \verb"\caption"
+command should appear after the figure or space left for an illustration.
+Any figure should be centred horizontally, this can be achived using the
+\verb"\centering" command, or \verb"centerline" environment.
+For example, Figure~\ref{sample-figure} is produced using the following.
+%
+\begin{verbatim}
+ \begin{figure}
+ \centering
+ \vspace{5cm}
+ \caption{An example figure in which space has been
+ left for the artwork.}
+ \label{sample-figure}
+ \end{figure}
+\end{verbatim}
+%
+\begin{figure}
+ \centering
+ \vspace{5cm}
+ \caption{An example figure in which space has been
+ left for the artwork.}
+ \label{sample-figure}
+\end{figure}
+
+\subsection{Tables}
+
+\begin{table}
+ \caption{Index of Symbols}
+ \begin{tabular}{@{}ll@{}}
+ \hline
+ Symbol\hspace{1cm} & Meaning \\
+ \hline
+ \ifamsfontsloaded
+ \whbl & \hbox{Forward closure} \\
+ \blwh & \hbox{Backward closure} \\
+ \blbl & \hbox{Overlap closure} \\
+ \whwh & \hbox{Rule closure} \\
+ \fi
+ $\leadsto$ & \hbox{Rule closure constructor} \\
+ $\bigtriangleup$ & \hbox{Substitution sum} \\
+ $\cdot$ & \hbox{Substitution composition} \\
+ $\sqcup$ & \hbox{Substitution join} \\
+ $\bot$ & \hbox{Coherence relation} \\
+ $-^n$ & \hbox{Substitution operator
+ (exponent)} \\
+ $W_n(-,-)$ & \hbox{Substitution operator
+ (Whale)} \\
+ $T_n(-,-,-)$ & \hbox{Substitution operator
+ (Turtle)} \\
+ \hline
+ \end{tabular}
+ \label{symbols}
+\end{table}
+
+The FAC class will cope with most positioning of your tables
+and you should not normally use the optional positional qualifiers on the
+\verb"table" environment which would override these decisions.
+Table captions should be at the top, therefore the \verb"\caption" command
+should appear before the body of the table.
+
+The \verb"tabular" environment should be used to produce ruled tables;
+it has been modified for the FAC class in the following ways.
+%
+\begin{enumerate}
+ \item Rules may either be two-thirds or the full width of a page,
+depending on the width of the material in your table. \verb"\hline"
+will produce a rule two-thirds the width and \verb"\fullhline" will
+produce a rule the full width of a page;
+ \item Additional vertical space is inserted on either side of a rule;
+ \item Vertical lines are not produced.
+\end{enumerate}
+%
+Commands to redefine quantities such as \verb"\arraystretch" should be
+omitted. For example, Table~\ref{symbols} is produced using the following.
+%
+\begin{verbatim}
+ \begin{table}
+ \caption{Index of Symbols}
+ \begin{tabular}{@{}ll@{}}
+ \hline
+ Symbol\hspace{1cm} & Meaning \\
+ \hline
+ \whbl & \hbox{Forward closure} \\
+ \blwh & \hbox{Backward closure} \\
+ \blbl & \hbox{Overlap closure} \\
+ \whwh & \hbox{Rule closure} \\
+ $\leadsto$ & \hbox{Rule closure constructor} \\
+ $\bigtriangleup$ & \hbox{Substitution sum} \\
+ $\cdot$ & \hbox{Substitution composition} \\
+ $\sqcup$ & \hbox{Substitution join} \\
+ $\bot$ & \hbox{Coherence relation} \\
+ $-^n$ & \hbox{Substitution operator
+ (exponent)} \\
+ $W_n(-,-)$ & \hbox{Substitution operator
+ (Whale)} \\
+ $T_n(-,-,-)$ & \hbox{Substitution operator
+ (Turtle)} \\
+ \hline
+ \end{tabular}
+ \label{symbols}
+ \end{table}
+\end{verbatim}
+
+\subsubsection{Continued captions}
+
+If a table or figure will not fit onto a single page and has to broken into
+more than one part, the subsequent parts should have a `continued' caption.
+To achieve this, use \verb"\contcaption" instead of \verb"\caption", in the
+subsequent figure or table environments. The \verb"\contcaption" uses exactly
+the same syntax as the normal \verb"\caption" command, except it does not step
+the figure or table counter.
+
+\subsection{Appendices}
+
+You should use the standard \LaTeX\ \verb"\appendix" command to place any
+Appendices, normally, AFTER any acknowledgement and references.
+From that point on \verb"\section" commands will produce appendixes, which are
+numbered A, B etc. Equations, figures and tables continue in the same
+numbering sequence as in the main text.
+
+\subsection{References}
+
+As with standard \LaTeX, there are two ways of producing a list of
+references; either by compiling a list (using a \verb"thebibliography"
+environment), or by using Bib\TeX\ with a suitable bibliographic database,
+using the standard Bib\TeX\ `\verb"alpha"' style file.
+
+\subsubsection{References in the text}
+
+References to published literature should be quoted in text by an
+abbreviation in square brackets of name(s) (three letters) and date
+(two digits) -- this format is consistent with the Bib\TeX\ %
+`\verb"alpha"' style.
+
+Each entry has a key, which is assigned by the author
+and used to refer to that entry in the text (with \verb"\cite").
+e.g. \verb"\cite{Lam:LaTeX}".
+
+A new form of the \verb"\cite" command is also provided `\verb"\nbcite"',
+which works in the same way -- except it doesn't put any square brackets
+in the output, allowing more complex citations formats to be constructed.
+
+\subsubsection{The list of references}
+
+The following listing shows some references prepared in the style of the
+journal; the code produces the references at the end of this guide.
+%
+\begin{verbatim}
+ \begin{thebibliography}{Lam94}
+ \bibitem[But81]{But:Copy} Butcher, J.:
+ \emph{Copy-editing: The Cambridge Handbook.}
+ Cambridge University Press, 1981.
+
+ \bibitem[Chi69]{Chicago}
+ \emph{The Chicago Manual of Style.}
+ University of Chicago Press, Chicago 60637, USA, 1982.
+
+ \bibitem[For84]{For:Program} Forgaard, R.:
+ A Program for Generating and Analyzing Term Rewriting
+ Systems, Master's Thesis, MIT Lab. for Computer Science,
+ 1984.
+
+ \bibitem[JLR82]{Jou:Recursive} Jouannaud, J. P., Lescanne, P.
+ and Reinig, F.: Recursive Decomposition Ordering,
+ \emph{Proc. Conf. on Formal Description of Programming
+ Concepts II}, pp. 331--346, 1982.
+
+ \bibitem[Lam94]{Lam:LaTeX} Lamport, L.:
+ \emph{\LaTeX: A Document Preparation System (2nd edition).}
+ Addison-Wesley, New York, 1994.
+
+ \bibitem[Ped85]{Ped:Obtaining} Pederson, J.:
+ Obtaining Complete Sets of Reproductions and Equations
+ without Using Special Unification Algorithms. Unpublished
+ manuscript, 1985.
+
+ \bibitem[PeS81]{Pet:Complete} Peterson, G. E. and Stickel,
+ M. E.: Complete Sets of Reductions for Some Equational
+ Theories. \emph{J. ACM}, \textbf{28}, 223--264 (1981).
+ \end{thebibliography}
+\end{verbatim}
+%
+Where more than one reference is cited having the author(s) and date, the
+letters a,b,c, \ldots\ should follow the date (\eg [Smi88a], [Smi88b],
+\etc.). References should be listed in \verb"thebibliography" environment
+alphabetically by author(s)' name(s) and then by year if the same author
+has several papers.
+
+Formatting for italic etc.\ should be avoided unless you are sure you
+understand the style of references; please concentrate on giving full and
+clear information.
+
+\begin{thebibliography}{Lam94}
+ \bibitem[But81]{But:Copy} Butcher, J.:
+ \emph{Copy-editing: The Cambridge Handbook.}
+ Cambridge University Press, 1981.
+
+ \bibitem[Chi69]{Chicago}
+ \emph{The Chicago Manual of Style.}
+ University of Chicago Press, Chicago 60637, USA, 1982.
+
+ \bibitem[For84]{For:Program} Forgaard, R.:
+ A Program for Generating and Analyzing Term Rewriting
+ Systems, Master's Thesis, MIT Lab. for Computer Science,
+ 1984.
+
+ \bibitem[JLR82]{Jou:Recursive} Jouannaud, J. P., Lescanne, P.
+ and Reinig, F.: Recursive Decomposition Ordering,
+ \emph{Proc. Conf. on Formal Description of Programming
+ Concepts II}, pp. 331--346, 1982.
+
+ \bibitem[Lam94]{Lam:LaTeX} Lamport, L.:
+ \emph{\LaTeX: A Document Preparation System (2nd edition).}
+ Addison-Wesley, New York, 1994.
+
+ \bibitem[Ped85]{Ped:Obtaining} Pederson, J.:
+ Obtaining Complete Sets of Reproductions and Equations
+ without Using Special Unification Algorithms. Unpublished
+ manuscript, 1985.
+
+ \bibitem[PeS81]{Pet:Complete} Peterson, G. E. and Stickel,
+ M. E.: Complete Sets of Reductions for Some Equational
+ Theories. \emph{J. ACM}, \textbf{28}, 223--264 (1981).
+\end{thebibliography}
+
+\newpage
+
+\appendix
+\section{Special commands in \texttt{fac.cls}}
+
+The following is a summary of the new commands, optional arguments and
+environments which have been added to the standard \LaTeX\ user-interface
+in creating the FAC class file.
+\vspace{6pt}
+
+\noindent
+\begin{tabular}{@{}p{38mm}@{}p{127mm}@{}}
+\emph{New commands} & \\[3pt]
+\ifprodtf
+\verb"\acceptedline" & sets the `Accepted in revised form' text.\\
+\fi
+\verb"\contcaption" & produces a continued figure or table caption. e.g.\\
+ & `Figure 1---{\itshape cont.}' This command is used in the
+ same way as the standard \verb"\caption" command.\\
+\verb"\correspond" & sets the text used for the `Correspondence and offprint
+ requests to' footnote on the first page.\\
+\ifprodtf
+\verb"\editor" & sets the editors name for a `Short Communication' paper.\\
+\fi
+\verb"\makecorrespond" & ensures the `Correspondence and offprint requests to'
+ footnote is typeset. This command is usually used just
+ before \verb"\maketitle".\\
+\verb"\mathproofbox" & as \verb"\proofbox", except this version is intended
+ for use in equations ending proof's (it typesets the
+ proof box using \verb"\rlap" with 1em of extra space).\\
+\verb"\nbcite" & works in the same way as the normal \verb"\cite"
+ command except it doesn't put in the `[ ]'s.\\
+\verb"\newtheorem" & has been modified to create both numbered and unnumbered
+ `theorem' environments.\\
+\verb"\proofbox" & typesets a proof box \proofbox\ (this is normally
+ put in automatically at the end of the \verb"proof"
+ environment). If you need to insert a \verb"\proofbox"
+ manually, you should add a `\verb"\quad"' of
+ space before it in the output.\\
+\ifprodtf
+\verb"\pagerange" & sets the range of pages used by the paper.\\
+\verb"\pubyear" & sets the publication year.\\
+\verb"\receivedline" & sets the `Received' date information.\\
+\fi
+\verb"\removebrackets" & removes the `(\ )' brackets from the optional
+ argument of environments created by the
+ \verb"\newtheorem" command. Should be placed
+ just before the appropriate environment.\\
+\ifprodtf
+\verb"\removefullpoint" & removes the full point from the next \verb"\caption"
+ command, usually used for continued captions.\\
+\verb"\shortcom" & specifies that this is to be a `Short Communication' paper.\\
+\verb"\volume" & sets the volume number.\\[6pt]
+\else
+ \noalign{\vskip 6pt}
+\fi
+\emph{New environments} & \\[3pt]
+\ifprodtf
+\verb"bottomfigure" & for split figures and captions (on facing page).\\
+\fi
+\verb"proof" & to typeset mathematical proofs, the \verb"*"-form omits
+ the proof box.\\
+\verb"tabular" & has been modified to insert additional space above
+ and below an \verb"\hline", the table caption
+ and body is centred with rules full out across the
+ text measure. The \verb"tabular" environments old
+ behaviour can be restored by using the
+ \verb"oldtabular" environment.\\[6pt]
+\emph{New optional arguments} & \\[3pt]
+\verb"[<short author>]" & in the \verb"\author" command: to define a left
+ running headline that is different from the
+ authors' names as typeset at the article opening.
+ \ifprodtf The \verb"\shortauthor" command is
+ also provided.\fi \\
+\verb"[<short title>]" & in the \verb"\title" command: to define a right
+ running headline that is different from the article
+ title. \ifprodtf The \verb"\shorttitle" command is
+ also provided.\fi \\
+\verb"[<widest label>]" & in \verb"\begin{enumerate}": to ensure the correct
+ alignment of numbered lists.\\
+\end{tabular}
+
+\ifprodtf
+\section{Notes for editors}
+
+This appendix contains additional information which may be useful to
+those who are involved with the final production stages of an article.
+Authors, who are generally not typesetting the final pages in the
+journal's typeface (Monotype Times), do not need this information.
+
+\subsection{Setting the production typeface}
+
+The global \verb"\documentclass" option `\verb"prodtf"' sets up
+\verb"fac.cls" to typeset in the production typeface -- Monotype Times.
+e.g.
+%
+\begin{verbatim}
+ \documentclass[prodtf]{fac}
+\end{verbatim}
+
+\subsection{Catchline commands}
+
+To be placed in the preamble:
+\begin{itemize}
+\item \verb"\pubyear{}"
+\item \verb"\pagerange{}"
+\item \verb"\volume{}"
+\end{itemize}
+
+\subsection{Footnotes}
+
+If a footnote falls at the bottom of a page, it is possible for the
+footnote to appear on the following page (a feature of \TeX ). Check
+for this.
+
+\subsection{Landscape material}
+
+The add on package \verb"FACland" provides macros for landscape figures and
+tables. See the \verb"FACland" guide for further information.
+
+\subsection{Figures with split artwork/captions}
+
+When a figure is too large to fit on a page with it's caption, you can use
+the following procedure to place the figure, and then it's caption at the foot
+of the facing page. First set the figure with a short caption
+using the normal \verb"figure" environment, e.g.
+\begin{verbatim}
+ \begin{figure}
+ ...
+ \caption{For caption see facing page.}
+ \end{figure}
+\end{verbatim}
+Then set the correct (long) caption, so that it appears on the facing page:
+\begin{verbatim}
+ \begin{bottomfigure}
+ \addtocounter{figure}{-1}
+ \caption{This is the long caption...}
+ \end{bottomfigure}
+\end{verbatim}
+If the figure falls on a recto, you may have to move the \verb"bottomfigure"
+environment to before the \verb"figure" environment. In this case you need to
+move the \verb"\addtocounter" command into the \verb"figure" environment
+instead.
+
+The \verb"bottomfigure" environment places a full measure rule above the
+bottom-caption automatically.
+
+\section{Macros provided by \texttt{FAC2esym.sty}}
+
+\subsection{Automatic font/character changes}
+
+\begin{itemize}\itemsep=6pt
+\item The \verb|\le|, \verb|\leq|, \verb|\ge|, \verb|\geq| commands
+use the equivalent AMS slanted symbols:
+\[
+\oldle \oldleq \oldge \oldgeq
+ \lra
+\le \leq \ge \geq
+\]
+The normal characters can be obtained by using the \verb|\old| form
+(\eg \verb|\oldge|).
+\end{itemize}
+
+\subsection{Additional fonts}
+
+\begin{itemize}\itemsep=6pt
+\item The complete AMS symbols are available using the normal names:
+\[
+\hbox{\verb"\boxdot \boxplus \boxtimes"} \lra \boxdot \boxplus \boxtimes
+\]
+
+\item Blackboard bold:
+\[
+\hbox{\verb"$\mathbb{ABC}$"} %%% \lra \mathbb{ABC}
+\]
+
+\item Fraktur/Gothic (bold math version available):
+\[
+ \hbox{\verb"$\mathfrak{ABC}$"} %%% \lra \mathfrak{ABC}
+\]
+
+\item Monotype Script (bold math version available):
+%
+\[ \verb"$\mathscr{ABCabc}$ " \lra \mathscr{ABCabc} \]
+\[ \verb"$\mathbscr{ABCabc}$" \lra \mathbscr{ABCabc} \]
+You may still use \verb"\mathcal" to obtain upper-case Script characters.
+
+\item Upright Greek: The \verb"\mathup" and \verb"\mathbup" macros are provided to obtain
+upright lowercase Greek characters.
+%
+\[ \verb"$\mathup{\alpha}$ " \lra \mathup{\alpha} \]
+\[ \verb"$\mathbup{\alpha}$" \lra \mathbup{\alpha} \]
+%
+All of the lower-case Greek letters are pre-defined.
+
+\item Bold math italic/symbols are provided by the \verb"\boldsymbol" macro
+(from the \verb"amsbsy" package). The \verb"\bmath" macro is provided as
+an alias.
+
+The \verb"FAC2esym" package also defines most of the
+symbols from Appendix F of the \TeX book. These can be obtained by using
+their normal (unbold) symbol name prefixed with a `b'. e.g.\ \verb|\nabla|
+becomes \verb|\bnabla|. The only exception to this rule is \verb|\eta|,
+which whould lead to a clash with \verb|\beta|. In this case use
+\verb|\boldeta| for bold eta.
+
+The problem with space disappearing around certain
+bold math symbols (\verb"\bcdot") does not happen, when using the
+\verb"amsbsy" package.
+
+\item The \verb"\textsf*" and \verb"\mathsf*" macros are redefined to
+use the correct Monotype Helvetica fonts.
+\end{itemize}
+\fi
+
+\label{lastpage}
+
+\end{document}