1% SVMONO DOCUMENT CLASS -- version 4.17 (31-Oct-06)
2% Springer Verlag global LaTeX2e support for monographs
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{svmono}[2006/10/31 v4.17
23^^JSpringer Verlag global LaTeX document class for monographs]
24
25% Options
26% citations
27\DeclareOption{natbib}{\ExecuteOptions{oribibl}%
28\AtEndOfClass{% Loading package 'NATBIB'
29\RequirePackage{natbib}
30% Changing some parameters of NATBIB
31\setlength{\bibhang}{\parindent}
32%\setlength{\bibsep}{0mm}
33\let\bibfont=\small
34\def\@biblabel#1{#1.}
35\newcommand{\etal}{\textit{et al}.}
36%\bibpunct[,]{(}{)}{;}{a}{}{,}}}
37}}
38% Springer environment
39\let\if@spthms\iftrue
40\DeclareOption{nospthms}{\let\if@spthms\iffalse}
41%
42\let\envankh\@empty   % no anchor for "theorems"
43%
44\let\if@envcntreset\iffalse % environment counter is not reset
45\let\if@envcntresetsect=\iffalse % reset each section?
46\DeclareOption{envcountresetchap}{\let\if@envcntreset\iftrue}
47\DeclareOption{envcountresetsect}{\let\if@envcntreset\iftrue
48\let\if@envcntresetsect=\iftrue}
49%
50\let\if@envcntsame\iffalse  % NOT all environments work like "Theorem",
51                            % each using its own counter
52\DeclareOption{envcountsame}{\let\if@envcntsame\iftrue}
53%
54\let\if@envcntshowhiercnt=\iffalse % do not show hierarchy counter at all
55%
56% enhance theorem counter
57\DeclareOption{envcountchap}{\def\envankh{chapter}% show \thechapter along with theorem number
58\let\if@envcntshowhiercnt=\iftrue
59\ExecuteOptions{envcountreset}}
60%
61\DeclareOption{envcountsect}{\def\envankh{section}% show \thesection along with theorem number
62\let\if@envcntshowhiercnt=\iftrue
63\ExecuteOptions{envcountreset}}
64%
65% languages
66\let\switcht@@therlang\relax
67\let\svlanginfo\relax
68\def\ds@deutsch{\def\switcht@@therlang{\switcht@deutsch}%
69\gdef\svlanginfo{\typeout{Man spricht deutsch.}\global\let\svlanginfo\relax}}
70\def\ds@francais{\def\switcht@@therlang{\switcht@francais}%
71\gdef\svlanginfo{\typeout{On parle francais.}\global\let\svlanginfo\relax}}
72%
73\AtBeginDocument{\@ifpackageloaded{babel}{%
74\@ifundefined{extrasamerican}{}{\addto\extrasamerican{\switcht@albion}}%
75\@ifundefined{extrasaustralian}{}{\addto\extrasaustralian{\switcht@albion}}%
76\@ifundefined{extrasbritish}{}{\addto\extrasbritish{\switcht@albion}}%
77\@ifundefined{extrascanadian}{}{\addto\extrascanadian{\switcht@albion}}%
78\@ifundefined{extrasenglish}{}{\addto\extrasenglish{\switcht@albion}}%
79\@ifundefined{extrasnewzealand}{}{\addto\extrasnewzealand{\switcht@albion}}%
80\@ifundefined{extrasUKenglish}{}{\addto\extrasUKenglish{\switcht@albion}}%
81\@ifundefined{extrasUSenglish}{}{\addto\extrasUSenglish{\switcht@albion}}%
82\@ifundefined{captionsfrench}{}{\addto\captionsfrench{\switcht@francais}}%
83\@ifundefined{extrasgerman}{}{\addto\extrasgerman{\switcht@deutsch}}%
84\@ifundefined{extrasngerman}{}{\addto\extrasngerman{\switcht@deutsch}}%
85}{\switcht@@therlang}%
86}
87% numbering style of floats, equations
88\newif\if@numart   \@numartfalse
89\DeclareOption{numart}{\@numarttrue}
90\def\set@numbering{\if@numart\else\num@book\fi}
91\AtEndOfClass{\set@numbering}
92% style for vectors
93\DeclareOption{vecphys}{\def\vec@style{phys}}
94\DeclareOption{vecarrow}{\def\vec@style{arrow}}
95% running heads
96\let\if@runhead\iftrue
97\DeclareOption{norunningheads}{\let\if@runhead\iffalse}
98% referee option
99\let\if@referee\iffalse
100\def\makereferee{\def\baselinestretch{2}\selectfont
101\newbox\refereebox
102\setbox\refereebox=\vbox to\z@{\vskip0.5cm%
103  \hbox to\textwidth{\normalsize\tt\hrulefill\lower0.5ex
104        \hbox{\kern5\p@ referee's copy\kern5\p@}\hrulefill}\vss}%
105\def\@oddfoot{\copy\refereebox}\let\@evenfoot=\@oddfoot}
106\DeclareOption{referee}{\let\if@referee\iftrue
107\AtBeginDocument{\makereferee\small\normalsize}}
108% modification of thebibliography
109\let\if@openbib\iffalse
110\DeclareOption{openbib}{\let\if@openbib\iftrue}
111% LaTeX standard, sectionwise references
112\DeclareOption{oribibl}{\let\oribibl=Y}
113\DeclareOption{sectrefs}{\let\secbibl=Y}
114%
115% footinfo option (provides an informatory line on every page)
116\def\SpringerMacroPackageNameA{svmono.cls}
117% \thetime, \thedate and \timstamp are macros to include
118% time, date (or both) of the TeX run in the document
119\def\maketimestamp{\count255=\time
120\divide\count255 by 60\relax
121\edef\thetime{\the\count255:}%
122\multiply\count255 by-60\relax
123\advance\count255 by\time
124\edef\thetime{\thetime\ifnum\count255<10 0\fi\the\count255}
125\edef\thedate{\number\day-\ifcase\month\or Jan\or Feb\or Mar\or
126             Apr\or May\or Jun\or Jul\or Aug\or Sep\or Oct\or
127             Nov\or Dec\fi-\number\year}
128\def\timstamp{\hbox to\hsize{\tt\hfil\thedate\hfil\thetime\hfil}}}
129\maketimestamp
130%
131% \footinfo generates a info footline on every page containing
132% pagenumber, jobname, macroname, and timestamp
133\DeclareOption{footinfo}{\AtBeginDocument{\maketimestamp
134   \def\ps@empty{\let\@mkboth\@gobbletwo
135   \let\@oddhead\@empty\let\@evenhead\@empty}%
136   \def\@oddfoot{\scriptsize\tt Page:\,\thepage\space\hfil
137                 job:\,\jobname\space\hfil
138                 macro:\,\SpringerMacroPackageNameA\space\hfil
139                 date/time:\,\thedate/\thetime}%
140   \let\@evenfoot=\@oddfoot}}
141%
142% start new chapter on any page
143\newif\if@openright \@openrighttrue
144\DeclareOption{openany}{\@openrightfalse}
145%
146% no size changing allowed
147\DeclareOption{11pt}{\OptionNotUsed}
148\DeclareOption{12pt}{\OptionNotUsed}
149% options for the article class
150\def\@rticle@options{10pt,twoside}
151% fleqn
152\DeclareOption{fleqn}{\def\@rticle@options{10pt,twoside,fleqn}%
153\AtEndOfClass{\let\leftlegendglue\relax}%
154\AtBeginDocument{\mathindent\parindent}}
155% hanging sectioning titles
156\let\if@sechang\iffalse
157\DeclareOption{sechang}{\let\if@sechang\iftrue}
158\def\ClassInfoNoLine#1#2{%
159   \ClassInfo{#1}{#2\@gobble}%
160}
161\let\SVMonoOpt\@empty
162\DeclareOption*{\InputIfFileExists{sv\CurrentOption.clo}{%
163\global\let\SVMonoOpt\CurrentOption}{%
164\ClassWarning{Springer-SVMono}{Specified option or subpackage
165"\CurrentOption" \MessageBreak not found
166passing it to article class \MessageBreak
167-}\PassOptionsToClass{\CurrentOption}{article}%
168}}
169\ProcessOptions\relax
170\ifx\SVMonoOpt\@empty\relax
171\ClassInfoNoLine{Springer-SVMono}{extra/valid Springer sub-package
172\MessageBreak not found in option list - using "global" style}{}
173\fi
174\LoadClass[\@rticle@options]{article}
175\raggedbottom
176
177% various sizes and settings for monographs
178
179\setlength{\textwidth}{28pc}   %  11.8cm
180%\setlength{\textheight}{12pt}\multiply\textheight by 45\relax
181\setlength{\textheight}{540\p@}
182\setlength{\topmargin}{0cm}
183\setlength\oddsidemargin   {63\p@}
184\setlength\evensidemargin  {63\p@}
185\setlength\marginparwidth{90\p@}
186\setlength\headsep   {12\p@}
187
188\setlength{\parindent}{15\p@}
189\setlength{\parskip}{\z@ \@plus \p@}
190\setlength{\hfuzz}{2\p@}
191\setlength{\arraycolsep}{1.5\p@}
192
193\frenchspacing
194
195\tolerance=500
196
197\predisplaypenalty=0
198\clubpenalty=10000
199\widowpenalty=10000
200
201\setlength\footnotesep{7.7\p@}
202
203\newdimen\betweenumberspace          % dimension for space between
204\betweenumberspace=5\p@               % number and text of titles
205\newdimen\headlineindent             % dimension for space of
206\headlineindent=2.5cc                % number and gap of running heads
207
208% fonts, sizes, and the like
209\renewcommand\small{%
210   \@setfontsize\small\@ixpt{11}%
211   \abovedisplayskip 8.5\p@ \@plus3\p@ \@minus4\p@
212   \abovedisplayshortskip \z@ \@plus2\p@
213   \belowdisplayshortskip 4\p@ \@plus2\p@ \@minus2\p@
214   \def\@listi{\leftmargin\leftmargini
215               \parsep \z@ \@plus\p@ \@minus\p@
216               \topsep 6\p@ \@plus2\p@ \@minus4\p@
217               \itemsep\z@}%
218   \belowdisplayskip \abovedisplayskip
219}
220%
221\let\footnotesize=\small
222%
223\newenvironment{petit}{\par\addvspace{6\p@}\small}{\par\addvspace{6\p@}}
224%
225
226% modification of automatic positioning of floating objects
227\setlength\@fptop{\z@ }
228\setlength\@fpsep{12\p@ }
229\setlength\@fpbot{\z@ \@plus 1fil }
230\def\textfraction{.01}
231\def\floatpagefraction{.8}
232\setlength{\intextsep}{20\p@ \@plus 2\p@ \@minus 2\p@}
233\setcounter{topnumber}{4}
234\def\topfraction{.9}
235\setcounter{bottomnumber}{2}
236\def\bottomfraction{.7}
237\setcounter{totalnumber}{6}
238%
239% size and style of headings
240\newcommand{\partsize}{\Large}
241\newcommand{\partstyle}{\bfseries\boldmath}
242\newcommand{\chapsize}{\Large}
243\newcommand{\chapstyle}{\bfseries\boldmath}
244\newcommand{\chapshooksize}{\small}
245\newcommand{\chapshookstyle}{\itshape\unboldmath}
246\newcommand{\secsize}{\large}
247\newcommand{\secstyle}{\bfseries\boldmath}
248\newcommand{\subsecsize}{\normalsize}
249\newcommand{\subsecstyle}{\bfseries\boldmath}
250%
251\def\cleardoublepage{\clearpage\if@twoside \ifodd\c@page\else
252    \hbox{}\newpage\if@twocolumn\hbox{}\newpage\fi\fi\fi}
253
254\newcommand{\clearemptydoublepage}{%
255        \clearpage{\pagestyle{empty}\cleardoublepage}}
256\newcommand{\startnewpage}{\if@openright\clearemptydoublepage\else\clearpage\fi}
257
258% redefinition of \part
259\renewcommand\part{\clearemptydoublepage
260         \thispagestyle{empty}
261         \if@twocolumn
262            \onecolumn
263            \@tempswatrue
264         \else
265            \@tempswafalse
266         \fi
267         \@ifundefined{thispagecropped}{}{\thispagecropped}
268         \secdef\@part\@spart}
269
270\def\@part[#1]#2{\ifnum \c@secnumdepth >-2\relax
271        \refstepcounter{part}
272        \addcontentsline{toc}{part}{\partname\
273        \thepart\thechapterend\hspace{\betweenumberspace}%
274        #1}\else
275        \addcontentsline{toc}{part}{#1}\fi
276   \markboth{}{}
277   {\raggedleft
278    \ifnum \c@secnumdepth >-2\relax
279      \normalfont\partstyle\partsize\vrule height 34pt width 0pt depth 0pt%
280     \partname\ \thepart\llap{\smash{\lower 5pt\hbox to\textwidth{\hrulefill}}}
281    \par
282    \vskip 128.3\p@ \fi
283    #2\par}\@endpart}
284%
285% \@endpart finishes the part page
286%
287\def\@endpart{\vfil\newpage
288   \if@twoside
289       \hbox{}
290       \thispagestyle{empty}
291       \newpage
292   \fi
293   \if@tempswa
294     \twocolumn
295   \fi}
296%
297\def\@spart#1{{\raggedleft
298   \normalfont\partsize\partstyle
299   #1\par}\@endpart}
300%
301\newenvironment{partbacktext}{\def\@endpart{\vfil\newpage}}
302{\thispagestyle{empty} \newpage \if@tempswa\twocolumn\fi}
303%
304% (re)define sectioning
305\setcounter{secnumdepth}{2}
306
307\def\seccounterend{}
308\def\seccountergap{\hskip\betweenumberspace}
309\def\@seccntformat#1{\csname the#1\endcsname\seccounterend\seccountergap\ignorespaces}
310%
311\let\firstmark=\botmark
312%
313\@ifundefined{thechapterend}{\def\thechapterend{}}{}
314%
315\if@sechang
316   \def\sec@hangfrom#1{\setbox\@tempboxa\hbox{#1}%
317         \hangindent\wd\@tempboxa\noindent\box\@tempboxa}
318\else
319   \def\sec@hangfrom#1{\setbox\@tempboxa\hbox{#1}%
320         \hangindent\z@\noindent\box\@tempboxa}
321\fi
322
323\def\chap@hangfrom#1{\noindent\vrule height 34pt width 0pt depth 0pt
324\rlap{\smash{\lower 5pt\hbox to\textwidth{\hrulefill}}}\hbox{#1}
325\vskip10pt}
326\def\schap@hangfrom{\chap@hangfrom{}}
327
328\newcounter{chapter}
329%
330\@addtoreset{section}{chapter}
331\@addtoreset{footnote}{chapter}
332
333\newif\if@mainmatter \@mainmattertrue
334\newcommand\frontmatter{\startnewpage
335            \@mainmatterfalse\pagenumbering{Roman}
336            \setcounter{page}{5}}
337%
338\newcommand\mainmatter{\clearemptydoublepage
339       \@mainmattertrue\pagenumbering{arabic}}
340%
341\newcommand\backmatter{\clearemptydoublepage\@mainmatterfalse}
342
343\def\@chapapp{\chaptername}
344
345\newdimen\chapstarthookwidth
346\newcommand\chapstarthook[2][0.66\textwidth]{%
347\setlength{\chapstarthookwidth}{#1}%
348\gdef\chapst@rthook{#2}}
349
350\newcommand{\processchapstarthook}{\@ifundefined{chapst@rthook}{}{%
351    \setbox0=\hbox{\vbox{\hyphenpenalty=50
352    \begin{flushright}
353    \begin{minipage}{\chapstarthookwidth}
354       \vrule\@width\z@\@height21\p@\@depth\z@
355       \normalfont\chapshooksize\chapshookstyle\chapst@rthook
356    \end{minipage}
357    \end{flushright}}}%
358    \@tempdima=\pagetotal
359    \advance\@tempdima by\ht0
360    \ifdim\@tempdima<106\p@
361       \multiply\@tempdima by-1
362       \advance\@tempdima by106\p@
363       \vskip\@tempdima
364    \fi
365    \box0\par
366    \global\let\chapst@rthook=\undefined}}
367
368\newcommand\chapter{\startnewpage
369                    \@ifundefined{thispagecropped}{}{\thispagecropped}
370                    \thispagestyle{empty}%
371                    \global\@topnum\z@
372                    \@afterindentfalse
373                    \secdef\@chapter\@schapter}
374
375\def\@chapter[#1]#2{\ifnum \c@secnumdepth >\m@ne
376                       \refstepcounter{chapter}%
377                       \if@mainmatter
378                         \typeout{\@chapapp\space\thechapter.}%
379                         \addcontentsline{toc}{chapter}{\protect
380                                  \numberline{\thechapter\thechapterend}#1}%
381                       \else
382                         \addcontentsline{toc}{chapter}{#1}%
383                       \fi
384                    \else
385                      \addcontentsline{toc}{chapter}{#1}%
386                    \fi
387                    \chaptermark{#1}%
388                    \addtocontents{lof}{\protect\addvspace{10\p@}}%
389                    \addtocontents{lot}{\protect\addvspace{10\p@}}%
390                    \if@twocolumn
391                      \@topnewpage[\@makechapterhead{#2}]%
392                    \else
393                      \@makechapterhead{#2}%
394                      \@afterheading
395                    \fi}
396
397\def\@schapter#1{\if@twocolumn
398                   \@topnewpage[\@makeschapterhead{#1}]%
399                 \else
400                   \@makeschapterhead{#1}%
401                   \@afterheading
402                 \fi}
403
404%%changes position and layout of numbered chapter headings
405\def\@makechapterhead#1{{\parindent\z@\raggedright\normalfont
406  \hyphenpenalty \@M
407  \interlinepenalty\@M
408  \chapsize\chapstyle
409  \chap@hangfrom{\thechapter\thechapterend\hskip\betweenumberspace}%!!!
410  \ignorespaces#1\par\nobreak
411  \processchapstarthook
412  \ifdim\pagetotal>157\p@
413     \vskip 11\p@
414  \else
415     \@tempdima=168\p@\advance\@tempdima by-\pagetotal
416     \vskip\@tempdima
417  \fi}}
418
419%%changes position and layout of unnumbered chapter headings
420\def\@makeschapterhead#1{{\parindent \z@ \raggedright\normalfont
421  \hyphenpenalty \@M
422  \interlinepenalty\@M
423  \chapsize\chapstyle
424  \schap@hangfrom
425  \ignorespaces#1\par\nobreak
426  \processchapstarthook
427  \ifdim\pagetotal>157\p@
428     \vskip 11\p@
429  \else
430     \@tempdima=168\p@\advance\@tempdima by-\pagetotal
431     \vskip\@tempdima
432  \fi}}
433
434% predefined unnumbered headings
435\newcommand{\preface}[1][\prefacename]{\chapter*{#1}\markboth{#1}{#1}}
436% same with TOC entry
437\newcommand{\Preface}[1][\prefacename]{\chapter*{#1}\markboth{#1}{#1}%
438\addcontentsline{toc}{chapter}{#1}}
439
440% measures and setting of sections
441\renewcommand\section{\@startsection{section}{1}{\z@}%
442                       {-24\p@ \@plus -4\p@ \@minus -4\p@}%
443                       {12\p@ \@plus 4\p@ \@minus 4\p@}%
444                       {\normalfont\secsize\secstyle
445                        \rightskip=\z@ \@plus 8em\pretolerance=10000 }}
446\renewcommand\subsection{\@startsection{subsection}{2}{\z@}%
447                       {-17\p@ \@plus -4\p@ \@minus -4\p@}%
448                       {10\p@ \@plus 4\p@ \@minus 4\p@}%
449                       {\normalfont\subsecsize\subsecstyle
450                        \rightskip=\z@ \@plus 8em\pretolerance=10000 }}
451\renewcommand\subsubsection{\@startsection{subsubsection}{3}{\z@}%
452                       {-17\p@ \@plus -4\p@ \@minus -4\p@}%
453                       {10\p@ \@plus 4\p@ \@minus 4\p@}%
454                       {\normalfont\normalsize\subsecstyle
455                        \rightskip=\z@ \@plus 8em\pretolerance=10000 }}
456\renewcommand\paragraph{\@startsection{paragraph}{4}{\z@}%
457                       {-10\p@ \@plus -4\p@ \@minus -4\p@}%
458                       {10\p@ \@plus 4\p@ \@minus 4\p@}%
459                       {\normalfont\normalsize\itshape
460                        \rightskip=\z@ \@plus 8em\pretolerance=10000 }}
461\def\subparagraph{\@startsection{subparagraph}{5}{\z@}%
462    {-5.388\p@ \@plus-4\p@ \@minus-4\p@}{-5\p@}{\normalfont\normalsize\itshape}}
463
464% Appendix
465\renewcommand\appendix{\par
466                \stepcounter{chapter}
467                \setcounter{chapter}{0}
468                \stepcounter{section}
469                \setcounter{section}{0}
470                \setcounter{equation}{0}
471                \setcounter{figure}{0}
472                \setcounter{table}{0}
473                \setcounter{footnote}{0}
474  \def\@chapapp{\appendixname}%
475  \renewcommand\thechapter{\@Alph\c@chapter}}
476
477%  definition of sections
478%  \hyphenpenalty and \raggedright added, so that there is no
479%  hyphenation and the text is set ragged-right in sectioning
480
481\def\runinsep{}
482\def\aftertext{\unskip\runinsep}
483%
484\def\thesection{\thechapter.\arabic{section}}
485\def\thesubsection{\thesection.\arabic{subsection}}
486\def\thesubsubsection{\thesubsection.\arabic{subsubsection}}
487\def\theparagraph{\thesubsubsection.\arabic{paragraph}}
488\def\thesubparagraph{\theparagraph.\arabic{subparagraph}}
489\def\chaptermark#1{}
490%
491\def\@ssect#1#2#3#4#5{%
492  \@tempskipa #3\relax
493  \ifdim \@tempskipa>\z@
494    \begingroup
495      #4{%
496        \@hangfrom{\hskip #1}%
497          \raggedright
498          \hyphenpenalty \@M
499          \interlinepenalty \@M #5\@@par}%
500    \endgroup
501  \else
502    \def\@svsechd{#4{\hskip #1\relax #5}}%
503  \fi
504  \@xsect{#3}}
505%
506\def\@sect#1#2#3#4#5#6[#7]#8{%
507   \ifnum #2>\c@secnumdepth
508      \let\@svsec\@empty
509   \else
510      \refstepcounter{#1}%
511      \protected@edef\@svsec{\@seccntformat{#1}\relax}%
512   \fi
513   \@tempskipa #5\relax
514   \ifdim \@tempskipa>\z@
515      \begingroup #6\relax
516         \sec@hangfrom{\hskip #3\relax\@svsec}%
517         {\raggedright
518          \hyphenpenalty \@M
519          \interlinepenalty \@M #8\@@par}%
520      \endgroup
521      \csname #1mark\endcsname{#7\seccounterend}%
522      \addcontentsline{toc}{#1}{\ifnum #2>\c@secnumdepth
523                                \else
524                                   \protect\numberline{\csname the#1\endcsname\seccounterend}%
525                                \fi
526                                #7}%
527   \else
528      \def\@svsechd{%
529         #6\hskip #3\relax
530         \@svsec #8\aftertext\ignorespaces
531         \csname #1mark\endcsname{#7}%
532         \addcontentsline{toc}{#1}{%
533            \ifnum #2>\c@secnumdepth \else
534                \protect\numberline{\csname the#1\endcsname\seccounterend}%
535            \fi
536            #7}}%
537   \fi
538   \@xsect{#5}}
539
540% figures and tables are processed in small print
541\def \@floatboxreset {%
542        \reset@font
543        \small
544        \@setnobreak
545        \@setminipage
546}
547\def\fps@figure{htbp}
548\def\fps@table{htbp}
549
550% Frame for paste-in figures or tables
551\def\mpicplace#1#2{%  #1 =width   #2 =height
552\vbox{\hbox to #1{\vrule\@width \fboxrule \@height #2\hfill}}}
553
554% labels of enumerate
555\renewcommand\labelenumii{\theenumii)}
556\renewcommand\theenumii{\@alph\c@enumii}
557
558% labels of itemize
559\renewcommand\labelitemi{\textbullet}
560\renewcommand\labelitemii{\textendash}
561\let\labelitemiii=\labelitemiv
562
563% labels of description
564\renewcommand*\descriptionlabel[1]{\hspace\labelsep #1\hfil}
565
566% fixed indentation for standard itemize-environment
567\newdimen\svitemindent \setlength{\svitemindent}{\parindent}
568
569
570% make indentations changeable
571
572\def\setitemindent#1{\settowidth{\labelwidth}{#1}%
573        \let\setit@m=Y%
574        \leftmargini\labelwidth
575        \advance\leftmargini\labelsep
576   \def\@listi{\leftmargin\leftmargini
577        \labelwidth\leftmargini\advance\labelwidth by -\labelsep
578        \parsep=\parskip
579        \topsep=\medskipamount
580        \itemsep=\parskip \advance\itemsep by -\parsep}}
581\def\setitemitemindent#1{\settowidth{\labelwidth}{#1}%
582        \let\setit@m=Y%
583        \leftmarginii\labelwidth
584        \advance\leftmarginii\labelsep
585\def\@listii{\leftmargin\leftmarginii
586        \labelwidth\leftmarginii\advance\labelwidth by -\labelsep
587        \parsep=\parskip
588        \topsep=\z@
589        \itemsep=\parskip \advance\itemsep by -\parsep}}
590%
591% adjusted environment "description"
592% if an optional parameter (at the first two levels of lists)
593% is present, its width is considered to be the widest mark
594% throughout the current list.
595\def\description{\@ifnextchar[{\@describe}{\list{}{\labelwidth\z@
596          \itemindent-\leftmargin \let\makelabel\descriptionlabel}}}
597%
598\def\describelabel#1{#1\hfil}
599\def\@describe[#1]{\relax\ifnum\@listdepth=0
600\setitemindent{#1}\else\ifnum\@listdepth=1
601\setitemitemindent{#1}\fi\fi
602\list{--}{\let\makelabel\describelabel}}
603%
604\def\itemize{%
605  \ifnum \@itemdepth >\thr@@\@toodeep\else
606    \advance\@itemdepth\@ne
607    \ifx\setit@m\undefined
608       \ifnum \@itemdepth=1 \leftmargini=\svitemindent
609          \labelwidth\leftmargini\advance\labelwidth-\labelsep
610          \leftmarginii=\leftmargini \leftmarginiii=\leftmargini
611       \fi
612    \fi
613    \edef\@itemitem{labelitem\romannumeral\the\@itemdepth}%
614    \expandafter\list
615      \csname\@itemitem\endcsname
616      {\def\makelabel##1{\rlap{##1}\hss}}%
617  \fi}
618%
619\newdimen\verbatimindent \verbatimindent\parindent
620\def\verbatim{\advance\@totalleftmargin by\verbatimindent
621\@verbatim \frenchspacing\@vobeyspaces \@xverbatim}
622
623%
624%  special signs and characters
625\newcommand{\D}{\mathrm{d}}
626\newcommand{\E}{\mathrm{e}}
627\let\eul=\E
628\newcommand{\I}{{\rm i}}
629\let\imag=\I
630%
631% the definition of uppercase Greek characters
632% Springer likes them as italics to depict variables
633\DeclareMathSymbol{\Gamma}{\mathalpha}{letters}{"00}
634\DeclareMathSymbol{\Delta}{\mathalpha}{letters}{"01}
635\DeclareMathSymbol{\Theta}{\mathalpha}{letters}{"02}
636\DeclareMathSymbol{\Lambda}{\mathalpha}{letters}{"03}
637\DeclareMathSymbol{\Xi}{\mathalpha}{letters}{"04}
638\DeclareMathSymbol{\Pi}{\mathalpha}{letters}{"05}
639\DeclareMathSymbol{\Sigma}{\mathalpha}{letters}{"06}
640\DeclareMathSymbol{\Upsilon}{\mathalpha}{letters}{"07}
641\DeclareMathSymbol{\Phi}{\mathalpha}{letters}{"08}
642\DeclareMathSymbol{\Psi}{\mathalpha}{letters}{"09}
643\DeclareMathSymbol{\Omega}{\mathalpha}{letters}{"0A}
644% the upright forms are defined here as \var<Character>
645\DeclareMathSymbol{\varGamma}{\mathalpha}{operators}{"00}
646\DeclareMathSymbol{\varDelta}{\mathalpha}{operators}{"01}
647\DeclareMathSymbol{\varTheta}{\mathalpha}{operators}{"02}
648\DeclareMathSymbol{\varLambda}{\mathalpha}{operators}{"03}
649\DeclareMathSymbol{\varXi}{\mathalpha}{operators}{"04}
650\DeclareMathSymbol{\varPi}{\mathalpha}{operators}{"05}
651\DeclareMathSymbol{\varSigma}{\mathalpha}{operators}{"06}
652\DeclareMathSymbol{\varUpsilon}{\mathalpha}{operators}{"07}
653\DeclareMathSymbol{\varPhi}{\mathalpha}{operators}{"08}
654\DeclareMathSymbol{\varPsi}{\mathalpha}{operators}{"09}
655\DeclareMathSymbol{\varOmega}{\mathalpha}{operators}{"0A}
656% Upright Lower Case Greek letters without using a new MathAlphabet
657\newcommand{\greeksym}[1]{\usefont{U}{psy}{m}{n}#1}
658\newcommand{\greeksymbold}[1]{{\usefont{U}{psy}{b}{n}#1}}
659\newcommand{\allmodesymb}[2]{\relax\ifmmode{\mathchoice
660{\mbox{\fontsize{\tf@size}{\tf@size}#1{#2}}}
661{\mbox{\fontsize{\tf@size}{\tf@size}#1{#2}}}
662{\mbox{\fontsize{\sf@size}{\sf@size}#1{#2}}}
663{\mbox{\fontsize{\ssf@size}{\ssf@size}#1{#2}}}}
664\else
665\mbox{#1{#2}}\fi}
666% Definition of lower case Greek letters
667\newcommand{\ualpha}{\allmodesymb{\greeksym}{a}}
668\newcommand{\ubeta}{\allmodesymb{\greeksym}{b}}
669\newcommand{\uchi}{\allmodesymb{\greeksym}{c}}
670\newcommand{\udelta}{\allmodesymb{\greeksym}{d}}
671\newcommand{\ugamma}{\allmodesymb{\greeksym}{g}}
672\newcommand{\umu}{\allmodesymb{\greeksym}{m}}
673\newcommand{\unu}{\allmodesymb{\greeksym}{n}}
674\newcommand{\upi}{\allmodesymb{\greeksym}{p}}
675\newcommand{\utau}{\allmodesymb{\greeksym}{t}}
676% redefines the \vec accent to a bold character - if desired
677\def\fig@type{arrow}% temporarily abused
678\ifx\vec@style\fig@type\else
679\@ifundefined{vec@style}{%
680 \def\vec#1{\ensuremath{\mathchoice
681                     {\mbox{\boldmath$\displaystyle\mathbf{#1}$}}
682                     {\mbox{\boldmath$\textstyle\mathbf{#1}$}}
683                     {\mbox{\boldmath$\scriptstyle\mathbf{#1}$}}
684                     {\mbox{\boldmath$\scriptscriptstyle\mathbf{#1}$}}}}%
685}
686{\def\vec#1{\ensuremath{\mathchoice
687                     {\mbox{\boldmath$\displaystyle#1$}}
688                     {\mbox{\boldmath$\textstyle#1$}}
689                     {\mbox{\boldmath$\scriptstyle#1$}}
690                     {\mbox{\boldmath$\scriptscriptstyle#1$}}}}%
691}
692\fi
693% tensor
694\def\tens#1{\relax\ifmmode\mathsf{#1}\else\textsf{#1}\fi}
695
696% end of proof symbol
697\newcommand\qedsymbol{\hbox{\rlap{$\sqcap$}$\sqcup$}}
698\newcommand\qed{\relax\ifmmode\else\unskip\quad\fi\qedsymbol}
699\newcommand\smartqed{\renewcommand\qed{\relax\ifmmode\qedsymbol\else
700  {\unskip\nobreak\hfil\penalty50\hskip1em\null\nobreak\hfil\qedsymbol
701  \parfillskip=\z@\finalhyphendemerits=0\endgraf}\fi}}
702%
703\def\num@book{%
704\renewcommand\thesection{\thechapter.\@arabic\c@section}%
705\renewcommand\thesubsection{\thesection.\@arabic\c@subsection}%
706\renewcommand\theequation{\thechapter.\@arabic\c@equation}%
707\renewcommand\thefigure{\thechapter.\@arabic\c@figure}%
708\renewcommand\thetable{\thechapter.\@arabic\c@table}%
709\@addtoreset{section}{chapter}%
710\@addtoreset{figure}{chapter}%
711\@addtoreset{table}{chapter}%
712\@addtoreset{equation}{chapter}}
713%
714% Ragged bottom for the actual page
715\def\thisbottomragged{\def\@textbottom{\vskip\z@ \@plus.0001fil
716\global\let\@textbottom\relax}}
717
718% This is texte.tex
719% it defines various texts and their translations
720% called up with documentstyle options
721\def\switcht@albion{%
722\def\abstractname{Summary.}%
723\def\ackname{Acknowledgement.}%
724\def\andname{and}%
725\def\bibname{References}%
726\def\lastandname{, and}%
727\def\appendixname{Appendix}%
728\def\chaptername{Chapter}%
729\def\claimname{Claim}%
730\def\conjecturename{Conjecture}%
731\def\contentsname{Contents}%
732\def\corollaryname{Corollary}%
733\def\definitionname{Definition}%
734\def\examplename{Example}%
735\def\exercisename{Exercise}%
736\def\figurename{Fig.}%
737\def\keywordname{{\bf Key words:}}%
738\def\indexname{Index}%
739\def\lemmaname{Lemma}%
740\def\contriblistname{List of Contributors}%
741\def\listfigurename{List of Figures}%
742\def\listtablename{List of Tables}%
743\def\mailname{{\it Correspondence to\/}:}%
744\def\noteaddname{Note added in proof}%
745\def\notename{Note}%
746\def\partname{Part}%
747\def\prefacename{Preface}%
748\def\problemname{Problem}%
749\def\proofname{Proof}%
750\def\propertyname{Property}%
751\def\propositionname{Proposition}%
752\def\questionname{Question}%
753\def\refname{References}%
754\def\remarkname{Remark}%
755\def\seename{see}%
756\def\solutionname{Solution}%
757\def\subclassname{{\it Subject Classifications\/}:}%
758\def\tablename{Table}%
759\def\theoremname{Theorem}}
760\switcht@albion
761% Names of theorem like environments are already defined
762% but must be translated if another language is chosen
763%
764% French section
765\def\switcht@francais{\svlanginfo
766 \def\abstractname{R\'esum\'e.}%
767 \def\ackname{Remerciements.}%
768 \def\andname{et}%
769 \def\lastandname{ et}%
770 \def\appendixname{Appendice}%
771 \def\bibname{Bibliographie}%
772 \def\chaptername{Chapitre}%
773 \def\claimname{Pr\'etention}%
774 \def\conjecturename{Hypoth\`ese}%
775 \def\contentsname{Table des mati\`eres}%
776 \def\corollaryname{Corollaire}%
777 \def\definitionname{D\'efinition}%
778 \def\examplename{Exemple}%
779 \def\exercisename{Exercice}%
780 \def\figurename{Fig.}%
781 \def\keywordname{{\bf Mots-cl\'e:}}%
782 \def\indexname{Index}%
783 \def\lemmaname{Lemme}%
784 \def\contriblistname{Liste des contributeurs}%
785 \def\listfigurename{Liste des figures}%
786 \def\listtablename{Liste des tables}%
787 \def\mailname{{\it Correspondence to\/}:}%
788 \def\noteaddname{Note ajout\'ee \`a l'\'epreuve}%
789 \def\notename{Remarque}%
790 \def\partname{Partie}%
791 \def\prefacename{Avant-propos}%  ou Pr\'eface
792 \def\problemname{Probl\`eme}%
793 \def\proofname{Preuve}%
794 \def\propertyname{Caract\'eristique}%
795%\def\propositionname{Proposition}%
796 \def\questionname{Question}%
797 \def\refname{Litt\'erature}%
798 \def\remarkname{Remarque}%
799 \def\seename{voir}%
800 \def\solutionname{Solution}%
801 \def\subclassname{{\it Subject Classifications\/}:}%
802 \def\tablename{Tableau}%
803 \def\theoremname{Th\'eor\`eme}%
804}
805%
806% German section
807\def\switcht@deutsch{\svlanginfo
808 \def\abstractname{Zusammenfassung.}%
809 \def\ackname{Danksagung.}%
810 \def\andname{und}%
811 \def\lastandname{ und}%
812 \def\appendixname{Anhang}%
813 \def\bibname{Literaturverzeichnis}%
814 \def\chaptername{Kapitel}%
815 \def\claimname{Behauptung}%
816 \def\conjecturename{Hypothese}%
817 \def\contentsname{Inhaltsverzeichnis}%
818 \def\corollaryname{Korollar}%
819%\def\definitionname{Definition}%
820 \def\examplename{Beispiel}%
821 \def\exercisename{\"Ubung}%
822 \def\figurename{Abb.}%
823 \def\keywordname{{\bf Schl\"usselw\"orter:}}%
824 \def\indexname{Sachverzeichnis}%
825%\def\lemmaname{Lemma}%
826 \def\contriblistname{Mitarbeiter}%
827 \def\listfigurename{Abbildungsverzeichnis}%
828 \def\listtablename{Tabellenverzeichnis}%
829 \def\mailname{{\it Correspondence to\/}:}%
830 \def\noteaddname{Nachtrag}%
831 \def\notename{Anmerkung}%
832 \def\partname{Teil}%
833 \def\prefacename{Vorwort}%
834%\def\problemname{Problem}%
835 \def\proofname{Beweis}%
836 \def\propertyname{Eigenschaft}%
837%\def\propositionname{Proposition}%
838 \def\questionname{Frage}%
839 \def\refname{Literaturverzeichnis}%
840 \def\remarkname{Anmerkung}%
841 \def\seename{siehe}%
842 \def\solutionname{L\"osung}%
843 \def\subclassname{{\it Subject Classifications\/}:}%
844 \def\tablename{Tabelle}%
845%\def\theoremname{Theorem}%
846}
847
848\def\getsto{\mathrel{\mathchoice {\vcenter{\offinterlineskip
849\halign{\hfil
850$\displaystyle##$\hfil\cr\gets\cr\to\cr}}}
851{\vcenter{\offinterlineskip\halign{\hfil$\textstyle##$\hfil\cr\gets
852\cr\to\cr}}}
853{\vcenter{\offinterlineskip\halign{\hfil$\scriptstyle##$\hfil\cr\gets
854\cr\to\cr}}}
855{\vcenter{\offinterlineskip\halign{\hfil$\scriptscriptstyle##$\hfil\cr
856\gets\cr\to\cr}}}}}
857\def\lid{\mathrel{\mathchoice {\vcenter{\offinterlineskip\halign{\hfil
858$\displaystyle##$\hfil\cr<\cr\noalign{\vskip1.2\p@}=\cr}}}
859{\vcenter{\offinterlineskip\halign{\hfil$\textstyle##$\hfil\cr<\cr
860\noalign{\vskip1.2\p@}=\cr}}}
861{\vcenter{\offinterlineskip\halign{\hfil$\scriptstyle##$\hfil\cr<\cr
862\noalign{\vskip\p@}=\cr}}}
863{\vcenter{\offinterlineskip\halign{\hfil$\scriptscriptstyle##$\hfil\cr
864<\cr
865\noalign{\vskip0.9\p@}=\cr}}}}}
866\def\gid{\mathrel{\mathchoice {\vcenter{\offinterlineskip\halign{\hfil
867$\displaystyle##$\hfil\cr>\cr\noalign{\vskip1.2\p@}=\cr}}}
868{\vcenter{\offinterlineskip\halign{\hfil$\textstyle##$\hfil\cr>\cr
869\noalign{\vskip1.2\p@}=\cr}}}
870{\vcenter{\offinterlineskip\halign{\hfil$\scriptstyle##$\hfil\cr>\cr
871\noalign{\vskip\p@}=\cr}}}
872{\vcenter{\offinterlineskip\halign{\hfil$\scriptscriptstyle##$\hfil\cr
873>\cr
874\noalign{\vskip0.9\p@}=\cr}}}}}
875\def\grole{\mathrel{\mathchoice {\vcenter{\offinterlineskip
876\halign{\hfil
877$\displaystyle##$\hfil\cr>\cr\noalign{\vskip-\p@}<\cr}}}
878{\vcenter{\offinterlineskip\halign{\hfil$\textstyle##$\hfil\cr
879>\cr\noalign{\vskip-\p@}<\cr}}}
880{\vcenter{\offinterlineskip\halign{\hfil$\scriptstyle##$\hfil\cr
881>\cr\noalign{\vskip-0.8\p@}<\cr}}}
882{\vcenter{\offinterlineskip\halign{\hfil$\scriptscriptstyle##$\hfil\cr
883>\cr\noalign{\vskip-0.3\p@}<\cr}}}}}
884\def\bbbr{{\rm I\!R}} %reelle Zahlen
885\def\bbbm{{\rm I\!M}}
886\def\bbbn{{\rm I\!N}} %natuerliche Zahlen
887\def\bbbf{{\rm I\!F}}
888\def\bbbh{{\rm I\!H}}
889\def\bbbk{{\rm I\!K}}
890\def\bbbp{{\rm I\!P}}
891\def\bbbone{{\mathchoice {\rm 1\mskip-4mu l} {\rm 1\mskip-4mu l}
892{\rm 1\mskip-4.5mu l} {\rm 1\mskip-5mu l}}}
893\def\bbbc{{\mathchoice {\setbox0=\hbox{$\displaystyle\rm C$}\hbox{\hbox
894to\z@{\kern0.4\wd0\vrule\@height0.9\ht0\hss}\box0}}
895{\setbox0=\hbox{$\textstyle\rm C$}\hbox{\hbox
896to\z@{\kern0.4\wd0\vrule\@height0.9\ht0\hss}\box0}}
897{\setbox0=\hbox{$\scriptstyle\rm C$}\hbox{\hbox
898to\z@{\kern0.4\wd0\vrule\@height0.9\ht0\hss}\box0}}
899{\setbox0=\hbox{$\scriptscriptstyle\rm C$}\hbox{\hbox
900to\z@{\kern0.4\wd0\vrule\@height0.9\ht0\hss}\box0}}}}
901\def\bbbq{{\mathchoice {\setbox0=\hbox{$\displaystyle\rm
902Q$}\hbox{\raise
9030.15\ht0\hbox to\z@{\kern0.4\wd0\vrule\@height0.8\ht0\hss}\box0}}
904{\setbox0=\hbox{$\textstyle\rm Q$}\hbox{\raise
9050.15\ht0\hbox to\z@{\kern0.4\wd0\vrule\@height0.8\ht0\hss}\box0}}
906{\setbox0=\hbox{$\scriptstyle\rm Q$}\hbox{\raise
9070.15\ht0\hbox to\z@{\kern0.4\wd0\vrule\@height0.7\ht0\hss}\box0}}
908{\setbox0=\hbox{$\scriptscriptstyle\rm Q$}\hbox{\raise
9090.15\ht0\hbox to\z@{\kern0.4\wd0\vrule\@height0.7\ht0\hss}\box0}}}}
910\def\bbbt{{\mathchoice {\setbox0=\hbox{$\displaystyle\rm
911T$}\hbox{\hbox to\z@{\kern0.3\wd0\vrule\@height0.9\ht0\hss}\box0}}
912{\setbox0=\hbox{$\textstyle\rm T$}\hbox{\hbox
913to\z@{\kern0.3\wd0\vrule\@height0.9\ht0\hss}\box0}}
914{\setbox0=\hbox{$\scriptstyle\rm T$}\hbox{\hbox
915to\z@{\kern0.3\wd0\vrule\@height0.9\ht0\hss}\box0}}
916{\setbox0=\hbox{$\scriptscriptstyle\rm T$}\hbox{\hbox
917to\z@{\kern0.3\wd0\vrule\@height0.9\ht0\hss}\box0}}}}
918\def\bbbs{{\mathchoice
919{\setbox0=\hbox{$\displaystyle     \rm S$}\hbox{\raise0.5\ht0\hbox
920to\z@{\kern0.35\wd0\vrule\@height0.45\ht0\hss}\hbox
921to\z@{\kern0.55\wd0\vrule\@height0.5\ht0\hss}\box0}}
922{\setbox0=\hbox{$\textstyle        \rm S$}\hbox{\raise0.5\ht0\hbox
923to\z@{\kern0.35\wd0\vrule\@height0.45\ht0\hss}\hbox
924to\z@{\kern0.55\wd0\vrule\@height0.5\ht0\hss}\box0}}
925{\setbox0=\hbox{$\scriptstyle      \rm S$}\hbox{\raise0.5\ht0\hbox
926to\z@{\kern0.35\wd0\vrule\@height0.45\ht0\hss}\raise0.05\ht0\hbox
927to\z@{\kern0.5\wd0\vrule\@height0.45\ht0\hss}\box0}}
928{\setbox0=\hbox{$\scriptscriptstyle\rm S$}\hbox{\raise0.5\ht0\hbox
929to\z@{\kern0.4\wd0\vrule\@height0.45\ht0\hss}\raise0.05\ht0\hbox
930to\z@{\kern0.55\wd0\vrule\@height0.45\ht0\hss}\box0}}}}
931\def\bbbz{{\mathchoice {\hbox{$\textstyle\sf Z\kern-0.4em Z$}}
932{\hbox{$\textstyle\sf Z\kern-0.4em Z$}}
933{\hbox{$\scriptstyle\sf Z\kern-0.3em Z$}}
934{\hbox{$\scriptscriptstyle\sf Z\kern-0.2em Z$}}}}
935
936\let\ts\,
937
938\setlength \labelsep     {5\p@}
939\setlength\leftmargini   {17\p@}
940\setlength\leftmargin    {\leftmargini}
941\setlength\leftmarginii  {\leftmargini}
942\setlength\leftmarginiii {\leftmargini}
943\setlength\leftmarginiv  {\leftmargini}
944\setlength\labelwidth    {\leftmargini}
945\addtolength\labelwidth{-\labelsep}
946
947\def\@listI{\leftmargin\leftmargini
948        \parsep=\parskip
949        \topsep=\medskipamount
950        \itemsep=\parskip \advance\itemsep by -\parsep}
951\let\@listi\@listI
952\@listi
953
954\def\@listii{\leftmargin\leftmarginii
955        \labelwidth\leftmarginii
956        \advance\labelwidth by -\labelsep
957        \parsep=\parskip
958        \topsep=\z@
959        \itemsep=\parskip
960        \advance\itemsep by -\parsep}
961
962\def\@listiii{\leftmargin\leftmarginiii
963        \labelwidth\leftmarginiii\advance\labelwidth by -\labelsep
964        \parsep=\parskip
965        \topsep=\z@
966        \itemsep=\parskip
967        \advance\itemsep by -\parsep
968        \partopsep=\topsep}
969
970\setlength\arraycolsep{1.5\p@}
971\setlength\tabcolsep{1.5\p@}
972
973\def\tableofcontents{\@restonecolfalse\if@twocolumn\@restonecoltrue\onecolumn
974 \fi\chapter*{\contentsname \@mkboth{{\contentsname}}{{\contentsname}}}
975 \@starttoc{toc}\if@restonecol\twocolumn\fi}
976
977\setcounter{tocdepth}{2}
978
979\def\l@part#1#2{\addpenalty{\@secpenalty}%
980   \addvspace{2em \@plus\p@}%
981   \begingroup
982     \parindent \z@
983     \rightskip \z@ \@plus 5em
984     \hrule\vskip5\p@
985     \bfseries\boldmath
986     \leavevmode
987     #1\par
988     \vskip5\p@
989     \hrule
990     \vskip\p@
991     \nobreak
992   \endgroup}
993
994\def\@dotsep{2}
995
996\def\addnumcontentsmark#1#2#3{%
997\addtocontents{#1}{\protect\contentsline{#2}{\protect\numberline
998                                    {\thechapter}#3}{\thepage}}}
999\def\addcontentsmark#1#2#3{%
1000\addtocontents{#1}{\protect\contentsline{#2}{#3}{\thepage}}}
1001\def\addcontentsmarkwop#1#2#3{%
1002\addtocontents{#1}{\protect\contentsline{#2}{#3}{0}}}
1003
1004\def\@adcmk[#1]{\ifcase #1 \or
1005\def\@gtempa{\addnumcontentsmark}%
1006  \or    \def\@gtempa{\addcontentsmark}%
1007  \or    \def\@gtempa{\addcontentsmarkwop}%
1008  \fi\@gtempa{toc}{chapter}}
1009\def\addtocmark{\@ifnextchar[{\@adcmk}{\@adcmk[3]}}
1010
1011\def\l@chapter#1#2{\par\addpenalty{-\@highpenalty}
1012 \addvspace{1.0em \@plus \p@}
1013 \@tempdima \tocchpnum \begingroup
1014 \parindent \z@ \rightskip \@tocrmarg
1015 \advance\rightskip by \z@ \@plus 2cm
1016 \parfillskip -\rightskip \pretolerance=10000
1017 \leavevmode \advance\leftskip\@tempdima \hskip -\leftskip
1018 {\bfseries\boldmath#1}\ifx0#2\hfil\null
1019 \else
1020    \nobreak
1021    \leaders\hbox{$\m@th \mkern \@dotsep mu\hbox{.}\mkern
1022    \@dotsep mu$}\hfill
1023    \nobreak\hbox to\@pnumwidth{\hfil #2}%
1024 \fi\par
1025 \penalty\@highpenalty \endgroup}
1026
1027\newdimen\tocchpnum
1028\newdimen\tocsecnum
1029\newdimen\tocsectotal
1030\newdimen\tocsubsecnum
1031\newdimen\tocsubsectotal
1032\newdimen\tocsubsubsecnum
1033\newdimen\tocsubsubsectotal
1034\newdimen\tocparanum
1035\newdimen\tocparatotal
1036\newdimen\tocsubparanum
1037\tocchpnum=20\p@            % chapter {\bf 88.} \@plus 5.3\p@
1038\tocsecnum=22.5\p@          % section 88.8. plus 4.722\p@
1039\tocsubsecnum=30.5\p@       % subsection 88.8.8 plus 4.944\p@
1040\tocsubsubsecnum=38\p@      % subsubsection 88.8.8.8 plus 4.666\p@
1041\tocparanum=45\p@           % paragraph 88.8.8.8.8 plus 3.888\p@
1042\tocsubparanum=53\p@        % subparagraph 88.8.8.8.8.8 plus 4.11\p@
1043\def\calctocindent{%
1044\tocsectotal=\tocchpnum
1045\advance\tocsectotal by\tocsecnum
1046\tocsubsectotal=\tocsectotal
1047\advance\tocsubsectotal by\tocsubsecnum
1048\tocsubsubsectotal=\tocsubsectotal
1049\advance\tocsubsubsectotal by\tocsubsubsecnum
1050\tocparatotal=\tocsubsubsectotal
1051\advance\tocparatotal by\tocparanum}
1052\calctocindent
1053
1054\def\@dottedtocline#1#2#3#4#5{%
1055  \ifnum #1>\c@tocdepth \else
1056    \vskip \z@ \@plus.2\p@
1057    {\leftskip #2\relax \rightskip \@tocrmarg \advance\rightskip by \z@ \@plus 2cm
1058               \parfillskip -\rightskip \pretolerance=10000
1059     \parindent #2\relax\@afterindenttrue
1060     \interlinepenalty\@M
1061     \leavevmode
1062     \@tempdima #3\relax
1063     \advance\leftskip \@tempdima \null\nobreak\hskip -\leftskip
1064     {#4}\nobreak
1065     \leaders\hbox{$\m@th
1066        \mkern \@dotsep mu\hbox{.}\mkern \@dotsep
1067        mu$}\hfill
1068     \nobreak
1069     \hb@xt@\@pnumwidth{\hfil\normalfont \normalcolor #5}%
1070     \par}%
1071  \fi}
1072%
1073\def\l@section{\@dottedtocline{1}{\tocchpnum}{\tocsecnum}}
1074\def\l@subsection{\@dottedtocline{2}{\tocsectotal}{\tocsubsecnum}}
1075\def\l@subsubsection{\@dottedtocline{3}{\tocsubsectotal}{\tocsubsubsecnum}}
1076\def\l@paragraph{\@dottedtocline{4}{\tocsubsubsectotal}{\tocparanum}}
1077\def\l@subparagraph{\@dottedtocline{5}{\tocparatotal}{\tocsubparanum}}
1078
1079\renewcommand\listoffigures{%
1080    \chapter*{\listfigurename
1081      \@mkboth{\listfigurename}{\listfigurename}}%
1082    \@starttoc{lof}%
1083    }
1084
1085\renewcommand\listoftables{%
1086    \chapter*{\listtablename
1087      \@mkboth{\listtablename}{\listtablename}}%
1088    \@starttoc{lot}%
1089    }
1090
1091\renewcommand\footnoterule{%
1092  \kern-3\p@
1093  \hrule\@width 50\p@
1094  \kern2.6\p@}
1095
1096\newdimen\foot@parindent
1097\foot@parindent 10.83\p@
1098
1099\AtBeginDocument{%
1100\long\def\@makefntext#1{\@setpar{\@@par\@tempdima \hsize
1101         \advance\@tempdima-\foot@parindent\parshape\@ne\foot@parindent
1102         \@tempdima}\par
1103         \parindent \foot@parindent\noindent \hbox to \z@{%
1104         \hss\hss$^{\@thefnmark}$ }#1}}
1105
1106\if@spthms
1107% Definition of the "\spnewtheorem" command.
1108%
1109% Usage:
1110%
1111%     \spnewtheorem{env_nam}{caption}[within]{cap_font}{body_font}
1112% or  \spnewtheorem{env_nam}[numbered_like]{caption}{cap_font}{body_font}
1113% or  \spnewtheorem*{env_nam}{caption}{cap_font}{body_font}
1114%
1115% New is "cap_font" and "body_font". It stands for
1116% fontdefinition of the caption and the text itself.
1117%
1118% "\spnewtheorem*" gives a theorem without number.
1119%
1120% A defined spnewthoerem environment is used as described
1121% by Lamport.
1122%
1123%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1124
1125\def\@thmcountersep{.}
1126\def\@thmcounterend{.}
1127\newcommand\nocaption{\noexpand\@gobble}
1128\newdimen\spthmsep \spthmsep=3pt
1129
1130\def\spnewtheorem{\@ifstar{\@sthm}{\@Sthm}}
1131
1132% definition of \spnewtheorem with number
1133
1134\def\@spnthm#1#2{%
1135  \@ifnextchar[{\@spxnthm{#1}{#2}}{\@spynthm{#1}{#2}}}
1136\def\@Sthm#1{\@ifnextchar[{\@spothm{#1}}{\@spnthm{#1}}}
1137
1138\def\@spxnthm#1#2[#3]#4#5{\expandafter\@ifdefinable\csname #1\endcsname
1139   {\@definecounter{#1}\@addtoreset{#1}{#3}%
1140   \expandafter\xdef\csname the#1\endcsname{\expandafter\noexpand
1141     \csname the#3\endcsname \noexpand\@thmcountersep \@thmcounter{#1}}%
1142   \expandafter\xdef\csname #1name\endcsname{#2}%
1143   \global\@namedef{#1}{\@spthm{#1}{\csname #1name\endcsname}{#4}{#5}}%
1144                              \global\@namedef{end#1}{\@endtheorem}}}
1145
1146\def\@spynthm#1#2#3#4{\expandafter\@ifdefinable\csname #1\endcsname
1147   {\@definecounter{#1}%
1148   \expandafter\xdef\csname the#1\endcsname{\@thmcounter{#1}}%
1149   \expandafter\xdef\csname #1name\endcsname{#2}%
1150   \global\@namedef{#1}{\@spthm{#1}{\csname #1name\endcsname}{#3}{#4}}%
1151                               \global\@namedef{end#1}{\@endtheorem}}}
1152
1153\def\@spothm#1[#2]#3#4#5{%
1154  \@ifundefined{c@#2}{\@latexerr{No theorem environment `#2' defined}\@eha}%
1155  {\expandafter\@ifdefinable\csname #1\endcsname
1156  {\global\@namedef{the#1}{\@nameuse{the#2}}%
1157  \expandafter\xdef\csname #1name\endcsname{#3}%
1158  \global\@namedef{#1}{\@spthm{#2}{\csname #1name\endcsname}{#4}{#5}}%
1159  \global\@namedef{end#1}{\@endtheorem}}}}
1160
1161\def\@spthm#1#2#3#4{\topsep 7\p@ \@plus2\p@ \@minus4\p@
1162\labelsep=\spthmsep\refstepcounter{#1}%
1163\@ifnextchar[{\@spythm{#1}{#2}{#3}{#4}}{\@spxthm{#1}{#2}{#3}{#4}}}
1164
1165\def\@spxthm#1#2#3#4{\@spbegintheorem{#2}{\csname the#1\endcsname}{#3}{#4}%
1166                    \ignorespaces}
1167
1168\def\@spythm#1#2#3#4[#5]{\@spopargbegintheorem{#2}{\csname
1169       the#1\endcsname}{#5}{#3}{#4}\ignorespaces}
1170
1171\def\normalthmheadings{\def\@spbegintheorem##1##2##3##4{\trivlist
1172                 \item[\hskip\labelsep{##3##1\ ##2\@thmcounterend}]##4}
1173\def\@spopargbegintheorem##1##2##3##4##5{\trivlist
1174      \item[\hskip\labelsep{##4##1\ ##2}]{##4(##3)\@thmcounterend\ }##5}}
1175\normalthmheadings
1176
1177\def\reversethmheadings{\def\@spbegintheorem##1##2##3##4{\trivlist
1178                 \item[\hskip\labelsep{##3##2\ ##1\@thmcounterend}]##4}
1179\def\@spopargbegintheorem##1##2##3##4##5{\trivlist
1180      \item[\hskip\labelsep{##4##2\ ##1}]{##4(##3)\@thmcounterend\ }##5}}
1181
1182% definition of \spnewtheorem* without number
1183
1184\def\@sthm#1#2{\@Ynthm{#1}{#2}}
1185
1186\def\@Ynthm#1#2#3#4{\expandafter\@ifdefinable\csname #1\endcsname
1187   {\global\@namedef{#1}{\@Thm{\csname #1name\endcsname}{#3}{#4}}%
1188    \expandafter\xdef\csname #1name\endcsname{#2}%
1189    \global\@namedef{end#1}{\@endtheorem}}}
1190
1191\def\@Thm#1#2#3{\topsep 7\p@ \@plus2\p@ \@minus4\p@
1192\@ifnextchar[{\@Ythm{#1}{#2}{#3}}{\@Xthm{#1}{#2}{#3}}}
1193
1194\def\@Xthm#1#2#3{\@Begintheorem{#1}{#2}{#3}\ignorespaces}
1195
1196\def\@Ythm#1#2#3[#4]{\@Opargbegintheorem{#1}
1197       {#4}{#2}{#3}\ignorespaces}
1198
1199\def\@Begintheorem#1#2#3{#3\trivlist
1200                           \item[\hskip\labelsep{#2#1\@thmcounterend}]}
1201
1202\def\@Opargbegintheorem#1#2#3#4{#4\trivlist
1203      \item[\hskip\labelsep{#3#1}]{#3(#2)\@thmcounterend\ }}
1204
1205% initialize theorem environment
1206
1207\if@envcntshowhiercnt % show hierarchy counter
1208   \def\@thmcountersep{.}
1209   \spnewtheorem{theorem}{Theorem}[\envankh]{\bfseries}{\itshape}
1210   \@addtoreset{theorem}{chapter}
1211\else          % theorem counter only
1212   \spnewtheorem{theorem}{Theorem}{\bfseries}{\itshape}
1213   \if@envcntreset
1214      \@addtoreset{theorem}{chapter}
1215      \if@envcntresetsect
1216         \@addtoreset{theorem}{section}
1217      \fi
1218   \fi
1219\fi
1220
1221%definition of divers theorem environments
1222\spnewtheorem*{claim}{Claim}{\itshape}{\rmfamily}
1223\spnewtheorem*{proof}{Proof}{\itshape}{\rmfamily}
1224%
1225\if@envcntsame % all environments like "Theorem" - using its counter
1226   \def\spn@wtheorem#1#2#3#4{\@spothm{#1}[theorem]{#2}{#3}{#4}}
1227\else % all environments with their own counter
1228   \if@envcntshowhiercnt % show hierarchy counter
1229      \def\spn@wtheorem#1#2#3#4{\@spxnthm{#1}{#2}[\envankh]{#3}{#4}}
1230   \else          % environment counter only
1231      \if@envcntreset % environment counter is reset each section
1232         \if@envcntresetsect
1233            \def\spn@wtheorem#1#2#3#4{\@spynthm{#1}{#2}{#3}{#4}
1234             \@addtoreset{#1}{chapter}\@addtoreset{#1}{section}}
1235         \else
1236            \def\spn@wtheorem#1#2#3#4{\@spynthm{#1}{#2}{#3}{#4}
1237                                      \@addtoreset{#1}{chapter}}
1238         \fi
1239      \else
1240         \let\spn@wtheorem=\@spynthm
1241      \fi
1242   \fi
1243\fi
1244%
1245\let\spdefaulttheorem=\spn@wtheorem
1246%
1247\spn@wtheorem{case}{Case}{\itshape}{\rmfamily}
1248\spn@wtheorem{conjecture}{Conjecture}{\itshape}{\rmfamily}
1249\spn@wtheorem{corollary}{Corollary}{\bfseries}{\itshape}
1250\spn@wtheorem{definition}{Definition}{\bfseries}{\itshape}
1251\spn@wtheorem{example}{Example}{\itshape}{\rmfamily}
1252\spn@wtheorem{exercise}{Exercise}{\bfseries}{\rmfamily}
1253\spn@wtheorem{lemma}{Lemma}{\bfseries}{\itshape}
1254\spn@wtheorem{note}{Note}{\itshape}{\rmfamily}
1255\spn@wtheorem{problem}{Problem}{\bfseries}{\rmfamily}
1256\spn@wtheorem{property}{Property}{\itshape}{\rmfamily}
1257\spn@wtheorem{proposition}{Proposition}{\bfseries}{\itshape}
1258\spn@wtheorem{question}{Question}{\itshape}{\rmfamily}
1259\spn@wtheorem{solution}{Solution}{\bfseries}{\rmfamily}
1260\spn@wtheorem{remark}{Remark}{\itshape}{\rmfamily}
1261%
1262\newenvironment{theopargself}
1263    {\def\@spopargbegintheorem##1##2##3##4##5{\trivlist
1264         \item[\hskip\labelsep{##4##1\ ##2}]{##4##3\@thmcounterend\ }##5}
1265     \def\@Opargbegintheorem##1##2##3##4{##4\trivlist
1266         \item[\hskip\labelsep{##3##1}]{##3##2\@thmcounterend\ }}}{}
1267\newenvironment{theopargself*}
1268    {\def\@spopargbegintheorem##1##2##3##4##5{\trivlist
1269         \item[\hskip\labelsep{##4##1\ ##2}]{\hspace*{-\labelsep}##4##3\@thmcounterend}##5}
1270     \def\@Opargbegintheorem##1##2##3##4{##4\trivlist
1271         \item[\hskip\labelsep{##3##1}]{\hspace*{-\labelsep}##3##2\@thmcounterend}}}{}
1272%
1273\spnewtheorem{prob}{\nocaption}[chapter]{\bfseries}{\rmfamily}
1274\newcommand{\probref}[1]{\textbf{\ref{#1}} }
1275\newenvironment{sol}{\par\addvspace{6pt}\noindent\probref}{\par\addvspace{6pt}}
1276%
1277\fi
1278
1279\def\@takefromreset#1#2{%
1280    \def\@tempa{#1}%
1281    \let\@tempd\@elt
1282    \def\@elt##1{%
1283        \def\@tempb{##1}%
1284        \ifx\@tempa\@tempb\else
1285            \@addtoreset{##1}{#2}%
1286        \fi}%
1287    \expandafter\expandafter\let\expandafter\@tempc\csname cl@#2\endcsname
1288    \expandafter\def\csname cl@#2\endcsname{}%
1289    \@tempc
1290    \let\@elt\@tempd}
1291
1292% redefininition of the captions for "figure" and "table" environments
1293%
1294\@ifundefined{floatlegendstyle}{\def\floatlegendstyle{\bfseries}}{}
1295\def\floatcounterend{.\ }
1296\def\capstrut{\vrule\@width\z@\@height\topskip}
1297\@ifundefined{captionstyle}{\def\captionstyle{\normalfont\small}}{}
1298\@ifundefined{instindent}{\newdimen\instindent}{}
1299
1300\long\def\@caption#1[#2]#3{\par\addcontentsline{\csname
1301  ext@#1\endcsname}{#1}{\protect\numberline{\csname
1302  the#1\endcsname}{\ignorespaces #2}}\begingroup
1303    \@parboxrestore\if@minipage\@setminipage\fi
1304    \@makecaption{\csname fnum@#1\endcsname}{\ignorespaces #3}\par
1305  \endgroup}
1306
1307\def\twocaptionwidth#1#2{\def\first@capwidth{#1}\def\second@capwidth{#2}}
1308% Default: .46\textwidth
1309\twocaptionwidth{.46\textwidth}{.46\textwidth}
1310
1311\def\leftcaption{\refstepcounter\@captype\@dblarg%
1312            {\@leftcaption\@captype}}
1313
1314\def\rightcaption{\refstepcounter\@captype\@dblarg%
1315            {\@rightcaption\@captype}}
1316
1317\long\def\@leftcaption#1[#2]#3{\addcontentsline{\csname
1318  ext@#1\endcsname}{#1}{\protect\numberline{\csname
1319  the#1\endcsname}{\ignorespaces #2}}\begingroup
1320    \@parboxrestore
1321    \vskip\figcapgap
1322    \@maketwocaptions{\csname fnum@#1\endcsname}{\ignorespaces #3}%
1323    {\first@capwidth}\ignorespaces\hspace{.073\textwidth}\hfill%
1324  \endgroup}
1325
1326\long\def\@rightcaption#1[#2]#3{\addcontentsline{\csname
1327  ext@#1\endcsname}{#1}{\protect\numberline{\csname
1328  the#1\endcsname}{\ignorespaces #2}}\begingroup
1329    \@parboxrestore
1330    \@maketwocaptions{\csname fnum@#1\endcsname}{\ignorespaces #3}%
1331    {\second@capwidth}\par
1332  \endgroup}
1333
1334\long\def\@maketwocaptions#1#2#3{%
1335   \parbox[t]{#3}{{\floatlegendstyle #1\floatcounterend}#2}}
1336
1337\def\fig@pos{l}
1338\newcommand{\leftfigure}[2][\fig@pos]{\makebox[.4635\textwidth][#1]{#2}}
1339\let\rightfigure\leftfigure
1340
1341\newdimen\figgap\figgap=0.5cm  % hgap between figure and sidecaption
1342%
1343\long\def\@makesidecaption#1#2{%
1344   \setbox0=\vbox{\hsize=\@tempdimb
1345                  \captionstyle{\floatlegendstyle
1346                                         #1\floatcounterend}#2}%
1347   \ifdim\instindent<\z@
1348      \ifdim\ht0>-\instindent
1349         \advance\instindent by\ht0
1350         \typeout{^^JClass-Warning: Legend of \string\sidecaption\space for
1351                     \@captype\space\csname the\@captype\endcsname
1352                  ^^Jis \the\instindent\space taller than the corresponding float -
1353                  ^^Jyou'd better switch the environment. }%
1354         \instindent\z@
1355      \fi
1356   \else
1357      \ifdim\ht0<\instindent
1358         \advance\instindent by-\ht0
1359         \advance\instindent by-\dp0\relax
1360         \advance\instindent by\topskip
1361         \advance\instindent by-11\p@
1362      \else
1363         \advance\instindent by-\ht0
1364         \instindent=-\instindent
1365         \typeout{^^JClass-Warning: Legend of \string\sidecaption\space for
1366                     \@captype\space\csname the\@captype\endcsname
1367                  ^^Jis \the\instindent\space taller than the corresponding float -
1368                  ^^Jyou'd better switch the environment. }%
1369         \instindent\z@
1370      \fi
1371   \fi
1372   \parbox[b]{\@tempdimb}{\captionstyle{\floatlegendstyle
1373                                        #1\floatcounterend}#2%
1374                          \ifdim\instindent>\z@ \\
1375                               \vrule\@width\z@\@height\instindent
1376                                     \@depth\z@
1377                          \fi}}
1378\def\sidecaption{\@ifnextchar[\sidec@ption{\sidec@ption[b]}}
1379\def\sidec@ption[#1]#2\caption{%
1380\setbox\@tempboxa=\hbox{\ignorespaces#2\unskip}%
1381\if@twocolumn
1382 \ifdim\hsize<\textwidth\else
1383   \ifdim\wd\@tempboxa<\columnwidth
1384      \typeout{Double column float fits into single column -
1385            ^^Jyou'd better switch the environment. }%
1386   \fi
1387 \fi
1388\fi
1389  \instindent=\ht\@tempboxa
1390  \advance\instindent by\dp\@tempboxa
1391\if t#1
1392\else
1393  \instindent=-\instindent
1394\fi
1395\@tempdimb=\hsize
1396\advance\@tempdimb by-\figgap
1397\advance\@tempdimb by-\wd\@tempboxa
1398\ifdim\@tempdimb<3cm
1399   \ClassWarning{SVMono}{\string\sidecaption: No sufficient room for the legend;
1400             ^^Jusing normal \string\caption}%
1401   \unhbox\@tempboxa
1402   \let\@capcommand=\@caption
1403\else
1404   \ifdim\@tempdimb<4.5cm
1405      \ClassWarning{SVMono}{\string\sidecaption: Room for the legend very narrow;
1406               ^^Jusing \string\raggedright}%
1407      \toks@\expandafter{\captionstyle\sloppy
1408                         \rightskip=\z@\@plus6mm\relax}%
1409      \def\captionstyle{\the\toks@}%
1410   \fi
1411   \let\@capcommand=\@sidecaption
1412   \leavevmode
1413   \unhbox\@tempboxa
1414   \hfill
1415\fi
1416\refstepcounter\@captype
1417\@dblarg{\@capcommand\@captype}}
1418\long\def\@sidecaption#1[#2]#3{\addcontentsline{\csname
1419  ext@#1\endcsname}{#1}{\protect\numberline{\csname
1420  the#1\endcsname}{\ignorespaces #2}}\begingroup
1421    \@parboxrestore
1422    \@makesidecaption{\csname fnum@#1\endcsname}{\ignorespaces #3}\par
1423  \endgroup}
1424%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1425
1426\def\fig@type{figure}
1427
1428\def\leftlegendglue{\hfil}
1429\newdimen\figcapgap\figcapgap=5\p@   % vgap between figure and caption
1430\newdimen\tabcapgap\tabcapgap=5.5\p@ % vgap between caption and table
1431
1432\long\def\@makecaption#1#2{%
1433 \captionstyle
1434 \ifx\@captype\fig@type
1435   \vskip\figcapgap
1436 \fi
1437 \setbox\@tempboxa\hbox{{\floatlegendstyle #1\floatcounterend}%
1438 \capstrut #2}%
1439 \ifdim \wd\@tempboxa >\hsize
1440   {\floatlegendstyle #1\floatcounterend}\capstrut #2\par
1441 \else
1442   \hbox to\hsize{\leftlegendglue\unhbox\@tempboxa\hfil}%
1443 \fi
1444 \ifx\@captype\fig@type\else
1445   \vskip\tabcapgap
1446 \fi}
1447
1448\newcounter{merk}
1449
1450\def\endfigure{\resetsubfig\end@float}
1451
1452\@namedef{endfigure*}{\resetsubfig\end@dblfloat}
1453
1454\def\resetsubfig{\global\let\last@subfig=\undefined}
1455
1456\def\r@setsubfig{\xdef\last@subfig{\number\value{figure}}%
1457\setcounter{figure}{\value{merk}}%
1458\setcounter{merk}{0}}
1459
1460\def\subfigures{\refstepcounter{figure}%
1461   \@tempcnta=\value{merk}%
1462   \setcounter{merk}{\value{figure}}%
1463   \setcounter{figure}{\the\@tempcnta}%
1464   \def\thefigure{\if@numart\else\thechapter.\fi
1465   \@arabic\c@merk\alph{figure}}%
1466   \let\resetsubfig=\r@setsubfig}
1467
1468\def\samenumber{\addtocounter{\@captype}{-1}%
1469\@ifundefined{last@subfig}{}{\setcounter{merk}{\last@subfig}}}
1470
1471% redefinition of the "bibliography" environment
1472%
1473\def\biblstarthook#1{\gdef\biblst@rthook{#1}}
1474%
1475\AtBeginDocument{%
1476\ifx\secbibl\undefined
1477   \def\bibsection{\chapter*{\refname}\markboth{\refname}{\refname}%
1478      \addcontentsline{toc}{chapter}{\refname}%
1479      \csname biblst@rthook\endcsname}
1480\else
1481   \def\bibsection{\section*{\refname}\markright{\refname}%
1482      \addcontentsline{toc}{section}{\refname}%
1483      \csname biblst@rthook\endcsname}
1484\fi}
1485\ifx\oribibl\undefined % Springer way of life
1486   \renewenvironment{thebibliography}[1]{\bibsection
1487         \global\let\biblst@rthook=\undefined
1488         \def\@biblabel##1{##1.}
1489         \small
1490         \list{\@biblabel{\@arabic\c@enumiv}}%
1491              {\settowidth\labelwidth{\@biblabel{#1}}%
1492               \leftmargin\labelwidth
1493               \advance\leftmargin\labelsep
1494               \if@openbib
1495                 \advance\leftmargin\bibindent
1496                 \itemindent -\bibindent
1497                 \listparindent \itemindent
1498                 \parsep \z@
1499               \fi
1500               \usecounter{enumiv}%
1501               \let\p@enumiv\@empty
1502               \renewcommand\theenumiv{\@arabic\c@enumiv}}%
1503         \if@openbib
1504           \renewcommand\newblock{\par}%
1505         \else
1506           \renewcommand\newblock{\hskip .11em \@plus.33em \@minus.07em}%
1507         \fi
1508         \sloppy\clubpenalty4000\widowpenalty4000%
1509         \sfcode`\.=\@m}
1510        {\def\@noitemerr
1511          {\@latex@warning{Empty `thebibliography' environment}}%
1512         \endlist}
1513   \def\@lbibitem[#1]#2{\item[{[#1]}\hfill]\if@filesw
1514        {\let\protect\noexpand\immediate
1515        \write\@auxout{\string\bibcite{#2}{#1}}}\fi\ignorespaces}
1516\else % original bibliography is required
1517   \let\bibname=\refname
1518   \renewenvironment{thebibliography}[1]
1519     {\chapter*{\bibname
1520        \@mkboth{\bibname}{\bibname}}%
1521      \list{\@biblabel{\@arabic\c@enumiv}}%
1522           {\settowidth\labelwidth{\@biblabel{#1}}%
1523            \leftmargin\labelwidth
1524            \advance\leftmargin\labelsep
1525            \@openbib@code
1526            \usecounter{enumiv}%
1527            \let\p@enumiv\@empty
1528            \renewcommand\theenumiv{\@arabic\c@enumiv}}%
1529      \sloppy
1530      \clubpenalty4000
1531      \@clubpenalty \clubpenalty
1532      \widowpenalty4000%
1533      \sfcode`\.\@m}
1534     {\def\@noitemerr
1535       {\@latex@warning{Empty `thebibliography' environment}}%
1536      \endlist}
1537\fi
1538
1539\let\if@threecolind\iffalse
1540\def\threecolindex{\let\if@threecolind\iftrue}
1541\def\indexstarthook#1{\gdef\indexst@rthook{#1}}
1542\renewenvironment{theindex}
1543               {\if@twocolumn
1544                  \@restonecolfalse
1545                \else
1546                  \@restonecoltrue
1547                \fi
1548                \columnseprule \z@
1549                \columnsep 1cc
1550                \@nobreaktrue
1551                \if@threecolind
1552                   \begin{multicols}{3}[\chapter*{\indexname}%
1553                \else
1554                   \begin{multicols}{2}[\chapter*{\indexname}%
1555                \fi
1556                {\csname indexst@rthook\endcsname}]%
1557                \global\let\indexst@rthook=\undefined
1558                \markboth{\indexname}{\indexname}%
1559                \addcontentsline{toc}{chapter}{\indexname}%
1560                \flushbottom
1561                \parindent\z@
1562                \rightskip\z@ \@plus 40\p@
1563                \parskip\z@ \@plus .3\p@\relax
1564                \flushbottom
1565                \let\item\@idxitem
1566                \def\,{\relax\ifmmode\mskip\thinmuskip
1567                             \else\hskip0.2em\ignorespaces\fi}%
1568                \normalfont\small}
1569               {\end{multicols}
1570                \global\let\if@threecolind\iffalse
1571                \if@restonecol\onecolumn\else\clearpage\fi}
1572
1573\def\idxquad{\hskip 10\p@}% space that divides entry from number
1574
1575\def\@idxitem{\par\setbox0=\hbox{--\,--\,--\enspace}%
1576                  \hangindent\wd0\relax}
1577
1578\def\subitem{\par\noindent\setbox0=\hbox{--\enspace}% second order
1579                \kern\wd0\setbox0=\hbox{--\,--\,--\enspace}%
1580                \hangindent\wd0\relax}% indexentry
1581
1582\def\subsubitem{\par\noindent\setbox0=\hbox{--\,--\enspace}% third order
1583                \kern\wd0\setbox0=\hbox{--\,--\,--\enspace}%
1584                \hangindent\wd0\relax}% indexentry
1585
1586\def\indexspace{\par \vskip 10\p@ \@plus5\p@ \@minus3\p@\relax}
1587
1588\def\subtitle#1{\gdef\@subtitle{#1}}
1589\def\@subtitle{}
1590
1591\def\maketitle{\par
1592 \begingroup
1593   \def\thefootnote{\fnsymbol{footnote}}%
1594   \def\@makefnmark{\hbox
1595       to\z@{$\m@th^{\@thefnmark}$\hss}}%
1596   \if@twocolumn
1597     \twocolumn[\@maketitle]%
1598     \else \newpage
1599     \global\@topnum\z@   % Prevents figures from going at top of page.
1600     \@maketitle \fi\thispagestyle{empty}\@thanks
1601     \par\penalty -\@M
1602 \endgroup
1603 \setcounter{footnote}{0}%
1604 \let\maketitle\relax
1605 \let\@maketitle\relax
1606 \gdef\@thanks{}\gdef\@author{}\gdef\@title{}\let\thanks\relax}
1607
1608\def\@maketitle{\newpage
1609 \null
1610 \vskip 2em                 % Vertical space above title.
1611\begingroup
1612  \def\and{\unskip, }
1613  \parindent=\z@
1614  \pretolerance=10000
1615  \rightskip=\z@ \@plus 3cm
1616  {\LARGE                   % each author set in \LARGE
1617   \lineskip .5em
1618   \@author
1619   \par}%
1620  \vskip 2cm                % Vertical space after author.
1621  {\Huge \@title \par}%     % Title set in \Huge size.
1622  \vskip 1cm                % Vertical space after title.
1623  \if!\@subtitle!\else
1624   {\LARGE\ignorespaces\@subtitle \par}
1625   \vskip 1cm                % Vertical space after subtitle.
1626  \fi
1627  \if!\@date!\else
1628    {\large \@date}%          % Date set in \large size.
1629    \par
1630    \vskip 1.5em               % Vertical space after date.
1631  \fi
1632 \vfill
1633% {\Large Springer\par}
1634%\vskip 5\p@
1635%\large
1636%  Berlin\enspace Heidelberg\enspace New\kern0.1em York\\
1637%  Hong\thinspace Kong\enspace London\\
1638%  Milan\enspace Paris\enspace Tokyo\par
1639\endgroup}
1640
1641% Useful environments
1642\newenvironment{acknowledgement}{\par\addvspace{17\p@}\small\rm
1643\trivlist\item[\hskip\labelsep{\it\ackname}]}
1644{\endtrivlist\addvspace{6\p@}}
1645%
1646\newenvironment{noteadd}{\par\addvspace{17\p@}\small\rm
1647\trivlist\item[\hskip\labelsep{\it\noteaddname}]}
1648{\endtrivlist\addvspace{6\p@}}
1649%
1650\renewenvironment{abstract}{%
1651      \advance\topsep by0.35cm\relax\small
1652      \labelwidth=\z@
1653      \listparindent=\z@
1654      \itemindent\listparindent
1655              \trivlist\item[\hskip\labelsep\bfseries\abstractname]%
1656              \if!\abstractname!\hskip-\labelsep\fi
1657      }
1658    {\endtrivlist}
1659
1660% define the running headings of a twoside text
1661\def\runheadsize{\small}
1662\def\runheadstyle{\rmfamily\upshape}
1663\def\customizhead{\hspace{\headlineindent}}
1664
1665\def\ps@headings{\let\@mkboth\markboth
1666   \let\@oddfoot\@empty\let\@evenfoot\@empty
1667   \def\@evenhead{\runheadsize\runheadstyle\rlap{\thepage}\customizhead
1668                  \leftmark\hfil}
1669   \def\@oddhead{\runheadsize\runheadstyle\hfil\rightmark\customizhead
1670                  \llap{\thepage}}
1671   \def\chaptermark##1{\markboth{{\ifnum\c@secnumdepth>\m@ne
1672      \thechapter\thechapterend\hskip\betweenumberspace\fi ##1}}{{\ifnum %!!!
1673      \c@secnumdepth>\m@ne\thechapter\thechapterend\hskip\betweenumberspace\fi ##1}}}%!!!
1674   \def\sectionmark##1{\markright{{\ifnum\c@secnumdepth>\z@
1675      \thesection\seccounterend\hskip\betweenumberspace\fi ##1}}}}
1676
1677\def\ps@myheadings{\let\@mkboth\@gobbletwo
1678   \let\@oddfoot\@empty\let\@evenfoot\@empty
1679   \def\@evenhead{\runheadsize\runheadstyle\rlap{\thepage}\customizhead
1680                  \leftmark\hfil}
1681   \def\@oddhead{\runheadsize\runheadstyle\hfil\rightmark\customizhead
1682                  \llap{\thepage}}
1683   \let\chaptermark\@gobble
1684   \let\sectionmark\@gobble
1685   \let\subsectionmark\@gobble}
1686
1687
1688\ps@headings
1689
1690\endinput
1691%end of file svmono.cls
1692