% LLNCS DOCUMENT CLASS -- version 2.19 (31-Mar-2014) | |
% 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}[2014/03/31 v2.19 | |
^^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@openright\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 | |
\RequirePackage{aliascnt} | |
\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 Keywords:}}% | |
\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} | |
\let\phantomsection=\relax | |
\def\hyperhrefextend{\ifx\hyper@anchor\@undefined\else | |
{}\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{% | |
\phantomsection | |
\@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{% | |
\small | |
\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}}% | |
\@ifundefined{extrasngerman}{}{\addto\extrasngerman{\switcht@deutsch}}% | |
}{\switcht@@therlang}% | |
\providecommand{\keywords}[1]{\par\addvspace\baselineskip | |
\noindent\keywordname\enspace\ignorespaces#1}% | |
} | |
\def\homedir{\~{ }} | |
\def\subtitle#1{\gdef\@subtitle{#1}} | |
\clearheadinfo | |
% | |
%%% to avoid hyperref warnings | |
\providecommand*{\toclevel@author}{999} | |
%%% to make title-entry parent of section-entries | |
\providecommand*{\toclevel@title}{0} | |
% | |
\renewcommand\maketitle{\newpage | |
\phantomsection | |
\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 | |
{\newaliascnt{#1}{#2}% | |
\expandafter\xdef\csname #1name\endcsname{#3}% | |
\global\@namedef{#1}{\@spthm{#1}{\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 |