% This is a file of macros accumulated since 1987 called mtex.tex \hyphenation{ sketch-es Grothen-dieck equiva-lent equiva-lence equiva-lents work-space man-u-script co-do-main pre-print requi-site Pri-bha-kar Ma-teti Wil-liam Ten-nes-see topo-lo-gie Knox-ville to-poses co-lim-it endo-func-tor endo-mor-phism endo-func-tion } \hyphenation{man-u-script man-u-scripts ap-pen-dix data-base data-bases an-a-lyse an-a-lyses an-a-lysed an-a-lysing dis-trib-ute dis-trib-uted dis-trib-utor dis-trib-utors be-hav-iour be-hav-iours pre-am-ble pre-am-bles post-am-ble post-am-bles flocci-nauci-nihili-pili-fi-ca-tion fest-schrift Sprach-wissen-schaft skinny-dip skinny-dip-ping sphyg-mo-mano-meter medi-ocre oeuvres demi-semi-quaver hemi-demi-semi-quaver semi-quaver praise-worthy re-qui-site pre-requi-site pre-requi-sites re-qui-si-tion pa-ram-e-trised polyg-on-i-sa-tion kwash-i-or-kor poly-sty-rene poly-sor-bate poly-un-sat-u-rate poly-un-sat-u-rated un-nil-quad-ium un-nil-pent-ium un-nil-sept-ium un-nil-oct-ium un-nil-enn-ium ein-stein-ium men-del-ev-ium ga-do-lin-ium pseudo-in-tel-lec-tual re-ed-u-cate re-ed-u-cated re-ed-u-ca-tion re-ed-u-cat-ing re-ed-u-cates re-en-list re-en-listed re-en-lists re-en-list-ing re-en-list-ment veri-si-mil-i-tude arc-tan-gent arc-co-sine arc-co-tan-gent arc-co-se-cant Liech-ten-stein Der-zhan-ski Chiang anom-a-ly anom-a-lies an-tin-o-my an-tin-o-mies band-leader band-leaders bor-no-log-i-cal Brown-ian buzz-word buzz-words cart-wheel cart-wheels cho-les-teric data-path data-paths demos Dijk-stra electro-mechan-i-cal electro-mechano-acoustic equi-vari-ance equi-vari-ant Euler-ian fermi-ons flow-chart flow-charts Gauss-ian geo-met-ric Greifs-wald Grothen-dieck Grund-leh-ren Hamil-ton-ian Her-mit-ian in-fra-struc-ture in-fra-struc-ture je-re-mi-ads Kadomt-sev Le-gendre Lip-schitz Lip-schitz-ian macro-eco-nomic macro-eco-nomics Markov-ian meta-lan-guage meta-lan-guage micro-eco-nomic micro-eco-nomics mi-cro-fiche mod-el-ling mono-en-er-getic mono-pole mono-strofic mul-ti-plic-able mul-ti-plic-ably neo-fields Noether-ian non-emer-gency non-equi-vari-ance non-euclid-ean non-smooth pa-ram-e-trized para-mil-i-tary poly-ene polyg-on-i-za-tion pseu-do-dif-fer-en-tial pseu-do-fi-nite pseu-do-fi-nite-ly pseu-do-forces pseu-do-word pseu-do-words qua-drat-ic qua-drat-ics qua-si-equiv-a-lence qua-si-hy-po-nor-mal qua-si-smooth qua-si-sta-tion-ary Rie-mann-ian sched-ul-ing Schwarz-schild semi-def-in-ite semi-ho-mo-thet-ies ser-vo-mech-anism set-up so-le-noid so-le-noids spher-oid spher-oids sto-chas-tic sub-scrib-er sub-scrib-ers sum-ma-ble ther-mo-elas-tic time-stamp time-stamps ver-all-ge-mein-erte Wahr-schein-lich-keits-the-o-rie wave-guide} \long\def\ig#1{\relax} \makeatletter \def\cases#1{\left\{\,\vcenter{\normalbaselines \lineskip 3pt \lineskiplimit 2pt \m@th \ialign{$##\hfil$&\quad##\hfil\crcr#1\crcr}}\right.} \def\eqalign#1{\null\,\vcenter{\openup\jot\m@th \ialign{\strut\hfil$\displaystyle{##}$&$\displaystyle{{}##}$\hfil \crcr#1\crcr}}\,} \def\eqalignno#1{\displ@y \tabskip\@centering \halign to\displaywidth{\hfil$\@lign\displaystyle{##}$\tabskip\z@skip &$\@lign\displaystyle{{}##}$\hfil\tabskip\@centering &\llap{$\@lign##$}\tabskip\z@skip\crcr #1\crcr}} \def\leqalignno#1{\displ@y \tabskip\@centering \halign to\displaywidth{\hfil$\@lign\displaystyle{##}$\tabskip\z@skip &$\@lign\displaystyle{{}##}$\hfil\tabskip\@centering &\kern-\displaywidth\rlap{$\@lign##$}\tabskip\displaywidth\crcr #1\crcr}} \def\mld#1$${\null\,\vcenter\bgroup\def\\{\cr&}\openup9pt\m@th \ialign\bgroup\strut\hfil$\displaystyle{##}$% &$\displaystyle{{}##}$\hfil\crcr #1 \crcr\egroup\egroup\,$$} \let\emld\relax % for compatibility with old code %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% Here is a typical usage of \mld (multi-line display) %% %% %% %% The pattern is %% %% $$\mld formula 1 & formula 2 \\ %% %% formula 3 \\ %% %% ..........\\ %% %% formula n $$ %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %\def\loop#1\repeat{\gdef\body{#1}\iterate} \def\iterate{\body\global\let\next=\iterate\else\global\let\next=\relax \fi\next} %\newcount \repetitions %\def\repto#1{\mathop %{\repetitions=0 %\loop\ifnum\repetitions<#1 % \advance \repetitions by 1 % \relbar\mkern-3.2mu %\repeat %\rightarrow}\limits} %\def\to{\repto0} %\def\reptwo#1{\mathop{\vcenter{\hbox{\oalign % {$\repto{#1}$\crcr$\repto{#1}$}}}}\limits} %\def\two{\reptwo0} %\def\tofro{\mathop{\vcenter{\hbox{\oalign %{$\longrightarrow$\crcr$\longleftarrow$}}}}\limits} \def\adj{\mathrel{\raise.78ex\hbox{\vrule width.9em height.2pt depth.2pt \vrule width.4pt height.55ex depth.55ex}}} \def\star{\ifmmode {}^*{} \else \leavevmode\hbox{$*$}\fi} \def\perp{{}^\bot} \def\ar{\leavevmode\mathinner{\hbox{$\relbar\mkern-7.5mu\circ$}}} \def\epi{\mathop{\mathchar"221\mkern -12mu\mathchar"221}\limits} \def\leftepi{\mathop{\mathchar"220\mkern -12mu\mathchar"220}\limits} %\font\lasyb=lasyb10 scaled \magstephalf % for \mon \def\mon{\mathop{\m@th\hbox to 14.6\P@{\lasyb\char'51\hskip-2.1\P@$\arrext$\hss $\mathord\rightarrow$}}\limits} % width of \mono \def\leftmono{\mathrel{\m@th\hbox to 14.6\P@{$\mathord\leftarrow$\hss$\arrext$\hskip-2.1\P@\lasyb\char'50% }}\limits} % width of \epi \mathchardef\arrext="0200 % amr minus for arrow extension (see \into) \let\thm\theorem \let\thp\proposition \let\thc\corollary \let\thl\lemma \let\eth\endtheorem \let\pf\proof \let\epf\endproof \let\exam\example \newcount\subexercounter \newcount\exercounter \def\assign#1#2{\section*{Assignment #1. Due #2, 1989}% \exercounter=0} \def\exer{\par\addvspace{\bigskipamount}\noindent %\ifnum\c@exercounter>0 \noindent\fi \refstepcounter{exercounter}\setcounter{subexercounter}{0}% \bf\arabic{exercounter}. \rm}% \def\eexer{\par\addvspace{\bigskipamount}} \def\subexer{\refstepcounter{subexercounter}% \par\addvspace{\smallskipamount}% \bf(\alph{subexercounter}) \rm} \def\immsubexer{\refstepcounter{subexercounter}% \bf(\alph{subexercounter}) \rm} \ig{subexer is the normal command for subexercises. immsubexer should be used when an exercise begins immediately with a subexercise. That way the subexercise will not begin a new line.} \def\nn{\hspace{-1em}} %Use this in unnamed subsections and subsubsections %e.g.\subsubsection{\nn} instead of \subsubsection{} %otherwise you get too much space \def\bref{\sloppy \fontdimen2\twlrm=4.3pt% space instead of 3.91663 \fontdimen3\twlrm=4.2pt%stretch instead of 1.95831 \fontdimen4\twlrm=1.7pt%shrink instead of 1.30554 \sectionmark{References}% \vskip12pt\section*{References} \tolerance=9999 \begin{list}{}{\leftmargin8mm \itemindent-8mm \itemsep2pt \topsep0pt }} \def\eref{\end{list}} \newcount\templist \newcounter{romlister} \newenvironment{romlist}% {\begin{list}{{\rm(\roman{romlister})}}{\usecounter{romlister}}}% {\end{list}} \def\bromlist{\begin{romlist}} \def\eromlist{\end{romlist}} \newcounter{alphlister} \newenvironment{alphlist}% {\begin{list}{{\rm(\alph{alphlister})}}{\usecounter{alphlister}}}% {\end{list}} \def\balphlist{\begin{alphlist}} \def\ealphlist{\end{alphlist}} \newcounter{lister} \newenvironment{labeledlist}[1] {\begin{list}{{\rm#1\arabic{lister}. }}{\usecounter{lister} }}%begin text {\end{list}}% \def\bl@st#1[#2]{\begin{labeledlist}{#1}\setcounter{lister}{#2}} \def\blist#1{\@ifnextchar [{\bl@st{#1}}{\bl@st{#1}[0]}} \def\elist{\end{labeledlist}} \newdimen\down \def\nl{\par\advance\down by -14.4pt} \def\homeaddress{\down=1.1in \vspace*{-.5in} \hfill Michael Barr\nl \hfill 146 Dobie Avenue\nl \hfill Mount Royal, Qu\'ebec\nl \hfill Canada H3P 1S4\nl\vskip1ex \hfill Email: barr@triples.math.mcgill.ca\nl\vskip1ex \hfill \today\nl\kern\down\noindent} \def\noaddress{\down=1.1in \vspace*{-.5in} \hfill Michael Barr\nl \hfill Email: barr@triples.math.mcgill.ca\nl\vskip1ex \hfill \today\nl\kern\down\noindent} \def\ltrhdaddress{\down=1.3in \vspace*{-.5in} \hfill Michael Barr\nl \hfill Email: barr@triples.math.mcgill.ca\nl\vskip1ex \hfill \today\nl\kern\down\noindent} \def\profaddress{\down=1.1in \vspace*{-.5in} \hfill Michael Barr\nl \hfill Professor of Mathematics\nl\vskip1ex \hfill \today\nl\kern\down\noindent} \def\joeaddress{\down=1.4in \vspace*{-.8in} \hfill Joseph Barr\nl \hfill 146 Dobie Avenue\nl \hfill Mount Royal, Qu\'ebec\nl \hfill CANADA H3P 1S4\nl\vskip1ex \hfill (514) 342-2658\nl\vskip1ex \hfill Email: barr@triples.math.mcgill.ca\nl\vskip1ex \hfill \today\nl\kern\down\noindent} \def\joeaddress{\down=1.4in \vspace*{-.8in} \hfill Joseph E. Barr\nl \hfill 146 Dobie Avenue\nl \hfill Mount Royal, Qu\'ebec\nl \hfill CANADA H3P 1S4\nl\vskip1ex \hfill (514) 342-2658\nl\vskip1ex \hfill \today\nl\kern\down\noindent} \def\joeaddressa{\down=1.4in \vspace*{-.8in} \hfill Joseph E. Barr\nl \hfill 146 Dobie Avenue\nl \hfill Mount Royal, Qu\'ebec\nl \hfill CANADA H3P 1S4\nl\vskip1ex \hfill (514) 342-2658\nl\vskip1ex \hfill Email: barr@triples.math.mcgill.ca\nl\vskip1ex \hfill \today\nl\kern\down\noindent} \def\joeaddressb{\down=1.4in \vspace*{-.8in} \hfill Joseph E. Barr\nl \hfill 1838 Chicago Avenue, Room 218 \nl \hfill Chicago, Illinois\nl \hfill USA 60201-3806\nl\vskip1ex \hfill (708) 332-7084\nl\vskip1ex \hfill \today\nl\kern\down\noindent} \def\officeaddress{\down=1.6in \vspace*{-1in} \hfill Michael Barr\nl \hfill Department of Mathematics \& Statistics\nl \hfill McGill University, 805 Sherbrooke St. West\nl \hfill Montr\'eal, Qu\'ebec\nl \hfill Canada H3A 2K6\nl\vskip1ex \hfill Email: barr@triples.math.mcgill.ca\nl\vskip1ex \hfill \today\nl\kern\down\noindent} \def\close#1 {\par\vskip1ex\noindent #1,\par\vskip10ex\noindent} \def\sincerely{\close Sincerely~yours } \def\regards{\close Regards} \def\mathopdef#1{\expandafter\def\csname#1\endcsname{\mathop{\rm#1}}} \def\mathbfdef#1{\expandafter\def\csname#1\endcsname{{\rm\bf#1}}} \def\mathrmdef#1{\expandafter\def\csname#1\endcsname{{\rm#1}}} \def\mathfkdef#1{\expandafter\def\csname#1\endcsname{{\fk#1}}} \def\Join{\bigvee} \def\Meet{\bigwedge} \def\beqa{\begin{equation}\begin{array}{c}} \def\eeqa{\end{array}\end{equation}\vrule depth2ex width0pt} \def\defn{\noindent {\bf Definition.} } \mathchardef\dir="2208 \mathchardef\+="2208 \def\dotmin{\buildrel\textstyle.\over {\hbox{\vrule height.55ex width0pt \smash{\hbox{\mathsurround=0pt$-$}}}}} \let\inc=\subseteq \let\includes\supseteq \def\inv{^{-1}} \let\iso=\cong \let\cong=\equiv \let\join=\vee \let\meet=\wedge \def\op{{}^{\rm op}} \def\o{\mathop{\raise.3ex\hbox{$\scriptscriptstyle\circ$}}} \def\relstack#1#2#3{\mathrel{\mathop{#1}\limits^{\textstyle#2}% \limits_{\textstyle#3}}} \mathcode`\<="4268 %left delimiter \mathcode`\>="5269 %right delimiter \mathcode`\:="603A %math punctuation \mathchardef\colon="303A %mathrel \mathchardef\*="220A \mathchardef\1="0B31 \mathchardef\2="0B32 \mathchardef\3="0B33 \mathchardef\4="0B34 \mathchardef\A="0B41 \mathchardef\B="0B42 \mathchardef\C="0B43 \mathchardef\D="0B44 \mathchardef\E="0B45 \mathchardef\F="0B46 \mathchardef\G="0B47 \mathchardef\H="0B48 \mathchardef\I="0B49 \mathchardef\J="0B4A \mathchardef\K="0B4B \mathchardef\L="0B4C \mathchardef\M="0B4D \mathchardef\N="0B4E \mathchardef\O="0B4F \mathchardef\P="0B50 \mathchardef\Q="0B51 \mathchardef\R="0B52 \mathchardef\S="0B53 \mathchardef\T="0B54 \mathchardef\U="0B55 \mathchardef\V="0B56 \mathchardef\W="0B57 \mathchardef\X="0B58 \mathchardef\Y="0B59 \mathchardef\Z="0B5A \mathchardef\Asc="0D41 \mathchardef\Bsc="0D42 \mathchardef\Csc="0D43 \mathchardef\Dsc="0D44 \mathchardef\Esc="0D45 \mathchardef\Fsc="0D46 \mathchardef\Gsc="0D47 \mathchardef\Hsc="0D48 \mathchardef\Isc="0D49 \mathchardef\Jsc="0D4A \mathchardef\Ksc="0D4B \mathchardef\Lsc="0D4C \mathchardef\Msc="0D4D \mathchardef\Nsc="0D4E \mathchardef\Osc="0D4F \mathchardef\Psc="0D50 \mathchardef\Qsc="0D51 \mathchardef\Rsc="0D52 \mathchardef\Ssc="0D53 \mathchardef\Tsc="0D54 \mathchardef\Usc="0D55 \mathchardef\Vsc="0D56 \mathchardef\Wsc="0D57 \mathchardef\Xsc="0D58 \mathchardef\Ysc="0D59 \mathchardef\Zsc="0D5A %\let\gkA= %\let\gkB= \let\gkC=\Psi \let\gkD=\Delta %\let\gkE= \let\gkF=\Phi \let\gkG=\Gamma %\let\gkH= %\let\gkI= \let\gkJ=\Cap %\let\gkK= \let\gkL=\Lambda %\let\gkM= %\let\gkN= %\let\gkO= \let\gkP=\Pi \let\gkQ=\Chi %\let\gkR= \let\gkS=\Sigma %\let\gkT= %\let\gkU= \let\gkW=\Omega \let\gkX=\Xi \let\gkY=\Theta %\let\gkZ= \let\eps=\epsilon \let\gka=\alpha \let\gkb=\beta \let\gkc=\psi \let\gkd=\delta \let\gke=\epsilon \let\gkf=\phi \let\gkg=\gamma \let\gkh=\eta \let\gki=\iota \let\gkj=\cap \let\gkk=\kappa \let\gkl=\lambda \let\gkm=\mu \let\gkn=\nu \let\gko=\otimes \let\gkp=\pi \let\gkq=\xi \let\gkr=\rho \let\gks=\sigma \let\gkt=\tau \let\gku=\upsilon \let\gkv=\cup \let\gkw=\omega \let\gkx=\xi \let\gky=\theta \let\gkz=\zeta \mathchardef\Afk="0C41 \mathchardef\Bfk="0C42 \mathchardef\Cfk="0C43 \mathchardef\Dfk="0C44 \mathchardef\Efk="0C45 \mathchardef\Ffk="0C46 \mathchardef\Gfk="0C47 \mathchardef\Hfk="0C48 \mathchardef\Ifk="0C49 \mathchardef\Jfk="0C4A \mathchardef\Kfk="0C4B \mathchardef\Lfk="0C4C \mathchardef\Mfk="0C4D \mathchardef\Nfk="0C4E \mathchardef\Ofk="0C4F \mathchardef\Pfk="0C50 \mathchardef\Qfk="0C51 \mathchardef\Rfk="0C52 \mathchardef\Sfk="0C53 \mathchardef\Tfk="0C54 \mathchardef\Ufk="0C55 \mathchardef\Vfk="0C56 \mathchardef\Wfk="0C57 \mathchardef\Xfk="0C58 \mathchardef\Yfk="0C59 \mathchardef\Zfk="0C5A \mathchardef\gt="313E %relation \mathchardef\lt="313C %relation \mathchardef\lte="0214 %\leq, with class of ordinary char \def\exam{\subsection{Example}} \let\0=\emptyset \let\Cap=\bigcap \let\Cup=\bigcup \mathbfdef{Ab} \mathbfdef{Arith} \mathbfdef{Array} \mathbfdef{BinOp} \mathbfdef{BinTree} \mathbfdef{Cat} \mathbfdef{Complex} \mathbfdef{Comp} \mathbfdef{Diag} \mathbfdef{Dom} \mathbfdef{FL} \mathbfdef{Nat} \mathbfdef{Real} \mathbfdef{Rec} \mathbfdef{Set} \mathbfdef{Simp} \mathbfdef{Stack} \mathbfdef{String} \mathbfdef{Th} \mathbfdef{Trig} \mathbfdef{j} \mathopdef{colim} \mathrmdef{Der} \mathrmdef{Diff} \mathrmdef{Ext} \mathrmdef{Hom} \mathrmdef{In} \mathrmdef{Lie} \mathrmdef{Mod} \mathrmdef{Ob} \mathrmdef{Sd} \mathrmdef{Sub} \mathrmdef{Top} \mathrmdef{Tor} \mathrmdef{coker} \mathrmdef{comp} \mathrmdef{eval} \mathrmdef{exp} \mathrmdef{id} \mathrmdef{im} \mathrmdef{mult} \mathrmdef{ord} \mathrmdef{ori} \mathrmdef{proj} \mathrmdef{rec} \mathrmdef{source} \mathrmdef{sou} \mathrmdef{st} \mathrmdef{succ} \mathrmdef{target} \mathrmdef{tar} \mathrmdef{unit} \let\gkV=\Cup \def\bc{\begin{center}} \def\bd{\begin{description}} \def\beq{\begin{equation}}%for numbered equations and \def\be{\begin{enumerate}} \def\bpic{\begin{picture}} \def\btab{\begin{tabular}} \def\ec{\end{center}} \def\ed{\end{description}} \def\eeq{\end{equation}} \def\ee{\end{enumerate}} \def\epic{\end{picture}} \def\etab{\end{tabular}} \let\e=\exists \let\imp=\Rightarrow \def\text#1{\:{\rm #1}\:} \def\emph#1{{\em #1}\futurelet\next\itcorr} \def\itcorr{\ifx\next.\else\ifx\next,\else\/\fi\fi} \let\tl=\leftarrow \let\x=\times \let\.=\cdot \let\all=\forall \def\|{\,\mid\,} \def\obeylines{\catcode`\^^M=\active} {\obeylines \gdef^^M{\leavevmode\par\noindent}} \def\lnm#1{Lecture Notes in Mathematics {\bf#1}} \def\lncs#1{Lecture Notes in Computer Science {\bf#1}} \def\springer{Sprin\-ger-Verlag, Berlin, Heidelberg, New York} \def\cahiers#1{Cah\-iers de Topo\-lo\-gie et G\'e\-o\-m\'e\-trie Dif\-f\'e\-ren\-ti\-elle\ifnum#1>25 { Cat\-\'e\-go\-rique}\fi, {\bf #1}} \def\tac#1{Theory and Applications of Categories, {\bf #1}} \def\incarrow{\mathrel{\raise.6ex\hbox{${\scriptstyle\subset}% \kern-.17em\lower.67ex\hbox{$\rightarrow$}$}}} \def\jacobi(#1/#2){\mathchoice {\left(\displaystyle{#1\over#2}\right)} {\left(\displaystyle{#1\over#2}\right)} {\left(\textstyle{#1\over#2}\right)} {\left(\scriptstyle{#1\over#2}\right)} } \def\choose(#1 #2){\mathchoice {\left(\displaystyle{#1\atop#2}\right)} {\left(\displaystyle{#1\atop#2}\right)} {\left(\textstyle{#1\atop#2}\right)} {\left(\scriptstyle{#1\atop#2}\right)} } \def\smish#1{\setbox0\hbox{#1}\wd0=0pt\box0} \def\adj{\mathrel{\raise.78ex\hbox{\vrule width.9em height.2pt depth.2pt \vrule width.4pt height.55ex depth.55ex}}} % \def\\{{\tt \char 92}} % {\catcode`\ =13\global\let =\ \catcode`\^^M=13 % \gdef^^M{\par\noindent}} % \def\verbatim{\tt % \catcode`\^^M=13 % \catcode`\ =13 % \catcode`\\=12 % \catcode`\{=12 % \catcode`\}=12 % \catcode`\_=12 % \catcode`\^=12 % \catcode`\&=12 % \catcode`\~=12 % \catcode`\#=12 % \catcode`\%=12 % \catcode`\$=12 % \catcode`\=0 % } \newdimen\argwidth \def\[#1\]{% \setbox0=\hbox{$#1$}\argwidth=\wd0 \setbox0=\hbox{$\left[\box0\right]$}\advance\argwidth by -\wd0 \left[\kern.3\argwidth\box0\kern.3\argwidth\right]} % \catcode`\"=\active % \def\lq{``\let"=\rq} % \def\rq{''\let"=\lq} % \let"=\lq \let\ph=\phantom \def\strikeoutwords#1{% \def\stuff{#1 }\leavevmode\expandafter\soword\stuff * } \def\soword#1 {\def\one{#1} \ifx\one\aster\let\next\relax \else\vtop{\hbox{\strut#1}\kern-.5\baselineskip\hrule\relax} \let\next\soword\fi\next} \def\underlinewords#1{% \def\stuff{#1 }\leavevmode\expandafter\ulword\stuff * } \def\ulword#1 {\def\one{#1} \ifx\one\aster\let\next\relax \else\vtop{\hbox{\strut#1}\hrule\relax} \let\next\ulword\fi\next} \def\aster{*} \let\hat=\widehat \let\tilde=\widetilde \doublehyphendemerits=100000 % No consecutive line hyphens \brokenpenalty=10000 % No broken words across columns/pages \widowpenalty=10000 % No widows at bottom of page \clubpenalty=10000 % No orphans at top of page %%% The following three lines must be deleted when the NFSS comes \let\mathopn=\mathopdef \let\mathrm=\mathrmdef \let\mathbf=\mathbfdef \def\twodigitnumber#1{\ifnum#1<10 0\fi \number#1} \def\today{\number\year-\twodigitnumber\month-\twodigitnumber\day} \def\makeother#1{\catcode`#1=12} {\catcode`\^^M=12 \endlinechar=-1 % \gdef\xcomment#1^^M{\def\test{#1} \ifx\test\endcomment \let\next=\endgroup \else \let\next=\xcomment \fi \next} } {\escapechar=-1 \xdef\endcomment{\string\\endcomment} } \def\comment{\begingroup \let\do=\makeother \dospecials \endlinechar`\^^M \catcode`\^^M=12 \xcomment } \def\macl{Mac\,Lane} \def\dots{\futurelet\next\d@ts} \def\d@ts{\ifx\next,\ldots\else\ifx\next.\ldots\else\cdots\fi\fi} \def\minus {\hbox{\vrule height.55ex width0pt \smash{\hbox{\mathsurround=0pt$-$}}}} \def\rightarrowfill{$\m@th\mathord{\minus}\mkern-6mu% \cleaders\hbox{$\mkern-2mu\mathord{\minus}\mkern-2mu$}\hfill \mkern-6mu\mathord\rightarrow$} \def\r{\leavevmode\mathinner{\hbox{$\relbar\mkern-7.5mu\circ$}}} \def\l{\leavevmode\mathinner{\hbox{$\circ\mkern-7.5mu\relbar$}}} \makeatother