source: Deliverables/D4.1/ITP-Paper/llncs.cls @ 555

Last change on this file since 555 was 555, checked in by mulligan, 9 years ago

Resolved conflict, updated bibtex, finished bibliography, and llncs.cls updated to latest version.

File size: 41.8 KB
Line 
1% LLNCS DOCUMENT CLASS -- version 2.17 (12-Jul-2010)
2% Springer Verlag LaTeX2e support for Lecture Notes in Computer Science
3%
4%%
5%% \CharacterTable
6%%  {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
7%%   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
8%%   Digits        \0\1\2\3\4\5\6\7\8\9
9%%   Exclamation   \!     Double quote  \"     Hash (number) \#
10%%   Dollar        \$     Percent       \%     Ampersand     \&
11%%   Acute accent  \'     Left paren    \(     Right paren   \)
12%%   Asterisk      \*     Plus          \+     Comma         \,
13%%   Minus         \-     Point         \.     Solidus       \/
14%%   Colon         \:     Semicolon     \;     Less than     \<
15%%   Equals        \=     Greater than  \>     Question mark \?
16%%   Commercial at \@     Left bracket  \[     Backslash     \\
17%%   Right bracket \]     Circumflex    \^     Underscore    \_
18%%   Grave accent  \`     Left brace    \{     Vertical bar  \|
19%%   Right brace   \}     Tilde         \~}
20%%
21\NeedsTeXFormat{LaTeX2e}[1995/12/01]
22\ProvidesClass{llncs}[2010/07/12 v2.17
23^^J LaTeX document class for Lecture Notes in Computer Science]
24% Options
25\let\if@envcntreset\iffalse
26\DeclareOption{envcountreset}{\let\if@envcntreset\iftrue}
27\DeclareOption{citeauthoryear}{\let\citeauthoryear=Y}
28\DeclareOption{oribibl}{\let\oribibl=Y}
29\let\if@custvec\iftrue
30\DeclareOption{orivec}{\let\if@custvec\iffalse}
31\let\if@envcntsame\iffalse
32\DeclareOption{envcountsame}{\let\if@envcntsame\iftrue}
33\let\if@envcntsect\iffalse
34\DeclareOption{envcountsect}{\let\if@envcntsect\iftrue}
35\let\if@runhead\iffalse
36\DeclareOption{runningheads}{\let\if@runhead\iftrue}
37
38\let\if@openright\iftrue
39\let\if@openbib\iffalse
40\DeclareOption{openbib}{\let\if@openbib\iftrue}
41
42% languages
43\let\switcht@@therlang\relax
44\def\ds@deutsch{\def\switcht@@therlang{\switcht@deutsch}}
45\def\ds@francais{\def\switcht@@therlang{\switcht@francais}}
46
47\DeclareOption*{\PassOptionsToClass{\CurrentOption}{article}}
48
49\ProcessOptions
50
51\LoadClass[twoside]{article}
52\RequirePackage{multicol} % needed for the list of participants, index
53\RequirePackage{aliascnt}
54
55\setlength{\textwidth}{12.2cm}
56\setlength{\textheight}{19.3cm}
57\renewcommand\@pnumwidth{2em}
58\renewcommand\@tocrmarg{3.5em}
59%
60\def\@dottedtocline#1#2#3#4#5{%
61  \ifnum #1>\c@tocdepth \else
62    \vskip \z@ \@plus.2\p@
63    {\leftskip #2\relax \rightskip \@tocrmarg \advance\rightskip by 0pt plus 2cm
64               \parfillskip -\rightskip \pretolerance=10000
65     \parindent #2\relax\@afterindenttrue
66     \interlinepenalty\@M
67     \leavevmode
68     \@tempdima #3\relax
69     \advance\leftskip \@tempdima \null\nobreak\hskip -\leftskip
70     {#4}\nobreak
71     \leaders\hbox{$\m@th
72        \mkern \@dotsep mu\hbox{.}\mkern \@dotsep
73        mu$}\hfill
74     \nobreak
75     \hb@xt@\@pnumwidth{\hfil\normalfont \normalcolor #5}%
76     \par}%
77  \fi}
78%
79\def\switcht@albion{%
80\def\abstractname{Abstract.}
81\def\ackname{Acknowledgement.}
82\def\andname{and}
83\def\lastandname{\unskip, and}
84\def\appendixname{Appendix}
85\def\chaptername{Chapter}
86\def\claimname{Claim}
87\def\conjecturename{Conjecture}
88\def\contentsname{Table of Contents}
89\def\corollaryname{Corollary}
90\def\definitionname{Definition}
91\def\examplename{Example}
92\def\exercisename{Exercise}
93\def\figurename{Fig.}
94\def\keywordname{{\bf Keywords:}}
95\def\indexname{Index}
96\def\lemmaname{Lemma}
97\def\contriblistname{List of Contributors}
98\def\listfigurename{List of Figures}
99\def\listtablename{List of Tables}
100\def\mailname{{\it Correspondence to\/}:}
101\def\noteaddname{Note added in proof}
102\def\notename{Note}
103\def\partname{Part}
104\def\problemname{Problem}
105\def\proofname{Proof}
106\def\propertyname{Property}
107\def\propositionname{Proposition}
108\def\questionname{Question}
109\def\remarkname{Remark}
110\def\seename{see}
111\def\solutionname{Solution}
112\def\subclassname{{\it Subject Classifications\/}:}
113\def\tablename{Table}
114\def\theoremname{Theorem}}
115\switcht@albion
116% Names of theorem like environments are already defined
117% but must be translated if another language is chosen
118%
119% French section
120\def\switcht@francais{%\typeout{On parle francais.}%
121 \def\abstractname{R\'esum\'e.}%
122 \def\ackname{Remerciements.}%
123 \def\andname{et}%
124 \def\lastandname{ et}%
125 \def\appendixname{Appendice}
126 \def\chaptername{Chapitre}%
127 \def\claimname{Pr\'etention}%
128 \def\conjecturename{Hypoth\`ese}%
129 \def\contentsname{Table des mati\`eres}%
130 \def\corollaryname{Corollaire}%
131 \def\definitionname{D\'efinition}%
132 \def\examplename{Exemple}%
133 \def\exercisename{Exercice}%
134 \def\figurename{Fig.}%
135 \def\keywordname{{\bf Mots-cl\'e:}}
136 \def\indexname{Index}
137 \def\lemmaname{Lemme}%
138 \def\contriblistname{Liste des contributeurs}
139 \def\listfigurename{Liste des figures}%
140 \def\listtablename{Liste des tables}%
141 \def\mailname{{\it Correspondence to\/}:}
142 \def\noteaddname{Note ajout\'ee \`a l'\'epreuve}%
143 \def\notename{Remarque}%
144 \def\partname{Partie}%
145 \def\problemname{Probl\`eme}%
146 \def\proofname{Preuve}%
147 \def\propertyname{Caract\'eristique}%
148%\def\propositionname{Proposition}%
149 \def\questionname{Question}%
150 \def\remarkname{Remarque}%
151 \def\seename{voir}
152 \def\solutionname{Solution}%
153 \def\subclassname{{\it Subject Classifications\/}:}
154 \def\tablename{Tableau}%
155 \def\theoremname{Th\'eor\`eme}%
156}
157%
158% German section
159\def\switcht@deutsch{%\typeout{Man spricht deutsch.}%
160 \def\abstractname{Zusammenfassung.}%
161 \def\ackname{Danksagung.}%
162 \def\andname{und}%
163 \def\lastandname{ und}%
164 \def\appendixname{Anhang}%
165 \def\chaptername{Kapitel}%
166 \def\claimname{Behauptung}%
167 \def\conjecturename{Hypothese}%
168 \def\contentsname{Inhaltsverzeichnis}%
169 \def\corollaryname{Korollar}%
170%\def\definitionname{Definition}%
171 \def\examplename{Beispiel}%
172 \def\exercisename{\"Ubung}%
173 \def\figurename{Abb.}%
174 \def\keywordname{{\bf Schl\"usselw\"orter:}}
175 \def\indexname{Index}
176%\def\lemmaname{Lemma}%
177 \def\contriblistname{Mitarbeiter}
178 \def\listfigurename{Abbildungsverzeichnis}%
179 \def\listtablename{Tabellenverzeichnis}%
180 \def\mailname{{\it Correspondence to\/}:}
181 \def\noteaddname{Nachtrag}%
182 \def\notename{Anmerkung}%
183 \def\partname{Teil}%
184%\def\problemname{Problem}%
185 \def\proofname{Beweis}%
186 \def\propertyname{Eigenschaft}%
187%\def\propositionname{Proposition}%
188 \def\questionname{Frage}%
189 \def\remarkname{Anmerkung}%
190 \def\seename{siehe}
191 \def\solutionname{L\"osung}%
192 \def\subclassname{{\it Subject Classifications\/}:}
193 \def\tablename{Tabelle}%
194%\def\theoremname{Theorem}%
195}
196
197% Ragged bottom for the actual page
198\def\thisbottomragged{\def\@textbottom{\vskip\z@ plus.0001fil
199\global\let\@textbottom\relax}}
200
201\renewcommand\small{%
202   \@setfontsize\small\@ixpt{11}%
203   \abovedisplayskip 8.5\p@ \@plus3\p@ \@minus4\p@
204   \abovedisplayshortskip \z@ \@plus2\p@
205   \belowdisplayshortskip 4\p@ \@plus2\p@ \@minus2\p@
206   \def\@listi{\leftmargin\leftmargini
207               \parsep 0\p@ \@plus1\p@ \@minus\p@
208               \topsep 8\p@ \@plus2\p@ \@minus4\p@
209               \itemsep0\p@}%
210   \belowdisplayskip \abovedisplayskip
211}
212
213\frenchspacing
214\widowpenalty=10000
215\clubpenalty=10000
216
217\setlength\oddsidemargin   {63\p@}
218\setlength\evensidemargin  {63\p@}
219\setlength\marginparwidth  {90\p@}
220
221\setlength\headsep   {16\p@}
222
223\setlength\footnotesep{7.7\p@}
224\setlength\textfloatsep{8mm\@plus 2\p@ \@minus 4\p@}
225\setlength\intextsep   {8mm\@plus 2\p@ \@minus 2\p@}
226
227\setcounter{secnumdepth}{2}
228
229\newcounter {chapter}
230\renewcommand\thechapter      {\@arabic\c@chapter}
231
232\newif\if@mainmatter \@mainmattertrue
233\newcommand\frontmatter{\cleardoublepage
234            \@mainmatterfalse\pagenumbering{Roman}}
235\newcommand\mainmatter{\cleardoublepage
236       \@mainmattertrue\pagenumbering{arabic}}
237\newcommand\backmatter{\if@openright\cleardoublepage\else\clearpage\fi
238      \@mainmatterfalse}
239
240\renewcommand\part{\cleardoublepage
241                 \thispagestyle{empty}%
242                 \if@twocolumn
243                     \onecolumn
244                     \@tempswatrue
245                   \else
246                     \@tempswafalse
247                 \fi
248                 \null\vfil
249                 \secdef\@part\@spart}
250
251\def\@part[#1]#2{%
252    \ifnum \c@secnumdepth >-2\relax
253      \refstepcounter{part}%
254      \addcontentsline{toc}{part}{\thepart\hspace{1em}#1}%
255    \else
256      \addcontentsline{toc}{part}{#1}%
257    \fi
258    \markboth{}{}%
259    {\centering
260     \interlinepenalty \@M
261     \normalfont
262     \ifnum \c@secnumdepth >-2\relax
263       \huge\bfseries \partname~\thepart
264       \par
265       \vskip 20\p@
266     \fi
267     \Huge \bfseries #2\par}%
268    \@endpart}
269\def\@spart#1{%
270    {\centering
271     \interlinepenalty \@M
272     \normalfont
273     \Huge \bfseries #1\par}%
274    \@endpart}
275\def\@endpart{\vfil\newpage
276              \if@twoside
277                \null
278                \thispagestyle{empty}%
279                \newpage
280              \fi
281              \if@tempswa
282                \twocolumn
283              \fi}
284
285\newcommand\chapter{\clearpage
286                    \thispagestyle{empty}%
287                    \global\@topnum\z@
288                    \@afterindentfalse
289                    \secdef\@chapter\@schapter}
290\def\@chapter[#1]#2{\ifnum \c@secnumdepth >\m@ne
291                       \if@mainmatter
292                         \refstepcounter{chapter}%
293                         \typeout{\@chapapp\space\thechapter.}%
294                         \addcontentsline{toc}{chapter}%
295                                  {\protect\numberline{\thechapter}#1}%
296                       \else
297                         \addcontentsline{toc}{chapter}{#1}%
298                       \fi
299                    \else
300                      \addcontentsline{toc}{chapter}{#1}%
301                    \fi
302                    \chaptermark{#1}%
303                    \addtocontents{lof}{\protect\addvspace{10\p@}}%
304                    \addtocontents{lot}{\protect\addvspace{10\p@}}%
305                    \if@twocolumn
306                      \@topnewpage[\@makechapterhead{#2}]%
307                    \else
308                      \@makechapterhead{#2}%
309                      \@afterheading
310                    \fi}
311\def\@makechapterhead#1{%
312% \vspace*{50\p@}%
313  {\centering
314    \ifnum \c@secnumdepth >\m@ne
315      \if@mainmatter
316        \large\bfseries \@chapapp{} \thechapter
317        \par\nobreak
318        \vskip 20\p@
319      \fi
320    \fi
321    \interlinepenalty\@M
322    \Large \bfseries #1\par\nobreak
323    \vskip 40\p@
324  }}
325\def\@schapter#1{\if@twocolumn
326                   \@topnewpage[\@makeschapterhead{#1}]%
327                 \else
328                   \@makeschapterhead{#1}%
329                   \@afterheading
330                 \fi}
331\def\@makeschapterhead#1{%
332% \vspace*{50\p@}%
333  {\centering
334    \normalfont
335    \interlinepenalty\@M
336    \Large \bfseries  #1\par\nobreak
337    \vskip 40\p@
338  }}
339
340\renewcommand\section{\@startsection{section}{1}{\z@}%
341                       {-18\p@ \@plus -4\p@ \@minus -4\p@}%
342                       {12\p@ \@plus 4\p@ \@minus 4\p@}%
343                       {\normalfont\large\bfseries\boldmath
344                        \rightskip=\z@ \@plus 8em\pretolerance=10000 }}
345\renewcommand\subsection{\@startsection{subsection}{2}{\z@}%
346                       {-18\p@ \@plus -4\p@ \@minus -4\p@}%
347                       {8\p@ \@plus 4\p@ \@minus 4\p@}%
348                       {\normalfont\normalsize\bfseries\boldmath
349                        \rightskip=\z@ \@plus 8em\pretolerance=10000 }}
350\renewcommand\subsubsection{\@startsection{subsubsection}{3}{\z@}%
351                       {-18\p@ \@plus -4\p@ \@minus -4\p@}%
352                       {-0.5em \@plus -0.22em \@minus -0.1em}%
353                       {\normalfont\normalsize\bfseries\boldmath}}
354\renewcommand\paragraph{\@startsection{paragraph}{4}{\z@}%
355                       {-12\p@ \@plus -4\p@ \@minus -4\p@}%
356                       {-0.5em \@plus -0.22em \@minus -0.1em}%
357                       {\normalfont\normalsize\itshape}}
358\renewcommand\subparagraph[1]{\typeout{LLNCS warning: You should not use
359                  \string\subparagraph\space with this class}\vskip0.5cm
360You should not use \verb|\subparagraph| with this class.\vskip0.5cm}
361
362\DeclareMathSymbol{\Gamma}{\mathalpha}{letters}{"00}
363\DeclareMathSymbol{\Delta}{\mathalpha}{letters}{"01}
364\DeclareMathSymbol{\Theta}{\mathalpha}{letters}{"02}
365\DeclareMathSymbol{\Lambda}{\mathalpha}{letters}{"03}
366\DeclareMathSymbol{\Xi}{\mathalpha}{letters}{"04}
367\DeclareMathSymbol{\Pi}{\mathalpha}{letters}{"05}
368\DeclareMathSymbol{\Sigma}{\mathalpha}{letters}{"06}
369\DeclareMathSymbol{\Upsilon}{\mathalpha}{letters}{"07}
370\DeclareMathSymbol{\Phi}{\mathalpha}{letters}{"08}
371\DeclareMathSymbol{\Psi}{\mathalpha}{letters}{"09}
372\DeclareMathSymbol{\Omega}{\mathalpha}{letters}{"0A}
373
374\let\footnotesize\small
375
376\if@custvec
377\def\vec#1{\mathchoice{\mbox{\boldmath$\displaystyle#1$}}
378{\mbox{\boldmath$\textstyle#1$}}
379{\mbox{\boldmath$\scriptstyle#1$}}
380{\mbox{\boldmath$\scriptscriptstyle#1$}}}
381\fi
382
383\def\squareforqed{\hbox{\rlap{$\sqcap$}$\sqcup$}}
384\def\qed{\ifmmode\squareforqed\else{\unskip\nobreak\hfil
385\penalty50\hskip1em\null\nobreak\hfil\squareforqed
386\parfillskip=0pt\finalhyphendemerits=0\endgraf}\fi}
387
388\def\getsto{\mathrel{\mathchoice {\vcenter{\offinterlineskip
389\halign{\hfil
390$\displaystyle##$\hfil\cr\gets\cr\to\cr}}}
391{\vcenter{\offinterlineskip\halign{\hfil$\textstyle##$\hfil\cr\gets
392\cr\to\cr}}}
393{\vcenter{\offinterlineskip\halign{\hfil$\scriptstyle##$\hfil\cr\gets
394\cr\to\cr}}}
395{\vcenter{\offinterlineskip\halign{\hfil$\scriptscriptstyle##$\hfil\cr
396\gets\cr\to\cr}}}}}
397\def\lid{\mathrel{\mathchoice {\vcenter{\offinterlineskip\halign{\hfil
398$\displaystyle##$\hfil\cr<\cr\noalign{\vskip1.2pt}=\cr}}}
399{\vcenter{\offinterlineskip\halign{\hfil$\textstyle##$\hfil\cr<\cr
400\noalign{\vskip1.2pt}=\cr}}}
401{\vcenter{\offinterlineskip\halign{\hfil$\scriptstyle##$\hfil\cr<\cr
402\noalign{\vskip1pt}=\cr}}}
403{\vcenter{\offinterlineskip\halign{\hfil$\scriptscriptstyle##$\hfil\cr
404<\cr
405\noalign{\vskip0.9pt}=\cr}}}}}
406\def\gid{\mathrel{\mathchoice {\vcenter{\offinterlineskip\halign{\hfil
407$\displaystyle##$\hfil\cr>\cr\noalign{\vskip1.2pt}=\cr}}}
408{\vcenter{\offinterlineskip\halign{\hfil$\textstyle##$\hfil\cr>\cr
409\noalign{\vskip1.2pt}=\cr}}}
410{\vcenter{\offinterlineskip\halign{\hfil$\scriptstyle##$\hfil\cr>\cr
411\noalign{\vskip1pt}=\cr}}}
412{\vcenter{\offinterlineskip\halign{\hfil$\scriptscriptstyle##$\hfil\cr
413>\cr
414\noalign{\vskip0.9pt}=\cr}}}}}
415\def\grole{\mathrel{\mathchoice {\vcenter{\offinterlineskip
416\halign{\hfil
417$\displaystyle##$\hfil\cr>\cr\noalign{\vskip-1pt}<\cr}}}
418{\vcenter{\offinterlineskip\halign{\hfil$\textstyle##$\hfil\cr
419>\cr\noalign{\vskip-1pt}<\cr}}}
420{\vcenter{\offinterlineskip\halign{\hfil$\scriptstyle##$\hfil\cr
421>\cr\noalign{\vskip-0.8pt}<\cr}}}
422{\vcenter{\offinterlineskip\halign{\hfil$\scriptscriptstyle##$\hfil\cr
423>\cr\noalign{\vskip-0.3pt}<\cr}}}}}
424\def\bbbr{{\rm I\!R}} %reelle Zahlen
425\def\bbbm{{\rm I\!M}}
426\def\bbbn{{\rm I\!N}} %natuerliche Zahlen
427\def\bbbf{{\rm I\!F}}
428\def\bbbh{{\rm I\!H}}
429\def\bbbk{{\rm I\!K}}
430\def\bbbp{{\rm I\!P}}
431\def\bbbone{{\mathchoice {\rm 1\mskip-4mu l} {\rm 1\mskip-4mu l}
432{\rm 1\mskip-4.5mu l} {\rm 1\mskip-5mu l}}}
433\def\bbbc{{\mathchoice {\setbox0=\hbox{$\displaystyle\rm C$}\hbox{\hbox
434to0pt{\kern0.4\wd0\vrule height0.9\ht0\hss}\box0}}
435{\setbox0=\hbox{$\textstyle\rm C$}\hbox{\hbox
436to0pt{\kern0.4\wd0\vrule height0.9\ht0\hss}\box0}}
437{\setbox0=\hbox{$\scriptstyle\rm C$}\hbox{\hbox
438to0pt{\kern0.4\wd0\vrule height0.9\ht0\hss}\box0}}
439{\setbox0=\hbox{$\scriptscriptstyle\rm C$}\hbox{\hbox
440to0pt{\kern0.4\wd0\vrule height0.9\ht0\hss}\box0}}}}
441\def\bbbq{{\mathchoice {\setbox0=\hbox{$\displaystyle\rm
442Q$}\hbox{\raise
4430.15\ht0\hbox to0pt{\kern0.4\wd0\vrule height0.8\ht0\hss}\box0}}
444{\setbox0=\hbox{$\textstyle\rm Q$}\hbox{\raise
4450.15\ht0\hbox to0pt{\kern0.4\wd0\vrule height0.8\ht0\hss}\box0}}
446{\setbox0=\hbox{$\scriptstyle\rm Q$}\hbox{\raise
4470.15\ht0\hbox to0pt{\kern0.4\wd0\vrule height0.7\ht0\hss}\box0}}
448{\setbox0=\hbox{$\scriptscriptstyle\rm Q$}\hbox{\raise
4490.15\ht0\hbox to0pt{\kern0.4\wd0\vrule height0.7\ht0\hss}\box0}}}}
450\def\bbbt{{\mathchoice {\setbox0=\hbox{$\displaystyle\rm
451T$}\hbox{\hbox to0pt{\kern0.3\wd0\vrule height0.9\ht0\hss}\box0}}
452{\setbox0=\hbox{$\textstyle\rm T$}\hbox{\hbox
453to0pt{\kern0.3\wd0\vrule height0.9\ht0\hss}\box0}}
454{\setbox0=\hbox{$\scriptstyle\rm T$}\hbox{\hbox
455to0pt{\kern0.3\wd0\vrule height0.9\ht0\hss}\box0}}
456{\setbox0=\hbox{$\scriptscriptstyle\rm T$}\hbox{\hbox
457to0pt{\kern0.3\wd0\vrule height0.9\ht0\hss}\box0}}}}
458\def\bbbs{{\mathchoice
459{\setbox0=\hbox{$\displaystyle     \rm S$}\hbox{\raise0.5\ht0\hbox
460to0pt{\kern0.35\wd0\vrule height0.45\ht0\hss}\hbox
461to0pt{\kern0.55\wd0\vrule height0.5\ht0\hss}\box0}}
462{\setbox0=\hbox{$\textstyle        \rm S$}\hbox{\raise0.5\ht0\hbox
463to0pt{\kern0.35\wd0\vrule height0.45\ht0\hss}\hbox
464to0pt{\kern0.55\wd0\vrule height0.5\ht0\hss}\box0}}
465{\setbox0=\hbox{$\scriptstyle      \rm S$}\hbox{\raise0.5\ht0\hbox
466to0pt{\kern0.35\wd0\vrule height0.45\ht0\hss}\raise0.05\ht0\hbox
467to0pt{\kern0.5\wd0\vrule height0.45\ht0\hss}\box0}}
468{\setbox0=\hbox{$\scriptscriptstyle\rm S$}\hbox{\raise0.5\ht0\hbox
469to0pt{\kern0.4\wd0\vrule height0.45\ht0\hss}\raise0.05\ht0\hbox
470to0pt{\kern0.55\wd0\vrule height0.45\ht0\hss}\box0}}}}
471\def\bbbz{{\mathchoice {\hbox{$\mathsf\textstyle Z\kern-0.4em Z$}}
472{\hbox{$\mathsf\textstyle Z\kern-0.4em Z$}}
473{\hbox{$\mathsf\scriptstyle Z\kern-0.3em Z$}}
474{\hbox{$\mathsf\scriptscriptstyle Z\kern-0.2em Z$}}}}
475
476\let\ts\,
477
478\setlength\leftmargini  {17\p@}
479\setlength\leftmargin    {\leftmargini}
480\setlength\leftmarginii  {\leftmargini}
481\setlength\leftmarginiii {\leftmargini}
482\setlength\leftmarginiv  {\leftmargini}
483\setlength  \labelsep  {.5em}
484\setlength  \labelwidth{\leftmargini}
485\addtolength\labelwidth{-\labelsep}
486
487\def\@listI{\leftmargin\leftmargini
488            \parsep 0\p@ \@plus1\p@ \@minus\p@
489            \topsep 8\p@ \@plus2\p@ \@minus4\p@
490            \itemsep0\p@}
491\let\@listi\@listI
492\@listi
493\def\@listii {\leftmargin\leftmarginii
494              \labelwidth\leftmarginii
495              \advance\labelwidth-\labelsep
496              \topsep    0\p@ \@plus2\p@ \@minus\p@}
497\def\@listiii{\leftmargin\leftmarginiii
498              \labelwidth\leftmarginiii
499              \advance\labelwidth-\labelsep
500              \topsep    0\p@ \@plus\p@\@minus\p@
501              \parsep    \z@
502              \partopsep \p@ \@plus\z@ \@minus\p@}
503
504\renewcommand\labelitemi{\normalfont\bfseries --}
505\renewcommand\labelitemii{$\m@th\bullet$}
506
507\setlength\arraycolsep{1.4\p@}
508\setlength\tabcolsep{1.4\p@}
509
510\def\tableofcontents{\chapter*{\contentsname\@mkboth{{\contentsname}}%
511                                                    {{\contentsname}}}
512 \def\authcount##1{\setcounter{auco}{##1}\setcounter{@auth}{1}}
513 \def\lastand{\ifnum\value{auco}=2\relax
514                 \unskip{} \andname\
515              \else
516                 \unskip \lastandname\
517              \fi}%
518 \def\and{\stepcounter{@auth}\relax
519          \ifnum\value{@auth}=\value{auco}%
520             \lastand
521          \else
522             \unskip,
523          \fi}%
524 \@starttoc{toc}\if@restonecol\twocolumn\fi}
525
526\def\l@part#1#2{\addpenalty{\@secpenalty}%
527   \addvspace{2em plus\p@}%  % space above part line
528   \begingroup
529     \parindent \z@
530     \rightskip \z@ plus 5em
531     \hrule\vskip5pt
532     \large               % same size as for a contribution heading
533     \bfseries\boldmath   % set line in boldface
534     \leavevmode          % TeX command to enter horizontal mode.
535     #1\par
536     \vskip5pt
537     \hrule
538     \vskip1pt
539     \nobreak             % Never break after part entry
540   \endgroup}
541
542\def\@dotsep{2}
543
544\let\phantomsection=\relax
545
546\def\hyperhrefextend{\ifx\hyper@anchor\@undefined\else
547{}\fi}
548
549\def\addnumcontentsmark#1#2#3{%
550\addtocontents{#1}{\protect\contentsline{#2}{\protect\numberline
551                     {\thechapter}#3}{\thepage}\hyperhrefextend}}%
552\def\addcontentsmark#1#2#3{%
553\addtocontents{#1}{\protect\contentsline{#2}{#3}{\thepage}\hyperhrefextend}}%
554\def\addcontentsmarkwop#1#2#3{%
555\addtocontents{#1}{\protect\contentsline{#2}{#3}{0}\hyperhrefextend}}%
556
557\def\@adcmk[#1]{\ifcase #1 \or
558\def\@gtempa{\addnumcontentsmark}%
559  \or    \def\@gtempa{\addcontentsmark}%
560  \or    \def\@gtempa{\addcontentsmarkwop}%
561  \fi\@gtempa{toc}{chapter}%
562}
563\def\addtocmark{%
564\phantomsection
565\@ifnextchar[{\@adcmk}{\@adcmk[3]}%
566}
567
568\def\l@chapter#1#2{\addpenalty{-\@highpenalty}
569 \vskip 1.0em plus 1pt \@tempdima 1.5em \begingroup
570 \parindent \z@ \rightskip \@tocrmarg
571 \advance\rightskip by 0pt plus 2cm
572 \parfillskip -\rightskip \pretolerance=10000
573 \leavevmode \advance\leftskip\@tempdima \hskip -\leftskip
574 {\large\bfseries\boldmath#1}\ifx0#2\hfil\null
575 \else
576      \nobreak
577      \leaders\hbox{$\m@th \mkern \@dotsep mu.\mkern
578      \@dotsep mu$}\hfill
579      \nobreak\hbox to\@pnumwidth{\hss #2}%
580 \fi\par
581 \penalty\@highpenalty \endgroup}
582
583\def\l@title#1#2{\addpenalty{-\@highpenalty}
584 \addvspace{8pt plus 1pt}
585 \@tempdima \z@
586 \begingroup
587 \parindent \z@ \rightskip \@tocrmarg
588 \advance\rightskip by 0pt plus 2cm
589 \parfillskip -\rightskip \pretolerance=10000
590 \leavevmode \advance\leftskip\@tempdima \hskip -\leftskip
591 #1\nobreak
592 \leaders\hbox{$\m@th \mkern \@dotsep mu.\mkern
593 \@dotsep mu$}\hfill
594 \nobreak\hbox to\@pnumwidth{\hss #2}\par
595 \penalty\@highpenalty \endgroup}
596
597\def\l@author#1#2{\addpenalty{\@highpenalty}
598 \@tempdima=15\p@ %\z@
599 \begingroup
600 \parindent \z@ \rightskip \@tocrmarg
601 \advance\rightskip by 0pt plus 2cm
602 \pretolerance=10000
603 \leavevmode \advance\leftskip\@tempdima %\hskip -\leftskip
604 \textit{#1}\par
605 \penalty\@highpenalty \endgroup}
606
607\setcounter{tocdepth}{0}
608\newdimen\tocchpnum
609\newdimen\tocsecnum
610\newdimen\tocsectotal
611\newdimen\tocsubsecnum
612\newdimen\tocsubsectotal
613\newdimen\tocsubsubsecnum
614\newdimen\tocsubsubsectotal
615\newdimen\tocparanum
616\newdimen\tocparatotal
617\newdimen\tocsubparanum
618\tocchpnum=\z@            % no chapter numbers
619\tocsecnum=15\p@          % section 88. plus 2.222pt
620\tocsubsecnum=23\p@       % subsection 88.8 plus 2.222pt
621\tocsubsubsecnum=27\p@    % subsubsection 88.8.8 plus 1.444pt
622\tocparanum=35\p@         % paragraph 88.8.8.8 plus 1.666pt
623\tocsubparanum=43\p@      % subparagraph 88.8.8.8.8 plus 1.888pt
624\def\calctocindent{%
625\tocsectotal=\tocchpnum
626\advance\tocsectotal by\tocsecnum
627\tocsubsectotal=\tocsectotal
628\advance\tocsubsectotal by\tocsubsecnum
629\tocsubsubsectotal=\tocsubsectotal
630\advance\tocsubsubsectotal by\tocsubsubsecnum
631\tocparatotal=\tocsubsubsectotal
632\advance\tocparatotal by\tocparanum}
633\calctocindent
634
635\def\l@section{\@dottedtocline{1}{\tocchpnum}{\tocsecnum}}
636\def\l@subsection{\@dottedtocline{2}{\tocsectotal}{\tocsubsecnum}}
637\def\l@subsubsection{\@dottedtocline{3}{\tocsubsectotal}{\tocsubsubsecnum}}
638\def\l@paragraph{\@dottedtocline{4}{\tocsubsubsectotal}{\tocparanum}}
639\def\l@subparagraph{\@dottedtocline{5}{\tocparatotal}{\tocsubparanum}}
640
641\def\listoffigures{\@restonecolfalse\if@twocolumn\@restonecoltrue\onecolumn
642 \fi\section*{\listfigurename\@mkboth{{\listfigurename}}{{\listfigurename}}}
643 \@starttoc{lof}\if@restonecol\twocolumn\fi}
644\def\l@figure{\@dottedtocline{1}{0em}{1.5em}}
645
646\def\listoftables{\@restonecolfalse\if@twocolumn\@restonecoltrue\onecolumn
647 \fi\section*{\listtablename\@mkboth{{\listtablename}}{{\listtablename}}}
648 \@starttoc{lot}\if@restonecol\twocolumn\fi}
649\let\l@table\l@figure
650
651\renewcommand\listoffigures{%
652    \section*{\listfigurename
653      \@mkboth{\listfigurename}{\listfigurename}}%
654    \@starttoc{lof}%
655    }
656
657\renewcommand\listoftables{%
658    \section*{\listtablename
659      \@mkboth{\listtablename}{\listtablename}}%
660    \@starttoc{lot}%
661    }
662
663\ifx\oribibl\undefined
664\ifx\citeauthoryear\undefined
665\renewenvironment{thebibliography}[1]
666     {\section*{\refname}
667      \def\@biblabel##1{##1.}
668      \small
669      \list{\@biblabel{\@arabic\c@enumiv}}%
670           {\settowidth\labelwidth{\@biblabel{#1}}%
671            \leftmargin\labelwidth
672            \advance\leftmargin\labelsep
673            \if@openbib
674              \advance\leftmargin\bibindent
675              \itemindent -\bibindent
676              \listparindent \itemindent
677              \parsep \z@
678            \fi
679            \usecounter{enumiv}%
680            \let\p@enumiv\@empty
681            \renewcommand\theenumiv{\@arabic\c@enumiv}}%
682      \if@openbib
683        \renewcommand\newblock{\par}%
684      \else
685        \renewcommand\newblock{\hskip .11em \@plus.33em \@minus.07em}%
686      \fi
687      \sloppy\clubpenalty4000\widowpenalty4000%
688      \sfcode`\.=\@m}
689     {\def\@noitemerr
690       {\@latex@warning{Empty `thebibliography' environment}}%
691      \endlist}
692\def\@lbibitem[#1]#2{\item[{[#1]}\hfill]\if@filesw
693     {\let\protect\noexpand\immediate
694     \write\@auxout{\string\bibcite{#2}{#1}}}\fi\ignorespaces}
695\newcount\@tempcntc
696\def\@citex[#1]#2{\if@filesw\immediate\write\@auxout{\string\citation{#2}}\fi
697  \@tempcnta\z@\@tempcntb\m@ne\def\@citea{}\@cite{\@for\@citeb:=#2\do
698    {\@ifundefined
699       {b@\@citeb}{\@citeo\@tempcntb\m@ne\@citea\def\@citea{,}{\bfseries
700        ?}\@warning
701       {Citation `\@citeb' on page \thepage \space undefined}}%
702    {\setbox\z@\hbox{\global\@tempcntc0\csname b@\@citeb\endcsname\relax}%
703     \ifnum\@tempcntc=\z@ \@citeo\@tempcntb\m@ne
704       \@citea\def\@citea{,}\hbox{\csname b@\@citeb\endcsname}%
705     \else
706      \advance\@tempcntb\@ne
707      \ifnum\@tempcntb=\@tempcntc
708      \else\advance\@tempcntb\m@ne\@citeo
709      \@tempcnta\@tempcntc\@tempcntb\@tempcntc\fi\fi}}\@citeo}{#1}}
710\def\@citeo{\ifnum\@tempcnta>\@tempcntb\else
711               \@citea\def\@citea{,\,\hskip\z@skip}%
712               \ifnum\@tempcnta=\@tempcntb\the\@tempcnta\else
713               {\advance\@tempcnta\@ne\ifnum\@tempcnta=\@tempcntb \else
714                \def\@citea{--}\fi
715      \advance\@tempcnta\m@ne\the\@tempcnta\@citea\the\@tempcntb}\fi\fi}
716\else
717\renewenvironment{thebibliography}[1]
718     {\section*{\refname}
719      \small
720      \list{}%
721           {\settowidth\labelwidth{}%
722            \leftmargin\parindent
723            \itemindent=-\parindent
724            \labelsep=\z@
725            \if@openbib
726              \advance\leftmargin\bibindent
727              \itemindent -\bibindent
728              \listparindent \itemindent
729              \parsep \z@
730            \fi
731            \usecounter{enumiv}%
732            \let\p@enumiv\@empty
733            \renewcommand\theenumiv{}}%
734      \if@openbib
735        \renewcommand\newblock{\par}%
736      \else
737        \renewcommand\newblock{\hskip .11em \@plus.33em \@minus.07em}%
738      \fi
739      \sloppy\clubpenalty4000\widowpenalty4000%
740      \sfcode`\.=\@m}
741     {\def\@noitemerr
742       {\@latex@warning{Empty `thebibliography' environment}}%
743      \endlist}
744      \def\@cite#1{#1}%
745      \def\@lbibitem[#1]#2{\item[]\if@filesw
746        {\def\protect##1{\string ##1\space}\immediate
747      \write\@auxout{\string\bibcite{#2}{#1}}}\fi\ignorespaces}
748   \fi
749\else
750\@cons\@openbib@code{\noexpand\small}
751\fi
752
753\def\idxquad{\hskip 10\p@}% space that divides entry from number
754
755\def\@idxitem{\par\hangindent 10\p@}
756
757\def\subitem{\par\setbox0=\hbox{--\enspace}% second order
758                \noindent\hangindent\wd0\box0}% index entry
759
760\def\subsubitem{\par\setbox0=\hbox{--\,--\enspace}% third
761                \noindent\hangindent\wd0\box0}% order index entry
762
763\def\indexspace{\par \vskip 10\p@ plus5\p@ minus3\p@\relax}
764
765\renewenvironment{theindex}
766               {\@mkboth{\indexname}{\indexname}%
767                \thispagestyle{empty}\parindent\z@
768                \parskip\z@ \@plus .3\p@\relax
769                \let\item\par
770                \def\,{\relax\ifmmode\mskip\thinmuskip
771                             \else\hskip0.2em\ignorespaces\fi}%
772                \normalfont\small
773                \begin{multicols}{2}[\@makeschapterhead{\indexname}]%
774                }
775                {\end{multicols}}
776
777\renewcommand\footnoterule{%
778  \kern-3\p@
779  \hrule\@width 2truecm
780  \kern2.6\p@}
781  \newdimen\fnindent
782  \fnindent1em
783\long\def\@makefntext#1{%
784    \parindent \fnindent%
785    \leftskip \fnindent%
786    \noindent
787    \llap{\hb@xt@1em{\hss\@makefnmark\ }}\ignorespaces#1}
788
789\long\def\@makecaption#1#2{%
790  \small
791  \vskip\abovecaptionskip
792  \sbox\@tempboxa{{\bfseries #1.} #2}%
793  \ifdim \wd\@tempboxa >\hsize
794    {\bfseries #1.} #2\par
795  \else
796    \global \@minipagefalse
797    \hb@xt@\hsize{\hfil\box\@tempboxa\hfil}%
798  \fi
799  \vskip\belowcaptionskip}
800
801\def\fps@figure{htbp}
802\def\fnum@figure{\figurename\thinspace\thefigure}
803\def \@floatboxreset {%
804        \reset@font
805        \small
806        \@setnobreak
807        \@setminipage
808}
809\def\fps@table{htbp}
810\def\fnum@table{\tablename~\thetable}
811\renewenvironment{table}
812               {\setlength\abovecaptionskip{0\p@}%
813                \setlength\belowcaptionskip{10\p@}%
814                \@float{table}}
815               {\end@float}
816\renewenvironment{table*}
817               {\setlength\abovecaptionskip{0\p@}%
818                \setlength\belowcaptionskip{10\p@}%
819                \@dblfloat{table}}
820               {\end@dblfloat}
821
822\long\def\@caption#1[#2]#3{\par\addcontentsline{\csname
823  ext@#1\endcsname}{#1}{\protect\numberline{\csname
824  the#1\endcsname}{\ignorespaces #2}}\begingroup
825    \@parboxrestore
826    \@makecaption{\csname fnum@#1\endcsname}{\ignorespaces #3}\par
827  \endgroup}
828
829% LaTeX does not provide a command to enter the authors institute
830% addresses. The \institute command is defined here.
831
832\newcounter{@inst}
833\newcounter{@auth}
834\newcounter{auco}
835\newdimen\instindent
836\newbox\authrun
837\newtoks\authorrunning
838\newtoks\tocauthor
839\newbox\titrun
840\newtoks\titlerunning
841\newtoks\toctitle
842
843\def\clearheadinfo{\gdef\@author{No Author Given}%
844                   \gdef\@title{No Title Given}%
845                   \gdef\@subtitle{}%
846                   \gdef\@institute{No Institute Given}%
847                   \gdef\@thanks{}%
848                   \global\titlerunning={}\global\authorrunning={}%
849                   \global\toctitle={}\global\tocauthor={}}
850
851\def\institute#1{\gdef\@institute{#1}}
852
853\def\institutename{\par
854 \begingroup
855 \parskip=\z@
856 \parindent=\z@
857 \setcounter{@inst}{1}%
858 \def\and{\par\stepcounter{@inst}%
859 \noindent$^{\the@inst}$\enspace\ignorespaces}%
860 \setbox0=\vbox{\def\thanks##1{}\@institute}%
861 \ifnum\c@@inst=1\relax
862   \gdef\fnnstart{0}%
863 \else
864   \xdef\fnnstart{\c@@inst}%
865   \setcounter{@inst}{1}%
866   \noindent$^{\the@inst}$\enspace
867 \fi
868 \ignorespaces
869 \@institute\par
870 \endgroup}
871
872\def\@fnsymbol#1{\ensuremath{\ifcase#1\or\star\or{\star\star}\or
873   {\star\star\star}\or \dagger\or \ddagger\or
874   \mathchar "278\or \mathchar "27B\or \|\or **\or \dagger\dagger
875   \or \ddagger\ddagger \else\@ctrerr\fi}}
876
877\def\inst#1{\unskip$^{#1}$}
878\def\fnmsep{\unskip$^,$}
879\def\email#1{{\tt#1}}
880\AtBeginDocument{\@ifundefined{url}{\def\url#1{#1}}{}%
881\@ifpackageloaded{babel}{%
882\@ifundefined{extrasenglish}{}{\addto\extrasenglish{\switcht@albion}}%
883\@ifundefined{extrasfrenchb}{}{\addto\extrasfrenchb{\switcht@francais}}%
884\@ifundefined{extrasgerman}{}{\addto\extrasgerman{\switcht@deutsch}}%
885}{\switcht@@therlang}%
886\providecommand{\keywords}[1]{\par\addvspace\baselineskip
887\noindent\keywordname\enspace\ignorespaces#1}%
888}
889\def\homedir{\~{ }}
890
891\def\subtitle#1{\gdef\@subtitle{#1}}
892\clearheadinfo
893%
894%%% to avoid hyperref warnings
895\providecommand*{\toclevel@author}{999}
896%%% to make title-entry parent of section-entries
897\providecommand*{\toclevel@title}{0}
898%
899\renewcommand\maketitle{\newpage
900\phantomsection
901  \refstepcounter{chapter}%
902  \stepcounter{section}%
903  \setcounter{section}{0}%
904  \setcounter{subsection}{0}%
905  \setcounter{figure}{0}
906  \setcounter{table}{0}
907  \setcounter{equation}{0}
908  \setcounter{footnote}{0}%
909  \begingroup
910    \parindent=\z@
911    \renewcommand\thefootnote{\@fnsymbol\c@footnote}%
912    \if@twocolumn
913      \ifnum \col@number=\@ne
914        \@maketitle
915      \else
916        \twocolumn[\@maketitle]%
917      \fi
918    \else
919      \newpage
920      \global\@topnum\z@   % Prevents figures from going at top of page.
921      \@maketitle
922    \fi
923    \thispagestyle{empty}\@thanks
924%
925    \def\\{\unskip\ \ignorespaces}\def\inst##1{\unskip{}}%
926    \def\thanks##1{\unskip{}}\def\fnmsep{\unskip}%
927    \instindent=\hsize
928    \advance\instindent by-\headlineindent
929    \if!\the\toctitle!\addcontentsline{toc}{title}{\@title}\else
930       \addcontentsline{toc}{title}{\the\toctitle}\fi
931    \if@runhead
932       \if!\the\titlerunning!\else
933         \edef\@title{\the\titlerunning}%
934       \fi
935       \global\setbox\titrun=\hbox{\small\rm\unboldmath\ignorespaces\@title}%
936       \ifdim\wd\titrun>\instindent
937          \typeout{Title too long for running head. Please supply}%
938          \typeout{a shorter form with \string\titlerunning\space prior to
939                   \string\maketitle}%
940          \global\setbox\titrun=\hbox{\small\rm
941          Title Suppressed Due to Excessive Length}%
942       \fi
943       \xdef\@title{\copy\titrun}%
944    \fi
945%
946    \if!\the\tocauthor!\relax
947      {\def\and{\noexpand\protect\noexpand\and}%
948      \protected@xdef\toc@uthor{\@author}}%
949    \else
950      \def\\{\noexpand\protect\noexpand\newline}%
951      \protected@xdef\scratch{\the\tocauthor}%
952      \protected@xdef\toc@uthor{\scratch}%
953    \fi
954    \addtocontents{toc}{\noexpand\protect\noexpand\authcount{\the\c@auco}}%
955    \addcontentsline{toc}{author}{\toc@uthor}%
956    \if@runhead
957       \if!\the\authorrunning!
958         \value{@inst}=\value{@auth}%
959         \setcounter{@auth}{1}%
960       \else
961         \edef\@author{\the\authorrunning}%
962       \fi
963       \global\setbox\authrun=\hbox{\small\unboldmath\@author\unskip}%
964       \ifdim\wd\authrun>\instindent
965          \typeout{Names of authors too long for running head. Please supply}%
966          \typeout{a shorter form with \string\authorrunning\space prior to
967                   \string\maketitle}%
968          \global\setbox\authrun=\hbox{\small\rm
969          Authors Suppressed Due to Excessive Length}%
970       \fi
971       \xdef\@author{\copy\authrun}%
972       \markboth{\@author}{\@title}%
973     \fi
974  \endgroup
975  \setcounter{footnote}{\fnnstart}%
976  \clearheadinfo}
977%
978\def\@maketitle{\newpage
979 \markboth{}{}%
980 \def\lastand{\ifnum\value{@inst}=2\relax
981                 \unskip{} \andname\
982              \else
983                 \unskip \lastandname\
984              \fi}%
985 \def\and{\stepcounter{@auth}\relax
986          \ifnum\value{@auth}=\value{@inst}%
987             \lastand
988          \else
989             \unskip,
990          \fi}%
991 \begin{center}%
992 \let\newline\\
993 {\Large \bfseries\boldmath
994  \pretolerance=10000
995  \@title \par}\vskip .8cm
996\if!\@subtitle!\else {\large \bfseries\boldmath
997  \vskip -.65cm
998  \pretolerance=10000
999  \@subtitle \par}\vskip .8cm\fi
1000 \setbox0=\vbox{\setcounter{@auth}{1}\def\and{\stepcounter{@auth}}%
1001 \def\thanks##1{}\@author}%
1002 \global\value{@inst}=\value{@auth}%
1003 \global\value{auco}=\value{@auth}%
1004 \setcounter{@auth}{1}%
1005{\lineskip .5em
1006\noindent\ignorespaces
1007\@author\vskip.35cm}
1008 {\small\institutename}
1009 \end{center}%
1010 }
1011
1012% definition of the "\spnewtheorem" command.
1013%
1014% Usage:
1015%
1016%     \spnewtheorem{env_nam}{caption}[within]{cap_font}{body_font}
1017% or  \spnewtheorem{env_nam}[numbered_like]{caption}{cap_font}{body_font}
1018% or  \spnewtheorem*{env_nam}{caption}{cap_font}{body_font}
1019%
1020% New is "cap_font" and "body_font". It stands for
1021% fontdefinition of the caption and the text itself.
1022%
1023% "\spnewtheorem*" gives a theorem without number.
1024%
1025% A defined spnewthoerem environment is used as described
1026% by Lamport.
1027%
1028%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1029
1030\def\@thmcountersep{}
1031\def\@thmcounterend{.}
1032
1033\def\spnewtheorem{\@ifstar{\@sthm}{\@Sthm}}
1034
1035% definition of \spnewtheorem with number
1036
1037\def\@spnthm#1#2{%
1038  \@ifnextchar[{\@spxnthm{#1}{#2}}{\@spynthm{#1}{#2}}}
1039\def\@Sthm#1{\@ifnextchar[{\@spothm{#1}}{\@spnthm{#1}}}
1040
1041\def\@spxnthm#1#2[#3]#4#5{\expandafter\@ifdefinable\csname #1\endcsname
1042   {\@definecounter{#1}\@addtoreset{#1}{#3}%
1043   \expandafter\xdef\csname the#1\endcsname{\expandafter\noexpand
1044     \csname the#3\endcsname \noexpand\@thmcountersep \@thmcounter{#1}}%
1045   \expandafter\xdef\csname #1name\endcsname{#2}%
1046   \global\@namedef{#1}{\@spthm{#1}{\csname #1name\endcsname}{#4}{#5}}%
1047                              \global\@namedef{end#1}{\@endtheorem}}}
1048
1049\def\@spynthm#1#2#3#4{\expandafter\@ifdefinable\csname #1\endcsname
1050   {\@definecounter{#1}%
1051   \expandafter\xdef\csname the#1\endcsname{\@thmcounter{#1}}%
1052   \expandafter\xdef\csname #1name\endcsname{#2}%
1053   \global\@namedef{#1}{\@spthm{#1}{\csname #1name\endcsname}{#3}{#4}}%
1054                               \global\@namedef{end#1}{\@endtheorem}}}
1055
1056\def\@spothm#1[#2]#3#4#5{%
1057  \@ifundefined{c@#2}{\@latexerr{No theorem environment `#2' defined}\@eha}%
1058  {\expandafter\@ifdefinable\csname #1\endcsname
1059  {\newaliascnt{#1}{#2}%
1060  \expandafter\xdef\csname #1name\endcsname{#3}%
1061  \global\@namedef{#1}{\@spthm{#1}{\csname #1name\endcsname}{#4}{#5}}%
1062  \global\@namedef{end#1}{\@endtheorem}}}}
1063
1064\def\@spthm#1#2#3#4{\topsep 7\p@ \@plus2\p@ \@minus4\p@
1065\refstepcounter{#1}%
1066\@ifnextchar[{\@spythm{#1}{#2}{#3}{#4}}{\@spxthm{#1}{#2}{#3}{#4}}}
1067
1068\def\@spxthm#1#2#3#4{\@spbegintheorem{#2}{\csname the#1\endcsname}{#3}{#4}%
1069                    \ignorespaces}
1070
1071\def\@spythm#1#2#3#4[#5]{\@spopargbegintheorem{#2}{\csname
1072       the#1\endcsname}{#5}{#3}{#4}\ignorespaces}
1073
1074\def\@spbegintheorem#1#2#3#4{\trivlist
1075                 \item[\hskip\labelsep{#3#1\ #2\@thmcounterend}]#4}
1076
1077\def\@spopargbegintheorem#1#2#3#4#5{\trivlist
1078      \item[\hskip\labelsep{#4#1\ #2}]{#4(#3)\@thmcounterend\ }#5}
1079
1080% definition of \spnewtheorem* without number
1081
1082\def\@sthm#1#2{\@Ynthm{#1}{#2}}
1083
1084\def\@Ynthm#1#2#3#4{\expandafter\@ifdefinable\csname #1\endcsname
1085   {\global\@namedef{#1}{\@Thm{\csname #1name\endcsname}{#3}{#4}}%
1086    \expandafter\xdef\csname #1name\endcsname{#2}%
1087    \global\@namedef{end#1}{\@endtheorem}}}
1088
1089\def\@Thm#1#2#3{\topsep 7\p@ \@plus2\p@ \@minus4\p@
1090\@ifnextchar[{\@Ythm{#1}{#2}{#3}}{\@Xthm{#1}{#2}{#3}}}
1091
1092\def\@Xthm#1#2#3{\@Begintheorem{#1}{#2}{#3}\ignorespaces}
1093
1094\def\@Ythm#1#2#3[#4]{\@Opargbegintheorem{#1}
1095       {#4}{#2}{#3}\ignorespaces}
1096
1097\def\@Begintheorem#1#2#3{#3\trivlist
1098                           \item[\hskip\labelsep{#2#1\@thmcounterend}]}
1099
1100\def\@Opargbegintheorem#1#2#3#4{#4\trivlist
1101      \item[\hskip\labelsep{#3#1}]{#3(#2)\@thmcounterend\ }}
1102
1103\if@envcntsect
1104   \def\@thmcountersep{.}
1105   \spnewtheorem{theorem}{Theorem}[section]{\bfseries}{\itshape}
1106\else
1107   \spnewtheorem{theorem}{Theorem}{\bfseries}{\itshape}
1108   \if@envcntreset
1109      \@addtoreset{theorem}{section}
1110   \else
1111      \@addtoreset{theorem}{chapter}
1112   \fi
1113\fi
1114
1115%definition of divers theorem environments
1116\spnewtheorem*{claim}{Claim}{\itshape}{\rmfamily}
1117\spnewtheorem*{proof}{Proof}{\itshape}{\rmfamily}
1118\if@envcntsame % alle Umgebungen wie Theorem.
1119   \def\spn@wtheorem#1#2#3#4{\@spothm{#1}[theorem]{#2}{#3}{#4}}
1120\else % alle Umgebungen mit eigenem Zaehler
1121   \if@envcntsect % mit section numeriert
1122      \def\spn@wtheorem#1#2#3#4{\@spxnthm{#1}{#2}[section]{#3}{#4}}
1123   \else % nicht mit section numeriert
1124      \if@envcntreset
1125         \def\spn@wtheorem#1#2#3#4{\@spynthm{#1}{#2}{#3}{#4}
1126                                   \@addtoreset{#1}{section}}
1127      \else
1128         \def\spn@wtheorem#1#2#3#4{\@spynthm{#1}{#2}{#3}{#4}
1129                                   \@addtoreset{#1}{chapter}}%
1130      \fi
1131   \fi
1132\fi
1133\spn@wtheorem{case}{Case}{\itshape}{\rmfamily}
1134\spn@wtheorem{conjecture}{Conjecture}{\itshape}{\rmfamily}
1135\spn@wtheorem{corollary}{Corollary}{\bfseries}{\itshape}
1136\spn@wtheorem{definition}{Definition}{\bfseries}{\itshape}
1137\spn@wtheorem{example}{Example}{\itshape}{\rmfamily}
1138\spn@wtheorem{exercise}{Exercise}{\itshape}{\rmfamily}
1139\spn@wtheorem{lemma}{Lemma}{\bfseries}{\itshape}
1140\spn@wtheorem{note}{Note}{\itshape}{\rmfamily}
1141\spn@wtheorem{problem}{Problem}{\itshape}{\rmfamily}
1142\spn@wtheorem{property}{Property}{\itshape}{\rmfamily}
1143\spn@wtheorem{proposition}{Proposition}{\bfseries}{\itshape}
1144\spn@wtheorem{question}{Question}{\itshape}{\rmfamily}
1145\spn@wtheorem{solution}{Solution}{\itshape}{\rmfamily}
1146\spn@wtheorem{remark}{Remark}{\itshape}{\rmfamily}
1147
1148\def\@takefromreset#1#2{%
1149    \def\@tempa{#1}%
1150    \let\@tempd\@elt
1151    \def\@elt##1{%
1152        \def\@tempb{##1}%
1153        \ifx\@tempa\@tempb\else
1154            \@addtoreset{##1}{#2}%
1155        \fi}%
1156    \expandafter\expandafter\let\expandafter\@tempc\csname cl@#2\endcsname
1157    \expandafter\def\csname cl@#2\endcsname{}%
1158    \@tempc
1159    \let\@elt\@tempd}
1160
1161\def\theopargself{\def\@spopargbegintheorem##1##2##3##4##5{\trivlist
1162      \item[\hskip\labelsep{##4##1\ ##2}]{##4##3\@thmcounterend\ }##5}
1163                  \def\@Opargbegintheorem##1##2##3##4{##4\trivlist
1164      \item[\hskip\labelsep{##3##1}]{##3##2\@thmcounterend\ }}
1165      }
1166
1167\renewenvironment{abstract}{%
1168      \list{}{\advance\topsep by0.35cm\relax\small
1169      \leftmargin=1cm
1170      \labelwidth=\z@
1171      \listparindent=\z@
1172      \itemindent\listparindent
1173      \rightmargin\leftmargin}\item[\hskip\labelsep
1174                                    \bfseries\abstractname]}
1175    {\endlist}
1176
1177\newdimen\headlineindent             % dimension for space between
1178\headlineindent=1.166cm              % number and text of headings.
1179
1180\def\ps@headings{\let\@mkboth\@gobbletwo
1181   \let\@oddfoot\@empty\let\@evenfoot\@empty
1182   \def\@evenhead{\normalfont\small\rlap{\thepage}\hspace{\headlineindent}%
1183                  \leftmark\hfil}
1184   \def\@oddhead{\normalfont\small\hfil\rightmark\hspace{\headlineindent}%
1185                 \llap{\thepage}}
1186   \def\chaptermark##1{}%
1187   \def\sectionmark##1{}%
1188   \def\subsectionmark##1{}}
1189
1190\def\ps@titlepage{\let\@mkboth\@gobbletwo
1191   \let\@oddfoot\@empty\let\@evenfoot\@empty
1192   \def\@evenhead{\normalfont\small\rlap{\thepage}\hspace{\headlineindent}%
1193                  \hfil}
1194   \def\@oddhead{\normalfont\small\hfil\hspace{\headlineindent}%
1195                 \llap{\thepage}}
1196   \def\chaptermark##1{}%
1197   \def\sectionmark##1{}%
1198   \def\subsectionmark##1{}}
1199
1200\if@runhead\ps@headings\else
1201\ps@empty\fi
1202
1203\setlength\arraycolsep{1.4\p@}
1204\setlength\tabcolsep{1.4\p@}
1205
1206\endinput
1207%end of file llncs.cls
Note: See TracBrowser for help on using the repository browser.