bd5c114492
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1807 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
1191 lines
41 KiB
TeX
1191 lines
41 KiB
TeX
% LLNCS DOCUMENT CLASS -- version 2.14 (17-Aug-2004)
|
|
% Springer Verlag LaTeX2e support for Lecture Notes in Computer Science
|
|
%
|
|
%%
|
|
%% \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}[1995/12/01]
|
|
\ProvidesClass{llncs}[2004/08/17 v2.14
|
|
^^J LaTeX document class for Lecture Notes in Computer Science]
|
|
% Options
|
|
\let\if@envcntreset\iffalse
|
|
\DeclareOption{envcountreset}{\let\if@envcntreset\iftrue}
|
|
\DeclareOption{citeauthoryear}{\let\citeauthoryear=Y}
|
|
\DeclareOption{oribibl}{\let\oribibl=Y}
|
|
\let\if@custvec\iftrue
|
|
\DeclareOption{orivec}{\let\if@custvec\iffalse}
|
|
\let\if@envcntsame\iffalse
|
|
\DeclareOption{envcountsame}{\let\if@envcntsame\iftrue}
|
|
\let\if@envcntsect\iffalse
|
|
\DeclareOption{envcountsect}{\let\if@envcntsect\iftrue}
|
|
\let\if@runhead\iffalse
|
|
\DeclareOption{runningheads}{\let\if@runhead\iftrue}
|
|
|
|
\let\if@openbib\iffalse
|
|
\DeclareOption{openbib}{\let\if@openbib\iftrue}
|
|
|
|
% languages
|
|
\let\switcht@@therlang\relax
|
|
\def\ds@deutsch{\def\switcht@@therlang{\switcht@deutsch}}
|
|
\def\ds@francais{\def\switcht@@therlang{\switcht@francais}}
|
|
|
|
\DeclareOption*{\PassOptionsToClass{\CurrentOption}{article}}
|
|
|
|
\ProcessOptions
|
|
|
|
\LoadClass[twoside]{article}
|
|
\RequirePackage{multicol} % needed for the list of participants, index
|
|
|
|
\setlength{\textwidth}{12.2cm}
|
|
\setlength{\textheight}{19.3cm}
|
|
\renewcommand\@pnumwidth{2em}
|
|
\renewcommand\@tocrmarg{3.5em}
|
|
%
|
|
\def\@dottedtocline#1#2#3#4#5{%
|
|
\ifnum #1>\c@tocdepth \else
|
|
\vskip \z@ \@plus.2\p@
|
|
{\leftskip #2\relax \rightskip \@tocrmarg \advance\rightskip by 0pt plus 2cm
|
|
\parfillskip -\rightskip \pretolerance=10000
|
|
\parindent #2\relax\@afterindenttrue
|
|
\interlinepenalty\@M
|
|
\leavevmode
|
|
\@tempdima #3\relax
|
|
\advance\leftskip \@tempdima \null\nobreak\hskip -\leftskip
|
|
{#4}\nobreak
|
|
\leaders\hbox{$\m@th
|
|
\mkern \@dotsep mu\hbox{.}\mkern \@dotsep
|
|
mu$}\hfill
|
|
\nobreak
|
|
\hb@xt@\@pnumwidth{\hfil\normalfont \normalcolor #5}%
|
|
\par}%
|
|
\fi}
|
|
%
|
|
\def\switcht@albion{%
|
|
\def\abstractname{Abstract.}
|
|
\def\ackname{Acknowledgement.}
|
|
\def\andname{and}
|
|
\def\lastandname{\unskip, and}
|
|
\def\appendixname{Appendix}
|
|
\def\chaptername{Chapter}
|
|
\def\claimname{Claim}
|
|
\def\conjecturename{Conjecture}
|
|
\def\contentsname{Table of Contents}
|
|
\def\corollaryname{Corollary}
|
|
\def\definitionname{Definition}
|
|
\def\examplename{Example}
|
|
\def\exercisename{Exercise}
|
|
\def\figurename{Fig.}
|
|
\def\keywordname{{\bf Key words:}}
|
|
\def\indexname{Index}
|
|
\def\lemmaname{Lemma}
|
|
\def\contriblistname{List of Contributors}
|
|
\def\listfigurename{List of Figures}
|
|
\def\listtablename{List of Tables}
|
|
\def\mailname{{\it Correspondence to\/}:}
|
|
\def\noteaddname{Note added in proof}
|
|
\def\notename{Note}
|
|
\def\partname{Part}
|
|
\def\problemname{Problem}
|
|
\def\proofname{Proof}
|
|
\def\propertyname{Property}
|
|
\def\propositionname{Proposition}
|
|
\def\questionname{Question}
|
|
\def\remarkname{Remark}
|
|
\def\seename{see}
|
|
\def\solutionname{Solution}
|
|
\def\subclassname{{\it Subject Classifications\/}:}
|
|
\def\tablename{Table}
|
|
\def\theoremname{Theorem}}
|
|
\switcht@albion
|
|
% Names of theorem like environments are already defined
|
|
% but must be translated if another language is chosen
|
|
%
|
|
% French section
|
|
\def\switcht@francais{%\typeout{On parle francais.}%
|
|
\def\abstractname{R\'esum\'e.}%
|
|
\def\ackname{Remerciements.}%
|
|
\def\andname{et}%
|
|
\def\lastandname{ et}%
|
|
\def\appendixname{Appendice}
|
|
\def\chaptername{Chapitre}%
|
|
\def\claimname{Pr\'etention}%
|
|
\def\conjecturename{Hypoth\`ese}%
|
|
\def\contentsname{Table des mati\`eres}%
|
|
\def\corollaryname{Corollaire}%
|
|
\def\definitionname{D\'efinition}%
|
|
\def\examplename{Exemple}%
|
|
\def\exercisename{Exercice}%
|
|
\def\figurename{Fig.}%
|
|
\def\keywordname{{\bf Mots-cl\'e:}}
|
|
\def\indexname{Index}
|
|
\def\lemmaname{Lemme}%
|
|
\def\contriblistname{Liste des contributeurs}
|
|
\def\listfigurename{Liste des figures}%
|
|
\def\listtablename{Liste des tables}%
|
|
\def\mailname{{\it Correspondence to\/}:}
|
|
\def\noteaddname{Note ajout\'ee \`a l'\'epreuve}%
|
|
\def\notename{Remarque}%
|
|
\def\partname{Partie}%
|
|
\def\problemname{Probl\`eme}%
|
|
\def\proofname{Preuve}%
|
|
\def\propertyname{Caract\'eristique}%
|
|
%\def\propositionname{Proposition}%
|
|
\def\questionname{Question}%
|
|
\def\remarkname{Remarque}%
|
|
\def\seename{voir}
|
|
\def\solutionname{Solution}%
|
|
\def\subclassname{{\it Subject Classifications\/}:}
|
|
\def\tablename{Tableau}%
|
|
\def\theoremname{Th\'eor\`eme}%
|
|
}
|
|
%
|
|
% German section
|
|
\def\switcht@deutsch{%\typeout{Man spricht deutsch.}%
|
|
\def\abstractname{Zusammenfassung.}%
|
|
\def\ackname{Danksagung.}%
|
|
\def\andname{und}%
|
|
\def\lastandname{ und}%
|
|
\def\appendixname{Anhang}%
|
|
\def\chaptername{Kapitel}%
|
|
\def\claimname{Behauptung}%
|
|
\def\conjecturename{Hypothese}%
|
|
\def\contentsname{Inhaltsverzeichnis}%
|
|
\def\corollaryname{Korollar}%
|
|
%\def\definitionname{Definition}%
|
|
\def\examplename{Beispiel}%
|
|
\def\exercisename{\"Ubung}%
|
|
\def\figurename{Abb.}%
|
|
\def\keywordname{{\bf Schl\"usselw\"orter:}}
|
|
\def\indexname{Index}
|
|
%\def\lemmaname{Lemma}%
|
|
\def\contriblistname{Mitarbeiter}
|
|
\def\listfigurename{Abbildungsverzeichnis}%
|
|
\def\listtablename{Tabellenverzeichnis}%
|
|
\def\mailname{{\it Correspondence to\/}:}
|
|
\def\noteaddname{Nachtrag}%
|
|
\def\notename{Anmerkung}%
|
|
\def\partname{Teil}%
|
|
%\def\problemname{Problem}%
|
|
\def\proofname{Beweis}%
|
|
\def\propertyname{Eigenschaft}%
|
|
%\def\propositionname{Proposition}%
|
|
\def\questionname{Frage}%
|
|
\def\remarkname{Anmerkung}%
|
|
\def\seename{siehe}
|
|
\def\solutionname{L\"osung}%
|
|
\def\subclassname{{\it Subject Classifications\/}:}
|
|
\def\tablename{Tabelle}%
|
|
%\def\theoremname{Theorem}%
|
|
}
|
|
|
|
% Ragged bottom for the actual page
|
|
\def\thisbottomragged{\def\@textbottom{\vskip\z@ plus.0001fil
|
|
\global\let\@textbottom\relax}}
|
|
|
|
\renewcommand\small{%
|
|
\@setfontsize\small\@ixpt{11}%
|
|
\abovedisplayskip 8.5\p@ \@plus3\p@ \@minus4\p@
|
|
\abovedisplayshortskip \z@ \@plus2\p@
|
|
\belowdisplayshortskip 4\p@ \@plus2\p@ \@minus2\p@
|
|
\def\@listi{\leftmargin\leftmargini
|
|
\parsep 0\p@ \@plus1\p@ \@minus\p@
|
|
\topsep 8\p@ \@plus2\p@ \@minus4\p@
|
|
\itemsep0\p@}%
|
|
\belowdisplayskip \abovedisplayskip
|
|
}
|
|
|
|
\frenchspacing
|
|
\widowpenalty=10000
|
|
\clubpenalty=10000
|
|
|
|
\setlength\oddsidemargin {63\p@}
|
|
\setlength\evensidemargin {63\p@}
|
|
\setlength\marginparwidth {90\p@}
|
|
|
|
\setlength\headsep {16\p@}
|
|
|
|
\setlength\footnotesep{7.7\p@}
|
|
\setlength\textfloatsep{8mm\@plus 2\p@ \@minus 4\p@}
|
|
\setlength\intextsep {8mm\@plus 2\p@ \@minus 2\p@}
|
|
|
|
\setcounter{secnumdepth}{2}
|
|
|
|
\newcounter {chapter}
|
|
\renewcommand\thechapter {\@arabic\c@chapter}
|
|
|
|
\newif\if@mainmatter \@mainmattertrue
|
|
\newcommand\frontmatter{\cleardoublepage
|
|
\@mainmatterfalse\pagenumbering{Roman}}
|
|
\newcommand\mainmatter{\cleardoublepage
|
|
\@mainmattertrue\pagenumbering{arabic}}
|
|
\newcommand\backmatter{\if@openright\cleardoublepage\else\clearpage\fi
|
|
\@mainmatterfalse}
|
|
|
|
\renewcommand\part{\cleardoublepage
|
|
\thispagestyle{empty}%
|
|
\if@twocolumn
|
|
\onecolumn
|
|
\@tempswatrue
|
|
\else
|
|
\@tempswafalse
|
|
\fi
|
|
\null\vfil
|
|
\secdef\@part\@spart}
|
|
|
|
\def\@part[#1]#2{%
|
|
\ifnum \c@secnumdepth >-2\relax
|
|
\refstepcounter{part}%
|
|
\addcontentsline{toc}{part}{\thepart\hspace{1em}#1}%
|
|
\else
|
|
\addcontentsline{toc}{part}{#1}%
|
|
\fi
|
|
\markboth{}{}%
|
|
{\centering
|
|
\interlinepenalty \@M
|
|
\normalfont
|
|
\ifnum \c@secnumdepth >-2\relax
|
|
\huge\bfseries \partname~\thepart
|
|
\par
|
|
\vskip 20\p@
|
|
\fi
|
|
\Huge \bfseries #2\par}%
|
|
\@endpart}
|
|
\def\@spart#1{%
|
|
{\centering
|
|
\interlinepenalty \@M
|
|
\normalfont
|
|
\Huge \bfseries #1\par}%
|
|
\@endpart}
|
|
\def\@endpart{\vfil\newpage
|
|
\if@twoside
|
|
\null
|
|
\thispagestyle{empty}%
|
|
\newpage
|
|
\fi
|
|
\if@tempswa
|
|
\twocolumn
|
|
\fi}
|
|
|
|
\newcommand\chapter{\clearpage
|
|
\thispagestyle{empty}%
|
|
\global\@topnum\z@
|
|
\@afterindentfalse
|
|
\secdef\@chapter\@schapter}
|
|
\def\@chapter[#1]#2{\ifnum \c@secnumdepth >\m@ne
|
|
\if@mainmatter
|
|
\refstepcounter{chapter}%
|
|
\typeout{\@chapapp\space\thechapter.}%
|
|
\addcontentsline{toc}{chapter}%
|
|
{\protect\numberline{\thechapter}#1}%
|
|
\else
|
|
\addcontentsline{toc}{chapter}{#1}%
|
|
\fi
|
|
\else
|
|
\addcontentsline{toc}{chapter}{#1}%
|
|
\fi
|
|
\chaptermark{#1}%
|
|
\addtocontents{lof}{\protect\addvspace{10\p@}}%
|
|
\addtocontents{lot}{\protect\addvspace{10\p@}}%
|
|
\if@twocolumn
|
|
\@topnewpage[\@makechapterhead{#2}]%
|
|
\else
|
|
\@makechapterhead{#2}%
|
|
\@afterheading
|
|
\fi}
|
|
\def\@makechapterhead#1{%
|
|
% \vspace*{50\p@}%
|
|
{\centering
|
|
\ifnum \c@secnumdepth >\m@ne
|
|
\if@mainmatter
|
|
\large\bfseries \@chapapp{} \thechapter
|
|
\par\nobreak
|
|
\vskip 20\p@
|
|
\fi
|
|
\fi
|
|
\interlinepenalty\@M
|
|
\Large \bfseries #1\par\nobreak
|
|
\vskip 40\p@
|
|
}}
|
|
\def\@schapter#1{\if@twocolumn
|
|
\@topnewpage[\@makeschapterhead{#1}]%
|
|
\else
|
|
\@makeschapterhead{#1}%
|
|
\@afterheading
|
|
\fi}
|
|
\def\@makeschapterhead#1{%
|
|
% \vspace*{50\p@}%
|
|
{\centering
|
|
\normalfont
|
|
\interlinepenalty\@M
|
|
\Large \bfseries #1\par\nobreak
|
|
\vskip 40\p@
|
|
}}
|
|
|
|
\renewcommand\section{\@startsection{section}{1}{\z@}%
|
|
{-18\p@ \@plus -4\p@ \@minus -4\p@}%
|
|
{12\p@ \@plus 4\p@ \@minus 4\p@}%
|
|
{\normalfont\large\bfseries\boldmath
|
|
\rightskip=\z@ \@plus 8em\pretolerance=10000 }}
|
|
\renewcommand\subsection{\@startsection{subsection}{2}{\z@}%
|
|
{-18\p@ \@plus -4\p@ \@minus -4\p@}%
|
|
{8\p@ \@plus 4\p@ \@minus 4\p@}%
|
|
{\normalfont\normalsize\bfseries\boldmath
|
|
\rightskip=\z@ \@plus 8em\pretolerance=10000 }}
|
|
\renewcommand\subsubsection{\@startsection{subsubsection}{3}{\z@}%
|
|
{-18\p@ \@plus -4\p@ \@minus -4\p@}%
|
|
{-0.5em \@plus -0.22em \@minus -0.1em}%
|
|
{\normalfont\normalsize\bfseries\boldmath}}
|
|
\renewcommand\paragraph{\@startsection{paragraph}{4}{\z@}%
|
|
{-12\p@ \@plus -4\p@ \@minus -4\p@}%
|
|
{-0.5em \@plus -0.22em \@minus -0.1em}%
|
|
{\normalfont\normalsize\itshape}}
|
|
\renewcommand\subparagraph[1]{\typeout{LLNCS warning: You should not use
|
|
\string\subparagraph\space with this class}\vskip0.5cm
|
|
You should not use \verb|\subparagraph| with this class.\vskip0.5cm}
|
|
|
|
\DeclareMathSymbol{\Gamma}{\mathalpha}{letters}{"00}
|
|
\DeclareMathSymbol{\Delta}{\mathalpha}{letters}{"01}
|
|
\DeclareMathSymbol{\Theta}{\mathalpha}{letters}{"02}
|
|
\DeclareMathSymbol{\Lambda}{\mathalpha}{letters}{"03}
|
|
\DeclareMathSymbol{\Xi}{\mathalpha}{letters}{"04}
|
|
\DeclareMathSymbol{\Pi}{\mathalpha}{letters}{"05}
|
|
\DeclareMathSymbol{\Sigma}{\mathalpha}{letters}{"06}
|
|
\DeclareMathSymbol{\Upsilon}{\mathalpha}{letters}{"07}
|
|
\DeclareMathSymbol{\Phi}{\mathalpha}{letters}{"08}
|
|
\DeclareMathSymbol{\Psi}{\mathalpha}{letters}{"09}
|
|
\DeclareMathSymbol{\Omega}{\mathalpha}{letters}{"0A}
|
|
|
|
\let\footnotesize\small
|
|
|
|
\if@custvec
|
|
\def\vec#1{\mathchoice{\mbox{\boldmath$\displaystyle#1$}}
|
|
{\mbox{\boldmath$\textstyle#1$}}
|
|
{\mbox{\boldmath$\scriptstyle#1$}}
|
|
{\mbox{\boldmath$\scriptscriptstyle#1$}}}
|
|
\fi
|
|
|
|
\def\squareforqed{\hbox{\rlap{$\sqcap$}$\sqcup$}}
|
|
\def\qed{\ifmmode\squareforqed\else{\unskip\nobreak\hfil
|
|
\penalty50\hskip1em\null\nobreak\hfil\squareforqed
|
|
\parfillskip=0pt\finalhyphendemerits=0\endgraf}\fi}
|
|
|
|
\def\getsto{\mathrel{\mathchoice {\vcenter{\offinterlineskip
|
|
\halign{\hfil
|
|
$\displaystyle##$\hfil\cr\gets\cr\to\cr}}}
|
|
{\vcenter{\offinterlineskip\halign{\hfil$\textstyle##$\hfil\cr\gets
|
|
\cr\to\cr}}}
|
|
{\vcenter{\offinterlineskip\halign{\hfil$\scriptstyle##$\hfil\cr\gets
|
|
\cr\to\cr}}}
|
|
{\vcenter{\offinterlineskip\halign{\hfil$\scriptscriptstyle##$\hfil\cr
|
|
\gets\cr\to\cr}}}}}
|
|
\def\lid{\mathrel{\mathchoice {\vcenter{\offinterlineskip\halign{\hfil
|
|
$\displaystyle##$\hfil\cr<\cr\noalign{\vskip1.2pt}=\cr}}}
|
|
{\vcenter{\offinterlineskip\halign{\hfil$\textstyle##$\hfil\cr<\cr
|
|
\noalign{\vskip1.2pt}=\cr}}}
|
|
{\vcenter{\offinterlineskip\halign{\hfil$\scriptstyle##$\hfil\cr<\cr
|
|
\noalign{\vskip1pt}=\cr}}}
|
|
{\vcenter{\offinterlineskip\halign{\hfil$\scriptscriptstyle##$\hfil\cr
|
|
<\cr
|
|
\noalign{\vskip0.9pt}=\cr}}}}}
|
|
\def\gid{\mathrel{\mathchoice {\vcenter{\offinterlineskip\halign{\hfil
|
|
$\displaystyle##$\hfil\cr>\cr\noalign{\vskip1.2pt}=\cr}}}
|
|
{\vcenter{\offinterlineskip\halign{\hfil$\textstyle##$\hfil\cr>\cr
|
|
\noalign{\vskip1.2pt}=\cr}}}
|
|
{\vcenter{\offinterlineskip\halign{\hfil$\scriptstyle##$\hfil\cr>\cr
|
|
\noalign{\vskip1pt}=\cr}}}
|
|
{\vcenter{\offinterlineskip\halign{\hfil$\scriptscriptstyle##$\hfil\cr
|
|
>\cr
|
|
\noalign{\vskip0.9pt}=\cr}}}}}
|
|
\def\grole{\mathrel{\mathchoice {\vcenter{\offinterlineskip
|
|
\halign{\hfil
|
|
$\displaystyle##$\hfil\cr>\cr\noalign{\vskip-1pt}<\cr}}}
|
|
{\vcenter{\offinterlineskip\halign{\hfil$\textstyle##$\hfil\cr
|
|
>\cr\noalign{\vskip-1pt}<\cr}}}
|
|
{\vcenter{\offinterlineskip\halign{\hfil$\scriptstyle##$\hfil\cr
|
|
>\cr\noalign{\vskip-0.8pt}<\cr}}}
|
|
{\vcenter{\offinterlineskip\halign{\hfil$\scriptscriptstyle##$\hfil\cr
|
|
>\cr\noalign{\vskip-0.3pt}<\cr}}}}}
|
|
\def\bbbr{{\rm I\!R}} %reelle Zahlen
|
|
\def\bbbm{{\rm I\!M}}
|
|
\def\bbbn{{\rm I\!N}} %natuerliche Zahlen
|
|
\def\bbbf{{\rm I\!F}}
|
|
\def\bbbh{{\rm I\!H}}
|
|
\def\bbbk{{\rm I\!K}}
|
|
\def\bbbp{{\rm I\!P}}
|
|
\def\bbbone{{\mathchoice {\rm 1\mskip-4mu l} {\rm 1\mskip-4mu l}
|
|
{\rm 1\mskip-4.5mu l} {\rm 1\mskip-5mu l}}}
|
|
\def\bbbc{{\mathchoice {\setbox0=\hbox{$\displaystyle\rm C$}\hbox{\hbox
|
|
to0pt{\kern0.4\wd0\vrule height0.9\ht0\hss}\box0}}
|
|
{\setbox0=\hbox{$\textstyle\rm C$}\hbox{\hbox
|
|
to0pt{\kern0.4\wd0\vrule height0.9\ht0\hss}\box0}}
|
|
{\setbox0=\hbox{$\scriptstyle\rm C$}\hbox{\hbox
|
|
to0pt{\kern0.4\wd0\vrule height0.9\ht0\hss}\box0}}
|
|
{\setbox0=\hbox{$\scriptscriptstyle\rm C$}\hbox{\hbox
|
|
to0pt{\kern0.4\wd0\vrule height0.9\ht0\hss}\box0}}}}
|
|
\def\bbbq{{\mathchoice {\setbox0=\hbox{$\displaystyle\rm
|
|
Q$}\hbox{\raise
|
|
0.15\ht0\hbox to0pt{\kern0.4\wd0\vrule height0.8\ht0\hss}\box0}}
|
|
{\setbox0=\hbox{$\textstyle\rm Q$}\hbox{\raise
|
|
0.15\ht0\hbox to0pt{\kern0.4\wd0\vrule height0.8\ht0\hss}\box0}}
|
|
{\setbox0=\hbox{$\scriptstyle\rm Q$}\hbox{\raise
|
|
0.15\ht0\hbox to0pt{\kern0.4\wd0\vrule height0.7\ht0\hss}\box0}}
|
|
{\setbox0=\hbox{$\scriptscriptstyle\rm Q$}\hbox{\raise
|
|
0.15\ht0\hbox to0pt{\kern0.4\wd0\vrule height0.7\ht0\hss}\box0}}}}
|
|
\def\bbbt{{\mathchoice {\setbox0=\hbox{$\displaystyle\rm
|
|
T$}\hbox{\hbox to0pt{\kern0.3\wd0\vrule height0.9\ht0\hss}\box0}}
|
|
{\setbox0=\hbox{$\textstyle\rm T$}\hbox{\hbox
|
|
to0pt{\kern0.3\wd0\vrule height0.9\ht0\hss}\box0}}
|
|
{\setbox0=\hbox{$\scriptstyle\rm T$}\hbox{\hbox
|
|
to0pt{\kern0.3\wd0\vrule height0.9\ht0\hss}\box0}}
|
|
{\setbox0=\hbox{$\scriptscriptstyle\rm T$}\hbox{\hbox
|
|
to0pt{\kern0.3\wd0\vrule height0.9\ht0\hss}\box0}}}}
|
|
\def\bbbs{{\mathchoice
|
|
{\setbox0=\hbox{$\displaystyle \rm S$}\hbox{\raise0.5\ht0\hbox
|
|
to0pt{\kern0.35\wd0\vrule height0.45\ht0\hss}\hbox
|
|
to0pt{\kern0.55\wd0\vrule height0.5\ht0\hss}\box0}}
|
|
{\setbox0=\hbox{$\textstyle \rm S$}\hbox{\raise0.5\ht0\hbox
|
|
to0pt{\kern0.35\wd0\vrule height0.45\ht0\hss}\hbox
|
|
to0pt{\kern0.55\wd0\vrule height0.5\ht0\hss}\box0}}
|
|
{\setbox0=\hbox{$\scriptstyle \rm S$}\hbox{\raise0.5\ht0\hbox
|
|
to0pt{\kern0.35\wd0\vrule height0.45\ht0\hss}\raise0.05\ht0\hbox
|
|
to0pt{\kern0.5\wd0\vrule height0.45\ht0\hss}\box0}}
|
|
{\setbox0=\hbox{$\scriptscriptstyle\rm S$}\hbox{\raise0.5\ht0\hbox
|
|
to0pt{\kern0.4\wd0\vrule height0.45\ht0\hss}\raise0.05\ht0\hbox
|
|
to0pt{\kern0.55\wd0\vrule height0.45\ht0\hss}\box0}}}}
|
|
\def\bbbz{{\mathchoice {\hbox{$\mathsf\textstyle Z\kern-0.4em Z$}}
|
|
{\hbox{$\mathsf\textstyle Z\kern-0.4em Z$}}
|
|
{\hbox{$\mathsf\scriptstyle Z\kern-0.3em Z$}}
|
|
{\hbox{$\mathsf\scriptscriptstyle Z\kern-0.2em Z$}}}}
|
|
|
|
\let\ts\,
|
|
|
|
\setlength\leftmargini {17\p@}
|
|
\setlength\leftmargin {\leftmargini}
|
|
\setlength\leftmarginii {\leftmargini}
|
|
\setlength\leftmarginiii {\leftmargini}
|
|
\setlength\leftmarginiv {\leftmargini}
|
|
\setlength \labelsep {.5em}
|
|
\setlength \labelwidth{\leftmargini}
|
|
\addtolength\labelwidth{-\labelsep}
|
|
|
|
\def\@listI{\leftmargin\leftmargini
|
|
\parsep 0\p@ \@plus1\p@ \@minus\p@
|
|
\topsep 8\p@ \@plus2\p@ \@minus4\p@
|
|
\itemsep0\p@}
|
|
\let\@listi\@listI
|
|
\@listi
|
|
\def\@listii {\leftmargin\leftmarginii
|
|
\labelwidth\leftmarginii
|
|
\advance\labelwidth-\labelsep
|
|
\topsep 0\p@ \@plus2\p@ \@minus\p@}
|
|
\def\@listiii{\leftmargin\leftmarginiii
|
|
\labelwidth\leftmarginiii
|
|
\advance\labelwidth-\labelsep
|
|
\topsep 0\p@ \@plus\p@\@minus\p@
|
|
\parsep \z@
|
|
\partopsep \p@ \@plus\z@ \@minus\p@}
|
|
|
|
\renewcommand\labelitemi{\normalfont\bfseries --}
|
|
\renewcommand\labelitemii{$\m@th\bullet$}
|
|
|
|
\setlength\arraycolsep{1.4\p@}
|
|
\setlength\tabcolsep{1.4\p@}
|
|
|
|
\def\tableofcontents{\chapter*{\contentsname\@mkboth{{\contentsname}}%
|
|
{{\contentsname}}}
|
|
\def\authcount##1{\setcounter{auco}{##1}\setcounter{@auth}{1}}
|
|
\def\lastand{\ifnum\value{auco}=2\relax
|
|
\unskip{} \andname\
|
|
\else
|
|
\unskip \lastandname\
|
|
\fi}%
|
|
\def\and{\stepcounter{@auth}\relax
|
|
\ifnum\value{@auth}=\value{auco}%
|
|
\lastand
|
|
\else
|
|
\unskip,
|
|
\fi}%
|
|
\@starttoc{toc}\if@restonecol\twocolumn\fi}
|
|
|
|
\def\l@part#1#2{\addpenalty{\@secpenalty}%
|
|
\addvspace{2em plus\p@}% % space above part line
|
|
\begingroup
|
|
\parindent \z@
|
|
\rightskip \z@ plus 5em
|
|
\hrule\vskip5pt
|
|
\large % same size as for a contribution heading
|
|
\bfseries\boldmath % set line in boldface
|
|
\leavevmode % TeX command to enter horizontal mode.
|
|
#1\par
|
|
\vskip5pt
|
|
\hrule
|
|
\vskip1pt
|
|
\nobreak % Never break after part entry
|
|
\endgroup}
|
|
|
|
\def\@dotsep{2}
|
|
|
|
\def\hyperhrefextend{\ifx\hyper@anchor\@undefined\else
|
|
{chapter.\thechapter}\fi}
|
|
|
|
\def\addnumcontentsmark#1#2#3{%
|
|
\addtocontents{#1}{\protect\contentsline{#2}{\protect\numberline
|
|
{\thechapter}#3}{\thepage}\hyperhrefextend}}
|
|
\def\addcontentsmark#1#2#3{%
|
|
\addtocontents{#1}{\protect\contentsline{#2}{#3}{\thepage}\hyperhrefextend}}
|
|
\def\addcontentsmarkwop#1#2#3{%
|
|
\addtocontents{#1}{\protect\contentsline{#2}{#3}{0}\hyperhrefextend}}
|
|
|
|
\def\@adcmk[#1]{\ifcase #1 \or
|
|
\def\@gtempa{\addnumcontentsmark}%
|
|
\or \def\@gtempa{\addcontentsmark}%
|
|
\or \def\@gtempa{\addcontentsmarkwop}%
|
|
\fi\@gtempa{toc}{chapter}}
|
|
\def\addtocmark{\@ifnextchar[{\@adcmk}{\@adcmk[3]}}
|
|
|
|
\def\l@chapter#1#2{\addpenalty{-\@highpenalty}
|
|
\vskip 1.0em plus 1pt \@tempdima 1.5em \begingroup
|
|
\parindent \z@ \rightskip \@tocrmarg
|
|
\advance\rightskip by 0pt plus 2cm
|
|
\parfillskip -\rightskip \pretolerance=10000
|
|
\leavevmode \advance\leftskip\@tempdima \hskip -\leftskip
|
|
{\large\bfseries\boldmath#1}\ifx0#2\hfil\null
|
|
\else
|
|
\nobreak
|
|
\leaders\hbox{$\m@th \mkern \@dotsep mu.\mkern
|
|
\@dotsep mu$}\hfill
|
|
\nobreak\hbox to\@pnumwidth{\hss #2}%
|
|
\fi\par
|
|
\penalty\@highpenalty \endgroup}
|
|
|
|
\def\l@title#1#2{\addpenalty{-\@highpenalty}
|
|
\addvspace{8pt plus 1pt}
|
|
\@tempdima \z@
|
|
\begingroup
|
|
\parindent \z@ \rightskip \@tocrmarg
|
|
\advance\rightskip by 0pt plus 2cm
|
|
\parfillskip -\rightskip \pretolerance=10000
|
|
\leavevmode \advance\leftskip\@tempdima \hskip -\leftskip
|
|
#1\nobreak
|
|
\leaders\hbox{$\m@th \mkern \@dotsep mu.\mkern
|
|
\@dotsep mu$}\hfill
|
|
\nobreak\hbox to\@pnumwidth{\hss #2}\par
|
|
\penalty\@highpenalty \endgroup}
|
|
|
|
\def\l@author#1#2{\addpenalty{\@highpenalty}
|
|
\@tempdima=15\p@ %\z@
|
|
\begingroup
|
|
\parindent \z@ \rightskip \@tocrmarg
|
|
\advance\rightskip by 0pt plus 2cm
|
|
\pretolerance=10000
|
|
\leavevmode \advance\leftskip\@tempdima %\hskip -\leftskip
|
|
\textit{#1}\par
|
|
\penalty\@highpenalty \endgroup}
|
|
|
|
\setcounter{tocdepth}{0}
|
|
\newdimen\tocchpnum
|
|
\newdimen\tocsecnum
|
|
\newdimen\tocsectotal
|
|
\newdimen\tocsubsecnum
|
|
\newdimen\tocsubsectotal
|
|
\newdimen\tocsubsubsecnum
|
|
\newdimen\tocsubsubsectotal
|
|
\newdimen\tocparanum
|
|
\newdimen\tocparatotal
|
|
\newdimen\tocsubparanum
|
|
\tocchpnum=\z@ % no chapter numbers
|
|
\tocsecnum=15\p@ % section 88. plus 2.222pt
|
|
\tocsubsecnum=23\p@ % subsection 88.8 plus 2.222pt
|
|
\tocsubsubsecnum=27\p@ % subsubsection 88.8.8 plus 1.444pt
|
|
\tocparanum=35\p@ % paragraph 88.8.8.8 plus 1.666pt
|
|
\tocsubparanum=43\p@ % subparagraph 88.8.8.8.8 plus 1.888pt
|
|
\def\calctocindent{%
|
|
\tocsectotal=\tocchpnum
|
|
\advance\tocsectotal by\tocsecnum
|
|
\tocsubsectotal=\tocsectotal
|
|
\advance\tocsubsectotal by\tocsubsecnum
|
|
\tocsubsubsectotal=\tocsubsectotal
|
|
\advance\tocsubsubsectotal by\tocsubsubsecnum
|
|
\tocparatotal=\tocsubsubsectotal
|
|
\advance\tocparatotal by\tocparanum}
|
|
\calctocindent
|
|
|
|
\def\l@section{\@dottedtocline{1}{\tocchpnum}{\tocsecnum}}
|
|
\def\l@subsection{\@dottedtocline{2}{\tocsectotal}{\tocsubsecnum}}
|
|
\def\l@subsubsection{\@dottedtocline{3}{\tocsubsectotal}{\tocsubsubsecnum}}
|
|
\def\l@paragraph{\@dottedtocline{4}{\tocsubsubsectotal}{\tocparanum}}
|
|
\def\l@subparagraph{\@dottedtocline{5}{\tocparatotal}{\tocsubparanum}}
|
|
|
|
\def\listoffigures{\@restonecolfalse\if@twocolumn\@restonecoltrue\onecolumn
|
|
\fi\section*{\listfigurename\@mkboth{{\listfigurename}}{{\listfigurename}}}
|
|
\@starttoc{lof}\if@restonecol\twocolumn\fi}
|
|
\def\l@figure{\@dottedtocline{1}{0em}{1.5em}}
|
|
|
|
\def\listoftables{\@restonecolfalse\if@twocolumn\@restonecoltrue\onecolumn
|
|
\fi\section*{\listtablename\@mkboth{{\listtablename}}{{\listtablename}}}
|
|
\@starttoc{lot}\if@restonecol\twocolumn\fi}
|
|
\let\l@table\l@figure
|
|
|
|
\renewcommand\listoffigures{%
|
|
\section*{\listfigurename
|
|
\@mkboth{\listfigurename}{\listfigurename}}%
|
|
\@starttoc{lof}%
|
|
}
|
|
|
|
\renewcommand\listoftables{%
|
|
\section*{\listtablename
|
|
\@mkboth{\listtablename}{\listtablename}}%
|
|
\@starttoc{lot}%
|
|
}
|
|
|
|
\ifx\oribibl\undefined
|
|
\ifx\citeauthoryear\undefined
|
|
\renewenvironment{thebibliography}[1]
|
|
{\section*{\refname}
|
|
\def\@biblabel##1{##1.}
|
|
\small
|
|
\list{\@biblabel{\@arabic\c@enumiv}}%
|
|
{\settowidth\labelwidth{\@biblabel{#1}}%
|
|
\leftmargin\labelwidth
|
|
\advance\leftmargin\labelsep
|
|
\if@openbib
|
|
\advance\leftmargin\bibindent
|
|
\itemindent -\bibindent
|
|
\listparindent \itemindent
|
|
\parsep \z@
|
|
\fi
|
|
\usecounter{enumiv}%
|
|
\let\p@enumiv\@empty
|
|
\renewcommand\theenumiv{\@arabic\c@enumiv}}%
|
|
\if@openbib
|
|
\renewcommand\newblock{\par}%
|
|
\else
|
|
\renewcommand\newblock{\hskip .11em \@plus.33em \@minus.07em}%
|
|
\fi
|
|
\sloppy\clubpenalty4000\widowpenalty4000%
|
|
\sfcode`\.=\@m}
|
|
{\def\@noitemerr
|
|
{\@latex@warning{Empty `thebibliography' environment}}%
|
|
\endlist}
|
|
\def\@lbibitem[#1]#2{\item[{[#1]}\hfill]\if@filesw
|
|
{\let\protect\noexpand\immediate
|
|
\write\@auxout{\string\bibcite{#2}{#1}}}\fi\ignorespaces}
|
|
\newcount\@tempcntc
|
|
\def\@citex[#1]#2{\if@filesw\immediate\write\@auxout{\string\citation{#2}}\fi
|
|
\@tempcnta\z@\@tempcntb\m@ne\def\@citea{}\@cite{\@for\@citeb:=#2\do
|
|
{\@ifundefined
|
|
{b@\@citeb}{\@citeo\@tempcntb\m@ne\@citea\def\@citea{,}{\bfseries
|
|
?}\@warning
|
|
{Citation `\@citeb' on page \thepage \space undefined}}%
|
|
{\setbox\z@\hbox{\global\@tempcntc0\csname b@\@citeb\endcsname\relax}%
|
|
\ifnum\@tempcntc=\z@ \@citeo\@tempcntb\m@ne
|
|
\@citea\def\@citea{,}\hbox{\csname b@\@citeb\endcsname}%
|
|
\else
|
|
\advance\@tempcntb\@ne
|
|
\ifnum\@tempcntb=\@tempcntc
|
|
\else\advance\@tempcntb\m@ne\@citeo
|
|
\@tempcnta\@tempcntc\@tempcntb\@tempcntc\fi\fi}}\@citeo}{#1}}
|
|
\def\@citeo{\ifnum\@tempcnta>\@tempcntb\else
|
|
\@citea\def\@citea{,\,\hskip\z@skip}%
|
|
\ifnum\@tempcnta=\@tempcntb\the\@tempcnta\else
|
|
{\advance\@tempcnta\@ne\ifnum\@tempcnta=\@tempcntb \else
|
|
\def\@citea{--}\fi
|
|
\advance\@tempcnta\m@ne\the\@tempcnta\@citea\the\@tempcntb}\fi\fi}
|
|
\else
|
|
\renewenvironment{thebibliography}[1]
|
|
{\section*{\refname}
|
|
\small
|
|
\list{}%
|
|
{\settowidth\labelwidth{}%
|
|
\leftmargin\parindent
|
|
\itemindent=-\parindent
|
|
\labelsep=\z@
|
|
\if@openbib
|
|
\advance\leftmargin\bibindent
|
|
\itemindent -\bibindent
|
|
\listparindent \itemindent
|
|
\parsep \z@
|
|
\fi
|
|
\usecounter{enumiv}%
|
|
\let\p@enumiv\@empty
|
|
\renewcommand\theenumiv{}}%
|
|
\if@openbib
|
|
\renewcommand\newblock{\par}%
|
|
\else
|
|
\renewcommand\newblock{\hskip .11em \@plus.33em \@minus.07em}%
|
|
\fi
|
|
\sloppy\clubpenalty4000\widowpenalty4000%
|
|
\sfcode`\.=\@m}
|
|
{\def\@noitemerr
|
|
{\@latex@warning{Empty `thebibliography' environment}}%
|
|
\endlist}
|
|
\def\@cite#1{#1}%
|
|
\def\@lbibitem[#1]#2{\item[]\if@filesw
|
|
{\def\protect##1{\string ##1\space}\immediate
|
|
\write\@auxout{\string\bibcite{#2}{#1}}}\fi\ignorespaces}
|
|
\fi
|
|
\else
|
|
\@cons\@openbib@code{\noexpand\small}
|
|
\fi
|
|
|
|
\def\idxquad{\hskip 10\p@}% space that divides entry from number
|
|
|
|
\def\@idxitem{\par\hangindent 10\p@}
|
|
|
|
\def\subitem{\par\setbox0=\hbox{--\enspace}% second order
|
|
\noindent\hangindent\wd0\box0}% index entry
|
|
|
|
\def\subsubitem{\par\setbox0=\hbox{--\,--\enspace}% third
|
|
\noindent\hangindent\wd0\box0}% order index entry
|
|
|
|
\def\indexspace{\par \vskip 10\p@ plus5\p@ minus3\p@\relax}
|
|
|
|
\renewenvironment{theindex}
|
|
{\@mkboth{\indexname}{\indexname}%
|
|
\thispagestyle{empty}\parindent\z@
|
|
\parskip\z@ \@plus .3\p@\relax
|
|
\let\item\par
|
|
\def\,{\relax\ifmmode\mskip\thinmuskip
|
|
\else\hskip0.2em\ignorespaces\fi}%
|
|
\normalfont\small
|
|
\begin{multicols}{2}[\@makeschapterhead{\indexname}]%
|
|
}
|
|
{\end{multicols}}
|
|
|
|
\renewcommand\footnoterule{%
|
|
\kern-3\p@
|
|
\hrule\@width 2truecm
|
|
\kern2.6\p@}
|
|
\newdimen\fnindent
|
|
\fnindent1em
|
|
\long\def\@makefntext#1{%
|
|
\parindent \fnindent%
|
|
\leftskip \fnindent%
|
|
\noindent
|
|
\llap{\hb@xt@1em{\hss\@makefnmark\ }}\ignorespaces#1}
|
|
|
|
\long\def\@makecaption#1#2{%
|
|
\vskip\abovecaptionskip
|
|
\sbox\@tempboxa{{\bfseries #1.} #2}%
|
|
\ifdim \wd\@tempboxa >\hsize
|
|
{\bfseries #1.} #2\par
|
|
\else
|
|
\global \@minipagefalse
|
|
\hb@xt@\hsize{\hfil\box\@tempboxa\hfil}%
|
|
\fi
|
|
\vskip\belowcaptionskip}
|
|
|
|
\def\fps@figure{htbp}
|
|
\def\fnum@figure{\figurename\thinspace\thefigure}
|
|
\def \@floatboxreset {%
|
|
\reset@font
|
|
\small
|
|
\@setnobreak
|
|
\@setminipage
|
|
}
|
|
\def\fps@table{htbp}
|
|
\def\fnum@table{\tablename~\thetable}
|
|
\renewenvironment{table}
|
|
{\setlength\abovecaptionskip{0\p@}%
|
|
\setlength\belowcaptionskip{10\p@}%
|
|
\@float{table}}
|
|
{\end@float}
|
|
\renewenvironment{table*}
|
|
{\setlength\abovecaptionskip{0\p@}%
|
|
\setlength\belowcaptionskip{10\p@}%
|
|
\@dblfloat{table}}
|
|
{\end@dblfloat}
|
|
|
|
\long\def\@caption#1[#2]#3{\par\addcontentsline{\csname
|
|
ext@#1\endcsname}{#1}{\protect\numberline{\csname
|
|
the#1\endcsname}{\ignorespaces #2}}\begingroup
|
|
\@parboxrestore
|
|
\@makecaption{\csname fnum@#1\endcsname}{\ignorespaces #3}\par
|
|
\endgroup}
|
|
|
|
% LaTeX does not provide a command to enter the authors institute
|
|
% addresses. The \institute command is defined here.
|
|
|
|
\newcounter{@inst}
|
|
\newcounter{@auth}
|
|
\newcounter{auco}
|
|
\newdimen\instindent
|
|
\newbox\authrun
|
|
\newtoks\authorrunning
|
|
\newtoks\tocauthor
|
|
\newbox\titrun
|
|
\newtoks\titlerunning
|
|
\newtoks\toctitle
|
|
|
|
\def\clearheadinfo{\gdef\@author{No Author Given}%
|
|
\gdef\@title{No Title Given}%
|
|
\gdef\@subtitle{}%
|
|
\gdef\@institute{No Institute Given}%
|
|
\gdef\@thanks{}%
|
|
\global\titlerunning={}\global\authorrunning={}%
|
|
\global\toctitle={}\global\tocauthor={}}
|
|
|
|
\def\institute#1{\gdef\@institute{#1}}
|
|
|
|
\def\institutename{\par
|
|
\begingroup
|
|
\parskip=\z@
|
|
\parindent=\z@
|
|
\setcounter{@inst}{1}%
|
|
\def\and{\par\stepcounter{@inst}%
|
|
\noindent$^{\the@inst}$\enspace\ignorespaces}%
|
|
\setbox0=\vbox{\def\thanks##1{}\@institute}%
|
|
\ifnum\c@@inst=1\relax
|
|
\gdef\fnnstart{0}%
|
|
\else
|
|
\xdef\fnnstart{\c@@inst}%
|
|
\setcounter{@inst}{1}%
|
|
\noindent$^{\the@inst}$\enspace
|
|
\fi
|
|
\ignorespaces
|
|
\@institute\par
|
|
\endgroup}
|
|
|
|
\def\@fnsymbol#1{\ensuremath{\ifcase#1\or\star\or{\star\star}\or
|
|
{\star\star\star}\or \dagger\or \ddagger\or
|
|
\mathchar "278\or \mathchar "27B\or \|\or **\or \dagger\dagger
|
|
\or \ddagger\ddagger \else\@ctrerr\fi}}
|
|
|
|
\def\inst#1{\unskip$^{#1}$}
|
|
\def\fnmsep{\unskip$^,$}
|
|
\def\email#1{{\tt#1}}
|
|
\AtBeginDocument{\@ifundefined{url}{\def\url#1{#1}}{}%
|
|
\@ifpackageloaded{babel}{%
|
|
\@ifundefined{extrasenglish}{}{\addto\extrasenglish{\switcht@albion}}%
|
|
\@ifundefined{extrasfrenchb}{}{\addto\extrasfrenchb{\switcht@francais}}%
|
|
\@ifundefined{extrasgerman}{}{\addto\extrasgerman{\switcht@deutsch}}%
|
|
}{\switcht@@therlang}%
|
|
}
|
|
\def\homedir{\~{ }}
|
|
|
|
\def\subtitle#1{\gdef\@subtitle{#1}}
|
|
\clearheadinfo
|
|
%
|
|
\renewcommand\maketitle{\newpage
|
|
\refstepcounter{chapter}%
|
|
\stepcounter{section}%
|
|
\setcounter{section}{0}%
|
|
\setcounter{subsection}{0}%
|
|
\setcounter{figure}{0}
|
|
\setcounter{table}{0}
|
|
\setcounter{equation}{0}
|
|
\setcounter{footnote}{0}%
|
|
\begingroup
|
|
\parindent=\z@
|
|
\renewcommand\thefootnote{\@fnsymbol\c@footnote}%
|
|
\if@twocolumn
|
|
\ifnum \col@number=\@ne
|
|
\@maketitle
|
|
\else
|
|
\twocolumn[\@maketitle]%
|
|
\fi
|
|
\else
|
|
\newpage
|
|
\global\@topnum\z@ % Prevents figures from going at top of page.
|
|
\@maketitle
|
|
\fi
|
|
\thispagestyle{empty}\@thanks
|
|
%
|
|
\def\\{\unskip\ \ignorespaces}\def\inst##1{\unskip{}}%
|
|
\def\thanks##1{\unskip{}}\def\fnmsep{\unskip}%
|
|
\instindent=\hsize
|
|
\advance\instindent by-\headlineindent
|
|
\if!\the\toctitle!\addcontentsline{toc}{title}{\@title}\else
|
|
\addcontentsline{toc}{title}{\the\toctitle}\fi
|
|
\if@runhead
|
|
\if!\the\titlerunning!\else
|
|
\edef\@title{\the\titlerunning}%
|
|
\fi
|
|
\global\setbox\titrun=\hbox{\small\rm\unboldmath\ignorespaces\@title}%
|
|
\ifdim\wd\titrun>\instindent
|
|
\typeout{Title too long for running head. Please supply}%
|
|
\typeout{a shorter form with \string\titlerunning\space prior to
|
|
\string\maketitle}%
|
|
\global\setbox\titrun=\hbox{\small\rm
|
|
Title Suppressed Due to Excessive Length}%
|
|
\fi
|
|
\xdef\@title{\copy\titrun}%
|
|
\fi
|
|
%
|
|
\if!\the\tocauthor!\relax
|
|
{\def\and{\noexpand\protect\noexpand\and}%
|
|
\protected@xdef\toc@uthor{\@author}}%
|
|
\else
|
|
\def\\{\noexpand\protect\noexpand\newline}%
|
|
\protected@xdef\scratch{\the\tocauthor}%
|
|
\protected@xdef\toc@uthor{\scratch}%
|
|
\fi
|
|
\addtocontents{toc}{\noexpand\protect\noexpand\authcount{\the\c@auco}}%
|
|
\addcontentsline{toc}{author}{\toc@uthor}%
|
|
\if@runhead
|
|
\if!\the\authorrunning!
|
|
\value{@inst}=\value{@auth}%
|
|
\setcounter{@auth}{1}%
|
|
\else
|
|
\edef\@author{\the\authorrunning}%
|
|
\fi
|
|
\global\setbox\authrun=\hbox{\small\unboldmath\@author\unskip}%
|
|
\ifdim\wd\authrun>\instindent
|
|
\typeout{Names of authors too long for running head. Please supply}%
|
|
\typeout{a shorter form with \string\authorrunning\space prior to
|
|
\string\maketitle}%
|
|
\global\setbox\authrun=\hbox{\small\rm
|
|
Authors Suppressed Due to Excessive Length}%
|
|
\fi
|
|
\xdef\@author{\copy\authrun}%
|
|
\markboth{\@author}{\@title}%
|
|
\fi
|
|
\endgroup
|
|
\setcounter{footnote}{\fnnstart}%
|
|
\clearheadinfo}
|
|
%
|
|
\def\@maketitle{\newpage
|
|
\markboth{}{}%
|
|
\def\lastand{\ifnum\value{@inst}=2\relax
|
|
\unskip{} \andname\
|
|
\else
|
|
\unskip \lastandname\
|
|
\fi}%
|
|
\def\and{\stepcounter{@auth}\relax
|
|
\ifnum\value{@auth}=\value{@inst}%
|
|
\lastand
|
|
\else
|
|
\unskip,
|
|
\fi}%
|
|
\begin{center}%
|
|
\let\newline\\
|
|
{\Large \bfseries\boldmath
|
|
\pretolerance=10000
|
|
\@title \par}\vskip .8cm
|
|
\if!\@subtitle!\else {\large \bfseries\boldmath
|
|
\vskip -.65cm
|
|
\pretolerance=10000
|
|
\@subtitle \par}\vskip .8cm\fi
|
|
\setbox0=\vbox{\setcounter{@auth}{1}\def\and{\stepcounter{@auth}}%
|
|
\def\thanks##1{}\@author}%
|
|
\global\value{@inst}=\value{@auth}%
|
|
\global\value{auco}=\value{@auth}%
|
|
\setcounter{@auth}{1}%
|
|
{\lineskip .5em
|
|
\noindent\ignorespaces
|
|
\@author\vskip.35cm}
|
|
{\small\institutename}
|
|
\end{center}%
|
|
}
|
|
|
|
% definition of the "\spnewtheorem" command.
|
|
%
|
|
% Usage:
|
|
%
|
|
% \spnewtheorem{env_nam}{caption}[within]{cap_font}{body_font}
|
|
% or \spnewtheorem{env_nam}[numbered_like]{caption}{cap_font}{body_font}
|
|
% or \spnewtheorem*{env_nam}{caption}{cap_font}{body_font}
|
|
%
|
|
% New is "cap_font" and "body_font". It stands for
|
|
% fontdefinition of the caption and the text itself.
|
|
%
|
|
% "\spnewtheorem*" gives a theorem without number.
|
|
%
|
|
% A defined spnewthoerem environment is used as described
|
|
% by Lamport.
|
|
%
|
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
|
|
|
\def\@thmcountersep{}
|
|
\def\@thmcounterend{.}
|
|
|
|
\def\spnewtheorem{\@ifstar{\@sthm}{\@Sthm}}
|
|
|
|
% definition of \spnewtheorem with number
|
|
|
|
\def\@spnthm#1#2{%
|
|
\@ifnextchar[{\@spxnthm{#1}{#2}}{\@spynthm{#1}{#2}}}
|
|
\def\@Sthm#1{\@ifnextchar[{\@spothm{#1}}{\@spnthm{#1}}}
|
|
|
|
\def\@spxnthm#1#2[#3]#4#5{\expandafter\@ifdefinable\csname #1\endcsname
|
|
{\@definecounter{#1}\@addtoreset{#1}{#3}%
|
|
\expandafter\xdef\csname the#1\endcsname{\expandafter\noexpand
|
|
\csname the#3\endcsname \noexpand\@thmcountersep \@thmcounter{#1}}%
|
|
\expandafter\xdef\csname #1name\endcsname{#2}%
|
|
\global\@namedef{#1}{\@spthm{#1}{\csname #1name\endcsname}{#4}{#5}}%
|
|
\global\@namedef{end#1}{\@endtheorem}}}
|
|
|
|
\def\@spynthm#1#2#3#4{\expandafter\@ifdefinable\csname #1\endcsname
|
|
{\@definecounter{#1}%
|
|
\expandafter\xdef\csname the#1\endcsname{\@thmcounter{#1}}%
|
|
\expandafter\xdef\csname #1name\endcsname{#2}%
|
|
\global\@namedef{#1}{\@spthm{#1}{\csname #1name\endcsname}{#3}{#4}}%
|
|
\global\@namedef{end#1}{\@endtheorem}}}
|
|
|
|
\def\@spothm#1[#2]#3#4#5{%
|
|
\@ifundefined{c@#2}{\@latexerr{No theorem environment `#2' defined}\@eha}%
|
|
{\expandafter\@ifdefinable\csname #1\endcsname
|
|
{\global\@namedef{the#1}{\@nameuse{the#2}}%
|
|
\expandafter\xdef\csname #1name\endcsname{#3}%
|
|
\global\@namedef{#1}{\@spthm{#2}{\csname #1name\endcsname}{#4}{#5}}%
|
|
\global\@namedef{end#1}{\@endtheorem}}}}
|
|
|
|
\def\@spthm#1#2#3#4{\topsep 7\p@ \@plus2\p@ \@minus4\p@
|
|
\refstepcounter{#1}%
|
|
\@ifnextchar[{\@spythm{#1}{#2}{#3}{#4}}{\@spxthm{#1}{#2}{#3}{#4}}}
|
|
|
|
\def\@spxthm#1#2#3#4{\@spbegintheorem{#2}{\csname the#1\endcsname}{#3}{#4}%
|
|
\ignorespaces}
|
|
|
|
\def\@spythm#1#2#3#4[#5]{\@spopargbegintheorem{#2}{\csname
|
|
the#1\endcsname}{#5}{#3}{#4}\ignorespaces}
|
|
|
|
\def\@spbegintheorem#1#2#3#4{\trivlist
|
|
\item[\hskip\labelsep{#3#1\ #2\@thmcounterend}]#4}
|
|
|
|
\def\@spopargbegintheorem#1#2#3#4#5{\trivlist
|
|
\item[\hskip\labelsep{#4#1\ #2}]{#4(#3)\@thmcounterend\ }#5}
|
|
|
|
% definition of \spnewtheorem* without number
|
|
|
|
\def\@sthm#1#2{\@Ynthm{#1}{#2}}
|
|
|
|
\def\@Ynthm#1#2#3#4{\expandafter\@ifdefinable\csname #1\endcsname
|
|
{\global\@namedef{#1}{\@Thm{\csname #1name\endcsname}{#3}{#4}}%
|
|
\expandafter\xdef\csname #1name\endcsname{#2}%
|
|
\global\@namedef{end#1}{\@endtheorem}}}
|
|
|
|
\def\@Thm#1#2#3{\topsep 7\p@ \@plus2\p@ \@minus4\p@
|
|
\@ifnextchar[{\@Ythm{#1}{#2}{#3}}{\@Xthm{#1}{#2}{#3}}}
|
|
|
|
\def\@Xthm#1#2#3{\@Begintheorem{#1}{#2}{#3}\ignorespaces}
|
|
|
|
\def\@Ythm#1#2#3[#4]{\@Opargbegintheorem{#1}
|
|
{#4}{#2}{#3}\ignorespaces}
|
|
|
|
\def\@Begintheorem#1#2#3{#3\trivlist
|
|
\item[\hskip\labelsep{#2#1\@thmcounterend}]}
|
|
|
|
\def\@Opargbegintheorem#1#2#3#4{#4\trivlist
|
|
\item[\hskip\labelsep{#3#1}]{#3(#2)\@thmcounterend\ }}
|
|
|
|
\if@envcntsect
|
|
\def\@thmcountersep{.}
|
|
\spnewtheorem{theorem}{Theorem}[section]{\bfseries}{\itshape}
|
|
\else
|
|
\spnewtheorem{theorem}{Theorem}{\bfseries}{\itshape}
|
|
\if@envcntreset
|
|
\@addtoreset{theorem}{section}
|
|
\else
|
|
\@addtoreset{theorem}{chapter}
|
|
\fi
|
|
\fi
|
|
|
|
%definition of divers theorem environments
|
|
\spnewtheorem*{claim}{Claim}{\itshape}{\rmfamily}
|
|
\spnewtheorem*{proof}{Proof}{\itshape}{\rmfamily}
|
|
\if@envcntsame % alle Umgebungen wie Theorem.
|
|
\def\spn@wtheorem#1#2#3#4{\@spothm{#1}[theorem]{#2}{#3}{#4}}
|
|
\else % alle Umgebungen mit eigenem Zaehler
|
|
\if@envcntsect % mit section numeriert
|
|
\def\spn@wtheorem#1#2#3#4{\@spxnthm{#1}{#2}[section]{#3}{#4}}
|
|
\else % nicht mit section numeriert
|
|
\if@envcntreset
|
|
\def\spn@wtheorem#1#2#3#4{\@spynthm{#1}{#2}{#3}{#4}
|
|
\@addtoreset{#1}{section}}
|
|
\else
|
|
\def\spn@wtheorem#1#2#3#4{\@spynthm{#1}{#2}{#3}{#4}
|
|
\@addtoreset{#1}{chapter}}%
|
|
\fi
|
|
\fi
|
|
\fi
|
|
\spn@wtheorem{case}{Case}{\itshape}{\rmfamily}
|
|
\spn@wtheorem{conjecture}{Conjecture}{\itshape}{\rmfamily}
|
|
\spn@wtheorem{corollary}{Corollary}{\bfseries}{\itshape}
|
|
\spn@wtheorem{definition}{Definition}{\bfseries}{\itshape}
|
|
\spn@wtheorem{example}{Example}{\itshape}{\rmfamily}
|
|
\spn@wtheorem{exercise}{Exercise}{\itshape}{\rmfamily}
|
|
\spn@wtheorem{lemma}{Lemma}{\bfseries}{\itshape}
|
|
\spn@wtheorem{note}{Note}{\itshape}{\rmfamily}
|
|
\spn@wtheorem{problem}{Problem}{\itshape}{\rmfamily}
|
|
\spn@wtheorem{property}{Property}{\itshape}{\rmfamily}
|
|
\spn@wtheorem{proposition}{Proposition}{\bfseries}{\itshape}
|
|
\spn@wtheorem{question}{Question}{\itshape}{\rmfamily}
|
|
\spn@wtheorem{solution}{Solution}{\itshape}{\rmfamily}
|
|
\spn@wtheorem{remark}{Remark}{\itshape}{\rmfamily}
|
|
|
|
\def\@takefromreset#1#2{%
|
|
\def\@tempa{#1}%
|
|
\let\@tempd\@elt
|
|
\def\@elt##1{%
|
|
\def\@tempb{##1}%
|
|
\ifx\@tempa\@tempb\else
|
|
\@addtoreset{##1}{#2}%
|
|
\fi}%
|
|
\expandafter\expandafter\let\expandafter\@tempc\csname cl@#2\endcsname
|
|
\expandafter\def\csname cl@#2\endcsname{}%
|
|
\@tempc
|
|
\let\@elt\@tempd}
|
|
|
|
\def\theopargself{\def\@spopargbegintheorem##1##2##3##4##5{\trivlist
|
|
\item[\hskip\labelsep{##4##1\ ##2}]{##4##3\@thmcounterend\ }##5}
|
|
\def\@Opargbegintheorem##1##2##3##4{##4\trivlist
|
|
\item[\hskip\labelsep{##3##1}]{##3##2\@thmcounterend\ }}
|
|
}
|
|
|
|
\renewenvironment{abstract}{%
|
|
\list{}{\advance\topsep by0.35cm\relax\small
|
|
\leftmargin=1cm
|
|
\labelwidth=\z@
|
|
\listparindent=\z@
|
|
\itemindent\listparindent
|
|
\rightmargin\leftmargin}\item[\hskip\labelsep
|
|
\bfseries\abstractname]}
|
|
{\endlist}
|
|
|
|
\newdimen\headlineindent % dimension for space between
|
|
\headlineindent=1.166cm % number and text of headings.
|
|
|
|
\def\ps@headings{\let\@mkboth\@gobbletwo
|
|
\let\@oddfoot\@empty\let\@evenfoot\@empty
|
|
\def\@evenhead{\normalfont\small\rlap{\thepage}\hspace{\headlineindent}%
|
|
\leftmark\hfil}
|
|
\def\@oddhead{\normalfont\small\hfil\rightmark\hspace{\headlineindent}%
|
|
\llap{\thepage}}
|
|
\def\chaptermark##1{}%
|
|
\def\sectionmark##1{}%
|
|
\def\subsectionmark##1{}}
|
|
|
|
\def\ps@titlepage{\let\@mkboth\@gobbletwo
|
|
\let\@oddfoot\@empty\let\@evenfoot\@empty
|
|
\def\@evenhead{\normalfont\small\rlap{\thepage}\hspace{\headlineindent}%
|
|
\hfil}
|
|
\def\@oddhead{\normalfont\small\hfil\hspace{\headlineindent}%
|
|
\llap{\thepage}}
|
|
\def\chaptermark##1{}%
|
|
\def\sectionmark##1{}%
|
|
\def\subsectionmark##1{}}
|
|
|
|
\if@runhead\ps@headings\else
|
|
\ps@empty\fi
|
|
|
|
\setlength\arraycolsep{1.4\p@}
|
|
\setlength\tabcolsep{1.4\p@}
|
|
|
|
\endinput
|
|
%end of file llncs.cls
|