Commit 56522b5b42e624e7766df9d4fe66750758817e04

Authored by Rodrigo Siqueira de Melo
1 parent 56e185d7

OSS template, based on mezuro OSS-2015

OSS-2016/aliascnt.sty 0 → 100644
... ... @@ -0,0 +1,88 @@
  1 +%%
  2 +%% This is file `aliascnt.sty',
  3 +%% generated with the docstrip utility.
  4 +%%
  5 +%% The original source files were:
  6 +%%
  7 +%% aliascnt.dtx (with options: `package')
  8 +%%
  9 +%% This is a generated file.
  10 +%%
  11 +%% Project: aliascnt
  12 +%% Version: 2009/09/08 v1.3
  13 +%%
  14 +%% Copyright (C) 2006, 2009 by
  15 +%% Heiko Oberdiek <heiko.oberdiek at googlemail.com>
  16 +%%
  17 +%% This work may be distributed and/or modified under the
  18 +%% conditions of the LaTeX Project Public License, either
  19 +%% version 1.3c of this license or (at your option) any later
  20 +%% version. This version of this license is in
  21 +%% http://www.latex-project.org/lppl/lppl-1-3c.txt
  22 +%% and the latest version of this license is in
  23 +%% http://www.latex-project.org/lppl.txt
  24 +%% and version 1.3 or later is part of all distributions of
  25 +%% LaTeX version 2005/12/01 or later.
  26 +%%
  27 +%% This work has the LPPL maintenance status "maintained".
  28 +%%
  29 +%% This Current Maintainer of this work is Heiko Oberdiek.
  30 +%%
  31 +%% This work consists of the main source file aliascnt.dtx
  32 +%% and the derived files
  33 +%% aliascnt.sty, aliascnt.pdf, aliascnt.ins, aliascnt.drv.
  34 +%%
  35 +\NeedsTeXFormat{LaTeX2e}
  36 +\ProvidesPackage{aliascnt}%
  37 + [2009/09/08 v1.3 Alias counter (HO)]%
  38 +\newcommand*{\newaliascnt}[2]{%
  39 + \begingroup
  40 + \def\AC@glet##1{%
  41 + \global\expandafter\let\csname##1#1\expandafter\endcsname
  42 + \csname##1#2\endcsname
  43 + }%
  44 + \@ifundefined{c@#2}{%
  45 + \@nocounterr{#2}%
  46 + }{%
  47 + \expandafter\@ifdefinable\csname c@#1\endcsname{%
  48 + \AC@glet{c@}%
  49 + \AC@glet{the}%
  50 + \AC@glet{theH}%
  51 + \AC@glet{p@}%
  52 + \expandafter\gdef\csname AC@cnt@#1\endcsname{#2}%
  53 + \expandafter\gdef\csname cl@#1\expandafter\endcsname
  54 + \expandafter{\csname cl@#2\endcsname}%
  55 + }%
  56 + }%
  57 + \endgroup
  58 +}
  59 +\newcommand*{\aliascntresetthe}[1]{%
  60 + \@ifundefined{AC@cnt@#1}{%
  61 + \PackageError{aliascnt}{%
  62 + `#1' is not an alias counter%
  63 + }\@ehc
  64 + }{%
  65 + \expandafter\let\csname the#1\expandafter\endcsname
  66 + \csname the\csname AC@cnt@#1\endcsname\endcsname
  67 + }%
  68 +}
  69 +\newcommand*{\AC@findrootcnt}[1]{%
  70 + \@ifundefined{AC@cnt@#1}{%
  71 + #1%
  72 + }{%
  73 + \expandafter\AC@findrootcnt\csname AC@cnt@#1\endcsname
  74 + }%
  75 +}
  76 +\def\AC@patch#1{%
  77 + \expandafter\let\csname AC@org@#1reset\expandafter\endcsname
  78 + \csname @#1reset\endcsname
  79 + \expandafter\def\csname @#1reset\endcsname##1##2{%
  80 + \csname AC@org@#1reset\endcsname{##1}{\AC@findrootcnt{##2}}%
  81 + }%
  82 +}
  83 +\RequirePackage{remreset}
  84 +\AC@patch{addto}
  85 +\AC@patch{removefrom}
  86 +\endinput
  87 +%%
  88 +%% End of file `aliascnt.sty'.
... ...
OSS-2016/llncs.cls 0 → 100644
... ... @@ -0,0 +1,1208 @@
  1 +% LLNCS DOCUMENT CLASS -- version 2.18 (27-Sep-2013)
  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}[2013/09/27 v2.18
  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
... ...
OSS-2016/llncs.tex 0 → 100644
... ... @@ -0,0 +1,1256 @@
  1 +% This is LLNCS.DOC the documentation file of
  2 +% the LaTeX2e class from Springer-Verlag
  3 +% for Lecture Notes in Computer Science, version 2.4
  4 +\documentclass{llncs}
  5 +\usepackage{llncsdoc}
  6 +%
  7 +\begin{document}
  8 +\markboth{\LaTeXe{} Class for Lecture Notes in Computer
  9 +Science}{\LaTeXe{} Class for Lecture Notes in Computer Science}
  10 +\thispagestyle{empty}
  11 +\begin{flushleft}
  12 +\LARGE\bfseries Instructions for Authors\\
  13 +Coding with \LaTeX\\[2cm]
  14 +\end{flushleft}
  15 +\rule{\textwidth}{1pt}
  16 +\vspace{2pt}
  17 +\begin{flushright}
  18 +\Huge
  19 +\begin{tabular}{@{}l}
  20 +\LaTeXe{} Class\\
  21 +for Lecture Notes\\
  22 +in Computer Science\\[6pt]
  23 +{\Large Version 2.4}
  24 +\end{tabular}
  25 +\end{flushright}
  26 +\rule{\textwidth}{1pt}
  27 +\vfill
  28 +%\begin{flushleft}
  29 +%\large\itshape
  30 +%\begin{tabular}{@{}l}
  31 +%{\Large\upshape\bfseries Springer}\\[8pt]
  32 +%Berlin\enspace Heidelberg\enspace New\kern0.1em York\\[5pt]
  33 +%Barcelona\enspace Budapest\enspace Hong\kern0.2em Kong\\[5pt]
  34 +%London\enspace Milan\enspace Paris\enspace\\[5pt]
  35 +%Santa\kern0.2em Clara\enspace Singapore\enspace Tokyo
  36 +%\end{tabular}
  37 +%\end{flushleft}
  38 +\newpage
  39 +%
  40 +\section*{For further information please contact us:}
  41 +%
  42 +\begin{flushleft}
  43 +\begin{tabular}{l@{\quad}l@{\hspace{3mm}}l@{\qquad}l}
  44 +$\bullet$&\multicolumn{3}{@{}l}{\bfseries LNCS Editorial Office}\\[1mm]
  45 +&\multicolumn{3}{@{}l}{Springer-Verlag}\\
  46 +&\multicolumn{3}{@{}l}{Computer Science Editorial}\\
  47 +&\multicolumn{3}{@{}l}{Tiergartenstraße 17}\\
  48 +&\multicolumn{3}{@{}l}{69121 Heidelberg}\\
  49 +&\multicolumn{3}{@{}l}{Germany}\\[0.5mm]
  50 + & Tel: & +49-6221-487-8706\\
  51 + & Fax: & +49-6221-487-8588\\
  52 + & e-mail: & \tt lncs@springer.com & for editorial questions\\
  53 + & & \tt texhelp@springer.de & for \TeX{} problems\\[2mm]
  54 +\noalign{\rule{\textwidth}{1pt}}
  55 +\noalign{\vskip2mm}
  56 +%
  57 +%{\tt svserv@vax.ntp.springer.de}\hfil first try the \verb|help|
  58 +%command.
  59 +%
  60 +$\bullet$&\multicolumn{3}{@{}l}{\bfseries We are also reachable through the world wide web:}\\[1mm]
  61 + &\multicolumn{2}{@{}l}{\texttt{http://www.springer.com}}&Springer Global Website\\
  62 + &\multicolumn{2}{@{}l}{\texttt{http://www.springer.com/lncs}}&LNCS home page\\
  63 + &\multicolumn{2}{@{}l}{\texttt{http://www.springerlink.com}}&data repository\\
  64 + &\multicolumn{2}{@{}l}{\texttt{ftp://ftp.springer.de}}&FTP server
  65 +\end{tabular}
  66 +\end{flushleft}
  67 +
  68 +
  69 +%
  70 +\newpage
  71 +\tableofcontents
  72 +\newpage
  73 +%
  74 +\section{Introduction}
  75 +%
  76 +Authors wishing to code their contribution
  77 +with \LaTeX{}, as well as those who have already coded with \LaTeX{},
  78 +will be provided with a document class that will give the text the
  79 +desired layout. Authors are requested to
  80 +adhere strictly to these instructions; {\em the class
  81 +file must not be changed}.
  82 +
  83 +The text output area is automatically set within an area of
  84 +12.2\,cm horizontally and 19.3\,cm vertically.
  85 +
  86 +If you are already familiar with \LaTeX{}, then the
  87 +LLNCS class should not give you any major difficulties.
  88 +It will change the layout to the required LLNCS style
  89 +(it will for instance define the layout of \verb|\section|).
  90 +We had to invent some extra commands,
  91 +which are not provided by \LaTeX{} (e.g.\
  92 +\verb|\institute|, see also Sect.\,\ref{contbegin})
  93 +
  94 +For the main body of the paper (the text) you
  95 +should use the commands of the standard \LaTeX{} ``article'' class.
  96 +Even if you are familiar with those commands, we urge you to read
  97 +this entire documentation thoroughly. It contains many suggestions on
  98 +how to use our commands properly; thus your paper
  99 +will be formatted exactly to LLNCS standard.
  100 +For the input of the references at the end of your contribution,
  101 +please follow our instructions given in Sect.\,\ref{refer} References.
  102 +
  103 +The majority of these hints are not specific for LLNCS; they may improve
  104 +your use of \LaTeX{} in general.
  105 +Furthermore, the documentation provides suggestions about the proper
  106 +editing and use
  107 +of the input files (capitalization, abbreviation etc.) (see
  108 +Sect.\,\ref{refedit} How to Edit Your Input File).
  109 +%
  110 +\section{How to Proceed}
  111 +%
  112 +The package consists of the following files:
  113 +\begin{flushleft}
  114 +\begin{tabular}{@{}p{2.5cm}l}
  115 +{\tt history.txt}& the version history of the package\\[2pt]
  116 +{\tt llncs.cls} & class file for \LaTeX{}\\[2pt]
  117 +{\tt llncs.dem} & an example showing how to code the text\\[2pt]
  118 +{\tt llncs.doc} & general instructions (source of this document),\\
  119 + & {\tt llncs.doc} means {\itshape l\/}atex {\itshape doc\/}umentation for\\
  120 + & {\itshape L\/}ecture {\itshape N}otes in {\itshape C\/}omputer {\itshape S\/}cience\\
  121 +{\tt llncsdoc.pdf}& the documentation of the class (PDF version),\\
  122 +{\tt llncs.doc} & general instructions (source of this document),\\
  123 +{\tt llncsdoc.sty} & class modifications to help for the instructions\\
  124 +{\tt llncs.ind} & an external (faked) author index file\\
  125 +{\tt subjidx.ind} & subject index demo from the Springer book package\\
  126 +{\tt llncs.dvi} & the resultig DVI file (remember to use binary transfer!)\\[2pt]
  127 +{\tt sprmindx.sty} & supplementary style file for MakeIndex\\
  128 + & (usage: {\tt makeindex -s sprmindx.sty <yourfile.idx>})
  129 +\end{tabular}
  130 +\end{flushleft}
  131 +%
  132 +\subsection{How to Invoke the LLNCS Document Class}
  133 +%
  134 +The LLNCS class is an extension of the standard \LaTeX{} ``article''
  135 +document class. Therefore you may use all ``article'' commands for the
  136 +body of your contribution to prepare your manuscript.
  137 +LLNCS class is invoked by replacing ``article'' by ``llncs'' in the
  138 +first line of your document:
  139 +\begin{verbatim}
  140 +\documentclass{llncs}
  141 +%
  142 +\begin{document}
  143 + <Your contribution>
  144 +\end{document}
  145 +\end{verbatim}
  146 +%
  147 +\subsection{Contributions Already Coded with \protect\LaTeX{} without
  148 +the LLNCS document class}
  149 +%
  150 +If your file is already coded with \LaTeX{} you can easily
  151 +adapt it a posteriori to the LLNCS document class.
  152 +
  153 +Please refrain from using any \LaTeX{} or \TeX{} commands
  154 +that affect the layout or formatting of your document (i.e. commands
  155 +like \verb|\textheight|, \verb|\vspace|, \verb|\headsep| etc.).
  156 +There may nevertheless be exceptional occasions on which to
  157 +use some of them.
  158 +
  159 +The LLNCS document class has been carefully designed to produce the
  160 +right layout from your \LaTeX{} input. If there is anything specific you
  161 +would like to do and for which the style file does not provide a
  162 +command, {\em please contact us}. Same holds for any error and bug you
  163 +discover (there is however no reward for this -- sorry).
  164 +%
  165 +\section{General Rules for Coding Formulas}
  166 +%
  167 +With mathematical formulas you may proceed as described
  168 +in Sect.\,3.3 of the {\em \LaTeX{} User's Guide \& Reference
  169 +Manual\/} by Leslie Lamport (2nd~ed. 1994), Addison-Wesley Publishing
  170 +Company, Inc.
  171 +
  172 +Equations are automatically numbered sequentially throughout your
  173 +contribution using arabic numerals in parentheses on the right-hand
  174 +side.
  175 +
  176 +When you are working in math mode everything is typeset in italics.
  177 +Sometimes you need to insert non-mathematical elements (e.g.\
  178 +words or phrases). Such insertions should be coded in roman
  179 +(with \verb|\mbox|) as illustrated in the following example:
  180 +\begin{flushleft}
  181 +{\itshape Sample Input}
  182 +\end{flushleft}
  183 +\begin{verbatim}
  184 +\begin{equation}
  185 + \left(\frac{a^{2} + b^{2}}{c^{3}} \right) = 1 \quad
  186 + \mbox{ if } c\neq 0 \mbox{ and if } a,b,c\in \bbbr \enspace .
  187 +\end{equation}
  188 +\end{verbatim}
  189 +{\itshape Sample Output}
  190 +\begin{equation}
  191 + \left(\frac{a^{2} + b^{2}}{c^{3}} \right) = 1 \quad
  192 + \mbox{ if } c\neq 0 \mbox{ and if } a,b,c\in \bbbr \enspace .
  193 +\end{equation}
  194 +
  195 +If you wish to start a new paragraph immediately after a displayed
  196 +equation, insert a blank line so as to produce the required
  197 +indentation. If there is no new paragraph either do not insert
  198 +a blank line or code \verb|\noindent| immediately before
  199 +continuing the text.
  200 +
  201 +Please punctuate a displayed equation in the same way as other
  202 +ordinary text but with an \verb|\enspace| before end punctuation.
  203 +
  204 +Note that the sizes of the parentheses or other delimiter
  205 +symbols used in equations should ideally match the height of the
  206 +formulas being enclosed. This is automatically taken care of by
  207 +the following \LaTeX{} commands:\\[2mm]
  208 +\verb|\left(| or \verb|\left[| and
  209 +\verb|\right)| or \verb|\right]|.
  210 +%
  211 +\subsection{Italic and Roman Type in Math Mode}
  212 +%
  213 +\begin{alpherate}
  214 +\item
  215 +In math mode \LaTeX{} treats all letters as though they
  216 +were mathematical or physical variables, hence they are typeset as
  217 +characters of their own in
  218 +italics. However, for certain components of formulas, like short texts,
  219 +this would be incorrect and therefore coding in roman is required.
  220 +Roman should also be used for
  221 +subscripts and superscripts {\em in formulas\/} where these are
  222 +merely labels and not in themselves variables,
  223 +e.g. $T_{\mathrm{eff}}$ \emph{not} $T_{eff}$,
  224 +$T_{\mathrm K}$ \emph{not} $T_K$ (K = Kelvin),
  225 +$m_{\mathrm e}$ \emph{not} $m_e$ (e = electron).
  226 +However, do not code for roman
  227 +if the sub/superscripts represent variables,
  228 +e.g.\ $\sum_{i=1}^{n} a_{i}$.
  229 +\item
  230 +Please ensure that {\em physical units\/} (e.g.\ pc, erg s$^{-1}$
  231 +K, cm$^{-3}$, W m$^{-2}$ Hz$^{-1}$, m kg s$^{-2}$ A$^{-2}$) and
  232 +{\em abbreviations\/} such as Ord, Var, GL, SL, sgn, const.\
  233 +are always set in roman type. To ensure
  234 +this use the \verb|\mathrm| command: \verb|\mathrm{Hz}|.
  235 +On p.\ 44 of the {\em \LaTeX{} User's Guide \& Reference
  236 +Manual\/} by Leslie Lamport you will find the names of
  237 +common mathe\-matical functions, such as log, sin, exp, max and sup.
  238 +These should be coded as \verb|\log|,
  239 +\verb|\sin|, \verb|\exp|, \verb|\max|, \verb|\sup|
  240 +and will appear in roman automatically.
  241 +\item
  242 +Chemical symbols and formulas should be coded for roman,
  243 +e.g.\ Fe not $Fe$, H$_2$O not {\em H$_2$O}.
  244 +\item
  245 +Familiar foreign words and phrases, e.g.\ et al.,
  246 +a priori, in situ, brems\-strah\-lung, eigenvalues should not be
  247 +italicized.
  248 +\end{alpherate}
  249 +%
  250 +\section{How to Edit Your Input (Source) File}
  251 +\label{refedit}
  252 +%
  253 +\subsection{Headings}\label{headings}
  254 +%
  255 +All words in headings should be capitalized except for conjunctions,
  256 +prepositions (e.g.\ on, of, by, and, or, but, from, with, without,
  257 +under) and definite and indefinite articles (the, a, an) unless they
  258 +appear at the beginning. Formula letters must be typeset as in the text.
  259 +%
  260 +\subsection{Capitalization and Non-capitalization}
  261 +%
  262 +\begin{alpherate}
  263 +\item
  264 +The following should always be capitalized:
  265 +\begin{itemize}
  266 +\item
  267 +Headings (see preceding Sect.\,\ref{headings})
  268 +\item
  269 +Abbreviations and expressions
  270 +in the text such as Fig(s)., Table(s), Sect(s)., Chap(s).,
  271 +Theorem, Corollary, Definition etc. when used with numbers, e.g.\
  272 +Fig.\,3, Table\,1, Theorem 2.
  273 +\end{itemize}
  274 +Please follow the special rules in Sect.\,\ref{abbrev} for referring to
  275 +equations.
  276 +\item
  277 +The following should {\em not\/} be capitalized:
  278 +\begin{itemize}
  279 +\item
  280 +The words figure(s), table(s), equation(s), theorem(s) in the text when
  281 +used without an accompanying number.
  282 +\item
  283 +Figure legends and table captions except for names and abbreviations.
  284 +\end{itemize}
  285 +\end{alpherate}
  286 +%
  287 +\subsection{Abbreviation of Words}\label{abbrev}
  288 +%
  289 +\begin{alpherate}
  290 +\item
  291 +The following {\em should} be abbreviated when they appear in running
  292 +text {\em unless\/} they come at the beginning of a sentence: Chap.,
  293 +Sect., Fig.; e.g.\ The results are depicted in Fig.\,5. Figure 9 reveals
  294 +that \dots .\\
  295 +{\em Please note\/}: Equations should usually be referred to solely by
  296 +their number in parentheses: e.g.\ (14). However, when the reference
  297 +comes at the beginning of a sentence, the unabbreviated word
  298 +``Equation'' should be used: e.g.\ Equation (14) is very important.
  299 +However, (15) makes it clear that \dots .
  300 +\item
  301 +If abbreviations of names or concepts are used
  302 +throughout the text, they should be defined at first occurrence,
  303 +e.g.\ Plurisubharmonic (PSH) Functions, Strong Optimization (SOPT)
  304 +Problem.
  305 +\end{alpherate}
  306 +%
  307 +\section{How to Code the Beginning of Your Contribution}
  308 +\label{contbegin}
  309 +%
  310 +The title of a single contribution (it is mandatory) should be coded as
  311 +follows:
  312 +\begin{verbatim}
  313 +\title{<Your contribution title>}
  314 +\end{verbatim}
  315 +All words in titles should be capitalized except for conjunctions,
  316 +prepositions (e.g.\ on, of, by, and, or, but, from, with, without,
  317 +under) and definite and indefinite articles (the, a, an) unless they
  318 +appear at the beginning. Formula letters must be typeset as in the text.
  319 +Titles have no end punctuation.
  320 +
  321 +If a long \verb|\title| must be divided please use the code \verb|\\|
  322 +(for new line).
  323 +
  324 +If you are to produce running heads for a specific volume the standard
  325 +(of no such running heads) is overwritten with the \verb|[runningheads]|
  326 +option in the \verb|\documentclass| line. For long titles that do not
  327 +fit in the single line of the running head a warning is generated.
  328 +You can specify an abbreviated title for the running head on odd pages
  329 +with the command
  330 +\begin{verbatim}
  331 +\titlerunning{<Your abbreviated contribution title>}
  332 +\end{verbatim}
  333 +
  334 +There is also a possibility to change the text of the title that goes
  335 +into the table of contents (that's for volume editors only -- there is
  336 +no table of contents for a single contribution). For this use the
  337 +command
  338 +\begin{verbatim}
  339 +\toctitle{<Your changed title for the table of contents>}
  340 +\end{verbatim}
  341 +
  342 +An optional subtitle may follow then:
  343 +\begin{verbatim}
  344 +\subtitle{<subtitle of your contribution>}
  345 +\end{verbatim}
  346 +
  347 +Now the name(s) of the author(s) must be given:
  348 +\begin{verbatim}
  349 +\author{<author(s) name(s)>}
  350 +\end{verbatim}
  351 +Numbers referring to different addresses or affiliations are
  352 +to be attached to each author with the \verb|\inst{<no>}| command.
  353 +If there is more than one author, the order is up to you;
  354 +the \verb|\and| command provides for the separation.
  355 +
  356 +If you have done this correctly, this entry now reads, for example:
  357 +\begin{verbatim}
  358 +\author{Ivar Ekeland\inst{1} \and Roger Temam\inst{2}}
  359 +\end{verbatim}
  360 +The first name\footnote{Other initials are optional
  361 +and may be inserted if this is the usual
  362 +way of writing your name, e.g.\ Alfred J.~Holmes, E.~Henry Green.}
  363 +is followed by the surname.
  364 +
  365 +As for the title there exist two additional commands (again for volume
  366 +editors only) for a different author list. One for the running head
  367 +(on odd pages) -- if there is any:
  368 +\begin{verbatim}
  369 +\authorrunning{<abbreviated author list>}
  370 +\end{verbatim}
  371 +And one for the table of contents where the
  372 +affiliation of each author is simply added in braces.
  373 +\begin{verbatim}
  374 +\tocauthor{<enhanced author list for the table of contents>}
  375 +\end{verbatim}
  376 +
  377 +Next the address(es) of institute(s), company etc. is (are) required.
  378 +If there is more than one address, the entries are numbered
  379 +automatically with \verb|\and|, in the order in which you type them.
  380 +Please make sure that the numbers match those placed next to
  381 +to the authors' names to reflect the affiliation.
  382 +\begin{verbatim}
  383 +\institute{<name of an institute>
  384 +\and <name of the next institute>
  385 +\and <name of the next institute>}
  386 +\end{verbatim}
  387 +
  388 +In addition, you can use
  389 +\begin{verbatim}
  390 +\email{<email address>}
  391 +\end{verbatim}
  392 +to provide your email address within \verb|\institute|. If you need to
  393 +typeset the tilde character -- e.g. for your web page in your unix
  394 +system's home directory -- the \verb|\homedir| command will happily do
  395 +this. Please note that, if your email address is given in your paper,
  396 +it will also be included in the meta data of the online version.
  397 +\enlargethispage*{6mm}
  398 +
  399 +\medskip
  400 +If footnote like things are needed anywhere in the contribution heading
  401 +please code
  402 +(immediately after the word where the footnote indicator should be
  403 +placed):
  404 +\begin{verbatim}
  405 +\thanks{<text>}
  406 +\end{verbatim}
  407 +\verb|\thanks| may only appear in \verb|\title|, \verb|\author|
  408 +and \verb|\institute| to footnote anything. If there are two or more
  409 +footnotes or affiliation marks to a specific item separate them with
  410 +\verb|\fnmsep| (i.e. {\itshape f}oot\emph note \emph mark
  411 +\emph{sep}arator).
  412 +
  413 +\medskip\noindent
  414 +The command
  415 +\begin{verbatim}
  416 +\maketitle
  417 +\end{verbatim}
  418 +then formats the complete heading of your article. If you leave
  419 +it out the work done so far will produce \emph{no} text.
  420 +
  421 +Then the abstract should follow. Simply code
  422 +\begin{verbatim}
  423 +\begin{abstract}
  424 +<Text of the summary of your article>
  425 +\end{abstract}
  426 +\end{verbatim}
  427 +or refer to the demonstration file {\tt llncs.dem} for an example or
  428 +to the {\em Sample Input\/} on p.~\pageref{samppage}.
  429 +
  430 +\subsubsection{Remark to Running Heads and the Table of Contents}
  431 +\leavevmode\\[\medskipamount]
  432 +If you are the author of a single contribution you normally have no
  433 +running heads and no table of contents. Both are done only by the editor
  434 +of the volume or at the printers.
  435 +%
  436 +\section{Special Commands for the Volume Editor}
  437 +The volume editor can produce a complete camera ready output including
  438 +running heads, a table of contents, preliminary text (frontmatter), and
  439 +index or glossary. For activating the running heads there is the class
  440 +option \verb|[runningheads]|.
  441 +
  442 +The table of contents of the volume is printed wherever
  443 +\verb|\tableofcontents| is placed. A simple compilation of all
  444 +contributions (fields \verb|\title| and \verb|\author|) is done. If you
  445 +wish to change this automatically produced list use the commands
  446 +\begin{verbatim}
  447 +\titlerunning \toctitle
  448 +\authorrunning \tocauthor
  449 +\end{verbatim}
  450 +to enhance the information in the specific contributions. See the
  451 +demonstration file \verb|llncs.dem| for examples.
  452 +
  453 +An additional structure can be added to the table of contents with the
  454 +\verb|\addtocmark{<text>}| command. It has an optional numerical
  455 +argument, a digit from 1 through 3. 3 (the default) makes an unnumbered
  456 +chapter like entry in the table of contents. If you code
  457 +\verb|\addtocmark[2]{text}| the corresponding page number is listed
  458 +also, \verb|\addtocmark[1]{text}| even introduces a chapter number
  459 +beyond it.
  460 +%
  461 +\section{How to Code Your Text}
  462 +%
  463 +The contribution title and all headings should be capitalized
  464 +except for conjunctions, prepositions (e.g.\ on, of, by, and, or, but,
  465 +from, with, without, under) and definite and indefinite articles (the,
  466 +a, an) unless they appear at the beginning. Formula letters must be
  467 +typeset as in the text.
  468 +
  469 +Headings will be automatically numbered by the following codes.\\[2mm]
  470 +{\itshape Sample Input}
  471 +\begin{verbatim}
  472 +\section{This is a First-Order Title}
  473 +\subsection{This is a Second-Order Title}
  474 +\subsubsection{This is a Third-Order Title.}
  475 +\paragraph{This is a Fourth-Order Title.}
  476 +\end{verbatim}
  477 +\verb|\section| and \verb|\subsection| have no end punctuation.\\
  478 +\verb|\subsubsection| and \verb|\paragraph|
  479 +need to be punctuated at the end.
  480 +
  481 +In addition to the above-mentioned headings your text may be structured
  482 +by subsections indicated by run-in headings (theorem-like environments).
  483 +All the theorem-like environments are numbered automatically
  484 +throughout the sections of your document -- each with its own counter.
  485 +If you want the theorem-like environments to use the same counter
  486 +just specify the documentclass option \verb|envcountsame|:
  487 +\begin{verbatim}
  488 +\documentclass[envcountsame]{llncs}
  489 +\end{verbatim}
  490 +If your first call for a theorem-like environment then is e.g.
  491 +\verb|\begin{lemma}|, it will be numbered 1; if corollary follows,
  492 +this will be numbered 2; if you then call lemma again, this will be
  493 +numbered 3.
  494 +
  495 +But in case you want to reset such counters to 1 in each section,
  496 +please specify the documentclass option \verb|envcountreset|:
  497 +\begin{verbatim}
  498 +\documentclass[envcountreset]{llncs}
  499 +\end{verbatim}
  500 +
  501 +Even a numbering on section level (including the section counter) is
  502 +possible with the documentclass option \verb|envcountsect|.
  503 +
  504 +\section{Predefined Theorem like Environments}\label{builtintheo}
  505 +The following variety of run-in headings are at your disposal:
  506 +\begin{alpherate}
  507 +\item
  508 +{\bfseries Bold} run-in headings with italicized text
  509 +as built-in environments:
  510 +\begin{verbatim}
  511 +\begin{corollary} <text> \end{corollary}
  512 +\begin{lemma} <text> \end{lemma}
  513 +\begin{proposition} <text> \end{proposition}
  514 +\begin{theorem} <text> \end{theorem}
  515 +\end{verbatim}
  516 +\item
  517 +The following generally appears as {\itshape italic} run-in heading:
  518 +\begin{verbatim}
  519 +\begin{proof} <text> \qed \end{proof}
  520 +\end{verbatim}
  521 +It is unnumbered and may contain an eye catching square (call for that
  522 +with \verb|\qed|) before the environment ends.
  523 +\item
  524 +Further {\itshape italic} or {\bfseries bold} run-in headings with roman
  525 +environment body may also occur:
  526 +\begin{verbatim}
  527 +\begin{definition} <text> \end{definition}
  528 +\begin{example} <text> \end{example}
  529 +\begin{exercise} <text> \end{exercise}
  530 +\begin{note} <text> \end{note}
  531 +\begin{problem} <text> \end{problem}
  532 +\begin{question} <text> \end{question}
  533 +\begin{remark} <text> \end{remark}
  534 +\begin{solution} <text> \end{solution}
  535 +\end{verbatim}
  536 +\end{alpherate}
  537 +
  538 +\section{Defining your Own Theorem like Environments}
  539 +We have enhanced the standard \verb|\newtheorem| command and slightly
  540 +changed its syntax to get two new commands \verb|\spnewtheorem| and
  541 +\verb|\spnewtheorem*| that now can be used to define additional
  542 +environments. They require two additional arguments namely the type
  543 +style in which the keyword of the environment appears and second the
  544 +style for the text of your new environment.
  545 +
  546 +\verb|\spnewtheorem| can be used in two ways.
  547 +\subsection{Method 1 {\itshape (preferred)}}
  548 +You may want to create an environment that shares its counter
  549 +with another environment, say {\em main theorem\/} to be numbered like
  550 +the predefined {\em theorem\/}. In this case, use the syntax
  551 +\begin{verbatim}
  552 +\spnewtheorem{<env_nam>}[<num_like>]{<caption>}
  553 +{<cap_font>}{<body_font>}
  554 +\end{verbatim}
  555 +
  556 +\noindent
  557 +Here the environment with which the new environment should share its
  558 +counter is specified with the optional argument \verb|[<num_like>]|.
  559 +
  560 +\paragraph{Sample Input}
  561 +\begin{verbatim}
  562 +\spnewtheorem{mainth}[theorem]{Main Theorem}{\bfseries}{\itshape}
  563 +\begin{theorem} The early bird gets the worm. \end{theorem}
  564 +\begin{mainth} The early worm gets eaten. \end{mainth}
  565 +\end{verbatim}
  566 +\medskip\noindent
  567 +{\em Sample Output}
  568 +
  569 +\medskip\noindent
  570 +{\bfseries Theorem 3.}\enspace {\em The early bird gets the worm.}
  571 +
  572 +\medskip\noindent
  573 +{\bfseries Main Theorem 4.} The early worm gets eaten.
  574 +
  575 +\bigskip
  576 +The sharing of the default counter (\verb|[theorem]|) is desired. If you
  577 +omit the optional second argument of \verb|\spnewtheorem| a separate
  578 +counter for your new environment is used throughout your document.
  579 +
  580 +\subsection[Method 2]{Method 2 {\itshape (assumes {\tt[envcountsect]}
  581 +documentstyle option)}}
  582 +\begin{verbatim}
  583 +\spnewtheorem{<env_nam>}{<caption>}[<within>]
  584 +{<cap_font>}{<body_font>}
  585 +\end{verbatim}
  586 +
  587 +\noindent
  588 +This defines a new environment \verb|<env_nam>| which prints the caption
  589 +\verb|<caption>| in the font \verb|<cap_font>| and the text itself in
  590 +the font \verb|<body_font>|. The environment is numbered beginning anew
  591 +with every new sectioning element you specify with the optional
  592 +parameter \verb|<within>|.
  593 +
  594 +\medskip\noindent
  595 +\paragraph{Example} \leavevmode
  596 +
  597 +\medskip\noindent
  598 +\verb|\spnewtheorem{joke}{Joke}[subsection]{\bfseries}{\rmfamily}|
  599 +
  600 +\medskip
  601 +\noindent defines a new environment called \verb|joke| which prints the
  602 +caption {\bfseries Joke} in boldface and the text in roman. The jokes are
  603 +numbered starting from 1 at the beginning of every subsection with the
  604 +number of the subsection preceding the number of the joke e.g. 7.2.1 for
  605 +the first joke in subsection 7.2.
  606 +
  607 +\subsection{Unnumbered Environments}
  608 +If you wish to have an unnumbered environment, please
  609 +use the syntax
  610 +\begin{verbatim}
  611 +\spnewtheorem*{<env_nam>}{<caption>}{<cap_font>}{<body_font>}
  612 +\end{verbatim}
  613 +
  614 +\section{Program Codes}
  615 +In case you want to show pieces of program code, just use the
  616 +\verb|verbatim| environment or the \verb|verbatim| package of \LaTeX.
  617 +(There also exist various pretty printers for some programming
  618 +languages.)
  619 +%
  620 +\noindent
  621 +\subsection*{Sample Input {\rmfamily(of a simple
  622 +contribution)}}\label{samppage}
  623 +\begin{verbatim}
  624 +\title{Hamiltonian Mechanics}
  625 +
  626 +\author{Ivar Ekeland\inst{1} \and Roger Temam\inst{2}}
  627 +
  628 +\institute{Princeton University, Princeton NJ 08544, USA
  629 +\and
  630 +Universit\'{e} de Paris-Sud,
  631 +Laboratoire d'Analyse Num\'{e}rique, B\^{a}timent 425,\\
  632 +F-91405 Orsay Cedex, France}
  633 +
  634 +\maketitle
  635 +%
  636 +\begin{abstract}
  637 +This paragraph shall summarize the contents of the paper
  638 +in short terms.
  639 +\end{abstract}
  640 +%
  641 +\section{Fixed-Period Problems: The Sublinear Case}
  642 +%
  643 +With this chapter, the preliminaries are over, and we begin the
  644 +search for periodic solutions \dots
  645 +%
  646 +\subsection{Autonomous Systems}
  647 +%
  648 +In this section we will consider the case when the Hamiltonian
  649 +$H(x)$ \dots
  650 +%
  651 +\subsubsection*{The General Case: Nontriviality.}
  652 +%
  653 +We assume that $H$ is
  654 +$\left(A_{\infty}, B_{\infty}\right)$-subqua\-dra\-tic
  655 +at infinity, for some constant \dots
  656 +%
  657 +\paragraph{Notes and Comments.}
  658 +The first results on subharmonics were \dots
  659 +%
  660 +\begin{proposition}
  661 +Assume $H'(0)=0$ and $ H(0)=0$. Set \dots
  662 +\end{proposition}
  663 +\begin{proof}[of proposition]
  664 +Condition (8) means that, for every $\delta'>\delta$, there is
  665 +some $\varepsilon>0$ such that \dots \qed
  666 +\end{proof}
  667 +%
  668 +\begin{example}[\rmfamily (External forcing)]
  669 +Consider the system \dots
  670 +\end{example}
  671 +\begin{corollary}
  672 +Assume $H$ is $C^{2}$ and
  673 +$\left(a_{\infty}, b_{\infty}\right)$-subquadratic
  674 +at infinity. Let \dots
  675 +\end{corollary}
  676 +\begin{lemma}
  677 +Assume that $H$ is $C^{2}$ on $\bbbr^{2n}\backslash \{0\}$
  678 +and that $H''(x)$ is \dots
  679 +\end{lemma}
  680 +\begin{theorem}[(Ghoussoub-Preiss)]
  681 +Let $X$ be a Banach Space and $\Phi:X\to\bbbr$ \dots
  682 +\end{theorem}
  683 +\begin{definition}
  684 +We shall say that a $C^{1}$ function $\Phi:X\to\bbbr$
  685 +satisfies \dots
  686 +\end{definition}
  687 +\end{verbatim}
  688 +{\itshape Sample Output\/} (follows on the next page together with
  689 +examples of the above run-in headings)
  690 +\newcounter{save}\setcounter{save}{\value{section}}
  691 +{\def\addtocontents#1#2{}%
  692 +\def\addcontentsline#1#2#3{}%
  693 +\def\markboth#1#2{}%
  694 +%
  695 +\title{Hamiltonian Mechanics}
  696 +
  697 +\author{Ivar Ekeland\inst{1} \and Roger Temam\inst{2}}
  698 +
  699 +\institute{Princeton University, Princeton NJ 08544, USA
  700 +\and
  701 +Universit\'{e} de Paris-Sud,
  702 +Laboratoire d'Analyse Num\'{e}rique, B\^{a}timent 425,\\
  703 +F-91405 Orsay Cedex, France}
  704 +
  705 +\maketitle
  706 +%
  707 +\begin{abstract}
  708 +This paragraph shall summarize the contents of the paper
  709 +in short terms.
  710 +\end{abstract}
  711 +%
  712 +\section{Fixed-Period Problems: The Sublinear Case}
  713 +%
  714 +With this chapter, the preliminaries are over, and we begin the search
  715 +for periodic solutions \dots
  716 +%
  717 +\subsection{Autonomous Systems}
  718 +%
  719 +In this section we will consider the case when the Hamiltonian
  720 +$H(x)$ \dots
  721 +%
  722 +\subsubsection{The General Case: Nontriviality.}
  723 +%
  724 +We assume that $H$ is
  725 +$\left(A_{\infty}, B_{\infty}\right)$-subqua\-dra\-tic at
  726 +infinity, for some constant \dots
  727 +%
  728 +\paragraph{Notes and Comments.}
  729 +The first results on subharmonics were \dots
  730 +%
  731 +\begin{proposition}
  732 +Assume $H'(0)=0$ and $ H(0)=0$. Set \dots
  733 +\end{proposition}
  734 +\begin{proof}[of proposition]
  735 +Condition (8) means that, for every $\delta'>\delta$, there is
  736 +some $\varepsilon>0$ such that \dots \qed
  737 +\end{proof}
  738 +%
  739 +\begin{example}[{{\rmfamily External forcing}}]
  740 +Consider the system \dots
  741 +\end{example}
  742 +\begin{corollary}
  743 +Assume $H$ is $C^{2}$ and
  744 +$\left(a_{\infty}, b_{\infty}\right)$-subquadratic
  745 +at infinity. Let \dots
  746 +\end{corollary}
  747 +\begin{lemma}
  748 +Assume that $H$ is $C^{2}$ on $\bbbr^{2n}\backslash \{0\}$
  749 +and that $H''(x)$ is \dots
  750 +\end{lemma}
  751 +\begin{theorem}[Ghoussoub-Preiss]
  752 +Let $X$ be a Banach Space and $\Phi:X\to\bbbr$ \dots
  753 +\end{theorem}
  754 +\begin{definition}
  755 +We shall say that a $C^{1}$ function $\Phi:X\to\bbbr$ satisfies \dots
  756 +\end{definition}
  757 +%
  758 +}\setcounter{section}{\value{save}}
  759 +\section{Fine Tuning of the Text}
  760 +%
  761 +The following should be used to improve the readability of the text:
  762 +\begin{flushleft}
  763 +\begin{tabular}{@{}p{.19\textwidth}p{.79\textwidth}}
  764 +\verb|\,| & a thin space, e.g.\ between numbers or between units
  765 + and num\-bers; a line division will not be made
  766 + following this space\\
  767 +\verb|--| & en dash; two strokes, without a space at either end\\
  768 +\verb*| -- |& en dash; two strokes, with a space at either end\\
  769 +\verb|-| & hyphen; one stroke, no space at either end\\
  770 +\verb|$-$| & minus, in the text {\em only} \\[8mm]
  771 +{\em Input} & \verb|21\,$^{\circ}$C etc.,|\\
  772 + & \verb|Dr h.\,c.\,Rockefellar-Smith \dots|\\
  773 + & \verb|20,000\,km and Prof.\,Dr Mallory \dots|\\
  774 + & \verb|1950--1985 \dots|\\
  775 + & \verb|this -- written on a computer -- is now printed|\\
  776 + & \verb|$-30$\,K \dots|\\[3mm]
  777 +{\em Output}& 21\,$^{\circ}$C etc., Dr h.\,c.\,Rockefellar-Smith \dots\\
  778 + & 20,000\,km and Prof.\,Dr Mallory \dots\\
  779 + & 1950--1985 \dots\\
  780 + & this -- written on a computer -- is now printed\\
  781 + & $-30$\,K \dots
  782 +\end{tabular}
  783 +\end{flushleft}
  784 +%
  785 +\section {Special Typefaces}
  786 +%
  787 +Normal type (roman text) need not be coded. {\itshape Italic}
  788 +(\verb|{\em <text>}| better still \verb|\emph{<text>}|) or, if
  789 +necessary, {\bfseries boldface} should be used for emphasis.\\[6pt]
  790 +\begin{minipage}[t]{\textwidth}
  791 +\begin{flushleft}
  792 +\begin{tabular}{@{}p{.25\textwidth}@{\hskip6pt}p{.73\textwidth}@{}}
  793 +\verb|{\itshape Text}| & {\itshape Italicized Text}\\[2pt]
  794 +\verb|{\em Text}| & {\em Emphasized Text --
  795 + if you would like to emphasize a {\em definition} within an
  796 + italicized text (e.g.\ of a {\em theorem)} you should code the
  797 + expression to be emphasized by} \verb|\em|.\\[2pt]
  798 +\verb|{\bfseries Text}|& {\bfseries Important Text}\\[2pt]
  799 +\verb|\vec{Symbol}| & Vectors may only appear in math mode. The default
  800 + \LaTeX{} vector symbol has been adapted\footnotemark\
  801 + to LLNCS conventions.\\[2pt]
  802 + & \verb|$\vec{A \times B\cdot C}| yields $\vec{A\times B\cdot C}$\\
  803 + & \verb|$\vec{A}^{T} \otimes \vec{B} \otimes|\\
  804 + & \verb|\vec{\hat{D}}$|yields $\vec{A}^{T} \otimes \vec{B} \otimes
  805 +\vec{\hat{D}}$
  806 +\end{tabular}
  807 +\end{flushleft}
  808 +\end{minipage}
  809 +
  810 +\footnotetext{If you absolutely must revive the original \LaTeX{}
  811 +design of the vector symbol (as an arrow accent), please specify the
  812 +option \texttt{[orivec]} in the \texttt{documentclass} line.}
  813 +\newpage
  814 +%
  815 +\section {Footnotes}
  816 +%
  817 +Footnotes within the text should be coded:
  818 +\begin{verbatim}
  819 +\footnote{Text}
  820 +\end{verbatim}
  821 +{\itshape Sample Input}
  822 +\begin{flushleft}
  823 +Text with a footnote\verb|\footnote{The |{\tt footnote is automatically
  824 +numbered.}\verb|}| and text continues \dots
  825 +\end{flushleft}
  826 +{\itshape Sample Output}
  827 +\begin{flushleft}
  828 +Text with a footnote\footnote{The footnote is automatically numbered.}
  829 +and text continues \dots
  830 +\end{flushleft}
  831 +%
  832 +\section {Lists}
  833 +%
  834 +Please code lists as described below:\\[2mm]
  835 +{\itshape Sample Input}
  836 +\begin{verbatim}
  837 +\begin{enumerate}
  838 + \item First item
  839 + \item Second item
  840 + \begin{enumerate}
  841 + \item First nested item
  842 + \item Second nested item
  843 + \end{enumerate}
  844 + \item Third item
  845 +\end{enumerate}
  846 +\end{verbatim}
  847 +{\itshape Sample Output}
  848 + \begin{enumerate}
  849 +\item First item
  850 +\item Second item
  851 + \begin{enumerate}
  852 + \item First nested item
  853 + \item Second nested item
  854 + \end{enumerate}
  855 +\item Third item
  856 +\end{enumerate}
  857 +%
  858 +\section {Figures}
  859 +%
  860 +Figure environments should be inserted after (not in)
  861 +the paragraph in which the figure is first mentioned.
  862 +They will be numbered automatically.
  863 +
  864 +Preferably the images should be enclosed as PostScript files -- best as
  865 +EPS data using the epsfig package.
  866 +
  867 +If you cannot include them into your output this way and use other
  868 +techniques for a separate production,
  869 +the figures (line drawings and those containing halftone inserts
  870 +as well as halftone figures) {\em should not be pasted into your
  871 +laserprinter output}. They should be enclosed separately in camera-ready
  872 +form (original artwork, glossy prints, photographs and/or slides). The
  873 +lettering should be suitable for reproduction, and after a
  874 +probably necessary reduction the height of capital letters should be at
  875 +least 1.8\,mm and not more than 2.5\,mm.
  876 +Check that lines and other details are uniformly black and
  877 +that the lettering on figures is clearly legible.
  878 +
  879 +To leave the desired amount of space for the height of
  880 +your figures, please use the coding described below.
  881 +As can be seen in the output, we will automatically
  882 +provide 1\,cm space above and below the figure,
  883 +so that you should only leave the space equivalent to the size of the
  884 +figure itself. Please note that ``\verb|x|'' in the following
  885 +coding stands for the actual height of the figure:
  886 +\begin{verbatim}
  887 +\begin{figure}
  888 +\vspace{x cm}
  889 +\caption[ ]{...text of caption...} (Do type [ ])
  890 +\end{figure}
  891 +\end{verbatim}
  892 +\begin{flushleft}
  893 +{\itshape Sample Input}
  894 +\end{flushleft}
  895 +\begin{verbatim}
  896 +\begin{figure}
  897 +\vspace{2.5cm}
  898 +\caption{This is the caption of the figure displaying a white
  899 +eagle and a white horse on a snow field}
  900 +\end{figure}
  901 +\end{verbatim}
  902 +\begin{flushleft}
  903 +{\itshape Sample Output}
  904 +\end{flushleft}
  905 +\begin{figure}
  906 +\vspace{2.5cm}
  907 +\caption{This is the caption of the figure displaying a white eagle and
  908 +a white horse on a snow field}
  909 +\end{figure}
  910 +%
  911 +\section{Tables}
  912 +%
  913 +Table captions should be treated
  914 +in the same way as figure legends, except that
  915 +the table captions appear {\itshape above} the tables. The tables
  916 +will be numbered automatically.
  917 +%
  918 +\subsection{Tables Coded with \protect\LaTeX{}}
  919 +%
  920 +Please use the following coding:\\[2mm]
  921 +{\itshape Sample Input}
  922 +\begin{verbatim}
  923 +\begin{table}
  924 +\caption{Critical $N$ values}
  925 +\begin{tabular}{llllll}
  926 +\hline\noalign{\smallskip}
  927 +${\mathrm M}_\odot$ & $\beta_{0}$ & $T_{\mathrm c6}$ & $\gamma$
  928 + & $N_{\mathrm{crit}}^{\mathrm L}$
  929 + & $N_{\mathrm{crit}}^{\mathrm{Te}}$\\
  930 +\noalign{\smallskip}
  931 +\hline
  932 +\noalign{\smallskip}
  933 + 30 & 0.82 & 38.4 & 35.7 & 154 & 320 \\
  934 + 60 & 0.67 & 42.1 & 34.7 & 138 & 340 \\
  935 +120 & 0.52 & 45.1 & 34.0 & 124 & 370 \\
  936 +\hline
  937 +\end{tabular}
  938 +\end{table}
  939 +\end{verbatim}
  940 +
  941 +\medskip\noindent{\itshape Sample Output}
  942 +\begin{table}
  943 +\caption{Critical $N$ values}
  944 +\begin{center}
  945 +\renewcommand{\arraystretch}{1.4}
  946 +\setlength\tabcolsep{3pt}
  947 +\begin{tabular}{llllll}
  948 +\hline\noalign{\smallskip}
  949 +${\mathrm M}_\odot$ & $\beta_{0}$ & $T_{\mathrm c6}$ & $\gamma$
  950 + & $N_{\mathrm{crit}}^{\mathrm L}$
  951 + & $N_{\mathrm{crit}}^{\mathrm{Te}}$\\
  952 +\noalign{\smallskip}
  953 +\hline
  954 +\noalign{\smallskip}
  955 + 30 & 0.82 & 38.4 & 35.7 & 154 & 320 \\
  956 + 60 & 0.67 & 42.1 & 34.7 & 138 & 340 \\
  957 +120 & 0.52 & 45.1 & 34.0 & 124 & 370 \\
  958 +\hline
  959 +\end{tabular}
  960 +\end{center}
  961 +\end{table}
  962 +
  963 +Before continuing your text you need an empty line. \dots
  964 +
  965 +\vspace{3mm}
  966 +For further information you will find a complete description of
  967 +the tabular environment
  968 +on p.~62~ff. and p.~204 of the {\em \LaTeX{} User's Guide \& Reference
  969 +Manual\/} by Leslie Lamport.
  970 +%
  971 +\subsection{Tables Not Coded with \protect\LaTeX{}}
  972 +%
  973 +If you do not wish to code your table using \LaTeX{}
  974 +but prefer to have it reproduced separately,
  975 +proceed as for figures and use the following coding:\\[2mm]
  976 +{\itshape Sample Input}
  977 +\begin{verbatim}
  978 +\begin{table}
  979 +\caption{text of your caption}
  980 +\vspace{x cm} % the actual height needed for your table
  981 +\end{table}
  982 +\end{verbatim}
  983 +%
  984 +\subsection{Signs and Characters}
  985 +%
  986 +\subsubsection*{Special Signs.}
  987 +%
  988 +You may need to use special signs. The available ones are listed in the
  989 +{\em \LaTeX{} User's Guide \& Reference Manual\/} by Leslie Lamport,
  990 +pp.~41\,ff.
  991 +We have created further symbols for math mode (enclosed in \$):
  992 +\begin{center}
  993 +\begin{tabular}{l@{\hspace{1em}yields\hspace{1em}}
  994 +c@{\hspace{3em}}l@{\hspace{1em}yields\hspace{1em}}c}
  995 +\verb|\grole| & $\grole$ & \verb|\getsto| & $\getsto$\\
  996 +\verb|\lid| & $\lid$ & \verb|\gid| & $\gid$
  997 +\end{tabular}
  998 +\end{center}
  999 +%
  1000 +\subsubsection*{Gothic (Fraktur).}
  1001 +%
  1002 +If gothic letters are {\itshape necessary}, please use those of the
  1003 +relevant \AmSTeX{} alphabet which are available using the amstex
  1004 +package of the American Mathematical Society.
  1005 +
  1006 +In \LaTeX{} only the following gothic letters are available:
  1007 +\verb|$\Re$| yields $\Re$ and \verb|$\Im$| yields $\Im$. These should
  1008 +{\itshape not\/} be used when you need gothic letters for your contribution.
  1009 +Use \AmSTeX{} gothic as explained above. For the real and the imaginary
  1010 +parts of a complex number within math mode you should use instead:
  1011 +\verb|$\mathrm{Re}$| (which yields Re) or \verb|$\mathrm{Im}$| (which
  1012 +yields Im).
  1013 +%
  1014 +\subsubsection*{Script.}
  1015 +%
  1016 +For script capitals use the coding
  1017 +\begin{center}
  1018 +\begin{tabular}{l@{\hspace{1em}which yields\hspace{1em}}c}
  1019 +\verb|$\mathcal{AB}$| & $\mathcal{AB}$
  1020 +\end{tabular}
  1021 +\end{center}
  1022 +(see p.~42 of the \LaTeX{} book).
  1023 +%
  1024 +\subsubsection*{Special Roman.}
  1025 +%
  1026 +If you need other symbols than those below, you could use
  1027 +the blackboard bold characters of \AmSTeX{}, but there might arise
  1028 +capacity problems
  1029 +in loading additional \AmSTeX{} fonts. Therefore we created
  1030 +the blackboard bold characters listed below.
  1031 +Some of them are not esthetically
  1032 +satisfactory. This need not deter you from using them:
  1033 +in the final printed form they will be
  1034 +replaced by the well-designed MT (monotype) characters of
  1035 +the phototypesetting machine.
  1036 +\begin{flushleft}
  1037 +\begin{tabular}{@{}ll@{ yields }
  1038 +c@{\hspace{1.em}}ll@{ yields }c}
  1039 +\verb|\bbbc| & (complex numbers) & $\bbbc$
  1040 + & \verb|\bbbf| & (blackboard bold F) & $\bbbf$\\
  1041 +\verb|\bbbh| & (blackboard bold H) & $\bbbh$
  1042 + & \verb|\bbbk| & (blackboard bold K) & $\bbbk$\\
  1043 +\verb|\bbbm| & (blackboard bold M) & $\bbbm$
  1044 + & \verb|\bbbn| & (natural numbers N) & $\bbbn$\\
  1045 +\verb|\bbbp| & (blackboard bold P) & $\bbbp$
  1046 + & \verb|\bbbq| & (rational numbers) & $\bbbq$\\
  1047 +\verb|\bbbr| & (real numbers) & $\bbbr$
  1048 + & \verb|\bbbs| & (blackboard bold S) & $\bbbs$\\
  1049 +\verb|\bbbt| & (blackboard bold T) & $\bbbt$
  1050 + & \verb|\bbbz| & (whole numbers) & $\bbbz$\\
  1051 +\verb|\bbbone| & (symbol one) & $\bbbone$
  1052 +\end{tabular}
  1053 +\end{flushleft}
  1054 +\begin{displaymath}
  1055 +\begin{array}{c}
  1056 +\bbbc^{\bbbc^{\bbbc}} \otimes
  1057 +\bbbf_{\bbbf_{\bbbf}} \otimes
  1058 +\bbbh_{\bbbh_{\bbbh}} \otimes
  1059 +\bbbk_{\bbbk_{\bbbk}} \otimes
  1060 +\bbbm^{\bbbm^{\bbbm}} \otimes
  1061 +\bbbn_{\bbbn_{\bbbn}} \otimes
  1062 +\bbbp^{\bbbp^{\bbbp}}\\[2mm]
  1063 +\otimes
  1064 +\bbbq_{\bbbq_{\bbbq}} \otimes
  1065 +\bbbr^{\bbbr^{\bbbr}} \otimes
  1066 +\bbbs^{\bbbs_{\bbbs}} \otimes
  1067 +\bbbt^{\bbbt^{\bbbt}} \otimes
  1068 +\bbbz \otimes
  1069 +\bbbone^{\bbbone_{\bbbone}}
  1070 +\end{array}
  1071 +\end{displaymath}
  1072 +%
  1073 +\section{References}
  1074 +\label{refer}
  1075 +%
  1076 +There are three reference systems available; only one, of course,
  1077 +should be used for your contribution. With each system (by
  1078 +number only, by letter-number or by author-year) a reference list
  1079 +containing all citations in the
  1080 +text, should be included at the end of your contribution placing the
  1081 +\LaTeX{} environment \verb|thebibliography| there.
  1082 +For an overall information on that environment
  1083 +see the {\em \LaTeX{} User's Guide \& Reference
  1084 +Manual\/} by Leslie Lamport, p.~71.
  1085 +
  1086 +There is a special {\sc Bib}\TeX{} style for LLNCS that works along
  1087 +with the class: \verb|splncs.bst|
  1088 +-- call for it with a line \verb|\bibliographystyle{splncs}|.
  1089 +If you plan to use another {\sc Bib}\TeX{} style you are customed to,
  1090 +please specify the option \verb|[oribibl]| in the
  1091 +\verb|documentclass| line, like:
  1092 +\begin{verbatim}
  1093 +\documentclass[oribibl]{llncs}
  1094 +\end{verbatim}
  1095 +This will retain the original \LaTeX{} code for the bibliographic
  1096 +environment and the \verb|\cite| mechanism that many {\sc Bib}\TeX{}
  1097 +applications rely on.
  1098 +%
  1099 +\subsection{References by Letter-Number or by Number Only}
  1100 +%
  1101 +References are cited in the text -- using the \verb|\cite|
  1102 +command of \LaTeX{} -- by number or by letter-number in square
  1103 +brackets, e.g.\ [1] or [E1, S2], [P1], according to your use of the
  1104 +\verb|\bibitem| command in the \verb|thebibliography| environment. The
  1105 +coding is as follows: if you choose your own label for the sources by
  1106 +giving an optional argument to the \verb|\bibitem| command the citations
  1107 +in the text are marked with the label you supplied. Otherwise a simple
  1108 +numbering is done, which is preferred.
  1109 +\begin{verbatim}
  1110 +The results in this section are a refined version
  1111 +of \cite{clar:eke}; the minimality result of Proposition~14
  1112 +was the first of its kind.
  1113 +\end{verbatim}
  1114 +The above input produces the citation: ``\dots\ refined version of
  1115 +[CE1]; the min\-i\-mality\dots''. Then the \verb|\bibitem| entry of
  1116 +the \verb|thebibliography| environment should read:
  1117 +\begin{verbatim}
  1118 +\begin{thebibliography}{[MT1]}
  1119 +.
  1120 +.
  1121 +\bibitem[CE1]{clar:eke}
  1122 +Clarke, F., Ekeland, I.:
  1123 +Nonlinear oscillations and boundary-value problems for
  1124 +Hamiltonian systems.
  1125 +Arch. Rat. Mech. Anal. 78, 315--333 (1982)
  1126 +.
  1127 +.
  1128 +\end{thebibliography}
  1129 +\end{verbatim}
  1130 +The complete bibliography looks like this:
  1131 +%
  1132 +\begin{thebibliography}{[MT1]}
  1133 +%
  1134 +\bibitem[CE1]{clar:eke}
  1135 +Clarke, F., Ekeland, I.:
  1136 +Nonlinear oscillations and
  1137 +boundary-value problems for Hamiltonian systems.
  1138 +Arch. Rat. Mech. Anal. 78, 315--333 (1982)
  1139 +%
  1140 +\bibitem[CE2]{clar:eke:2}
  1141 +Clarke, F., Ekeland, I.:
  1142 +Solutions p\'{e}riodiques, du
  1143 +p\'{e}riode donn\'{e}e, des \'{e}quations hamiltoniennes.
  1144 +Note CRAS Paris 287, 1013--1015 (1978)
  1145 +%
  1146 +\bibitem[MT1]{mich:tar}
  1147 +Michalek, R., Tarantello, G.:
  1148 +Subharmonic solutions with prescribed minimal
  1149 +period for nonautonomous Hamiltonian systems.
  1150 +J. Diff. Eq. 72, 28--55 (1988)
  1151 +%
  1152 +\bibitem[Ta1]{tar}
  1153 +Tarantello, G.:
  1154 +Subharmonic solutions for Hamiltonian
  1155 +systems via a $\bbbz_{p}$ pseudoindex theory.
  1156 +Annali di Matematica Pura (to appear)
  1157 +%
  1158 +\bibitem[Ra1]{rab}
  1159 +Rabinowitz, P.:
  1160 +On subharmonic solutions of a Hamiltonian system.
  1161 +Comm. Pure Appl. Math. 33, 609--633 (1980)
  1162 +\end{thebibliography}
  1163 +%
  1164 +\subsubsection*{Number-Only System.}
  1165 +%
  1166 +For this preferred system do not use the optional argument
  1167 +in the \verb|\bibitem| command: then, only numbers will
  1168 +appear for the citations in the text (enclosed in square brackets)
  1169 +as well as for the marks in your
  1170 +bibliography (here the number is only end-punctuated without
  1171 +square brackets).
  1172 +
  1173 +Subsequent citation numbers in the text are collapsed to ranges.
  1174 +Non-numeric and undefined labels are handled correctly but no sorting is
  1175 +done.
  1176 +
  1177 +E.g., \verb|\cite{n1,n3,n2,n3,n4,n5,foo,n1,n2,n3,?,n4,n5}| -- where
  1178 +\verb|n|$x$ is the key of the $x^{\mathrm{th}}$ \verb|\bibitem|
  1179 +command in sequence, \verb|foo| is the key of a \verb|\bibitem| with an
  1180 +optional argument, and \verb|?| is an undefined reference -- gives
  1181 +1,3,2-5,foo,1-3,?,4,5 as the citation reference.
  1182 +
  1183 +\begin{verbatim}
  1184 +\begin{thebibliography}{1}
  1185 +\bibitem {clar:eke}
  1186 +Clarke, F., Ekeland, I.:
  1187 +Nonlinear oscillations and boundary-value problems for
  1188 +Hamiltonian systems.
  1189 +Arch. Rat. Mech. Anal. 78, 315--333 (1982)
  1190 +\end{thebibliography}
  1191 +\end{verbatim}
  1192 +%
  1193 +\subsection{Author-Year System}
  1194 +%
  1195 +References are cited in the text by name and year in parentheses
  1196 +and should look as follows:
  1197 +(Smith 1970, 1980), (Ekeland et al. 1985, Theorem 2), (Jones and Jaffe
  1198 +1986; Farrow 1988, Chap.\,2). If the name is part of the sentence
  1199 +only the year may appear in parentheses,
  1200 +e.g.\ Ekeland et al. (1985, Sect.\,2.1)
  1201 +The reference list should contain all citations occurring in the text,
  1202 +ordered alphabetically by surname (with initials following). If there
  1203 +are several works by the same author(s) the references should be listed
  1204 +in the appropriate order indicated below:
  1205 +\begin{alpherate}
  1206 +\setlength{\hfuzz}{5pt}
  1207 +\item
  1208 +One author: list works chronologically;
  1209 +\item
  1210 +Author and same co-author(s): list works chronologically;
  1211 +\item
  1212 +Author and different co-authors: list works alphabetically
  1213 +according to co-authors.
  1214 +\end{alpherate}
  1215 +If there are several works by the same author(s) and in the same year,
  1216 +but which are cited separately, they should be distinguished by the use
  1217 +of ``a'', ``b'' etc., e.g.\ (Smith 1982a), (Ekeland et al. 1982b).
  1218 +%
  1219 +\subsubsection*{How to Code Author-Year System.}
  1220 +%
  1221 +If you want to use this system you have to specify the option
  1222 +\verb|[citeauthoryear]| in the \verb|documentclass|, like:
  1223 +\begin{verbatim}
  1224 +\documentclass[citeauthoryear]{llncs}
  1225 +\end{verbatim}
  1226 +Write your citations in the text explicitly except for the year, leaving
  1227 +that up to \LaTeX{} with the \verb|\cite| command. Then give only the
  1228 +appropriate year as the optional argument (i.e. the label in square
  1229 +brackets) with the \verb|\bibitem| command(s).\\[2mm]
  1230 +{\itshape Sample Input}
  1231 +\begin{verbatim}
  1232 +The results in this section are a refined version
  1233 +of Clarke and Ekeland (\cite{clar:eke}); the minimality result of
  1234 +Proposition~14 was the first of its kind.
  1235 +\end{verbatim}
  1236 +The above input produces the citation: ``\dots\ refined version of
  1237 +Clarke and Ekeland (1982); the minimality\dots''. Then the
  1238 +\verb|\bibitem| entry of \verb|clar:eke| in the \verb|thebibliography|
  1239 +environment should read:
  1240 +\begin{verbatim}
  1241 +\begin{thebibliography}{} % (do not forget {})
  1242 +.
  1243 +.
  1244 +\bibitem[1982]{clar:eke}
  1245 +Clarke, F., Ekeland, I.:
  1246 +Nonlinear oscillations and boundary-value problems for
  1247 +Hamiltonian systems.
  1248 +Arch. Rat. Mech. Anal. 78, 315--333 (1982)
  1249 +.
  1250 +.
  1251 +\end{thebibliography}
  1252 +\end{verbatim}
  1253 +{\itshape Sample Output}
  1254 +\bibauthoryear
  1255 +%
  1256 +\end{document}
... ...
OSS-2016/llncsdoc.sty 0 → 100644
... ... @@ -0,0 +1,42 @@
  1 +% This is LLNCSDOC.STY the modification of the
  2 +% LLNCS class file for the documentation of
  3 +% the class itself.
  4 +%
  5 +\def\AmS{{\protect\usefont{OMS}{cmsy}{m}{n}%
  6 + A\kern-.1667em\lower.5ex\hbox{M}\kern-.125emS}}
  7 +\def\AmSTeX{{\protect\AmS-\protect\TeX}}
  8 +%
  9 +\def\ps@myheadings{\let\@mkboth\@gobbletwo
  10 +\def\@oddhead{\hbox{}\hfil\small\rm\rightmark
  11 +\qquad\thepage}%
  12 +\def\@oddfoot{}\def\@evenhead{\small\rm\thepage\qquad
  13 +\leftmark\hfil}%
  14 +\def\@evenfoot{}\def\sectionmark##1{}\def\subsectionmark##1{}}
  15 +\ps@myheadings
  16 +%
  17 +\setcounter{tocdepth}{2}
  18 +%
  19 +\renewcommand{\labelitemi}{--}
  20 +\newenvironment{alpherate}%
  21 +{\renewcommand{\labelenumi}{\alph{enumi})}\begin{enumerate}}%
  22 +{\end{enumerate}\renewcommand{\labelenumi}{enumi}}
  23 +%
  24 +\def\bibauthoryear{\begingroup
  25 +\def\thebibliography##1{\section*{References}%
  26 + \small\list{}{\settowidth\labelwidth{}\leftmargin\parindent
  27 + \itemindent=-\parindent
  28 + \labelsep=\z@
  29 + \usecounter{enumi}}%
  30 + \def\newblock{\hskip .11em plus .33em minus -.07em}%
  31 + \sloppy
  32 + \sfcode`\.=1000\relax}%
  33 + \def\@cite##1{##1}%
  34 + \def\@lbibitem[##1]##2{\item[]\if@filesw
  35 + {\def\protect####1{\string ####1\space}\immediate
  36 + \write\@auxout{\string\bibcite{##2}{##1}}}\fi\ignorespaces}%
  37 +\begin{thebibliography}{}
  38 +\bibitem[1982]{clar:eke3} Clarke, F., Ekeland, I.: Nonlinear
  39 +oscillations and boundary-value problems for Hamiltonian systems.
  40 +Arch. Rat. Mech. Anal. 78, 315--333 (1982)
  41 +\end{thebibliography}
  42 +\endgroup}
... ...
OSS-2016/remreset.sty 0 → 100644
... ... @@ -0,0 +1,39 @@
  1 +
  2 +% remreset package
  3 +%%%%%%%%%%%%%%%%%%
  4 +
  5 +% Copyright 1997 David carlisle
  6 +% This file may be distributed under the terms of the LPPL.
  7 +% See 00readme.txt for details.
  8 +
  9 +% 1997/09/28 David Carlisle
  10 +
  11 +% LaTeX includes a command \@addtoreset that is used to declare that
  12 +% a counter should be reset every time a second counter is incremented.
  13 +
  14 +% For example the book class has a line
  15 +% \@addtoreset{footnote}{chapter}
  16 +% So that the footnote counter is reset each chapter.
  17 +
  18 +% If you wish to bas a new class on book, but without this counter
  19 +% being reset, then standard LaTeX gives no simple mechanism to do
  20 +% this.
  21 +
  22 +% This package defines |\@removefromreset| which just undoes the effect
  23 +% of \@addtorest. So for example a class file may be defined by
  24 +
  25 +% \LoadClass{book}
  26 +% \@removefromreset{footnote}{chapter}
  27 +
  28 +
  29 +\def\@removefromreset#1#2{{%
  30 + \expandafter\let\csname c@#1\endcsname\@removefromreset
  31 + \def\@elt##1{%
  32 + \expandafter\ifx\csname c@##1\endcsname\@removefromreset
  33 + \else
  34 + \noexpand\@elt{##1}%
  35 + \fi}%
  36 + \expandafter\xdef\csname cl@#2\endcsname{%
  37 + \csname cl@#2\endcsname}}}
  38 +
  39 +
... ...
OSS-2016/spb.bib 0 → 100644
... ... @@ -0,0 +1,37 @@
  1 +@article{naur1969software,
  2 + title={NATO},
  3 + author={Naur, Peter and Randell, Brian},
  4 + year={1969}
  5 +}
  6 +
  7 +@phdthesis{meirelles2013monitoramento,
  8 + title={Monitoramento de m{\'e}tricas de c{\'o}digo-fonte em projetos de software livre},
  9 + author={Meirelles, Paulo Roberto Miranda},
  10 + year={2013},
  11 + school={Universidade de S{\~a}o Paulo},
  12 + url={http://www.teses.usp.br/teses/disponiveis/45/45134/tde-27082013-090242/pt-br.php}
  13 +}
  14 +
  15 +@article{meirelles2009crab,
  16 + title={Crab: Uma software para avalia{\c{c}}{\~a}o de qualidade de c{\'o}digo},
  17 + author={Meirellesunes, Paulo and Challco, Geiser and Morais, Eduardo and Kon, Fabio},
  18 + journal={XXIII SBES-Simp{\'o}sio Brasileiro de Engenharia de Software (XVI Sess{\~a}o de Ferramentas). Citado na p{\'a}g},
  19 + volume={33},
  20 + year={2009}
  21 +}
  22 +
  23 +@mastersthesis{de2013kalibro,
  24 + title={Kalibro: interpreta{\c{c}}{\~a}o de m{\'e}tricas de c{\'o}digo-fonte},
  25 + author={de Oliveira Filho, Carlos Morais},
  26 + year={2013},
  27 + school={Universidade de S{\~a}o Paulo}
  28 +}
  29 +
  30 +@inproceedings{terceiro2010analizo,
  31 + title={Analizo: an extensible multi-language source code analysis and visualization toolkit},
  32 + author={Terceiro, ulo and Rios, Luiz Rom{\'a}rio and Almeida, Lucianna and Chavez, Christina and Kon, Fabio},
  33 + booktitle={Brazilian Conference on Software: Theory and Practice (CBSoft)--Tools, Salvador-Brazil},
  34 + volume={29},
  35 + year={2010}
  36 +}
  37 +
... ...
OSS-2016/spb.tex 0 → 100644
... ... @@ -0,0 +1,81 @@
  1 +\documentclass{llncs}
  2 +
  3 +\usepackage{llncsdoc}
  4 +\usepackage{graphicx,url}
  5 +\usepackage[brazil]{babel}
  6 +\usepackage[utf8]{inputenc}
  7 +\usepackage{float}
  8 +\usepackage{setspace}
  9 +
  10 +\usepackage{tabularx}
  11 +\usepackage{cite}
  12 +\usepackage{hyperref}
  13 +
  14 +\begin{document}
  15 +\sloppy
  16 +\title{Titulo aqui}
  17 +
  18 +\author{Autores aqui}
  19 +
  20 +\institute{Instituto Aqui\\
  21 + \email{\{emails, aqui\}@unb.br}
  22 + \and
  23 + Faculdade do Gama -- Universidade de Brasília (UnB)\\
  24 + Gama -- DF -- Brasil\\
  25 + \email{paulormm@unb.br}}
  26 +
  27 +\maketitle
  28 +\begin{abstract}
  29 + % Contexto
  30 + % Problema
  31 + % TODO: adicionar referência que apoie a falta de uso de análise estática em ambientes de desenvolvimento.
  32 + % Soluções propostas
  33 + % Frase de impacto
  34 +\textbf{palavras chave} palavras chaves aqui.
  35 +\end{abstract}
  36 +
  37 +\section{Introdução} \label{sec:intro}
  38 +
  39 +\section{Motivação}\label{sec:motivacao}
  40 +
  41 +\section{Ferramentas similares}
  42 +
  43 +\section{Histórico do spb}\label{sec:spb}
  44 +
  45 + \subsection{Origem}\label{sec:origin}
  46 +
  47 +
  48 + \subsection{Primeiro protótipo de interface gráfica}\label{sec:primeiro-prototipo}
  49 +
  50 + \subsection{Segunda interface gráfica - Prezento}\label{sec:segundo-prototipo}
  51 +
  52 + \subsection{Kalibro em \textit{Ruby on Rails}}
  53 +
  54 +\section{Arquitetura}
  55 +
  56 + %%% Colocar figura da época do Noosfero
  57 +
  58 + %%% Colocar figura da época pós Noosfero. Dependendo da figura que vamos colocar aqui, adaptar o texto e adicionar mais coisas.
  59 +
  60 + %%% Colocar figura atual. Decidir se já vamos colocar com kalibro_client e kalibro_core. Complementar o texto.
  61 + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  62 +
  63 +\section{Diferenciais} \label{subsec:motivacao}
  64 +
  65 +\section{Por que usar o Mezuro?} \label{sec:projeto-mezuro}
  66 +
  67 +\section{Principais funcionalidades}\label{sec:princ-funcionalidades}
  68 +
  69 +\section{A rede social}\label{sec:user-potencial}
  70 +
  71 +\section{Casos de uso}
  72 +
  73 + \subsection{Criação de configuração}
  74 +
  75 + \subsection{Criação de projeto e avaliação de repositório}
  76 +
  77 +\section{Conclusão}
  78 +
  79 +\bibliographystyle{splncs03}
  80 +\bibliography{mezuro}
  81 +\end{document}
... ...
OSS-2016/splncs03.bst 0 → 100644
... ... @@ -0,0 +1,1519 @@
  1 +%% BibTeX bibliography style `splncs03'
  2 +%%
  3 +%% BibTeX bibliography style for use with numbered references in
  4 +%% Springer Verlag's "Lecture Notes in Computer Science" series.
  5 +%% (See Springer's documentation for llncs.cls for
  6 +%% more details of the suggested reference format.) Note that this
  7 +%% file will not work for author-year style citations.
  8 +%%
  9 +%% Use \documentclass{llncs} and \bibliographystyle{splncs03}, and cite
  10 +%% a reference with (e.g.) \cite{smith77} to get a "[1]" in the text.
  11 +%%
  12 +%% This file comes to you courtesy of Maurizio "Titto" Patrignani of
  13 +%% Dipartimento di Informatica e Automazione Universita' Roma Tre
  14 +%%
  15 +%% ================================================================================================
  16 +%% This was file `titto-lncs-02.bst' produced on Wed Apr 1, 2009
  17 +%% Edited by hand by titto based on `titto-lncs-01.bst' (see below)
  18 +%%
  19 +%% CHANGES (with respect to titto-lncs-01.bst):
  20 +%% - Removed the call to \urlprefix (thus no "URL" string is added to the output)
  21 +%% ================================================================================================
  22 +%% This was file `titto-lncs-01.bst' produced on Fri Aug 22, 2008
  23 +%% Edited by hand by titto based on `titto.bst' (see below)
  24 +%%
  25 +%% CHANGES (with respect to titto.bst):
  26 +%% - Removed the "capitalize" command for editors string "(eds.)" and "(ed.)"
  27 +%% - Introduced the functions titto.bbl.pages and titto.bbl.page for journal pages (without "pp.")
  28 +%% - Added a new.sentence command to separate with a dot booktitle and series in the inproceedings
  29 +%% - Commented all new.block commands before urls and notes (to separate them with a comma)
  30 +%% - Introduced the functions titto.bbl.volume for handling journal volumes (without "vol." label)
  31 +%% - Used for editors the same name conventions used for authors (see function format.in.ed.booktitle)
  32 +%% - Removed a \newblock to avoid long spaces between title and "In: ..."
  33 +%% - Added function titto.space.prefix to add a space instead of "~" after the (removed) "vol." label
  34 +%% ================================================================================================
  35 +%% This was file `titto.bst',
  36 +%% generated with the docstrip utility.
  37 +%%
  38 +%% The original source files were:
  39 +%%
  40 +%% merlin.mbs (with options: `vonx,nm-rvvc,yr-par,jttl-rm,volp-com,jwdpg,jwdvol,numser,ser-vol,jnm-x,btit-rm,bt-rm,edparxc,bkedcap,au-col,in-col,fin-bare,pp,ed,abr,mth-bare,xedn,jabr,and-com,and-com-ed,xand,url,url-blk,em-x,nfss,')
  41 +%% ----------------------------------------
  42 +%% *** Tentative .bst file for Springer LNCS ***
  43 +%%
  44 +%% Copyright 1994-2007 Patrick W Daly
  45 + % ===============================================================
  46 + % IMPORTANT NOTICE:
  47 + % This bibliographic style (bst) file has been generated from one or
  48 + % more master bibliographic style (mbs) files, listed above.
  49 + %
  50 + % This generated file can be redistributed and/or modified under the terms
  51 + % of the LaTeX Project Public License Distributed from CTAN
  52 + % archives in directory macros/latex/base/lppl.txt; either
  53 + % version 1 of the License, or any later version.
  54 + % ===============================================================
  55 + % Name and version information of the main mbs file:
  56 + % \ProvidesFile{merlin.mbs}[2007/04/24 4.20 (PWD, AO, DPC)]
  57 + % For use with BibTeX version 0.99a or later
  58 + %-------------------------------------------------------------------
  59 + % This bibliography style file is intended for texts in ENGLISH
  60 + % This is a numerical citation style, and as such is standard LaTeX.
  61 + % It requires no extra package to interface to the main text.
  62 + % The form of the \bibitem entries is
  63 + % \bibitem{key}...
  64 + % Usage of \cite is as follows:
  65 + % \cite{key} ==>> [#]
  66 + % \cite[chap. 2]{key} ==>> [#, chap. 2]
  67 + % where # is a number determined by the ordering in the reference list.
  68 + % The order in the reference list is alphabetical by authors.
  69 + %---------------------------------------------------------------------
  70 +
  71 +ENTRY
  72 + { address
  73 + author
  74 + booktitle
  75 + chapter
  76 + edition
  77 + editor
  78 + eid
  79 + howpublished
  80 + institution
  81 + journal
  82 + key
  83 + month
  84 + note
  85 + number
  86 + organization
  87 + pages
  88 + publisher
  89 + school
  90 + series
  91 + title
  92 + type
  93 + url
  94 + volume
  95 + year
  96 + }
  97 + {}
  98 + { label }
  99 +INTEGERS { output.state before.all mid.sentence after.sentence after.block }
  100 +FUNCTION {init.state.consts}
  101 +{ #0 'before.all :=
  102 + #1 'mid.sentence :=
  103 + #2 'after.sentence :=
  104 + #3 'after.block :=
  105 +}
  106 +STRINGS { s t}
  107 +FUNCTION {output.nonnull}
  108 +{ 's :=
  109 + output.state mid.sentence =
  110 + { ", " * write$ }
  111 + { output.state after.block =
  112 + { add.period$ write$
  113 +% newline$
  114 +% "\newblock " write$ % removed for titto-lncs-01
  115 + " " write$ % to avoid long spaces between title and "In: ..."
  116 + }
  117 + { output.state before.all =
  118 + 'write$
  119 + { add.period$ " " * write$ }
  120 + if$
  121 + }
  122 + if$
  123 + mid.sentence 'output.state :=
  124 + }
  125 + if$
  126 + s
  127 +}
  128 +FUNCTION {output}
  129 +{ duplicate$ empty$
  130 + 'pop$
  131 + 'output.nonnull
  132 + if$
  133 +}
  134 +FUNCTION {output.check}
  135 +{ 't :=
  136 + duplicate$ empty$
  137 + { pop$ "empty " t * " in " * cite$ * warning$ }
  138 + 'output.nonnull
  139 + if$
  140 +}
  141 +FUNCTION {fin.entry}
  142 +{ duplicate$ empty$
  143 + 'pop$
  144 + 'write$
  145 + if$
  146 + newline$
  147 +}
  148 +
  149 +FUNCTION {new.block}
  150 +{ output.state before.all =
  151 + 'skip$
  152 + { after.block 'output.state := }
  153 + if$
  154 +}
  155 +FUNCTION {new.sentence}
  156 +{ output.state after.block =
  157 + 'skip$
  158 + { output.state before.all =
  159 + 'skip$
  160 + { after.sentence 'output.state := }
  161 + if$
  162 + }
  163 + if$
  164 +}
  165 +FUNCTION {add.blank}
  166 +{ " " * before.all 'output.state :=
  167 +}
  168 +
  169 +
  170 +FUNCTION {add.colon}
  171 +{ duplicate$ empty$
  172 + 'skip$
  173 + { ":" * add.blank }
  174 + if$
  175 +}
  176 +
  177 +FUNCTION {date.block}
  178 +{
  179 + new.block
  180 +}
  181 +
  182 +FUNCTION {not}
  183 +{ { #0 }
  184 + { #1 }
  185 + if$
  186 +}
  187 +FUNCTION {and}
  188 +{ 'skip$
  189 + { pop$ #0 }
  190 + if$
  191 +}
  192 +FUNCTION {or}
  193 +{ { pop$ #1 }
  194 + 'skip$
  195 + if$
  196 +}
  197 +STRINGS {z}
  198 +FUNCTION {remove.dots}
  199 +{ 'z :=
  200 + ""
  201 + { z empty$ not }
  202 + { z #1 #1 substring$
  203 + z #2 global.max$ substring$ 'z :=
  204 + duplicate$ "." = 'pop$
  205 + { * }
  206 + if$
  207 + }
  208 + while$
  209 +}
  210 +FUNCTION {new.block.checka}
  211 +{ empty$
  212 + 'skip$
  213 + 'new.block
  214 + if$
  215 +}
  216 +FUNCTION {new.block.checkb}
  217 +{ empty$
  218 + swap$ empty$
  219 + and
  220 + 'skip$
  221 + 'new.block
  222 + if$
  223 +}
  224 +FUNCTION {new.sentence.checka}
  225 +{ empty$
  226 + 'skip$
  227 + 'new.sentence
  228 + if$
  229 +}
  230 +FUNCTION {new.sentence.checkb}
  231 +{ empty$
  232 + swap$ empty$
  233 + and
  234 + 'skip$
  235 + 'new.sentence
  236 + if$
  237 +}
  238 +FUNCTION {field.or.null}
  239 +{ duplicate$ empty$
  240 + { pop$ "" }
  241 + 'skip$
  242 + if$
  243 +}
  244 +FUNCTION {emphasize}
  245 +{ skip$ }
  246 +FUNCTION {tie.or.space.prefix}
  247 +{ duplicate$ text.length$ #3 <
  248 + { "~" }
  249 + { " " }
  250 + if$
  251 + swap$
  252 +}
  253 +FUNCTION {titto.space.prefix} % always introduce a space
  254 +{ duplicate$ text.length$ #3 <
  255 + { " " }
  256 + { " " }
  257 + if$
  258 + swap$
  259 +}
  260 +
  261 +
  262 +FUNCTION {capitalize}
  263 +{ "u" change.case$ "t" change.case$ }
  264 +
  265 +FUNCTION {space.word}
  266 +{ " " swap$ * " " * }
  267 + % Here are the language-specific definitions for explicit words.
  268 + % Each function has a name bbl.xxx where xxx is the English word.
  269 + % The language selected here is ENGLISH
  270 +FUNCTION {bbl.and}
  271 +{ "and"}
  272 +
  273 +FUNCTION {bbl.etal}
  274 +{ "et~al." }
  275 +
  276 +FUNCTION {bbl.editors}
  277 +{ "eds." }
  278 +
  279 +FUNCTION {bbl.editor}
  280 +{ "ed." }
  281 +
  282 +FUNCTION {bbl.edby}
  283 +{ "edited by" }
  284 +
  285 +FUNCTION {bbl.edition}
  286 +{ "edn." }
  287 +
  288 +FUNCTION {bbl.volume}
  289 +{ "vol." }
  290 +
  291 +FUNCTION {titto.bbl.volume} % for handling journals
  292 +{ "" }
  293 +
  294 +FUNCTION {bbl.of}
  295 +{ "of" }
  296 +
  297 +FUNCTION {bbl.number}
  298 +{ "no." }
  299 +
  300 +FUNCTION {bbl.nr}
  301 +{ "no." }
  302 +
  303 +FUNCTION {bbl.in}
  304 +{ "in" }
  305 +
  306 +FUNCTION {bbl.pages}
  307 +{ "pp." }
  308 +
  309 +FUNCTION {bbl.page}
  310 +{ "p." }
  311 +
  312 +FUNCTION {titto.bbl.pages} % for journals
  313 +{ "" }
  314 +
  315 +FUNCTION {titto.bbl.page} % for journals
  316 +{ "" }
  317 +
  318 +FUNCTION {bbl.chapter}
  319 +{ "chap." }
  320 +
  321 +FUNCTION {bbl.techrep}
  322 +{ "Tech. Rep." }
  323 +
  324 +FUNCTION {bbl.mthesis}
  325 +{ "Master's thesis" }
  326 +
  327 +FUNCTION {bbl.phdthesis}
  328 +{ "Ph.D. thesis" }
  329 +
  330 +MACRO {jan} {"Jan."}
  331 +
  332 +MACRO {feb} {"Feb."}
  333 +
  334 +MACRO {mar} {"Mar."}
  335 +
  336 +MACRO {apr} {"Apr."}
  337 +
  338 +MACRO {may} {"May"}
  339 +
  340 +MACRO {jun} {"Jun."}
  341 +
  342 +MACRO {jul} {"Jul."}
  343 +
  344 +MACRO {aug} {"Aug."}
  345 +
  346 +MACRO {sep} {"Sep."}
  347 +
  348 +MACRO {oct} {"Oct."}
  349 +
  350 +MACRO {nov} {"Nov."}
  351 +
  352 +MACRO {dec} {"Dec."}
  353 +
  354 +MACRO {acmcs} {"ACM Comput. Surv."}
  355 +
  356 +MACRO {acta} {"Acta Inf."}
  357 +
  358 +MACRO {cacm} {"Commun. ACM"}
  359 +
  360 +MACRO {ibmjrd} {"IBM J. Res. Dev."}
  361 +
  362 +MACRO {ibmsj} {"IBM Syst.~J."}
  363 +
  364 +MACRO {ieeese} {"IEEE Trans. Software Eng."}
  365 +
  366 +MACRO {ieeetc} {"IEEE Trans. Comput."}
  367 +
  368 +MACRO {ieeetcad}
  369 + {"IEEE Trans. Comput. Aid. Des."}
  370 +
  371 +MACRO {ipl} {"Inf. Process. Lett."}
  372 +
  373 +MACRO {jacm} {"J.~ACM"}
  374 +
  375 +MACRO {jcss} {"J.~Comput. Syst. Sci."}
  376 +
  377 +MACRO {scp} {"Sci. Comput. Program."}
  378 +
  379 +MACRO {sicomp} {"SIAM J. Comput."}
  380 +
  381 +MACRO {tocs} {"ACM Trans. Comput. Syst."}
  382 +
  383 +MACRO {tods} {"ACM Trans. Database Syst."}
  384 +
  385 +MACRO {tog} {"ACM Trans. Graphic."}
  386 +
  387 +MACRO {toms} {"ACM Trans. Math. Software"}
  388 +
  389 +MACRO {toois} {"ACM Trans. Office Inf. Syst."}
  390 +
  391 +MACRO {toplas} {"ACM Trans. Progr. Lang. Syst."}
  392 +
  393 +MACRO {tcs} {"Theor. Comput. Sci."}
  394 +
  395 +FUNCTION {bibinfo.check}
  396 +{ swap$
  397 + duplicate$ missing$
  398 + {
  399 + pop$ pop$
  400 + ""
  401 + }
  402 + { duplicate$ empty$
  403 + {
  404 + swap$ pop$
  405 + }
  406 + { swap$
  407 + pop$
  408 + }
  409 + if$
  410 + }
  411 + if$
  412 +}
  413 +FUNCTION {bibinfo.warn}
  414 +{ swap$
  415 + duplicate$ missing$
  416 + {
  417 + swap$ "missing " swap$ * " in " * cite$ * warning$ pop$
  418 + ""
  419 + }
  420 + { duplicate$ empty$
  421 + {
  422 + swap$ "empty " swap$ * " in " * cite$ * warning$
  423 + }
  424 + { swap$
  425 + pop$
  426 + }
  427 + if$
  428 + }
  429 + if$
  430 +}
  431 +FUNCTION {format.url}
  432 +{ url empty$
  433 + { "" }
  434 +% { "\urlprefix\url{" url * "}" * }
  435 + { "\url{" url * "}" * } % changed in titto-lncs-02.bst
  436 + if$
  437 +}
  438 +
  439 +INTEGERS { nameptr namesleft numnames }
  440 +
  441 +
  442 +STRINGS { bibinfo}
  443 +
  444 +FUNCTION {format.names}
  445 +{ 'bibinfo :=
  446 + duplicate$ empty$ 'skip$ {
  447 + 's :=
  448 + "" 't :=
  449 + #1 'nameptr :=
  450 + s num.names$ 'numnames :=
  451 + numnames 'namesleft :=
  452 + { namesleft #0 > }
  453 + { s nameptr
  454 + "{vv~}{ll}{, jj}{, f{.}.}"
  455 + format.name$
  456 + bibinfo bibinfo.check
  457 + 't :=
  458 + nameptr #1 >
  459 + {
  460 + namesleft #1 >
  461 + { ", " * t * }
  462 + {
  463 + s nameptr "{ll}" format.name$ duplicate$ "others" =
  464 + { 't := }
  465 + { pop$ }
  466 + if$
  467 + "," *
  468 + t "others" =
  469 + {
  470 + " " * bbl.etal *
  471 + }
  472 + { " " * t * }
  473 + if$
  474 + }
  475 + if$
  476 + }
  477 + 't
  478 + if$
  479 + nameptr #1 + 'nameptr :=
  480 + namesleft #1 - 'namesleft :=
  481 + }
  482 + while$
  483 + } if$
  484 +}
  485 +FUNCTION {format.names.ed}
  486 +{
  487 + 'bibinfo :=
  488 + duplicate$ empty$ 'skip$ {
  489 + 's :=
  490 + "" 't :=
  491 + #1 'nameptr :=
  492 + s num.names$ 'numnames :=
  493 + numnames 'namesleft :=
  494 + { namesleft #0 > }
  495 + { s nameptr
  496 + "{f{.}.~}{vv~}{ll}{ jj}"
  497 + format.name$
  498 + bibinfo bibinfo.check
  499 + 't :=
  500 + nameptr #1 >
  501 + {
  502 + namesleft #1 >
  503 + { ", " * t * }
  504 + {
  505 + s nameptr "{ll}" format.name$ duplicate$ "others" =
  506 + { 't := }
  507 + { pop$ }
  508 + if$
  509 + "," *
  510 + t "others" =
  511 + {
  512 +
  513 + " " * bbl.etal *
  514 + }
  515 + { " " * t * }
  516 + if$
  517 + }
  518 + if$
  519 + }
  520 + 't
  521 + if$
  522 + nameptr #1 + 'nameptr :=
  523 + namesleft #1 - 'namesleft :=
  524 + }
  525 + while$
  526 + } if$
  527 +}
  528 +FUNCTION {format.authors}
  529 +{ author "author" format.names
  530 +}
  531 +FUNCTION {get.bbl.editor}
  532 +{ editor num.names$ #1 > 'bbl.editors 'bbl.editor if$ }
  533 +
  534 +FUNCTION {format.editors}
  535 +{ editor "editor" format.names duplicate$ empty$ 'skip$
  536 + {
  537 + " " *
  538 + get.bbl.editor
  539 +% capitalize
  540 + "(" swap$ * ")" *
  541 + *
  542 + }
  543 + if$
  544 +}
  545 +FUNCTION {format.note}
  546 +{
  547 + note empty$
  548 + { "" }
  549 + { note #1 #1 substring$
  550 + duplicate$ "{" =
  551 + 'skip$
  552 + { output.state mid.sentence =
  553 + { "l" }
  554 + { "u" }
  555 + if$
  556 + change.case$
  557 + }
  558 + if$
  559 + note #2 global.max$ substring$ * "note" bibinfo.check
  560 + }
  561 + if$
  562 +}
  563 +
  564 +FUNCTION {format.title}
  565 +{ title
  566 + duplicate$ empty$ 'skip$
  567 + { "t" change.case$ }
  568 + if$
  569 + "title" bibinfo.check
  570 +}
  571 +FUNCTION {output.bibitem}
  572 +{ newline$
  573 + "\bibitem{" write$
  574 + cite$ write$
  575 + "}" write$
  576 + newline$
  577 + ""
  578 + before.all 'output.state :=
  579 +}
  580 +
  581 +FUNCTION {n.dashify}
  582 +{
  583 + 't :=
  584 + ""
  585 + { t empty$ not }
  586 + { t #1 #1 substring$ "-" =
  587 + { t #1 #2 substring$ "--" = not
  588 + { "--" *
  589 + t #2 global.max$ substring$ 't :=
  590 + }
  591 + { { t #1 #1 substring$ "-" = }
  592 + { "-" *
  593 + t #2 global.max$ substring$ 't :=
  594 + }
  595 + while$
  596 + }
  597 + if$
  598 + }
  599 + { t #1 #1 substring$ *
  600 + t #2 global.max$ substring$ 't :=
  601 + }
  602 + if$
  603 + }
  604 + while$
  605 +}
  606 +
  607 +FUNCTION {word.in}
  608 +{ bbl.in capitalize
  609 + ":" *
  610 + " " * }
  611 +
  612 +FUNCTION {format.date}
  613 +{
  614 + month "month" bibinfo.check
  615 + duplicate$ empty$
  616 + year "year" bibinfo.check duplicate$ empty$
  617 + { swap$ 'skip$
  618 + { "there's a month but no year in " cite$ * warning$ }
  619 + if$
  620 + *
  621 + }
  622 + { swap$ 'skip$
  623 + {
  624 + swap$
  625 + " " * swap$
  626 + }
  627 + if$
  628 + *
  629 + remove.dots
  630 + }
  631 + if$
  632 + duplicate$ empty$
  633 + 'skip$
  634 + {
  635 + before.all 'output.state :=
  636 + " (" swap$ * ")" *
  637 + }
  638 + if$
  639 +}
  640 +FUNCTION {format.btitle}
  641 +{ title "title" bibinfo.check
  642 + duplicate$ empty$ 'skip$
  643 + {
  644 + }
  645 + if$
  646 +}
  647 +FUNCTION {either.or.check}
  648 +{ empty$
  649 + 'pop$
  650 + { "can't use both " swap$ * " fields in " * cite$ * warning$ }
  651 + if$
  652 +}
  653 +FUNCTION {format.bvolume}
  654 +{ volume empty$
  655 + { "" }
  656 + { bbl.volume volume tie.or.space.prefix
  657 + "volume" bibinfo.check * *
  658 + series "series" bibinfo.check
  659 + duplicate$ empty$ 'pop$
  660 + { emphasize ", " * swap$ * }
  661 + if$
  662 + "volume and number" number either.or.check
  663 + }
  664 + if$
  665 +}
  666 +FUNCTION {format.number.series}
  667 +{ volume empty$
  668 + { number empty$
  669 + { series field.or.null }
  670 + { output.state mid.sentence =
  671 + { bbl.number }
  672 + { bbl.number capitalize }
  673 + if$
  674 + number tie.or.space.prefix "number" bibinfo.check * *
  675 + series empty$
  676 + { "there's a number but no series in " cite$ * warning$ }
  677 + { bbl.in space.word *
  678 + series "series" bibinfo.check *
  679 + }
  680 + if$
  681 + }
  682 + if$
  683 + }
  684 + { "" }
  685 + if$
  686 +}
  687 +
  688 +FUNCTION {format.edition}
  689 +{ edition duplicate$ empty$ 'skip$
  690 + {
  691 + output.state mid.sentence =
  692 + { "l" }
  693 + { "t" }
  694 + if$ change.case$
  695 + "edition" bibinfo.check
  696 + " " * bbl.edition *
  697 + }
  698 + if$
  699 +}
  700 +INTEGERS { multiresult }
  701 +FUNCTION {multi.page.check}
  702 +{ 't :=
  703 + #0 'multiresult :=
  704 + { multiresult not
  705 + t empty$ not
  706 + and
  707 + }
  708 + { t #1 #1 substring$
  709 + duplicate$ "-" =
  710 + swap$ duplicate$ "," =
  711 + swap$ "+" =
  712 + or or
  713 + { #1 'multiresult := }
  714 + { t #2 global.max$ substring$ 't := }
  715 + if$
  716 + }
  717 + while$
  718 + multiresult
  719 +}
  720 +FUNCTION {format.pages}
  721 +{ pages duplicate$ empty$ 'skip$
  722 + { duplicate$ multi.page.check
  723 + {
  724 + bbl.pages swap$
  725 + n.dashify
  726 + }
  727 + {
  728 + bbl.page swap$
  729 + }
  730 + if$
  731 + tie.or.space.prefix
  732 + "pages" bibinfo.check
  733 + * *
  734 + }
  735 + if$
  736 +}
  737 +FUNCTION {format.journal.pages}
  738 +{ pages duplicate$ empty$ 'pop$
  739 + { swap$ duplicate$ empty$
  740 + { pop$ pop$ format.pages }
  741 + {
  742 + ", " *
  743 + swap$
  744 + n.dashify
  745 + pages multi.page.check
  746 + 'titto.bbl.pages
  747 + 'titto.bbl.page
  748 + if$
  749 + swap$ tie.or.space.prefix
  750 + "pages" bibinfo.check
  751 + * *
  752 + *
  753 + }
  754 + if$
  755 + }
  756 + if$
  757 +}
  758 +FUNCTION {format.journal.eid}
  759 +{ eid "eid" bibinfo.check
  760 + duplicate$ empty$ 'pop$
  761 + { swap$ duplicate$ empty$ 'skip$
  762 + {
  763 + ", " *
  764 + }
  765 + if$
  766 + swap$ *
  767 + }
  768 + if$
  769 +}
  770 +FUNCTION {format.vol.num.pages} % this function is used only for journal entries
  771 +{ volume field.or.null
  772 + duplicate$ empty$ 'skip$
  773 + {
  774 +% bbl.volume swap$ tie.or.space.prefix
  775 + titto.bbl.volume swap$ titto.space.prefix
  776 +% rationale for the change above: for journals you don't want "vol." label
  777 +% hence it does not make sense to attach the journal number to the label when
  778 +% it is short
  779 + "volume" bibinfo.check
  780 + * *
  781 + }
  782 + if$
  783 + number "number" bibinfo.check duplicate$ empty$ 'skip$
  784 + {
  785 + swap$ duplicate$ empty$
  786 + { "there's a number but no volume in " cite$ * warning$ }
  787 + 'skip$
  788 + if$
  789 + swap$
  790 + "(" swap$ * ")" *
  791 + }
  792 + if$ *
  793 + eid empty$
  794 + { format.journal.pages }
  795 + { format.journal.eid }
  796 + if$
  797 +}
  798 +
  799 +FUNCTION {format.chapter.pages}
  800 +{ chapter empty$
  801 + 'format.pages
  802 + { type empty$
  803 + { bbl.chapter }
  804 + { type "l" change.case$
  805 + "type" bibinfo.check
  806 + }
  807 + if$
  808 + chapter tie.or.space.prefix
  809 + "chapter" bibinfo.check
  810 + * *
  811 + pages empty$
  812 + 'skip$
  813 + { ", " * format.pages * }
  814 + if$
  815 + }
  816 + if$
  817 +}
  818 +
  819 +FUNCTION {format.booktitle}
  820 +{
  821 + booktitle "booktitle" bibinfo.check
  822 +}
  823 +FUNCTION {format.in.ed.booktitle}
  824 +{ format.booktitle duplicate$ empty$ 'skip$
  825 + {
  826 +% editor "editor" format.names.ed duplicate$ empty$ 'pop$ % changed by titto
  827 + editor "editor" format.names duplicate$ empty$ 'pop$
  828 + {
  829 + " " *
  830 + get.bbl.editor
  831 +% capitalize
  832 + "(" swap$ * ") " *
  833 + * swap$
  834 + * }
  835 + if$
  836 + word.in swap$ *
  837 + }
  838 + if$
  839 +}
  840 +FUNCTION {empty.misc.check}
  841 +{ author empty$ title empty$ howpublished empty$
  842 + month empty$ year empty$ note empty$
  843 + and and and and and
  844 + key empty$ not and
  845 + { "all relevant fields are empty in " cite$ * warning$ }
  846 + 'skip$
  847 + if$
  848 +}
  849 +FUNCTION {format.thesis.type}
  850 +{ type duplicate$ empty$
  851 + 'pop$
  852 + { swap$ pop$
  853 + "t" change.case$ "type" bibinfo.check
  854 + }
  855 + if$
  856 +}
  857 +FUNCTION {format.tr.number}
  858 +{ number "number" bibinfo.check
  859 + type duplicate$ empty$
  860 + { pop$ bbl.techrep }
  861 + 'skip$
  862 + if$
  863 + "type" bibinfo.check
  864 + swap$ duplicate$ empty$
  865 + { pop$ "t" change.case$ }
  866 + { tie.or.space.prefix * * }
  867 + if$
  868 +}
  869 +FUNCTION {format.article.crossref}
  870 +{
  871 + key duplicate$ empty$
  872 + { pop$
  873 + journal duplicate$ empty$
  874 + { "need key or journal for " cite$ * " to crossref " * crossref * warning$ }
  875 + { "journal" bibinfo.check emphasize word.in swap$ * }
  876 + if$
  877 + }
  878 + { word.in swap$ * " " *}
  879 + if$
  880 + " \cite{" * crossref * "}" *
  881 +}
  882 +FUNCTION {format.crossref.editor}
  883 +{ editor #1 "{vv~}{ll}" format.name$
  884 + "editor" bibinfo.check
  885 + editor num.names$ duplicate$
  886 + #2 >
  887 + { pop$
  888 + "editor" bibinfo.check
  889 + " " * bbl.etal
  890 + *
  891 + }
  892 + { #2 <
  893 + 'skip$
  894 + { editor #2 "{ff }{vv }{ll}{ jj}" format.name$ "others" =
  895 + {
  896 + "editor" bibinfo.check
  897 + " " * bbl.etal
  898 + *
  899 + }
  900 + {
  901 + bbl.and space.word
  902 + * editor #2 "{vv~}{ll}" format.name$
  903 + "editor" bibinfo.check
  904 + *
  905 + }
  906 + if$
  907 + }
  908 + if$
  909 + }
  910 + if$
  911 +}
  912 +FUNCTION {format.book.crossref}
  913 +{ volume duplicate$ empty$
  914 + { "empty volume in " cite$ * "'s crossref of " * crossref * warning$
  915 + pop$ word.in
  916 + }
  917 + { bbl.volume
  918 + capitalize
  919 + swap$ tie.or.space.prefix "volume" bibinfo.check * * bbl.of space.word *
  920 + }
  921 + if$
  922 + editor empty$
  923 + editor field.or.null author field.or.null =
  924 + or
  925 + { key empty$
  926 + { series empty$
  927 + { "need editor, key, or series for " cite$ * " to crossref " *
  928 + crossref * warning$
  929 + "" *
  930 + }
  931 + { series emphasize * }
  932 + if$
  933 + }
  934 + { key * }
  935 + if$
  936 + }
  937 + { format.crossref.editor * }
  938 + if$
  939 + " \cite{" * crossref * "}" *
  940 +}
  941 +FUNCTION {format.incoll.inproc.crossref}
  942 +{
  943 + editor empty$
  944 + editor field.or.null author field.or.null =
  945 + or
  946 + { key empty$
  947 + { format.booktitle duplicate$ empty$
  948 + { "need editor, key, or booktitle for " cite$ * " to crossref " *
  949 + crossref * warning$
  950 + }
  951 + { word.in swap$ * }
  952 + if$
  953 + }
  954 + { word.in key * " " *}
  955 + if$
  956 + }
  957 + { word.in format.crossref.editor * " " *}
  958 + if$
  959 + " \cite{" * crossref * "}" *
  960 +}
  961 +FUNCTION {format.org.or.pub}
  962 +{ 't :=
  963 + ""
  964 + address empty$ t empty$ and
  965 + 'skip$
  966 + {
  967 + t empty$
  968 + { address "address" bibinfo.check *
  969 + }
  970 + { t *
  971 + address empty$
  972 + 'skip$
  973 + { ", " * address "address" bibinfo.check * }
  974 + if$
  975 + }
  976 + if$
  977 + }
  978 + if$
  979 +}
  980 +FUNCTION {format.publisher.address}
  981 +{ publisher "publisher" bibinfo.warn format.org.or.pub
  982 +}
  983 +
  984 +FUNCTION {format.organization.address}
  985 +{ organization "organization" bibinfo.check format.org.or.pub
  986 +}
  987 +
  988 +FUNCTION {article}
  989 +{ output.bibitem
  990 + format.authors "author" output.check
  991 + add.colon
  992 + new.block
  993 + format.title "title" output.check
  994 + new.block
  995 + crossref missing$
  996 + {
  997 + journal
  998 + "journal" bibinfo.check
  999 + "journal" output.check
  1000 + add.blank
  1001 + format.vol.num.pages output
  1002 + format.date "year" output.check
  1003 + }
  1004 + { format.article.crossref output.nonnull
  1005 + format.pages output
  1006 + }
  1007 + if$
  1008 +% new.block
  1009 + format.url output
  1010 +% new.block
  1011 + format.note output
  1012 + fin.entry
  1013 +}
  1014 +FUNCTION {book}
  1015 +{ output.bibitem
  1016 + author empty$
  1017 + { format.editors "author and editor" output.check
  1018 + add.colon
  1019 + }
  1020 + { format.authors output.nonnull
  1021 + add.colon
  1022 + crossref missing$
  1023 + { "author and editor" editor either.or.check }
  1024 + 'skip$
  1025 + if$
  1026 + }
  1027 + if$
  1028 + new.block
  1029 + format.btitle "title" output.check
  1030 + crossref missing$
  1031 + { format.bvolume output
  1032 + new.block
  1033 + new.sentence
  1034 + format.number.series output
  1035 + format.publisher.address output
  1036 + }
  1037 + {
  1038 + new.block
  1039 + format.book.crossref output.nonnull
  1040 + }
  1041 + if$
  1042 + format.edition output
  1043 + format.date "year" output.check
  1044 +% new.block
  1045 + format.url output
  1046 +% new.block
  1047 + format.note output
  1048 + fin.entry
  1049 +}
  1050 +FUNCTION {booklet}
  1051 +{ output.bibitem
  1052 + format.authors output
  1053 + add.colon
  1054 + new.block
  1055 + format.title "title" output.check
  1056 + new.block
  1057 + howpublished "howpublished" bibinfo.check output
  1058 + address "address" bibinfo.check output
  1059 + format.date output
  1060 +% new.block
  1061 + format.url output
  1062 +% new.block
  1063 + format.note output
  1064 + fin.entry
  1065 +}
  1066 +
  1067 +FUNCTION {inbook}
  1068 +{ output.bibitem
  1069 + author empty$
  1070 + { format.editors "author and editor" output.check
  1071 + add.colon
  1072 + }
  1073 + { format.authors output.nonnull
  1074 + add.colon
  1075 + crossref missing$
  1076 + { "author and editor" editor either.or.check }
  1077 + 'skip$
  1078 + if$
  1079 + }
  1080 + if$
  1081 + new.block
  1082 + format.btitle "title" output.check
  1083 + crossref missing$
  1084 + {
  1085 + format.bvolume output
  1086 + format.chapter.pages "chapter and pages" output.check
  1087 + new.block
  1088 + new.sentence
  1089 + format.number.series output
  1090 + format.publisher.address output
  1091 + }
  1092 + {
  1093 + format.chapter.pages "chapter and pages" output.check
  1094 + new.block
  1095 + format.book.crossref output.nonnull
  1096 + }
  1097 + if$
  1098 + format.edition output
  1099 + format.date "year" output.check
  1100 +% new.block
  1101 + format.url output
  1102 +% new.block
  1103 + format.note output
  1104 + fin.entry
  1105 +}
  1106 +
  1107 +FUNCTION {incollection}
  1108 +{ output.bibitem
  1109 + format.authors "author" output.check
  1110 + add.colon
  1111 + new.block
  1112 + format.title "title" output.check
  1113 + new.block
  1114 + crossref missing$
  1115 + { format.in.ed.booktitle "booktitle" output.check
  1116 + format.bvolume output
  1117 + format.chapter.pages output
  1118 + new.sentence
  1119 + format.number.series output
  1120 + format.publisher.address output
  1121 + format.edition output
  1122 + format.date "year" output.check
  1123 + }
  1124 + { format.incoll.inproc.crossref output.nonnull
  1125 + format.chapter.pages output
  1126 + }
  1127 + if$
  1128 +% new.block
  1129 + format.url output
  1130 +% new.block
  1131 + format.note output
  1132 + fin.entry
  1133 +}
  1134 +FUNCTION {inproceedings}
  1135 +{ output.bibitem
  1136 + format.authors "author" output.check
  1137 + add.colon
  1138 + new.block
  1139 + format.title "title" output.check
  1140 + new.block
  1141 + crossref missing$
  1142 + { format.in.ed.booktitle "booktitle" output.check
  1143 + new.sentence % added by titto
  1144 + format.bvolume output
  1145 + format.pages output
  1146 + new.sentence
  1147 + format.number.series output
  1148 + publisher empty$
  1149 + { format.organization.address output }
  1150 + { organization "organization" bibinfo.check output
  1151 + format.publisher.address output
  1152 + }
  1153 + if$
  1154 + format.date "year" output.check
  1155 + }
  1156 + { format.incoll.inproc.crossref output.nonnull
  1157 + format.pages output
  1158 + }
  1159 + if$
  1160 +% new.block
  1161 + format.url output
  1162 +% new.block
  1163 + format.note output
  1164 + fin.entry
  1165 +}
  1166 +FUNCTION {conference} { inproceedings }
  1167 +FUNCTION {manual}
  1168 +{ output.bibitem
  1169 + author empty$
  1170 + { organization "organization" bibinfo.check
  1171 + duplicate$ empty$ 'pop$
  1172 + { output
  1173 + address "address" bibinfo.check output
  1174 + }
  1175 + if$
  1176 + }
  1177 + { format.authors output.nonnull }
  1178 + if$
  1179 + add.colon
  1180 + new.block
  1181 + format.btitle "title" output.check
  1182 + author empty$
  1183 + { organization empty$
  1184 + {
  1185 + address new.block.checka
  1186 + address "address" bibinfo.check output
  1187 + }
  1188 + 'skip$
  1189 + if$
  1190 + }
  1191 + {
  1192 + organization address new.block.checkb
  1193 + organization "organization" bibinfo.check output
  1194 + address "address" bibinfo.check output
  1195 + }
  1196 + if$
  1197 + format.edition output
  1198 + format.date output
  1199 +% new.block
  1200 + format.url output
  1201 +% new.block
  1202 + format.note output
  1203 + fin.entry
  1204 +}
  1205 +
  1206 +FUNCTION {mastersthesis}
  1207 +{ output.bibitem
  1208 + format.authors "author" output.check
  1209 + add.colon
  1210 + new.block
  1211 + format.btitle
  1212 + "title" output.check
  1213 + new.block
  1214 + bbl.mthesis format.thesis.type output.nonnull
  1215 + school "school" bibinfo.warn output
  1216 + address "address" bibinfo.check output
  1217 + format.date "year" output.check
  1218 +% new.block
  1219 + format.url output
  1220 +% new.block
  1221 + format.note output
  1222 + fin.entry
  1223 +}
  1224 +
  1225 +FUNCTION {misc}
  1226 +{ output.bibitem
  1227 + format.authors output
  1228 + add.colon
  1229 + title howpublished new.block.checkb
  1230 + format.title output
  1231 + howpublished new.block.checka
  1232 + howpublished "howpublished" bibinfo.check output
  1233 + format.date output
  1234 +% new.block
  1235 + format.url output
  1236 +% new.block
  1237 + format.note output
  1238 + fin.entry
  1239 + empty.misc.check
  1240 +}
  1241 +FUNCTION {phdthesis}
  1242 +{ output.bibitem
  1243 + format.authors "author" output.check
  1244 + add.colon
  1245 + new.block
  1246 + format.btitle
  1247 + "title" output.check
  1248 + new.block
  1249 + bbl.phdthesis format.thesis.type output.nonnull
  1250 + school "school" bibinfo.warn output
  1251 + address "address" bibinfo.check output
  1252 + format.date "year" output.check
  1253 +% new.block
  1254 + format.url output
  1255 +% new.block
  1256 + format.note output
  1257 + fin.entry
  1258 +}
  1259 +
  1260 +FUNCTION {proceedings}
  1261 +{ output.bibitem
  1262 + editor empty$
  1263 + { organization "organization" bibinfo.check output
  1264 + }
  1265 + { format.editors output.nonnull }
  1266 + if$
  1267 + add.colon
  1268 + new.block
  1269 + format.btitle "title" output.check
  1270 + format.bvolume output
  1271 + editor empty$
  1272 + { publisher empty$
  1273 + { format.number.series output }
  1274 + {
  1275 + new.sentence
  1276 + format.number.series output
  1277 + format.publisher.address output
  1278 + }
  1279 + if$
  1280 + }
  1281 + { publisher empty$
  1282 + {
  1283 + new.sentence
  1284 + format.number.series output
  1285 + format.organization.address output }
  1286 + {
  1287 + new.sentence
  1288 + format.number.series output
  1289 + organization "organization" bibinfo.check output
  1290 + format.publisher.address output
  1291 + }
  1292 + if$
  1293 + }
  1294 + if$
  1295 + format.date "year" output.check
  1296 +% new.block
  1297 + format.url output
  1298 +% new.block
  1299 + format.note output
  1300 + fin.entry
  1301 +}
  1302 +
  1303 +FUNCTION {techreport}
  1304 +{ output.bibitem
  1305 + format.authors "author" output.check
  1306 + add.colon
  1307 + new.block
  1308 + format.title
  1309 + "title" output.check
  1310 + new.block
  1311 + format.tr.number output.nonnull
  1312 + institution "institution" bibinfo.warn output
  1313 + address "address" bibinfo.check output
  1314 + format.date "year" output.check
  1315 +% new.block
  1316 + format.url output
  1317 +% new.block
  1318 + format.note output
  1319 + fin.entry
  1320 +}
  1321 +
  1322 +FUNCTION {unpublished}
  1323 +{ output.bibitem
  1324 + format.authors "author" output.check
  1325 + add.colon
  1326 + new.block
  1327 + format.title "title" output.check
  1328 + format.date output
  1329 +% new.block
  1330 + format.url output
  1331 +% new.block
  1332 + format.note "note" output.check
  1333 + fin.entry
  1334 +}
  1335 +
  1336 +FUNCTION {default.type} { misc }
  1337 +READ
  1338 +FUNCTION {sortify}
  1339 +{ purify$
  1340 + "l" change.case$
  1341 +}
  1342 +INTEGERS { len }
  1343 +FUNCTION {chop.word}
  1344 +{ 's :=
  1345 + 'len :=
  1346 + s #1 len substring$ =
  1347 + { s len #1 + global.max$ substring$ }
  1348 + 's
  1349 + if$
  1350 +}
  1351 +FUNCTION {sort.format.names}
  1352 +{ 's :=
  1353 + #1 'nameptr :=
  1354 + ""
  1355 + s num.names$ 'numnames :=
  1356 + numnames 'namesleft :=
  1357 + { namesleft #0 > }
  1358 + { s nameptr
  1359 + "{ll{ }}{ ff{ }}{ jj{ }}"
  1360 + format.name$ 't :=
  1361 + nameptr #1 >
  1362 + {
  1363 + " " *
  1364 + namesleft #1 = t "others" = and
  1365 + { "zzzzz" * }
  1366 + { t sortify * }
  1367 + if$
  1368 + }
  1369 + { t sortify * }
  1370 + if$
  1371 + nameptr #1 + 'nameptr :=
  1372 + namesleft #1 - 'namesleft :=
  1373 + }
  1374 + while$
  1375 +}
  1376 +
  1377 +FUNCTION {sort.format.title}
  1378 +{ 't :=
  1379 + "A " #2
  1380 + "An " #3
  1381 + "The " #4 t chop.word
  1382 + chop.word
  1383 + chop.word
  1384 + sortify
  1385 + #1 global.max$ substring$
  1386 +}
  1387 +FUNCTION {author.sort}
  1388 +{ author empty$
  1389 + { key empty$
  1390 + { "to sort, need author or key in " cite$ * warning$
  1391 + ""
  1392 + }
  1393 + { key sortify }
  1394 + if$
  1395 + }
  1396 + { author sort.format.names }
  1397 + if$
  1398 +}
  1399 +FUNCTION {author.editor.sort}
  1400 +{ author empty$
  1401 + { editor empty$
  1402 + { key empty$
  1403 + { "to sort, need author, editor, or key in " cite$ * warning$
  1404 + ""
  1405 + }
  1406 + { key sortify }
  1407 + if$
  1408 + }
  1409 + { editor sort.format.names }
  1410 + if$
  1411 + }
  1412 + { author sort.format.names }
  1413 + if$
  1414 +}
  1415 +FUNCTION {author.organization.sort}
  1416 +{ author empty$
  1417 + { organization empty$
  1418 + { key empty$
  1419 + { "to sort, need author, organization, or key in " cite$ * warning$
  1420 + ""
  1421 + }
  1422 + { key sortify }
  1423 + if$
  1424 + }
  1425 + { "The " #4 organization chop.word sortify }
  1426 + if$
  1427 + }
  1428 + { author sort.format.names }
  1429 + if$
  1430 +}
  1431 +FUNCTION {editor.organization.sort}
  1432 +{ editor empty$
  1433 + { organization empty$
  1434 + { key empty$
  1435 + { "to sort, need editor, organization, or key in " cite$ * warning$
  1436 + ""
  1437 + }
  1438 + { key sortify }
  1439 + if$
  1440 + }
  1441 + { "The " #4 organization chop.word sortify }
  1442 + if$
  1443 + }
  1444 + { editor sort.format.names }
  1445 + if$
  1446 +}
  1447 +FUNCTION {presort}
  1448 +{ type$ "book" =
  1449 + type$ "inbook" =
  1450 + or
  1451 + 'author.editor.sort
  1452 + { type$ "proceedings" =
  1453 + 'editor.organization.sort
  1454 + { type$ "manual" =
  1455 + 'author.organization.sort
  1456 + 'author.sort
  1457 + if$
  1458 + }
  1459 + if$
  1460 + }
  1461 + if$
  1462 + " "
  1463 + *
  1464 + year field.or.null sortify
  1465 + *
  1466 + " "
  1467 + *
  1468 + title field.or.null
  1469 + sort.format.title
  1470 + *
  1471 + #1 entry.max$ substring$
  1472 + 'sort.key$ :=
  1473 +}
  1474 +ITERATE {presort}
  1475 +SORT
  1476 +STRINGS { longest.label }
  1477 +INTEGERS { number.label longest.label.width }
  1478 +FUNCTION {initialize.longest.label}
  1479 +{ "" 'longest.label :=
  1480 + #1 'number.label :=
  1481 + #0 'longest.label.width :=
  1482 +}
  1483 +FUNCTION {longest.label.pass}
  1484 +{ number.label int.to.str$ 'label :=
  1485 + number.label #1 + 'number.label :=
  1486 + label width$ longest.label.width >
  1487 + { label 'longest.label :=
  1488 + label width$ 'longest.label.width :=
  1489 + }
  1490 + 'skip$
  1491 + if$
  1492 +}
  1493 +EXECUTE {initialize.longest.label}
  1494 +ITERATE {longest.label.pass}
  1495 +FUNCTION {begin.bib}
  1496 +{ preamble$ empty$
  1497 + 'skip$
  1498 + { preamble$ write$ newline$ }
  1499 + if$
  1500 + "\begin{thebibliography}{" longest.label * "}" *
  1501 + write$ newline$
  1502 + "\providecommand{\url}[1]{\texttt{#1}}"
  1503 + write$ newline$
  1504 + "\providecommand{\urlprefix}{URL }"
  1505 + write$ newline$
  1506 +}
  1507 +EXECUTE {begin.bib}
  1508 +EXECUTE {init.state.consts}
  1509 +ITERATE {call.type$}
  1510 +FUNCTION {end.bib}
  1511 +{ newline$
  1512 + "\end{thebibliography}" write$ newline$
  1513 +}
  1514 +EXECUTE {end.bib}
  1515 +%% End of customized bst file
  1516 +%%
  1517 +%% End of file `titto.bst'.
  1518 +
  1519 +
... ...
OSS-2016/sprmindx.sty 0 → 100644
... ... @@ -0,0 +1,4 @@
  1 +delim_0 "\\idxquad "
  2 +delim_1 "\\idxquad "
  3 +delim_2 "\\idxquad "
  4 +delim_n ",\\,"
... ...