2 % \iffalse meta-comment
4 % Copyright 1995, 1999 American Mathematical Society.
5 % Copyright 2016 LaTeX3 Project and American Mathematical Society.
7 % This work may be distributed and/or modified under the
8 % conditions of the LaTeX Project Public License, either version 1.3c
9 % of this license or (at your option) any later version.
10 % The latest version of this license is in
11 % http://www.latex-project.org/lppl.txt
12 % and version 1.3c or later is part of all distributions of LaTeX
13 % version 2005/12/01 or later.
15 % This work has the LPPL maintenance status `maintained'.
17 % The Current Maintainer of this work is the LaTeX3 Project.
21 % This file was generated from version 1.2beta of amstex.dtx and then
22 % underwent additional hand-editing.
23 \if@compatibility
\else \catcode`\%=
9 \fi
24 %\PackageError{amstex}{%
25 %Package `amstex' is obsolete, substituting `amsmath'}{You
26 %should use \string\usepackage{amsmath} instead. If
27 %that does not give satisfactory results, rename your previous copy
28 %of amstex.sty to amstex12beta.sty and call it with
29 %\string\usepackage{amstex12beta}.}
30 %\catcode`\%=14 \relax \input{amsmath.sty}\endinput
32 \ProvidesPackage{amstex
}[1999/
11/
15 v1.2f AMS extra math features
]
34 \DeclareOption{noamsfonts
}{\let\@amsfonts=F
}
35 \DeclareOption{psamsfonts
}{\let\@amsfonts=P
}
36 \DeclareOption{intlimits
}{\let\ilimits@
\displaylimits}
37 \DeclareOption{nointlimits
}{\let\ilimits@
\nolimits}
38 \DeclareOption{sumlimits
}{\let\slimits@
\displaylimits}
39 \DeclareOption{nosumlimits
}{\let\slimits@
\nolimits}
40 \DeclareOption{namelimits
}{\let\nlimits@
\displaylimits}
41 \DeclareOption{nonamelimits
}{\let\nlimits@
\nolimits}
44 \DeclareOption{leqno
}{\tagsleft@true
}
45 \DeclareOption{reqno
}{\tagsleft@false
}
46 \DeclareOption{centertags
}{\ctagsplit@true
}
47 \DeclareOption{tbtags
}{\ctagsplit@false
}
50 \@mathmargin\@centering
51 \DeclareOption{fleqn
}{%
55 \ifdim\@mathmargin=
\m@ne sp
56 \@mathmargin
\leftmargini
60 \DeclareOption{righttag
}{\tagsleft@false
}
61 \DeclareOption{ctagsplt
}{\ctagsplit@true
}
62 \DeclareOption{intlim
}{\let\ilimits@
\displaylimits}
63 \DeclareOption{nosumlim
}{\let\slimits@
\nolimits}
64 \DeclareOption{nonamelm
}{\let\nlimits@
\nolimits}
65 \ExecuteOptions{nointlimits,sumlimits,namelimits,centertags
}
67 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
68 %% In this section \RequirePackage statements were replaced with the
69 %% contents of the referenced files.
70 %%% filename = "amsgen.dtx",
71 %%% version = "1.2beta",
72 %%% date = "1994/12/13",
73 \providecommand{\@saveprimitive
}[2]{\begingroup\escapechar`\\
\relax
74 \edef\@tempa
{\string#1}\edef\@tempb
{\meaning#1}%
75 \ifx\@tempa\@tempb
\global\let#2#1%
77 \edef\@tempb
{\meaning#2}%
80 \@latex@error
{Unable to properly define
\string#2; primitive
81 \noexpand#1no longer primitive
}\@eha
88 \def\@oparg
#1[#2]{\@ifnextchar
[{#1}{#1[#2]}}
89 \def\@ifempty
#1{\@xifempty
#1@@..\@nil
}
90 \long\def\@xifempty
#1#2@
#3#4#5\@nil
{%
91 \ifx#3#4\@xp\@firstoftwo
\else\@xp\@secondoftwo
\fi}
92 \long\def\@ifnotempty
#1{\@ifempty
{#1}{}}
93 \def\FN@
{\futurelet\@let@token
}
95 \def\RIfM@
{\relax\ifmmode}
96 \def\setboxz@h
{\setbox\z@
\hbox}
99 \def\relaxnext@
{\let\@let@token
\relax}
100 \def\new@ifnextchar
#1#2#3{%
101 \let\@tempe
#1\def\@tempa
{#2}\def\@tempb
{#3}\futurelet
103 \def\new@ifnch
{\ifx\@tempc \@tempe
\let\@tempd\@tempa
104 \else\let\@tempd\@tempb
\fi\@tempd
}
105 \def\new@ifstar
#1#2{\new@ifnextchar *
{\def\@tempa*
{#1}\@tempa
}{#2}}
106 \@ifundefined
{every@math@size
}{%
107 \let\every@math@size=
\every@size
109 \expandafter\ifx\csname S@
\f@size
\endcsname\relax
110 \calculate@math@sizes
112 \csname S@
\f@size
\endcsname
116 \csname mv@
\math@version
\endcsname
118 \let \glb@currsize
\f@size
125 \def\set@fontsize
#1#2#3{%
126 \@defaultunits\@tempdimb
#2pt
\relax\@nnil
127 \edef\f@size
{\strip@pt\@tempdimb
}%
128 \@defaultunits\@tempskipa
#3pt
\relax\@nnil
129 \edef\f@baselineskip
{\the\@tempskipa
}%
130 \edef\f@linespread
{#1}%
131 \let\baselinestretch\f@linespread
133 \baselineskip\f@baselineskip
\relax
134 \baselineskip\f@linespread
\baselineskip
135 \normalbaselineskip\baselineskip
136 \setbox\strutbox\hbox{%
137 \vrule\@height
.7\baselineskip
138 \@depth
.3\baselineskip
141 \let\size@update
\relax}%
143 }{}% end \@ifundefined test
145 \addto@hook
\every@math@size
{\compute@ex@
}
152 \advance\dimen@
10\p@
\multiply\dimen@
\tw@
153 \edef\@tempa
{\ifdim\dimen@>
\z@ -
\fi}%
154 \dimen@
\ifdim\dimen@<
\z@ -
\fi \dimen@
155 \advance\dimen@-\@m sp
% fudge factor
157 \def\do{\ifdim\dimen@>
\z@
162 \dimen@
\p@
\advance\dimen@-
\vfuzz
164 \global\advance\ex@ \@tempa
\dimen@
168 \def\@addpunct
#1{\ifnum\spacefactor>\@m
\else#1\fi}
169 \def\frenchspacing{\sfcode`\
.1006\sfcode`\?
1005\sfcode`\!
1004%
170 \sfcode`\:
1003\sfcode`\;
1002\sfcode`\,
1001 }
171 \def\@mathmeasure
#1#2#3{\setbox#1\hbox{\frozen@everymath\@emptytoks
173 \def\nomath@env
{\PackageError{amstex
}{%
174 \string\begin{\@currenvir
} allowed only in paragraph mode
%
175 }\@ehb
% "You've lost some text"
177 \def\Invalid@@
{Invalid use of
\string}
178 \def\nonmatherr@
#1{\PackageError{amsfonts
}%
179 {\noexpand#1allowed only in math mode
}\@ehd
}
180 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
181 %%% filename = "amstext.dtx",
182 %%% version = "1.2beta",
183 %%% date = "1994/12/13",
184 \DeclareRobustCommand{\text}{%
185 \ifmmode\expandafter\text@
\else\expandafter\mbox\fi}
187 \def\text@
#1{\mathchoice
188 {\textdef@
\displaystyle\f@size
{#1}}%
189 {\textdef@
\textstyle\tf@size
{\firstchoice@false
#1}}%
190 {\textdef@
\textstyle\sf@size
{\firstchoice@false
#1}}%
191 {\textdef@
\textstyle \ssf@size
{\firstchoice@false
#1}}%
194 \def\textdef@
#1#2#3{\hbox{{%
196 \let\f@size
#2\selectfont
198 \newif\iffirstchoice@
202 \global\expandafter\advance\csname c@
#1\endcsname \@ne
205 \csname cl@
#1\endcsname
208 \toks@
{\iffirstchoice@
\else\@xp\@gobblefour
\fi\protect}
209 \edef\GenericInfo{\the\toks@
210 \@xp\@nx
\csname GenericInfo
\endcsname}
211 \edef\GenericWarning{\the\toks@
212 \@xp\@nx
\csname GenericWarning
\endcsname}
213 \toks@
{\iffirstchoice@
\else
214 \@xp\@xp\@xp\@gobblefour
215 \@xp\@gobbletwo
\fi\protect}
216 \edef\GenericError{\the\toks@
217 \@xp\@nx
\csname GenericError
\endcsname}
218 \def\label#1{\@bsphack
\iffirstchoice@
\if@filesw
{\let\thepage\relax
219 \def\protect{\noexpand\noexpand\noexpand}%
220 \xdef\@gtempa
{\write\@auxout
{\string
221 \newlabel{#1}{{\@currentlabel
}{\thepage}}}}}\@gtempa
222 \if@nobreak
\ifvmode\nobreak\fi\fi\fi\fi\@esphack
}
223 \begingroup \catcode`\"=
12
224 \gdef\mathhexbox#1#2#3{\text{$
\m@th
\mathchar"
#1#2#3$
}}
226 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
227 %%% filename = "amsfonts.dtx",
228 %%% version = "1.2beta",
229 %%% date = "1994/12/13",
230 \newbox\Mathstrutbox@
231 \setbox\Mathstrutbox@=
\hbox{}
232 \def\Mathstrut@
{\copy\Mathstrutbox@
}
233 \addto@hook
\every@math@size
{\setbox\z@
\hbox{\normalfont(
}%
234 \ht\Mathstrutbox@
\ht\z@
\dp\Mathstrutbox@
\dp\z@
}
236 \def\strut@
{\copy\strutbox@
}
237 \addto@hook
\every@math@size
{%
238 \global\setbox\strutbox@
\hbox{\lower.5\normallineskiplimit
239 \vbox{\kern-
\normallineskiplimit\copy\strutbox}}}
240 \def\big{\bBigg@\@ne
}
241 \def\Big{\bBigg@
{1.5}}
242 \def\bigg{\bBigg@
\tw@
}
243 \def\Bigg{\bBigg@
{2.5}}
246 \hbox{$
\left#2\vcenter to
#1\big@size
{}\right.
%
249 \addto@hook
\every@math@size
{%
250 \global\big@size
1.2\ht\Mathstrutbox@
251 \global\advance\big@size
1.2\dp\Mathstrutbox@
}
253 %% msam, msbm, eufm fonts dealt with at end of file
254 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
255 %%% filename = "amsbsy.dtx",
256 %%% version = "1.2beta",
257 %%% date = "1994/10/27",
258 \DeclareRobustCommand{\boldsymbol}[1]{%
260 \let\@nomath\@gobble
\mathversion{bold
}%
263 {\hbox{$
\m@th
\displaystyle#1$
}}%
264 {\hbox{$
\m@th
\textstyle#1$
}}%
265 {\hbox{$
\m@th
\scriptstyle#1$
}}%
266 {\hbox{$
\m@th
\scriptscriptstyle#1$
}}}%
269 \binrel@
{#1}\binrel@@
{#2}}
270 \DeclareRobustCommand{\pmb}{%
271 \ifmmode\else \expandafter\pmb@@
\fi\mathpalette\pmb@
}
272 \def\pmb@@
#1#2#3{\leavevmode\setboxz@h
{#3}%
275 \kern\dimen@
\kern.25\ex@
\raise.4\ex@
\copy\z@
276 \kern\dimen@
\kern.25\ex@
\box\z@
279 \def\pmb@
#1#2{\setbox8\hbox{$
\m@th
#1{#2}$
}%
280 \setboxz@h
{$
\m@th
#1\mkern.5mu$
}\pmbraise@
\wdz@
285 \kern\dimen@
\mkern.4mu
\raise\pmbraise@
\copy8 %
286 \kern\dimen@
\mkern.4mu
\box8 }%
288 \def\binrel@
#1{\begingroup
289 \setboxz@h
{\thinmuskip0mu
290 \medmuskip\m@ne mu
\thickmuskip\@ne mu
291 \setbox\tw@
\hbox{$
#1\m@th$
}\kern-
\wd\tw@
293 \edef\@tempa
{\endgroup\let\noexpand\binrel@@
294 \ifdim\wdz@<
\z@
\mathbin
295 \else\ifdim\wdz@>
\z@
\mathrel
300 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
301 \def\AmSTeX{\protect\AmS-
\protect\TeX{}}
302 \def\AmS{{\protect\AmSfont
303 A
\kern-
.1667em
\lower.5ex
\hbox{M
}\kern-
.125emS
}}
305 \usefont{OMS
}{cmsy
}{\if\@xp\@car
\f@series\@nil bb
\else m
\fi}{n
}}
306 \def\prim@s
{\prime\futurelet\@let@token
\pr@m@s
}
308 \ifx\@let@token'
\DN@#
#1{\prim@s
}\else\let\next@
\egroup\fi\next@
}
310 \renewcommand{\prime}{{\kern\z@\@prime
}}
311 \DeclareRobustCommand{\mspace}[3]{%
312 \ifmmode\mskip#1#2\else\kern#1#3\fi\relax}
313 \renewcommand{\,
}{\mspace+
\thinmuskip{.1667em
}}
315 \renewcommand{\!
}{\mspace-
\thinmuskip{.1667em
}}
317 \renewcommand{\:
}{\mspace+
\medmuskip{.2222em
}}
319 \newcommand{\negmedspace}{\mspace-
\medmuskip{.2222em
}}
320 \renewcommand{\;
}{\mspace+
\thickmuskip{.2777em
}}
322 \newcommand{\negthickspace}{\mspace-
\thickmuskip{.2777em
}}
323 \def\implies{\DOTSB\;
\Longrightarrow\;
}
324 \def\impliedby{\DOTSB\;
\Longleftarrow\;
}
325 \begingroup \catcode`\"=
12 % in case activated by a preceding package
326 \gdef\And{\DOTSB\;
\mathchar"
3026 \;
}
327 \gdef\lvert{\delimiter"
426A30C
}
328 \gdef\rvert{\delimiter"
526A30C
}
329 \gdef\lVert{\delimiter"
426B30D
}
330 \gdef\rVert{\delimiter"
526B30D
}
331 \endgroup % restore "
332 \DeclareRobustCommand{\frac}{\new@ifnextchar
[{\frfrac{}}{\frfrac{}[]}}
333 \def\frfrac#1[#2]#3#4{\def\next@
{#2}%
334 \ifx\next@\@empty
\def\next@
{#1{#3\over#4}}%
335 \else \def\next@
{{#1{#3\above#2\relax#4}}}%
338 \def\dfrac{\protect\frfrac\displaystyle[]}
339 \def\tfrac{\protect\frfrac\textstyle[]}
340 \DeclareRobustCommand{\binom}{\frbinom{}}
341 \def\frbinom#1#2#3{{#1{#2\atopwithdelims()
#3}}}
342 \def\dbinom{\protect\frbinom\displaystyle}
343 \def\tbinom{\protect\frbinom\textstyle}
344 \def\colon{\nobreak\mskip2mu\mathpunct{}\nonscript
345 \mkern-
\thinmuskip{:
}\mskip6muplus1mu\relax}
346 \begingroup \catcode`\"=
12
347 \DeclareMathSymbol{\coprod@
}{\mathop}{largesymbols
}{"
60}
348 \gdef\coprod{\DOTSB\coprod@
\slimits@
}
349 \DeclareMathSymbol{\bigvee@
}{\mathop}{largesymbols
}{"
57}
350 \gdef\bigvee{\DOTSB\bigvee@
\slimits@
}
351 \DeclareMathSymbol{\bigwedge@
}{\mathop}{largesymbols
}{"
56}
352 \gdef\bigwedge{\DOTSB\bigwedge@
\slimits@
}
353 \DeclareMathSymbol{\biguplus@
}{\mathop}{largesymbols
}{"
55}
354 \gdef\biguplus{\DOTSB\biguplus@
\slimits@
}
355 \DeclareMathSymbol{\bigcap@
}{\mathop}{largesymbols
}{"
54}
356 \gdef\bigcap{\DOTSB\bigcap@
\slimits@
}
357 \DeclareMathSymbol{\bigcup@
}{\mathop}{largesymbols
}{"
53}
358 \gdef\bigcup{\DOTSB\bigcup@
\slimits@
}
359 \DeclareMathSymbol{\prod@
}{\mathop}{largesymbols
}{"
51}
360 \gdef\prod{\DOTSB\prod@
\slimits@
}
361 \DeclareMathSymbol{\sum@
}{\mathop}{largesymbols
}{"
50}
362 \gdef\sum{\DOTSB\sum@
\slimits@
}
363 \DeclareMathSymbol{\bigotimes@
}{\mathop}{largesymbols
}{"
4E
}
364 \gdef\bigotimes{\DOTSB\bigotimes@
\slimits@
}
365 \DeclareMathSymbol{\bigoplus@
}{\mathop}{largesymbols
}{"
4C
}
366 \gdef\bigoplus{\DOTSB\bigoplus@
\slimits@
}
367 \DeclareMathSymbol{\bigodot@
}{\mathop}{largesymbols
}{"
4A
}
368 \gdef\bigodot{\DOTSB\bigodot@
\slimits@
}
369 \DeclareMathSymbol{\bigsqcup@
}{\mathop}{largesymbols
}{"
46}
370 \gdef\bigsqcup{\DOTSB\bigsqcup@
\slimits@
}
372 \def\dddot#1{{\mathop{#1}\limits^
{\vbox to-
1.4\ex@
{\kern-
\tw@
\ex@
373 \hbox{\normalfont ...
}\vss}}}}
374 \def\ddddot#1{{\mathop{#1}\limits^
{\vbox to-
1.4\ex@
{\kern-
\tw@
\ex@
375 \hbox{\normalfont....
}\vss}}}}
377 \DeclareRobustCommand{\nobreakspace}{\unskip\nobreak\
\ignorespaces}
378 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
380 \everydisplay\expandafter{\the\everydisplay \@displaytrue
}
381 \def\int{\DOTSI\intop\ilimits@
}
382 \def\oint{\DOTSI\ointop\ilimits@
}
383 \def\intkern@
{\mkern-
6mu
\mathchoice{\mkern-
3mu
}{}{}{}}
384 \def\intdots@
{\mathchoice{\@cdots
}%
385 {{\cdotp}\mkern1.5mu
{\cdotp}\mkern1.5mu
{\cdotp}}%
386 {{\cdotp}\mkern1mu{\cdotp}\mkern1mu{\cdotp}}%
387 {{\cdotp}\mkern1mu{\cdotp}\mkern1mu{\cdotp}}}
389 \def\iint{\DOTSI\protect\ints@
\tw@
}
390 \def\iiint{\DOTSI\protect\ints@
\thr@@
}
391 \def\iiiint{\DOTSI\protect\ints@
{4}}
392 \def\idotsint{\DOTSI\protect\ints@
\z@
}
395 \mkern-
7mu
\mathchoice{\mkern-
2mu
}{}{}{}%
396 \mathop{\mkern7mu\mathchoice{\mkern2mu}{}{}{}%
397 \intop\ifnum#1=
\z@
\intdots@
399 \ifnum#1>
\tw@
\intop\intkern@
\fi
400 \ifnum#1>
\thr@@
\intop\intkern@
\fi
405 \DN@
{\nolimits\ifx\@let@token
\limits\expandafter\@gobble
\fi}%
407 \begingroup \catcode`\"=
12
408 \gdef\newmcodes@
{\mathcode`\'
39\mathcode`\*
42\mathcode`\."
613A
%
409 \mathcode`\-
45\mathcode`\/
47\mathcode`\:"
603A
\relax}
411 \DeclareRobustCommand{\operatorname}{%
412 \@ifstar
{\qopname\newmcodes@ n
}%
413 {\qopname\newmcodes@
{no
}}}%
414 \DeclareRobustCommand{\qopname}[3]{\mathop{#1\kern\z@
\operator@font
#3}%
415 \csname #2limits@
\endcsname}
416 \def\arccos{\qopname\relax{no
}{arccos
}}
417 \def\arcsin{\qopname\relax{no
}{arcsin
}}
418 \def\arctan{\qopname\relax{no
}{arctan
}}
419 \def\arg{\qopname\relax{no
}{arg
}}
420 \def\cos{\qopname\relax{no
}{cos
}}
421 \def\cosh{\qopname\relax{no
}{cosh
}}
422 \def\cot{\qopname\relax{no
}{cot
}}
423 \def\coth{\qopname\relax{no
}{coth
}}
424 \def\csc{\qopname\relax{no
}{csc
}}
425 \def\deg{\qopname\relax{no
}{deg
}}
426 \def\det{\qopname\relax n
{det
}}
427 \def\dim{\qopname\relax{no
}{dim
}}
428 \def\exp{\qopname\relax{no
}{exp
}}
429 \def\gcd{\qopname\relax n
{gcd
}}
430 \def\hom{\qopname\relax{no
}{hom
}}
431 \def\inf{\qopname\relax n
{inf
}}
432 \def\injlim{\qopname\relax n
{inj\,lim
}}
433 \def\ker{\qopname\relax{no
}{ker
}}
434 \def\lg{\qopname\relax{no
}{lg
}}
435 \def\lim{\qopname\relax n
{lim
}}
436 \def\liminf{\qopname\relax n
{lim\,inf
}}
437 \def\limsup{\qopname\relax n
{lim\,sup
}}
438 \def\ln{\qopname\relax{no
}{ln
}}
439 \def\log{\qopname\relax{no
}{log
}}
440 \def\max{\qopname\relax n
{max
}}
441 \def\min{\qopname\relax n
{min
}}
442 \def\Pr{\qopname\relax n
{Pr
}}
443 \def\projlim{\qopname\relax n
{proj\,lim
}}
444 \def\sec{\qopname\relax{no
}{sec
}}
445 \def\sin{\qopname\relax{no
}{sin
}}
446 \def\sinh{\qopname\relax{no
}{sinh
}}
447 \def\sup{\qopname\relax n
{sup
}}
448 \def\tan{\qopname\relax{no
}{tan
}}
449 \def\tanh{\qopname\relax{no
}{tanh
}}
450 \def\operator@font
{\mathgroup\symoperators}
451 \def\operatornamewithlimits{\operatorname*
}
452 \def\varlim@
#1#2{\mathop{\vtop{\ialign{##
\crcr
453 \hfil$
#1\m@th
\operator@font lim$
\hfil\crcr
454 \noalign{\nointerlineskip\kern\ex@
}#2#1\crcr
455 \noalign{\nointerlineskip\kern-
\ex@
}\crcr}}}}
456 \def\varinjlim{\mathpalette\varlim@
\rightarrowfill@
}
457 \def\varprojlim{\mathpalette\varlim@
\leftarrowfill@
}
458 \def\varliminf{\mathpalette\varliminf@
{}}
459 \def\varliminf@
#1{\mathop{\@@underline
{\vrule\@depth
.2\ex@\@width
\z@
460 \hbox{$
#1\m@th
\operator@font lim$
}}}}
461 \def\varlimsup{\mathpalette\varlimsup@
{}}
462 \def\varlimsup@
#1{\mathop{\@@overline
463 {\hbox{$
#1\m@th
\operator@font lim$
}}}}
464 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
465 \def\numberwithin#1#2{\@ifundefined
{c@
#1}{\@nocounterr
{#1}}{%
466 \@ifundefined
{c@
#2}{\@nocnterr
{#2}}{%
467 \@addtoreset
{#1}{#2}%
468 \toks@
\expandafter\expandafter\expandafter{\csname the
#1\endcsname}%
469 \expandafter\xdef\csname the
#1\endcsname
470 {\expandafter\noexpand\csname the
#2\endcsname
472 \def\eqref#1{\textup{\tagform@
{\ref{#1}}}}
473 \def\bmod{\mskip-
\medmuskip\mkern5mu\mathbin
474 {\operator@font mod
}\penalty900
475 \mkern5mu\mskip-
\medmuskip}
476 \def\pod#1{\allowbreak\if@display
\mkern18mu\else\mkern8mu\fi(
#1)
}
477 \def\pmod#1{\pod{{\operator@font mod
}\mkern6mu#1}}
478 \def\mod#1{\allowbreak\if@display
\mkern18mu
479 \else\mkern12mu\fi{\operator@font mod
}\,\,
#1}
480 \newcommand{\cfrac}[3][c
]{{\displaystyle\frac{%
481 \strut\ifx r
#1\hfill\fi#2\ifx l
#1\hfill\fi}{#3}}%
482 \kern-
\nulldelimiterspace}
483 \def\lcfrac{\cfrac[l
]}
484 \def\rcfrac{\cfrac[r
]}
485 \def\overset#1#2{\binrel@
{#2}%
486 \binrel@@
{\mathop{\kern\z@
#2}\limits^
{#1}}}
487 \def\underset#1#2{\binrel@
{#2}%
488 \binrel@@
{\mathop{\kern\z@
#2}\limits_{#1}}}
490 \setbox\z@
\hbox{$
\displaystyle{\vphantom{#3}}#1{#3}\m@th$
}%
491 \setbox\tw@
\hbox{$
\displaystyle{#3}#2\m@th$
}%
492 \hskip\wd\z@
\hskip-
\wd\tw@
\mathop{\hskip\wd\tw@
\hskip-
\wd\z@
493 {\vphantom{#3}}#1{#3}#2}}
494 \renewcommand{\smash}[2][tb
]{%
496 \ifmmode\expandafter\mathpalette\expandafter\mathsm@sh
\else
497 \expandafter\makesm@sh
\fi{#2}}
498 \def\finsm@sh
{\def\mb@t
{\ht\z@
\z@
}\def\mb@b
{\dp\z@
\z@
}%
499 \def\mb@tb
{\mb@t
\mb@b
}%
500 {\csname mb@
\smash@
\endcsname}%
502 \def\rightarrowfill@
#1{\m@th
\setboxz@h
{$
#1\relbar$
}\ht\z@
\z@
503 $
#1\copy\z@
\mkern-
6mu
\cleaders
504 \hbox{$
#1\mkern-
2mu
\box\z@
\mkern-
2mu$
}\hfill
505 \mkern-
6mu
\mathord\rightarrow$
}
506 \def\leftarrowfill@
#1{\m@th
\setboxz@h
{$
#1\relbar$
}\ht\z@
\z@
507 $
#1\mathord\leftarrow\mkern-
6mu
\cleaders
508 \hbox{$
#1\mkern-
2mu
\copy\z@
\mkern-
2mu$
}\hfill
510 \def\leftrightarrowfill@
#1{\m@th
\setboxz@h
{$
#1\relbar$
}\ht\z@
\z@
511 $
#1\mathord\leftarrow\mkern-
6mu
\cleaders
512 \hbox{$
#1\mkern-
2mu
\box\z@
\mkern-
2mu$
}\hfill
513 \mkern-
6mu
\mathord\rightarrow$
}
514 \def\overarrow@
#1#2#3{\vbox{\ialign{##
\crcr#1#2\crcr
515 \noalign{\kern-
\ex@
\nointerlineskip}$
\m@th
\hfil#2#3\hfil$
\crcr}}}
516 \def\overrightarrow{\mathpalette{\overarrow@
\rightarrowfill@
}}
517 \def\overleftarrow{\mathpalette{\overarrow@
\leftarrowfill@
}}
518 \def\overleftrightarrow{\mathpalette{\overarrow@
\leftrightarrowfill@
}}
519 \def\underarrow@
#1#2#3{%
520 \vtop{\ialign{##
\crcr$
\m@th
\hfil#2#3\hfil$
\crcr
521 \noalign{\nointerlineskip\kern-
.5\ex@
}#1#2\crcr}}}
522 \def\underrightarrow{\mathpalette{\underarrow@
\rightarrowfill@
}}
523 \def\underleftarrow{\mathpalette{\underarrow@
\leftarrowfill@
}}
524 \def\underleftrightarrow{\mathpalette{\underarrow@
\leftrightarrowfill@
}}
525 \let\ifgtest@
\iffalse % initial value
526 \def\gtest@true
{\global\let\ifgtest@
\iftrue}
527 \def\gtest@false
{\global\let\ifgtest@
\iffalse}
531 {\uccode`
7=`\\
\uccode`
8=`m
\uccode`
9=`a
\uccode`
0=`t
\uccode`!=`h
533 \gdef\math@
#1#2#3#4#5#6\math@
{\gtest@false
\ifx 7#1\ifx 8#2%
534 \ifx 9#3\ifx 0#4\ifx !
#5\xdef\meaning@
{#6}\gtest@true
536 {\uccode`
7=`c
\uccode`
8=`h
\uccode`
9=`\"
537 \uppercase{\gdef\mathch@
#1#2#3#4#5#6\mathch@
{\gtest@false
538 \ifx 7#1\ifx 8#2\ifx 9#5\gtest@true
\xdef\meaning@
{9#6}\fi\fi\fi}}}
540 \def\getmathch@
#1.
#2\getmathch@
{\classnum@
#1 \divide\classnum@
4096
541 \ifcase\number\classnum@
\or\or\gdef\thedots@
{\dotsb@
}\or
542 \gdef\thedots@
{\dotsb@
}\fi}
543 {\uccode`
4=`b
\uccode`
5=`i
\uccode`
6=`n
544 \uppercase{\gdef\mathbin@
#1#2#3{\relaxnext@
545 \def\nextii@#
#1\mathbin@
{\ifx\@sptoken\@let@token
\gtest@true
\fi}%
546 \gtest@false
\DN@#
#1\mathbin@
{}%
547 \ifx 4#1\ifx 5#2\ifx 6#3\DN@
{\FN@
\nextii@
}\fi\fi\fi\next@
}}}
548 {\uccode`
4=`r
\uccode`
5=`e
\uccode`
6=`l
549 \uppercase{\gdef\mathrel@
#1#2#3{\relaxnext@
550 \def\nextii@#
#1\mathrel@
{\ifx\@sptoken\@let@token
\gtest@true
\fi}%
551 \gtest@false
\DN@#
#1\mathrel@
{}%
552 \ifx 4#1\ifx 5#2\ifx 6#3\DN@
{\FN@
\nextii@
}\fi\fi\fi\next@
}}}
553 {\uccode`
5=`m
\uccode`
6=`a
\uccode`
7=`c
554 \uppercase{\gdef\macro@
#1#2#3#4\macro@
{\gtest@false
555 \ifx 5#1\ifx 6#2\ifx 7#3\gtest@true
556 \xdef\meaning@
{\macro@@
#4\macro@@
}\fi\fi\fi}}}
557 \def\macro@@
#1->
#2\macro@@
{#2}
559 {\uccode`
6=`\\
\uccode`
7=`D
\uccode`
8=`O
\uccode`
9=`T
\uccode`
0=`S
560 \uppercase{\gdef\DOTS@
#1#2#3#4#5{\gtest@false
\DN@#
#1\DOTS@
{}%
561 \ifx 6#1\ifx 7#2\ifx 8#3\ifx 9#4\ifx 0#5\let\next@
\DOTS@@
564 {\uccode`
3=`B
\uccode`
4=`I
\uccode`
5=`X
565 \uppercase{\gdef\DOTS@@
#1{\relaxnext@
566 \def\nextii@#
#1\DOTS@
{\ifx\@sptoken\@let@token
\gtest@true
\fi}%
568 \ifx 3#1\global\DOTSCASE@
\z@
\else
569 \ifx 4#1\global\DOTSCASE@\@ne
\else
570 \ifx 5#1\global\DOTSCASE@
\tw@
\else\DN@#
#1\DOTS@
{}%
572 {\uccode`
5=`\\
\uccode`
6=`n
\uccode`
7=`o
\uccode`
8=`t
573 \uppercase{\gdef\not@
#1#2#3#4{\relaxnext@
574 \def\nextii@#
#1\not@
{\ifx\@sptoken\@let@token
\gtest@true
\fi}%
575 \gtest@false
\DN@#
#1\not@
{}%
576 \ifx 5#1\ifx 6#2\ifx 7#3\ifx 8#4\DN@
{\FN@
\nextii@
}\fi\fi\fi
578 \def\keybin@
{\gtest@true
579 \ifx\@let@token+
\else\ifx\@let@token=
\else\ifx\@let@token<
%
580 \else\ifx\@let@token>
\else\ifx\@let@token-
\else\ifx\@let@token*
%
581 \else\ifx\@let@token:
\else\gtest@false
\fi\fi\fi\fi\fi\fi\fi}
582 \@ifundefined
{@ldots
}{\def\@ldots
{\mathellipsis}}{}
583 \DeclareRobustCommand{\dots}{\relax
584 \csname\ifmmode m
\else t
\fi dots@
\endcsname}
585 \def\tdots@
{\leavevmode\unskip\relaxnext@
587 \ifx\@let@token,\,$
\else\ifx\@let@token.\,$
\else\ifx\@let@token;\,$
%
588 \else\ifx\@let@token:\,$
\else\ifx\@let@token?\,$
%
589 \else\ifx\@let@token!\,$
\else$
\fi\fi\fi\fi\fi\fi}%
591 \def\mdots@
{\FN@
\mdots@@
}
592 \def\mdots@@
{\gdef\thedots@
{\dotso@
}%
593 \ifx\@let@token
\boldsymbol\gdef\thedots@
\boldsymbol{\boldsymboldots@
}%
594 \else\ifx,\@let@token
\gdef\thedots@
{\dotsc}%
595 \else\ifx\not\@let@token
\gdef\thedots@
{\dotsb@
}%
597 \ifgtest@
\gdef\thedots@
{\dotsb@
}%
598 \else\xdef\meaning@
{\meaning\@let@token..........
}%
599 \xdef\meaning@@
{\meaning@
}%
600 \expandafter\math@
\meaning@
\math@
602 \expandafter\mathch@
\meaning@
\mathch@
603 \ifgtest@
\expandafter\getmathch@
\meaning@
\getmathch@
\fi
604 \else\expandafter\macro@
\meaning@@
\macro@
606 \expandafter\not@
\meaning@
\not@
\ifgtest@
\gdef\thedots@
{\dotsb@
}%
607 \else\expandafter\DOTS@
\meaning@
\DOTS@
609 \ifcase\number\DOTSCASE@
\gdef\thedots@
{\dotsb@
}%
610 \or\gdef\thedots@
{\dotsi}\else\fi
611 \else\expandafter\math@
\meaning@
\math@
612 \ifgtest@
\expandafter\mathbin@
\meaning@
\mathbin@
613 \ifgtest@
\gdef\thedots@
{\dotsb@
}%
614 \else\expandafter\mathrel@
\meaning@
\mathrel@
615 \ifgtest@
\gdef\thedots@
{\dotsb@
}%
616 \fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi
618 \def\boldsymboldots@
#1{%
619 \bold@true
\let\@let@token=
#1\let\delayed@=
#1\mdots@@
620 \boldsymbol#1\bold@false
}
621 \def\@cdots
{\mathinner{\cdotp\cdotp\cdotp}}
622 \def\dotsi{\!\@cdots
}
624 \def\rightdelim@
{\gtest@true
625 \ifx\@let@token)
\else
626 \ifx\@let@token
]\else
627 \ifx\@let@token
\rbrack\else
628 \ifx\@let@token\
}\else
629 \ifx\@let@token
\rbrace\else
630 \ifx\@let@token
\rangle\else
631 \ifx\@let@token
\rceil\else
632 \ifx\@let@token
\rfloor\else
633 \ifx\@let@token
\rgroup\else
634 \ifx\@let@token
\rmoustache\else
635 \ifx\@let@token
\right\else
636 \ifx\@let@token
\bigr\else
637 \ifx\@let@token
\biggr\else
638 \ifx\@let@token
\Bigr\else
639 \ifx\@let@token
\Biggr\else\gtest@false
640 \fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi}
642 \rightdelim@
\ifgtest@
643 \else\ifx\@let@token$
\gtest@true
644 \else\xdef\meaning@
{\meaning\@let@token..........
}%
645 \expandafter\macro@
\meaning@
\macro@
\ifgtest@
646 \expandafter\DOTS@
\meaning@
\DOTS@
648 \ifnum\DOTSCASE@=
\tw@
\gtest@true
\else\gtest@false
651 \def\dotso@
{\relaxnext@
653 \let\@let@token
\delayed@
654 \def\nextii@
{\extra@\@ldots
\ifgtest@\,
\fi}%
656 \def\nextii@
{\DN@
{\extra@\@ldots
\ifgtest@\,
\fi}\FN@
\next@
}%
661 \ifx\@let@token,
\else
662 \ifx\@let@token;
\else
663 \ifx\@let@token.
\else\extra@
665 \let\next@
#1\fi\fi\fi\fi\next@
}
666 \DeclareRobustCommand{\ldots}{\relax
667 \ifmmode \DN@
{\extrap@\@ldots
}%
668 \else \let\next@
\tdots@
\fi
670 \DeclareRobustCommand{\cdots}{\DN@
{\extrap@\@cdots
}\FN@
\next@
}
674 \DeclareRobustCommand{\dotsc}{%
675 \DN@
{\ifx\@let@token;\@ldots\,
%
676 \else \ifx\@let@token.\@ldots\,
%
677 \else \extra@\@ldots
\ifgtest@\,
\fi
680 \def\longrightarrow{\DOTSB\relbar\joinrel\rightarrow}
681 \def\Longrightarrow{\DOTSB\Relbar\joinrel\Rightarrow}
682 \def\longleftarrow{\DOTSB\leftarrow\joinrel\relbar}
683 \def\Longleftarrow{\DOTSB\Leftarrow\joinrel\Relbar}
684 \def\longleftrightarrow{\DOTSB\leftarrow\joinrel\rightarrow}
685 \def\Longleftrightarrow{\DOTSB\Leftarrow\joinrel\Rightarrow}
686 \def\mapsto{\DOTSB\mapstochar\rightarrow}
687 \def\longmapsto{\DOTSB\mapstochar\longrightarrow}
688 \def\hookrightarrow{\DOTSB\lhook\joinrel\rightarrow}
689 \def\hookleftarrow{\DOTSB\leftarrow\joinrel\rhook}
690 \def\doteq{\DOTSB\buildrel\textstyle.
\over=
}
691 \def\iff{\DOTSB\;
\Longleftrightarrow\;
}
692 \begingroup \catcode`\"=
12
693 \mathchardef\@tempa="
7000
695 \DeclareMathSymbol{\Gamma}{\mathord}{operators
}{"
00}
696 \DeclareMathSymbol{\Delta}{\mathord}{operators
}{"
01}
697 \DeclareMathSymbol{\Theta}{\mathord}{operators
}{"
02}
698 \DeclareMathSymbol{\Lambda}{\mathord}{operators
}{"
03}
699 \DeclareMathSymbol{\Xi}{\mathord}{operators
}{"
04}
700 \DeclareMathSymbol{\Pi}{\mathord}{operators
}{"
05}
701 \DeclareMathSymbol{\Sigma}{\mathord}{operators
}{"
06}
702 \DeclareMathSymbol{\Upsilon}{\mathord}{operators
}{"
07}
703 \DeclareMathSymbol{\Phi}{\mathord}{operators
}{"
08}
704 \DeclareMathSymbol{\Psi}{\mathord}{operators
}{"
09}
705 \DeclareMathSymbol{\Omega}{\mathord}{operators
}{"
0A
}
706 \DeclareMathSymbol{\varGamma}{\mathord}{letters
}{"
00}
707 \DeclareMathSymbol{\varDelta}{\mathord}{letters
}{"
01}
708 \DeclareMathSymbol{\varTheta}{\mathord}{letters
}{"
02}
709 \DeclareMathSymbol{\varLambda}{\mathord}{letters
}{"
03}
710 \DeclareMathSymbol{\varXi}{\mathord}{letters
}{"
04}
711 \DeclareMathSymbol{\varPi}{\mathord}{letters
}{"
05}
712 \DeclareMathSymbol{\varSigma}{\mathord}{letters
}{"
06}
713 \DeclareMathSymbol{\varUpsilon}{\mathord}{letters
}{"
07}
714 \DeclareMathSymbol{\varPhi}{\mathord}{letters
}{"
08}
715 \DeclareMathSymbol{\varPsi}{\mathord}{letters
}{"
09}
716 \DeclareMathSymbol{\varOmega}{\mathord}{letters
}{"
0A
}
720 \def\noaccents@
{\def\accentclass@
{0}}
721 \DeclareFontEncoding{OML
}{}{\noaccents@
}
722 \DeclareFontEncoding{OMS
}{}{\noaccents@
}
723 \edef\@tempa
#1#2{\def#1{\mathaccent\string"
\noexpand\accentclass@
#2 }}
724 \@tempa
\hat{05E
}\@tempa
\check{014}\@tempa
\tilde{07E
}\@tempa
\acute{013}
725 \@tempa
\grave{012}\@tempa
\dot{05F
}\@tempa
\ddot{07F
}\@tempa
\breve{015}
727 \newcount\skewcharcount@
728 \newcount\familycount@
729 \def\theskewchar@
{\familycount@\@ne
730 \global\skewcharcount@
\the\skewchar\textfont\@ne
731 \ifnum\mathgroup>
\m@ne
\ifnum\mathgroup<
16
732 \global\familycount@
\the\mathgroup\relax
733 \global\skewcharcount@
\the\skewchar\textfont\the\mathgroup\relax\fi\fi
734 \ifnum\skewcharcount@>
\m@ne
735 \ifnum\skewcharcount@<
128
736 \multiply\familycount@
256
737 \global\advance\skewcharcount@
\familycount@
738 \global\advance\skewcharcount@
28672
739 \mathchar\skewcharcount@
\else
740 \global\skewcharcount@
\m@ne
\fi\else
741 \global\skewcharcount@
\m@ne
\fi}
742 \newcount\pointcount@
743 \def\getpoints@
#1.
#2\getpoints@
{\pointcount@
#1 }
744 \newdimen\accentdimen@
746 \def\dimentomu@
{\multiply\accentdimen@
100
747 \expandafter\getpoints@
\the\accentdimen@
\getpoints@
748 \multiply\pointcount@
18
749 \divide\pointcount@\@m
750 \global\accentmu@
\pointcount@
}
751 \def\mathaccent@
#1#2{\ifnum\mathgroup=
\m@ne
\xdef\thefam@
{1}\else
752 \xdef\thefam@
{\the\mathgroup}\fi
754 \setboxz@h
{\unbracefonts@$
\m@th
\mathgroup\thefam@
\relax#2$
}%
755 \ifdim\accentdimen@=
\z@
\DN@
{\mathaccent#1{#2}}%
756 \setbox\@ne
\hbox{\unbracefonts@
757 $
\m@th
\mathgroup\thefam@
\relax#2\theskewchar@$
}
758 \setbox\tw@
\hbox{$
\m@th
\ifnum\skewcharcount@=
\m@ne
\else
759 \mathchar\skewcharcount@
\fi$
}%
760 \global\accentdimen@
\wd\@ne
\global\advance\accentdimen@-
\wdz@
761 \global\advance\accentdimen@-
\wd\tw@
762 \global\multiply\accentdimen@
\tw@
763 \dimentomu@
\global\advance\accentmu@\@ne
764 \else\DN@
{{\mathaccent#1{#2\mkern\accentmu@ mu
}%
765 \mkern-
\accentmu@ mu
}{}}\fi
767 \def\unbracefonts@
{\let\math@bgroup\@empty
\let\math@egroup\@empty
}
768 \begingroup \catcode`\"=
12
769 \def\@tempa
#1#2{\gdef#1{\RIfM@
\DN@
{\mathaccent@
{"
\accentclass@
#2 }}%
770 \else\DN@
{\nonmatherr@
{#1}}\fi\next@
}}
771 \@tempa
\Hat{05E
}\@tempa
\Check{014}\@tempa
\Tilde{07E
}\@tempa
\Acute{013}
772 \@tempa
\Grave{012}\@tempa
\Dot{05F
}\@tempa
\Ddot{07F
}\@tempa
\Breve{015}
774 \gdef\Vec{\RIfM@
\DN@
{\mathaccent@
{"
017E
}}\else
775 \DN@
{\nonmatherr@
\Vec}\fi\next@
}
777 \begingroup \catcode`\"=
12
778 \gdef\@@sqrt
#1{\radical"
270370 {#1}}
780 \@saveprimitive
\overline\@@overline
781 \def\overline#1{\@@overline
{#1}}
782 \def\boxed#1{\fbox{\m@th$
\displaystyle#1$
}}
783 \def\setb@ck
{\iffirstchoice@
\global\advance\c@equation
\m@ne
\fi}
786 \interdisplaylinepenalty\@M
787 \def\allowdisplaybreaks{%
788 \new@ifnextchar
[\allowdspbrks@
{\allowdspbrks@
[4]}}
789 \def\allowdspbrks@
[#1]{%
790 \interdisplaylinepenalty\getdsp@pen
{#1}}
797 \def\displaybreak{\PackageError{amstex
}{\Invalid@@
\displaybreak}\@eha
}
799 \def\displaybreak{\new@ifnextchar
[\dspbrk@
{\dspbrk@
[4]}}}
800 \def\dspbrk@
[#1]{\global\dspbrk@lvl
#1\relax}
801 \def\math@cr
{{\ifnum0=`
}\fi
802 \new@ifstar
{\global\@eqpen\@M
\math@cr@
}%
804 \ifnum\dspbrk@lvl <
\z@
\interdisplaylinepenalty
805 \else -\@getpen
\dspbrk@lvl
\fi
807 \def\math@cr@
{\new@ifnextchar
[\math@cr@@
{\math@cr@@
[\z@
]}}
808 \def\math@cr@@
[#1]{\ifnum0=`
{\fi}\math@cr@@@
809 \noalign{\vskip#1\relax}}
810 \def\Let@
{\let\\
\math@cr
}
811 \def\restore@math@cr
{\def\math@cr@@@
{\cr}}
813 \def\intertext{\PackageError{amstex
}{\Invalid@@
\intertext}\@eha
}
814 \def\intertext@
{\def\intertext#
#1{\noalign{%
815 \penalty\postdisplaypenalty\vskip\belowdisplayskip
816 \vbox{\normalbaselines\noindent#
#1}%
817 \penalty\predisplaypenalty\vskip\abovedisplayskip}}}
819 {tag cannot be used at this point.
\space
820 If you don't understand why^^Jyou should consult
821 the documentation.^^JBut don't worry: just continue, and I'll
822 forget what happened.
}
823 \def\gobble@tag
{\new@ifstar\@gobble\@gobble
}
824 \def\invalid@tag
#1{\PackageError{amstex
}{#1}{\the\tag@help
}\gobble@tag
}
825 \def\dft@tag
{\invalid@tag
{\string\tag\space not allowed here
}}
826 \def\default@tag
{\let\tag\dft@tag
}
828 \def\maketag@@
{\new@ifstar
\maketag@@@
\tagform@
}
829 \def\maketag@@@
#1{\hbox{\m@th
\normalfont#1}}
830 \def\tagform@
#1{\maketag@@@
{(
\ignorespaces#1\unskip)
}}
831 \def\thetag{\leavevmode\tagform@
}
832 \def\make@df@tag
{\new@ifstar
\make@df@tag@@
\make@df@tag@@@
}
833 \def\make@df@tag@@
#1{%
834 \def\@currentlabel
{#1}%
835 \gdef\df@tag
{\maketag@@@
{#1}}}
836 \def\make@df@tag@@@
#1{\@seteqlabel
{#1}\gdef\df@tag
{\tagform@
{#1}}}
837 \def\@seteqlabel
#1{\toks@\@xp
{\p@equation
{#1}}%
838 \edef\@currentlabel
{\the\toks@
}}
839 \def\notag{\nonumber}
841 \def\@eqnnum
{\hbox to1sp
{}\rlap{\normalfont
842 \hskip -
\displaywidth\tagform@
\theequation}}
845 \let\@adjusttag\@empty
847 \def\adjusttag#1{\skip@
#1\relax\gdef\@adjusttag
{#1}}
850 \ifx\@adjusttag\@empty
\else
851 \vskip\@adjusttag
\relax
852 \global\let\@adjusttag\@empty
855 \def\multilimits@
{\bgroup
859 \baselineskip\fontdimen10 \scriptfont\tw@
860 \advance\baselineskip\fontdimen12 \scriptfont\tw@
861 \lineskip\thr@@
\fontdimen8 \scriptfont\thr@@
862 \lineskiplimit\lineskip
863 \vbox\bgroup\ialign\bgroup\hfil$
\m@th
\scriptstyle{##
}$
\hfil\crcr}
864 \def\Sb{_
\multilimits@
}
865 \def\Sp{^
\multilimits@
}
866 \def\endSb{\crcr\egroup\egroup\egroup}
868 \def\smallmatrix{\null\,
\vcenter\bgroup
869 \Let@
\restore@math@cr
\default@tag
870 \baselineskip6\ex@
\lineskip1.5
\ex@
\lineskiplimit\lineskip
871 \ialign\bgroup\hfil$
\m@th
\scriptstyle{##
}$
\hfil&&
\thickspace\hfil
872 $
\m@th
\scriptstyle{##
}$
\hfil\crcr}
873 \def\endsmallmatrix{\crcr\egroup\egroup\,
}
874 \newcount\c@MaxMatrixCols
877 \def\matrix{\hskip -
\arraycolsep\array{*
\c@MaxMatrixCols c
}}
878 \def\endmatrix{\endarray \hskip -
\arraycolsep}
879 \@ifundefined
{prepnext@tok
}{%
881 \setbox\@arstrutbox
\hbox{\vrule\@height
\arraystretch\ht\strutbox
882 \@depth
\arraystretch\dp\strutbox \@width
\z@
}%
883 \@mkpream
{#2}\edef\@preamble
{\ialign \noexpand\@halignto
884 \bgroup \tabskip\z@ \@arstrut \@preamble
\tabskip\z@
\cr}%
885 \let\@startpbox\@@startpbox
\let\@endpbox\@@endpbox
886 \if #1t
\vtop \else \if#1b
\vbox \else \vcenter \fi\fi
887 \bgroup \let\par\@empty
888 \let\@sharp##
\let\protect\relax
889 \lineskip\z@
\baselineskip\z@\@preamble
}%
890 \begingroup \lccode`\~=`\@
\catcode`\~=
\active % just to be sure!
892 \gdef\@xexpast
#1*
#2#3#4\@@
{\begingroup
893 \def~
{@
}\edef\reserved@a
{#1}\@tempcnta
#2\relax
894 \ifnum\@tempcnta >
\z@
895 \@whilenum\@tempcnta >
\z@
\do
896 {\edef\reserved@a
{\reserved@a
#3}\advance\@tempcnta
\m@ne
}%
897 \let\reserved@b\@xexpast
898 \else \let\reserved@b\@xexnoop
\fi
899 \expandafter\reserved@b
\reserved@a
#4\@@
900 \expandafter\endgroup
901 \expandafter\def\expandafter\reserved@a
\expandafter{\reserved@a
}%
902 \let\@tempa
\reserved@a
906 }{}% End of \@ifundefined test.
907 \def\pmatrix{\left(
\matrix}
908 \def\endpmatrix{\endmatrix\right)
}
909 \def\bmatrix{\left[\matrix}
910 \def\endbmatrix{\endmatrix\right]}
911 \def\vmatrix{\left|
\matrix}
912 \def\endvmatrix{\endmatrix\right|
}
913 \def\Vmatrix{\left\|
\matrix}
914 \def\endVmatrix{\endmatrix\right\|
}
916 \def\hdotsfor#1{\if\noexpand#1[\expandafter\shdots@for
\else
917 \hdots@for\@ne
{#1}\fi}
918 \newmuskip\dotsspace@
919 \def\shdots@for
#1]{\hdots@for
{#1}}
920 \def\hdots@for
#1#2{\multicolumn{#2}c
%
921 {\m@th
\dotsspace@
1.5mu
\mkern-
#1\dotsspace@
922 \xleaders\hbox{$
\m@th
\mkern#1\dotsspace@.
\mkern#1\dotsspace@$
}%
924 \mkern-
#1\dotsspace@
}%
926 \def\cases{\left\
{\def\arraystretch{1.2}\hskip-
\arraycolsep
928 \def\endcases{\endarray\hskip-
\arraycolsep\right.
}
935 {An extra & here is so disastrous that you should probably exit^^J
939 \def\addto@envbody
#1{\@envbody
\expandafter{\the\@envbody
#1}}
940 \def\collect@body
#1{%
942 \def\process@envbody
{%
943 \expandafter#1\expandafter{\the\@envbody
}}%
944 \expandafter\let\csname\@currenvir
\endcsname\collect@@body
945 \csname\@currenvir
\endcsname}
946 \def\collect@@body
#1\end#2{%
948 \ifx\@tempa\@currenvir
950 \expandafter\edef\csname\@currenvir
\endcsname
951 {\noexpand\process@envbody
\noexpand\end{\@tempa
}}%
953 \addto@envbody
{#1\end{#2}}%
955 \csname\@currenvir
\endcsname}
956 \newenvironment{aligned
}{%
957 \relax\ifmmode\else\nonmatherr@
{\begin{aligned
}}\fi
958 \null\,
\new@ifnextchar
[{\aligned@
}{\aligned@
[c
]}%
963 \if #1t
\vtop \else \if#1b
\vbox \else \vcenter \fi\fi
965 \Let@
\restore@math@cr
967 \ifinany@
\else\openup\jot\fi
968 \ialign\bgroup\hfil\strut@$
\m@th
\displaystyle{##
}$&
%
969 $
\m@th
\displaystyle{{}##
}$
\hfil\crcr}
973 \def\doat@
#1{\toks@
{\hfil\strut@$
\m@th
974 \displaystyle{\the\hashtoks@
}$&$
\m@th
\displaystyle
975 {{}\the\hashtoks@
}$
\hfil}%
976 \atcount@
#1\relax\advance\atcount@
\m@ne
977 \loop\ifnum\atcount@>
\z@
\toks@
\expandafter{\the\toks@&
\hfil$
\m@th
978 \displaystyle{\the\hashtoks@
}$&$
\m@th
979 \displaystyle{{}\the\hashtoks@
}$
\hfil}\advance
980 \atcount@
\m@ne
\repeat
981 \xdef\preamble@
{\the\toks@
}\xdef\preamble@@
{\preamble@
}}
982 \newenvironment{alignedat
}[2][c
]{%
984 \if #1t
\vtop \else \if#1b
\vbox \else \vcenter \fi\fi
985 \bgroup\doat@
{#2}\Let@
\restore@math@cr
\default@tag
986 \ifinany@
\else\openup\jot\fi\ialign\bgroup\span\preamble@@
\crcr
990 \newenvironment{gathered
}[1][c
]{%
991 \relax\ifmmode\else\nonmatherr@
{\begin{gathered
}}\fi
993 \if #1t
\vtop \else \if#1b
\vbox \else \vcenter \fi\fi
994 \bgroup\Let@
\restore@math@cr
995 \ifinany@
\else\openup\jot\fi\ialign
996 \bgroup\hfil\strut@$
\m@th
\displaystyle##$
\hfil\crcr
1000 \def\tag@in@align
{\relax
1001 \iftag@
\DN@
{\invalid@tag
{Multiple
\string\tag}}\else
1003 \if@eqnsw
\global\@eqnswfalse
\fi
1004 \let\next@
\make@df@tag
\fi
1006 \def\math@cr@@@align
{%
1007 \if@eqnsw
\global\tag@true
\fi
1015 \if@eqnsw
\tagform@
\theequation\stepcounter{equation
}\else
1016 \iftag@
\df@tag
\fi\fi
1017 \global\@eqnswtrue
\cr}
1018 \def\Tag@
{\relax\iftag@
\else\firstchoice@true
1019 \PackageError{amstex
}{%
1020 Extra & on this line
%
1021 }{\the\andhelp@
% "An extra & here is disastrous"
1025 \newdimen\maxlwidth@
1026 \newdimen\maxrwidth@
1028 \def\measure@
#1{\lwidth@
\z@
\rwidth@
\z@
\maxlwidth@
\z@
\maxrwidth@
\z@
1031 \everycr{\noalign{\global\tag@false
\global\and@
\z@
}}\Let@
1033 \let\notag\@empty
\let\nonumber\@empty
1035 \halign{\setboxz@h
{$
\m@th
\displaystyle{\@lign##
}$
}%
1036 \global\lwidth@
\wdz@
1037 \ifdim\lwidth@>
\maxlwidth@
\global\maxlwidth@
\lwidth@
\fi
1038 \global\advance\and@\@ne
1039 &
\setboxz@h
{$
\m@th
\displaystyle{{}\@lign##
}$
}%
1040 \global\rwidth@
\wdz@
1041 \ifdim\rwidth@>
\maxrwidth@
\global\maxrwidth@
\rwidth@
\fi
1042 \global\advance\and@\@ne
1043 &
\Tag@\@gobble
{##
}\crcr#1\crcr}}%
1044 \totwidth@
\maxlwidth@
\advance\totwidth@
\maxrwidth@
}
1045 \def\displ@y
{\global\dt@ptrue
\openup\jot\m@th
1046 \everycr{\noalign{\ifdt@p
\global\dt@pfalse
1047 \vskip-
\lineskiplimit \vskip\normallineskiplimit
1048 \else \penalty\@eqpen
\fi}}}
1049 \def\displ@y@
{\global\dt@ptrue
\openup\jot
1050 \everycr{\noalign{\global\tag@false
1052 \global\dspbrk@lvl
\m@ne
1053 \ifdt@p
\global\dt@pfalse
1054 \vskip-
\lineskiplimit\vskip\normallineskiplimit\else
1055 \penalty\@eqpen
\fi}}}
1056 \def\black@
#1{\noalign{\ifdim#1>
\displaywidth
1057 \dimen@
\prevdepth\nointerlineskip
1058 \vskip-
\ht\strutbox@
\vskip-
\dp\strutbox@
1059 \vbox{\noindent\hbox to
#1{\strut@
\hfill}}%
1062 \def\align{\ifingather@
1064 \DN@
{\@nameuse
{align (in
\string\gather)
}}%
1065 \else \ifmmode\nomath@env
1066 \DN@
{\let\endalign\relax\@gobble
}\else
1067 $$
\stepcounter{equation
}%
1068 \st@rredfalse
\let\next@
\align@
\fi\fi
1069 \collect@body
\next@
}
1070 \@namedef
{align*
}{\ifingather@
1072 \DN@
{\@nameuse
{align* (in
\string\gather)
}}\else
1074 \DN@
{\@namedef
{endalign*
}{}\@gobble
}\else
1076 \let\next@
\align@
\fi\fi
1077 \collect@body
\next@
}
1079 \def\align@
{\inalign@true
\inany@true
1080 \displaybreak@
\intertext@
1081 \let\math@cr@@@
\math@cr@@@align
1082 \let\tag\tag@in@align
1083 \global\and@
\z@
\global\dspbrk@lvl
\m@ne
1084 \iftagsleft@
\DN@
{\@nameuse
{align
}}\else
1085 \DN@
{\@nameuse
{align
\space}}\fi\next@
}
1086 \@namedef
{align
}#1{%
1089 \global\dspbrk@lvl
\m@ne
1091 \advance\totwidth@\@mathmargin
%%*F
1093 \ifdim\totwidth@>
\displaywidth
1094 \let\displaywidth@
\totwidth@
1096 \let\displaywidth@
\displaywidth
1102 \global\dspbrk@lvl
\m@ne
1109 \ifst@rred
\else\@seteqlabel
\theequation\fi
1110 \tabskip\@mathmargin
%%*F
1111 \dimen@
\displaywidth %%*F
1114 \tabskip\z@skip
%%*F
1115 \advance\dimen@-\@mathmargin
%%*F
1118 \halign to
\dimen@
\bgroup %%*F
1119 \ifst@rred
\nonumber\fi
1122 \setboxz@h
{\global\tag@false$
\m@th
\displaystyle{\@lign##
}$
}%
1123 \global\lwidth@
\wdz@
1124 \global\lineht@
\ht\z@
1126 \global\advance\and@\@ne
1128 &
\setboxz@h
{$
\m@th
\displaystyle{{}\@lign##
}$
}%
1129 \global\rwidth@
\wdz@
1130 \ifdim\ht\z@>
\lineht@
1131 \global\lineht@
\ht\z@
1135 \global\advance\and@\@ne
1137 &
\kern-
\displaywidth@
1138 \setboxz@h
{\@lign
\strut@
{##
}}%
1140 \dimen@\@mathmargin
%%*F
1141 \advance\dimen@
\maxlwidth@
%%*F
1142 \advance\dimen@-
\lwidth@
%%*F
1144 \dimen@
\displaywidth
1145 \advance\dimen@-
\totwidth@
1147 \advance\dimen@
\maxlwidth@
1148 \advance\dimen@-
\lwidth@
1150 \ifdim\dimen@<
\tw@
\wdz@
1151 \rlap{\vbox{\normalbaselines\boxz@
\vbox to
\lineht@
{}}}%
1155 \tabskip\displaywidth@
1159 \@namedef
{align
\space}#1{%
1162 \advance\totwidth@\@mathmargin
%%*F
1165 \global\dspbrk@lvl
\m@ne
1167 \everycr{\noalign{\global\and@
\z@
\global\dspbrk@lvl
\m@ne
}}%
1172 \ifst@rred
\else\@seteqlabel
\theequation\fi
1173 \tabskip\@mathmargin
%%*F
1174 \dimen@
\displaywidth %%*F
1177 \tabskip\z@skip
%%*F
1178 \advance\dimen@-\@mathmargin
%%*F
1181 \halign to
\dimen@
\bgroup %%*F
1182 \ifst@rred
\nonumber\fi
1185 \setboxz@h
{\global\tag@false$
\m@th
\displaystyle{\@lign##
}$
}%
1186 \global\lwidth@
\wdz@
\boxz@
1187 \global\advance\and@\@ne
1189 &
\setboxz@h
{$
\m@th
\displaystyle{{}\@lign##
}$
}%
1190 \global\rwidth@
\wdz@
1193 \global\advance\and@\@ne
1195 &
\setboxz@h
{\@lign
\strut@
{##
}}%
1196 \dimen@
\displaywidth
1197 \advance\dimen@-
\totwidth@
1199 \advance\dimen@
\maxrwidth@
1200 \advance\dimen@-
\rwidth@
1201 \ifdim\dimen@<
\tw@
\wdz@
1202 \llap{\vtop{\@movetag
\normalbaselines\null\boxz@
}}%%*T
1209 \def\endalign{\math@cr@@@align
1211 \egroup$$
\global\@ignoretrue
\setb@ck
}
1213 \@namedef
{endalign*
}{\math@cr@@@align
\black@
\totwidth@
1214 \egroup$$
\global\@ignoretrue
}
1215 \@namedef
{align (in
\string\gather)
}{%
1216 \ifst@rred
\stepcounter{equation
}\fi
1217 \def\endalign{\@nameuse
{endalign (in
\string\gather)
}\ifnum0=`
{\fi}}%
1218 \vcenter\bgroup\st@rredfalse
1219 \collect@body
\align@
}
1220 \@namedef
{endalign (in
\string\gather)
}{%
1221 \math@cr@@@align
\black@
\totwidth@
1223 \ifst@rred
\setb@ck
\fi% this ifst@rred is set by the enclosing gather
1224 \global\tag@false
\global\@eqnswfalse
}
1225 \@namedef
{align* (in
\string\gather)
}{%
1226 \@namedef
{endalign*
}{\@nameuse
{endalign* (in
\string\gather)
}%
1228 \vcenter\bgroup\st@rredtrue
1229 \collect@body
\align@
}
1230 \@namedef
{endalign* (in
\string\gather)
}{%
1231 \math@cr@@@align
\black@
\totwidth@
\egroup\egroup
1232 \global\tag@false
\global\@eqnswfalse
}
1235 \ifmmode\nomath@env
\DN@
{\let\endalignat\relax\@gobble
}\else$$
%
1236 \st@rredfalse
\stepcounter{equation
}\@seteqlabel
\theequation
1237 \DN@
{\@nameuse
{alignat
}#1}\fi
1238 \collect@body
\next@
}
1239 \@namedef
{alignat*
}#1{%
1240 \ifmmode\nomath@env
\DN@
{\@namedef
{endalignat*
}{}\@gobble
}\else$$
%
1242 \DN@
{\@nameuse
{alignat
}#1}\fi
1243 \collect@body
\next@
}
1245 \newbox\savealignat@
1246 \def\math@cr@@@alignat
{%
1247 \if@eqnsw
\global\tag@true
\fi
1249 \multiply\count@
\tw@
1250 \xdef\next@
{}\loop\ifnum\count@>
\and@
\xdef\next@
{&
\next@
}%
1251 \advance\count@
\m@ne
\repeat\else
1255 \if@eqnsw
\tagform@
\theequation\stepcounter{equation
}\else
1256 \iftag@
\df@tag
\fi\fi
1257 \global\@eqnswtrue
\cr}%
1258 \@namedef
{alignat
}#1#2{%
1261 \let\tag\tag@in@align
1262 \def\math@cr@@@
{\count@
#1\relax \math@cr@@@alignat
}%
1272 \setbox\savealignat@
\hbox{%
1273 $
\m@th
\displaystyle\Let@
1275 \vbox{\firstchoice@false
\halign{\span\preamble@@
\crcr#2\crcr}}$
%
1280 \tabskip\@mathmargin
%%*F
1281 \halign to
\displaywidth\bgroup
1282 \span\preamble@@
\crcr
1285 \def\endalignat{\math@cr@@@
\black@
{\wd\savealignat@
}%
1286 \egroup\setb@ck$$
\global\@ignoretrue
}
1287 \@namedef
{endalignat*
}{\math@cr@@@
\black@
{\wd\savealignat@
}\egroup
1288 $$
\global\@ignoretrue
}
1290 \ifmmode\nomath@env
\DN@
{\let\endxalignat\relax\@gobble
}\else$$
%
1291 \st@rredfalse
\stepcounter{equation
}\@seteqlabel
\theequation
1292 \DN@
{\@nameuse
{xalignat
}#1}\fi
1293 \collect@body
\next@
}
1294 \@namedef
{xalignat*
}#1{%
1295 \ifmmode\nomath@env
\DN@
{\@namedef
{endxalignat*
}{}\@gobble
}\else$$
%
1297 \DN@
{\@nameuse
{xalignat
}#1}\fi
1298 \collect@body
\next@
}
1299 \let\endxalignat=
\endalignat
1301 \expandafter\let\csname endxalignat*
\expandafter
1302 \endcsname\csname endalignat*
\endcsname
1303 \@namedef
{xalignat
}#1#2{%
1306 \let\tag\tag@in@align
1307 \def\math@cr@@@
{\count@
#1\relax\math@cr@@@alignat
}%
1312 \setbox\savealignat@
\hbox{%
1313 $
\m@th
\displaystyle\Let@
1317 \halign{\span\preamble@@
\crcr#2\crcr}%
1324 \tabskip\@mathmargin
%%*F
1325 \halign to
\displaywidth\bgroup
1326 \span\preamble@@
\crcr#2%
1329 \let\TAG@
\Tag@
\let\Tag@
0%
1330 \ifmeasuring@
\def\llap@#
#1{\setboxz@h
{#
#1}\hbox to
\tw@
\wdz@
{}}%
1331 \def\rlap@#
#1{\setboxz@h
{#
#1}\hbox to
\tw@
\wdz@
{}}\else
1332 \let\llap@
\llap\let\rlap@
\rlap\fi
1333 \toks@
{\hfil\strut@$
\m@th
\displaystyle{\@lign
\the\hashtoks@
}$
%
1335 \global\advance\and@\@ne
1336 &$
\m@th
\displaystyle{{}\@lign
\the\hashtoks@
}$
\hfil
1337 \ifxat@
\tabskip\@centering
\fi\global\advance\and@\@ne
}%
1339 \@temptokena
{\tabskip\@centering&
\Tag@
\kern-
\displaywidth
1343 \global\advance\and@\@ne
\tabskip\displaywidth}\else
1344 \@temptokena
{\tabskip\@centering&
\Tag@
\llap@
{\@lign
1346 }\global\advance\and@\@ne
\tabskip\z@skip
}\fi
1347 \atcount@
#1\relax\advance\atcount@
\m@ne
1348 \loop\ifnum\atcount@>
\z@
1349 \toks@
\expandafter{\the\toks@&
\hfil$
\m@th
\displaystyle{\@lign
1350 \the\hashtoks@
}$
\global\advance\and@\@ne
1352 &$
\m@th
\displaystyle{{}\@lign
\the\hashtoks@
}$
\hfil\ifxat@
1353 \tabskip\@centering
\fi\global\advance\and@\@ne
}\advance\atcount@
\m@ne
1355 \xdef\preamble@
{\the\toks@
\the\@temptokena
}%
1356 \xdef\preamble@@
{\ifst@rred
\noexpand\nonumber\fi\preamble@
}%
1359 \ifmmode\nomath@env
\DN@
{\let\endxxalignat\relax\@gobble
}\else$$
%
1360 \DN@
{\@nameuse
{xxalignat
}#1}\fi
1361 \collect@body
\next@
}
1362 \@namedef
{xxalignat
}#1#2{\inany@true
1363 \displaybreak@
\intertext@
1364 \displ@y
\setbox\savealignat@
\hbox{$
\m@th
\displaystyle\Let@
1366 \vbox{\firstchoice@false
\halign{\span\preamble@@
\crcr#2\crcr}}$
}%
1367 \Let@
\xxattag@
{#1}\tabskip\z@skip
\halign to
\displaywidth\bgroup
1368 \span\preamble@@
\crcr#2}
1369 \expandafter\let\expandafter\endxxalignat\csname endxalignat*
\endcsname
1370 \def\xxattag@
#1{\toks@
{\tabskip\z@skip
\hfil\strut@
1371 $
\m@th
\displaystyle{\the\hashtoks@
}$&
%
1372 $
\m@th
\displaystyle{{}\the\hashtoks@
}$
\hfil\tabskip\@centering&
}%
1373 \atcount@
#1\relax\advance\atcount@
\m@ne
\loop\ifnum\atcount@>
\z@
1376 {\the\toks@&
\hfil$
\m@th
\displaystyle{\the\hashtoks@
}$
%
1377 \tabskip\z@skip&$
\m@th
\displaystyle{{}\the\hashtoks@
}$
\hfil
1378 \tabskip\@centering
}\advance\atcount@
\m@ne
\repeat
1379 \xdef\preamble@
{\the\toks@
\tabskip\z@skip
}\xdef\preamble@@
{\preamble@
}}
1381 \newdimen\gmaxwidth@
1382 \def\gmeasure@
#1{\gwidth@
\z@
\gmaxwidth@
\z@
\setbox\@ne
\vbox{\Let@
1383 \firstchoice@false
\let\tag\gobble@tag
1384 \halign{\setboxz@h
{$
\m@th
\displaystyle{##
}$
}\global\gwidth@
\wdz@
1385 \ifdim\gwidth@>
\gmaxwidth@
\global\gmaxwidth@
\gwidth@
\fi
1386 &\@gobble
{##
}\crcr#1\crcr}}}
1387 \def\math@cr@@@gather
{%
1388 \if@eqnsw
\global\tag@true
\fi
1390 \DN@
{&
\relax \if@eqnsw
1391 \tagform@
\theequation \stepcounter{equation
}%
1392 \else\iftag@
\df@tag
\fi\fi}%
1394 \expandafter\@gobble
\fi
1396 \global\@eqnswtrue
\cr}
1398 \ifmmode\nomath@env
\DN@
{\let\endgather\relax\@gobble
}\else $$
%
1399 \ingather@true
\inany@true
1400 \stepcounter{equation
}%
1401 \let\tag\tag@in@align
\st@rredfalse
1402 \displaybreak@
\intertext@
1404 \Let@\@seteqlabel
\theequation
1405 \let\math@cr@@@
\math@cr@@@gather
1406 \iftagsleft@
\DN@
{\@nameuse
{gather
}}\else
1407 \DN@
{\@nameuse
{gather
\space}}\fi\fi
1408 \collect@body
\next@
}
1409 \@namedef
{gather*
}{%
1410 \ifmmode\nomath@env
\DN@
{\@namedef
{endgather*
}{}\@gobble
}\else $$
%
1411 \ingather@true
\inany@true
1412 \let\tag\tag@in@align
\st@rredtrue
1413 \displaybreak@
\intertext@
1415 \let\math@cr@@@
\math@cr@@@gather
1416 \iftagsleft@
\DN@
{\@nameuse
{gather
}}\else
1417 \DN@
{\@nameuse
{gather
\space}}\fi\fi
1418 \collect@body
\next@
}
1420 \@namedef
{gather
\space}#1{%
1423 \advance\gmaxwidth@\@mathmargin
%%*F
1426 \tabskip\@mathmargin
%%*F
1427 \halign to
\displaywidth\bgroup
1428 \ifst@rred
\nonumber\else\global\@eqnswtrue
\fi
1429 \if@fleqn
\else\hfil\fi %%*F
1431 \setboxz@h
{\global\tag@false$
\m@th
\displaystyle{##
}$
}%
1432 \global\gwidth@
\wdz@
\boxz@
1434 \tabskip\@centering
%%*F
1435 &
\setboxz@h
{\strut@
{##
}}%
1436 \dimen@
\displaywidth
1437 \advance\dimen@-
\gwidth@
1439 \advance\dimen@-\@mathmargin
%%*F
1441 \divide\dimen@
\tw@
%%*B
1443 \ifdim\dimen@<
\tw@
\wdz@
%%*
1444 \llap{\vtop{\@movetag
\normalbaselines\null\boxz@
}}%%*T %%*
1452 \def\endgather{\math@cr
1453 \black@
\gmaxwidth@
\egroup $$
\setb@ck
\global\@ignoretrue
}
1455 \@namedef
{endgather*
}{\math@cr
1456 \black@
\gmaxwidth@
\egroup $$
\global\@ignoretrue
}
1457 \@namedef
{gather
}#1{%
1461 \advance\gmaxwidth@\@mathmargin
%%*F
1463 \ifdim\gmaxwidth@>
\displaywidth
1464 \let\gdisplaywidth@
\gmaxwidth@
1466 \let\gdisplaywidth@
\displaywidth
1468 \tabskip\@mathmargin
%%*F
1469 \halign to
\displaywidth\bgroup
1470 \ifst@rred
\nonumber\else\global\@eqnswtrue
\fi
1471 \if@fleqn
\else\hfil\fi %%*F
1473 \setboxz@h
{\global\tag@false$
\m@th
\displaystyle{##
}$
}%
1474 \global\gwidth@
\wdz@
1475 \global\glineht@
\ht\z@
1478 \tabskip\@centering
%%*F
1479 &
\kern-
\gdisplaywidth@
1480 \setboxz@h
{\strut@
{##
}}%
1482 \dimen@\@mathmargin
%%*F
1484 \dimen@
\displaywidth
1485 \advance\dimen@-
\gwidth@
1486 \divide\dimen@
\tw@
%%*B
1488 \ifdim\dimen@<
\tw@
\wdz@
%%*
1489 \rlap{\vbox{\normalbaselines\boxz@
\vbox to
\glineht@
{}}}% %%*
1493 \tabskip\gdisplaywidth@
1498 \ifinany@
\let\next@
\insplit@
\else
1499 \DN@
{\PackageError{amstex
}{\string\begin{split
} is not allowed
1500 here. Try the `aligned' environment.
}\@ehb
}\fi
1502 \def\insplit@
{\global\setbox\z@
\vbox\bgroup
1503 \Let@
\restore@math@cr
\default@tag
% disallow use of \tag here
1504 \ialign\bgroup \hfil\strut@
1505 $
\m@th
\displaystyle{##
}$&$
\m@th
\displaystyle{{}##
}$
\hfill\crcr}
1506 \def\endsplit{\crcr\egroup\egroup
1507 \iftagsleft@
\expandafter\lendsplit@
\else
1508 \expandafter\rendsplit@
\fi}
1509 \def\rendsplit@
{\global\setbox9 \vbox
1510 {\unvcopy\z@
\global\setbox8 \lastbox\unskip}%
1511 \setbox\@ne
\hbox{\unhcopy8 \unskip\global\setbox\tw@
\lastbox
1512 \unskip\global\setbox\thr@@
\lastbox}%
1513 \global\setbox7 \hbox{\unhbox\tw@
\unskip}%
1514 \ifinalign@
\ifctagsplit@
1515 \gdef\split@
{\hbox to
\wd\thr@@
{}&
1516 \vcenter{\vbox{\moveleft\wd\thr@@
\boxz@
}}}%
1517 \else\gdef\split@
{&
\vbox{\moveleft\wd\thr@@
\box9}\crcr
1518 \box\thr@@&
\box7}\fi
1520 \ifctagsplit@
\gdef\split@
{\vcenter{\boxz@
}}\else
1521 \gdef\split@
{\box9\crcr\hbox{\box\thr@@
\box7}}\fi
1524 \def\lendsplit@
{\global\setbox9\vtop{\unvcopy\z@
}%
1525 \setbox\@ne
\vbox{\unvcopy\z@
\global\setbox8\lastbox}%
1526 \setbox\@ne
\hbox{\unhcopy8\unskip\setbox\tw@
\lastbox
1527 \unskip\global\setbox\thr@@
\lastbox}%
1528 \ifinalign@
\ifctagsplit@
1529 \gdef\split@
{\hbox to
\wd\thr@@
{}&
1530 \vcenter{\vbox{\moveleft\wd\thr@@
\box9}}}%
1532 \gdef\split@
{\hbox to
\wd\thr@@
{}&
\vbox{\moveleft\wd\thr@@
\box9}}\fi
1534 \ifctagsplit@
\gdef\split@
{\vcenter{\box9}}\else
1535 \gdef\split@
{\box9}\fi
1536 \fi\aftergroup\split@
}
1537 \newdimen\multlinegap
1539 \newdimen\multlinetaggap@
1540 \multlinetaggap@
10pt
1542 \ifmmode\nomath@env
\DN@
{\let\endmultline\relax\@gobble
}%
1543 \else $$
\DN@
{\collect@body
\multline@
}\fi
1544 \st@rredfalse\@eqnswtrue \@seteqlabel
\theequation
1545 \stepcounter{equation
}\next@
}
1546 \@namedef
{multline*
}{%
1547 \ifmmode\nomath@env
\DN@
{\@namedef
{endmultline*
}{}\@gobble
}%
1548 \else $$
\DN@
{\collect@body
\multline@
}\fi
1549 \st@rredtrue\@eqnswfalse
\let\@currentlabel\@empty
1551 \def\multline@
{\inany@true
\displaybreak@
1553 \def\tag{\ifst@rred
\else
1554 \global\advance\c@equation
\m@ne
\fi\tag@in@align
}%
1556 \expandafter\lmultline@@
\else
1557 \expandafter\rmultline@@
\fi}
1560 \def\shoveleft#
#1{#
#1}\def\shoveright#
#1{#
#1}%
1561 \setbox\@ne
\vbox{\firstchoice@false
\Let@
\halign{\setboxz@h
1562 {$
\m@th\@lign
\displaystyle{}##$
}\global\mwidth@
\wdz@
1567 \def\lmmeasure@
#1{\global\zerocr@true
\global\onecr@false
1568 \everycr{\noalign{\ifonecr@
\global\onecr@false
\fi
1569 \ifzerocr@
\global\zerocr@false
\global\onecr@true
\fi}}%
1570 \def\shoveleft#
#1{#
#1}\def\shoveright#
#1{#
#1}%
1571 \setbox\@ne
\vbox{\Let@
\firstchoice@false
\halign{\setboxz@h
1572 {$
\m@th\@lign
\displaystyle{}##$
}\ifonecr@
\global\mwidth@
\wdz@
1573 \global\mlineht@
\ht\z@
\fi\crcr#1\crcr}}}
1577 \def\lmultline@@
#1{%
1579 \setbox\mtagbox@
\hbox{%
1585 \tagform@
\theequation
1590 \advance\dimen@
\wd\mtagbox@
1591 \advance\dimen@
\multlinetaggap@
1593 \advance\dimen@\@mathmargin
%%*F
1595 \ifdim\dimen@>
\displaywidth
1598 \ltwidth@
\wd\mtagbox@
1604 \def\shoveright#
#1{#
#1\hfilneg\hskip\multlinegap}%
1606 \def\shoveleft#
#1{#
#1}% %%*F
1609 \setboxz@h
{$
\m@th
\displaystyle{}#
#1$
}%
1610 \setbox\@ne
\hbox{$
\m@th
\displaystyle#
#1$
}%
1615 \hskip\multlinetaggap@
1625 \tabskip\@mathmargin
%%*F
1629 \totwidth@
\displaywidth %%*F
1631 \advance\totwidth@-\@mathmargin
%%*F
1636 \hbox to
\totwidth@
{% %%*F
1637 \strut@$
\m@th
\displaystyle
1639 \hskip 0pt plus
1000pt
%%*F
1647 \hskip-\@mathmargin
%%*F
1654 \hskip\multlinetaggap@
1659 \hbox{\strut@
\box\mtagbox@
}%
1660 \vbox to
\mlineht@
{}%
1663 \hskip\multlinegap %%*
1669 \def\rmultline@@
#1{%
1671 \setbox\mtagbox@
\hbox{%
1677 \tagform@
\theequation
1682 \advance\dimen@
\wd\mtagbox@
1683 \advance\dimen@
\multlinetaggap@
1685 \advance\dimen@\@mathmargin
%%*F
1687 \ifdim\dimen@>
\displaywidth
1690 \rtwidth@
\wd\mtagbox@
1696 \def\shoveright#
#1{%
1702 \hskip\multlinetaggap@
1709 \def\shoveleft#
#1{#
#1}% %%*F
1712 \setboxz@h
{$
\m@th
\displaystyle{}#
#1$
}%
1713 \setbox\@ne
\hbox{$
\m@th
\displaystyle#
#1$
}%
1722 \tabskip\@mathmargin
%%*F
1726 \totwidth@
\displaywidth %%*F
1728 \advance\totwidth@-\@mathmargin
%%*F
1733 \hbox to
\totwidth@
{%
1734 \strut@$
\m@th
\displaystyle
1736 \hskip 0pt plus
1000pt
%%*F
1744 \hskip-\@mathmargin
%%*F
1750 \def\endmultline{\iftagsleft@
\expandafter\lendmultline@
\else
1751 \expandafter\rendmultline@
\fi\global\@ignoretrue
}
1752 \expandafter\let\csname endmultline*
\endcsname=
\endmultline
1753 \def\lendmultline@
{\hfilneg\hskip\multlinegap\crcr\egroup$$
}
1754 \def\rendmultline@
{%
1757 \hskip\multlinetaggap@
1760 \hskip\multlinegap %%*
1764 \normalbaselines\null\hbox{\strut@
\box\mtagbox@
}%
1776 \expandafter\@arrayparboxrestore
1777 \expandafter{\@arrayparboxrestore
1778 \inany@false
\ingather@false
\inalign@false
1780 \def\equation{\gather\def\\
{\PackageError{amstex
}{\Invalid@@\\
}\@eha
}}
1781 \def\endequation{\endgather}
1782 \newenvironment{equation*
}{%
1785 \nonumber\endequation
1787 \newcounter{parentequation
}% Counter for ``parent equation''.
1788 \newenvironment{subequations
}{%
1789 \refstepcounter{equation
}%
1790 \begingroup % conservative approach
1792 \edef\@tempa
{\def\@nx
\theparentequation{\theequation}}%
1793 \@xp
\endgroup\@tempa
1794 \setcounter{parentequation
}{\value{equation
}}%
1795 \setcounter{equation
}{0}%
1796 \def\theequation{\theparentequation\alph{equation
}}%
1799 \setcounter{equation
}{\value{parentequation
}}%
1802 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1803 \def\atdef@
#1{\expandafter\def\csname\space @
\string#1\endcsname}
1804 \begingroup \catcode`\@=
\active
1807 \DeclareRobustCommand{\Iat}{\FN@
\at@
}
1808 \def\at@
{\let\next@
\at@@
1809 \ifcat\noexpand\@let@token a
\else
1810 \ifcat\noexpand\@let@token0
\else
1811 \ifcat\noexpand\@let@token
\relax\else
1812 \let\@let@token@
\at@@@
\fi\fi\fi\next@
}
1813 \def\at@@
#1{\expandafter
1814 \@ifundefined
{ @
\string#1}%
1816 {\DN@
{\csname\space @
\string#1\endcsname}}%
1818 \def\at@@@
{\PackageError{amstex
}{\Invalid@@ @
}%
1819 {\the\athelp@
}% "I'll assume you wanted @@"
1822 {Only certain combinations beginning with @ make sense to me.^^J
%
1823 I'll assume you wanted @@ for a printed @.
}
1824 \atdef@ @
{{\atchar}}% to define @@
1826 \def\makeatother{\catcode64=
\active}
1827 \def\@tempa
#1#2#3#4#5#6{%
1828 {#1}{#2}\ifnum0#6=
0{13}\@xp\@gobblefour
1829 \else{#3}\fi\@tempa
{#4}{#5}{#6}}%
1830 \xdef\@currnamestack
{\@xp\@tempa\@currnamestack
{}{}{0}}
1831 {\def\@makeother
{\noexpand\@makeother
\noexpand}
1832 \xdef\@sanitize
{\@sanitize\@makeother\@
}}
1833 {\def\do{\noexpand\do\noexpand}
1834 \xdef\dospecials{\dospecials\do\@
}}
1835 \atdef@,
{\ifmmode\mskip.1\thinmuskip\else \nonmatherr@
{@,
}\fi}
1836 \atdef@!
{\RIfM@
\mskip-
.1\thinmuskip\else \nonmatherr@
{@!
}\fi}
1838 \@ifpackageloaded
{amscd
}{%
1841 \global\bigaw@
\minaw@
1842 \setboxz@h
{$
\m@th
\scriptstyle\;
{#1}\;\;$
}%
1843 \ifdim\wdz@>
\bigaw@
\global\bigaw@
\wdz@
\fi
1844 \@ifnotempty
{#2}{\setbox\@ne
\hbox{$
\m@th
\scriptstyle\;
{#2}\;\;$
}%
1845 \ifdim\wd\@ne>
\bigaw@
\global\bigaw@
\wd\@ne
\fi}%
1846 \mathrel{\mathop{\hbox to
\bigaw@
{\rightarrowfill@
\displaystyle}}%
1847 \limits^
{#1}\@ifnotempty
{#2}{_
{#2}}}%
1850 \global\bigaw@
\minaw@
1851 \setboxz@h
{$
\m@th
\scriptstyle\;\;
{#1}\;$
}%
1852 \ifdim\wdz@>
\bigaw@
\global\bigaw@
\wdz@
\fi
1853 \@ifnotempty
{#2}{\setbox\@ne
\hbox{$
\m@th
\scriptstyle\;\;
{#2}\;$
}%
1854 \ifdim\wd\@ne>
\bigaw@
\global\bigaw@
\wd\@ne
\fi}%
1855 \mathrel{\mathop{\hbox to
\bigaw@
{\leftarrowfill@
\displaystyle}}%
1856 \limits^
{#1}\@ifnotempty
{#2}{_
{#2}}}%
1858 }% end of @ifpackageloaded
1859 \@ifundefined
{minaw@
}{\newdimen\minaw@
}{}
1861 \@ifundefined
{bigaw@
}{\newdimen\bigaw@
}{}
1862 \atdef@-
{\let\next-
%%
1864 \def\next-
{\setbox\z@
\hbox{-
}\unhbox\z@
\FN@
\next@
}%%
1865 \expandafter\next \else\nobreak\fi}%%
1867 \def\leftroot{\PackageError{amstex
}{\Invalid@@
\leftroot}\@eha
}
1868 \def\uproot{\PackageError{amstex
}{\Invalid@@
\uproot}\@eha
}
1871 \def\root{\relaxnext@
1872 \DN@
{\ifx\@let@token
\uproot\let\next@
\nextii@
\else
1873 \ifx\@let@token
\leftroot\let\next@
\nextiii@
\else
1874 \let\next@
\plainroot@
\fi\fi\next@
}%
1875 \def\nextii@
\uproot#
#1{\uproot@#
#1\relax\FN@
\nextiv@
}%
1876 \def\nextiv@
{\ifx\@let@token\@sptoken
\DN@.
{\FN@
\nextv@
}\else
1877 \DN@.
{\FN@
\nextv@
}\fi\next@.
}%
1878 \def\nextv@
{\ifx\@let@token
\leftroot\let\next@
\nextvi@
\else
1879 \let\next@
\plainroot@
\fi\next@
}%
1880 \def\nextvi@
\leftroot#
#1{\leftroot@#
#1\relax\plainroot@
}%
1881 \def\nextiii@
\leftroot#
#1{\leftroot@#
#1\relax\FN@
\nextvii@
}%
1882 \def\nextvii@
{\ifx\@let@token\@sptoken
1883 \DN@.
{\FN@
\nextviii@
}\else
1884 \DN@.
{\FN@
\nextviii@
}\fi\next@.
}%
1885 \def\nextviii@
{\ifx\@let@token
\uproot\let\next@
\nextix@
\else
1886 \let\next@
\plainroot@
\fi\next@
}%
1887 \def\nextix@
\uproot#
#1{\uproot@#
#1\relax\plainroot@
}%
1888 \bgroup\uproot@
\z@
\leftroot@
\z@
\FN@
\next@
}
1889 \def\plainroot@
#1\of#2{\setbox\rootbox\hbox{%
1890 $
\m@th
\scriptscriptstyle{#1}$
}%
1891 \mathchoice{\r@@t
\displaystyle{#2}}{\r@@t
\textstyle{#2}}
1892 {\r@@t
\scriptstyle{#2}}{\r@@t
\scriptscriptstyle{#2}}\egroup}
1893 \def\r@@t
#1#2{\setboxz@h
{$
\m@th
#1\@@sqrt
{#2}$
}%
1894 \dimen@
\ht\z@
\advance\dimen@-
\dp\z@
1895 \setbox\@ne
\hbox{$
\m@th
#1\mskip\uproot@ mu$
}%
1896 \advance\dimen@ by1.667
\wd\@ne
1897 \mkern-
\leftroot@ mu
\mkern5mu\raise.6\dimen@
\copy\rootbox
1898 \mkern-
10mu
\mkern\leftroot@ mu
\boxz@
}
1899 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1900 %% Fragment from old amsfonts.sty to deal with msam, msbm, eufm fonts;
1901 %% omit if `noamsfonts' option was specified.
1902 \ifx F\@amsfonts
\endinput \fi
1903 \DeclareSymbolFont{AMSa
}{U
}{msa
}{m
}{n
}
1904 \DeclareSymbolFont{AMSb
}{U
}{msb
}{m
}{n
}
1906 \DeclareFontFamily{U
}{msa
}{}%
1907 \DeclareFontShape{U
}{msa
}{m
}{n
}{<-
6>msam5<
6-
8>msam7<
8->msam10
}{}%
1908 \DeclareFontFamily{U
}{msb
}{}%
1909 \DeclareFontShape{U
}{msb
}{m
}{n
}{<-
6>msbm5<
6-
8>msbm7<
8->msbm10
}{}%
1910 \DeclareFontFamily{U
}{euf
}{}%
1911 \DeclareFontShape{U
}{euf
}{m
}{n
}{<-
6>eufm5<
6-
8>eufm7<
8->eufm10
}{}%
1912 \DeclareFontShape{U
}{euf
}{b
}{n
}{<-
6>eufb5<
6-
8>eufb7<
8->eufb10
}{}%
1914 \@ifundefined
{yen
}{%
1915 \edef\yen{\noexpand\mathhexbox{\hexnumber@
\symAMSa}55}
1917 \@ifundefined
{checkmark
}{%
1918 \edef\checkmark{\noexpand\mathhexbox{\hexnumber@
\symAMSa}58}
1920 \@ifundefined
{circledR
}{%
1921 \edef\circledR{\noexpand\mathhexbox{\hexnumber@
\symAMSa}72}
1923 \@ifundefined
{maltese
}{%
1924 \edef\maltese{\noexpand\mathhexbox{\hexnumber@
\symAMSa}7A
}
1926 \begingroup \catcode`\"=
12
1927 \DeclareMathDelimiter\ulcorner{\mathopen} {AMSa
}{"
70}{AMSa
}{"
70}
1928 \DeclareMathDelimiter\urcorner{\mathclose}{AMSa
}{"
71}{AMSa
}{"
71}
1929 \DeclareMathDelimiter\llcorner{\mathopen} {AMSa
}{"
78}{AMSa
}{"
78}
1930 \DeclareMathDelimiter\lrcorner{\mathclose}{AMSa
}{"
79}{AMSa
}{"
79}
1931 \xdef\widehat#1{\noexpand\@mathmeasure
\z@
\textstyle{#1}%
1932 \noexpand\ifdim\noexpand\wdz@>
\tw@ em
%
1933 \mathaccent"
0\hexnumber@
\symAMSb 5B
{#1}%
1934 \noexpand\else\mathaccent"
0362{#1}\noexpand\fi}
1935 \xdef\widetilde#1{\noexpand\@mathmeasure
\z@
\textstyle{#1}%
1936 \noexpand\ifdim\noexpand\wdz@>
\tw@ em
%
1937 \mathaccent"
0\hexnumber@
\symAMSb 5D
{#1}%
1938 \noexpand\else\mathaccent"
0365{#1}\noexpand\fi}
1939 \DeclareMathSymbol\dabar@
{\mathord}{AMSa
}{"
39}
1940 \xdef\dashrightarrow{\mathrel{\dabar@
\dabar@
1941 \mathchar"
0\hexnumber@
\symAMSa 4B
}}%
1942 \xdef\dashleftarrow{\mathrel{\mathchar"
0\hexnumber@
\symAMSa 4C
\dabar@
1944 \global\let\dasharrow\dashrightarrow
1945 \global\let\rightleftharpoons\undefined
1946 \DeclareMathSymbol\rightleftharpoons{\mathrel}{AMSa
}{"
0A
}
1947 \global\let\angle\undefined
1948 \DeclareMathSymbol\angle {\mathord}{AMSa
}{"
5C
}
1949 \global\let\hbar\undefined
1950 \DeclareMathSymbol\hbar {\mathord}{AMSb
}{"
7E
}
1951 \global\let\sqsubset\undefined
1952 \DeclareMathSymbol\sqsubset {\mathrel}{AMSa
}{"
40}
1953 \global\let\sqsupset\undefined
1954 \DeclareMathSymbol\sqsupset {\mathrel}{AMSa
}{"
41}
1955 \global\let\mho\undefined
1956 \DeclareMathSymbol\mho {\mathord}{AMSb
}{"
66}
1957 \DeclareMathSymbol\square {\mathord}{AMSa
}{"
03}
1958 \DeclareMathSymbol\lozenge {\mathord}{AMSa
}{"
06}
1959 \DeclareMathSymbol\vartriangleright {\mathrel}{AMSa
}{"
42}
1960 \DeclareMathSymbol\vartriangleleft {\mathrel}{AMSa
}{"
43}
1961 \DeclareMathSymbol\trianglerighteq {\mathrel}{AMSa
}{"
44}
1962 \DeclareMathSymbol\trianglelefteq {\mathrel}{AMSa
}{"
45}
1963 \DeclareMathSymbol\rightsquigarrow {\mathrel}{AMSa
}{"
20}
1964 \def\@tempa
{\not@base
\lhd}
1966 \global\let\lhd\vartriangleleft
1967 \global\let\unlhd\trianglelefteq
1968 \global\let\rhd\vartriangleright
1969 \global\let\unrhd\trianglerighteq
1970 \global\let\Box\square
1971 \global\let\Diamond\lozenge
1972 \global\let\leadsto\rightsquigarrow
1973 \xdef\Join{\mathrel{\mathchar"
0\hexnumber@
\symAMSb 6F
\mkern-
13.8mu
%
1974 \mathchar"
0\hexnumber@
\symAMSb 6E
}}
1977 \DeclareMathAlphabet\mathfrak{U
}{euf
}{m
}{n
}
1978 \SetMathAlphabet\mathfrak{bold
}{U
}{euf
}{b
}{n
}
1979 \DeclareSymbolFontAlphabet{\mathbb}{AMSb
}
1980 \DeclareFontEncodingDefaults{\relax}{\def\accentclass@
{7}}
1981 \def\frak{\mathfrak}
1984 \begingroup \catcode`\"=
12 \relax
1985 \gdef\newsymbol#1#2#3#4#5{%
1989 \hexnumber@
\symAMSa\or
1990 \hexnumber@
\symAMSb\fi}%
1992 \PackageError{amsfonts
}{\Invalid@@
\newsymbol}\@ehd
%
1994 \global\mathchardef#1"
#3\next@
#4#5
1997 %% Some odds and ends
1998 \def\sphat{^
{\mathchoice{}{}%
1999 {\,\,
\smash[b
]{\hbox{\lower4\ex@
\hbox{$
\m@th
\widehat{\null}$
}}}}%
2000 {\,
\smash[b
]{\hbox{\lower3\ex@
\hbox{$
\m@th
\hat{\null}$
}}}}}}
2003 \def\spdot{^
{\hbox{\raise\ex@
\hbox{\normalfont .
}}}}
2004 \def\spddot{^
{\hbox{\raise\ex@
\hbox{\normalfont ..
}}}}
2005 \def\spdddot{^
{\hbox{\raise\ex@
\hbox{\normalfont...
}}}}
2006 \def\spbreve{^
{\!
\smash[b
]{\hbox{\lower4\ex@
\hbox{\u{}}}}}}
2007 \def\fracwithdelims#1#2{\new@ifnextchar
[{\fracwithdelims@
#1#2}%
2008 {\fracwithdelims@
#1#2[\@empty
]}}
2009 \def\fracwithdelims@
#1#2[#3]#4#5{\relax
2010 \ifx\@empty
#3{#4\overwithdelims#1#2#5}\else
2011 {#4\abovewithdelims#1#2#3\relax#5}\fi}
2012 \def\accentedsymbol#1#2{%
2014 \csname\expandafter\@gobble
\string#1@box
\endcsname
2016 \csname\expandafter\@gobble
\string#1@box
\endcsname
2020 \csname\expandafter\@gobble
\string#1@box
\endcsname{}}%
2022 \def~
{\nobreakspace}
2023 \DeclareRobustCommand{\nobreakspace}{\unskip\nobreak\
\ignorespaces}
2025 %% End of file `amstex.sty'.