| %% |
| %% This is file `ntheorem.sty', |
| %% generated with the docstrip utility. |
| %% |
| %% The original source files were: |
| %% |
| %% ntheorem.dtx (with options: `package') |
| %% |
| %% IMPORTANT NOTICE: |
| %% |
| %% For the copyright see the source file. |
| %% |
| %% Any modified versions of this file must be renamed |
| %% with new filenames distinct from ntheorem.sty. |
| %% |
| %% For distribution of the original source see the terms |
| %% for copying and modification in the file ntheorem.dtx. |
| %% |
| %% This generated file may be distributed as long as the |
| %% original source files, as listed above, are part of the |
| %% same distribution. (The sources need not necessarily be |
| %% in the same archive or directory.) |
| \def\filedate{2003/06/25} |
| \def\docdate{2003/06/25} |
| \def\fileversion{1.22} |
| \def\basename{ntheorem} |
| %% This file may be distributed and/or modified under the |
| %% conditions of the LaTeX Project Public License, either version 1.2 |
| %% of this license or (at your option) any later version. |
| %% The latest version of this license is in |
| %% http://www.latex-project.org/lppl.txt |
| %% and version 1.2 or later is part of all distributions of LaTeX |
| %% version 1999/12/01 or later. |
| %% \CharacterTable |
| %% {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 |
| %% 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 |
| %% Digits \0\1\2\3\4\5\6\7\8\9 |
| %% Exclamation \! Double quote \" Hash (number) \# |
| %% Dollar \$ Percent \% Ampersand \& |
| %% Acute accent \' Left paren \( Right paren \) |
| %% Asterisk \* Plus \+ Comma \, |
| %% Minus \- Point \. Solidus \/ |
| %% Colon \: Semicolon \; Less than \< |
| %% Equals \= Greater than \> Question mark \? |
| %% Commercial at \@ Left bracket \[ Backslash \\ |
| %% Right bracket \] Circumflex \^ Underscore \_ |
| %% Grave accent \` Left brace \{ Vertical bar \| |
| %% Right brace \} Tilde \~} |
| \typeout{Style `\basename', Version \fileversion\space <\filedate>} |
| \ProvidesPackage{styles/ntheorem}[\filedate \space\fileversion] |
| \newif\if@thmmarks\@thmmarksfalse |
| \newif\if@thref\@threffalse |
| \newif\ifthm@tempif |
| \DeclareOption{thmmarks}{%********************************* |
| \PackageInfo{\basename}{Option `thmmarks' loaded}% |
| \@thmmarkstrue |
| \newcounter{endNonectr} |
| \newcounter{currNonectr} |
| \newif\ifsetendmark\setendmarktrue |
| \gdef\endtrivlist{% |
| \@endtrivlist{\PotEndMark{\unskip\nobreak\hfill\nobreak}}} |
| \gdef\@endtrivlist#1{% % from \endtrivlist |
| \if@inlabel \indent\fi |
| \if@newlist \@noitemerr\fi |
| \ifhmode |
| \ifdim\lastskip >\z@ #1\unskip \par %<<<<<<<<<<<<<<<<<<<<<< |
| \else \unskip \par \fi |
| \fi |
| \if@noparlist \else |
| \ifdim\lastskip >\z@ |
| \@tempskipa\lastskip \vskip -\lastskip |
| \advance\@tempskipa\parskip \advance\@tempskipa -\@outerparskip |
| \vskip\@tempskipa |
| \fi |
| \@endparenv |
| \fi} |
| \gdef\SetMark@endeqn{\quad}% as default, cf. option leqno |
| \gdef\endequation{\eqno \hbox{\@eqnnum \PotEndMark{\SetMark@endeqn}}% |
| $$\global\@ignoretrue} |
| \gdef\[{% |
| \relax\ifmmode |
| \@badmath |
| \else |
| \ifvmode |
| \nointerlineskip |
| \makebox[.6\linewidth]% |
| \fi |
| $$\stepcounter{end\InTheoType ctr}% |
| \@ifundefined{mark\roman{curr\InTheoType ctr}% |
| \InTheoType\roman{end\InTheoType ctr}}{\relax}% |
| {\ifx\csname\InTheoType Symbol\endcsname\@empty\else |
| \boxmaxdepth=.5ex\begin{array}[b]{l}% |
| \boxmaxdepth=\maxdimen\displaystyle\fi}% |
| \addtocounter{end\InTheoType ctr}{-1}% |
| %%$$ BRACE MATCH HACK |
| \fi} |
| \gdef\]{% |
| \stepcounter{end\InTheoType ctr}% |
| \@ifundefined{mark\roman{curr\InTheoType ctr}% |
| \InTheoType\roman{end\InTheoType ctr}}{\relax}% |
| {\ifx\csname\InTheoType Symbol\endcsname\@empty\else |
| \end{array}\fi}% |
| \addtocounter{end\InTheoType ctr}{-1}% |
| \relax\ifmmode |
| \ifinner |
| \@badmath |
| \else |
| \PotEndMark{\eqno}\global\@ignoretrue$$%%$$ BRACE MATCH HACK |
| \fi |
| \else |
| \@badmath |
| \fi |
| \ignorespaces} |
| \gdef\SetMark@endeqnarray#1{\llap{\raisebox{-1.3em}{#1}}} |
| \gdef\endeqnarray{% |
| \global\let\Oldeqnnum=\@eqnnum |
| \gdef\@eqnnum{\Oldeqnnum\PotEndMark{\SetMark@endeqnarray}}% |
| \@@eqncr |
| \egroup |
| \global\advance\c@equation\m@ne |
| $$\global\@ignoretrue |
| \global\let\@eqnnum\Oldeqnnum} |
| \@namedef{endeqnarray*}{% |
| % from \@@eqncr: |
| \let\reserved@a\relax |
| \ifcase\@eqcnt \def\reserved@a{& & &}\or \def\reserved@a{& &}% |
| \or \def\reserved@a{&}\else |
| \let\reserved@a\@empty |
| \@latex@error{Too many columns in eqnarray environment}\@ehc\fi |
| \reserved@a {\normalfont \normalcolor \PotEndMark{}}% |
| \global\@eqnswtrue\global\@eqcnt\z@\cr |
| % |
| \egroup |
| \global\advance\c@equation\m@ne |
| $$\global\@ignoretrue} |
| \gdef\endtabbing{% |
| \PotEndMark{\`}\@stopline\ifnum\@tabpush >\z@ \@badpoptabs |
| \fi\endtrivlist} |
| \gdef\endcenter{% |
| \@endtrivlist |
| {\PotEndMark{\rightskip0pt% |
| \settowidth{\leftskip}% |
| { \csname mark\roman{curr\InTheoType ctr}\InTheoType |
| \roman{end\InTheoType ctr}\endcsname}% |
| \advance\leftskip\@flushglue\hskip\@flushglue}}} |
| \gdef\@empty{} |
| \gdef\@endtheorem{% |
| \expandafter |
| \ifx\csname\InTheoType Symbol\endcsname\@empty\setendmarkfalse\fi |
| \@endtrivlist |
| {\ifsetendmark |
| \unskip\nobreak\hfill\nobreak\csname\InTheoType Symbol\endcsname |
| \setendmarkfalse \fi}% |
| \ifsetendmark\OrganizeTheoremSymbol\else\global\setendmarktrue\fi |
| \csname\InTheoType @postwork\endcsname |
| } |
| \gdef\NoEndMark{\global\setendmarkfalse} |
| \gdef\qed{\expandafter\def\csname \InTheoType Symbol\endcsname |
| {\the\qedsymbol}}% |
| \gdef\PotEndMark#1{\SetEndMark{\InTheoType}{#1}}% |
| \gdef\SetEndMark#1#2{% |
| \stepcounter{end#1ctr}% |
| \@ifundefined{mark\roman{curr#1ctr}#1\roman{end#1ctr}}% |
| {\relax}% |
| {#2{\csname mark\roman{curr#1ctr}#1\roman{end#1ctr}\endcsname |
| \ifdim\rightmargin>\z@\hskip-\rightmargin\fi |
| \hbox to 0cm{}}}}% |
| \newskip\mysavskip |
| \gdef\@bbsphack{% |
| \ifvmode\else\mysavskip\lastskip |
| \unskip\fi} |
| \gdef\@eesphack{% |
| \ifdim\mysavskip>\z@ |
| \vskip\mysavskip \else\fi} |
| \gdef\OrganizeTheoremSymbol{% |
| \@bbsphack |
| \edef\thm@tmp{\expandafter\expandafter\expandafter\thm@meaning |
| \expandafter\meaning\csname\InTheoType Symbol\endcsname\relax}% |
| \protected@write\@auxout{}% |
| {\string\global\string\def\string\mark% |
| \roman{curr\InTheoType ctr}\InTheoType \roman{end\InTheoType ctr}% |
| {\thm@tmp}}% |
| \@eesphack} |
| } % end of option [thmmarks] |
| \DeclareOption{leqno}{% ********************************************* |
| \if@thmmarks |
| \PackageInfo{\basename}{Option `leqno' loaded}% |
| \gdef\SetMark@endeqn#1{\hss\llap{#1}} |
| \gdef\SetMark@endeqnarray#1{\hss\llap{#1}} |
| \fi}% |
| \DeclareOption{fleqn}{% ********************************************* |
| \if@thmmarks |
| \PackageInfo{\basename}{Option `fleqn' loaded}% |
| \renewcommand\[{\relax |
| \ifmmode\@badmath |
| \else |
| \begin{trivlist}% |
| \@beginparpenalty\predisplaypenalty |
| \@endparpenalty\postdisplaypenalty |
| \item[]\leavevmode |
| \hb@xt@\linewidth\bgroup $\m@th\displaystyle %$ |
| \hskip\mathindent\bgroup |
| \stepcounter{end\InTheoType ctr}% |
| \@ifundefined{mark\roman{curr\InTheoType ctr}% |
| \InTheoType\roman{end\InTheoType ctr}}{\relax}% |
| {\ifx\csname\InTheoType Symbol\endcsname\@empty\else |
| \boxmaxdepth=.5ex\begin{array}[b]{l}% |
| \boxmaxdepth=\maxdimen\displaystyle\fi}% |
| \addtocounter{end\InTheoType ctr}{-1}% |
| \fi} |
| \renewcommand\]{% |
| \stepcounter{end\InTheoType ctr}% |
| \@ifundefined{mark\roman{curr\InTheoType ctr}% |
| \InTheoType\roman{end\InTheoType ctr}}{\relax}% |
| {\ifx\csname\InTheoType Symbol\endcsname\@empty\else |
| \end{array}\fi}% |
| \addtocounter{end\InTheoType ctr}{-1}% |
| \relax\ifmmode |
| \egroup $\hfil\PotEndMark{}% $ |
| \egroup |
| \end{trivlist}% |
| \else \@badmath |
| \fi} |
| \gdef\endequation{% |
| $\hfil % $ |
| \displaywidth\linewidth\hbox{\@eqnnum \PotEndMark{\SetMark@endeqn}}% |
| \egroup |
| \endtrivlist} |
| \gdef\endeqnarray{% |
| \global\let\Oldeqnnum=\@eqnnum |
| \gdef\@eqnnum{\Oldeqnnum\PotEndMark{\SetMark@endeqnarray}}% |
| \@@eqncr |
| \egroup |
| \global\advance\c@equation\m@ne$$% $$ |
| \global\@ignoretrue |
| \global\let\@eqnnum\Oldeqnnum} |
| \fi}% end of option fleqn |
| \DeclareOption{thref}{%********************************************** |
| \PackageInfo{\basename}{Option `thref' loaded}% |
| \@threftrue |
| \newskip\mysavskip |
| \gdef\@bbsphack{% |
| \ifvmode\else\mysavskip\lastskip |
| \unskip\fi} |
| \gdef\@eesphack{% |
| \ifdim\mysavskip>\z@ |
| \vskip\mysavskip \else\fi} |
| \def\label#1{% |
| \@ifnextchar[%] |
| {\label@optarg{#1}}% |
| {\thm@makelabel{#1}}} |
| \def\thm@makelabel#1{% |
| \@bbsphack |
| \edef\thm@tmp{\expandafter\expandafter\expandafter\thm@meaning |
| \expandafter\meaning\csname\InTheoType Keyword\endcsname\relax}% |
| \protected@write\@auxout{}% |
| {\string\newlabel{#1}{{\@currentlabel}{\thepage}}[\thm@tmp]}% |
| \@eesphack} |
| \def\label@optarg#1[#2]{% |
| \@bsphack |
| \protected@write\@auxout{}% |
| {\string\newlabel{#1}{{\@currentlabel}{\thepage}}[#2]}% |
| \@esphack} |
| \def\@newl@bel#1#2#3{% |
| \@ifpackageloaded{babel}{\@safe@activestrue}\relax% |
| \@ifundefined{#1@#2}% |
| \relax |
| {\gdef \@multiplelabels {% |
| \@latex@warning@no@line{There were multiply-defined labels}}% |
| \@latex@warning@no@line{Label `#2' multiply defined}}% |
| \global\@namedef{#1@#2}{#3}% |
| \@ifnextchar[{\set@label@type{#1}{#2}}%] |
| \relax}% |
| \def\set@label@type#1#2[#3]{% |
| \global\@namedef{#1@#2@type}{#3}} |
| |
| \newcommand\org@testdef{} |
| \let\org@testdef\@testdef |
| \def\@testdef#1#2#3{% |
| \org@testdef{#1}{#2}{#3}% |
| \@ifnextchar[{\@gobbleopt}{}% |
| } |
| \newcommand\@gobbleopt{} |
| \long\def\@gobbleopt[#1]{} |
| \def\thref#1{% |
| \expandafter\ifx\csname r@#1@type\endcsname\None |
| \PackageWarning{\basename}{thref: Reference Type of `#1' on page |
| \thepage \space undefined}\G@refundefinedtrue |
| \else\csname r@#1@type\endcsname~\fi% |
| \expandafter\@setref\csname r@#1\endcsname\@firstoftwo{#1}} |
| }% end of option thref ************************************************ |
| \DeclareOption{amsmath}{% *************************************************** |
| \if@thref |
| \PackageInfo{\basename}{option `amsmath' handling for `thref' loaded}% |
| \let\ltx@label\label |
| \global\let\thm@df@label@optarg\@empty |
| \def\label@in@display#1{% |
| \ifx\df@label\@empty\else |
| \@amsmath@err{Multiple \string\label's: |
| label '\df@label' will be lost}\@eha |
| \fi |
| \gdef\df@label{#1}% |
| \@ifnextchar[{\thm@label@in@display@optarg}{\thm@label@in@display@noarg}%] |
| } |
| \def\thm@label@in@display@noarg{% |
| \global\let\thm@df@label@optarg\@empty |
| } |
| \def\thm@label@in@display@optarg[#1]{% |
| \gdef\thm@df@label@optarg{#1}% |
| } |
| \def\endmathdisplay@a{% |
| \if@eqnsw \gdef\df@tag{\tagform@\theequation}\fi |
| \if@fleqn \@xp\endmathdisplay@fleqn |
| \else \ifx\df@tag\@empty \else \veqno \alt@tag \df@tag \fi |
| \ifx\df@label\@empty \else |
| \ifx\thm@df@label@optarg\@empty \@xp\ltx@label\@xp{\df@label} |
| \else \@xp\ltx@label\@xp{\df@label}[\thm@df@label@optarg]\fi |
| \fi |
| \fi |
| \ifnum\dspbrk@lvl>\m@ne |
| \postdisplaypenalty -\@getpen\dspbrk@lvl |
| \global\dspbrk@lvl\m@ne |
| \fi |
| } |
| \def\make@display@tag{% |
| \if@eqnsw |
| \refstepcounter{equation}% |
| \tagform@\theequation |
| \else |
| \iftag@ |
| \df@tag |
| \global\let\df@tag\@empty |
| \fi |
| \fi |
| \ifmeasuring@ |
| \else |
| \ifx\df@label\@empty\else |
| \ifx\thm@df@label@optarg\@empty \@xp\ltx@label\@xp{\df@label} |
| \else \@xp\ltx@label\@xp{\df@label}[\thm@df@label@optarg]\fi |
| \global\let\df@label\@empty |
| \fi |
| \fi |
| } |
| \def\endmathdisplay@fleqn{% |
| $\hfil\hskip\@mathmargin\egroup |
| \ifnum\badness<\inf@bad \let\too@wide\@ne \else \let\too@wide\z@ \fi |
| \ifx\@empty\df@tag |
| \else |
| \setbox4\hbox{\df@tag |
| \ifx\thm@df@label@optarg\@empty \@xp\ltx@label\@xp{\df@label} |
| \else \@xp\ltx@label\@xp{\df@label}[\thm@df@label@optarg]\fi |
| }% |
| \fi |
| \csname emdf@% |
| \ifx\df@tag\@empty U\else \iftagsleft@ L\else R\fi\fi |
| \endcsname |
| } |
| \fi |
| \if@thmmarks |
| \PackageInfo{\basename}{option `amsmath' handling for `thmmarks' loaded}% |
| \newdimen\thm@amstmpdepth |
| \gdef\TagsPlusEndmarks{% |
| \global\let\Old@maketag@@@=\maketag@@@ |
| \global\let\Old@df@tag=\df@tag |
| \if@eqnsw\SetTagPlusEndMark |
| \else |
| \iftag@\SetTagPlusEndMark |
| \else\SetOnlyEndMark |
| \fi |
| \fi} |
| \gdef\SetOnlyEndMark{% |
| \global\tag@true |
| \iftagsleft@ |
| \gdef\df@tag{\hbox |
| to \displaywidth{\hss\PotEndMark{\maketag@@@}}}% |
| \else |
| \gdef\df@tag{\PotEndMark{\maketag@@@}}% |
| \fi} |
| \gdef\SetTagPlusEndMark{% |
| \iftagsleft@ |
| \gdef\maketag@@@##1{% |
| \hbox to \displaywidth{\m@th\normalfont##1% |
| \hss\PotEndMark{\hss}}}% |
| \else |
| \gdef\maketag@@@##1{\hbox{\m@th\normalfont##1% |
| \llap{\hss\PotEndMark{\raisebox{-1.3em}}}}}% |
| \fi} |
| \gdef\RestoreTags{% |
| \global\let\maketag@@@=\Old@maketag@@@ |
| \global\let\df@tag=\Old@df@tag} |
| \gdef\endgather{% |
| \TagsPlusEndmarks % <<<<<<<<< |
| \math@cr |
| \black@\totwidth@ |
| \egroup |
| $$% |
| \RestoreTags % <<<<<<<<< |
| \ignorespacesafterend} |
| \expandafter\let\csname endgather*\endcsname\endgather |
| \def\endalign{% |
| \ifingather@\else % <<<<<<<<< |
| \TagsPlusEndmarks\fi % <<<<<<<<< |
| \math@cr |
| \black@\totwidth@ |
| \egroup |
| \ifingather@ |
| \restorealignstate@ |
| \egroup |
| \nonumber |
| \ifnum0=`{\fi\iffalse}\fi |
| \else |
| $$% |
| \RestoreTags % <<<<<<<<< |
| \fi |
| \ignorespacesafterend} |
| \expandafter\let\csname endalign*\endcsname\endalign |
| \let\endxalignat\endalign |
| \expandafter\let\csname endxalignat*\endcsname\endalign |
| \let\endxxalignat\endalign |
| \let\endalignat\endalign |
| \expandafter\let\csname endalignat*\endcsname\endalign |
| \let\endflalign\endalign |
| \expandafter\let\csname endflalign*\endcsname\endalign |
| \def\lendmultline@{% |
| \global\@eqnswfalse\tag@false\tagsleft@false |
| \rendmultline@} |
| \def\rendmultline@{% |
| \TagsPlusEndmarks % <<<<<<<<< |
| \iftag@ |
| $\let\endmultline@math\relax |
| \ifshifttag@ |
| \hskip\multlinegap |
| \llap{\vtop{% |
| \raise@tag |
| \normalbaselines |
| \setbox\@ne\null |
| \dp\@ne\lineht@ |
| \box\@ne |
| \hbox{\strut@\make@display@tag}% |
| }}% |
| \else |
| \hskip\multlinetaggap |
| \make@display@tag |
| \fi |
| \else |
| \hskip\multlinegap |
| \fi |
| \hfilneg |
| \math@cr |
| \egroup$$% |
| \RestoreTags} % <<<<<<<<< |
| \def\endmathdisplay#1{% |
| \ifmmode \else \@badmath \fi |
| \TagsPlusEndmarks % <<<<<<<<< |
| \endmathdisplay@a |
| $$% |
| \RestoreTags % <<<<<<<<< |
| \global\let\df@label\@empty \global\let\df@tag\@empty |
| \global\tag@false \global\let\alt@tag\@empty |
| \global\@eqnswfalse |
| } |
| \renewenvironment{equation}{% |
| \edef\reset@equation{% |
| \@nx\setcounter{equation}{\number\c@equation}}% |
| \refstepcounter{equation}% |
| \st@rredfalse \global\@eqnswtrue |
| \mathdisplay{equation}% |
| }{% |
| \endmathdisplay{equation}% |
| \ignorespacesafterend |
| } |
| \renewenvironment{equation*}{% |
| \st@rredtrue \global\@eqnswfalse |
| \mathdisplay{equation*}% |
| }{% |
| \endmathdisplay{equation*}% |
| \ignorespacesafterend |
| } |
| \fi |
| }% end of option amsmath/thmmarks ************************************** |
| \let\thm@usestd\@undefined |
| \DeclareOption{standard}{\let\thm@usestd\relax} |
| \let\thm@noconfig\@undefined |
| \DeclareOption{noconfig}{\let\thm@noconfig\relax} |
| \gdef\InTheoType{None} |
| \gdef\NoneKeyword{None} |
| \gdef\NoneSymbol{None} |
| \gdef\None{None} |
| \gdef\newtheoremstyle#1#2#3{% |
| \expandafter\@ifundefined{th@#1}% |
| {\expandafter\gdef\csname th@#1\endcsname{% |
| \def\@begintheorem####1####2{#2}% |
| \def\@opargbegintheorem####1####2####3{#3}}}% |
| {\PackageError{\basename}{Theorem style #1 already defined}\@eha}} |
| \gdef\renewtheoremstyle#1#2#3{% |
| \expandafter\@ifundefined{th@#1}% |
| {\PackageError{\basename}{Theorem style #1 undefined}\@ehc}% |
| {}% |
| \expandafter\let\csname th@#1\endcsname\relax |
| \newtheoremstyle{#1}{#2}{#3}} |
| \newtheoremstyle{plain}% |
| {\item[\hskip\labelsep \theorem@headerfont ##1\ ##2\theorem@separator]}% |
| {\item[\hskip\labelsep \theorem@headerfont ##1\ ##2\ (##3)\theorem@separator]} |
| \newtheoremstyle{break}% |
| {\item[\rlap{\vbox{\hbox{\hskip\labelsep \theorem@headerfont |
| ##1\ ##2\theorem@separator}\hbox{\strut}}}]}% |
| {\item[\rlap{\vbox{\hbox{\hskip\labelsep \theorem@headerfont |
| ##1\ ##2\ (##3)\theorem@separator}\hbox{\strut}}}]} |
| \newtheoremstyle{change}% |
| {\item[\hskip\labelsep \theorem@headerfont ##2\ ##1\theorem@separator]}% |
| {\item[\hskip\labelsep \theorem@headerfont ##2\ ##1\ (##3)\theorem@separator]} |
| \newtheoremstyle{changebreak}% |
| {\item[\rlap{\vbox{\hbox{\hskip\labelsep \theorem@headerfont |
| ##2\ ##1\theorem@separator}\hbox{\strut}}}]}% |
| {\item[\rlap{\vbox{\hbox{\hskip\labelsep \theorem@headerfont |
| ##2\ ##1\ (##3)\theorem@separator}\hbox{\strut}}}]} |
| \newtheoremstyle{margin}% |
| {\item[\theorem@headerfont \llap{##2}\hskip\labelsep ##1\theorem@separator]}% |
| {\item[\theorem@headerfont \llap{##2}\hskip\labelsep ##1\ (##3)\theorem@separator]} |
| \newtheoremstyle{marginbreak}% |
| {\item[\rlap{\vbox{\hbox{\theorem@headerfont |
| \llap{##2}\hskip\labelsep\relax ##1\theorem@separator}\hbox{\strut}}}]} |
| {\item[\rlap{\vbox{\hbox{\theorem@headerfont |
| \llap{##2}\hskip\labelsep\relax ##1\ |
| (##3)\theorem@separator}\hbox{\strut}}}]} |
| \newtheoremstyle{nonumberplain}% |
| {\item[\theorem@headerfont\hskip\labelsep ##1\theorem@separator]}% |
| {\item[\theorem@headerfont\hskip \labelsep ##1\ (##3)\theorem@separator]} |
| \newtheoremstyle{nonumberbreak}% |
| {\item[\rlap{\vbox{\hbox{\hskip\labelsep \theorem@headerfont |
| ##1\theorem@separator}\hbox{\strut}}}]}% |
| {\item[\rlap{\vbox{\hbox{\hskip\labelsep \theorem@headerfont |
| ##1\ (##3)\theorem@separator}\hbox{\strut}}}]} |
| \newtheoremstyle{empty}% |
| {\item[]}% |
| {\item[\theorem@headerfont \hskip\labelsep\relax ##3]} |
| \newtheoremstyle{emptybreak}% |
| {\item[]}% |
| {\item[\rlap{\vbox{\hbox{\hskip\labelsep\relax \theorem@headerfont |
| ##3\theorem@separator}\hbox{\strut}}}]} |
| \@namedef{th@nonumbermargin}{\th@nonumberplain} |
| \@namedef{th@nonumberchange}{\th@nonumberplain} |
| \@namedef{th@nonumbermarginbreak}{\th@nonumberbreak} |
| \@namedef{th@nonumberchangebreak}{\th@nonumberbreak} |
| \@namedef{th@plainNo}{\th@nonumberplain} |
| \@namedef{th@breakNo}{\th@nonumberplain} |
| \@namedef{th@marginNo}{\th@nonumberplain} |
| \@namedef{th@changeNo}{\th@nonumberplain} |
| \@namedef{th@marginbreakNo}{\th@nonumberbreak} |
| \@namedef{th@changebreakNo}{\th@nonumberbreak} |
| \gdef\theoremstyle#1{% |
| \@ifundefined{th@#1}{\@warning |
| {Unknown theoremstyle `#1'. Using `plain'}% |
| \theorem@style{plain}}% |
| {\theorem@style{#1}}} |
| \newtoks\theorem@style |
| \newtoks\theorem@@style |
| \global\theorem@style{plain} |
| \newtoks\theorembodyfont |
| \global\theorembodyfont{\itshape} |
| \newtoks\theoremnumbering |
| \global\theoremnumbering{arabic} |
| \newskip\theorempreskipamount |
| \newskip\theorempostskipamount |
| \global\theorempreskipamount\topsep |
| \global\theorempostskipamount\topsep |
| \newdimen\theoremindent |
| \global\theoremindent0cm |
| \newdimen\theorem@indent |
| \newtoks\theoremheaderfont |
| \global\theoremheaderfont{\normalfont\bfseries} |
| \def\theorem@headerfont{\normalfont\bfseries} |
| \newtoks\theoremseparator |
| \global\theoremseparator{} |
| \def\theorem@separator{} |
| \newtoks\theoremprework |
| \global\theoremprework{\relax} |
| \newtoks\theorempostwork |
| \global\theorempostwork{\relax} |
| \def\theorem@prework{} |
| \newtoks\theoremsymbol |
| \global\theoremsymbol{} |
| \newtoks\qedsymbol |
| \global\qedsymbol{} |
| \newtoks\theoremkeyword |
| \global\theoremkeyword{None} |
| \gdef\theoremclass#1{% |
| \csname th@class@#1\endcsname} |
| \gdef\th@class@LaTeX{% |
| \theoremstyle{plain} |
| \theoremheaderfont{\normalfont\bfseries} |
| \theorembodyfont{\itshape} |
| \theoremseparator{} |
| \theoremprework{\relax} |
| \theorempostwork{\relax} |
| \theoremindent0cm |
| \theoremnumbering{arabic} |
| \theoremsymbol{}} |
| \newtoks\qedsymbol |
| \global\qedsymbol{} |
| \DeclareOption{amsthm}{% ********************************************* |
| \PackageInfo{\basename}{Option `amsthm' loaded}% |
| \def\swapnumbers{\PackageError{\basename}{swapnumbers not implemented. |
| Use theoremstyle change instead.}\@eha} |
| |
| \gdef\th@plain{% |
| \def\theorem@headerfont{\normalfont\bfseries}\itshape% |
| \def\@begintheorem##1##2{% |
| \item[\hskip\labelsep \theorem@headerfont ##1\ ##2.]}% |
| \def\@opargbegintheorem##1##2##3{% |
| \item[\hskip\labelsep \theorem@headerfont ##1\ ##2\ (##3).]}} |
| \gdef\th@nonumberplain{% |
| \def\theorem@headerfont{\normalfont\bfseries}\itshape% |
| \def\@begintheorem##1##2{% |
| \item[\hskip\labelsep \theorem@headerfont ##1.]}% |
| \def\@opargbegintheorem##1##2##3{% |
| \item[\hskip\labelsep \theorem@headerfont ##1\ (##3).]}} |
| \gdef\th@definition{% |
| \th@plain\def\theorem@headerfont{\normalfont\bfseries}\itshape} |
| \gdef\th@nonumberdefinition{% |
| \th@nonumberplain\def\theorem@headerfont{\normalfont\bfseries}\itshape} |
| \gdef\th@remark{% |
| \th@plain\def\theorem@headerfont{\itshape}\normalfont} |
| \gdef\th@nonumberremark{% |
| \th@nonumberplain\def\theorem@headerfont{\itshape}\normalfont} |
| \newcounter{proof}% |
| \if@thmmarks |
| \newcounter{currproofctr}% |
| \newcounter{endproofctr}% |
| \fi |
| \newcommand{\openbox}{\leavevmode |
| \hbox to.77778em{% |
| \hfil\vrule |
| \vbox to.675em{\hrule width.6em\vfil\hrule}% |
| \vrule\hfil}} |
| \gdef\proofSymbol{\openbox} |
| \newcommand{\proofname}{Proof} |
| \newenvironment{proof}[1][\proofname]{ |
| \th@nonumberplain |
| \def\theorem@headerfont{\itshape}% |
| \normalfont |
| \theoremsymbol{\ensuremath{_\blacksquare}} |
| \@thm{proof}{proof}{#1}}% |
| {\@endtheorem} |
| }% end of option amsthm ********************************************** |
| \newskip\thm@topsepadd |
| \gdef\newtheorem{% |
| \@ifstar |
| {\expandafter\@ifundefined{th@nonumber\the\theorem@style}% |
| {\PackageError{\basename}{Theorem style {nonumber\the\theorem@style} |
| undefined (you need it here for newtheorem*) }\@ehc}% |
| {}% |
| \edef\@tempa{{nonumber\the\theorem@style}}% |
| \expandafter\theorem@@style\@tempa\@newtheorem}% |
| {\edef\@tempa{{\the\theorem@style}}% |
| \expandafter\theorem@@style\@tempa\@newtheorem}} |
| |
| \gdef\renewtheorem{% |
| \@ifstar |
| {\expandafter\@ifundefined{th@nonumber\the\theorem@style}% |
| {\PackageError{\basename}{Theorem style {nonumber\the\theorem@style} |
| undefined (you need it here for newtheorem*) }\@ehc}% |
| {}% |
| \edef\@tempa{{nonumber\the\theorem@style}}% |
| \expandafter\theorem@@style\@tempa\@renewtheorem}% |
| {\edef\@tempa{{\the\theorem@style}}% |
| \expandafter\theorem@@style\@tempa\@renewtheorem}} |
| \gdef\@newtheorem#1{% |
| \thm@tempiffalse |
| \expandafter\@ifdefinable\csname #1\endcsname |
| {\expandafter\@ifdefinable\csname #1*\endcsname |
| {\thm@tempiftrue |
| \thm@definelthm{#1}% for lists |
| \if@thmmarks |
| \expandafter\@ifundefined{c@curr#1ctr}% |
| {\newcounter{curr#1ctr}}{}% |
| \expandafter\@ifundefined{c@end#1ctr}% |
| {\newcounter{end#1ctr}}{}% |
| \fi |
| \expandafter\protected@xdef\csname #1Symbol\endcsname{\the\theoremsymbol}% |
| \expandafter\protected@xdef\csname #1@postwork\endcsname{% |
| \the\theorempostwork}% |
| \expandafter\gdef\csname#1\endcsname{% |
| \let\thm@starredenv\@undefined |
| \csname mkheader@#1\endcsname}% |
| \expandafter\gdef\csname#1*\endcsname{% |
| \let\thm@starredenv\relax |
| \csname mkheader@#1\endcsname}% |
| \def\@tempa{\expandafter\noexpand\csname end#1\endcsname}% |
| \expandafter\xdef\csname end#1*\endcsname{\@tempa}% |
| \expandafter\xdef\csname setparms@#1\endcsname |
| {\noexpand \def \noexpand \theorem@headerfont |
| {\the\theoremheaderfont\noexpand\theorem@checkbold}% |
| \noexpand \def \noexpand \theorem@separator |
| {\the\theoremseparator}% |
| \noexpand \def \noexpand \theorem@prework |
| {\the\theoremprework}% |
| \noexpand \def \noexpand \theorem@indent |
| {\the\theoremindent}% |
| \the \theorembodyfont |
| \noexpand\csname th@\the \theorem@@style \endcsname}% |
| \expandafter\xdef\csname th@class@#1\endcsname |
| {\noexpand\theoremstyle{\the\theorem@style}% |
| \noexpand\theoremheaderfont{\the\theoremheaderfont}% |
| \noexpand\theorembodyfont{\the \theorembodyfont}% |
| \noexpand\theoremseparator{\the\theoremseparator}% |
| \noexpand\theoremprework{\the\theoremprework}% |
| \noexpand\theorempostwork{\the\theorempostwork}% |
| \noexpand\theoremindent\the\theoremindent% |
| \noexpand\theoremnumbering{\the\theoremnumbering}% |
| \noexpand\theoremsymbol{\the\theoremsymbol}}% |
| }}% |
| \@ifnextchar[{\@othm{#1}}{\@nthm{#1}}}% MUST NOT BE IN ANY IF !!! |
| \gdef\@renewtheorem#1{% |
| \expandafter\@ifundefined{#1}% |
| {\PackageError{\basename}{Theorem style #1 undefined}\@ehc}% |
| {}% |
| \expandafter\let\csname #1\endcsname\relax |
| \expandafter\let\csname #1*\endcsname\relax |
| \@newtheorem{#1}} |
| \gdef\@nthm#1#2{% |
| \expandafter\protected@xdef\csname num@addtheoremline#1\endcsname{% |
| \noexpand\@num@addtheoremline{#1}{#2}}% |
| \expandafter\protected@xdef\csname nonum@addtheoremline#1\endcsname{% |
| \noexpand\@nonum@addtheoremline{#1}{#2}}% |
| \theoremkeyword{#2}% |
| \expandafter\protected@xdef\csname #1Keyword\endcsname |
| {\the\theoremkeyword}% |
| \@ifnextchar[{\@xnthm{#1}{#2}}{\@ynthm{#1}{#2}}} |
| \gdef\@othm#1[#2]#3{% |
| \@ifundefined{c@#2}{\@nocounterr{#2}}% |
| {\ifthm@tempif |
| \global\@namedef{the#1}{\@nameuse{the#2}}% |
| \expandafter\protected@xdef\csname num@addtheoremline#1\endcsname{% |
| \noexpand\@num@addtheoremline{#1}{#3}}% |
| \expandafter\protected@xdef\csname nonum@addtheoremline#1\endcsname{% |
| \noexpand\@nonum@addtheoremline{#1}{#3}}% |
| \theoremkeyword{#3}% |
| \expandafter\protected@xdef\csname #1Keyword\endcsname |
| {\the\theoremkeyword}% |
| \expandafter\gdef\csname mkheader@#1\endcsname |
| {\csname setparms@#1\endcsname |
| \@thm{#1}{#2}{#3}}% |
| \global\@namedef{end#1}{\@endtheorem}\fi}} |
| \gdef\@xnthm#1#2[#3]{% |
| \ifthm@tempif |
| \expandafter\@ifundefined{c@#1}% |
| {\@definecounter{#1}}{}% |
| \@newctr{#1}[#3]% |
| \expandafter\xdef\csname the#1\endcsname{% |
| \expandafter\noexpand\csname the#3\endcsname \@thmcountersep |
| {\noexpand\csname\the\theoremnumbering\endcsname{#1}}}% |
| \expandafter\gdef\csname mkheader@#1\endcsname |
| {\csname setparms@#1\endcsname |
| \@thm{#1}{#1}{#2}}% |
| \global\@namedef{end#1}{\@endtheorem}\fi} |
| \gdef\@ynthm#1#2{% |
| \ifthm@tempif |
| \expandafter\@ifundefined{c@#1}% |
| {\@definecounter{#1}}{}% |
| \expandafter\xdef\csname the#1\endcsname |
| {\noexpand\csname\the\theoremnumbering\endcsname{#1}}% |
| \expandafter\gdef\csname mkheader@#1\endcsname |
| {\csname setparms@#1\endcsname |
| \@thm{#1}{#1}{#2}}% |
| \global\@namedef{end#1}{\@endtheorem}\fi} |
| \gdef\@thm#1#2#3{% |
| \if@thmmarks |
| \stepcounter{end\InTheoType ctr}% |
| \fi |
| \renewcommand{\InTheoType}{#1}% |
| \if@thmmarks |
| \stepcounter{curr#1ctr}% |
| \setcounter{end#1ctr}{0}% |
| \fi |
| \refstepcounter{#2}% |
| \theorem@prework |
| \thm@topsepadd \theorempostskipamount % cf. latex.ltx: \@trivlist |
| \ifvmode \advance\thm@topsepadd\partopsep\fi |
| \trivlist |
| \@topsep \theorempreskipamount |
| \@topsepadd \thm@topsepadd % used by \@endparenv |
| \advance\linewidth -\theorem@indent |
| \advance\@totalleftmargin \theorem@indent |
| \parshape \@ne \@totalleftmargin \linewidth |
| \@ifnextchar[{\@ythm{#1}{#2}{#3}}{\@xthm{#1}{#2}{#3}}} |
| \def\@xthm#1#2#3{% |
| \@begintheorem{#3}{\csname the#2\endcsname}% |
| \ifx\thm@starredenv\@undefined |
| \thm@thmcaption{#1}{{#3}{\csname the#2\endcsname}{}}\fi |
| \ignorespaces} |
| \def\@ythm#1#2#3[#4]{% |
| \expandafter\global\expandafter\def\csname#1name\endcsname{#4}% |
| \@opargbegintheorem{#3}{\csname the#2\endcsname}{#4}% |
| \ifx\thm@starredenv\@undefined |
| \thm@thmcaption{#1}{{#3}{\csname the#2\endcsname}{#4}}\fi% |
| \ignorespaces} |
| \gdef\@endtheorem{% |
| \endtrivlist |
| \csname\InTheoType @postwork\endcsname |
| } |
| \DeclareOption{framed}{%********************************* |
| \newtoks\shadecolor |
| \shadecolor{gray} |
| \let\theoremframecommand\relax |
| \def\newshadedtheorem#1{% |
| \expandafter\global\expandafter\xdef\csname#1@shadecolor\endcsname{% |
| \the\shadecolor}% |
| \ifx\theoremframecommand\relax |
| \expandafter\global\expandafter\xdef\csname#1@framecommand\endcsname{% |
| \noexpand\psframebox[fillstyle=solid, |
| fillcolor=\csname#1@shadecolor\endcsname, |
| linecolor=\csname#1@shadecolor\endcsname]}% |
| \else |
| \expandafter\global\expandafter\let\csname#1@framecommand\endcsname% |
| \theoremframecommand% |
| \fi |
| \theoremprework{% |
| \def\FrameCommand{\csname#1@framecommand\endcsname}\framed}% |
| \theorempostwork{\endframed}% |
| \newtheorem{#1}% |
| } |
| \def\newframedtheorem#1{% |
| \theoremprework{\framed}% |
| \theorempostwork{\endframed}% |
| \newtheorem{#1}% |
| } |
| }% end of option amsthm ********************************************** |
| \def\thm@thmcaption#1#2{\thm@@thmcaption{#1}#2} |
| \def\thm@@thmcaption#1#2#3#4{% |
| \thm@parseforwriting{#2}% |
| \let\thm@tmpii\thm@tmp% |
| \thm@parseforwriting{#4}% |
| \edef\thm@t{{\thm@tmpii}{#3}{\thm@tmp}}% |
| \addcontentsline{thm}{#1}{\thm@t}} |
| \def\thm@@thmline@noname#1#2#3#4{% |
| \@dottedtocline{-2}{0em}{2.3em}% |
| {\protect\numberline{#2}#3}% |
| {#4}} |
| \def\thm@@thmline@name#1#2#3#4{% |
| \@dottedtocline{-2}{0em}{2.3em}% |
| {#1 \protect\numberline{#2}#3}% |
| {#4}} |
| \def\thm@thmline#1#2{\thm@@thmline#1{#2}} |
| \long\def\thm@lgobble#1#2{\ignorespaces} |
| \def\theoremlistall{% |
| \let\thm@@thmlstart=\relax |
| \let\thm@@thmlend=\relax |
| \let\thm@@thmline=\thm@@thmline@noname} |
| \def\theoremlistallname{% |
| \let\thm@@thmlstart=\relax |
| \let\thm@@thmlend=\relax |
| \let\thm@@thmline=\thm@@thmline@name} |
| \def\theoremlistoptional{% |
| \let\thm@@thmlstart=\relax |
| \let\thm@@thmlend=\relax |
| \def\thm@@thmline##1##2##3##4{% |
| \ifx\empty ##3% |
| \else |
| \thm@@thmline@noname{##1}{##2}{##3}{##4}% |
| \fi}} |
| \def\theoremlistoptname{% |
| \let\thm@@thmlstart=\relax |
| \let\thm@@thmlend=\relax |
| \def\thm@@thmline##1##2##3##4{% |
| \ifx\empty ##3% |
| \else% |
| \thm@@thmline@name{##1}{##2}{##3}{##4}% |
| \fi}} |
| \DeclareOption{hyperref}{% ********************************************** |
| \def\thm@@thmline@noname#1#2#3#4#5{% |
| \ifx\\#5\\% |
| \@dottedtocline{-2}{0em}{2.3em}% |
| {\protect\numberline{#2}#3}% |
| {#4}% |
| \else |
| \ifHy@linktocpage\relax\relax |
| \@dottedtocline{-2}{0em}{2.3em}% |
| {\protect\numberline{#2}#3}% |
| {\hyper@linkstart{link}{#5}{#4}\hyper@linkend} |
| \else |
| \@dottedtocline{-2}{0em}{2.3em}% |
| {\hyper@linkstart{link}{#5}{\protect\numberline{#2}#3}% |
| \hyper@linkend}% |
| {#4}% |
| \fi |
| \fi}% |
| \def\thm@@thmline@name#1#2#3#4#5{% |
| \ifx\\#5\\% |
| \@dottedtocline{-2}{0em}{2.3em}% |
| {#1 \protect\numberline{#2}#3}% |
| {#4} |
| \else |
| \ifHy@linktocpage\relax\relax |
| \@dottedtocline{-2}{0em}{2.3em}% |
| {#1 \protect\numberline{#2}#3}% |
| {\hyper@linkstart{link}{#5}{#4}\hyper@linkend}% |
| \else |
| \@dottedtocline{-2}{0em}{2.3em}% |
| {\hyper@linkstart{link}{#5}% |
| {#1 \protect\numberline{#2}#3}\hyper@linkend}% |
| {#4}% |
| \fi |
| \fi} |
| \def\thm@thmline#1#2#3{\thm@@thmline#1{#2}{#3}} |
| \long\def\thm@lgobble#1#2#3{\ignorespaces} |
| \def\theoremlistoptional{% |
| \let\thm@@thmlstart=\relax |
| \let\thm@@thmlend=\relax |
| \def\thm@@thmline##1##2##3##4##5{% |
| \ifx\empty ##3% |
| \else% |
| \thm@@thmline@noname{##1}{##2}{##3}{##4}{##5}% |
| \fi}} |
| \def\theoremlistoptname{% |
| \let\thm@@thmlstart=\relax |
| \let\thm@@thmlend=\relax |
| \def\thm@@thmline##1##2##3##4##5{% |
| \ifx\empty ##3% |
| \else% |
| \thm@@thmline@name{##1}{##2}{##3}{##4}{##5}% |
| \fi}} |
| }% end of option hyperref ********************************************* |
| \def\theoremlisttype#1{% |
| \@ifundefined{thm@thml@#1}% |
| {\PackageError{\basename}{Listtype #1 not defined}\@eha}% |
| {\csname thm@thml@#1\endcsname}} |
| \def\thm@thml@all{\theoremlistall} |
| \def\thm@thml@opt{\theoremlistoptional} |
| \def\thm@thml@optname{\theoremlistoptname} |
| \def\thm@thml@allname{\theoremlistallname} |
| \def\newtheoremlisttype#1#2#3#4{% |
| \@ifundefined{thm@thml@#1}% |
| {\expandafter\gdef\csname thm@thml@#1\endcsname{% |
| \def\thm@@thmlstart{#2}% |
| \def\thm@@thmline####1####2####3####4{#3}% |
| \def\thm@@thmlend{#4}}% |
| }{\PackageError{\basename}{list type #1 already defined}\@eha}} |
| \def\renewtheoremlisttype#1#2#3#4{% |
| \@ifundefined{thm@thml@#1}% |
| {\PackageError{\basename}{List type #1 not defined}\@ehc}{}% |
| \expandafter\let\csname thm@thml@#1\endcsname\relax |
| \newtheoremlisttype{#1}{#2}{#3}{#4}} |
| \def\thm@definelthm#1{% |
| \expandafter\gdef\csname l@#1\endcsname{\thm@lgobble}% |
| \expandafter\gdef\csname thm@listdo#1\endcsname{\thm@lgobble}} |
| \long\def\thm@inlistdo#1#2{#2}% |
| \def\listtheorems#1{\begingroup |
| \c@tocdepth=-2% |
| \def\thm@list{#1}\thm@processlist |
| \endgroup} |
| \def\thm@processlist{% |
| \begingroup |
| \typeout{** Generating table of \thm@list}% |
| \def\contentsline##1{% |
| \expandafter\@ifundefined{l@##1}{\thm@lgobble}{\csname l@##1\endcsname}}% |
| \thm@@thmlstart |
| \@for\thm@currentlist:=\thm@list\do{% |
| \ifx\thm@currentlist\@empty\else |
| \expandafter\gdef\csname l@\thm@currentlist\endcsname{\thm@thmline}% |
| \expandafter\gdef\csname thm@listdo\thm@currentlist\endcsname{\thm@inlistdo}% |
| \fi |
| }% |
| \@input{\jobname .thm}% |
| \thm@@thmlend |
| \@for\thm@currentlist:=\thm@list\do{% |
| \ifx\thm@currentlist\@empty\else |
| \expandafter\gdef\csname l@\thm@currentlist\endcsname{\thm@lgobble}% |
| \expandafter\gdef\csname thm@listdo\thm@currentlist\endcsname{\thm@lgobble}% |
| \fi |
| }% |
| \endgroup} |
| \def\thm@enablelistoftheorems{% |
| \begingroup |
| \makeatletter |
| \if@filesw |
| \expandafter\newwrite\csname tf@thm\endcsname% |
| \immediate\openout \csname tf@thm\endcsname \jobname.thm\relax% |
| \fi |
| \@nobreakfalse |
| \endgroup} |
| \def\addtheoremline{\@ifstar{\nonum@addtheoremline}{\num@addtheoremline}} |
| \def\nonum@addtheoremline#1{\csname nonum@addtheoremline#1\endcsname}% |
| \def\num@addtheoremline#1{\csname num@addtheoremline#1\endcsname}% |
| \def\@nonum@addtheoremline#1#2#3{% |
| \thm@parseforwriting{#3}% |
| \edef\thm@t{{#2}{}{\thm@tmp}}% |
| \addcontentsline{thm}{#1}{\thm@t}} |
| \def\@num@addtheoremline#1#2#3{% |
| \thm@parseforwriting{#3}% |
| \edef\thm@t{{#2}{\csname the#1\endcsname}{\thm@tmp}}% |
| \addcontentsline{thm}{#1}{\thm@t}}% |
| \long\def\addtotheoremfile{% |
| \@ifnextchar[{\@@addtotheoremfile}{\@addtotheoremfile}} |
| \long\def\@addtotheoremfile#1{% |
| \thm@parseforwriting{#1}% |
| \protected@write\@auxout% |
| {}{\string\@writefile{thm}{\thm@tmp}}} |
| \long\def\@@addtotheoremfile[#1]#2{% |
| \thm@parseforwriting{#2}% |
| \protected@write\@auxout% |
| {}{\string\@writefile{thm}{\string\theoremlistdo{#1}{\thm@tmp}}}} |
| \long\def\theoremlistdo#1#2{\expandafter\@ifundefined{thm@listdo#1}% |
| \relax{\csname thm@listdo#1\endcsname{#1}{#2}}} |
| \AtEndDocument{\thm@enablelistoftheorems} |
| \def\thm@meaning#1->#2\relax{#2}% remove "macro: ->" |
| \long\def\thm@parseforwriting#1{% |
| \def\thm@tmp{#1}% |
| \edef\thm@tmp{\expandafter\thm@meaning\meaning\thm@tmp\relax}} |
| \def\theorem@checkbold{\if b\expandafter\@car\f@series\@nil\boldmath\fi} |
| \def\@greek#1{\theorem@checkbold% |
| \ifcase#1\or$\alpha$\or$\beta$\or$\gamma$\or$\delta$\or$\varepsilon$% |
| \or$\zeta$\or$\eta$\or$\vartheta$\or$\iota$\or$\kappa$\or$\lambda$\or$% |
| \mu$\or$\nu$\or$\xi$\or$ o$\or$\varpi$\or$\varrho$\or$\varsigma$\or$\tau$% |
| \or$\upsilon$\or$\varphi$\or$\chi$\or$\psi$\or$\omega$\else\@ctrerr\fi} |
| \def\@Greek#1{\theorem@checkbold% |
| \ifcase#1\or A\or B\or$\Gamma$\or$\Delta$\or E% |
| \or Z\or H\or$\Theta$\or I\or K\or$\Lambda$\or M% |
| \or N\or$\Xi$\or O\or$\Pi$\or P\or$\Sigma$\or T% |
| \or$\Upsilon$\or$\Phi$\or X\or$\Psi$\or$\Omega$\else\@ctrerr\fi} |
| \def\greek#1{\@greek{\csname c@#1\endcsname}} |
| \def\Greek#1{\@Greek{\csname c@#1\endcsname}} |
| \ProcessOptions\relax |
| \theoremlistall |
| \ifx\thm@noconfig\@undefined |
| \InputIfFileExists{ntheorem.cfg}% |
| {\PackageInfo{\basename}{Local config file ntheorem.cfg used}}% |
| {\ifx\thm@usestd\@undefined% |
| \else% |
| \InputIfFileExists{ntheorem.std}% |
| {\PackageInfo{\basename}{Standard config file ntheorem.std used}}{} |
| \fi} |
| \fi |
| \endinput |
| %% |
| %% End of file `ntheorem.sty'. |