├── README ├── Letter └── Business-Clean │ ├── HEAD.pdf │ ├── Letter.pdf │ ├── Letter.tex │ └── style.sty ├── Paper └── Proceeding-llncs │ ├── main.pdf │ ├── figures │ ├── some-image.png │ ├── some-subimage_1.png │ ├── some-subimage_2.png │ └── some-subimage_3.png │ ├── include │ ├── doctitle.tex │ ├── docinfo.tex │ └── header.tex │ ├── content │ ├── 05_Statement.tex │ ├── 01_Introduction.tex │ ├── 00_Abstract.tex │ ├── 03_MainPart.tex │ ├── 04_Summary.tex │ ├── 02_RelatedWork.tex │ └── mybib.bib │ ├── main.tex │ └── style │ ├── splncs.bst │ ├── splncs_srt.bst │ ├── splncs03.bst │ └── llncs.cls └── .gitignore /README: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Letter/Business-Clean/HEAD.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/template/TeX/master/Letter/Business-Clean/HEAD.pdf -------------------------------------------------------------------------------- /Paper/Proceeding-llncs/main.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/template/TeX/master/Paper/Proceeding-llncs/main.pdf -------------------------------------------------------------------------------- /Letter/Business-Clean/Letter.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/template/TeX/master/Letter/Business-Clean/Letter.pdf -------------------------------------------------------------------------------- /Paper/Proceeding-llncs/figures/some-image.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/template/TeX/master/Paper/Proceeding-llncs/figures/some-image.png -------------------------------------------------------------------------------- /Paper/Proceeding-llncs/figures/some-subimage_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/template/TeX/master/Paper/Proceeding-llncs/figures/some-subimage_1.png -------------------------------------------------------------------------------- /Paper/Proceeding-llncs/figures/some-subimage_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/template/TeX/master/Paper/Proceeding-llncs/figures/some-subimage_2.png -------------------------------------------------------------------------------- /Paper/Proceeding-llncs/figures/some-subimage_3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/template/TeX/master/Paper/Proceeding-llncs/figures/some-subimage_3.png -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # Editor files 2 | *~ 3 | # LaTeX 4 | *.acn 5 | *.acr 6 | *.alg 7 | *.aux 8 | *.bbl 9 | *.blg 10 | *.dvi 11 | *.fdb_latexmk 12 | *.glg 13 | *.glo 14 | *.gls 15 | *.idx 16 | *.ilg 17 | *.ind 18 | *.ist 19 | *.lof 20 | *.log 21 | *.lot 22 | *.maf 23 | *.mtc 24 | *.mtc0 25 | *.nav 26 | *.nlo 27 | *.out 28 | *.pdfsync 29 | *.ps 30 | *.snm 31 | *.synctex.gz 32 | *.toc 33 | *.vrb 34 | *.xdy 35 | *.tdo -------------------------------------------------------------------------------- /Paper/Proceeding-llncs/include/doctitle.tex: -------------------------------------------------------------------------------- 1 | % Some setting for lncs (Lecture Notes in Computer Science) style. 2 | \mainmatter % Start of the contributions. 3 | % 4 | \title{\doctitle} 5 | %\titlerunning{\docsubject} 6 | %\subtitle{\docsubtitle} 7 | \author{\docauthor \institute{ % 8 | %\docgroup \\ 9 | %\docfaculty \\ 10 | \docuniversity \\ 11 | \email{\docauthoremail} 12 | } 13 | } 14 | %\authorrunning{\docauthor} 15 | %\tocauthor{\docauthor} 16 | % 17 | \maketitle 18 | -------------------------------------------------------------------------------- /Paper/Proceeding-llncs/content/05_Statement.tex: -------------------------------------------------------------------------------- 1 | %\cleardoublepage 2 | \clearpage 3 | \section*{Selbstständigkeitserklärung} 4 | 5 | Hiermit erkläre ich, dass ich die vorliegende Seminararbeit selbständig und nur mit erlaubten Hilfsmitteln angefertigt habe. 6 | 7 | \vspace*{3ex} 8 | 9 | \noindent 10 | Alle Stellen, die dem Wortlaut oder dem Sinn nach anderen Werken (einschließlich elektronischer Quellen) entnommen sind, habe ich in jedem einzelnen Fall unter genauer Angabe der Quelle deutlich gekennzeichnet. 11 | 12 | \vspace*{10ex} 13 | 14 | \noindent 15 | \docauthor 16 | 17 | \noindent 18 | \docplace, \docdate -------------------------------------------------------------------------------- /Paper/Proceeding-llncs/content/01_Introduction.tex: -------------------------------------------------------------------------------- 1 | \section{Einleitung} 2 | Lorem ipsum dolor sit amet, consectetuer adipiscing elit. In enim justo, rhoncus ut, imperdiet a, venenatis vitae, justo. Nullam dictum felis eu pede mollis pretium. Integer tincidunt. Cras dapibus. Vivamus elementum semper nisi. Aenean vulputate eleifend tellus. 3 | 4 | Phasellus viverra nulla ut metus varius laoreet. Quisque rutrum. Aenean imperdiet. Etiam ultricies nisi vel augue. Nam quam nunc, blandit vel, luctus pulvinar, hendrerit id, lorem\footnote{Maecenas nec odio et ante tincidunt tempus. Donec vitae sapien ut libero venenatis faucibus.}. Nullam quis ante. Etiam sit amet orci eget eros faucibus tincidunt. -------------------------------------------------------------------------------- /Paper/Proceeding-llncs/main.tex: -------------------------------------------------------------------------------- 1 | \input{include/docinfo} % Informations about the author. 2 | \input{include/header} % Packages and config. 3 | % 4 | % 5 | \begin{document} 6 | % 7 | \input{include/doctitle} % Make title from 'docinfo'. 8 | % 9 | \begin{abstract} 10 | \input{content/00_Abstract} 11 | \keywords{\docplainkeywords} 12 | \end{abstract} 13 | % 14 | \input{content/01_Introduction} 15 | \input{content/02_RelatedWork} 16 | \input{content/03_MainPart} 17 | \input{content/04_Summary} 18 | % 19 | %\nocite{*} % Show uncited entries. 20 | \bibliographystyle{style/splncs03} % Why not alpha?! 21 | \bibliography{content/mybib} 22 | % 23 | \input{content/05_Statement} 24 | % 25 | % 26 | \end{document} 27 | -------------------------------------------------------------------------------- /Paper/Proceeding-llncs/content/00_Abstract.tex: -------------------------------------------------------------------------------- 1 | Li Europan lingues es membres del sam familie. Lor separat existentie es un myth. Por scientie, musica, sport etc, litot Europa usa li sam vocabular. Li lingues differe solmen in li grammatica, li pronunciation e li plu commun vocabules. Omnicos directe al desirabilite de un nov lingua franca: On refusa continuar payar custosi traductores. At solmen va esser necessi far uniform grammatica, pronunciation e plu sommun paroles. Ma quande lingues coalesce, li grammatica del resultant lingue es plu simplic e regulari quam ti del coalescent lingues. Li nov lingua franca va esser plu simplic e regulari quam li existent Europan lingues. It va esser tam simplic quam Occidental in fact, it va esser Occidental. -------------------------------------------------------------------------------- /Paper/Proceeding-llncs/content/03_MainPart.tex: -------------------------------------------------------------------------------- 1 | \section{Hauptteil} 2 | 3 | \subsection{Proin pretium} 4 | 5 | Suspendisse enim turpis, dictum sed, iaculis a, condimentum nec, nisi. Praesent nec nisl a purus blandit viverra. 6 | 7 | Praesent porttitor, nulla vitae posuere iaculis, arcu nisl dignissim dolor, a pretium mi sem ut ipsum. 8 | 9 | \subsection{Phasellus magna} 10 | 11 | Etiam sollicitudin, ipsum eu pulvinar rutrum, tellus ipsum laoreet sapien, quis venenatis ante odio sit amet eros. Proin magna: 12 | Fast Light Toolkit \cite{web:FLTK}, 13 | Gtk+ \cite{web:GTK+}, 14 | Ultimate++ \cite{web:U++} und 15 | Qt \cite{web:Qt} 16 | zu nennen. Verbreitete Bibliotheken für die Visualisierung sind 17 | Open\-Scene\-Graph \cite{web:OSG}, 18 | Visualization Toolkit \cite{web:VTK} (VTK), 19 | OpenSG \cite{web:OpenSG} und 20 | Java3D \cite{web:Java3D}. 21 | 22 | Ut non enim eleifend felis pretium feugiat \footnote{Vivamus quis mi.}. Phasellus a est. Phasellus magna. In hac habitasse platea dictumst. Curabitur at lacus ac velit ornare lobortis. Curabitur a felis in nunc fringilla tristique. GNU Autotools \cite{web:Automake,web:Autoconf}, 23 | qmake \cite{web:qmake} und 24 | CMake \cite{web:CMake} 25 | blablubb tärölütß. -------------------------------------------------------------------------------- /Paper/Proceeding-llncs/include/docinfo.tex: -------------------------------------------------------------------------------- 1 | % For (excessive) usage in your document. 2 | \newcommand{\docplace}{Magdeburg} 3 | \newcommand{\docuniversity}{Otto-von-Guericke-Universit\"at Magdeburg} % Otto-von-Guericke-University Magdeburg. 4 | \newcommand{\docuni}{OvGU} 5 | \newcommand{\docfaculty}{Fakult\"at f\"ur Informatik} % Faculty of Computer Science. 6 | \newcommand{\docfac}{INF} 7 | \newcommand{\docinstitute}{Institut f\"ur Technische und Betriebliche Informationssysteme} % Department for Technical & Operational Information Systems. 8 | \newcommand{\docinst}{ITI} 9 | \newcommand{\docgroup}{Data and Knowledge Engineering Goup} % Data and Knowledge Engineering Goup. 10 | \newcommand{\docgr}{DKE} 11 | \newcommand{\docauthor}{Frank Zisko} 12 | \newcommand{\docauthoremail}{frank.zisko@st.ovgu.de} 13 | \newcommand{\doctitle}{Mein herausragender Titel} % My awesome title. 14 | \newcommand{\doctitleshort}{Kurztitel} % Short title. 15 | \newcommand{\docsubtitle}{User Interfaces and Information Engineering} 16 | \newcommand{\docsubject}{Semantic Desktop} 17 | \newcommand{\docplainkeywords}{Semantic Desktop, User Interface, Interface, Ontology, Exploration, Search} % For use in text. 18 | \newcommand{\dockeywords}{ {Semantic Desktop} {User Interface} {Interface} {Ontology} {Exploration} {Search} } % Tagify metadata -> use package hyperref. 19 | \newcommand{\docdate}{16.04.2012} %\today}. 20 | % -------------------------------------------------------------------------------- /Paper/Proceeding-llncs/content/04_Summary.tex: -------------------------------------------------------------------------------- 1 | \section{Zusammenfassung} 2 | 3 | A un Angleso it va semblar un simplificat Angles, quam un skeptic Cambridge amico dit me que Occidental es. Li Europan lingues es membres del sam familie. Lor separat existentie es un myth. 4 | 5 | \subsection{Aenean ut eros} 6 | 7 | Sed lectus. Donec mollis hendrerit risus. Phasellus nec sem in justo pellentesque facilisis. Etiam imperdiet imperdiet orci (Kitware\cite{web:Kitware}). Praesent congue erat at massa. Sed cursus turpis vitae tortor. 8 | 9 | \subsection{Nun ist aber Ende} 10 | 11 | Donec quam felis, ultricies nec, pellentesque eu, pretium quis, sem. Nullam dictum felis eu pede mollis pretium. Integer tincidunt. Cras dapibus. 12 | 13 | \begin{table} 14 | \begin{tabular}{|l|l|} 15 | \hline 16 | \textbf{Paket} & \textbf{Erläuterung}\\ 17 | \hline 18 | \hline 19 | bvd & Compiler\\ 20 | \hline 21 | huch & Programmerzeugung\\ 22 | \hline 23 | me-dev & Magic\\ 24 | \hline 25 | free-dev & Water\\ 26 | \hline 27 | libboost-all-dev & Jet\\ 28 | \hline 29 | libdev & Dox\\ 30 | \hline 31 | prog-tools & Framework\\ 32 | \hline 33 | \end{tabular} 34 | \caption{Liste der über hier und da \glqq dev\grqq\ enthalten.} 35 | \label{tab:packages} 36 | \end{table} 37 | 38 | Nam eget dui. Etiam rhoncus. Maecenas tempus, tellus eget condimentum rhoncus, \glqq sem quam semper libero\grqq\ , sit amet adipiscing sem neque sed ipsum. 39 | \\ \verb|./Foo/Modules/Bundles/|\\ 40 | Nam quam nunc, blandit vel, luctus pulvinar, hendrerit id, lorem. Maecenas nec odio et ante tincidunt tempus. Donec vitae sapien ut libero venenatis faucibus. Nullam quis ante. Etiam sit amet orci eget eros faucibus tincidunt. Duis leo. Sed fringilla mauris sit amet nibh. -------------------------------------------------------------------------------- /Paper/Proceeding-llncs/include/header.tex: -------------------------------------------------------------------------------- 1 | \documentclass{style/llncs} 2 | \usepackage[utf8]{inputenc} %Universal/Linux coding. 3 | %\usepackage[ansi]{inputenc} %Windows coding. 4 | %\usepackage[ansinew]{inputenc} %Newer windows coding. 5 | %\usepackage[applemac]{inputenc} %MacOS coding. 6 | %\usepackage[latin1]{inputenc} %Standart & Windows coding. 7 | \usepackage[ngerman]{babel} % German headings. 8 | \usepackage[T1]{fontenc} % German typesetting. 9 | % 10 | \usepackage{graphicx} % Import graphics in document. 11 | \usepackage{subfigure} % Subfigures in a figure. 12 | \usepackage{amsmath, amsfonts, amssymb, amsxtra} % Mathematical symbols. 13 | %\usepackage{lineno} % Line numbers. 14 | \usepackage{lmodern} % Better font encoding. 15 | \usepackage{textcomp} % tc (Text Companion) fonts. 16 | %\usepackage{tabularx} % Another mode for \begin{tabular} .. \end{tabular} 17 | \usepackage{listings} % For a replacement of "\verb|Text-here|". 18 | \usepackage{microtype} % Margin alignment, prettier gray. 19 | %\usepackage{multirow} % Multiple rows in tables and colums. 20 | \usepackage{blindtext} % Blindtext to test style and layout. 21 | % 22 | % 23 | % Must be at least in header! 24 | \usepackage[% 25 | pdftitle={\doctitle}, % Meta title. 26 | pdfauthor={\docauthor}, % Meta author. 27 | pdfcreator={\docauthor}, % Meta creator. 28 | pdfproducer={\docauthor}, % Meta producer. 29 | pdfsubject={\docsubject}, % Meta subject. 30 | pdfkeywords={\dockeywords}, % Meta tags/keywords. 31 | %pdftex=true, 32 | %hidelinks, % Doesn't work... 33 | pdfborder={0 0 0}, % Border. Write black links without any border. 34 | %linkbordercolor={1 0 1}, 35 | %citebordercolor={1 1 0}, 36 | %urlbordercolor={0 1 1}, 37 | %colorlinks=true, 38 | %linkcolor=black, 39 | %filecolor=black, 40 | %urlcolor=black, 41 | %citecolor=black, 42 | %bookmarks=true, 43 | pdffitwindow=true, % PDF viewer setting. 44 | %pdftoolbar=false, % PDF viewer setting. 45 | %pdfmenubar=false, % PDF viewer setting. 46 | pdfstartview=FitH % PDF viewer setting. 47 | ]{hyperref} % Links in document for toc, footnotes, references and citations. 48 | % -------------------------------------------------------------------------------- /Paper/Proceeding-llncs/content/02_RelatedWork.tex: -------------------------------------------------------------------------------- 1 | \section{Related Work} 2 | 3 | \subsection{Vestibulum} 4 | 5 | Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Fusce id purus. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. In dui magna, posuere eget, vestibulum et \cite{web:OpenCV}, tempor auctor, justo. 6 | 7 | % If you use tex->dvi->pdflatex, you need images in PNG format. If you use tex->dvi->ps->pdf, you need EPS files. 8 | \begin{figure}[h] 9 | \centering 10 | \subfigure[]{ 11 | \includegraphics[width=\textwidth]{figures/some-image} % width=0.47\textwidth 12 | \label{diff-1:3d} 13 | } 14 | \subfigure[]{ 15 | \includegraphics[width=0.3\textwidth]{figures/some-subimage_1} % width=0.1441\textwidth 16 | \label{diff-1:transversal} 17 | } 18 | \subfigure[]{ 19 | \includegraphics[width=0.3\textwidth]{figures/some-subimage_2} % width=0.1441\textwidth 20 | \label{diff-1:sagittal} 21 | } 22 | \subfigure[]{ 23 | \includegraphics[width=0.3\textwidth]{figures/some-subimage_3} % width=0.1441\textwidth 24 | \label{diff-1:coronal} 25 | } 26 | \caption{Phasellus viverra nulla ut metus varius laoreet. Quisque rutrum \subref{diff-1:3d}, ultricies nisi Transversal \subref{diff-1:transversal}, Sagittal \subref{diff-1:sagittal} und Coronal \subref{diff-1:coronal}.} 27 | \label{diff-1:all} 28 | \end{figure} 29 | 30 | Nullam vel sem. Pellentesque libero tortor, tincidunt et, tincidunt eget, semper nec, quam. Nunc nulla. Donec venenatis vulputate lorem. Morbi nec metus. Maecenas ullamcorper, dui et placerat feugiat, eros pede varius nisi, condimentum viverra felis nunc et lorem. 31 | 32 | \subsection{Maecenas vestibulum} 33 | 34 | Morbi mollis tellus ac sapien. Phasellus volutpat, metus eget egestas mollis, lacus lacus blandit dui, id egestas quam mauris ut lacus\footnote{Fusce vel dui.}. Proin faucibus arcu quis ante \cite{web:OSG}. 35 | 36 | Donec id justo\footnote{Praesent porttitor, nulla vitae posuere iaculis, arcu nisl dignissim dolor, a pretium mi sem ut ipsum.}. Ut id nisl quis enim dignissim sagittis. Etiam sollicitudin, ipsum eu pulvinar rutrum, tellus ipsum laoreet sapien, quis venenatis ante odio sit amet eros. Proin magna. 37 | -------------------------------------------------------------------------------- /Letter/Business-Clean/Letter.tex: -------------------------------------------------------------------------------- 1 | \documentclass[fontsize=10pt, version=last, foldmarks=true,foldmarks=bTP, 2 | version=last, BCOR=-18.9mm,refline=narrow, enlargefirstpage=true 3 | ]{scrlttr2} 4 | 5 | \usepackage[utf8]{inputenc} 6 | \usepackage[ngerman]{babel} 7 | \usepackage{graphicx} 8 | \usepackage[ngerman, num]{isodate} 9 | \usepackage{blindtext} 10 | %Schriftfamilie Helvetica 11 | \usepackage{helvet} 12 | \renewcommand{\familydefault}{\sfdefault} 13 | 14 | % Diese Datei enthält die Informationen fürs Layout! 15 | \input{style.sty} 16 | 17 | % Gewünschtes Signet (Farbdruck oder SW) einfach ein-, bzw. auskommentieren. 18 | %\firsthead{\includegraphics[height=16mm]{HEAD.pdf}} 19 | % Vollständige Absenderadresse 20 | % Absender hat 6 Parameter, je einen pro Block 21 | % Erzwungene Zeilenumbrüche mit \\ berücksichtigen!!! 22 | 23 | % Auch in style.sty ändern!!! 24 | \absender{Herr} 25 | {Frank Zisko} 26 | { } 27 | { \\Waldweg 1\\01234 Stadt} 28 | {Telefon: +49 123 / 123 123-4\\ Mobil: +49 156 / 10 20 30-4} 29 | {frank.zisko@emailadresse.net\\} 30 | 31 | % Inhalte der Geschäftszeile 32 | % Nur die Werte in hinteren geschweiften Klammern verändern! 33 | \ihrezeichen{012345.001.01} 34 | \unserezeichen{98089} 35 | \durchwahl{5} 36 | \datum{\today} 37 | 38 | % Inhalt der Betreffszeile 39 | \betreff{Ich möchte mich ausdrücken} 40 | 41 | % Signatur des Briefes (Unterschrift 42 | \signatur{Frank Zisko} 43 | 44 | % Empängeradresse 45 | % ZeilemumbrÃŒche mit \\ erzwingen, sonst steht gesamte Adresse in einer Zeile! 46 | \begin{letter}{ 47 | Empfängerfirma\\ 48 | Große Straße 5\\ 49 | % \bf nicht löschen -> PLZ und Stadt sind fett hervorgehoben! 50 | \bf 98765 Dorf} 51 | 52 | % Eigentlicher Briefinhalt mit Anrede und Grußformel 53 | % Anrede 54 | \opening{Sehr geehrte Damen und Herren,} 55 | %Briefinhalt 56 | \blindtext 57 | 58 | \vspace*{5ex} 59 | 60 | \noindent 61 | Podeste\\ 62 | Platz 1: Frank Zisko\\ 63 | \noindent 64 | Konto: 123 123 12\\ 65 | BLZ: 120 130 140\\ 66 | 67 | 68 | % Grußformel 69 | \closing{Mit freundlichen Grüßen} 70 | % Signatur wird automatich hier eingefÃŒgt! 71 | 72 | % Anlagen 73 | % Anlagen durch Zeilenumbruch (\\) separieren! Alternativ kann der auskommentierte KOMA-Script-Befehl fÃŒr den Anhang verwendet werden. 74 | % Jedoch stimmt die Ausgabe nicht mit den Anforderungen des CD ÃŒberein. Eventuell unterstÃŒtzen spÀtere KOMA-Versionen dieses Problem. 75 | %\anlagen{Anlage1\\Anlage2...} 76 | %%\encl{Anlage1\\Anlage2...} 77 | 78 | \end{letter} 79 | 80 | % 81 | % Hier könnten weitere Inhalte eingefügt werden, z.B. die Anlagen! 82 | % 83 | 84 | \end{document} 85 | -------------------------------------------------------------------------------- /Letter/Business-Clean/style.sty: -------------------------------------------------------------------------------- 1 | \daymonthsepgerman{} 2 | \monthyearsepgerman{}{} 3 | 4 | \renewcaptionname{ngerman}{\enclname}{Anlage(n)} 5 | 6 | \setlength{\textwidth}{160.9mm} 7 | 8 | \def\briefkopf{\fontsize{7pt}{9pt}\selectfont} 9 | \def\briefkopfname{\vskip 12pt \hskip -10.4pt \bf \fontsize{10pt}{13pt}\selectfont} 10 | \def\briefkopfspace{\vskip 6pt \hskip -10.3pt} 11 | \def\zweib{\fontsize{10pt}{13pt}\selectfont} 12 | 13 | \newcommand {\sendername} [1] {\setkomavar{sendername}{#1}} 14 | \newcommand {\senderzusatz} [1] {\setkomavar{senderzusatz}{#1}} 15 | \newcommand {\senderstrasse} [1] {\setkomavar{senderstrasse}{#1}} 16 | \newcommand {\senderplz} [1] {\setkomavar{senderplz}{#1}} 17 | \newcommand {\senderort} [1] {\setkomavar{senderort}{#1}} 18 | \newcommand {\senderland} [1] {\setkomavar{senderland}{#1}} 19 | \newcommand {\senderphone} [1] {\setkomavar{senderphone}{#1}} 20 | \newcommand {\senderfax} [1] {\setkomavar{senderfax}{#1}} 21 | \newcommand {\senderemail} [1] {\setkomavar{senderemail}{#1}} 22 | 23 | \newcommand {\ihrezeichen} [1] {\setkomavar{ihrezeichen}{#1}} 24 | \newcommand {\unserezeichen} [1] {\setkomavar{unserezeichen}{#1}} 25 | \newcommand {\durchwahl} [1] {\setkomavar{durchwahl}{#1}} 26 | \newcommand {\datum} [1] {\setkomavar{date}{#1}} 27 | \newcommand {\anlagen} [1] { \vskip 13pt \hskip -10.3pt {\bf Anlage(n)}\\#1} 28 | \newcommand {\absender} [6] {\setkomavar{location}{\briefkopf 29 | #1 30 | % Name hervorgehoben 31 | {\briefkopfname #2} 32 | \briefkopfspace 33 | #3 34 | \briefkopfspace 35 | #4 36 | \briefkopfspace 37 | #5 38 | \briefkopfspace 39 | #6} {}} 40 | \newcommand {\betreff} [1] { \setkomavar{subject}{#1}} 41 | \newcommand {\signatur} [1] { \setkomavar{signature}{#1}} 42 | 43 | \renewcommand*{\raggedsignature}{\raggedright} 44 | 45 | \KOMAoptions{backaddress=plain} 46 | 47 | \newkomavar*[Ihre Zeichen, Ihre Nachricht vom:]{ihrezeichen} 48 | \newkomavar*[Unsere Zeichen]{unserezeichen} 49 | \newkomavar*[Durchwahl ]{durchwahl} 50 | \setkomavar*{enclseparator}{\bf Anlage} 51 | 52 | \begin{document} 53 | 54 | \makeatletter 55 | \@setplength{tfoldmarkvpos}{105mm} 56 | 57 | \@setplength{firstheadvpos}{11mm} 58 | \@setplength{firstheadwidth}{69.3mm} 59 | 60 | \@setplength{lochpos}{18mm} 61 | \@setplength{locwidth}{49mm} 62 | \@setplength{locvpos}{42.4mm} 63 | \@setplength{locheight}{137pt} 64 | 65 | \@setplength{toaddrvpos}{45mm} 66 | \@setplength{toaddrhpos}{24.1mm} 67 | \@setplength{toaddrheight}{26mm} 68 | 69 | \@setplength{refvpos}{99mm} 70 | \@setplength{refwidth}{136.4mm} 71 | \@setplength{refhpos}{24.1mm} 72 | \@setplength{refaftervskip}{10mm} 73 | 74 | \@setplength[2]{subjectaftervskip}{\baselineskip} 75 | 76 | \@setplength[3]{sigbeforevskip}{\baselineskip} 77 | 78 | \@addtoplength[-1]{locvpos}{7pt} 79 | \makeatother 80 | 81 | \setkomavar{backaddress}{\fontsize{5.5pt}{10pt}\selectfont Frank Zisko, Waldweg 1, 01234 Stadt} {} 82 | -------------------------------------------------------------------------------- /Paper/Proceeding-llncs/content/mybib.bib: -------------------------------------------------------------------------------- 1 | @MISC{web:CTK, 2 | author = {{Common Toolkit}}, 3 | month = {12}, 4 | year = {2011}, 5 | url = {http://www.commontk.org} 6 | } 7 | 8 | @MISC{web:FLTK, 9 | author = {{Fast Light Toolkit}}, 10 | month = {02}, 11 | year = {2012}, 12 | url = {http://www.fltk.org/} 13 | } 14 | 15 | @MISC{web:U++, 16 | author = {Mirek Fídler and Koldo Ramirez and Tomáš Rylek and Daniel Kos}, 17 | title = {{Ultimate++}}, 18 | month = {02}, 19 | year = {2012}, 20 | url = {http://www.ultimatepp.org/} 21 | } 22 | 23 | @MISC{web:Autoconf, 24 | author = {{GNU}}, 25 | title = {Autoconf}, 26 | month = {02}, 27 | year = {2012}, 28 | url = {http://www.gnu.org/software/autoconf/} 29 | } 30 | 31 | @MISC{web:Automake, 32 | author = {{GNU}}, 33 | title = {Automake}, 34 | month = {02}, 35 | year = {2012}, 36 | url = {http://www.gnu.org/software/automake/} 37 | } 38 | 39 | @MISC{web:GTK+, 40 | author = {{GTK+}}, 41 | month = {02}, 42 | year = {2012}, 43 | url = {http://www.gtk.org/} 44 | } 45 | 46 | @MISC{web:Kitware, 47 | author = {Kitware}, 48 | month = {02}, 49 | year = {2012}, 50 | url = {http://www.kitware.com/} 51 | } 52 | 53 | @MISC{web:VTK, 54 | author = {Kitware}, 55 | title = {{Visualization Toolkit}}, 56 | month = {02}, 57 | year = {2012}, 58 | url = {http://vtk.org/} 59 | } 60 | 61 | @MISC{web:CMake, 62 | author = {Kitware}, 63 | title = {{CMake}}, 64 | month = {12}, 65 | year = {2011}, 66 | url = {http://cmake.org/} 67 | } 68 | 69 | @MISC{web:ITK, 70 | author = {Kitware}, 71 | title = {{Insight Toolkit}}, 72 | month = {12}, 73 | year = {2011}, 74 | url = {http://www.itk.org} 75 | } 76 | 77 | @MISC{web:Qt, 78 | author = {Nokia}, 79 | title = {{Qt - Cross-platform application and UI framework}}, 80 | month = {02}, 81 | year = {2012}, 82 | url = {http://qt.nokia.com/} 83 | } 84 | 85 | @MISC{web:qmake, 86 | author = {{Nokia}}, 87 | title = {qmake}, 88 | month = {02}, 89 | year = {2012}, 90 | url = {http://doc.trolltech.com/4.7/qmake-manual.html} 91 | } 92 | 93 | @MISC{web:OpenCV, 94 | author = {{OpenCV}}, 95 | month = {02}, 96 | year = {2012}, 97 | url = {http://opencv.willowgarage.com/} 98 | } 99 | 100 | @MISC{web:OSG, 101 | author = {{OpenSceneGraph}}, 102 | month = {02}, 103 | year = {2012}, 104 | url = {http://www.openscenegraph.org/} 105 | } 106 | 107 | @MISC{web:OpenSG, 108 | author = {{OpenSG}}, 109 | month = {02}, 110 | year = {2012}, 111 | url = {http://www.opensg.org/} 112 | } 113 | 114 | @MISC{web:Java3D, 115 | author = {Oracle}, 116 | title = {{Java 3D}}, 117 | month = {05}, 118 | year = {2011}, 119 | url = {http://java.net/projects/java3d} 120 | } 121 | 122 | @MISC{web:Python, 123 | author = {{Python Software Foundation}}, 124 | title = {{Python}}, 125 | month = {02}, 126 | year = {2012}, 127 | url = {http://python.org/} 128 | } 129 | -------------------------------------------------------------------------------- /Paper/Proceeding-llncs/style/splncs.bst: -------------------------------------------------------------------------------- 1 | % BibTeX bibliography style `splncs' 2 | 3 | % An attempt to match the bibliography style required for use with 4 | % numbered references in Springer Verlag's "Lecture Notes in Computer 5 | % Science" series. (See Springer's documentation for llncs.sty 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{splncs}, and cite 10 | % a reference with (e.g.) \cite{smith77} to get a "[1]" in the text. 11 | 12 | % Copyright (C) 1999 Jason Noble. 13 | % Last updated: Friday 07 March 2006, 08:04:42 Frank Holzwarth, Springer 14 | % 15 | % Based on the BibTeX standard bibliography style `unsrt' 16 | 17 | ENTRY 18 | { address 19 | author 20 | booktitle 21 | chapter 22 | edition 23 | editor 24 | howpublished 25 | institution 26 | journal 27 | key 28 | month 29 | note 30 | number 31 | organization 32 | pages 33 | publisher 34 | school 35 | series 36 | title 37 | type 38 | volume 39 | year 40 | } 41 | {} 42 | { label } 43 | 44 | INTEGERS { output.state before.all mid.sentence after.sentence 45 | after.block after.authors between.elements} 46 | 47 | FUNCTION {init.state.consts} 48 | { #0 'before.all := 49 | #1 'mid.sentence := 50 | #2 'after.sentence := 51 | #3 'after.block := 52 | #4 'after.authors := 53 | #5 'between.elements := 54 | } 55 | 56 | STRINGS { s t } 57 | 58 | FUNCTION {output.nonnull} 59 | { 's := 60 | output.state mid.sentence = 61 | { " " * write$ } 62 | { output.state after.block = 63 | { add.period$ write$ 64 | newline$ 65 | "\newblock " write$ 66 | } 67 | { 68 | output.state after.authors = 69 | { ": " * write$ 70 | newline$ 71 | "\newblock " write$ 72 | } 73 | { output.state between.elements = 74 | { ", " * write$ } 75 | { output.state before.all = 76 | 'write$ 77 | { add.period$ " " * write$ } 78 | if$ 79 | } 80 | if$ 81 | } 82 | if$ 83 | } 84 | if$ 85 | mid.sentence 'output.state := 86 | } 87 | if$ 88 | s 89 | } 90 | 91 | FUNCTION {output} 92 | { duplicate$ empty$ 93 | 'pop$ 94 | 'output.nonnull 95 | if$ 96 | } 97 | 98 | FUNCTION {output.check} 99 | { 't := 100 | duplicate$ empty$ 101 | { pop$ "empty " t * " in " * cite$ * warning$ } 102 | 'output.nonnull 103 | if$ 104 | } 105 | 106 | FUNCTION {output.bibitem} 107 | { newline$ 108 | "\bibitem{" write$ 109 | cite$ write$ 110 | "}" write$ 111 | newline$ 112 | "" 113 | before.all 'output.state := 114 | } 115 | 116 | FUNCTION {fin.entry} 117 | { write$ 118 | newline$ 119 | } 120 | 121 | FUNCTION {new.block} 122 | { output.state before.all = 123 | 'skip$ 124 | { after.block 'output.state := } 125 | if$ 126 | } 127 | 128 | FUNCTION {stupid.colon} 129 | { after.authors 'output.state := } 130 | 131 | FUNCTION {insert.comma} 132 | { output.state before.all = 133 | 'skip$ 134 | { between.elements 'output.state := } 135 | if$ 136 | } 137 | 138 | FUNCTION {new.sentence} 139 | { output.state after.block = 140 | 'skip$ 141 | { output.state before.all = 142 | 'skip$ 143 | { after.sentence 'output.state := } 144 | if$ 145 | } 146 | if$ 147 | } 148 | 149 | FUNCTION {not} 150 | { { #0 } 151 | { #1 } 152 | if$ 153 | } 154 | 155 | FUNCTION {and} 156 | { 'skip$ 157 | { pop$ #0 } 158 | if$ 159 | } 160 | 161 | FUNCTION {or} 162 | { { pop$ #1 } 163 | 'skip$ 164 | if$ 165 | } 166 | 167 | FUNCTION {new.block.checka} 168 | { empty$ 169 | 'skip$ 170 | 'new.block 171 | if$ 172 | } 173 | 174 | FUNCTION {new.block.checkb} 175 | { empty$ 176 | swap$ empty$ 177 | and 178 | 'skip$ 179 | 'new.block 180 | if$ 181 | } 182 | 183 | FUNCTION {new.sentence.checka} 184 | { empty$ 185 | 'skip$ 186 | 'new.sentence 187 | if$ 188 | } 189 | 190 | FUNCTION {new.sentence.checkb} 191 | { empty$ 192 | swap$ empty$ 193 | and 194 | 'skip$ 195 | 'new.sentence 196 | if$ 197 | } 198 | 199 | FUNCTION {field.or.null} 200 | { duplicate$ empty$ 201 | { pop$ "" } 202 | 'skip$ 203 | if$ 204 | } 205 | 206 | FUNCTION {emphasize} 207 | { duplicate$ empty$ 208 | { pop$ "" } 209 | { "" swap$ * "" * } 210 | if$ 211 | } 212 | 213 | FUNCTION {bold} 214 | { duplicate$ empty$ 215 | { pop$ "" } 216 | { "\textbf{" swap$ * "}" * } 217 | if$ 218 | } 219 | 220 | FUNCTION {parens} 221 | { duplicate$ empty$ 222 | { pop$ "" } 223 | { "(" swap$ * ")" * } 224 | if$ 225 | } 226 | 227 | INTEGERS { nameptr namesleft numnames } 228 | 229 | FUNCTION {format.springer.names} 230 | { 's := 231 | #1 'nameptr := 232 | s num.names$ 'numnames := 233 | numnames 'namesleft := 234 | { namesleft #0 > } 235 | { s nameptr "{vv~}{ll}{, jj}{, f{.}.}" format.name$ 't := 236 | nameptr #1 > 237 | { namesleft #1 > 238 | { ", " * t * } 239 | { numnames #1 > 240 | { ", " * } 241 | 'skip$ 242 | if$ 243 | t "others" = 244 | { " et~al." * } 245 | { "" * t * } 246 | if$ 247 | } 248 | if$ 249 | } 250 | 't 251 | if$ 252 | nameptr #1 + 'nameptr := 253 | namesleft #1 - 'namesleft := 254 | } 255 | while$ 256 | } 257 | 258 | FUNCTION {format.names} 259 | { 's := 260 | #1 'nameptr := 261 | s num.names$ 'numnames := 262 | numnames 'namesleft := 263 | { namesleft #0 > } 264 | { s nameptr "{vv~}{ll}{, jj}{, f.}" format.name$ 't := 265 | nameptr #1 > 266 | { namesleft #1 > 267 | { ", " * t * } 268 | { numnames #2 > 269 | { "," * } 270 | 'skip$ 271 | if$ 272 | t "others" = 273 | { " et~al." * } 274 | { " \& " * t * } 275 | if$ 276 | } 277 | if$ 278 | } 279 | 't 280 | if$ 281 | nameptr #1 + 'nameptr := 282 | namesleft #1 - 'namesleft := 283 | } 284 | while$ 285 | } 286 | 287 | FUNCTION {format.authors} 288 | { author empty$ 289 | { "" } 290 | { author format.springer.names } 291 | if$ 292 | } 293 | 294 | FUNCTION {format.editors} 295 | { editor empty$ 296 | { "" } 297 | { editor format.springer.names 298 | editor num.names$ #1 > 299 | { ", eds." * } 300 | { ", ed." * } 301 | if$ 302 | } 303 | if$ 304 | } 305 | 306 | FUNCTION {format.title} 307 | { title empty$ 308 | { "" } 309 | { title "t" change.case$ } 310 | if$ 311 | } 312 | 313 | FUNCTION {n.dashify} 314 | { 't := 315 | "" 316 | { t empty$ not } 317 | { t #1 #1 substring$ "-" = 318 | { t #1 #2 substring$ "--" = not 319 | { "--" * 320 | t #2 global.max$ substring$ 't := 321 | } 322 | { { t #1 #1 substring$ "-" = } 323 | { "-" * 324 | t #2 global.max$ substring$ 't := 325 | } 326 | while$ 327 | } 328 | if$ 329 | } 330 | { t #1 #1 substring$ * 331 | t #2 global.max$ substring$ 't := 332 | } 333 | if$ 334 | } 335 | while$ 336 | } 337 | 338 | FUNCTION {format.date} 339 | { year empty$ 340 | { month empty$ 341 | { "" } 342 | { "there's a month but no year in " cite$ * warning$ 343 | month 344 | } 345 | if$ 346 | } 347 | { month empty$ 348 | 'year 349 | { month " " * year * } 350 | if$ 351 | } 352 | if$ 353 | } 354 | 355 | FUNCTION {format.btitle} 356 | { title emphasize 357 | } 358 | 359 | FUNCTION {tie.or.space.connect} 360 | { duplicate$ text.length$ #3 < 361 | { "~" } 362 | { " " } 363 | if$ 364 | swap$ * * 365 | } 366 | 367 | FUNCTION {either.or.check} 368 | { empty$ 369 | 'pop$ 370 | { "can't use both " swap$ * " fields in " * cite$ * warning$ } 371 | if$ 372 | } 373 | 374 | FUNCTION {format.bvolume} 375 | { volume empty$ 376 | { "" } 377 | { "Volume" volume tie.or.space.connect 378 | series empty$ 379 | 'skip$ 380 | { " of " * series emphasize * } 381 | if$ 382 | add.period$ 383 | "volume and number" number either.or.check 384 | } 385 | if$ 386 | } 387 | 388 | FUNCTION {format.number.series} 389 | { volume empty$ 390 | { number empty$ 391 | { series field.or.null } 392 | { output.state mid.sentence = 393 | { "number" } 394 | { "Number" } 395 | if$ 396 | number tie.or.space.connect 397 | series empty$ 398 | { "there's a number but no series in " cite$ * warning$ } 399 | { " in " * series * } 400 | if$ 401 | } 402 | if$ 403 | } 404 | { "" } 405 | if$ 406 | } 407 | 408 | FUNCTION {format.edition} 409 | { edition empty$ 410 | { "" } 411 | { output.state mid.sentence = 412 | { edition "l" change.case$ " edn." * } 413 | { edition "t" change.case$ " edn." * } 414 | if$ 415 | } 416 | if$ 417 | } 418 | 419 | INTEGERS { multiresult } 420 | 421 | FUNCTION {multi.page.check} 422 | { 't := 423 | #0 'multiresult := 424 | { multiresult not 425 | t empty$ not 426 | and 427 | } 428 | { t #1 #1 substring$ 429 | duplicate$ "-" = 430 | swap$ duplicate$ "," = 431 | swap$ "+" = 432 | or or 433 | { #1 'multiresult := } 434 | { t #2 global.max$ substring$ 't := } 435 | if$ 436 | } 437 | while$ 438 | multiresult 439 | } 440 | 441 | FUNCTION {format.pages} 442 | { pages empty$ 443 | { "" } 444 | { pages multi.page.check 445 | { "" pages n.dashify tie.or.space.connect } 446 | { "" pages tie.or.space.connect } 447 | if$ 448 | } 449 | if$ 450 | } 451 | 452 | FUNCTION {format.vol} 453 | { volume bold 454 | } 455 | 456 | FUNCTION {format.vol.num} 457 | { volume bold 458 | number empty$ 459 | { } 460 | { number "(" swap$ * * ")" * } 461 | if$ 462 | } 463 | 464 | FUNCTION {pre.format.pages} 465 | { pages empty$ 466 | 'skip$ 467 | { duplicate$ empty$ 468 | { pop$ format.pages } 469 | { " " * pages n.dashify * } 470 | if$ 471 | } 472 | if$ 473 | } 474 | 475 | FUNCTION {format.chapter.pages} 476 | { chapter empty$ 477 | 'format.pages 478 | { type empty$ 479 | { "chapter" } 480 | { type "l" change.case$ } 481 | if$ 482 | chapter tie.or.space.connect 483 | pages empty$ 484 | 'skip$ 485 | { " " * format.pages * } 486 | if$ 487 | } 488 | if$ 489 | } 490 | 491 | FUNCTION {format.in.ed.booktitle} 492 | { booktitle empty$ 493 | { "" } 494 | { editor empty$ 495 | { "In: " booktitle emphasize * } 496 | { "In " format.editors * ": " * booktitle emphasize * } 497 | if$ 498 | } 499 | if$ 500 | } 501 | 502 | FUNCTION {empty.misc.check} 503 | { author empty$ title empty$ howpublished empty$ 504 | month empty$ year empty$ note empty$ 505 | and and and and and 506 | { "all relevant fields are empty in " cite$ * warning$ } 507 | 'skip$ 508 | if$ 509 | } 510 | 511 | FUNCTION {format.thesis.type} 512 | { type empty$ 513 | 'skip$ 514 | { pop$ 515 | type "t" change.case$ 516 | } 517 | if$ 518 | } 519 | 520 | FUNCTION {format.tr.number} 521 | { type empty$ 522 | { "Technical Report" } 523 | 'type 524 | if$ 525 | number empty$ 526 | { "t" change.case$ } 527 | { number tie.or.space.connect } 528 | if$ 529 | } 530 | 531 | FUNCTION {format.article.crossref} 532 | { key empty$ 533 | { journal empty$ 534 | { "need key or journal for " cite$ * " to crossref " * crossref * 535 | warning$ 536 | "" 537 | } 538 | { "In {\em " journal * "\/}" * } 539 | if$ 540 | } 541 | { "In " key * } 542 | if$ 543 | " \cite{" * crossref * "}" * 544 | } 545 | 546 | FUNCTION {format.crossref.editor} 547 | { editor #1 "{vv~}{ll}" format.name$ 548 | editor num.names$ duplicate$ 549 | #2 > 550 | { pop$ " et~al." * } 551 | { #2 < 552 | 'skip$ 553 | { editor #2 "{ff }{vv }{ll}{ jj}" format.name$ "others" = 554 | { " et~al." * } 555 | { " and " * editor #2 "{vv~}{ll}" format.name$ * } 556 | if$ 557 | } 558 | if$ 559 | } 560 | if$ 561 | } 562 | 563 | FUNCTION {format.book.crossref} 564 | { volume empty$ 565 | { "empty volume in " cite$ * "'s crossref of " * crossref * warning$ 566 | "In " 567 | } 568 | { "Volume" volume tie.or.space.connect 569 | " of " * 570 | } 571 | if$ 572 | " \cite{" * crossref * "}" * 573 | } 574 | 575 | FUNCTION {format.incoll.inproc.crossref} 576 | { editor empty$ 577 | editor field.or.null author field.or.null = 578 | or 579 | { key empty$ 580 | { booktitle empty$ 581 | { "need editor, key, or booktitle for " cite$ * " to crossref " * 582 | crossref * warning$ 583 | "" 584 | } 585 | { "" } 586 | if$ 587 | } 588 | { "" } 589 | if$ 590 | } 591 | { "" } 592 | if$ 593 | " \cite{" * crossref * "}" * 594 | } 595 | 596 | FUNCTION {and.the.note} 597 | { note output 598 | note empty$ 599 | 'skip$ 600 | { add.period$ } 601 | if$ 602 | } 603 | 604 | FUNCTION {article} 605 | { output.bibitem 606 | format.authors "author" output.check 607 | stupid.colon 608 | format.title "title" output.check 609 | new.block 610 | crossref missing$ 611 | { journal emphasize "journal" output.check 612 | format.vol.num output 613 | format.date parens output 614 | format.pages output 615 | } 616 | { format.article.crossref output.nonnull 617 | format.pages output 618 | } 619 | if$ 620 | and.the.note 621 | fin.entry 622 | } 623 | 624 | FUNCTION {book} 625 | { output.bibitem 626 | author empty$ 627 | { format.editors "author and editor" output.check } 628 | { format.authors output.nonnull 629 | crossref missing$ 630 | { "author and editor" editor either.or.check } 631 | 'skip$ 632 | if$ 633 | } 634 | if$ 635 | stupid.colon 636 | format.btitle "title" output.check 637 | new.sentence 638 | crossref missing$ 639 | { format.edition output 640 | format.bvolume output 641 | new.block 642 | format.number.series output 643 | new.sentence 644 | publisher "publisher" output.check 645 | address empty$ 646 | 'skip$ 647 | { insert.comma } 648 | if$ 649 | address output 650 | format.date parens output 651 | } 652 | { format.book.crossref output.nonnull 653 | } 654 | if$ 655 | and.the.note 656 | fin.entry 657 | } 658 | 659 | FUNCTION {booklet} 660 | { output.bibitem 661 | format.authors output 662 | stupid.colon 663 | format.title "title" output.check 664 | howpublished address new.block.checkb 665 | howpublished output 666 | address empty$ 667 | 'skip$ 668 | { insert.comma } 669 | if$ 670 | address output 671 | format.date parens output 672 | and.the.note 673 | fin.entry 674 | } 675 | 676 | FUNCTION {inbook} 677 | { output.bibitem 678 | author empty$ 679 | { format.editors "author and editor" output.check } 680 | { format.authors output.nonnull 681 | crossref missing$ 682 | { "author and editor" editor either.or.check } 683 | 'skip$ 684 | if$ 685 | } 686 | if$ 687 | stupid.colon 688 | crossref missing$ 689 | { chapter output 690 | new.block 691 | format.number.series output 692 | new.sentence 693 | "In:" output 694 | format.btitle "title" output.check 695 | new.sentence 696 | format.edition output 697 | format.bvolume output 698 | publisher "publisher" output.check 699 | address empty$ 700 | 'skip$ 701 | { insert.comma } 702 | if$ 703 | address output 704 | format.date parens output 705 | } 706 | { chapter output 707 | new.block 708 | format.incoll.inproc.crossref output.nonnull 709 | } 710 | if$ 711 | format.pages output 712 | and.the.note 713 | fin.entry 714 | } 715 | 716 | FUNCTION {incollection} 717 | { output.bibitem 718 | format.authors "author" output.check 719 | stupid.colon 720 | format.title "title" output.check 721 | new.block 722 | crossref missing$ 723 | { format.in.ed.booktitle "booktitle" output.check 724 | new.sentence 725 | format.bvolume output 726 | format.number.series output 727 | new.block 728 | format.edition output 729 | publisher "publisher" output.check 730 | address empty$ 731 | 'skip$ 732 | { insert.comma } 733 | if$ 734 | address output 735 | format.date parens output 736 | format.pages output 737 | } 738 | { format.incoll.inproc.crossref output.nonnull 739 | format.chapter.pages output 740 | } 741 | if$ 742 | and.the.note 743 | fin.entry 744 | } 745 | 746 | FUNCTION {inproceedings} 747 | { output.bibitem 748 | format.authors "author" output.check 749 | stupid.colon 750 | format.title "title" output.check 751 | new.block 752 | crossref missing$ 753 | { format.in.ed.booktitle "booktitle" output.check 754 | new.sentence 755 | format.bvolume output 756 | format.number.series output 757 | address empty$ 758 | { organization publisher new.sentence.checkb 759 | organization empty$ 760 | 'skip$ 761 | { insert.comma } 762 | if$ 763 | organization output 764 | publisher empty$ 765 | 'skip$ 766 | { insert.comma } 767 | if$ 768 | publisher output 769 | format.date parens output 770 | } 771 | { insert.comma 772 | address output.nonnull 773 | organization empty$ 774 | 'skip$ 775 | { insert.comma } 776 | if$ 777 | organization output 778 | publisher empty$ 779 | 'skip$ 780 | { insert.comma } 781 | if$ 782 | publisher output 783 | format.date parens output 784 | } 785 | if$ 786 | } 787 | { format.incoll.inproc.crossref output.nonnull 788 | } 789 | if$ 790 | format.pages output 791 | and.the.note 792 | fin.entry 793 | } 794 | 795 | FUNCTION {conference} { inproceedings } 796 | 797 | FUNCTION {manual} 798 | { output.bibitem 799 | author empty$ 800 | { organization empty$ 801 | 'skip$ 802 | { organization output.nonnull 803 | address output 804 | } 805 | if$ 806 | } 807 | { format.authors output.nonnull } 808 | if$ 809 | stupid.colon 810 | format.btitle "title" output.check 811 | author empty$ 812 | { organization empty$ 813 | { address new.block.checka 814 | address output 815 | } 816 | 'skip$ 817 | if$ 818 | } 819 | { organization address new.block.checkb 820 | organization output 821 | address empty$ 822 | 'skip$ 823 | { insert.comma } 824 | if$ 825 | address output 826 | } 827 | if$ 828 | new.sentence 829 | format.edition output 830 | format.date parens output 831 | and.the.note 832 | fin.entry 833 | } 834 | 835 | FUNCTION {mastersthesis} 836 | { output.bibitem 837 | format.authors "author" output.check 838 | stupid.colon 839 | format.title "title" output.check 840 | new.block 841 | "Master's thesis" format.thesis.type output.nonnull 842 | school empty$ 843 | 'skip$ 844 | { insert.comma } 845 | if$ 846 | school "school" output.check 847 | address empty$ 848 | 'skip$ 849 | { insert.comma } 850 | if$ 851 | address output 852 | format.date parens output 853 | and.the.note 854 | fin.entry 855 | } 856 | 857 | FUNCTION {misc} 858 | { output.bibitem 859 | format.authors "author" output.check 860 | stupid.colon 861 | format.title "title" output.check 862 | howpublished new.block.checka 863 | howpublished output 864 | format.date parens output 865 | and.the.note 866 | fin.entry 867 | empty.misc.check 868 | } 869 | 870 | FUNCTION {phdthesis} 871 | { output.bibitem 872 | format.authors "author" output.check 873 | stupid.colon 874 | format.btitle "title" output.check 875 | new.block 876 | "PhD thesis" format.thesis.type output.nonnull 877 | school empty$ 878 | 'skip$ 879 | { insert.comma } 880 | if$ 881 | school "school" output.check 882 | address empty$ 883 | 'skip$ 884 | { insert.comma } 885 | if$ 886 | address output 887 | format.date parens output 888 | and.the.note 889 | fin.entry 890 | } 891 | 892 | FUNCTION {proceedings} 893 | { output.bibitem 894 | editor empty$ 895 | { organization empty$ 896 | { "" } 897 | { organization output 898 | stupid.colon } 899 | if$ 900 | } 901 | { format.editors output.nonnull 902 | stupid.colon 903 | } 904 | if$ 905 | format.btitle "title" output.check 906 | new.block 907 | crossref missing$ 908 | { format.in.ed.booktitle "booktitle" output.check 909 | new.sentence 910 | format.bvolume output 911 | format.number.series output 912 | address empty$ 913 | { organization publisher new.sentence.checkb 914 | organization empty$ 915 | 'skip$ 916 | { insert.comma } 917 | if$ 918 | organization output 919 | publisher empty$ 920 | 'skip$ 921 | { insert.comma } 922 | if$ 923 | publisher output 924 | format.date parens output 925 | } 926 | { insert.comma 927 | address output.nonnull 928 | organization empty$ 929 | 'skip$ 930 | { insert.comma } 931 | if$ 932 | organization output 933 | publisher empty$ 934 | 'skip$ 935 | { insert.comma } 936 | if$ 937 | publisher output 938 | format.date parens output 939 | } 940 | if$ 941 | } 942 | { format.incoll.inproc.crossref output.nonnull 943 | } 944 | if$ 945 | and.the.note 946 | fin.entry 947 | } 948 | 949 | FUNCTION {techreport} 950 | { output.bibitem 951 | format.authors "author" output.check 952 | stupid.colon 953 | format.title "title" output.check 954 | new.block 955 | format.tr.number output.nonnull 956 | institution empty$ 957 | 'skip$ 958 | { insert.comma } 959 | if$ 960 | institution "institution" output.check 961 | address empty$ 962 | 'skip$ 963 | { insert.comma } 964 | if$ 965 | address output 966 | format.date parens output 967 | and.the.note 968 | fin.entry 969 | } 970 | 971 | FUNCTION {unpublished} 972 | { output.bibitem 973 | format.authors "author" output.check 974 | stupid.colon 975 | format.title "title" output.check 976 | new.block 977 | note "note" output.check 978 | format.date parens output 979 | fin.entry 980 | } 981 | 982 | FUNCTION {default.type} { misc } 983 | 984 | MACRO {jan} {"January"} 985 | 986 | MACRO {feb} {"February"} 987 | 988 | MACRO {mar} {"March"} 989 | 990 | MACRO {apr} {"April"} 991 | 992 | MACRO {may} {"May"} 993 | 994 | MACRO {jun} {"June"} 995 | 996 | MACRO {jul} {"July"} 997 | 998 | MACRO {aug} {"August"} 999 | 1000 | MACRO {sep} {"September"} 1001 | 1002 | MACRO {oct} {"October"} 1003 | 1004 | MACRO {nov} {"November"} 1005 | 1006 | MACRO {dec} {"December"} 1007 | 1008 | MACRO {acmcs} {"ACM Computing Surveys"} 1009 | 1010 | MACRO {acta} {"Acta Informatica"} 1011 | 1012 | MACRO {cacm} {"Communications of the ACM"} 1013 | 1014 | MACRO {ibmjrd} {"IBM Journal of Research and Development"} 1015 | 1016 | MACRO {ibmsj} {"IBM Systems Journal"} 1017 | 1018 | MACRO {ieeese} {"IEEE Transactions on Software Engineering"} 1019 | 1020 | MACRO {ieeetc} {"IEEE Transactions on Computers"} 1021 | 1022 | MACRO {ieeetcad} 1023 | {"IEEE Transactions on Computer-Aided Design of Integrated Circuits"} 1024 | 1025 | MACRO {ipl} {"Information Processing Letters"} 1026 | 1027 | MACRO {jacm} {"Journal of the ACM"} 1028 | 1029 | MACRO {jcss} {"Journal of Computer and System Sciences"} 1030 | 1031 | MACRO {scp} {"Science of Computer Programming"} 1032 | 1033 | MACRO {sicomp} {"SIAM Journal on Computing"} 1034 | 1035 | MACRO {tocs} {"ACM Transactions on Computer Systems"} 1036 | 1037 | MACRO {tods} {"ACM Transactions on Database Systems"} 1038 | 1039 | MACRO {tog} {"ACM Transactions on Graphics"} 1040 | 1041 | MACRO {toms} {"ACM Transactions on Mathematical Software"} 1042 | 1043 | MACRO {toois} {"ACM Transactions on Office Information Systems"} 1044 | 1045 | MACRO {toplas} {"ACM Transactions on Programming Languages and Systems"} 1046 | 1047 | MACRO {tcs} {"Theoretical Computer Science"} 1048 | 1049 | READ 1050 | 1051 | STRINGS { longest.label } 1052 | 1053 | INTEGERS { number.label longest.label.width } 1054 | 1055 | FUNCTION {initialize.longest.label} 1056 | { "" 'longest.label := 1057 | #1 'number.label := 1058 | #0 'longest.label.width := 1059 | } 1060 | 1061 | FUNCTION {longest.label.pass} 1062 | { number.label int.to.str$ 'label := 1063 | number.label #1 + 'number.label := 1064 | label width$ longest.label.width > 1065 | { label 'longest.label := 1066 | label width$ 'longest.label.width := 1067 | } 1068 | 'skip$ 1069 | if$ 1070 | } 1071 | 1072 | EXECUTE {initialize.longest.label} 1073 | 1074 | ITERATE {longest.label.pass} 1075 | 1076 | FUNCTION {begin.bib} 1077 | { preamble$ empty$ 1078 | 'skip$ 1079 | { preamble$ write$ newline$ } 1080 | if$ 1081 | "\begin{thebibliography}{" longest.label * "}" * write$ newline$ 1082 | } 1083 | 1084 | EXECUTE {begin.bib} 1085 | 1086 | EXECUTE {init.state.consts} 1087 | 1088 | ITERATE {call.type$} 1089 | 1090 | FUNCTION {end.bib} 1091 | { newline$ 1092 | "\end{thebibliography}" write$ newline$ 1093 | } 1094 | 1095 | EXECUTE {end.bib} 1096 | 1097 | 1098 | 1099 | -------------------------------------------------------------------------------- /Paper/Proceeding-llncs/style/splncs_srt.bst: -------------------------------------------------------------------------------- 1 | % BibTeX bibliography style `splncs_srt' 2 | 3 | % An attempt to match the bibliography style required for use with 4 | % numbered references in Springer Verlag's "Lecture Notes in Computer 5 | % Science" series. (See Springer's documentation for llncs.sty 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{splncs_srt}, and cite 10 | % a reference with (e.g.) \cite{smith77} to get a "[1]" in the text. 11 | 12 | % Copyright (C) 1999 Jason Noble. 13 | % Last updated: Friday 07 March 2006, 08:04:42 Frank Holzwarth, Springer 14 | % Last modification: added sorting feature from plain.bst 15 | % done by Tobias Heindel, FMI Uni-Stuttgart, June 13th, 2006 16 | % 17 | % Originally based on the BibTeX standard bibliography style `unsrt' 18 | % 19 | 20 | ENTRY 21 | { address 22 | author 23 | booktitle 24 | chapter 25 | edition 26 | editor 27 | howpublished 28 | institution 29 | journal 30 | key 31 | month 32 | note 33 | number 34 | organization 35 | pages 36 | publisher 37 | school 38 | series 39 | title 40 | type 41 | volume 42 | year 43 | } 44 | {} 45 | { label } 46 | 47 | INTEGERS { output.state before.all mid.sentence after.sentence 48 | after.block after.authors between.elements} 49 | 50 | FUNCTION {init.state.consts} 51 | { #0 'before.all := 52 | #1 'mid.sentence := 53 | #2 'after.sentence := 54 | #3 'after.block := 55 | #4 'after.authors := 56 | #5 'between.elements := 57 | } 58 | 59 | STRINGS { s t } 60 | 61 | FUNCTION {output.nonnull} 62 | { 's := 63 | output.state mid.sentence = 64 | { " " * write$ } 65 | { output.state after.block = 66 | { add.period$ write$ 67 | newline$ 68 | "\newblock " write$ 69 | } 70 | { 71 | output.state after.authors = 72 | { ": " * write$ 73 | newline$ 74 | "\newblock " write$ 75 | } 76 | { output.state between.elements = 77 | { ", " * write$ } 78 | { output.state before.all = 79 | 'write$ 80 | { add.period$ " " * write$ } 81 | if$ 82 | } 83 | if$ 84 | } 85 | if$ 86 | } 87 | if$ 88 | mid.sentence 'output.state := 89 | } 90 | if$ 91 | s 92 | } 93 | 94 | FUNCTION {output} 95 | { duplicate$ empty$ 96 | 'pop$ 97 | 'output.nonnull 98 | if$ 99 | } 100 | 101 | FUNCTION {output.check} 102 | { 't := 103 | duplicate$ empty$ 104 | { pop$ "empty " t * " in " * cite$ * warning$ } 105 | 'output.nonnull 106 | if$ 107 | } 108 | 109 | FUNCTION {output.bibitem} 110 | { newline$ 111 | "\bibitem{" write$ 112 | cite$ write$ 113 | "}" write$ 114 | newline$ 115 | "" 116 | before.all 'output.state := 117 | } 118 | 119 | FUNCTION {fin.entry} 120 | { write$ 121 | newline$ 122 | } 123 | 124 | FUNCTION {new.block} 125 | { output.state before.all = 126 | 'skip$ 127 | { after.block 'output.state := } 128 | if$ 129 | } 130 | 131 | FUNCTION {stupid.colon} 132 | { after.authors 'output.state := } 133 | 134 | FUNCTION {insert.comma} 135 | { output.state before.all = 136 | 'skip$ 137 | { between.elements 'output.state := } 138 | if$ 139 | } 140 | 141 | FUNCTION {new.sentence} 142 | { output.state after.block = 143 | 'skip$ 144 | { output.state before.all = 145 | 'skip$ 146 | { after.sentence 'output.state := } 147 | if$ 148 | } 149 | if$ 150 | } 151 | 152 | FUNCTION {not} 153 | { { #0 } 154 | { #1 } 155 | if$ 156 | } 157 | 158 | FUNCTION {and} 159 | { 'skip$ 160 | { pop$ #0 } 161 | if$ 162 | } 163 | 164 | FUNCTION {or} 165 | { { pop$ #1 } 166 | 'skip$ 167 | if$ 168 | } 169 | 170 | FUNCTION {new.block.checka} 171 | { empty$ 172 | 'skip$ 173 | 'new.block 174 | if$ 175 | } 176 | 177 | FUNCTION {new.block.checkb} 178 | { empty$ 179 | swap$ empty$ 180 | and 181 | 'skip$ 182 | 'new.block 183 | if$ 184 | } 185 | 186 | FUNCTION {new.sentence.checka} 187 | { empty$ 188 | 'skip$ 189 | 'new.sentence 190 | if$ 191 | } 192 | 193 | FUNCTION {new.sentence.checkb} 194 | { empty$ 195 | swap$ empty$ 196 | and 197 | 'skip$ 198 | 'new.sentence 199 | if$ 200 | } 201 | 202 | FUNCTION {field.or.null} 203 | { duplicate$ empty$ 204 | { pop$ "" } 205 | 'skip$ 206 | if$ 207 | } 208 | 209 | FUNCTION {emphasize} 210 | { duplicate$ empty$ 211 | { pop$ "" } 212 | { "" swap$ * "" * } 213 | if$ 214 | } 215 | 216 | FUNCTION {bold} 217 | { duplicate$ empty$ 218 | { pop$ "" } 219 | { "\textbf{" swap$ * "}" * } 220 | if$ 221 | } 222 | 223 | FUNCTION {parens} 224 | { duplicate$ empty$ 225 | { pop$ "" } 226 | { "(" swap$ * ")" * } 227 | if$ 228 | } 229 | 230 | INTEGERS { nameptr namesleft numnames } 231 | 232 | FUNCTION {format.springer.names} 233 | { 's := 234 | #1 'nameptr := 235 | s num.names$ 'numnames := 236 | numnames 'namesleft := 237 | { namesleft #0 > } 238 | { s nameptr "{vv~}{ll}{, jj}{, f{.}.}" format.name$ 't := 239 | nameptr #1 > 240 | { namesleft #1 > 241 | { ", " * t * } 242 | { numnames #1 > 243 | { ", " * } 244 | 'skip$ 245 | if$ 246 | t "others" = 247 | { " et~al." * } 248 | { "" * t * } 249 | if$ 250 | } 251 | if$ 252 | } 253 | 't 254 | if$ 255 | nameptr #1 + 'nameptr := 256 | namesleft #1 - 'namesleft := 257 | } 258 | while$ 259 | } 260 | 261 | FUNCTION {format.names} 262 | { 's := 263 | #1 'nameptr := 264 | s num.names$ 'numnames := 265 | numnames 'namesleft := 266 | { namesleft #0 > } 267 | { s nameptr "{vv~}{ll}{, jj}{, f.}" format.name$ 't := 268 | nameptr #1 > 269 | { namesleft #1 > 270 | { ", " * t * } 271 | { numnames #2 > 272 | { "," * } 273 | 'skip$ 274 | if$ 275 | t "others" = 276 | { " et~al." * } 277 | { " \& " * t * } 278 | if$ 279 | } 280 | if$ 281 | } 282 | 't 283 | if$ 284 | nameptr #1 + 'nameptr := 285 | namesleft #1 - 'namesleft := 286 | } 287 | while$ 288 | } 289 | 290 | FUNCTION {format.authors} 291 | { author empty$ 292 | { "" } 293 | { author format.springer.names } 294 | if$ 295 | } 296 | 297 | FUNCTION {format.editors} 298 | { editor empty$ 299 | { "" } 300 | { editor format.springer.names 301 | editor num.names$ #1 > 302 | { ", eds." * } 303 | { ", ed." * } 304 | if$ 305 | } 306 | if$ 307 | } 308 | 309 | FUNCTION {format.title} 310 | { title empty$ 311 | { "" } 312 | { title "t" change.case$ } 313 | if$ 314 | } 315 | 316 | FUNCTION {n.dashify} 317 | { 't := 318 | "" 319 | { t empty$ not } 320 | { t #1 #1 substring$ "-" = 321 | { t #1 #2 substring$ "--" = not 322 | { "--" * 323 | t #2 global.max$ substring$ 't := 324 | } 325 | { { t #1 #1 substring$ "-" = } 326 | { "-" * 327 | t #2 global.max$ substring$ 't := 328 | } 329 | while$ 330 | } 331 | if$ 332 | } 333 | { t #1 #1 substring$ * 334 | t #2 global.max$ substring$ 't := 335 | } 336 | if$ 337 | } 338 | while$ 339 | } 340 | 341 | FUNCTION {format.date} 342 | { year empty$ 343 | { month empty$ 344 | { "" } 345 | { "there's a month but no year in " cite$ * warning$ 346 | month 347 | } 348 | if$ 349 | } 350 | { month empty$ 351 | 'year 352 | { month " " * year * } 353 | if$ 354 | } 355 | if$ 356 | } 357 | 358 | FUNCTION {format.btitle} 359 | { title emphasize 360 | } 361 | 362 | FUNCTION {tie.or.space.connect} 363 | { duplicate$ text.length$ #3 < 364 | { "~" } 365 | { " " } 366 | if$ 367 | swap$ * * 368 | } 369 | 370 | FUNCTION {either.or.check} 371 | { empty$ 372 | 'pop$ 373 | { "can't use both " swap$ * " fields in " * cite$ * warning$ } 374 | if$ 375 | } 376 | 377 | FUNCTION {format.bvolume} 378 | { volume empty$ 379 | { "" } 380 | { "Volume" volume tie.or.space.connect 381 | series empty$ 382 | 'skip$ 383 | { " of " * series emphasize * } 384 | if$ 385 | add.period$ 386 | "volume and number" number either.or.check 387 | } 388 | if$ 389 | } 390 | 391 | FUNCTION {format.number.series} 392 | { volume empty$ 393 | { number empty$ 394 | { series field.or.null } 395 | { output.state mid.sentence = 396 | { "number" } 397 | { "Number" } 398 | if$ 399 | number tie.or.space.connect 400 | series empty$ 401 | { "there's a number but no series in " cite$ * warning$ } 402 | { " in " * series * } 403 | if$ 404 | } 405 | if$ 406 | } 407 | { "" } 408 | if$ 409 | } 410 | 411 | FUNCTION {format.edition} 412 | { edition empty$ 413 | { "" } 414 | { output.state mid.sentence = 415 | { edition "l" change.case$ " edn." * } 416 | { edition "t" change.case$ " edn." * } 417 | if$ 418 | } 419 | if$ 420 | } 421 | 422 | INTEGERS { multiresult } 423 | 424 | FUNCTION {multi.page.check} 425 | { 't := 426 | #0 'multiresult := 427 | { multiresult not 428 | t empty$ not 429 | and 430 | } 431 | { t #1 #1 substring$ 432 | duplicate$ "-" = 433 | swap$ duplicate$ "," = 434 | swap$ "+" = 435 | or or 436 | { #1 'multiresult := } 437 | { t #2 global.max$ substring$ 't := } 438 | if$ 439 | } 440 | while$ 441 | multiresult 442 | } 443 | 444 | FUNCTION {format.pages} 445 | { pages empty$ 446 | { "" } 447 | { pages multi.page.check 448 | { "" pages n.dashify tie.or.space.connect } 449 | { "" pages tie.or.space.connect } 450 | if$ 451 | } 452 | if$ 453 | } 454 | 455 | FUNCTION {format.vol} 456 | { volume bold 457 | } 458 | 459 | FUNCTION {format.vol.num} 460 | { volume bold 461 | number empty$ 462 | { } 463 | { number "(" swap$ * * ")" * } 464 | if$ 465 | } 466 | 467 | FUNCTION {pre.format.pages} 468 | { pages empty$ 469 | 'skip$ 470 | { duplicate$ empty$ 471 | { pop$ format.pages } 472 | { " " * pages n.dashify * } 473 | if$ 474 | } 475 | if$ 476 | } 477 | 478 | FUNCTION {format.chapter.pages} 479 | { chapter empty$ 480 | 'format.pages 481 | { type empty$ 482 | { "chapter" } 483 | { type "l" change.case$ } 484 | if$ 485 | chapter tie.or.space.connect 486 | pages empty$ 487 | 'skip$ 488 | { " " * format.pages * } 489 | if$ 490 | } 491 | if$ 492 | } 493 | 494 | FUNCTION {format.in.ed.booktitle} 495 | { booktitle empty$ 496 | { "" } 497 | { editor empty$ 498 | { "In: " booktitle emphasize * } 499 | { "In " format.editors * ": " * booktitle emphasize * } 500 | if$ 501 | } 502 | if$ 503 | } 504 | 505 | FUNCTION {empty.misc.check} 506 | { author empty$ title empty$ howpublished empty$ 507 | month empty$ year empty$ note empty$ 508 | and and and and and 509 | { "all relevant fields are empty in " cite$ * warning$ } 510 | 'skip$ 511 | if$ 512 | } 513 | 514 | FUNCTION {format.thesis.type} 515 | { type empty$ 516 | 'skip$ 517 | { pop$ 518 | type "t" change.case$ 519 | } 520 | if$ 521 | } 522 | 523 | FUNCTION {format.tr.number} 524 | { type empty$ 525 | { "Technical Report" } 526 | 'type 527 | if$ 528 | number empty$ 529 | { "t" change.case$ } 530 | { number tie.or.space.connect } 531 | if$ 532 | } 533 | 534 | FUNCTION {format.article.crossref} 535 | { key empty$ 536 | { journal empty$ 537 | { "need key or journal for " cite$ * " to crossref " * crossref * 538 | warning$ 539 | "" 540 | } 541 | { "In {\em " journal * "\/}" * } 542 | if$ 543 | } 544 | { "In " key * } 545 | if$ 546 | " \cite{" * crossref * "}" * 547 | } 548 | 549 | FUNCTION {format.crossref.editor} 550 | { editor #1 "{vv~}{ll}" format.name$ 551 | editor num.names$ duplicate$ 552 | #2 > 553 | { pop$ " et~al." * } 554 | { #2 < 555 | 'skip$ 556 | { editor #2 "{ff }{vv }{ll}{ jj}" format.name$ "others" = 557 | { " et~al." * } 558 | { " and " * editor #2 "{vv~}{ll}" format.name$ * } 559 | if$ 560 | } 561 | if$ 562 | } 563 | if$ 564 | } 565 | 566 | FUNCTION {format.book.crossref} 567 | { volume empty$ 568 | { "empty volume in " cite$ * "'s crossref of " * crossref * warning$ 569 | "In " 570 | } 571 | { "Volume" volume tie.or.space.connect 572 | " of " * 573 | } 574 | if$ 575 | " \cite{" * crossref * "}" * 576 | } 577 | 578 | FUNCTION {format.incoll.inproc.crossref} 579 | { editor empty$ 580 | editor field.or.null author field.or.null = 581 | or 582 | { key empty$ 583 | { booktitle empty$ 584 | { "need editor, key, or booktitle for " cite$ * " to crossref " * 585 | crossref * warning$ 586 | "" 587 | } 588 | { "" } 589 | if$ 590 | } 591 | { "" } 592 | if$ 593 | } 594 | { "" } 595 | if$ 596 | " \cite{" * crossref * "}" * 597 | } 598 | 599 | FUNCTION {and.the.note} 600 | { note output 601 | note empty$ 602 | 'skip$ 603 | { add.period$ } 604 | if$ 605 | } 606 | 607 | FUNCTION {article} 608 | { output.bibitem 609 | format.authors "author" output.check 610 | stupid.colon 611 | format.title "title" output.check 612 | new.block 613 | crossref missing$ 614 | { journal emphasize "journal" output.check 615 | format.vol.num output 616 | format.date parens output 617 | format.pages output 618 | } 619 | { format.article.crossref output.nonnull 620 | format.pages output 621 | } 622 | if$ 623 | and.the.note 624 | fin.entry 625 | } 626 | 627 | FUNCTION {book} 628 | { output.bibitem 629 | author empty$ 630 | { format.editors "author and editor" output.check } 631 | { format.authors output.nonnull 632 | crossref missing$ 633 | { "author and editor" editor either.or.check } 634 | 'skip$ 635 | if$ 636 | } 637 | if$ 638 | stupid.colon 639 | format.btitle "title" output.check 640 | new.sentence 641 | crossref missing$ 642 | { format.edition output 643 | format.bvolume output 644 | new.block 645 | format.number.series output 646 | new.sentence 647 | publisher "publisher" output.check 648 | address empty$ 649 | 'skip$ 650 | { insert.comma } 651 | if$ 652 | address output 653 | format.date parens output 654 | } 655 | { format.book.crossref output.nonnull 656 | } 657 | if$ 658 | and.the.note 659 | fin.entry 660 | } 661 | 662 | FUNCTION {booklet} 663 | { output.bibitem 664 | format.authors output 665 | stupid.colon 666 | format.title "title" output.check 667 | howpublished address new.block.checkb 668 | howpublished output 669 | address empty$ 670 | 'skip$ 671 | { insert.comma } 672 | if$ 673 | address output 674 | format.date parens output 675 | and.the.note 676 | fin.entry 677 | } 678 | 679 | FUNCTION {inbook} 680 | { output.bibitem 681 | author empty$ 682 | { format.editors "author and editor" output.check } 683 | { format.authors output.nonnull 684 | crossref missing$ 685 | { "author and editor" editor either.or.check } 686 | 'skip$ 687 | if$ 688 | } 689 | if$ 690 | stupid.colon 691 | crossref missing$ 692 | { chapter output 693 | new.block 694 | format.number.series output 695 | new.sentence 696 | "In:" output 697 | format.btitle "title" output.check 698 | new.sentence 699 | format.edition output 700 | format.bvolume output 701 | publisher "publisher" output.check 702 | address empty$ 703 | 'skip$ 704 | { insert.comma } 705 | if$ 706 | address output 707 | format.date parens output 708 | } 709 | { chapter output 710 | new.block 711 | format.incoll.inproc.crossref output.nonnull 712 | } 713 | if$ 714 | format.pages output 715 | and.the.note 716 | fin.entry 717 | } 718 | 719 | FUNCTION {incollection} 720 | { output.bibitem 721 | format.authors "author" output.check 722 | stupid.colon 723 | format.title "title" output.check 724 | new.block 725 | crossref missing$ 726 | { format.in.ed.booktitle "booktitle" output.check 727 | new.sentence 728 | format.bvolume output 729 | format.number.series output 730 | new.block 731 | format.edition output 732 | publisher "publisher" output.check 733 | address empty$ 734 | 'skip$ 735 | { insert.comma } 736 | if$ 737 | address output 738 | format.date parens output 739 | format.pages output 740 | } 741 | { format.incoll.inproc.crossref output.nonnull 742 | format.chapter.pages output 743 | } 744 | if$ 745 | and.the.note 746 | fin.entry 747 | } 748 | 749 | FUNCTION {inproceedings} 750 | { output.bibitem 751 | format.authors "author" output.check 752 | stupid.colon 753 | format.title "title" output.check 754 | new.block 755 | crossref missing$ 756 | { format.in.ed.booktitle "booktitle" output.check 757 | new.sentence 758 | format.bvolume output 759 | format.number.series output 760 | address empty$ 761 | { organization publisher new.sentence.checkb 762 | organization empty$ 763 | 'skip$ 764 | { insert.comma } 765 | if$ 766 | organization output 767 | publisher empty$ 768 | 'skip$ 769 | { insert.comma } 770 | if$ 771 | publisher output 772 | format.date parens output 773 | } 774 | { insert.comma 775 | address output.nonnull 776 | organization empty$ 777 | 'skip$ 778 | { insert.comma } 779 | if$ 780 | organization output 781 | publisher empty$ 782 | 'skip$ 783 | { insert.comma } 784 | if$ 785 | publisher output 786 | format.date parens output 787 | } 788 | if$ 789 | } 790 | { format.incoll.inproc.crossref output.nonnull 791 | } 792 | if$ 793 | format.pages output 794 | and.the.note 795 | fin.entry 796 | } 797 | 798 | FUNCTION {conference} { inproceedings } 799 | 800 | FUNCTION {manual} 801 | { output.bibitem 802 | author empty$ 803 | { organization empty$ 804 | 'skip$ 805 | { organization output.nonnull 806 | address output 807 | } 808 | if$ 809 | } 810 | { format.authors output.nonnull } 811 | if$ 812 | stupid.colon 813 | format.btitle "title" output.check 814 | author empty$ 815 | { organization empty$ 816 | { address new.block.checka 817 | address output 818 | } 819 | 'skip$ 820 | if$ 821 | } 822 | { organization address new.block.checkb 823 | organization output 824 | address empty$ 825 | 'skip$ 826 | { insert.comma } 827 | if$ 828 | address output 829 | } 830 | if$ 831 | new.sentence 832 | format.edition output 833 | format.date parens output 834 | and.the.note 835 | fin.entry 836 | } 837 | 838 | FUNCTION {mastersthesis} 839 | { output.bibitem 840 | format.authors "author" output.check 841 | stupid.colon 842 | format.title "title" output.check 843 | new.block 844 | "Master's thesis" format.thesis.type output.nonnull 845 | school empty$ 846 | 'skip$ 847 | { insert.comma } 848 | if$ 849 | school "school" output.check 850 | address empty$ 851 | 'skip$ 852 | { insert.comma } 853 | if$ 854 | address output 855 | format.date parens output 856 | and.the.note 857 | fin.entry 858 | } 859 | 860 | FUNCTION {misc} 861 | { output.bibitem 862 | format.authors "author" output.check 863 | stupid.colon 864 | format.title "title" output.check 865 | howpublished new.block.checka 866 | howpublished output 867 | format.date parens output 868 | and.the.note 869 | fin.entry 870 | empty.misc.check 871 | } 872 | 873 | FUNCTION {phdthesis} 874 | { output.bibitem 875 | format.authors "author" output.check 876 | stupid.colon 877 | format.btitle "title" output.check 878 | new.block 879 | "PhD thesis" format.thesis.type output.nonnull 880 | school empty$ 881 | 'skip$ 882 | { insert.comma } 883 | if$ 884 | school "school" output.check 885 | address empty$ 886 | 'skip$ 887 | { insert.comma } 888 | if$ 889 | address output 890 | format.date parens output 891 | and.the.note 892 | fin.entry 893 | } 894 | 895 | FUNCTION {proceedings} 896 | { output.bibitem 897 | editor empty$ 898 | { organization empty$ 899 | { "" } 900 | { organization output 901 | stupid.colon } 902 | if$ 903 | } 904 | { format.editors output.nonnull 905 | stupid.colon 906 | } 907 | if$ 908 | format.btitle "title" output.check 909 | new.block 910 | crossref missing$ 911 | { format.in.ed.booktitle "booktitle" output.check 912 | new.sentence 913 | format.bvolume output 914 | format.number.series output 915 | address empty$ 916 | { organization publisher new.sentence.checkb 917 | organization empty$ 918 | 'skip$ 919 | { insert.comma } 920 | if$ 921 | organization output 922 | publisher empty$ 923 | 'skip$ 924 | { insert.comma } 925 | if$ 926 | publisher output 927 | format.date parens output 928 | } 929 | { insert.comma 930 | address output.nonnull 931 | organization empty$ 932 | 'skip$ 933 | { insert.comma } 934 | if$ 935 | organization output 936 | publisher empty$ 937 | 'skip$ 938 | { insert.comma } 939 | if$ 940 | publisher output 941 | format.date parens output 942 | } 943 | if$ 944 | } 945 | { format.incoll.inproc.crossref output.nonnull 946 | } 947 | if$ 948 | and.the.note 949 | fin.entry 950 | } 951 | 952 | FUNCTION {techreport} 953 | { output.bibitem 954 | format.authors "author" output.check 955 | stupid.colon 956 | format.title "title" output.check 957 | new.block 958 | format.tr.number output.nonnull 959 | institution empty$ 960 | 'skip$ 961 | { insert.comma } 962 | if$ 963 | institution "institution" output.check 964 | address empty$ 965 | 'skip$ 966 | { insert.comma } 967 | if$ 968 | address output 969 | format.date parens output 970 | and.the.note 971 | fin.entry 972 | } 973 | 974 | FUNCTION {unpublished} 975 | { output.bibitem 976 | format.authors "author" output.check 977 | stupid.colon 978 | format.title "title" output.check 979 | new.block 980 | note "note" output.check 981 | format.date parens output 982 | fin.entry 983 | } 984 | 985 | FUNCTION {default.type} { misc } 986 | 987 | MACRO {jan} {"January"} 988 | 989 | MACRO {feb} {"February"} 990 | 991 | MACRO {mar} {"March"} 992 | 993 | MACRO {apr} {"April"} 994 | 995 | MACRO {may} {"May"} 996 | 997 | MACRO {jun} {"June"} 998 | 999 | MACRO {jul} {"July"} 1000 | 1001 | MACRO {aug} {"August"} 1002 | 1003 | MACRO {sep} {"September"} 1004 | 1005 | MACRO {oct} {"October"} 1006 | 1007 | MACRO {nov} {"November"} 1008 | 1009 | MACRO {dec} {"December"} 1010 | 1011 | MACRO {acmcs} {"ACM Computing Surveys"} 1012 | 1013 | MACRO {acta} {"Acta Informatica"} 1014 | 1015 | MACRO {cacm} {"Communications of the ACM"} 1016 | 1017 | MACRO {ibmjrd} {"IBM Journal of Research and Development"} 1018 | 1019 | MACRO {ibmsj} {"IBM Systems Journal"} 1020 | 1021 | MACRO {ieeese} {"IEEE Transactions on Software Engineering"} 1022 | 1023 | MACRO {ieeetc} {"IEEE Transactions on Computers"} 1024 | 1025 | MACRO {ieeetcad} 1026 | {"IEEE Transactions on Computer-Aided Design of Integrated Circuits"} 1027 | 1028 | MACRO {ipl} {"Information Processing Letters"} 1029 | 1030 | MACRO {jacm} {"Journal of the ACM"} 1031 | 1032 | MACRO {jcss} {"Journal of Computer and System Sciences"} 1033 | 1034 | MACRO {scp} {"Science of Computer Programming"} 1035 | 1036 | MACRO {sicomp} {"SIAM Journal on Computing"} 1037 | 1038 | MACRO {tocs} {"ACM Transactions on Computer Systems"} 1039 | 1040 | MACRO {tods} {"ACM Transactions on Database Systems"} 1041 | 1042 | MACRO {tog} {"ACM Transactions on Graphics"} 1043 | 1044 | MACRO {toms} {"ACM Transactions on Mathematical Software"} 1045 | 1046 | MACRO {toois} {"ACM Transactions on Office Information Systems"} 1047 | 1048 | MACRO {toplas} {"ACM Transactions on Programming Languages and Systems"} 1049 | 1050 | MACRO {tcs} {"Theoretical Computer Science"} 1051 | 1052 | READ 1053 | 1054 | %% Begin of addition of sorting (taken from CTAN plain.bst) 1055 | %% Tobias Heindel June 13th, 2006 1056 | 1057 | FUNCTION {sortify} 1058 | { purify$ 1059 | "l" change.case$ 1060 | } 1061 | 1062 | INTEGERS { len } 1063 | 1064 | FUNCTION {chop.word} 1065 | { 's := 1066 | 'len := 1067 | s #1 len substring$ = 1068 | { s len #1 + global.max$ substring$ } 1069 | 's 1070 | if$ 1071 | } 1072 | 1073 | FUNCTION {sort.format.names} 1074 | { 's := 1075 | #1 'nameptr := 1076 | "" 1077 | s num.names$ 'numnames := 1078 | numnames 'namesleft := 1079 | { namesleft #0 > } 1080 | { nameptr #1 > 1081 | { " " * } 1082 | 'skip$ 1083 | if$ 1084 | s nameptr "{vv{ } }{ll{ }}{ ff{ }}{ jj{ }}" format.name$ 't := 1085 | nameptr numnames = t "others" = and 1086 | { "et al" * } 1087 | { t sortify * } 1088 | if$ 1089 | nameptr #1 + 'nameptr := 1090 | namesleft #1 - 'namesleft := 1091 | } 1092 | while$ 1093 | } 1094 | 1095 | FUNCTION {sort.format.title} 1096 | { 't := 1097 | "A " #2 1098 | "An " #3 1099 | "The " #4 t chop.word 1100 | chop.word 1101 | chop.word 1102 | sortify 1103 | #1 global.max$ substring$ 1104 | } 1105 | 1106 | FUNCTION {author.sort} 1107 | { author empty$ 1108 | { key empty$ 1109 | { "to sort, need author or key in " cite$ * warning$ 1110 | "" 1111 | } 1112 | { key sortify } 1113 | if$ 1114 | } 1115 | { author sort.format.names } 1116 | if$ 1117 | } 1118 | 1119 | FUNCTION {author.editor.sort} 1120 | { author empty$ 1121 | { editor empty$ 1122 | { key empty$ 1123 | { "to sort, need author, editor, or key in " cite$ * warning$ 1124 | "" 1125 | } 1126 | { key sortify } 1127 | if$ 1128 | } 1129 | { editor sort.format.names } 1130 | if$ 1131 | } 1132 | { author sort.format.names } 1133 | if$ 1134 | } 1135 | 1136 | FUNCTION {author.organization.sort} 1137 | { author empty$ 1138 | { organization empty$ 1139 | { key empty$ 1140 | { "to sort, need author, organization, or key in " cite$ * warning$ 1141 | "" 1142 | } 1143 | { key sortify } 1144 | if$ 1145 | } 1146 | { "The " #4 organization chop.word sortify } 1147 | if$ 1148 | } 1149 | { author sort.format.names } 1150 | if$ 1151 | } 1152 | 1153 | FUNCTION {editor.organization.sort} 1154 | { editor empty$ 1155 | { organization empty$ 1156 | { key empty$ 1157 | { "to sort, need editor, organization, or key in " cite$ * warning$ 1158 | "" 1159 | } 1160 | { key sortify } 1161 | if$ 1162 | } 1163 | { "The " #4 organization chop.word sortify } 1164 | if$ 1165 | } 1166 | { editor sort.format.names } 1167 | if$ 1168 | } 1169 | 1170 | FUNCTION {presort} 1171 | { type$ "book" = 1172 | type$ "inbook" = 1173 | or 1174 | 'author.editor.sort 1175 | { type$ "proceedings" = 1176 | 'editor.organization.sort 1177 | { type$ "manual" = 1178 | 'author.organization.sort 1179 | 'author.sort 1180 | if$ 1181 | } 1182 | if$ 1183 | } 1184 | if$ 1185 | " " 1186 | * 1187 | year field.or.null sortify 1188 | * 1189 | " " 1190 | * 1191 | title field.or.null 1192 | sort.format.title 1193 | * 1194 | #1 entry.max$ substring$ 1195 | 'sort.key$ := 1196 | } 1197 | 1198 | ITERATE {presort} 1199 | 1200 | SORT 1201 | 1202 | %% End of addition for sorting 1203 | 1204 | STRINGS { longest.label } 1205 | 1206 | INTEGERS { number.label longest.label.width } 1207 | 1208 | FUNCTION {initialize.longest.label} 1209 | { "" 'longest.label := 1210 | #1 'number.label := 1211 | #0 'longest.label.width := 1212 | } 1213 | 1214 | FUNCTION {longest.label.pass} 1215 | { number.label int.to.str$ 'label := 1216 | number.label #1 + 'number.label := 1217 | label width$ longest.label.width > 1218 | { label 'longest.label := 1219 | label width$ 'longest.label.width := 1220 | } 1221 | 'skip$ 1222 | if$ 1223 | } 1224 | 1225 | EXECUTE {initialize.longest.label} 1226 | 1227 | ITERATE {longest.label.pass} 1228 | 1229 | FUNCTION {begin.bib} 1230 | { preamble$ empty$ 1231 | 'skip$ 1232 | { preamble$ write$ newline$ } 1233 | if$ 1234 | "\begin{thebibliography}{" longest.label * "}" * write$ newline$ 1235 | } 1236 | 1237 | EXECUTE {begin.bib} 1238 | 1239 | EXECUTE {init.state.consts} 1240 | 1241 | ITERATE {call.type$} 1242 | 1243 | FUNCTION {end.bib} 1244 | { newline$ 1245 | "\end{thebibliography}" write$ newline$ 1246 | } 1247 | 1248 | EXECUTE {end.bib} 1249 | 1250 | 1251 | 1252 | -------------------------------------------------------------------------------- /Paper/Proceeding-llncs/style/splncs03.bst: -------------------------------------------------------------------------------- 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 | 1520 | -------------------------------------------------------------------------------- /Paper/Proceeding-llncs/style/llncs.cls: -------------------------------------------------------------------------------- 1 | % LLNCS DOCUMENT CLASS -- version 2.17 (12-Jul-2010) 2 | % Springer Verlag LaTeX2e support for Lecture Notes in Computer Science 3 | % 4 | %% 5 | %% \CharacterTable 6 | %% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z 7 | %% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z 8 | %% Digits \0\1\2\3\4\5\6\7\8\9 9 | %% Exclamation \! Double quote \" Hash (number) \# 10 | %% Dollar \$ Percent \% Ampersand \& 11 | %% Acute accent \' Left paren \( Right paren \) 12 | %% Asterisk \* Plus \+ Comma \, 13 | %% Minus \- Point \. Solidus \/ 14 | %% Colon \: Semicolon \; Less than \< 15 | %% Equals \= Greater than \> Question mark \? 16 | %% Commercial at \@ Left bracket \[ Backslash \\ 17 | %% Right bracket \] Circumflex \^ Underscore \_ 18 | %% Grave accent \` Left brace \{ Vertical bar \| 19 | %% Right brace \} Tilde \~} 20 | %% 21 | \NeedsTeXFormat{LaTeX2e}[1995/12/01] 22 | \ProvidesClass{llncs}[2010/07/12 v2.17 23 | ^^J LaTeX document class for Lecture Notes in Computer Science] 24 | % Options 25 | \let\if@envcntreset\iffalse 26 | \DeclareOption{envcountreset}{\let\if@envcntreset\iftrue} 27 | \DeclareOption{citeauthoryear}{\let\citeauthoryear=Y} 28 | \DeclareOption{oribibl}{\let\oribibl=Y} 29 | \let\if@custvec\iftrue 30 | \DeclareOption{orivec}{\let\if@custvec\iffalse} 31 | \let\if@envcntsame\iffalse 32 | \DeclareOption{envcountsame}{\let\if@envcntsame\iftrue} 33 | \let\if@envcntsect\iffalse 34 | \DeclareOption{envcountsect}{\let\if@envcntsect\iftrue} 35 | \let\if@runhead\iffalse 36 | \DeclareOption{runningheads}{\let\if@runhead\iftrue} 37 | 38 | \let\if@openright\iftrue 39 | \let\if@openbib\iffalse 40 | \DeclareOption{openbib}{\let\if@openbib\iftrue} 41 | 42 | % languages 43 | \let\switcht@@therlang\relax 44 | \def\ds@deutsch{\def\switcht@@therlang{\switcht@deutsch}} 45 | \def\ds@francais{\def\switcht@@therlang{\switcht@francais}} 46 | 47 | \DeclareOption*{\PassOptionsToClass{\CurrentOption}{article}} 48 | 49 | \ProcessOptions 50 | 51 | \LoadClass[twoside]{article} 52 | \RequirePackage{multicol} % needed for the list of participants, index 53 | \RequirePackage{aliascnt} 54 | 55 | \setlength{\textwidth}{12.2cm} 56 | \setlength{\textheight}{19.3cm} 57 | \renewcommand\@pnumwidth{2em} 58 | \renewcommand\@tocrmarg{3.5em} 59 | % 60 | \def\@dottedtocline#1#2#3#4#5{% 61 | \ifnum #1>\c@tocdepth \else 62 | \vskip \z@ \@plus.2\p@ 63 | {\leftskip #2\relax \rightskip \@tocrmarg \advance\rightskip by 0pt plus 2cm 64 | \parfillskip -\rightskip \pretolerance=10000 65 | \parindent #2\relax\@afterindenttrue 66 | \interlinepenalty\@M 67 | \leavevmode 68 | \@tempdima #3\relax 69 | \advance\leftskip \@tempdima \null\nobreak\hskip -\leftskip 70 | {#4}\nobreak 71 | \leaders\hbox{$\m@th 72 | \mkern \@dotsep mu\hbox{.}\mkern \@dotsep 73 | mu$}\hfill 74 | \nobreak 75 | \hb@xt@\@pnumwidth{\hfil\normalfont \normalcolor #5}% 76 | \par}% 77 | \fi} 78 | % 79 | \def\switcht@albion{% 80 | \def\abstractname{Abstract.} 81 | \def\ackname{Acknowledgement.} 82 | \def\andname{and} 83 | \def\lastandname{\unskip, and} 84 | \def\appendixname{Appendix} 85 | \def\chaptername{Chapter} 86 | \def\claimname{Claim} 87 | \def\conjecturename{Conjecture} 88 | \def\contentsname{Table of Contents} 89 | \def\corollaryname{Corollary} 90 | \def\definitionname{Definition} 91 | \def\examplename{Example} 92 | \def\exercisename{Exercise} 93 | \def\figurename{Fig.} 94 | \def\keywordname{{\bf Keywords:}} 95 | \def\indexname{Index} 96 | \def\lemmaname{Lemma} 97 | \def\contriblistname{List of Contributors} 98 | \def\listfigurename{List of Figures} 99 | \def\listtablename{List of Tables} 100 | \def\mailname{{\it Correspondence to\/}:} 101 | \def\noteaddname{Note added in proof} 102 | \def\notename{Note} 103 | \def\partname{Part} 104 | \def\problemname{Problem} 105 | \def\proofname{Proof} 106 | \def\propertyname{Property} 107 | \def\propositionname{Proposition} 108 | \def\questionname{Question} 109 | \def\remarkname{Remark} 110 | \def\seename{see} 111 | \def\solutionname{Solution} 112 | \def\subclassname{{\it Subject Classifications\/}:} 113 | \def\tablename{Table} 114 | \def\theoremname{Theorem}} 115 | \switcht@albion 116 | % Names of theorem like environments are already defined 117 | % but must be translated if another language is chosen 118 | % 119 | % French section 120 | \def\switcht@francais{%\typeout{On parle francais.}% 121 | \def\abstractname{R\'esum\'e.}% 122 | \def\ackname{Remerciements.}% 123 | \def\andname{et}% 124 | \def\lastandname{ et}% 125 | \def\appendixname{Appendice} 126 | \def\chaptername{Chapitre}% 127 | \def\claimname{Pr\'etention}% 128 | \def\conjecturename{Hypoth\`ese}% 129 | \def\contentsname{Table des mati\`eres}% 130 | \def\corollaryname{Corollaire}% 131 | \def\definitionname{D\'efinition}% 132 | \def\examplename{Exemple}% 133 | \def\exercisename{Exercice}% 134 | \def\figurename{Fig.}% 135 | \def\keywordname{{\bf Mots-cl\'e:}} 136 | \def\indexname{Index} 137 | \def\lemmaname{Lemme}% 138 | \def\contriblistname{Liste des contributeurs} 139 | \def\listfigurename{Liste des figures}% 140 | \def\listtablename{Liste des tables}% 141 | \def\mailname{{\it Correspondence to\/}:} 142 | \def\noteaddname{Note ajout\'ee \`a l'\'epreuve}% 143 | \def\notename{Remarque}% 144 | \def\partname{Partie}% 145 | \def\problemname{Probl\`eme}% 146 | \def\proofname{Preuve}% 147 | \def\propertyname{Caract\'eristique}% 148 | %\def\propositionname{Proposition}% 149 | \def\questionname{Question}% 150 | \def\remarkname{Remarque}% 151 | \def\seename{voir} 152 | \def\solutionname{Solution}% 153 | \def\subclassname{{\it Subject Classifications\/}:} 154 | \def\tablename{Tableau}% 155 | \def\theoremname{Th\'eor\`eme}% 156 | } 157 | % 158 | % German section 159 | \def\switcht@deutsch{%\typeout{Man spricht deutsch.}% 160 | \def\abstractname{Zusammenfassung.}% 161 | \def\ackname{Danksagung.}% 162 | \def\andname{und}% 163 | \def\lastandname{ und}% 164 | \def\appendixname{Anhang}% 165 | \def\chaptername{Kapitel}% 166 | \def\claimname{Behauptung}% 167 | \def\conjecturename{Hypothese}% 168 | \def\contentsname{Inhaltsverzeichnis}% 169 | \def\corollaryname{Korollar}% 170 | %\def\definitionname{Definition}% 171 | \def\examplename{Beispiel}% 172 | \def\exercisename{\"Ubung}% 173 | \def\figurename{Abb.}% 174 | \def\keywordname{{\bf Schl\"usselw\"orter:}} 175 | \def\indexname{Index} 176 | %\def\lemmaname{Lemma}% 177 | \def\contriblistname{Mitarbeiter} 178 | \def\listfigurename{Abbildungsverzeichnis}% 179 | \def\listtablename{Tabellenverzeichnis}% 180 | \def\mailname{{\it Correspondence to\/}:} 181 | \def\noteaddname{Nachtrag}% 182 | \def\notename{Anmerkung}% 183 | \def\partname{Teil}% 184 | %\def\problemname{Problem}% 185 | \def\proofname{Beweis}% 186 | \def\propertyname{Eigenschaft}% 187 | %\def\propositionname{Proposition}% 188 | \def\questionname{Frage}% 189 | \def\remarkname{Anmerkung}% 190 | \def\seename{siehe} 191 | \def\solutionname{L\"osung}% 192 | \def\subclassname{{\it Subject Classifications\/}:} 193 | \def\tablename{Tabelle}% 194 | %\def\theoremname{Theorem}% 195 | } 196 | 197 | % Ragged bottom for the actual page 198 | \def\thisbottomragged{\def\@textbottom{\vskip\z@ plus.0001fil 199 | \global\let\@textbottom\relax}} 200 | 201 | \renewcommand\small{% 202 | \@setfontsize\small\@ixpt{11}% 203 | \abovedisplayskip 8.5\p@ \@plus3\p@ \@minus4\p@ 204 | \abovedisplayshortskip \z@ \@plus2\p@ 205 | \belowdisplayshortskip 4\p@ \@plus2\p@ \@minus2\p@ 206 | \def\@listi{\leftmargin\leftmargini 207 | \parsep 0\p@ \@plus1\p@ \@minus\p@ 208 | \topsep 8\p@ \@plus2\p@ \@minus4\p@ 209 | \itemsep0\p@}% 210 | \belowdisplayskip \abovedisplayskip 211 | } 212 | 213 | \frenchspacing 214 | \widowpenalty=10000 215 | \clubpenalty=10000 216 | 217 | \setlength\oddsidemargin {63\p@} 218 | \setlength\evensidemargin {63\p@} 219 | \setlength\marginparwidth {90\p@} 220 | 221 | \setlength\headsep {16\p@} 222 | 223 | \setlength\footnotesep{7.7\p@} 224 | \setlength\textfloatsep{8mm\@plus 2\p@ \@minus 4\p@} 225 | \setlength\intextsep {8mm\@plus 2\p@ \@minus 2\p@} 226 | 227 | \setcounter{secnumdepth}{2} 228 | 229 | \newcounter {chapter} 230 | \renewcommand\thechapter {\@arabic\c@chapter} 231 | 232 | \newif\if@mainmatter \@mainmattertrue 233 | \newcommand\frontmatter{\cleardoublepage 234 | \@mainmatterfalse\pagenumbering{Roman}} 235 | \newcommand\mainmatter{\cleardoublepage 236 | \@mainmattertrue\pagenumbering{arabic}} 237 | \newcommand\backmatter{\if@openright\cleardoublepage\else\clearpage\fi 238 | \@mainmatterfalse} 239 | 240 | \renewcommand\part{\cleardoublepage 241 | \thispagestyle{empty}% 242 | \if@twocolumn 243 | \onecolumn 244 | \@tempswatrue 245 | \else 246 | \@tempswafalse 247 | \fi 248 | \null\vfil 249 | \secdef\@part\@spart} 250 | 251 | \def\@part[#1]#2{% 252 | \ifnum \c@secnumdepth >-2\relax 253 | \refstepcounter{part}% 254 | \addcontentsline{toc}{part}{\thepart\hspace{1em}#1}% 255 | \else 256 | \addcontentsline{toc}{part}{#1}% 257 | \fi 258 | \markboth{}{}% 259 | {\centering 260 | \interlinepenalty \@M 261 | \normalfont 262 | \ifnum \c@secnumdepth >-2\relax 263 | \huge\bfseries \partname~\thepart 264 | \par 265 | \vskip 20\p@ 266 | \fi 267 | \Huge \bfseries #2\par}% 268 | \@endpart} 269 | \def\@spart#1{% 270 | {\centering 271 | \interlinepenalty \@M 272 | \normalfont 273 | \Huge \bfseries #1\par}% 274 | \@endpart} 275 | \def\@endpart{\vfil\newpage 276 | \if@twoside 277 | \null 278 | \thispagestyle{empty}% 279 | \newpage 280 | \fi 281 | \if@tempswa 282 | \twocolumn 283 | \fi} 284 | 285 | \newcommand\chapter{\clearpage 286 | \thispagestyle{empty}% 287 | \global\@topnum\z@ 288 | \@afterindentfalse 289 | \secdef\@chapter\@schapter} 290 | \def\@chapter[#1]#2{\ifnum \c@secnumdepth >\m@ne 291 | \if@mainmatter 292 | \refstepcounter{chapter}% 293 | \typeout{\@chapapp\space\thechapter.}% 294 | \addcontentsline{toc}{chapter}% 295 | {\protect\numberline{\thechapter}#1}% 296 | \else 297 | \addcontentsline{toc}{chapter}{#1}% 298 | \fi 299 | \else 300 | \addcontentsline{toc}{chapter}{#1}% 301 | \fi 302 | \chaptermark{#1}% 303 | \addtocontents{lof}{\protect\addvspace{10\p@}}% 304 | \addtocontents{lot}{\protect\addvspace{10\p@}}% 305 | \if@twocolumn 306 | \@topnewpage[\@makechapterhead{#2}]% 307 | \else 308 | \@makechapterhead{#2}% 309 | \@afterheading 310 | \fi} 311 | \def\@makechapterhead#1{% 312 | % \vspace*{50\p@}% 313 | {\centering 314 | \ifnum \c@secnumdepth >\m@ne 315 | \if@mainmatter 316 | \large\bfseries \@chapapp{} \thechapter 317 | \par\nobreak 318 | \vskip 20\p@ 319 | \fi 320 | \fi 321 | \interlinepenalty\@M 322 | \Large \bfseries #1\par\nobreak 323 | \vskip 40\p@ 324 | }} 325 | \def\@schapter#1{\if@twocolumn 326 | \@topnewpage[\@makeschapterhead{#1}]% 327 | \else 328 | \@makeschapterhead{#1}% 329 | \@afterheading 330 | \fi} 331 | \def\@makeschapterhead#1{% 332 | % \vspace*{50\p@}% 333 | {\centering 334 | \normalfont 335 | \interlinepenalty\@M 336 | \Large \bfseries #1\par\nobreak 337 | \vskip 40\p@ 338 | }} 339 | 340 | \renewcommand\section{\@startsection{section}{1}{\z@}% 341 | {-18\p@ \@plus -4\p@ \@minus -4\p@}% 342 | {12\p@ \@plus 4\p@ \@minus 4\p@}% 343 | {\normalfont\large\bfseries\boldmath 344 | \rightskip=\z@ \@plus 8em\pretolerance=10000 }} 345 | \renewcommand\subsection{\@startsection{subsection}{2}{\z@}% 346 | {-18\p@ \@plus -4\p@ \@minus -4\p@}% 347 | {8\p@ \@plus 4\p@ \@minus 4\p@}% 348 | {\normalfont\normalsize\bfseries\boldmath 349 | \rightskip=\z@ \@plus 8em\pretolerance=10000 }} 350 | \renewcommand\subsubsection{\@startsection{subsubsection}{3}{\z@}% 351 | {-18\p@ \@plus -4\p@ \@minus -4\p@}% 352 | {-0.5em \@plus -0.22em \@minus -0.1em}% 353 | {\normalfont\normalsize\bfseries\boldmath}} 354 | \renewcommand\paragraph{\@startsection{paragraph}{4}{\z@}% 355 | {-12\p@ \@plus -4\p@ \@minus -4\p@}% 356 | {-0.5em \@plus -0.22em \@minus -0.1em}% 357 | {\normalfont\normalsize\itshape}} 358 | \renewcommand\subparagraph[1]{\typeout{LLNCS warning: You should not use 359 | \string\subparagraph\space with this class}\vskip0.5cm 360 | You should not use \verb|\subparagraph| with this class.\vskip0.5cm} 361 | 362 | \DeclareMathSymbol{\Gamma}{\mathalpha}{letters}{"00} 363 | \DeclareMathSymbol{\Delta}{\mathalpha}{letters}{"01} 364 | \DeclareMathSymbol{\Theta}{\mathalpha}{letters}{"02} 365 | \DeclareMathSymbol{\Lambda}{\mathalpha}{letters}{"03} 366 | \DeclareMathSymbol{\Xi}{\mathalpha}{letters}{"04} 367 | \DeclareMathSymbol{\Pi}{\mathalpha}{letters}{"05} 368 | \DeclareMathSymbol{\Sigma}{\mathalpha}{letters}{"06} 369 | \DeclareMathSymbol{\Upsilon}{\mathalpha}{letters}{"07} 370 | \DeclareMathSymbol{\Phi}{\mathalpha}{letters}{"08} 371 | \DeclareMathSymbol{\Psi}{\mathalpha}{letters}{"09} 372 | \DeclareMathSymbol{\Omega}{\mathalpha}{letters}{"0A} 373 | 374 | \let\footnotesize\small 375 | 376 | \if@custvec 377 | \def\vec#1{\mathchoice{\mbox{\boldmath$\displaystyle#1$}} 378 | {\mbox{\boldmath$\textstyle#1$}} 379 | {\mbox{\boldmath$\scriptstyle#1$}} 380 | {\mbox{\boldmath$\scriptscriptstyle#1$}}} 381 | \fi 382 | 383 | \def\squareforqed{\hbox{\rlap{$\sqcap$}$\sqcup$}} 384 | \def\qed{\ifmmode\squareforqed\else{\unskip\nobreak\hfil 385 | \penalty50\hskip1em\null\nobreak\hfil\squareforqed 386 | \parfillskip=0pt\finalhyphendemerits=0\endgraf}\fi} 387 | 388 | \def\getsto{\mathrel{\mathchoice {\vcenter{\offinterlineskip 389 | \halign{\hfil 390 | $\displaystyle##$\hfil\cr\gets\cr\to\cr}}} 391 | {\vcenter{\offinterlineskip\halign{\hfil$\textstyle##$\hfil\cr\gets 392 | \cr\to\cr}}} 393 | {\vcenter{\offinterlineskip\halign{\hfil$\scriptstyle##$\hfil\cr\gets 394 | \cr\to\cr}}} 395 | {\vcenter{\offinterlineskip\halign{\hfil$\scriptscriptstyle##$\hfil\cr 396 | \gets\cr\to\cr}}}}} 397 | \def\lid{\mathrel{\mathchoice {\vcenter{\offinterlineskip\halign{\hfil 398 | $\displaystyle##$\hfil\cr<\cr\noalign{\vskip1.2pt}=\cr}}} 399 | {\vcenter{\offinterlineskip\halign{\hfil$\textstyle##$\hfil\cr<\cr 400 | \noalign{\vskip1.2pt}=\cr}}} 401 | {\vcenter{\offinterlineskip\halign{\hfil$\scriptstyle##$\hfil\cr<\cr 402 | \noalign{\vskip1pt}=\cr}}} 403 | {\vcenter{\offinterlineskip\halign{\hfil$\scriptscriptstyle##$\hfil\cr 404 | <\cr 405 | \noalign{\vskip0.9pt}=\cr}}}}} 406 | \def\gid{\mathrel{\mathchoice {\vcenter{\offinterlineskip\halign{\hfil 407 | $\displaystyle##$\hfil\cr>\cr\noalign{\vskip1.2pt}=\cr}}} 408 | {\vcenter{\offinterlineskip\halign{\hfil$\textstyle##$\hfil\cr>\cr 409 | \noalign{\vskip1.2pt}=\cr}}} 410 | {\vcenter{\offinterlineskip\halign{\hfil$\scriptstyle##$\hfil\cr>\cr 411 | \noalign{\vskip1pt}=\cr}}} 412 | {\vcenter{\offinterlineskip\halign{\hfil$\scriptscriptstyle##$\hfil\cr 413 | >\cr 414 | \noalign{\vskip0.9pt}=\cr}}}}} 415 | \def\grole{\mathrel{\mathchoice {\vcenter{\offinterlineskip 416 | \halign{\hfil 417 | $\displaystyle##$\hfil\cr>\cr\noalign{\vskip-1pt}<\cr}}} 418 | {\vcenter{\offinterlineskip\halign{\hfil$\textstyle##$\hfil\cr 419 | >\cr\noalign{\vskip-1pt}<\cr}}} 420 | {\vcenter{\offinterlineskip\halign{\hfil$\scriptstyle##$\hfil\cr 421 | >\cr\noalign{\vskip-0.8pt}<\cr}}} 422 | {\vcenter{\offinterlineskip\halign{\hfil$\scriptscriptstyle##$\hfil\cr 423 | >\cr\noalign{\vskip-0.3pt}<\cr}}}}} 424 | \def\bbbr{{\rm I\!R}} %reelle Zahlen 425 | \def\bbbm{{\rm I\!M}} 426 | \def\bbbn{{\rm I\!N}} %natuerliche Zahlen 427 | \def\bbbf{{\rm I\!F}} 428 | \def\bbbh{{\rm I\!H}} 429 | \def\bbbk{{\rm I\!K}} 430 | \def\bbbp{{\rm I\!P}} 431 | \def\bbbone{{\mathchoice {\rm 1\mskip-4mu l} {\rm 1\mskip-4mu l} 432 | {\rm 1\mskip-4.5mu l} {\rm 1\mskip-5mu l}}} 433 | \def\bbbc{{\mathchoice {\setbox0=\hbox{$\displaystyle\rm C$}\hbox{\hbox 434 | to0pt{\kern0.4\wd0\vrule height0.9\ht0\hss}\box0}} 435 | {\setbox0=\hbox{$\textstyle\rm C$}\hbox{\hbox 436 | to0pt{\kern0.4\wd0\vrule height0.9\ht0\hss}\box0}} 437 | {\setbox0=\hbox{$\scriptstyle\rm C$}\hbox{\hbox 438 | to0pt{\kern0.4\wd0\vrule height0.9\ht0\hss}\box0}} 439 | {\setbox0=\hbox{$\scriptscriptstyle\rm C$}\hbox{\hbox 440 | to0pt{\kern0.4\wd0\vrule height0.9\ht0\hss}\box0}}}} 441 | \def\bbbq{{\mathchoice {\setbox0=\hbox{$\displaystyle\rm 442 | Q$}\hbox{\raise 443 | 0.15\ht0\hbox to0pt{\kern0.4\wd0\vrule height0.8\ht0\hss}\box0}} 444 | {\setbox0=\hbox{$\textstyle\rm Q$}\hbox{\raise 445 | 0.15\ht0\hbox to0pt{\kern0.4\wd0\vrule height0.8\ht0\hss}\box0}} 446 | {\setbox0=\hbox{$\scriptstyle\rm Q$}\hbox{\raise 447 | 0.15\ht0\hbox to0pt{\kern0.4\wd0\vrule height0.7\ht0\hss}\box0}} 448 | {\setbox0=\hbox{$\scriptscriptstyle\rm Q$}\hbox{\raise 449 | 0.15\ht0\hbox to0pt{\kern0.4\wd0\vrule height0.7\ht0\hss}\box0}}}} 450 | \def\bbbt{{\mathchoice {\setbox0=\hbox{$\displaystyle\rm 451 | T$}\hbox{\hbox to0pt{\kern0.3\wd0\vrule height0.9\ht0\hss}\box0}} 452 | {\setbox0=\hbox{$\textstyle\rm T$}\hbox{\hbox 453 | to0pt{\kern0.3\wd0\vrule height0.9\ht0\hss}\box0}} 454 | {\setbox0=\hbox{$\scriptstyle\rm T$}\hbox{\hbox 455 | to0pt{\kern0.3\wd0\vrule height0.9\ht0\hss}\box0}} 456 | {\setbox0=\hbox{$\scriptscriptstyle\rm T$}\hbox{\hbox 457 | to0pt{\kern0.3\wd0\vrule height0.9\ht0\hss}\box0}}}} 458 | \def\bbbs{{\mathchoice 459 | {\setbox0=\hbox{$\displaystyle \rm S$}\hbox{\raise0.5\ht0\hbox 460 | to0pt{\kern0.35\wd0\vrule height0.45\ht0\hss}\hbox 461 | to0pt{\kern0.55\wd0\vrule height0.5\ht0\hss}\box0}} 462 | {\setbox0=\hbox{$\textstyle \rm S$}\hbox{\raise0.5\ht0\hbox 463 | to0pt{\kern0.35\wd0\vrule height0.45\ht0\hss}\hbox 464 | to0pt{\kern0.55\wd0\vrule height0.5\ht0\hss}\box0}} 465 | {\setbox0=\hbox{$\scriptstyle \rm S$}\hbox{\raise0.5\ht0\hbox 466 | to0pt{\kern0.35\wd0\vrule height0.45\ht0\hss}\raise0.05\ht0\hbox 467 | to0pt{\kern0.5\wd0\vrule height0.45\ht0\hss}\box0}} 468 | {\setbox0=\hbox{$\scriptscriptstyle\rm S$}\hbox{\raise0.5\ht0\hbox 469 | to0pt{\kern0.4\wd0\vrule height0.45\ht0\hss}\raise0.05\ht0\hbox 470 | to0pt{\kern0.55\wd0\vrule height0.45\ht0\hss}\box0}}}} 471 | \def\bbbz{{\mathchoice {\hbox{$\mathsf\textstyle Z\kern-0.4em Z$}} 472 | {\hbox{$\mathsf\textstyle Z\kern-0.4em Z$}} 473 | {\hbox{$\mathsf\scriptstyle Z\kern-0.3em Z$}} 474 | {\hbox{$\mathsf\scriptscriptstyle Z\kern-0.2em Z$}}}} 475 | 476 | \let\ts\, 477 | 478 | \setlength\leftmargini {17\p@} 479 | \setlength\leftmargin {\leftmargini} 480 | \setlength\leftmarginii {\leftmargini} 481 | \setlength\leftmarginiii {\leftmargini} 482 | \setlength\leftmarginiv {\leftmargini} 483 | \setlength \labelsep {.5em} 484 | \setlength \labelwidth{\leftmargini} 485 | \addtolength\labelwidth{-\labelsep} 486 | 487 | \def\@listI{\leftmargin\leftmargini 488 | \parsep 0\p@ \@plus1\p@ \@minus\p@ 489 | \topsep 8\p@ \@plus2\p@ \@minus4\p@ 490 | \itemsep0\p@} 491 | \let\@listi\@listI 492 | \@listi 493 | \def\@listii {\leftmargin\leftmarginii 494 | \labelwidth\leftmarginii 495 | \advance\labelwidth-\labelsep 496 | \topsep 0\p@ \@plus2\p@ \@minus\p@} 497 | \def\@listiii{\leftmargin\leftmarginiii 498 | \labelwidth\leftmarginiii 499 | \advance\labelwidth-\labelsep 500 | \topsep 0\p@ \@plus\p@\@minus\p@ 501 | \parsep \z@ 502 | \partopsep \p@ \@plus\z@ \@minus\p@} 503 | 504 | \renewcommand\labelitemi{\normalfont\bfseries --} 505 | \renewcommand\labelitemii{$\m@th\bullet$} 506 | 507 | \setlength\arraycolsep{1.4\p@} 508 | \setlength\tabcolsep{1.4\p@} 509 | 510 | \def\tableofcontents{\chapter*{\contentsname\@mkboth{{\contentsname}}% 511 | {{\contentsname}}} 512 | \def\authcount##1{\setcounter{auco}{##1}\setcounter{@auth}{1}} 513 | \def\lastand{\ifnum\value{auco}=2\relax 514 | \unskip{} \andname\ 515 | \else 516 | \unskip \lastandname\ 517 | \fi}% 518 | \def\and{\stepcounter{@auth}\relax 519 | \ifnum\value{@auth}=\value{auco}% 520 | \lastand 521 | \else 522 | \unskip, 523 | \fi}% 524 | \@starttoc{toc}\if@restonecol\twocolumn\fi} 525 | 526 | \def\l@part#1#2{\addpenalty{\@secpenalty}% 527 | \addvspace{2em plus\p@}% % space above part line 528 | \begingroup 529 | \parindent \z@ 530 | \rightskip \z@ plus 5em 531 | \hrule\vskip5pt 532 | \large % same size as for a contribution heading 533 | \bfseries\boldmath % set line in boldface 534 | \leavevmode % TeX command to enter horizontal mode. 535 | #1\par 536 | \vskip5pt 537 | \hrule 538 | \vskip1pt 539 | \nobreak % Never break after part entry 540 | \endgroup} 541 | 542 | \def\@dotsep{2} 543 | 544 | \let\phantomsection=\relax 545 | 546 | \def\hyperhrefextend{\ifx\hyper@anchor\@undefined\else 547 | {}\fi} 548 | 549 | \def\addnumcontentsmark#1#2#3{% 550 | \addtocontents{#1}{\protect\contentsline{#2}{\protect\numberline 551 | {\thechapter}#3}{\thepage}\hyperhrefextend}}% 552 | \def\addcontentsmark#1#2#3{% 553 | \addtocontents{#1}{\protect\contentsline{#2}{#3}{\thepage}\hyperhrefextend}}% 554 | \def\addcontentsmarkwop#1#2#3{% 555 | \addtocontents{#1}{\protect\contentsline{#2}{#3}{0}\hyperhrefextend}}% 556 | 557 | \def\@adcmk[#1]{\ifcase #1 \or 558 | \def\@gtempa{\addnumcontentsmark}% 559 | \or \def\@gtempa{\addcontentsmark}% 560 | \or \def\@gtempa{\addcontentsmarkwop}% 561 | \fi\@gtempa{toc}{chapter}% 562 | } 563 | \def\addtocmark{% 564 | \phantomsection 565 | \@ifnextchar[{\@adcmk}{\@adcmk[3]}% 566 | } 567 | 568 | \def\l@chapter#1#2{\addpenalty{-\@highpenalty} 569 | \vskip 1.0em plus 1pt \@tempdima 1.5em \begingroup 570 | \parindent \z@ \rightskip \@tocrmarg 571 | \advance\rightskip by 0pt plus 2cm 572 | \parfillskip -\rightskip \pretolerance=10000 573 | \leavevmode \advance\leftskip\@tempdima \hskip -\leftskip 574 | {\large\bfseries\boldmath#1}\ifx0#2\hfil\null 575 | \else 576 | \nobreak 577 | \leaders\hbox{$\m@th \mkern \@dotsep mu.\mkern 578 | \@dotsep mu$}\hfill 579 | \nobreak\hbox to\@pnumwidth{\hss #2}% 580 | \fi\par 581 | \penalty\@highpenalty \endgroup} 582 | 583 | \def\l@title#1#2{\addpenalty{-\@highpenalty} 584 | \addvspace{8pt plus 1pt} 585 | \@tempdima \z@ 586 | \begingroup 587 | \parindent \z@ \rightskip \@tocrmarg 588 | \advance\rightskip by 0pt plus 2cm 589 | \parfillskip -\rightskip \pretolerance=10000 590 | \leavevmode \advance\leftskip\@tempdima \hskip -\leftskip 591 | #1\nobreak 592 | \leaders\hbox{$\m@th \mkern \@dotsep mu.\mkern 593 | \@dotsep mu$}\hfill 594 | \nobreak\hbox to\@pnumwidth{\hss #2}\par 595 | \penalty\@highpenalty \endgroup} 596 | 597 | \def\l@author#1#2{\addpenalty{\@highpenalty} 598 | \@tempdima=15\p@ %\z@ 599 | \begingroup 600 | \parindent \z@ \rightskip \@tocrmarg 601 | \advance\rightskip by 0pt plus 2cm 602 | \pretolerance=10000 603 | \leavevmode \advance\leftskip\@tempdima %\hskip -\leftskip 604 | \textit{#1}\par 605 | \penalty\@highpenalty \endgroup} 606 | 607 | \setcounter{tocdepth}{0} 608 | \newdimen\tocchpnum 609 | \newdimen\tocsecnum 610 | \newdimen\tocsectotal 611 | \newdimen\tocsubsecnum 612 | \newdimen\tocsubsectotal 613 | \newdimen\tocsubsubsecnum 614 | \newdimen\tocsubsubsectotal 615 | \newdimen\tocparanum 616 | \newdimen\tocparatotal 617 | \newdimen\tocsubparanum 618 | \tocchpnum=\z@ % no chapter numbers 619 | \tocsecnum=15\p@ % section 88. plus 2.222pt 620 | \tocsubsecnum=23\p@ % subsection 88.8 plus 2.222pt 621 | \tocsubsubsecnum=27\p@ % subsubsection 88.8.8 plus 1.444pt 622 | \tocparanum=35\p@ % paragraph 88.8.8.8 plus 1.666pt 623 | \tocsubparanum=43\p@ % subparagraph 88.8.8.8.8 plus 1.888pt 624 | \def\calctocindent{% 625 | \tocsectotal=\tocchpnum 626 | \advance\tocsectotal by\tocsecnum 627 | \tocsubsectotal=\tocsectotal 628 | \advance\tocsubsectotal by\tocsubsecnum 629 | \tocsubsubsectotal=\tocsubsectotal 630 | \advance\tocsubsubsectotal by\tocsubsubsecnum 631 | \tocparatotal=\tocsubsubsectotal 632 | \advance\tocparatotal by\tocparanum} 633 | \calctocindent 634 | 635 | \def\l@section{\@dottedtocline{1}{\tocchpnum}{\tocsecnum}} 636 | \def\l@subsection{\@dottedtocline{2}{\tocsectotal}{\tocsubsecnum}} 637 | \def\l@subsubsection{\@dottedtocline{3}{\tocsubsectotal}{\tocsubsubsecnum}} 638 | \def\l@paragraph{\@dottedtocline{4}{\tocsubsubsectotal}{\tocparanum}} 639 | \def\l@subparagraph{\@dottedtocline{5}{\tocparatotal}{\tocsubparanum}} 640 | 641 | \def\listoffigures{\@restonecolfalse\if@twocolumn\@restonecoltrue\onecolumn 642 | \fi\section*{\listfigurename\@mkboth{{\listfigurename}}{{\listfigurename}}} 643 | \@starttoc{lof}\if@restonecol\twocolumn\fi} 644 | \def\l@figure{\@dottedtocline{1}{0em}{1.5em}} 645 | 646 | \def\listoftables{\@restonecolfalse\if@twocolumn\@restonecoltrue\onecolumn 647 | \fi\section*{\listtablename\@mkboth{{\listtablename}}{{\listtablename}}} 648 | \@starttoc{lot}\if@restonecol\twocolumn\fi} 649 | \let\l@table\l@figure 650 | 651 | \renewcommand\listoffigures{% 652 | \section*{\listfigurename 653 | \@mkboth{\listfigurename}{\listfigurename}}% 654 | \@starttoc{lof}% 655 | } 656 | 657 | \renewcommand\listoftables{% 658 | \section*{\listtablename 659 | \@mkboth{\listtablename}{\listtablename}}% 660 | \@starttoc{lot}% 661 | } 662 | 663 | \ifx\oribibl\undefined 664 | \ifx\citeauthoryear\undefined 665 | \renewenvironment{thebibliography}[1] 666 | {\section*{\refname} 667 | \def\@biblabel##1{##1.} 668 | \small 669 | \list{\@biblabel{\@arabic\c@enumiv}}% 670 | {\settowidth\labelwidth{\@biblabel{#1}}% 671 | \leftmargin\labelwidth 672 | \advance\leftmargin\labelsep 673 | \if@openbib 674 | \advance\leftmargin\bibindent 675 | \itemindent -\bibindent 676 | \listparindent \itemindent 677 | \parsep \z@ 678 | \fi 679 | \usecounter{enumiv}% 680 | \let\p@enumiv\@empty 681 | \renewcommand\theenumiv{\@arabic\c@enumiv}}% 682 | \if@openbib 683 | \renewcommand\newblock{\par}% 684 | \else 685 | \renewcommand\newblock{\hskip .11em \@plus.33em \@minus.07em}% 686 | \fi 687 | \sloppy\clubpenalty4000\widowpenalty4000% 688 | \sfcode`\.=\@m} 689 | {\def\@noitemerr 690 | {\@latex@warning{Empty `thebibliography' environment}}% 691 | \endlist} 692 | \def\@lbibitem[#1]#2{\item[{[#1]}\hfill]\if@filesw 693 | {\let\protect\noexpand\immediate 694 | \write\@auxout{\string\bibcite{#2}{#1}}}\fi\ignorespaces} 695 | \newcount\@tempcntc 696 | \def\@citex[#1]#2{\if@filesw\immediate\write\@auxout{\string\citation{#2}}\fi 697 | \@tempcnta\z@\@tempcntb\m@ne\def\@citea{}\@cite{\@for\@citeb:=#2\do 698 | {\@ifundefined 699 | {b@\@citeb}{\@citeo\@tempcntb\m@ne\@citea\def\@citea{,}{\bfseries 700 | ?}\@warning 701 | {Citation `\@citeb' on page \thepage \space undefined}}% 702 | {\setbox\z@\hbox{\global\@tempcntc0\csname b@\@citeb\endcsname\relax}% 703 | \ifnum\@tempcntc=\z@ \@citeo\@tempcntb\m@ne 704 | \@citea\def\@citea{,}\hbox{\csname b@\@citeb\endcsname}% 705 | \else 706 | \advance\@tempcntb\@ne 707 | \ifnum\@tempcntb=\@tempcntc 708 | \else\advance\@tempcntb\m@ne\@citeo 709 | \@tempcnta\@tempcntc\@tempcntb\@tempcntc\fi\fi}}\@citeo}{#1}} 710 | \def\@citeo{\ifnum\@tempcnta>\@tempcntb\else 711 | \@citea\def\@citea{,\,\hskip\z@skip}% 712 | \ifnum\@tempcnta=\@tempcntb\the\@tempcnta\else 713 | {\advance\@tempcnta\@ne\ifnum\@tempcnta=\@tempcntb \else 714 | \def\@citea{--}\fi 715 | \advance\@tempcnta\m@ne\the\@tempcnta\@citea\the\@tempcntb}\fi\fi} 716 | \else 717 | \renewenvironment{thebibliography}[1] 718 | {\section*{\refname} 719 | \small 720 | \list{}% 721 | {\settowidth\labelwidth{}% 722 | \leftmargin\parindent 723 | \itemindent=-\parindent 724 | \labelsep=\z@ 725 | \if@openbib 726 | \advance\leftmargin\bibindent 727 | \itemindent -\bibindent 728 | \listparindent \itemindent 729 | \parsep \z@ 730 | \fi 731 | \usecounter{enumiv}% 732 | \let\p@enumiv\@empty 733 | \renewcommand\theenumiv{}}% 734 | \if@openbib 735 | \renewcommand\newblock{\par}% 736 | \else 737 | \renewcommand\newblock{\hskip .11em \@plus.33em \@minus.07em}% 738 | \fi 739 | \sloppy\clubpenalty4000\widowpenalty4000% 740 | \sfcode`\.=\@m} 741 | {\def\@noitemerr 742 | {\@latex@warning{Empty `thebibliography' environment}}% 743 | \endlist} 744 | \def\@cite#1{#1}% 745 | \def\@lbibitem[#1]#2{\item[]\if@filesw 746 | {\def\protect##1{\string ##1\space}\immediate 747 | \write\@auxout{\string\bibcite{#2}{#1}}}\fi\ignorespaces} 748 | \fi 749 | \else 750 | \@cons\@openbib@code{\noexpand\small} 751 | \fi 752 | 753 | \def\idxquad{\hskip 10\p@}% space that divides entry from number 754 | 755 | \def\@idxitem{\par\hangindent 10\p@} 756 | 757 | \def\subitem{\par\setbox0=\hbox{--\enspace}% second order 758 | \noindent\hangindent\wd0\box0}% index entry 759 | 760 | \def\subsubitem{\par\setbox0=\hbox{--\,--\enspace}% third 761 | \noindent\hangindent\wd0\box0}% order index entry 762 | 763 | \def\indexspace{\par \vskip 10\p@ plus5\p@ minus3\p@\relax} 764 | 765 | \renewenvironment{theindex} 766 | {\@mkboth{\indexname}{\indexname}% 767 | \thispagestyle{empty}\parindent\z@ 768 | \parskip\z@ \@plus .3\p@\relax 769 | \let\item\par 770 | \def\,{\relax\ifmmode\mskip\thinmuskip 771 | \else\hskip0.2em\ignorespaces\fi}% 772 | \normalfont\small 773 | \begin{multicols}{2}[\@makeschapterhead{\indexname}]% 774 | } 775 | {\end{multicols}} 776 | 777 | \renewcommand\footnoterule{% 778 | \kern-3\p@ 779 | \hrule\@width 2truecm 780 | \kern2.6\p@} 781 | \newdimen\fnindent 782 | \fnindent1em 783 | \long\def\@makefntext#1{% 784 | \parindent \fnindent% 785 | \leftskip \fnindent% 786 | \noindent 787 | \llap{\hb@xt@1em{\hss\@makefnmark\ }}\ignorespaces#1} 788 | 789 | \long\def\@makecaption#1#2{% 790 | \small 791 | \vskip\abovecaptionskip 792 | \sbox\@tempboxa{{\bfseries #1.} #2}% 793 | \ifdim \wd\@tempboxa >\hsize 794 | {\bfseries #1.} #2\par 795 | \else 796 | \global \@minipagefalse 797 | \hb@xt@\hsize{\hfil\box\@tempboxa\hfil}% 798 | \fi 799 | \vskip\belowcaptionskip} 800 | 801 | \def\fps@figure{htbp} 802 | \def\fnum@figure{\figurename\thinspace\thefigure} 803 | \def \@floatboxreset {% 804 | \reset@font 805 | \small 806 | \@setnobreak 807 | \@setminipage 808 | } 809 | \def\fps@table{htbp} 810 | \def\fnum@table{\tablename~\thetable} 811 | \renewenvironment{table} 812 | {\setlength\abovecaptionskip{0\p@}% 813 | \setlength\belowcaptionskip{10\p@}% 814 | \@float{table}} 815 | {\end@float} 816 | \renewenvironment{table*} 817 | {\setlength\abovecaptionskip{0\p@}% 818 | \setlength\belowcaptionskip{10\p@}% 819 | \@dblfloat{table}} 820 | {\end@dblfloat} 821 | 822 | \long\def\@caption#1[#2]#3{\par\addcontentsline{\csname 823 | ext@#1\endcsname}{#1}{\protect\numberline{\csname 824 | the#1\endcsname}{\ignorespaces #2}}\begingroup 825 | \@parboxrestore 826 | \@makecaption{\csname fnum@#1\endcsname}{\ignorespaces #3}\par 827 | \endgroup} 828 | 829 | % LaTeX does not provide a command to enter the authors institute 830 | % addresses. The \institute command is defined here. 831 | 832 | \newcounter{@inst} 833 | \newcounter{@auth} 834 | \newcounter{auco} 835 | \newdimen\instindent 836 | \newbox\authrun 837 | \newtoks\authorrunning 838 | \newtoks\tocauthor 839 | \newbox\titrun 840 | \newtoks\titlerunning 841 | \newtoks\toctitle 842 | 843 | \def\clearheadinfo{\gdef\@author{No Author Given}% 844 | \gdef\@title{No Title Given}% 845 | \gdef\@subtitle{}% 846 | \gdef\@institute{No Institute Given}% 847 | \gdef\@thanks{}% 848 | \global\titlerunning={}\global\authorrunning={}% 849 | \global\toctitle={}\global\tocauthor={}} 850 | 851 | \def\institute#1{\gdef\@institute{#1}} 852 | 853 | \def\institutename{\par 854 | \begingroup 855 | \parskip=\z@ 856 | \parindent=\z@ 857 | \setcounter{@inst}{1}% 858 | \def\and{\par\stepcounter{@inst}% 859 | \noindent$^{\the@inst}$\enspace\ignorespaces}% 860 | \setbox0=\vbox{\def\thanks##1{}\@institute}% 861 | \ifnum\c@@inst=1\relax 862 | \gdef\fnnstart{0}% 863 | \else 864 | \xdef\fnnstart{\c@@inst}% 865 | \setcounter{@inst}{1}% 866 | \noindent$^{\the@inst}$\enspace 867 | \fi 868 | \ignorespaces 869 | \@institute\par 870 | \endgroup} 871 | 872 | \def\@fnsymbol#1{\ensuremath{\ifcase#1\or\star\or{\star\star}\or 873 | {\star\star\star}\or \dagger\or \ddagger\or 874 | \mathchar "278\or \mathchar "27B\or \|\or **\or \dagger\dagger 875 | \or \ddagger\ddagger \else\@ctrerr\fi}} 876 | 877 | \def\inst#1{\unskip$^{#1}$} 878 | \def\fnmsep{\unskip$^,$} 879 | \def\email#1{{\tt#1}} 880 | \AtBeginDocument{\@ifundefined{url}{\def\url#1{#1}}{}% 881 | \@ifpackageloaded{babel}{% 882 | \@ifundefined{extrasenglish}{}{\addto\extrasenglish{\switcht@albion}}% 883 | \@ifundefined{extrasfrenchb}{}{\addto\extrasfrenchb{\switcht@francais}}% 884 | \@ifundefined{extrasgerman}{}{\addto\extrasgerman{\switcht@deutsch}}% 885 | }{\switcht@@therlang}% 886 | \providecommand{\keywords}[1]{\par\addvspace\baselineskip 887 | \noindent\keywordname\enspace\ignorespaces#1}% 888 | } 889 | \def\homedir{\~{ }} 890 | 891 | \def\subtitle#1{\gdef\@subtitle{#1}} 892 | \clearheadinfo 893 | % 894 | %%% to avoid hyperref warnings 895 | \providecommand*{\toclevel@author}{999} 896 | %%% to make title-entry parent of section-entries 897 | \providecommand*{\toclevel@title}{0} 898 | % 899 | \renewcommand\maketitle{\newpage 900 | \phantomsection 901 | \refstepcounter{chapter}% 902 | \stepcounter{section}% 903 | \setcounter{section}{0}% 904 | \setcounter{subsection}{0}% 905 | \setcounter{figure}{0} 906 | \setcounter{table}{0} 907 | \setcounter{equation}{0} 908 | \setcounter{footnote}{0}% 909 | \begingroup 910 | \parindent=\z@ 911 | \renewcommand\thefootnote{\@fnsymbol\c@footnote}% 912 | \if@twocolumn 913 | \ifnum \col@number=\@ne 914 | \@maketitle 915 | \else 916 | \twocolumn[\@maketitle]% 917 | \fi 918 | \else 919 | \newpage 920 | \global\@topnum\z@ % Prevents figures from going at top of page. 921 | \@maketitle 922 | \fi 923 | \thispagestyle{empty}\@thanks 924 | % 925 | \def\\{\unskip\ \ignorespaces}\def\inst##1{\unskip{}}% 926 | \def\thanks##1{\unskip{}}\def\fnmsep{\unskip}% 927 | \instindent=\hsize 928 | \advance\instindent by-\headlineindent 929 | \if!\the\toctitle!\addcontentsline{toc}{title}{\@title}\else 930 | \addcontentsline{toc}{title}{\the\toctitle}\fi 931 | \if@runhead 932 | \if!\the\titlerunning!\else 933 | \edef\@title{\the\titlerunning}% 934 | \fi 935 | \global\setbox\titrun=\hbox{\small\rm\unboldmath\ignorespaces\@title}% 936 | \ifdim\wd\titrun>\instindent 937 | \typeout{Title too long for running head. Please supply}% 938 | \typeout{a shorter form with \string\titlerunning\space prior to 939 | \string\maketitle}% 940 | \global\setbox\titrun=\hbox{\small\rm 941 | Title Suppressed Due to Excessive Length}% 942 | \fi 943 | \xdef\@title{\copy\titrun}% 944 | \fi 945 | % 946 | \if!\the\tocauthor!\relax 947 | {\def\and{\noexpand\protect\noexpand\and}% 948 | \protected@xdef\toc@uthor{\@author}}% 949 | \else 950 | \def\\{\noexpand\protect\noexpand\newline}% 951 | \protected@xdef\scratch{\the\tocauthor}% 952 | \protected@xdef\toc@uthor{\scratch}% 953 | \fi 954 | \addtocontents{toc}{\noexpand\protect\noexpand\authcount{\the\c@auco}}% 955 | \addcontentsline{toc}{author}{\toc@uthor}% 956 | \if@runhead 957 | \if!\the\authorrunning! 958 | \value{@inst}=\value{@auth}% 959 | \setcounter{@auth}{1}% 960 | \else 961 | \edef\@author{\the\authorrunning}% 962 | \fi 963 | \global\setbox\authrun=\hbox{\small\unboldmath\@author\unskip}% 964 | \ifdim\wd\authrun>\instindent 965 | \typeout{Names of authors too long for running head. Please supply}% 966 | \typeout{a shorter form with \string\authorrunning\space prior to 967 | \string\maketitle}% 968 | \global\setbox\authrun=\hbox{\small\rm 969 | Authors Suppressed Due to Excessive Length}% 970 | \fi 971 | \xdef\@author{\copy\authrun}% 972 | \markboth{\@author}{\@title}% 973 | \fi 974 | \endgroup 975 | \setcounter{footnote}{\fnnstart}% 976 | \clearheadinfo} 977 | % 978 | \def\@maketitle{\newpage 979 | \markboth{}{}% 980 | \def\lastand{\ifnum\value{@inst}=2\relax 981 | \unskip{} \andname\ 982 | \else 983 | \unskip \lastandname\ 984 | \fi}% 985 | \def\and{\stepcounter{@auth}\relax 986 | \ifnum\value{@auth}=\value{@inst}% 987 | \lastand 988 | \else 989 | \unskip, 990 | \fi}% 991 | \begin{center}% 992 | \let\newline\\ 993 | {\Large \bfseries\boldmath 994 | \pretolerance=10000 995 | \@title \par}\vskip .8cm 996 | \if!\@subtitle!\else {\large \bfseries\boldmath 997 | \vskip -.65cm 998 | \pretolerance=10000 999 | \@subtitle \par}\vskip .8cm\fi 1000 | \setbox0=\vbox{\setcounter{@auth}{1}\def\and{\stepcounter{@auth}}% 1001 | \def\thanks##1{}\@author}% 1002 | \global\value{@inst}=\value{@auth}% 1003 | \global\value{auco}=\value{@auth}% 1004 | \setcounter{@auth}{1}% 1005 | {\lineskip .5em 1006 | \noindent\ignorespaces 1007 | \@author\vskip.35cm} 1008 | {\small\institutename} 1009 | \end{center}% 1010 | } 1011 | 1012 | % definition of the "\spnewtheorem" command. 1013 | % 1014 | % Usage: 1015 | % 1016 | % \spnewtheorem{env_nam}{caption}[within]{cap_font}{body_font} 1017 | % or \spnewtheorem{env_nam}[numbered_like]{caption}{cap_font}{body_font} 1018 | % or \spnewtheorem*{env_nam}{caption}{cap_font}{body_font} 1019 | % 1020 | % New is "cap_font" and "body_font". It stands for 1021 | % fontdefinition of the caption and the text itself. 1022 | % 1023 | % "\spnewtheorem*" gives a theorem without number. 1024 | % 1025 | % A defined spnewthoerem environment is used as described 1026 | % by Lamport. 1027 | % 1028 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 1029 | 1030 | \def\@thmcountersep{} 1031 | \def\@thmcounterend{.} 1032 | 1033 | \def\spnewtheorem{\@ifstar{\@sthm}{\@Sthm}} 1034 | 1035 | % definition of \spnewtheorem with number 1036 | 1037 | \def\@spnthm#1#2{% 1038 | \@ifnextchar[{\@spxnthm{#1}{#2}}{\@spynthm{#1}{#2}}} 1039 | \def\@Sthm#1{\@ifnextchar[{\@spothm{#1}}{\@spnthm{#1}}} 1040 | 1041 | \def\@spxnthm#1#2[#3]#4#5{\expandafter\@ifdefinable\csname #1\endcsname 1042 | {\@definecounter{#1}\@addtoreset{#1}{#3}% 1043 | \expandafter\xdef\csname the#1\endcsname{\expandafter\noexpand 1044 | \csname the#3\endcsname \noexpand\@thmcountersep \@thmcounter{#1}}% 1045 | \expandafter\xdef\csname #1name\endcsname{#2}% 1046 | \global\@namedef{#1}{\@spthm{#1}{\csname #1name\endcsname}{#4}{#5}}% 1047 | \global\@namedef{end#1}{\@endtheorem}}} 1048 | 1049 | \def\@spynthm#1#2#3#4{\expandafter\@ifdefinable\csname #1\endcsname 1050 | {\@definecounter{#1}% 1051 | \expandafter\xdef\csname the#1\endcsname{\@thmcounter{#1}}% 1052 | \expandafter\xdef\csname #1name\endcsname{#2}% 1053 | \global\@namedef{#1}{\@spthm{#1}{\csname #1name\endcsname}{#3}{#4}}% 1054 | \global\@namedef{end#1}{\@endtheorem}}} 1055 | 1056 | \def\@spothm#1[#2]#3#4#5{% 1057 | \@ifundefined{c@#2}{\@latexerr{No theorem environment `#2' defined}\@eha}% 1058 | {\expandafter\@ifdefinable\csname #1\endcsname 1059 | {\newaliascnt{#1}{#2}% 1060 | \expandafter\xdef\csname #1name\endcsname{#3}% 1061 | \global\@namedef{#1}{\@spthm{#1}{\csname #1name\endcsname}{#4}{#5}}% 1062 | \global\@namedef{end#1}{\@endtheorem}}}} 1063 | 1064 | \def\@spthm#1#2#3#4{\topsep 7\p@ \@plus2\p@ \@minus4\p@ 1065 | \refstepcounter{#1}% 1066 | \@ifnextchar[{\@spythm{#1}{#2}{#3}{#4}}{\@spxthm{#1}{#2}{#3}{#4}}} 1067 | 1068 | \def\@spxthm#1#2#3#4{\@spbegintheorem{#2}{\csname the#1\endcsname}{#3}{#4}% 1069 | \ignorespaces} 1070 | 1071 | \def\@spythm#1#2#3#4[#5]{\@spopargbegintheorem{#2}{\csname 1072 | the#1\endcsname}{#5}{#3}{#4}\ignorespaces} 1073 | 1074 | \def\@spbegintheorem#1#2#3#4{\trivlist 1075 | \item[\hskip\labelsep{#3#1\ #2\@thmcounterend}]#4} 1076 | 1077 | \def\@spopargbegintheorem#1#2#3#4#5{\trivlist 1078 | \item[\hskip\labelsep{#4#1\ #2}]{#4(#3)\@thmcounterend\ }#5} 1079 | 1080 | % definition of \spnewtheorem* without number 1081 | 1082 | \def\@sthm#1#2{\@Ynthm{#1}{#2}} 1083 | 1084 | \def\@Ynthm#1#2#3#4{\expandafter\@ifdefinable\csname #1\endcsname 1085 | {\global\@namedef{#1}{\@Thm{\csname #1name\endcsname}{#3}{#4}}% 1086 | \expandafter\xdef\csname #1name\endcsname{#2}% 1087 | \global\@namedef{end#1}{\@endtheorem}}} 1088 | 1089 | \def\@Thm#1#2#3{\topsep 7\p@ \@plus2\p@ \@minus4\p@ 1090 | \@ifnextchar[{\@Ythm{#1}{#2}{#3}}{\@Xthm{#1}{#2}{#3}}} 1091 | 1092 | \def\@Xthm#1#2#3{\@Begintheorem{#1}{#2}{#3}\ignorespaces} 1093 | 1094 | \def\@Ythm#1#2#3[#4]{\@Opargbegintheorem{#1} 1095 | {#4}{#2}{#3}\ignorespaces} 1096 | 1097 | \def\@Begintheorem#1#2#3{#3\trivlist 1098 | \item[\hskip\labelsep{#2#1\@thmcounterend}]} 1099 | 1100 | \def\@Opargbegintheorem#1#2#3#4{#4\trivlist 1101 | \item[\hskip\labelsep{#3#1}]{#3(#2)\@thmcounterend\ }} 1102 | 1103 | \if@envcntsect 1104 | \def\@thmcountersep{.} 1105 | \spnewtheorem{theorem}{Theorem}[section]{\bfseries}{\itshape} 1106 | \else 1107 | \spnewtheorem{theorem}{Theorem}{\bfseries}{\itshape} 1108 | \if@envcntreset 1109 | \@addtoreset{theorem}{section} 1110 | \else 1111 | \@addtoreset{theorem}{chapter} 1112 | \fi 1113 | \fi 1114 | 1115 | %definition of divers theorem environments 1116 | \spnewtheorem*{claim}{Claim}{\itshape}{\rmfamily} 1117 | \spnewtheorem*{proof}{Proof}{\itshape}{\rmfamily} 1118 | \if@envcntsame % alle Umgebungen wie Theorem. 1119 | \def\spn@wtheorem#1#2#3#4{\@spothm{#1}[theorem]{#2}{#3}{#4}} 1120 | \else % alle Umgebungen mit eigenem Zaehler 1121 | \if@envcntsect % mit section numeriert 1122 | \def\spn@wtheorem#1#2#3#4{\@spxnthm{#1}{#2}[section]{#3}{#4}} 1123 | \else % nicht mit section numeriert 1124 | \if@envcntreset 1125 | \def\spn@wtheorem#1#2#3#4{\@spynthm{#1}{#2}{#3}{#4} 1126 | \@addtoreset{#1}{section}} 1127 | \else 1128 | \def\spn@wtheorem#1#2#3#4{\@spynthm{#1}{#2}{#3}{#4} 1129 | \@addtoreset{#1}{chapter}}% 1130 | \fi 1131 | \fi 1132 | \fi 1133 | \spn@wtheorem{case}{Case}{\itshape}{\rmfamily} 1134 | \spn@wtheorem{conjecture}{Conjecture}{\itshape}{\rmfamily} 1135 | \spn@wtheorem{corollary}{Corollary}{\bfseries}{\itshape} 1136 | \spn@wtheorem{definition}{Definition}{\bfseries}{\itshape} 1137 | \spn@wtheorem{example}{Example}{\itshape}{\rmfamily} 1138 | \spn@wtheorem{exercise}{Exercise}{\itshape}{\rmfamily} 1139 | \spn@wtheorem{lemma}{Lemma}{\bfseries}{\itshape} 1140 | \spn@wtheorem{note}{Note}{\itshape}{\rmfamily} 1141 | \spn@wtheorem{problem}{Problem}{\itshape}{\rmfamily} 1142 | \spn@wtheorem{property}{Property}{\itshape}{\rmfamily} 1143 | \spn@wtheorem{proposition}{Proposition}{\bfseries}{\itshape} 1144 | \spn@wtheorem{question}{Question}{\itshape}{\rmfamily} 1145 | \spn@wtheorem{solution}{Solution}{\itshape}{\rmfamily} 1146 | \spn@wtheorem{remark}{Remark}{\itshape}{\rmfamily} 1147 | 1148 | \def\@takefromreset#1#2{% 1149 | \def\@tempa{#1}% 1150 | \let\@tempd\@elt 1151 | \def\@elt##1{% 1152 | \def\@tempb{##1}% 1153 | \ifx\@tempa\@tempb\else 1154 | \@addtoreset{##1}{#2}% 1155 | \fi}% 1156 | \expandafter\expandafter\let\expandafter\@tempc\csname cl@#2\endcsname 1157 | \expandafter\def\csname cl@#2\endcsname{}% 1158 | \@tempc 1159 | \let\@elt\@tempd} 1160 | 1161 | \def\theopargself{\def\@spopargbegintheorem##1##2##3##4##5{\trivlist 1162 | \item[\hskip\labelsep{##4##1\ ##2}]{##4##3\@thmcounterend\ }##5} 1163 | \def\@Opargbegintheorem##1##2##3##4{##4\trivlist 1164 | \item[\hskip\labelsep{##3##1}]{##3##2\@thmcounterend\ }} 1165 | } 1166 | 1167 | \renewenvironment{abstract}{% 1168 | \list{}{\advance\topsep by0.35cm\relax\small 1169 | \leftmargin=1cm 1170 | \labelwidth=\z@ 1171 | \listparindent=\z@ 1172 | \itemindent\listparindent 1173 | \rightmargin\leftmargin}\item[\hskip\labelsep 1174 | \bfseries\abstractname]} 1175 | {\endlist} 1176 | 1177 | \newdimen\headlineindent % dimension for space between 1178 | \headlineindent=1.166cm % number and text of headings. 1179 | 1180 | \def\ps@headings{\let\@mkboth\@gobbletwo 1181 | \let\@oddfoot\@empty\let\@evenfoot\@empty 1182 | \def\@evenhead{\normalfont\small\rlap{\thepage}\hspace{\headlineindent}% 1183 | \leftmark\hfil} 1184 | \def\@oddhead{\normalfont\small\hfil\rightmark\hspace{\headlineindent}% 1185 | \llap{\thepage}} 1186 | \def\chaptermark##1{}% 1187 | \def\sectionmark##1{}% 1188 | \def\subsectionmark##1{}} 1189 | 1190 | \def\ps@titlepage{\let\@mkboth\@gobbletwo 1191 | \let\@oddfoot\@empty\let\@evenfoot\@empty 1192 | \def\@evenhead{\normalfont\small\rlap{\thepage}\hspace{\headlineindent}% 1193 | \hfil} 1194 | \def\@oddhead{\normalfont\small\hfil\hspace{\headlineindent}% 1195 | \llap{\thepage}} 1196 | \def\chaptermark##1{}% 1197 | \def\sectionmark##1{}% 1198 | \def\subsectionmark##1{}} 1199 | 1200 | \if@runhead\ps@headings\else 1201 | \ps@empty\fi 1202 | 1203 | \setlength\arraycolsep{1.4\p@} 1204 | \setlength\tabcolsep{1.4\p@} 1205 | 1206 | \endinput 1207 | %end of file llncs.cls 1208 | --------------------------------------------------------------------------------