root / clanki / clanek_gga / llncs.cls @ 2
History | View | Annotate | Download (41.8 KB)
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 |
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 |
}{\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 |