|
1 % LLNCS DOCUMENT CLASS -- version 2.19 (31-Mar-2014) |
|
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}[2014/03/31 v2.19 |
|
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 |
|
360 You 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 |
|
434 to0pt{\kern0.4\wd0\vrule height0.9\ht0\hss}\box0}} |
|
435 {\setbox0=\hbox{$\textstyle\rm C$}\hbox{\hbox |
|
436 to0pt{\kern0.4\wd0\vrule height0.9\ht0\hss}\box0}} |
|
437 {\setbox0=\hbox{$\scriptstyle\rm C$}\hbox{\hbox |
|
438 to0pt{\kern0.4\wd0\vrule height0.9\ht0\hss}\box0}} |
|
439 {\setbox0=\hbox{$\scriptscriptstyle\rm C$}\hbox{\hbox |
|
440 to0pt{\kern0.4\wd0\vrule height0.9\ht0\hss}\box0}}}} |
|
441 \def\bbbq{{\mathchoice {\setbox0=\hbox{$\displaystyle\rm |
|
442 Q$}\hbox{\raise |
|
443 0.15\ht0\hbox to0pt{\kern0.4\wd0\vrule height0.8\ht0\hss}\box0}} |
|
444 {\setbox0=\hbox{$\textstyle\rm Q$}\hbox{\raise |
|
445 0.15\ht0\hbox to0pt{\kern0.4\wd0\vrule height0.8\ht0\hss}\box0}} |
|
446 {\setbox0=\hbox{$\scriptstyle\rm Q$}\hbox{\raise |
|
447 0.15\ht0\hbox to0pt{\kern0.4\wd0\vrule height0.7\ht0\hss}\box0}} |
|
448 {\setbox0=\hbox{$\scriptscriptstyle\rm Q$}\hbox{\raise |
|
449 0.15\ht0\hbox to0pt{\kern0.4\wd0\vrule height0.7\ht0\hss}\box0}}}} |
|
450 \def\bbbt{{\mathchoice {\setbox0=\hbox{$\displaystyle\rm |
|
451 T$}\hbox{\hbox to0pt{\kern0.3\wd0\vrule height0.9\ht0\hss}\box0}} |
|
452 {\setbox0=\hbox{$\textstyle\rm T$}\hbox{\hbox |
|
453 to0pt{\kern0.3\wd0\vrule height0.9\ht0\hss}\box0}} |
|
454 {\setbox0=\hbox{$\scriptstyle\rm T$}\hbox{\hbox |
|
455 to0pt{\kern0.3\wd0\vrule height0.9\ht0\hss}\box0}} |
|
456 {\setbox0=\hbox{$\scriptscriptstyle\rm T$}\hbox{\hbox |
|
457 to0pt{\kern0.3\wd0\vrule height0.9\ht0\hss}\box0}}}} |
|
458 \def\bbbs{{\mathchoice |
|
459 {\setbox0=\hbox{$\displaystyle \rm S$}\hbox{\raise0.5\ht0\hbox |
|
460 to0pt{\kern0.35\wd0\vrule height0.45\ht0\hss}\hbox |
|
461 to0pt{\kern0.55\wd0\vrule height0.5\ht0\hss}\box0}} |
|
462 {\setbox0=\hbox{$\textstyle \rm S$}\hbox{\raise0.5\ht0\hbox |
|
463 to0pt{\kern0.35\wd0\vrule height0.45\ht0\hss}\hbox |
|
464 to0pt{\kern0.55\wd0\vrule height0.5\ht0\hss}\box0}} |
|
465 {\setbox0=\hbox{$\scriptstyle \rm S$}\hbox{\raise0.5\ht0\hbox |
|
466 to0pt{\kern0.35\wd0\vrule height0.45\ht0\hss}\raise0.05\ht0\hbox |
|
467 to0pt{\kern0.5\wd0\vrule height0.45\ht0\hss}\box0}} |
|
468 {\setbox0=\hbox{$\scriptscriptstyle\rm S$}\hbox{\raise0.5\ht0\hbox |
|
469 to0pt{\kern0.4\wd0\vrule height0.45\ht0\hss}\raise0.05\ht0\hbox |
|
470 to0pt{\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 \@ifundefined{extrasngerman}{}{\addto\extrasngerman{\switcht@deutsch}}% |
|
886 }{\switcht@@therlang}% |
|
887 \providecommand{\keywords}[1]{\par\addvspace\baselineskip |
|
888 \noindent\keywordname\enspace\ignorespaces#1}% |
|
889 } |
|
890 \def\homedir{\~{ }} |
|
891 |
|
892 \def\subtitle#1{\gdef\@subtitle{#1}} |
|
893 \clearheadinfo |
|
894 % |
|
895 %%% to avoid hyperref warnings |
|
896 \providecommand*{\toclevel@author}{999} |
|
897 %%% to make title-entry parent of section-entries |
|
898 \providecommand*{\toclevel@title}{0} |
|
899 % |
|
900 \renewcommand\maketitle{\newpage |
|
901 \phantomsection |
|
902 \refstepcounter{chapter}% |
|
903 \stepcounter{section}% |
|
904 \setcounter{section}{0}% |
|
905 \setcounter{subsection}{0}% |
|
906 \setcounter{figure}{0} |
|
907 \setcounter{table}{0} |
|
908 \setcounter{equation}{0} |
|
909 \setcounter{footnote}{0}% |
|
910 \begingroup |
|
911 \parindent=\z@ |
|
912 \renewcommand\thefootnote{\@fnsymbol\c@footnote}% |
|
913 \if@twocolumn |
|
914 \ifnum \col@number=\@ne |
|
915 \@maketitle |
|
916 \else |
|
917 \twocolumn[\@maketitle]% |
|
918 \fi |
|
919 \else |
|
920 \newpage |
|
921 \global\@topnum\z@ % Prevents figures from going at top of page. |
|
922 \@maketitle |
|
923 \fi |
|
924 \thispagestyle{empty}\@thanks |
|
925 % |
|
926 \def\\{\unskip\ \ignorespaces}\def\inst##1{\unskip{}}% |
|
927 \def\thanks##1{\unskip{}}\def\fnmsep{\unskip}% |
|
928 \instindent=\hsize |
|
929 \advance\instindent by-\headlineindent |
|
930 \if!\the\toctitle!\addcontentsline{toc}{title}{\@title}\else |
|
931 \addcontentsline{toc}{title}{\the\toctitle}\fi |
|
932 \if@runhead |
|
933 \if!\the\titlerunning!\else |
|
934 \edef\@title{\the\titlerunning}% |
|
935 \fi |
|
936 \global\setbox\titrun=\hbox{\small\rm\unboldmath\ignorespaces\@title}% |
|
937 \ifdim\wd\titrun>\instindent |
|
938 \typeout{Title too long for running head. Please supply}% |
|
939 \typeout{a shorter form with \string\titlerunning\space prior to |
|
940 \string\maketitle}% |
|
941 \global\setbox\titrun=\hbox{\small\rm |
|
942 Title Suppressed Due to Excessive Length}% |
|
943 \fi |
|
944 \xdef\@title{\copy\titrun}% |
|
945 \fi |
|
946 % |
|
947 \if!\the\tocauthor!\relax |
|
948 {\def\and{\noexpand\protect\noexpand\and}% |
|
949 \protected@xdef\toc@uthor{\@author}}% |
|
950 \else |
|
951 \def\\{\noexpand\protect\noexpand\newline}% |
|
952 \protected@xdef\scratch{\the\tocauthor}% |
|
953 \protected@xdef\toc@uthor{\scratch}% |
|
954 \fi |
|
955 \addtocontents{toc}{\noexpand\protect\noexpand\authcount{\the\c@auco}}% |
|
956 \addcontentsline{toc}{author}{\toc@uthor}% |
|
957 \if@runhead |
|
958 \if!\the\authorrunning! |
|
959 \value{@inst}=\value{@auth}% |
|
960 \setcounter{@auth}{1}% |
|
961 \else |
|
962 \edef\@author{\the\authorrunning}% |
|
963 \fi |
|
964 \global\setbox\authrun=\hbox{\small\unboldmath\@author\unskip}% |
|
965 \ifdim\wd\authrun>\instindent |
|
966 \typeout{Names of authors too long for running head. Please supply}% |
|
967 \typeout{a shorter form with \string\authorrunning\space prior to |
|
968 \string\maketitle}% |
|
969 \global\setbox\authrun=\hbox{\small\rm |
|
970 Authors Suppressed Due to Excessive Length}% |
|
971 \fi |
|
972 \xdef\@author{\copy\authrun}% |
|
973 \markboth{\@author}{\@title}% |
|
974 \fi |
|
975 \endgroup |
|
976 \setcounter{footnote}{\fnnstart}% |
|
977 \clearheadinfo} |
|
978 % |
|
979 \def\@maketitle{\newpage |
|
980 \markboth{}{}% |
|
981 \def\lastand{\ifnum\value{@inst}=2\relax |
|
982 \unskip{} \andname\ |
|
983 \else |
|
984 \unskip \lastandname\ |
|
985 \fi}% |
|
986 \def\and{\stepcounter{@auth}\relax |
|
987 \ifnum\value{@auth}=\value{@inst}% |
|
988 \lastand |
|
989 \else |
|
990 \unskip, |
|
991 \fi}% |
|
992 \begin{center}% |
|
993 \let\newline\\ |
|
994 {\Large \bfseries\boldmath |
|
995 \pretolerance=10000 |
|
996 \@title \par}\vskip .8cm |
|
997 \if!\@subtitle!\else {\large \bfseries\boldmath |
|
998 \vskip -.65cm |
|
999 \pretolerance=10000 |
|
1000 \@subtitle \par}\vskip .8cm\fi |
|
1001 \setbox0=\vbox{\setcounter{@auth}{1}\def\and{\stepcounter{@auth}}% |
|
1002 \def\thanks##1{}\@author}% |
|
1003 \global\value{@inst}=\value{@auth}% |
|
1004 \global\value{auco}=\value{@auth}% |
|
1005 \setcounter{@auth}{1}% |
|
1006 {\lineskip .5em |
|
1007 \noindent\ignorespaces |
|
1008 \@author\vskip.35cm} |
|
1009 {\small\institutename} |
|
1010 \end{center}% |
|
1011 } |
|
1012 |
|
1013 % definition of the "\spnewtheorem" command. |
|
1014 % |
|
1015 % Usage: |
|
1016 % |
|
1017 % \spnewtheorem{env_nam}{caption}[within]{cap_font}{body_font} |
|
1018 % or \spnewtheorem{env_nam}[numbered_like]{caption}{cap_font}{body_font} |
|
1019 % or \spnewtheorem*{env_nam}{caption}{cap_font}{body_font} |
|
1020 % |
|
1021 % New is "cap_font" and "body_font". It stands for |
|
1022 % fontdefinition of the caption and the text itself. |
|
1023 % |
|
1024 % "\spnewtheorem*" gives a theorem without number. |
|
1025 % |
|
1026 % A defined spnewthoerem environment is used as described |
|
1027 % by Lamport. |
|
1028 % |
|
1029 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
|
1030 |
|
1031 \def\@thmcountersep{} |
|
1032 \def\@thmcounterend{.} |
|
1033 |
|
1034 \def\spnewtheorem{\@ifstar{\@sthm}{\@Sthm}} |
|
1035 |
|
1036 % definition of \spnewtheorem with number |
|
1037 |
|
1038 \def\@spnthm#1#2{% |
|
1039 \@ifnextchar[{\@spxnthm{#1}{#2}}{\@spynthm{#1}{#2}}} |
|
1040 \def\@Sthm#1{\@ifnextchar[{\@spothm{#1}}{\@spnthm{#1}}} |
|
1041 |
|
1042 \def\@spxnthm#1#2[#3]#4#5{\expandafter\@ifdefinable\csname #1\endcsname |
|
1043 {\@definecounter{#1}\@addtoreset{#1}{#3}% |
|
1044 \expandafter\xdef\csname the#1\endcsname{\expandafter\noexpand |
|
1045 \csname the#3\endcsname \noexpand\@thmcountersep \@thmcounter{#1}}% |
|
1046 \expandafter\xdef\csname #1name\endcsname{#2}% |
|
1047 \global\@namedef{#1}{\@spthm{#1}{\csname #1name\endcsname}{#4}{#5}}% |
|
1048 \global\@namedef{end#1}{\@endtheorem}}} |
|
1049 |
|
1050 \def\@spynthm#1#2#3#4{\expandafter\@ifdefinable\csname #1\endcsname |
|
1051 {\@definecounter{#1}% |
|
1052 \expandafter\xdef\csname the#1\endcsname{\@thmcounter{#1}}% |
|
1053 \expandafter\xdef\csname #1name\endcsname{#2}% |
|
1054 \global\@namedef{#1}{\@spthm{#1}{\csname #1name\endcsname}{#3}{#4}}% |
|
1055 \global\@namedef{end#1}{\@endtheorem}}} |
|
1056 |
|
1057 \def\@spothm#1[#2]#3#4#5{% |
|
1058 \@ifundefined{c@#2}{\@latexerr{No theorem environment `#2' defined}\@eha}% |
|
1059 {\expandafter\@ifdefinable\csname #1\endcsname |
|
1060 {\newaliascnt{#1}{#2}% |
|
1061 \expandafter\xdef\csname #1name\endcsname{#3}% |
|
1062 \global\@namedef{#1}{\@spthm{#1}{\csname #1name\endcsname}{#4}{#5}}% |
|
1063 \global\@namedef{end#1}{\@endtheorem}}}} |
|
1064 |
|
1065 \def\@spthm#1#2#3#4{\topsep 7\p@ \@plus2\p@ \@minus4\p@ |
|
1066 \refstepcounter{#1}% |
|
1067 \@ifnextchar[{\@spythm{#1}{#2}{#3}{#4}}{\@spxthm{#1}{#2}{#3}{#4}}} |
|
1068 |
|
1069 \def\@spxthm#1#2#3#4{\@spbegintheorem{#2}{\csname the#1\endcsname}{#3}{#4}% |
|
1070 \ignorespaces} |
|
1071 |
|
1072 \def\@spythm#1#2#3#4[#5]{\@spopargbegintheorem{#2}{\csname |
|
1073 the#1\endcsname}{#5}{#3}{#4}\ignorespaces} |
|
1074 |
|
1075 \def\@spbegintheorem#1#2#3#4{\trivlist |
|
1076 \item[\hskip\labelsep{#3#1\ #2\@thmcounterend}]#4} |
|
1077 |
|
1078 \def\@spopargbegintheorem#1#2#3#4#5{\trivlist |
|
1079 \item[\hskip\labelsep{#4#1\ #2}]{#4(#3)\@thmcounterend\ }#5} |
|
1080 |
|
1081 % definition of \spnewtheorem* without number |
|
1082 |
|
1083 \def\@sthm#1#2{\@Ynthm{#1}{#2}} |
|
1084 |
|
1085 \def\@Ynthm#1#2#3#4{\expandafter\@ifdefinable\csname #1\endcsname |
|
1086 {\global\@namedef{#1}{\@Thm{\csname #1name\endcsname}{#3}{#4}}% |
|
1087 \expandafter\xdef\csname #1name\endcsname{#2}% |
|
1088 \global\@namedef{end#1}{\@endtheorem}}} |
|
1089 |
|
1090 \def\@Thm#1#2#3{\topsep 7\p@ \@plus2\p@ \@minus4\p@ |
|
1091 \@ifnextchar[{\@Ythm{#1}{#2}{#3}}{\@Xthm{#1}{#2}{#3}}} |
|
1092 |
|
1093 \def\@Xthm#1#2#3{\@Begintheorem{#1}{#2}{#3}\ignorespaces} |
|
1094 |
|
1095 \def\@Ythm#1#2#3[#4]{\@Opargbegintheorem{#1} |
|
1096 {#4}{#2}{#3}\ignorespaces} |
|
1097 |
|
1098 \def\@Begintheorem#1#2#3{#3\trivlist |
|
1099 \item[\hskip\labelsep{#2#1\@thmcounterend}]} |
|
1100 |
|
1101 \def\@Opargbegintheorem#1#2#3#4{#4\trivlist |
|
1102 \item[\hskip\labelsep{#3#1}]{#3(#2)\@thmcounterend\ }} |
|
1103 |
|
1104 \if@envcntsect |
|
1105 \def\@thmcountersep{.} |
|
1106 \spnewtheorem{theorem}{Theorem}[section]{\bfseries}{\itshape} |
|
1107 \else |
|
1108 \spnewtheorem{theorem}{Theorem}{\bfseries}{\itshape} |
|
1109 \if@envcntreset |
|
1110 \@addtoreset{theorem}{section} |
|
1111 \else |
|
1112 \@addtoreset{theorem}{chapter} |
|
1113 \fi |
|
1114 \fi |
|
1115 |
|
1116 %definition of divers theorem environments |
|
1117 \spnewtheorem*{claim}{Claim}{\itshape}{\rmfamily} |
|
1118 \spnewtheorem*{proof}{Proof}{\itshape}{\rmfamily} |
|
1119 \if@envcntsame % alle Umgebungen wie Theorem. |
|
1120 \def\spn@wtheorem#1#2#3#4{\@spothm{#1}[theorem]{#2}{#3}{#4}} |
|
1121 \else % alle Umgebungen mit eigenem Zaehler |
|
1122 \if@envcntsect % mit section numeriert |
|
1123 \def\spn@wtheorem#1#2#3#4{\@spxnthm{#1}{#2}[section]{#3}{#4}} |
|
1124 \else % nicht mit section numeriert |
|
1125 \if@envcntreset |
|
1126 \def\spn@wtheorem#1#2#3#4{\@spynthm{#1}{#2}{#3}{#4} |
|
1127 \@addtoreset{#1}{section}} |
|
1128 \else |
|
1129 \def\spn@wtheorem#1#2#3#4{\@spynthm{#1}{#2}{#3}{#4} |
|
1130 \@addtoreset{#1}{chapter}}% |
|
1131 \fi |
|
1132 \fi |
|
1133 \fi |
|
1134 \spn@wtheorem{case}{Case}{\itshape}{\rmfamily} |
|
1135 \spn@wtheorem{conjecture}{Conjecture}{\itshape}{\rmfamily} |
|
1136 \spn@wtheorem{corollary}{Corollary}{\bfseries}{\itshape} |
|
1137 \spn@wtheorem{definition}{Definition}{\bfseries}{\itshape} |
|
1138 \spn@wtheorem{example}{Example}{\itshape}{\rmfamily} |
|
1139 \spn@wtheorem{exercise}{Exercise}{\itshape}{\rmfamily} |
|
1140 \spn@wtheorem{lemma}{Lemma}{\bfseries}{\itshape} |
|
1141 \spn@wtheorem{note}{Note}{\itshape}{\rmfamily} |
|
1142 \spn@wtheorem{problem}{Problem}{\itshape}{\rmfamily} |
|
1143 \spn@wtheorem{property}{Property}{\itshape}{\rmfamily} |
|
1144 \spn@wtheorem{proposition}{Proposition}{\bfseries}{\itshape} |
|
1145 \spn@wtheorem{question}{Question}{\itshape}{\rmfamily} |
|
1146 \spn@wtheorem{solution}{Solution}{\itshape}{\rmfamily} |
|
1147 \spn@wtheorem{remark}{Remark}{\itshape}{\rmfamily} |
|
1148 |
|
1149 \def\@takefromreset#1#2{% |
|
1150 \def\@tempa{#1}% |
|
1151 \let\@tempd\@elt |
|
1152 \def\@elt##1{% |
|
1153 \def\@tempb{##1}% |
|
1154 \ifx\@tempa\@tempb\else |
|
1155 \@addtoreset{##1}{#2}% |
|
1156 \fi}% |
|
1157 \expandafter\expandafter\let\expandafter\@tempc\csname cl@#2\endcsname |
|
1158 \expandafter\def\csname cl@#2\endcsname{}% |
|
1159 \@tempc |
|
1160 \let\@elt\@tempd} |
|
1161 |
|
1162 \def\theopargself{\def\@spopargbegintheorem##1##2##3##4##5{\trivlist |
|
1163 \item[\hskip\labelsep{##4##1\ ##2}]{##4##3\@thmcounterend\ }##5} |
|
1164 \def\@Opargbegintheorem##1##2##3##4{##4\trivlist |
|
1165 \item[\hskip\labelsep{##3##1}]{##3##2\@thmcounterend\ }} |
|
1166 } |
|
1167 |
|
1168 \renewenvironment{abstract}{% |
|
1169 \list{}{\advance\topsep by0.35cm\relax\small |
|
1170 \leftmargin=1cm |
|
1171 \labelwidth=\z@ |
|
1172 \listparindent=\z@ |
|
1173 \itemindent\listparindent |
|
1174 \rightmargin\leftmargin}\item[\hskip\labelsep |
|
1175 \bfseries\abstractname]} |
|
1176 {\endlist} |
|
1177 |
|
1178 \newdimen\headlineindent % dimension for space between |
|
1179 \headlineindent=1.166cm % number and text of headings. |
|
1180 |
|
1181 \def\ps@headings{\let\@mkboth\@gobbletwo |
|
1182 \let\@oddfoot\@empty\let\@evenfoot\@empty |
|
1183 \def\@evenhead{\normalfont\small\rlap{\thepage}\hspace{\headlineindent}% |
|
1184 \leftmark\hfil} |
|
1185 \def\@oddhead{\normalfont\small\hfil\rightmark\hspace{\headlineindent}% |
|
1186 \llap{\thepage}} |
|
1187 \def\chaptermark##1{}% |
|
1188 \def\sectionmark##1{}% |
|
1189 \def\subsectionmark##1{}} |
|
1190 |
|
1191 \def\ps@titlepage{\let\@mkboth\@gobbletwo |
|
1192 \let\@oddfoot\@empty\let\@evenfoot\@empty |
|
1193 \def\@evenhead{\normalfont\small\rlap{\thepage}\hspace{\headlineindent}% |
|
1194 \hfil} |
|
1195 \def\@oddhead{\normalfont\small\hfil\hspace{\headlineindent}% |
|
1196 \llap{\thepage}} |
|
1197 \def\chaptermark##1{}% |
|
1198 \def\sectionmark##1{}% |
|
1199 \def\subsectionmark##1{}} |
|
1200 |
|
1201 \if@runhead\ps@headings\else |
|
1202 \ps@empty\fi |
|
1203 |
|
1204 \setlength\arraycolsep{1.4\p@} |
|
1205 \setlength\tabcolsep{1.4\p@} |
|
1206 |
|
1207 \endinput |
|
1208 %end of file llncs.cls |