doc-src/TutorialI/cl2emono-modified.sty
author Walther Neuper <neuper@ist.tugraz.at>
Thu, 12 Aug 2010 15:03:34 +0200
branchisac-from-Isabelle2009-2
changeset 37913 20e3616b2d9c
parent 10500 df47f58b8253
permissions -rw-r--r--
prepare reactivation of isac-update-Isa09-2
     1 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     2 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     3 %%  This is cl2emono.sty version 2.2
     4 %%  (intermediate fix also for springer.sty for the use of
     5 %%  LaTeX2e and NFSS2)
     6 %%
     7 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     8 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     9 
    10 
    11 
    12 
    13 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    14 %
    15 %  This is ucgreek
    16 %  the definition of versal greek characters
    17 %
    18 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    19 
    20 \mathchardef\Gamma="0100
    21 \mathchardef\Delta="0101
    22 \mathchardef\Theta="0102
    23 \mathchardef\Lambda="0103
    24 \mathchardef\Xi="0104
    25 \mathchardef\Pi="0105
    26 \mathchardef\Sigma="0106
    27 \mathchardef\Upsilon="0107
    28 \mathchardef\Phi="0108
    29 \mathchardef\Psi="0109
    30 \mathchardef\Omega="010A
    31 
    32 
    33 
    34 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    35 %
    36 %             This is referee.tex
    37 %
    38 % It defines the style option "referee"
    39 %
    40 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    41 \newif\if@referee \@refereefalse
    42 \def\ds@referee{\@refereetrue
    43 \typeout{A referee's copy will be produced.}%
    44 \def\baselinestretch{2}\small
    45 \normalsize\rm
    46 \newbox\refereebox
    47 \setbox\refereebox=\vbox to0pt{\vskip0.5cm%
    48   \hbox to\textwidth{\normalsize\tt\hrulefill\lower0.5ex
    49         \hbox{\kern5pt referee's copy\kern5pt}\hrulefill}\vss}%
    50 \def\@oddfoot{\copy\refereebox}\let\@evenfoot=\@oddfoot}
    51 % This is footinfo.tex
    52 % it provides an informatory line on every page
    53 %
    54 \def\SpringerMacroPackageNameA{\springerstylefile}
    55 % \thetime, \thedate and \timstamp are macros to include
    56 % time, date (or both) of the TeX run in the document
    57 \def\maketimestamp{\count255=\time
    58 \divide\count255 by 60\relax
    59 \edef\thetime{\the\count255:}%
    60 \multiply\count255 by-60\relax
    61 \advance\count255 by\time
    62 \edef\thetime{\thetime\ifnum\count255<10 0\fi\the\count255}
    63 \edef\thedate{\number\day-\ifcase\month\or Jan\or Feb\or Mar\or
    64              Apr\or May\or Jun\or Jul\or Aug\or Sep\or Oct\or
    65              Nov\or Dec\fi-\number\year}
    66 \def\timstamp{\hbox to\hsize{\tt\hfil\thedate\hfil\thetime\hfil}}}
    67 \maketimestamp
    68 %
    69 % \footinfo generates a info footline on every page containing
    70 % pagenumber, jobname, macroname, and timestamp
    71 \def\ds@footinfo{\maketimestamp
    72    \def\@oddfoot{\footnotesize\tt Page: \thepage\hfil job: \jobname\hfil
    73                  macro: \SpringerMacroPackageNameA\hfil
    74                  date/time: \thedate/\thetime}%
    75    \let\@evenfoot=\@oddfoot}
    76 \def\footinfo{\maketimestamp
    77    \ds@footinfo
    78    \typeout{You ordered a foot-info line. }}
    79 \def\nofootinfo{%
    80    \def\@oddfoot{}\def\@evenfoot{}%
    81    \typeout{Foot-info has been disabled. }}
    82 
    83 
    84 
    85 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    86 %
    87 %             This is vector.tex
    88 %
    89 % It redefines the plain TeX \vec command
    90 % and adds a \tens command for tensors
    91 %
    92 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    93 
    94 % ##### (changed by RB)
    95 \def\vec@style{\relax} % hook to change style of vector
    96                        % default yields boldface italic
    97 % \def\vec@style{\bf}  % hook to change style of vector
    98 %                      % default yields mathstyle i.e. boldface upright
    99 
   100 \def\vec#1{\relax\ifmmode\mathchoice
   101 {\mbox{\boldmath$\vec@style\displaystyle#1$}}
   102 {\mbox{\boldmath$\vec@style\textstyle#1$}}
   103 {\mbox{\boldmath$\vec@style\scriptstyle#1$}}
   104 {\mbox{\boldmath$\vec@style\scriptscriptstyle#1$}}\else
   105 \hbox{\boldmath$\vec@style\textstyle#1$}\fi}
   106 
   107 \def\tens#1{\relax\ifmmode\mathchoice{\mbox{$\sf\displaystyle#1$}}
   108 {\mbox{$\sf\textstyle#1$}}
   109 {\mbox{$\sf\scriptstyle#1$}}
   110 {\mbox{$\sf\scriptscriptstyle#1$}}\else
   111 \hbox{$\sf\textstyle#1$}\fi}
   112 
   113 
   114 
   115 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   116 %
   117 %             This is vecstyle.tex
   118 %
   119 % It enables documentstyle options vecmath and vecphys
   120 % to change the vectors to upright bold face or
   121 % to math italic bold respectively
   122 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   123 
   124 \def\ds@vecmath{\def\vec@style{\bf}\typeout{Vectors are now represented
   125 in mathematics style as boldface upright characters.}}
   126 \def\ds@vecphys{\let\vec@style\relax\typeout{Vectors are now represented
   127 in physics style as boldface italics.}}
   128 
   129 
   130 
   131 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   132 %
   133 %             This is defaults.tex
   134 %
   135 % It sets the switches for twoside printing, numbering
   136 % of equations and kind of citation.
   137 %
   138 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   139 \@twosidetrue                       % twoside is default
   140 \newif\if@bibay    \@bibayfalse     % citation with numbers
   141                                     % is default
   142 \newif\if@numart   \@numartfalse    % numbering with chapternumbers
   143                                     % is default
   144 
   145 
   146 
   147 
   148 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   149 %
   150 %             This is misc.xxx
   151 %
   152 % It defines various commands not available in "plain LaTeX"
   153 %
   154 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   155 \newcommand{\ts}{\thinspace{}}
   156 \newcommand{\sq}{\hbox{\rlap{$\sqcap$}$\sqcup$}}
   157 \newcommand{\qed}{\ifmmode\sq\else{\unskip\nobreak\hfil
   158   \penalty50\hskip1em\null\nobreak\hfil\sq
   159   \parfillskip=0pt\finalhyphendemerits=0\endgraf}\fi{}}
   160 \def\D{{\rm d}}
   161 \def\E{{\rm e}}
   162 \let\eul=\E
   163 \def\I{{\rm i}}
   164 \let\imag=\I
   165 \def\strich{\vskip0.5cm\hrule\vskip3ptplus12pt\null}
   166 
   167 % Frame for paste-in figures or tables
   168 %\def\mpicplace#1#2{%#1 = width   #2 = height
   169 %\vbox{\@tempdima=#2\advance\@tempdima by-2\fboxrule
   170 %\hrule\@height \fboxrule\@width #1
   171 %\hbox to #1{\vrule\@width \fboxrule\@height\@tempdima\hfil
   172 %\vrule\@width \fboxrule\@height\@tempdima}\hrule\@height
   173 %\fboxrule\@width #1}}
   174 
   175 % #####
   176 % Frame for paste-in figures or tables
   177 \def\mpicplace#1#2{%  #1 =width   #2 =height
   178 \vbox{\hbox to #1{\vrule width \fboxrule height #2\hfill}}}
   179 
   180 \def\picplace#1{\mpicplace{\hsize}{#1}}
   181 % Ragged bottom for the actual page
   182 \def\thisbottomragged{\def\@textbottom{\vskip\z@ plus.0001fil
   183 \global\let\@textbottom\relax}}
   184 \flushbottom
   185 
   186 
   187 
   188 
   189 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   190 %
   191 %             This is layout.m01
   192 %
   193 % It defines various sizes and settings for books
   194 %
   195 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   196 
   197 \topmargin=0cm
   198 \textwidth=11.7cm
   199 \textheight=18.9cm
   200 \oddsidemargin=0.7cm
   201 \evensidemargin=0.7cm
   202 \headsep=12pt
   203 
   204 \baselineskip=12pt
   205 \parindent=15pt
   206 \parskip=0pt plus 1pt
   207 \hfuzz=2pt
   208 \frenchspacing
   209 
   210 \tolerance=500
   211 
   212 \abovedisplayskip=3mm plus6pt minus 4pt
   213 \belowdisplayskip=3mm plus6pt minus 4pt
   214 \abovedisplayshortskip=0mm plus6pt minus 2pt
   215 \belowdisplayshortskip=2mm plus4pt minus 4pt
   216 
   217 \predisplaypenalty=0
   218 \clubpenalty=10000
   219 \widowpenalty=10000
   220 
   221 \newdimen\betweenumberspace          % dimension for space between
   222 \betweenumberspace=5pt               % number and text of titles.
   223 \newdimen\headlineindent             % dimension for space between
   224 \headlineindent=2.5cc                % number and text of headings.
   225 
   226 \intextsep 20pt plus 2pt minus 2pt
   227 
   228 \setcounter{topnumber}{4}
   229 \def\topfraction{.9}
   230 \setcounter{bottomnumber}{2}
   231 \def\bottomfraction{.5}
   232 \setcounter{totalnumber}{6}
   233 \def\textfraction{.2}
   234 \def\floatpagefraction{.5}
   235 
   236 % Figures and tables are processed in small print
   237 \def \@floatboxreset {%
   238         \reset@font
   239         \small
   240         \@setnobreak
   241         \@setminipage
   242 }
   243 \def\figure{\@float{figure}}
   244 \@namedef{figure*}{\@dblfloat{figure}}
   245 \def\table{\@float{table}}
   246 \@namedef{table*}{\@dblfloat{table}}
   247 \def\fps@figure{htbp}
   248 \def\fps@table{htbp}
   249 
   250 \labelsep=5\p@                       % measures for lists
   251 \leftmargini=17.777\p@
   252 \labelwidth\leftmargini\advance\labelwidth-\labelsep
   253 \leftmarginii=\leftmargini
   254 \leftmarginiii=\leftmargini
   255 \parsep=\parskip
   256 
   257 \def\@listI{\leftmargin\leftmargini
   258         \parsep=\parskip
   259         \topsep=\medskipamount
   260         \itemsep=\parskip \advance\itemsep by -\parsep}
   261 \let\@listi\@listI
   262 \@listi
   263 
   264 \def\@listii{\leftmargin\leftmarginii
   265         \labelwidth\leftmarginii\advance\labelwidth by -\labelsep
   266         \parsep=\parskip
   267         \topsep=\z@
   268         \itemsep=\parskip \advance\itemsep by -\parsep}
   269 \def\@listiii{\leftmargin\leftmarginiii
   270         \labelwidth\leftmarginiii\advance\labelwidth by -\labelsep
   271         \parsep=\parskip
   272         \topsep=\z@
   273         \itemsep=\parskip \advance\itemsep by -\parsep}
   274 %
   275 \def\@normalsize{\@setsize\normalsize{12pt}\xpt\@xpt
   276 \abovedisplayskip=3mm plus6pt minus 4pt
   277 \belowdisplayskip=3mm plus6pt minus 4pt
   278 \abovedisplayshortskip=0mm plus6pt minus 2pt
   279 \belowdisplayshortskip=2mm plus4pt minus 4pt
   280 \let\@listi\@listI}   % Setting of \@listi added 9 Jun 87
   281 %
   282 \def\small{\@setsize\small{10pt}\ixpt\@ixpt
   283 \abovedisplayskip 8.5\p@ plus3\p@ minus4\p@
   284 \belowdisplayskip \abovedisplayskip
   285 \abovedisplayshortskip \z@ plus2\p@
   286 \belowdisplayshortskip 4\p@ plus2\p@ minus2\p@
   287 \def\@listi{\leftmargin\leftmargini
   288 \topsep 4pt plus 2pt minus 2pt\parsep\parskip
   289 \itemsep\parskip}}
   290 %
   291 \def\itemize{\ifnum \@itemdepth >3 \@toodeep\else \advance\@itemdepth \@ne
   292 \ifnum \@itemdepth=1 \leftmargini=10\p@
   293 \labelwidth\leftmargini\advance\labelwidth-\labelsep
   294 \leftmarginii=\leftmargini \leftmarginiii=\leftmargini \fi
   295 \edef\@itemitem{labelitem\romannumeral\the\@itemdepth}%
   296 \list{\csname\@itemitem\endcsname}{\def\makelabel##1{\rlap{##1}\hss}}\fi}
   297 %
   298 \newdimen\verbatimindent \verbatimindent\parindent
   299 \def\verbatim{\advance\@totalleftmargin by\verbatimindent
   300 \@verbatim \frenchspacing\@vobeyspaces \@xverbatim}
   301 %
   302 \let\footnotesize=\small
   303 %
   304 \def\petit{\par\addvspace{6pt}\small}
   305 \def\endpetit{\par\addvspace{6pt}}
   306 %
   307 \raggedbottom
   308 \normalsize  % Choose the normalsize font.
   309 % This is texte.tex
   310 % it defines various texts and their translations
   311 % called up with documentstyle options
   312 \def\abstractname{Summary.}
   313 \def\ackname{Acknowledgement.}
   314 \def\andname{and}
   315 \def\lastandname{, and}
   316 \def\appendixname{Appendix}
   317 \def\chaptername{Chapter}
   318 \def\claimname{Claim}
   319 \def\conjecturename{Conjecture}
   320 \def\contentsname{Table of Contents}
   321 \def\corollaryname{Corollary}
   322 \def\definitionname{Definition}
   323 \def\examplename{Example}
   324 \def\exercisename{Exercise}
   325 \def\figurename{Fig.}
   326 \def\keywordname{{\bf Key words:}}
   327 \def\indexname{Index}
   328 \def\lemmaname{Lemma}
   329 \def\contriblistname{List of Contributors}
   330 \def\listfigurename{List of Figures}
   331 \def\listtablename{List of Tables}
   332 \def\mailname{{\it Correspondence to\/}:}
   333 \def\noteaddname{Note added in proof}
   334 \def\notename{Note}
   335 \def\partname{Part}
   336 \def\problemname{Problem}
   337 \def\proofname{Proof}
   338 \def\propertyname{Property}
   339 \def\propositionname{Proposition}
   340 \def\questionname{Question}
   341 \def\remarkname{Remark}
   342 \def\seename{see}
   343 \def\solutionname{Solution}
   344 \def\subclassname{{\it Subject Classifications\/}:}
   345 \def\tablename{Table}
   346 \def\theoremname{Theorem}
   347 % Names of theorem like environments are already defined
   348 % but must be translated if another language is chosen
   349 %
   350 % French section
   351 \def\ds@francais{\typeout{On parle francais.}%
   352  \def\abstractname{R\'esum\'e.}%
   353  \def\ackname{Remerciements.}%
   354  \def\andname{et}%
   355  \def\lastandname{ et}%
   356  \def\appendixname{Appendice}
   357  \def\chaptername{Chapitre}%
   358  \def\claimname{Pr\'etention}%
   359  \def\conjecturename{Hypoth\`ese}%
   360  \def\contentsname{Table des mati\`eres}%
   361  \def\corollaryname{Corollaire}%
   362  \def\definitionname{D\'efinition}%
   363  \def\examplename{Exemple}%
   364  \def\exercisename{Exercice}%
   365  \def\figurename{Fig.}%
   366  \def\keywordname{{\bf Mots-cl\'e:}}
   367  \def\indexname{Index}
   368  \def\lemmaname{Lemme}%
   369  \def\contriblistname{Liste des contributeurs}
   370  \def\listfigurename{Liste des figures}%
   371  \def\listtablename{Liste des tables}%
   372  \def\mailname{{\it Correspondence to\/}:}
   373  \def\noteaddname{Note ajout\'ee \`a l'\'epreuve}%
   374  \def\notename{Remarque}%
   375  \def\partname{Partie}%
   376  \def\problemname{Probl\`eme}%
   377  \def\proofname{\'Epreuve}%
   378  \def\propertyname{Caract\'eristique}%
   379 %\def\propositionname{Proposition}%
   380  \def\questionname{Question}%
   381  \def\remarkname{Remarque}%
   382  \def\seename{voir}
   383  \def\solutionname{Solution}%
   384  \def\subclassname{{\it Subject Classifications\/}:}
   385  \def\tablename{Tableau}%
   386  \def\theoremname{Th\'eor\`eme}%
   387 }
   388 %
   389 % German section
   390 \def\ds@deutsch{\typeout{Man spricht deutsch.}%
   391  \def\abstractname{Zusammenfassung.}%
   392  \def\ackname{Danksagung.}%
   393  \def\andname{und}%
   394  \def\lastandname{ und}%
   395  \def\appendixname{Anhang}%
   396  \def\chaptername{Kapitel}%
   397  \def\claimname{Behauptung}%
   398  \def\conjecturename{Hypothese}%
   399  \def\contentsname{Inhaltsverzeichnis}%
   400  \def\corollaryname{Korollar}%
   401 %\def\definitionname{Definition}%
   402  \def\examplename{Beispiel}%
   403  \def\exercisename{\"Ubung}%
   404  \def\figurename{Abb.}%
   405  \def\keywordname{{\bf Schl\"usselw\"orter:}}
   406  \def\indexname{Index}
   407 %\def\lemmaname{Lemma}%
   408  \def\contriblistname{Mitarbeiter}
   409  \def\listfigurename{Abbildungsverzeichnis}%
   410  \def\listtablename{Tabellenverzeichnis}%
   411  \def\mailname{{\it Correspondence to\/}:}
   412  \def\noteaddname{Nachtrag}%
   413  \def\notename{Anmerkung}%
   414  \def\partname{Teil}%
   415 %\def\problemname{Problem}%
   416  \def\proofname{Beweis}%
   417  \def\propertyname{Eigenschaft}%
   418 %\def\propositionname{Proposition}%
   419  \def\questionname{Frage}%
   420  \def\remarkname{Anmerkung}%
   421  \def\seename{siehe}
   422  \def\solutionname{L\"osung}%
   423  \def\subclassname{{\it Subject Classifications\/}:}
   424  \def\tablename{Tabelle}%
   425 %\def\theoremname{Theorem}%
   426 }
   427 
   428 
   429 
   430 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   431 %
   432 %             This is titneu.xxx
   433 %
   434 % It redefines titles. Usage is like Lamport described.
   435 %
   436 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   437 \setcounter{secnumdepth}{2}           % depth of the highest-level
   438                                       % sectioning command
   439 \newcounter{chapter}                  % to use chapter together with
   440 \@addtoreset{section}{chapter}        % article.sty
   441 \@addtoreset{footnote}{chapter}
   442 
   443 \def\thechapter{\arabic{chapter}}     % how titles will be typeset
   444 \def\thesection{\thechapter.\arabic{section}}
   445 \def\thesubsection{\thesection.\arabic{subsection}}
   446 \def\thesubsubsection{\thesubsection.\arabic{subsubsection}}
   447 \def\theparagraph{\thesubsubsection.\arabic{paragraph}}
   448 \def\thesubparagraph{\theparagraph.\arabic{subparagraph}}
   449 \def\chaptermark#1{}
   450 \def\sec@hangfrom#1{\setbox\@tempboxa\hbox{#1}%
   451       \hangindent \z@\noindent\box\@tempboxa}
   452 
   453 % definition of chapter
   454 
   455 \def\@chapapp{\chaptername}
   456 
   457 \def\@makechapterhead#1{{\parindent0pt\raggedright
   458   \hyphenpenalty \@M
   459   \Large\bf\boldmath
   460   \sec@hangfrom{\thechapter\thechapterend\hskip\betweenumberspace}%!!!
   461   \ignorespaces#1\par
   462   \ifdim\pagetotal>118pt
   463      \vskip 24pt
   464   \else
   465      \@tempdima=118pt\advance\@tempdima by-\pagetotal
   466      \vskip\@tempdima
   467   \fi}}
   468 
   469 \def\@makeschapterhead#1{{\parindent0pt\raggedright
   470   \hyphenpenalty \@M
   471   \Large\bf\boldmath
   472   \ignorespaces#1\par
   473   \ifdim\pagetotal>118pt
   474      \vskip 24pt
   475   \else
   476      \@tempdima=118pt\advance\@tempdima by-\pagetotal
   477      \vskip\@tempdima
   478   \fi}}
   479 
   480 \newcommand{\clearemptydoublepage}{%
   481         \newpage{\pagestyle{empty}\cleardoublepage}}
   482 
   483 \def\chapter{\clearemptydoublepage\thispagestyle{empty}
   484    \global\@topnum\z@\@afterindentfalse
   485    \secdef\@chapter\@schapter}
   486 
   487 \def\@chapter[#1]#2{\ifnum\c@secnumdepth>\m@ne
   488    \refstepcounter{chapter}
   489    \typeout{\@chapapp\space\thechapter}
   490    \addcontentsline{toc}{chapter}{\protect
   491       \numberline{\thechapter\thechapterend}#1}\else %!!!
   492       \addcontentsline{toc}{chapter}{#1}
   493    \fi
   494    \chaptermark{#1}
   495    \addtocontents{lof}{\protect\addvspace{10pt}}
   496    \addtocontents{lot}{\protect\addvspace{10pt}}
   497    \if@twocolumn
   498        \@topnewpage[\@makechapterhead{#2}]
   499    \else \@makechapterhead{#2}
   500            \@afterheading
   501    \fi}
   502 
   503 \def\@schapter#1{\if@twocolumn\@topnewpage[\@makeschapterhead{#1}]
   504         \else \@makeschapterhead{#1}
   505               \@afterheading\fi}
   506 
   507 % Appendix
   508 \def\appendix{\par
   509   \setcounter{chapter}{0}%
   510   \setcounter{section}{0}%
   511   \def\@chapapp{\appendixname}%
   512   \def\thechapter{\Alph{chapter}}}
   513 
   514 %  definition of sections
   515 %  \hyphenpenalty and \raggedright added, so that there is no
   516 %  hyphenation and the text is set ragged-right in sectioning
   517 
   518 \def\runinsep{.}
   519 \def\aftertext{\unskip\runinsep}
   520 
   521 \def\@sect#1#2#3#4#5#6[#7]#8{\ifnum #2>\c@secnumdepth
   522    \let\@svsec\@empty\else
   523    \refstepcounter{#1}\edef\@svsec{\csname the#1\endcsname
   524                                    \hskip\betweenumberspace
   525                                    \ignorespaces}\fi
   526    \@tempskipa #5\relax
   527     \ifdim \@tempskipa>\z@
   528       \begingroup #6\relax
   529         \sec@hangfrom{\hskip #3\relax\@svsec}{%
   530         \raggedright
   531         \hyphenpenalty \@M
   532         \interlinepenalty \@M #8\par}%
   533       \endgroup
   534      \csname #1mark\endcsname{#7}\addcontentsline
   535        {toc}{#1}{\ifnum #2>\c@secnumdepth \else
   536                     \protect\numberline{\csname the#1\endcsname}\fi
   537                   #7}\else
   538      \def\@svsechd{#6\hskip #3\relax
   539                 \@svsec #8\aftertext\ignorespaces
   540                     \csname #1mark\endcsname
   541                     {#7}\addcontentsline
   542                          {toc}{#1}{\ifnum #2>\c@secnumdepth \else
   543                            \protect\numberline{\csname the#1\endcsname}\fi
   544                      #7}}\fi
   545    \@xsect{#5}}
   546 
   547 % measures and setting of sections
   548 
   549 \def\section{\@startsection{section}{1}{\z@}%
   550     {-25pt plus-4pt minus-4pt}{12.5pt plus4pt
   551      minus4pt}{\large\bf\boldmath}}
   552 \def\subsection{\@startsection{subsection}{2}{\z@}%
   553     {-17pt plus-4pt minus-4pt}{10pt plus4pt
   554      minus4pt}{\normalsize\bf\boldmath}}
   555 \def\subsubsection{\@startsection{subsubsection}{3}{\z@}%
   556     {-5.388pt plus-4pt minus-4pt}{-5pt}{\normalsize\bf\boldmath}}
   557 \def\paragraph{\@startsection{paragraph}{4}{\z@}%
   558     {-5.388pt plus-4pt minus-4pt}{-5pt}{\normalsize\it}}
   559 \def\subparagraph{\@startsection{subparagraph}{5}{\z@}%
   560     {-5.388pt plus-4pt minus-4pt}{-5pt}{\normalsize\it}}
   561 
   562 %  definition of \part
   563 \def\thepart{\Roman{part}}
   564 \def\part{\clearemptydoublepage   % Starts new page.
   565    \thispagestyle{empty}     % Page style of part page is empty
   566   \if@twocolumn              % IF two-column style
   567      \onecolumn              %  THEN \onecolumn
   568      \@tempswatrue           %       @tempswa := true
   569     \else \@tempswafalse     %  ELSE @tempswa := false
   570   \fi                        % FI
   571 % \hbox{}\vfil               % Add fil glue to center title
   572 %%  \bgroup  \centering      % BEGIN centering %% Removed 19 Jan 88
   573   \secdef\@part\@spart}
   574 
   575 
   576 \def\@part[#1]#2{\ifnum \c@secnumdepth >-2\relax  % IF secnumdepth > -2
   577         \refstepcounter{part}                     %   THEN step part counter
   578         \addcontentsline{toc}{part}{\partname\    %        add toc line
   579         \thepart. #1}\else                        %   ELSE add unnumbered line
   580         \addcontentsline{toc}{part}{#1}\fi        % FI
   581    \markboth{}{}
   582    {\raggedleft                      % added 8.1.92 FUH
   583     \ifnum \c@secnumdepth >-2\relax  % IF secnumdepth > -2
   584       \Large\partname\ \thepart      %   THEN Print 'Part' and number
   585     \par                             %         in \Large
   586     \vskip 103.3pt \fi               %        Add space before title.
   587     \bf\boldmath                     % FI
   588     #2\par}\@endpart}                % Print Title in \Large bold.
   589 
   590 
   591 % \@endpart finishes the part page
   592 %
   593 \def\@endpart{\vfil\newpage   % End page with 1fil glue.
   594    \if@twoside                % IF twoside printing
   595        \hbox{}                %   THEN Produce totally blank page
   596        \thispagestyle{empty}
   597        \newpage
   598    \fi                        % FI
   599    \if@tempswa                % IF @tempswa = true
   600      \twocolumn               %   THEN \twocolumn
   601    \fi}                       % FI
   602 
   603 \def\@spart#1{{\raggedleft     % added 8 Jan 92 FUH
   604    \Large\bf\boldmath          % Print title in \Large-boldface
   605    #1\par}\@endpart}
   606 
   607 \def\subtitle#1{\gdef\@subtitle{#1}}
   608 \def\@subtitle{}
   609 
   610 \def\maketitle{\par
   611  \begingroup
   612    \def\thefootnote{\fnsymbol{footnote}}%
   613    \def\@makefnmark{\hbox
   614        to\z@{$\m@th^{\@thefnmark}$\hss}}%
   615    \if@twocolumn
   616      \twocolumn[\@maketitle]%
   617      \else \newpage
   618      \global\@topnum\z@   % Prevents figures from going at top of page.
   619      \@maketitle \fi\thispagestyle{empty}\@thanks
   620      \par\penalty -\@M
   621  \endgroup
   622  \setcounter{footnote}{0}%
   623  \let\maketitle\relax
   624  \let\@maketitle\relax
   625  \gdef\@thanks{}\gdef\@author{}\gdef\@title{}\let\thanks\relax}
   626 
   627 \def\@maketitle{\newpage
   628  \null
   629  \vskip 2em                 % Vertical space above title.
   630 \begingroup
   631   \def\and{\unskip, }
   632   \parindent=\z@
   633   \pretolerance=10000
   634   \rightskip=0pt plus 3cm
   635   {\LARGE                   % each author set in \LARGE
   636    \lineskip .5em
   637    \@author
   638    \par}%
   639   \vskip 2cm                % Vertical space after author.
   640   {\Huge \@title \par}%     % Title set in \Huge size.
   641   \vskip 1cm                % Vertical space after title.
   642   \if!\@subtitle!\else
   643    {\LARGE\ignorespaces\@subtitle \par}
   644    \vskip 1cm                % Vertical space after subtitle.
   645   \fi
   646   \if!\@date!\else
   647     {\large \@date}%          % Date set in \large size.
   648     \par
   649     \vskip 1.5em               % Vertical space after date.
   650   \fi
   651  \vfill
   652  {\Large Springer-\kern-0.1em Verlag\par}
   653  \vskip 5pt
   654  \large
   655    Berlin\enspace Heidelberg\enspace New\kern0.1em York\\
   656    London\enspace Paris\enspace Tokyo\\
   657    Hong\thinspace Kong\enspace Barcelona\\
   658    Budapest\par
   659 \endgroup}
   660 
   661 \def\abstract{\if@twocolumn
   662 \section*{\abstractname}%
   663 \else \small
   664 \begin{center}%
   665 {\bf \abstractname\vspace{-.5em}\vspace{\z@}}%
   666 \end{center}%
   667 \quotation
   668 \fi}
   669 
   670 \def\endabstract{\if@twocolumn\else\endquotation\fi}
   671 
   672 
   673 
   674 
   675 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   676 %
   677 %             This is toc.xxx
   678 %
   679 % it modifies the appearence of the table of contents
   680 %
   681 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   682 \def\tableofcontents{\@restonecolfalse\if@twocolumn\@restonecoltrue\onecolumn
   683  \fi\chapter*{\contentsname \@mkboth{{\contentsname}}{{\contentsname}}}
   684  \@starttoc{toc}\if@restonecol\twocolumn\fi}
   685 
   686 \setcounter{tocdepth}{2}
   687 
   688 \def\l@part#1#2{\addpenalty{\@secpenalty}%
   689    \addvspace{2em plus\p@}%  % space above part line
   690    \begingroup
   691      \parindent \z@
   692      \rightskip \z@ plus 5em
   693      \hrule\vskip5pt
   694      \bf\boldmath        % set line in boldface
   695      \leavevmode          % TeX command to enter horizontal mode.
   696      #1\par
   697      \vskip5pt
   698      \hrule
   699      \vskip1pt
   700      \nobreak             % Never break after part entry
   701    \endgroup}
   702 
   703 \def\@dotsep{2}
   704 
   705 \def\l@chapter#1#2{\addpenalty{-\@highpenalty}
   706  \vskip 1.0em plus 1pt \@tempdima \tocchpnum \begingroup
   707  \parindent \z@ \rightskip \@pnumwidth
   708  \parfillskip -\@pnumwidth
   709  \leavevmode \advance\leftskip\@tempdima \hskip -\leftskip
   710  {\bf\boldmath#1}\nobreak
   711  \leaders\hbox{$\m@th \mkern \@dotsep mu.\mkern
   712  \@dotsep mu$}\hfill
   713  \nobreak\hbox to\@pnumwidth{\hss #2}\par
   714  \penalty\@highpenalty \endgroup}
   715 
   716 \newdimen\tocchpnum
   717 \newdimen\tocsecnum
   718 \newdimen\tocsectotal
   719 \newdimen\tocsubsecnum
   720 \newdimen\tocsubsectotal
   721 \newdimen\tocsubsubsecnum
   722 \newdimen\tocsubsubsectotal
   723 \newdimen\tocparanum
   724 \newdimen\tocparatotal
   725 \newdimen\tocsubparanum
   726 \tocchpnum=20\p@            % chapter {\bf 88.} plus 5.3pt
   727 \tocsecnum=22.5\p@          % section 88.8. plus 4.722pt
   728 \tocsubsecnum=30.5\p@       % subsection 88.8.8 plus 4.944pt
   729 \tocsubsubsecnum=38\p@      % subsubsection 88.8.8.8 plus 4.666pt
   730 \tocparanum=45\p@           % paragraph 88.8.8.8.8 plus 3.888pt
   731 \tocsubparanum=53\p@        % subparagraph 88.8.8.8.8.8 plus 4.11pt
   732 \def\calctocindent{%
   733 \tocsectotal=\tocchpnum
   734 \advance\tocsectotal by\tocsecnum
   735 \tocsubsectotal=\tocsectotal
   736 \advance\tocsubsectotal by\tocsubsecnum
   737 \tocsubsubsectotal=\tocsubsectotal
   738 \advance\tocsubsubsectotal by\tocsubsubsecnum
   739 \tocparatotal=\tocsubsubsectotal
   740 \advance\tocparatotal by\tocparanum}
   741 \calctocindent
   742 
   743 \def\l@section{\@dottedtocline{1}{\tocchpnum}{\tocsecnum}}
   744 \def\l@subsection{\@dottedtocline{2}{\tocsectotal}{\tocsubsecnum}}
   745 \def\l@subsubsection{\@dottedtocline{3}{\tocsubsectotal}{\tocsubsubsecnum}}
   746 \def\l@paragraph{\@dottedtocline{4}{\tocsubsubsectotal}{\tocparanum}}
   747 \def\l@subparagraph{\@dottedtocline{5}{\tocparatotal}{\tocsubparanum}}
   748 
   749 \def\listoffigures{\@restonecolfalse\if@twocolumn\@restonecoltrue\onecolumn
   750  \fi\chapter*{\listfigurename\@mkboth{{\listfigurename}}{{\listfigurename}}}
   751  \@starttoc{lof}\if@restonecol\twocolumn\fi}
   752 \def\l@figure{\@dottedtocline{1}{0em}{\tocsecnum}}
   753 
   754 \def\listoftables{\@restonecolfalse\if@twocolumn\@restonecoltrue\onecolumn
   755  \fi\chapter*{\listtablename\@mkboth{{\listtablename}}{{\listtablename}}}
   756  \@starttoc{lot}\if@restonecol\twocolumn\fi}
   757 \let\l@table\l@figure
   758 
   759 
   760 
   761 
   762 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   763 %
   764 %             This is runnhead.xxx
   765 %
   766 % It redefines the headings of a text. There are two
   767 % pagestyles possible: "\pagestyle{headings}" and
   768 % "\pagestyle{myheadings}". "\pagestyle{headings}" is
   769 % default.
   770 %
   771 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   772 %
   773 \@ifundefined{thechapterend}{\def\thechapterend{.}}{}
   774 \if@twoside
   775 \def\ps@headings{\let\@mkboth\markboth
   776    \def\@oddfoot{}\def\@evenfoot{}
   777    \def\@evenhead{\small\rm\rlap{\thepage}\hskip\headlineindent
   778                   \leftmark\hfil}
   779    \def\@oddhead{\hfil\small\rm\rightmark\hskip\headlineindent
   780                   \llap{\thepage}}
   781    \def\chaptermark##1{\markboth{{\ifnum\c@secnumdepth>\m@ne
   782       \thechapter\thechapterend\hskip\betweenumberspace\fi ##1}}{{\ifnum %!!!
   783       \c@secnumdepth>\m@ne\thechapter\thechapterend\hskip\betweenumberspace\fi ##1}}}%!!!
   784    \def\sectionmark##1{\markright{{\ifnum\c@secnumdepth>\z@
   785       \thesection\hskip\betweenumberspace\fi ##1}}}}
   786 \else \def\ps@headings{\let\@mkboth\markboth
   787    \def\@oddfoot{}\def\@evenfoot{}
   788    \def\@oddhead{\hfil\small\rm\rightmark\hskip\headlineindent
   789                  \llap{\thepage}}
   790    \def\chaptermark##1{\markright{{\ifnum\c@secnumdepth>\m@ne
   791       \thechapter\thechapterend\hskip\betweenumberspace\fi ##1}}}} %!!!
   792 \fi
   793 \def\ps@myheadings{\let\@mkboth\@gobbletwo
   794    \def\@oddfoot{}\def\@evenfoot{}
   795    \def\@evenhead{\small\rm\rlap{\thepage}\hskip\headlineindent
   796                   \leftmark\hfil}
   797    \def\@oddhead{\hfil\small\rm\rightmark\hskip\headlineindent
   798                   \llap{\thepage}}
   799    \def\chaptermark##1{}
   800    \def\sectionmark##1{}%
   801    \def\subsectionmark##1{}}
   802 \ps@headings
   803 
   804 % Definition of the "\spnewtheorem" command.
   805 %
   806 % Usage:
   807 %
   808 %     \spnewtheorem{env_nam}{caption}[within]{cap_font}{body_font}
   809 % or  \spnewtheorem{env_nam}[numbered_like]{caption}{cap_font}{body_font}
   810 % or  \spnewtheorem*{env_nam}{caption}{cap_font}{body_font}
   811 %
   812 % New is "cap_font" and "body_font". It stands for
   813 % fontdefinition of the caption and the text itself.
   814 %
   815 % "\spnewtheorem*" gives a theorem without number.
   816 %
   817 % A defined spnewthoerem environment is used as described
   818 % by Lamport.
   819 %
   820 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   821 
   822 \let\if@envcntreset\iffalse % environment counter is reset each chapter
   823 \DeclareOption{envcountreset}{\let\if@envcntreset\iftrue}
   824 \let\if@envcntsame\iffalse  % NOT all environments like "Theorem",
   825                             % each using its own counter
   826 \DeclareOption{envcountsame}{\let\if@envcntsame\iftrue}
   827 \def\envankh{section}       % show \thesection along with theorem number
   828 \DeclareOption{envcountchap}{\def\envankh{chapter}%
   829 \ExecuteOptions{envcountsect}}
   830 \let\if@envcntsect\iftrue   % show \csname the\envankh\endcsname along
   831                             % with environment number
   832 \DeclareOption{envcountsect}{\let\if@envcntsect\iftrue}
   833 \ProcessOptions
   834 
   835 \def\@thmcountersep{.}
   836 \def\@thmcounterend{.}
   837 
   838 \def\spnewtheorem{\@ifstar{\@sthm}{\@Sthm}}
   839 
   840 % definition of \spnewtheorem with number
   841 
   842 \def\@spnthm#1#2{%
   843   \@ifnextchar[{\@spxnthm{#1}{#2}}{\@spynthm{#1}{#2}}}
   844 \def\@Sthm#1{\@ifnextchar[{\@spothm{#1}}{\@spnthm{#1}}}
   845 
   846 \def\@spxnthm#1#2[#3]#4#5{\expandafter\@ifdefinable\csname #1\endcsname
   847    {\@definecounter{#1}\@addtoreset{#1}{#3}%
   848    \expandafter\xdef\csname the#1\endcsname{\expandafter\noexpand
   849      \csname the#3\endcsname \noexpand\@thmcountersep \@thmcounter{#1}}%
   850    \expandafter\xdef\csname #1name\endcsname{#2}%
   851    \global\@namedef{#1}{\@spthm{#1}{\csname #1name\endcsname}{#4}{#5}}%
   852                               \global\@namedef{end#1}{\@endtheorem}}}
   853 
   854 \def\@spynthm#1#2#3#4{\expandafter\@ifdefinable\csname #1\endcsname
   855    {\@definecounter{#1}%
   856    \expandafter\xdef\csname the#1\endcsname{\@thmcounter{#1}}%
   857    \expandafter\xdef\csname #1name\endcsname{#2}%
   858    \global\@namedef{#1}{\@spthm{#1}{\csname #1name\endcsname}{#3}{#4}}%
   859                                \global\@namedef{end#1}{\@endtheorem}}}
   860 
   861 \def\@spothm#1[#2]#3#4#5{%
   862   \@ifundefined{c@#2}{\@latexerr{No theorem environment `#2' defined}\@eha}%
   863   {\expandafter\@ifdefinable\csname #1\endcsname
   864   {\global\@namedef{the#1}{\@nameuse{the#2}}%
   865   \expandafter\xdef\csname #1name\endcsname{#3}%
   866   \global\@namedef{#1}{\@spthm{#2}{\csname #1name\endcsname}{#4}{#5}}%
   867   \global\@namedef{end#1}{\@endtheorem}}}}
   868 
   869 \def\@spthm#1#2#3#4{\topsep 7\p@ \@plus2\p@ \@minus4\p@
   870 \refstepcounter{#1}%
   871 \@ifnextchar[{\@spythm{#1}{#2}{#3}{#4}}{\@spxthm{#1}{#2}{#3}{#4}}}
   872 
   873 \def\@spxthm#1#2#3#4{\@spbegintheorem{#2}{\csname the#1\endcsname}{#3}{#4}%
   874                     \ignorespaces}
   875 
   876 \def\@spythm#1#2#3#4[#5]{\@spopargbegintheorem{#2}{\csname
   877        the#1\endcsname}{#5}{#3}{#4}\ignorespaces}
   878 
   879 \def\@spbegintheorem#1#2#3#4{\trivlist
   880                  \item[\hskip\labelsep{#3#1\ #2\@thmcounterend}]#4}
   881 
   882 \def\@spopargbegintheorem#1#2#3#4#5{\trivlist
   883       \item[\hskip\labelsep{#4#1\ #2}]{#4(#3)\@thmcounterend\ }#5}
   884 
   885 % definition of \spnewtheorem* without number
   886 
   887 \def\@sthm#1#2{\@Ynthm{#1}{#2}}
   888 
   889 \def\@Ynthm#1#2#3#4{\expandafter\@ifdefinable\csname #1\endcsname
   890    {\global\@namedef{#1}{\@Thm{\csname #1name\endcsname}{#3}{#4}}%
   891     \expandafter\xdef\csname #1name\endcsname{#2}%
   892     \global\@namedef{end#1}{\@endtheorem}}}
   893 
   894 \def\@Thm#1#2#3{\topsep 7\p@ \@plus2\p@ \@minus4\p@
   895 \@ifnextchar[{\@Ythm{#1}{#2}{#3}}{\@Xthm{#1}{#2}{#3}}}
   896 
   897 \def\@Xthm#1#2#3{\@Begintheorem{#1}{#2}{#3}\ignorespaces}
   898 
   899 \def\@Ythm#1#2#3[#4]{\@Opargbegintheorem{#1}
   900        {#4}{#2}{#3}\ignorespaces}
   901 
   902 \def\@Begintheorem#1#2#3{#3\trivlist
   903                            \item[\hskip\labelsep{#2#1\@thmcounterend}]}
   904 
   905 \def\@Opargbegintheorem#1#2#3#4{#4\trivlist
   906       \item[\hskip\labelsep{#3#1}]{#3(#2)\@thmcounterend\ }}
   907 
   908 % initialize theorem environment
   909 
   910 \if@envcntsect % show section counter
   911    \def\@thmcountersep{.}
   912    \spnewtheorem{theorem}{Theorem}[\envankh]{\bfseries}{\itshape}
   913 \else          % theorem counter only
   914    \spnewtheorem{theorem}{Theorem}{\bfseries}{\itshape}
   915    \if@envcntreset
   916       \@addtoreset{theorem}{section}
   917    \else
   918       \@addtoreset{theorem}{chapter}
   919    \fi
   920 \fi
   921 
   922 %definition of divers theorem environments
   923 \spnewtheorem*{claim}{Claim}{\itshape}{\rmfamily}
   924 \spnewtheorem*{proof}{Proof}{\itshape}{\rmfamily}
   925 \if@envcntsame % all environments like "Theorem" - using its counter
   926    \def\spn@wtheorem#1#2#3#4{\@spothm{#1}[theorem]{#2}{#3}{#4}}
   927 \else % all environments with their own counter
   928    \if@envcntsect % show section counter
   929       \def\spn@wtheorem#1#2#3#4{\@spxnthm{#1}{#2}[\envankh]{#3}{#4}}
   930    \else          % environment counter only
   931       \if@envcntreset % environment counter is reset each section
   932          \def\spn@wtheorem#1#2#3#4{\@spynthm{#1}{#2}{#3}{#4}
   933                                    \@addtoreset{#1}{section}}
   934       \else
   935          \let\spn@wtheorem=\@spynthm
   936       \fi
   937    \fi
   938 \fi
   939 \spn@wtheorem{case}{Case}{\itshape}{\rmfamily}
   940 \spn@wtheorem{conjecture}{Conjecture}{\itshape}{\rmfamily}
   941 \spn@wtheorem{corollary}{Corollary}{\bfseries}{\itshape}
   942 \spn@wtheorem{definition}{Definition}{\bfseries}{\itshape}
   943 \spn@wtheorem{example}{Example}{\itshape}{\rmfamily}
   944 %%LCP%% \spn@wtheorem{exercise}{Exercise}{\bfseries}{\rmfamily}
   945 \spn@wtheorem{lemma}{Lemma}{\bfseries}{\itshape}
   946 \spn@wtheorem{note}{Note}{\itshape}{\rmfamily}
   947 \spn@wtheorem{problem}{Problem}{\bfseries}{\rmfamily}
   948 \spn@wtheorem{property}{Property}{\itshape}{\rmfamily}
   949 \spn@wtheorem{proposition}{Proposition}{\bfseries}{\itshape}
   950 \spn@wtheorem{question}{Question}{\itshape}{\rmfamily}
   951 \spn@wtheorem{solution}{Solution}{\bfseries}{\rmfamily}
   952 \spn@wtheorem{remark}{Remark}{\itshape}{\rmfamily}
   953 
   954 \def\@takefromreset#1#2{%
   955     \def\@tempa{#1}%
   956     \let\@tempd\@elt
   957     \def\@elt##1{%
   958         \def\@tempb{##1}%
   959         \ifx\@tempa\@tempb\else
   960             \@addtoreset{##1}{#2}%
   961         \fi}%
   962     \expandafter\expandafter\let\expandafter\@tempc\csname cl@#2\endcsname
   963     \expandafter\def\csname cl@#2\endcsname{}%
   964     \@tempc
   965     \let\@elt\@tempd}
   966 
   967 \def\theopargself{\def\@spopargbegintheorem##1##2##3##4##5{\trivlist
   968       \item[\hskip\labelsep{##4##1\ ##2}]{##4##3\@thmcounterend\ }##5}
   969                   \def\@Opargbegintheorem##1##2##3##4{##4\trivlist
   970       \item[\hskip\labelsep{##3##1}]{##3##2\@thmcounterend\ }}
   971       }
   972 
   973 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   974 %%
   975 %%             This is figure.neu
   976 %%
   977 %% It redefines the captions for "figure" and "table"
   978 %% environments.
   979 %%
   980 %% There are three new kind of captions: "\firstcaption"
   981 %% and "\secondcaption" for captions set side by side.
   982 %% Usage for those two commands: like "\caption".
   983 %%
   984 %% "\sidecaption" with two parms: #1 width of picture
   985 %%                                #2 height of picture
   986 %%
   987 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   988 
   989 \@ifundefined{floatlegendstyle}{\def\floatlegendstyle{\bfseries}}{}
   990 \def\floatcounterend{.\ }
   991 \def\capstrut{\vrule\@width\z@\@height\topskip}
   992 \@ifundefined{captionstyle}{\def\captionstyle{\normalfont\small}}{}
   993 \@ifundefined{instindent}{\newdimen\instindent}{}
   994 
   995 \long\def\@caption#1[#2]#3{\par\addcontentsline{\csname
   996   ext@#1\endcsname}{#1}{\protect\numberline{\csname
   997   the#1\endcsname}{\ignorespaces #2}}\begingroup
   998     \@parboxrestore
   999     \@makecaption{\csname fnum@#1\endcsname}{\ignorespaces #3}\par
  1000   \endgroup}
  1001 
  1002 \def\firstcaption{\refstepcounter\@captype\@dblarg%
  1003             {\@firstcaption\@captype}}
  1004 
  1005 \def\secondcaption{\refstepcounter\@captype\@dblarg%
  1006             {\@secondcaption\@captype}}
  1007 
  1008 \long\def\@firstcaption#1[#2]#3{\addcontentsline{\csname
  1009   ext@#1\endcsname}{#1}{\protect\numberline{\csname
  1010   the#1\endcsname}{\ignorespaces #2}}\begingroup
  1011     \@parboxrestore
  1012     \vskip3pt
  1013     \@maketwocaptions{\csname fnum@#1\endcsname}{\ignorespaces #3}%
  1014     \ignorespaces\hspace{.073\textwidth}\hfil%
  1015   \endgroup}
  1016 
  1017 \long\def\@secondcaption#1[#2]#3{\addcontentsline{\csname
  1018   ext@#1\endcsname}{#1}{\protect\numberline{\csname
  1019   the#1\endcsname}{\ignorespaces #2}}\begingroup
  1020     \@parboxrestore
  1021     \@maketwocaptions{\csname fnum@#1\endcsname}{\ignorespaces #3}\par
  1022   \endgroup}
  1023 
  1024 \long\def\@maketwocaptions#1#2{%
  1025    \parbox[t]{.46\textwidth}{{\floatlegendstyle #1\floatcounterend} #2}}
  1026 
  1027 \newdimen\figgap\figgap=14.2pt
  1028 %
  1029 \long\def\@makesidecaption#1#2{%
  1030    \setbox0=\vbox{\hsize=\@tempdima
  1031                   \captionstyle{\floatlegendstyle
  1032                                          #1\floatcounterend}#2}%
  1033    \ifdim\instindent<\z@
  1034       \ifdim\ht0>-\instindent
  1035          \advance\instindent by\ht0
  1036          \typeout{^^JClass-Warning: Legend of \string\sidecaption\space for
  1037                      \@captype\space\csname the\@captype\endcsname
  1038                   ^^Jis \the\instindent\space taller than the corresponding float -
  1039                   ^^Jyou'd better switch the environment. }%
  1040          \instindent\z@
  1041       \fi
  1042    \else
  1043       \ifdim\ht0<\instindent
  1044          \advance\instindent by-\ht0
  1045          \advance\instindent by-\dp0\relax
  1046          \advance\instindent by\topskip
  1047          \advance\instindent by-11pt
  1048       \else
  1049          \advance\instindent by-\ht0
  1050          \instindent=-\instindent
  1051          \typeout{^^JClass-Warning: Legend of \string\sidecaption\space for
  1052                      \@captype\space\csname the\@captype\endcsname
  1053                   ^^Jis \the\instindent\space taller than the corresponding float -
  1054                   ^^Jyou'd better switch the environment. }%
  1055          \instindent\z@
  1056       \fi
  1057    \fi
  1058    \parbox[b]{\@tempdima}{\captionstyle{\floatlegendstyle
  1059                                         #1\floatcounterend}#2%
  1060                           \ifdim\instindent>\z@ \\
  1061                                \vrule\@width\z@\@height\instindent
  1062                                      \@depth\z@
  1063                           \fi}}
  1064 \def\sidecaption{\@ifnextchar[\sidec@ption{\sidec@ption[b]}}
  1065 \def\sidec@ption[#1]#2\caption{%
  1066 \setbox\@tempboxa=\hbox{\ignorespaces#2\unskip}%
  1067 \if@twocolumn
  1068  \ifdim\hsize<\textwidth\else
  1069    \ifdim\wd\@tempboxa<\columnwidth
  1070       \typeout{Double column float fits into single column -
  1071             ^^Jyou'd better switch the environment. }%
  1072    \fi
  1073  \fi
  1074 \fi
  1075   \instindent=\ht\@tempboxa
  1076   \advance\instindent by\dp\@tempboxa
  1077 \if t#1
  1078 \else
  1079   \instindent=-\instindent
  1080 \fi
  1081 \@tempdima=\hsize
  1082 \advance\@tempdima by-\figgap
  1083 \advance\@tempdima by-\wd\@tempboxa
  1084 \ifdim\@tempdima<3cm
  1085     \typeout{\string\sidecaption: No sufficient room for the legend;
  1086              using normal \string\caption. }%
  1087    \unhbox\@tempboxa
  1088    \let\@capcommand=\@caption
  1089 \else
  1090    \ifdim\@tempdima<4.5cm
  1091       \typeout{\string\sidecaption: Room for the legend very narrow;
  1092                using \string\raggedright. }%
  1093       \toks@\expandafter{\captionstyle\sloppy
  1094                          \rightskip=0ptplus6mm\relax}%
  1095       \def\captionstyle{\the\toks@}%
  1096    \fi
  1097    \let\@capcommand=\@sidecaption
  1098    \leavevmode
  1099    \unhbox\@tempboxa
  1100    \hfill
  1101 \fi
  1102 \refstepcounter\@captype
  1103 \@dblarg{\@capcommand\@captype}}
  1104 \long\def\@sidecaption#1[#2]#3{\addcontentsline{\csname
  1105   ext@#1\endcsname}{#1}{\protect\numberline{\csname
  1106   the#1\endcsname}{\ignorespaces #2}}\begingroup
  1107     \@parboxrestore
  1108     \@makesidecaption{\csname fnum@#1\endcsname}{\ignorespaces #3}\par
  1109   \endgroup}
  1110 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  1111 
  1112 \def\fig@type{figure}
  1113 
  1114 \def\leftlegendglue{\hfil}
  1115 \newdimen\figcapgap\figcapgap=3pt
  1116 \newdimen\tabcapgap\tabcapgap=5.5pt
  1117 
  1118 \long\def\@makecaption#1#2{%
  1119  \captionstyle
  1120  \ifx\@captype\fig@type
  1121    \vskip\figcapgap
  1122  \fi
  1123  \setbox\@tempboxa\hbox{{\floatlegendstyle #1\floatcounterend}%
  1124  \capstrut #2}%
  1125  \ifdim \wd\@tempboxa >\hsize
  1126    {\floatlegendstyle #1\floatcounterend}\capstrut #2\par
  1127  \else
  1128    \hbox to\hsize{\leftlegendglue\unhbox\@tempboxa\hfil}%
  1129  \fi
  1130  \ifx\@captype\fig@type\else
  1131    \vskip\tabcapgap
  1132  \fi}
  1133 
  1134 \newcounter{merk}
  1135 \def\endfigure{\resetsubfig\end@float}
  1136 \@namedef{endfigure*}{\resetsubfig\end@dblfloat}
  1137 \let\resetsubfig\relax
  1138 \def\subfigures{\stepcounter{figure}\setcounter{merk}{\value{figure}}%
  1139 \setcounter{figure}{0}\def\thefigure{\if@numart\else\thechapter.\fi
  1140 \@arabic\c@merk\alph{figure}}%
  1141 \def\resetsubfig{\setcounter{figure}{\value{merk}}}}
  1142 \let\leftlegendglue\relax
  1143 
  1144 
  1145 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  1146 %
  1147 % Definition of environment  thebibliography
  1148 %
  1149 % Borrowed from book.cls
  1150 %
  1151 % by lcp
  1152 
  1153 \newcommand\bibname{Bibliography}
  1154 \setlength\bibindent{1.5em}
  1155 \renewenvironment{thebibliography}[1]
  1156      {\chapter*{\bibname
  1157         \@mkboth{\MakeUppercase\bibname}{\MakeUppercase\bibname}}%
  1158       \list{\@biblabel{\@arabic\c@enumiv}}%
  1159            {\settowidth\labelwidth{\@biblabel{#1}}%
  1160             \leftmargin\labelwidth
  1161             \advance\leftmargin\labelsep
  1162             \@openbib@code
  1163             \usecounter{enumiv}%
  1164             \let\p@enumiv\@empty
  1165             \renewcommand\theenumiv{\@arabic\c@enumiv}}%
  1166       \sloppy
  1167       \clubpenalty4000
  1168       \@clubpenalty \clubpenalty
  1169       \widowpenalty4000%
  1170       \sfcode`\.\@m}
  1171      {\def\@noitemerr
  1172        {\@latex@warning{Empty `thebibliography' environment}}%
  1173       \endlist}
  1174 
  1175 
  1176 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  1177 %
  1178 %             This is fonotebk.xxx
  1179 %
  1180 % It redefines how footnotes will be typeset.
  1181 %
  1182 % Usage like described by Lamport.
  1183 %
  1184 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  1185 \newdimen\footnoterulewidth
  1186   \footnoterulewidth=1.666cm
  1187 
  1188 \def\footnoterule{\kern-3\p@
  1189  \hrule width\footnoterulewidth
  1190  \kern 2.6\p@}
  1191 
  1192 \newdimen\foot@parindent
  1193 \foot@parindent 10.83\p@
  1194 
  1195 %\long\def\@makefntext#1{\parindent\foot@parindent\noindent
  1196 %         \hbox to\foot@parindent{\hss$\m@th^{\@thefnmark}$\kern3pt}#1}
  1197 \long\def\@makefntext#1{\@setpar{\@@par\@tempdima \hsize
  1198          \advance\@tempdima-\foot@parindent\parshape\@ne\foot@parindent
  1199          \@tempdima}\par
  1200          \parindent \foot@parindent\noindent \hbox to \z@{%
  1201          \hss\hss$^{\@thefnmark}$ }#1}
  1202 
  1203 
  1204 
  1205 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  1206 %
  1207 %             This is environ.tex
  1208 %
  1209 % It defines the environment for acknowledgements.
  1210 %                            and noteadd
  1211 %
  1212 % Usage e.g.: \begin{acknowledgement}
  1213 %                Text
  1214 %             \end{acknowledgement}
  1215 %
  1216 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  1217 % Define `abstract' environment
  1218 \def\acknowledgement{\par\addvspace{17pt}\small\rm
  1219 \trivlist\item[\hskip\labelsep
  1220 {\it\ackname}]}
  1221 \def\endacknowledgement{\endtrivlist\addvspace{6pt}}
  1222 % Define `noteadd' environment
  1223 \def\noteadd{\par\addvspace{17pt}\small\rm
  1224 \trivlist\item[\hskip\labelsep
  1225 {\it\noteaddname}]}
  1226 \def\endnoteadd{\endtrivlist\addvspace{6pt}}
  1227 
  1228 
  1229 
  1230 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  1231 %
  1232 %             This is item.xxx
  1233 %
  1234 % It redefines the kind of label for "itemize", "enumerate"
  1235 % and "description" environment. The last is extended by
  1236 % an optional parameter. Its length is used for overall
  1237 % indentation.
  1238 %
  1239 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  1240 
  1241 % labels of enumerate
  1242 
  1243 \def\labelenumi{\theenumi.}
  1244 \def\labelenumii{\theenumii)}
  1245 \def\theenumii{\alph{enumii}}
  1246 \def\p@enumii{\theenumi}
  1247 
  1248 % labels of itemize
  1249 
  1250 \def\labelitemi{\bf --}
  1251 \def\labelitemii{\bf --}
  1252 \def\labelitemiii{$\bullet$}
  1253 \def\labelitemiv{$\cdot$}
  1254 
  1255 % labels of description
  1256 \def\descriptionlabel#1{\hspace\labelsep #1\hfil}
  1257 
  1258 % make indentations changeable
  1259 
  1260 \def\setitemindent#1{\settowidth{\labelwidth}{#1}%
  1261         \leftmargini\labelwidth
  1262         \advance\leftmargini\labelsep
  1263    \def\@listi{\leftmargin\leftmargini
  1264         \labelwidth\leftmargini\advance\labelwidth by -\labelsep
  1265         \parsep=\parskip
  1266         \topsep=\medskipamount
  1267         \itemsep=\parskip \advance\itemsep by -\parsep}}
  1268 \def\setitemitemindent#1{\settowidth{\labelwidth}{#1}%
  1269         \leftmarginii\labelwidth
  1270         \advance\leftmarginii\labelsep
  1271 \def\@listii{\leftmargin\leftmarginii
  1272         \labelwidth\leftmarginii\advance\labelwidth by -\labelsep
  1273         \parsep=\parskip
  1274         \topsep=\z@
  1275         \itemsep=\parskip \advance\itemsep by -\parsep}}
  1276 %
  1277 % adjusted environment "description"
  1278 % if an optional parameter (at the first two levels of lists)
  1279 % is present, its width is considered to be the widest mark
  1280 % throughout the current list.
  1281 \def\description{\@ifnextchar[{\@describe}{\list{}{\labelwidth\z@
  1282           \itemindent-\leftmargin \let\makelabel\descriptionlabel}}}
  1283 %
  1284 \def\describelabel#1{#1\hfil}
  1285 \def\@describe[#1]{\relax\ifnum\@listdepth=0
  1286 \setitemindent{#1}\else\ifnum\@listdepth=1
  1287 \setitemitemindent{#1}\fi\fi
  1288 \list{--}{\let\makelabel\describelabel}}
  1289 
  1290 
  1291 
  1292 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  1293 %
  1294 %             This is index.xxx
  1295 %
  1296 % It defines miscelaneous addons used for the preparation
  1297 % of an index.
  1298 %
  1299 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  1300 
  1301 \def\theindex{\@restonecoltrue\if@twocolumn\@restonecolfalse\fi
  1302 \columnseprule \z@
  1303 \columnsep 1cc\twocolumn[\@makeschapterhead{\indexname}%
  1304     \csname indexstarthook\endcsname]%
  1305     \@mkboth{\indexname}{\indexname}%
  1306     \thispagestyle{empty}\parindent\z@
  1307     \rightskip0\p@ plus 40\p@
  1308     \parskip\z@ plus .3\p@\relax\let\item\@idxitem
  1309     \def\,{\relax\ifmmode\mskip\thinmuskip
  1310            \else\hskip0.2em\ignorespaces\fi}%
  1311     \small\rm}
  1312 
  1313 \def\idxquad{\hskip 10\p@}% space that divides entry from number
  1314 
  1315 \def\@idxitem{\par\hangindent 10\p@}
  1316 
  1317 \def\subitem{\par\setbox0=\hbox{--\enspace}% second order
  1318                 \noindent\hangindent\wd0\box0}% index entry
  1319 
  1320 \def\subsubitem{\par\setbox0=\hbox{--\,--\enspace}% third
  1321                 \noindent\hangindent\wd0\box0}% order index entry
  1322 
  1323 \def\endtheindex{\if@restonecol\onecolumn\else\clearpage\fi}
  1324 
  1325 \def\indexspace{\par \vskip 10\p@ plus5\p@ minus3\p@\relax}
  1326 
  1327 
  1328 
  1329 
  1330 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  1331 %
  1332 %             This is numberbk.xxx
  1333 %
  1334 % It redefines the kind of numeration for figures,
  1335 % tables and equations. With style option "numart" they
  1336 % are numbered with "no.", otherwise with "kapno.no."
  1337 %
  1338 % e.g. \documentstyle[numart]{article} gives a
  1339 % numbering like in article.sty defined.
  1340 %
  1341 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  1342 \def\@takefromreset#1#2{%
  1343     \def\@tempa{#1}%
  1344     \let\@tempd\@elt
  1345     \def\@elt##1{%
  1346         \def\@tempb{##1}%
  1347         \ifx\@tempa\@tempb\else
  1348             \@addtoreset{##1}{#2}%
  1349         \fi}%
  1350     \expandafter\expandafter\let\expandafter\@tempc\csname cl@#2\endcsname
  1351     \expandafter\def\csname cl@#2\endcsname{}%
  1352     \@tempc
  1353     \let\@elt\@tempd
  1354 }
  1355 %
  1356 \def\ds@numart{\@numarttrue
  1357   \@takefromreset{figure}{chapter}%
  1358   \@takefromreset{table}{chapter}%
  1359   \@takefromreset{equation}{chapter}%
  1360   \def\thefigure{\@arabic\c@figure}%
  1361   \def\thetable{\@arabic\c@table}%
  1362   \def\theequation{\arabic{equation}}}
  1363 %
  1364 \def\thefigure{\thechapter.\@arabic\c@figure}
  1365 \def\thetable{\thechapter.\@arabic\c@table}
  1366 \def\theequation{\thechapter.\arabic{equation}}
  1367 \@addtoreset{figure}{chapter}
  1368 \@addtoreset{table}{chapter}
  1369 \@addtoreset{equation}{chapter}
  1370 \endinput
  1371