TemplateJournalsmath
Mathematics Preprint (amsart + arXiv)
Journal-neutral math manuscript on amsart with hyperref, cleveref, mathtools and a full theorem setup. Compiles cleanly on arXiv and passes as a first submission at most math journals.
LPPL 1.3c (amscls)
Loading PDF preview…
What’s inside
- Starter files
main.tex5.2 KB
%% Mathematics preprint (amsart). The layout most journals accept for a first %% submission and the one arXiv compiles without surprises: amsart + amsthm, %% hyperref + cleveref, numbered theorems by section, amsplain bibliography. \documentclass[11pt,reqno]{amsart} \usepackage[margin=1.1in]{geometry} \usepackage{amsmath,amssymb,amsthm,mathtools} \usepackage{graphicx} \usepackage{booktabs} \usepackage{tikz} \usetikzlibrary{arrows.meta,positioning} \usepackage{microtype} \usepackage[colorlinks,linkcolor=blue!60!black,citecolor=blue!60!black,urlcolor=blue!60!black]{hyperref} \usepackage[capitalise,noabbrev]{cleveref} \theoremstyle{plain} \newtheorem{theorem}{Theorem}[section] \newtheorem{lemma}[theorem]{Lemma} \newtheorem{proposition}[theorem]{Proposition} \newtheorem{corollary}[theorem]{Corollary} \newtheorem{conjecture}[theorem]{Conjecture} \theoremstyle{definition} \newtheorem{definition}[theorem]{Definition} \newtheorem{example}[theorem]{Example} \newtheorem{question}[theorem]{Question} \theoremstyle{remark} \newtheorem{remark}[theorem]{Remark} \newtheorem{notation}[theorem]{Notation} \numberwithin{equation}{section} \newcommand{\N}{\mathbb{N}} \newcommand{\Z}{\mathbb{Z}} \newcommand{\R}{\mathbb{R}} \newcommand{\C}{\mathbb{C}} \DeclareMathOperator{\diam}{diam} \DeclareMathOperator{\supp}{supp} \DeclarePairedDelimiter{\abs}{\lvert}{\rvert} \DeclarePairedDelimiter{\norm}{\lVert}{\rVert} \title[Short running title]{A Fixed-Point Theorem for Contractions on Complete Metric Spaces} \author{First Author} \address{Department of Mathematics, University Name, City, Country} \email{first@university.edu} \author{Second Author} \address{Institute Name, City, Country} \email{second@institute.org} \thanks{The first author was supported by Grant XXXX.} \subjclass[2020]{Primary 47H10; Secondary 54H25} \keywords{fixed point, contraction, complete metric space} \date{\today} \begin{document} \begin{abstract} We give a self-contained proof of the contraction mapping principle together with an explicit rate of convergence for the Picard iterates, and we show by example that completeness cannot be dropped. \end{abstract} \maketitle \section{Introduction}\label{sec:intro} Fixed-point theorems are among the most frequently used tools in analysis; see \cite{granas2003fixed} for a survey and \cite{rudin1976principles} for the classical background. Our main result is \cref{thm:banach}, stated with a quantitative error bound. \section{Preliminaries}\label{sec:prelim} \begin{definition}\label{def:contraction} Let $(X, d)$ be a metric space. A map $T \colon X \to X$ is a \emph{contraction} if there is $q \in [0, 1)$ with $d(Tx, Ty) \le q\, d(x, y)$ for all $x, y \in X$. \end{definition} \begin{lemma}\label{lem:cauchy} If $T$ is a contraction with constant $q$ and $x_{n+1} = T x_n$, then for all $m > n$, \begin{equation}\label{eq:cauchy} d(x_m, x_n) \;\le\; \frac{q^n}{1 - q}\, d(x_1, x_0). \end{equation} \end{lemma} \begin{proof} By induction $d(x_{k+1}, x_k) \le q^k d(x_1, x_0)$; summing a geometric series over $k = n, \dots, m-1$ gives \eqref{eq:cauchy}. \end{proof} \section{Main result}\label{sec:main} \begin{theorem}[Contraction mapping principle]\label{thm:banach} Let $(X, d)$ be a complete metric space and $T \colon X \to X$ a contraction with constant $q$. Then $T$ has a unique fixed point $x^\ast$, and for every $x_0 \in X$ the iterates $x_n = T^n x_0$ satisfy $d(x_n, x^\ast) \le \frac{q^n}{1-q}\, d(x_1, x_0)$. \end{theorem} \begin{proof} By \cref{lem:cauchy} the sequence $(x_n)$ is Cauchy, hence converges to some $x^\ast$ by completeness. Continuity of $T$ gives $T x^\ast = x^\ast$. If $y^\ast$ is another fixed point then $d(x^\ast, y^\ast) = d(Tx^\ast, Ty^\ast) \le q\, d(x^\ast, y^\ast)$, forcing $x^\ast = y^\ast$. Letting $m \to \infty$ in \eqref{eq:cauchy} gives the rate. \end{proof} \begin{example}\label{ex:incomplete} On $X = (0, 1]$ with the usual metric, $Tx = x/2$ is a contraction without a fixed point, so completeness cannot be dropped in \cref{thm:banach}. \end{example} \Cref{fig:iterates} illustrates the iterates for a one-dimensional contraction and \cref{tab:rates} compares the bound with the observed error. \begin{figure}[ht] \centering \begin{tikzpicture}[x=3cm,y=3cm,>=Stealth] \draw[->] (0,0) -- (1.1,0) node[right] {$x$}; \draw[->] (0,0) -- (0,1.1) node[above] {$y$}; \draw[dashed] (0,0) -- (1,1) node[right] {$y = x$}; \draw[thick] (0,0.3) -- (1,0.8) node[right] {$y = Tx$}; \draw[->,blue] (0.9,0) -- (0.9,0.75) -- (0.75,0.75) -- (0.75,0.675) -- (0.675,0.675) -- (0.675,0.64); \fill (0.6,0.6) circle (1.2pt) node[below right] {$x^\ast$}; \end{tikzpicture} \caption{Picard iterates of a contraction converging to the fixed point.} \label{fig:iterates} \end{figure} \begin{table}[ht] \centering \begin{tabular}{@{}rcc@{}} \toprule $n$ & $d(x_n, x^\ast)$ & bound $\frac{q^n}{1-q} d(x_1,x_0)$ \\ \midrule 1 & 0.150 & 0.900 \\ 5 & 0.009 & 0.056 \\ 10 & $3\cdot10^{-4}$ & $1.8\cdot10^{-3}$ \\ \bottomrule \end{tabular} \caption{Observed error against the a priori bound for $q = 1/2$.} \label{tab:rates} \end{table} \section*{Acknowledgements} The authors thank their colleagues for helpful discussions. \bibliographystyle{amsplain} \bibliography{references} \end{document}- Libraries and docs
amsart.cls60 KBVendored from mirrors.ctan.org on 2026-05-26.
%% %% This is file `amsart.cls', %% generated with the docstrip utility. %% %% The original source files were: %% %% amsclass.dtx (with options: `amsart,classes') %% This is a generated file. %% %% Copyright 1995, 1999, 2004, 2009-2020 American Mathematical Society. %% %% American Mathematical Society %% Technical Support %% Publications Technical Group %% 201 Charles Street %% Providence, RI 02904 %% USA %% tel: (401) 455-4080 %% (800) 321-4267 (USA and Canada only) %% fax: (401) 331-3842 %% email: tech-support@ams.org %% %% This work may be distributed and/or modified under the %% conditions of the LaTeX Project Public License, either version 1.3c %% 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.3c or later is part of all distributions of LaTeX %% version 2005/12/01 or later. %% %% This work has the LPPL maintenance status `maintained'. %% %% The Current Maintainer of this work is the American Mathematical %% Society. %% %% ======================================================================== %% \NeedsTeXFormat{LaTeX2e}% LaTeX 2.09 can't be used (nor non-LaTeX) [1995/06/01]% LaTeX date must be June 1995 or later \ProvidesClass{amsart}[2020/05/29 v2.20.6] \global\expandafter\let\csname ver@amsthm.sty\expandafter\endcsname \csname ver@\@currname.\@currext\endcsname \let\@xp=\expandafter \let\@nx=\noexpand \def\@oparg#1[#2]{\@ifnextchar[{#1}{#1[#2]}} \long\def\@ifempty#1{\@xifempty#1@@..\@nil} \long\def\@xifempty#1#2@#3#4#5\@nil{% \ifx#3#4\@xp\@firstoftwo\else\@xp\@secondoftwo\fi} \long\def\@ifnotempty#1{\@ifempty{#1}{}} \def\setboxz@h{\setbox\z@\hbox} \def\@addpunct#1{% \relax\ifhmode \ifnum\spacefactor>\@m \else#1\fi \fi} \def\nopunct{\spacefactor 1007 } \def\frenchspacing{\sfcode`\.1006\sfcode`\?1005\sfcode`\!1004% \sfcode`\:1003\sfcode`\;1002\sfcode`\,1001 } \def\@tempa#1#2\@nil{\edef\@classname{#1}} \expandafter\@tempa\@currnamestack{}{}{}\@nil \ifx\@classname\@empty \edef\@classname{\@currname}\fi \def\@True{00} \def\@False{01} \newcommand\newswitch[2][False]{% \expandafter\@ifdefinable\csname ?@#2\endcsname{% \global\expandafter\let\csname ?@#2\expandafter\endcsname \csname @#1\endcsname }% } \newcommand{\setFalse}[1]{% \expandafter\let\csname ?@#1\endcsname\@False } \newcommand{\setTrue}[1]{% \expandafter\let\csname ?@#1\endcsname\@True } \newswitch{} \DeclareRobustCommand{\except}[1]{% \if\csname ?@#1\endcsname \expandafter\@gobble \else \expandafter\@firstofone \fi } \DeclareRobustCommand{\for}[1]{% \if\csname ?@#1\endcsname \expandafter\@firstofone \else \expandafter\@gobble \fi } \DeclareRobustCommand{\forany}[1]{% \csname for@any@01\endcsname#1,?,\@nil } \@namedef{for@any@\@False}#1,{% \csname for@any@% \csname ?@\zap@space#1 \@empty\endcsname \endcsname } \@namedef{?@?}{x} \@namedef{for@any@\@True}#1\@nil#2{#2} \def\for@any@x{\@car\@gobble} \DeclareOption{a4paper}{\paperheight 297mm\paperwidth 210mm \textheight 54.5pc } \DeclareOption{letterpaper}{\paperheight 11in\paperwidth 8.5in } \DeclareOption{landscape}{\@tempdima\paperheight \paperheight\paperwidth \paperwidth\@tempdima} \DeclareOption{portrait}{} \DeclareOption{oneside}{\@twosidefalse \@mparswitchfalse} \DeclareOption{twoside}{\@twosidetrue \@mparswitchtrue} \DeclareOption{draft}{\overfullrule5\p@ \ClassWarningNoLine{\@classname}{% When the draft option is used, the \protect\includegraphics\MessageBreak command will print blank placeholder boxes\MessageBreak for the graphics}% } \DeclareOption{final}{\overfullrule\z@ } \def\dateposted#1{\def\@dateposted{#1}}% \let\@dateposted\@empty \def\@setdateposted{% \newline Article electronically published on \@dateposted} \def\article@logo{% \set@logo{% \publname \ifx\@empty\currentvolume \else \newline\volinfo, \pageinfo \fi \newline \@PII \ifx\@empty\@dateposted \else \@setdateposted\fi }% } \def\eonly@logo{% \set@logo{% \publname \newline\volinfo, \pageinfo \ifx\@empty\@dateposted \else \@setdateposted\fi \newline \@PII }% } \def\@logofont{\fontsize{6}{7\p@}\selectfont} \long\def\set@logo#1{% \vbox to\headheight{% \@parboxrestore \@logofont \noindent#1\par\vss }% } \DeclareOption{e-only}{% \def\volinfo{Volume \currentvolume}% \dateposted{Xxxx XX, XXXX}% \def\@setdateposted{\ (\@dateposted)}% \let\article@logo\eonly@logo } \newif\if@titlepage \DeclareOption{titlepage}{\@titlepagetrue} \DeclareOption{notitlepage}{\@titlepagefalse} \DeclareOption{onecolumn}{\@twocolumnfalse} \DeclareOption{twocolumn}{\@twocolumntrue} \DeclareOption{nomath}{} \DeclareOption{noamsfonts}{} \DeclareOption{psamsfonts}{% \PassOptionsToPackage{psamsfonts}{amsfonts}% \PassOptionsToPackage{cmex10}{amsmath}} \newif\iftagsleft@ \DeclareOption{leqno}{% \tagsleft@true \PassOptionsToPackage{leqno}{amsmath}} \DeclareOption{reqno}{% \tagsleft@false \PassOptionsToPackage{reqno}{amsmath}} \newif\ifctagsplit@ \DeclareOption{centertags}{% \ctagsplit@true \PassOptionsToPackage{centertags}{amsmath}} \DeclareOption{tbtags}{% \ctagsplit@false \PassOptionsToPackage{tbtags}{amsmath}} \DeclareOption{fleqn}{}% \newcommand{\@mainsize}{10} \newcommand{\@ptsize}{0} \newcommand{\larger}[1][1]{% \count@\@currsizeindex \advance\count@#1\relax \ifnum\count@<\z@ \count@\z@ \else\ifnum\count@>12 \count@12 \fi\fi \ifcase\count@ \Tiny\or\Tiny\or\tiny\or\SMALL\or\Small\or\small \or\normalsize \or\large\or\Large\or\LARGE\or\huge\or\Huge\else\Huge \fi } \newcommand{\smaller}[1][1]{\larger[-#1]} \def\@adjustvertspacing{% \bigskipamount.7\baselineskip plus.7\baselineskip \medskipamount\bigskipamount \divide\medskipamount\tw@ \smallskipamount\medskipamount \divide\smallskipamount\tw@ \abovedisplayskip\medskipamount \belowdisplayskip \abovedisplayskip \abovedisplayshortskip\abovedisplayskip \advance\abovedisplayshortskip-1\abovedisplayskip \belowdisplayshortskip\abovedisplayshortskip \advance\belowdisplayshortskip 1\smallskipamount \jot\baselineskip \divide\jot 4 \relax } \renewcommand\normalsize{\@xsetfontsize\normalsize 6% \@adjustvertspacing \let\@listi\@listI} \DeclareRobustCommand{\Tiny}{\@xsetfontsize\Tiny 1} \DeclareRobustCommand{\tiny}{\@xsetfontsize\tiny 2} \DeclareRobustCommand{\SMALL}{\@xsetfontsize\SMALL 3} \DeclareRobustCommand{\Small}{\@xsetfontsize\Small 4% \@adjustvertspacing \def\@listi{\topsep\smallskipamount \parsep\z@skip \itemsep\z@skip \leftmargin=\leftmargini \labelwidth=\leftmargini \advance\labelwidth-\labelsep }% } \DeclareRobustCommand{\small}{\@xsetfontsize\small 5\@adjustvertspacing} \def\footnotesize{\Small} \def\scriptsize{\SMALL} \DeclareRobustCommand{\large}{\@xsetfontsize\large 7\@adjustvertspacing} \DeclareRobustCommand{\Large}{\@xsetfontsize\Large 8\@adjustvertspacing} \DeclareRobustCommand{\LARGE}{\@xsetfontsize\LARGE 9} \DeclareRobustCommand{\huge}{\@xsetfontsize\huge{10}} \DeclareRobustCommand{\Huge}{\@xsetfontsize\Huge{11}} \def\@xsetfontsize#1#2{% \chardef\@currsizeindex#2\relax \edef\@tempa{\@nx\@setfontsize\@nx#1% \@xp\ifcase\@xp\@currsizeindex\@typesizes \else{99}{99}\fi}% \@tempa } \chardef\@currsizeindex=6 \widowpenalty=10000 \clubpenalty=10000 \brokenpenalty=10000 \newdimen\linespacing \lineskip=1pt \lineskiplimit=1pt \normallineskip=1pt \normallineskiplimit=1pt \let\baselinestretch=\@empty \headheight=8pt \headsep=14pt \footskip=12pt \textheight=50.5pc \topskip=10pt \textwidth=30pc \columnsep=10pt \columnseprule=0pt \marginparwidth=90pt \marginparsep=11pt \marginparpush=5pt \AtBeginDocument{\settoheight{\footnotesep}{\footnotesize M$^1$}} \skip\footins=7pt plus11pt \skip\@mpfootins=\skip\footins \fboxsep=3pt \fboxrule=.4pt \arrayrulewidth=.4pt \doublerulesep=2pt \labelsep=5pt \arraycolsep=\labelsep \tabcolsep=\labelsep \tabbingsep=\labelsep \floatsep=15pt plus 12pt \dblfloatsep=15pt plus 12pt \textfloatsep=\floatsep \dbltextfloatsep=15pt plus 12pt \intextsep=\floatsep \@fptop=0pt plus1fil \@dblfptop=0pt plus1fil \@fpbot=0pt plus1fil \@dblfpbot=0pt plus1fil \@fpsep=8pt plus2fil \@dblfpsep=8pt plus2fil\relax \parskip=0pt \relax \newdimen\normalparindent \normalparindent=12pt \parindent=\normalparindent \partopsep=0pt \relax \parsep=0pt \relax \itemsep=0pt \relax \@lowpenalty=51 \@medpenalty=151 \@highpenalty=301 \@beginparpenalty=-\@lowpenalty \@endparpenalty=-\@lowpenalty \@itempenalty=-\@lowpenalty \DeclareOption{10pt}{\def\@mainsize{10}\def\@ptsize{0}% \def\@typesizes{% \or{5}{6}\or{6}{7}\or{7}{8}\or{8}{10}\or{9}{11}% \or{10}{12}% normalsize \or{\@xipt}{13}\or{\@xiipt}{14}\or{\@xivpt}{17}% \or{\@xviipt}{20}\or{\@xxpt}{24}}% \normalsize \linespacing=\baselineskip } \DeclareOption{11pt}{\def\@mainsize{11}\def\@ptsize{1}% \def\@typesizes{% \or{6}{7}\or{7}{8}\or{8}{10}\or{9}{11}\or{10}{12}% \or{\@xipt}{13}% normalsize \or{\@xiipt}{14}\or{\@xivpt}{17}\or{\@xviipt}{20}% \or{\@xxpt}{24}\or{\@xxvpt}{30}}% \normalsize \linespacing=\baselineskip } \DeclareOption{12pt}{\def\@mainsize{12}\def\@ptsize{2}% \def\@typesizes{% \or{7}{8}\or{8}{10}\or{9}{11}\or{10}{12}\or{\@xipt}{13}% \or{\@xiipt}{14}% normalsize \or{\@xivpt}{17}\or{\@xviipt}{20}\or{\@xxpt}{24}% \or{\@xxvpt}{30}\or{\@xxvpt}{30}}% \normalsize \linespacing=\baselineskip } \DeclareOption{8pt}{\def\@mainsize{8}\def\@ptsize{8}% \def\@typesizes{% \or{5}{6}\or{5}{6}\or{5}{6}\or{6}{7}\or{7}{8}% \or{8}{10}% normalsize \or{9}{11}\or{10}{12}\or{\@xipt}{13}% \or{\@xiipt}{14}\or{\@xivpt}{17}}% \normalsize \linespacing=\baselineskip } \DeclareOption{9pt}{\def\@mainsize{9}\def\@ptsize{9}% \def\@typesizes{% \or{5}{6}\or{5}{6}\or{6}{7}\or{7}{8}\or{8}{10}% \or{9}{11}% normalsize \or{10}{12}\or{\@xipt}{13}\or{\@xiipt}{14}% \or{\@xivpt}{17}\or{\@xviipt}{20}}% \normalsize \linespacing=\baselineskip } \def\ps@empty{\let\@mkboth\@gobbletwo \let\@oddhead\@empty \let\@evenhead\@empty \let\@oddfoot\@empty \let\@evenfoot\@empty \global\topskip\normaltopskip} \def\ps@plain{\ps@empty \def\@oddfoot{\normalfont\scriptsize \hfil\thepage\hfil}% \let\@evenfoot\@oddfoot} \newswitch{runhead} \def\ps@headings{\ps@empty \def\@evenhead{% \setTrue{runhead}% \normalfont\scriptsize \rlap{\thepage}\hfil \def\thanks{\protect\thanks@warning}% \leftmark{}{}\hfil}% \def\@oddhead{% \setTrue{runhead}% \normalfont\scriptsize \hfil \def\thanks{\protect\thanks@warning}% \rightmark{}{}\hfil \llap{\thepage}}% \let\@mkboth\markboth } \let\sectionname\@empty \let\subsectionname\@empty \let\subsubsectionname\@empty \let\paragraphname\@empty \let\subparagraphname\@empty \def\leftmark{\expandafter\@firstoftwo\topmark{}{}} \def\rightmark{\expandafter\@secondoftwo\botmark{}{}} \def\ps@firstpage{\ps@plain \def\@oddfoot{\normalfont\scriptsize \hfil\thepage\hfil \global\topskip\normaltopskip}% \let\@evenfoot\@oddfoot \def\@oddhead{\@serieslogo\hss}% \let\@evenhead\@oddhead % in case an article starts on a left-hand page } \long\def\@nilgobble#1\@nil{} \def\markboth#1#2{% \begingroup \@temptokena{{#1}{#2}}\xdef\@themark{\the\@temptokena}% \mark{\the\@temptokena}% \endgroup \if@nobreak\ifvmode\nobreak\fi\fi} \def\ps@myheadings{\ps@headings \let\@mkboth\@gobbletwo} \newskip\normaltopskip \normaltopskip=10pt \relax \let\sectionmark\@gobble \let\subsectionmark\@gobble \let\subsubsectionmark\@gobble \let\paragraphmark\@gobble \DeclareOption{makeidx}{} \ExecuteOptions{leqno,centertags,letterpaper,portrait,% 10pt,twoside,onecolumn,final} \ProcessOptions\relax \if@compatibility \def\@tempa{\RequirePackage{amstex}\relax}% \else \@ifclasswith{\@classname}{nomath}{% \let\@tempa\relax }{% \def\@tempa{\RequirePackage{amsmath}\relax}% }% \fi \@tempa % load amstex.sty or amsmath.sty \@ifundefined{numberwithin}{% \newcommand{\numberwithin}[3][\arabic]{% \@ifundefined{c@#2}{\@nocounterr{#2}}{% \@ifundefined{c@#3}{\@nocnterr{#3}}{% \@addtoreset{#2}{#3}% \@xp\xdef\csname the#2\endcsname{% \@xp\@nx\csname the#3\endcsname .\@nx#1{#2}}}}% } \csname newtoks\endcsname\@emptytoks }{} \if@compatibility \else \@ifclasswith{\@classname}{noamsfonts}{% % amsfonts package is not wanted }{% % amsfonts package IS wanted; test whether a recent enough version % seems to be installed \begingroup \fontencoding{U}\fontfamily{msa}\try@load@fontshape\endgroup \global\@xp\let\csname U+msa\endcsname\relax % reset \@ifundefined{U/msa/m/n}{% \ClassError{\@classname}{% Package `amsfonts' not installed, or version too old?\MessageBreak Unable to get font info for the `msam' fonts in the expected form% }{% The amsfonts package will not be loaded, to avoid probable\MessageBreak incompatibility problems. You can (a) use the `noamsfonts' documentclass\MessageBreak option next time, or (b) check that the amsfonts package is installed\MessageBreak correctly, and is not too old to be compatible.% }% }{% \RequirePackage{amsfonts}[1995/01/01]\relax }% } \fi % end yesamsfonts branch \let\cleardouble@page\cleardoublepage \AtBeginDocument{% \ifx\cleardouble@page\cleardoublepage \def\cleardoublepage{\clearpage{\pagestyle{empty}\cleardouble@page}} \fi } \newcommand{\uppercasenonmath}[1]{\toks@\@emptytoks \@xp\@skipmath\@xp\@empty#1$$% \edef#1{{\@nx\protect\@nx\@upprep\the\toks@}}% } \newcommand{\@upprep}{% \spaceskip1.3\fontdimen2\font plus1.3\fontdimen3\font \upchars@} \newcommand{\upchars@}{% \def\ss{SS}\def\i{I}\def\j{J}\def\ae{\AE}\def\oe{\OE}% \def\o{\O}\def\aa{\AA}\def\l{\L}\def\Mc{M{\scshape c}}} \providecommand{\Mc}{Mc} \newcommand{\@skipmath}{} \long\def\@skipmath#1$#2${% \@xskipmath#1\(\)% \@ifnotempty{#2}{\toks@\@xp{\the\toks@$#2$}\@skipmath\@empty}}% \newcommand{\@xskipmath}{} \long\def\@xskipmath#1\(#2\){% \uppercase{\toks@\@xp\@xp\@xp{\@xp\the\@xp\toks@#1}}% \@ifnotempty{#2}{\toks@\@xp{\the\toks@\(#2\)}\@xskipmath\@empty}}% \def\altucnm#1{% \MakeTextUppercase{\toks@{#1}}% \edef#1{\the\toks@}% } \AtBeginDocument{% \@ifundefined{MakeTextUppercase}{}{\let\uppercasenonmath\altucnm}% } \@ifundefined{MakeUppercase}{\let\MakeUppercase\uppercase}{}% \newcommand{\today}{% \relax\ifcase\month\or January\or February\or March\or April\or May\or June\or July\or August\or September\or October\or November\or December\fi \space\number\day, \number\year} \DeclareOldFontCommand{\rm}{\normalfont\rmfamily}{\mathrm} \DeclareOldFontCommand{\sf}{\normalfont\sffamily}{\mathsf} \DeclareOldFontCommand{\tt}{\normalfont\ttfamily}{\mathtt} \DeclareOldFontCommand{\bf}{\normalfont\bfseries}{\mathbf} \DeclareOldFontCommand{\it}{\normalfont\itshape}{\mathit} \DeclareOldFontCommand{\sl}{\normalfont\slshape}{\@nomath\sl} \DeclareOldFontCommand{\sc}{\normalfont\scshape}{\@nomath\sc} %%\if@compatibility %%\else %% \def\@obsolete@fontswitch#1#2#3{% %% \@latex@warning@no@line{% %% Command {\string#1...}\on@line\space is obsolete;\MessageBreak %% the LaTeX2e equivalent is \string#3{...}}% %% \gdef#1{\@fontswitch\relax#3}% %% } %% \DeclareRobustCommand*\cal{% %% \@xp\@obsolete@fontswitch\csname cal \endcsname\relax\mathcal} %% \DeclareRobustCommand*\mit{% %% \@xp\@obsolete@fontswitch\csname mit \endcsname\relax\mathnormal} %%\fi \renewcommand*{\title}[2][]{\gdef\shorttitle{#1}\gdef\@title{#2}} \edef\title{\@nx\@dblarg \@xp\@nx\csname\string\title\endcsname} \renewcommand{\author}[2][]{% \ifx\@empty\authors \gdef\authors{#2}% \else \g@addto@macro\authors{\and#2}% \g@addto@macro\addresses{\author{}}% \fi \@ifnotempty{#1}{% \ifx\@empty\shortauthors \gdef\shortauthors{#1}% \else \g@addto@macro\shortauthors{\and#1}% \fi }% } \edef\author{\@nx\@dblarg \@xp\@nx\csname\string\author\endcsname} \let\shortauthors\@empty \let\authors\@empty \newif\ifresetcontrib \resetcontribfalse \newcommand\contrib[2][]{% \def\@tempa{#1}% \ifx\@empty\@tempa \else \ifresetcontrib \@xcontribs \else \global\resetcontribtrue \fi \fi \ifx\@empty\contribs \gdef\contribs{#1 #2}% \else \g@addto@macro\contribs{\and#1 #2}% \fi \@wraptoccontribs{#1}{#2}% } \def\wraptoccontribs#1#2{} \def\@xcontribs{% \author@andify\contribs \ifx\@empty\xcontribs \xdef\xcontribs{\contribs}% \else \xdef\xcontribs{\xcontribs, \contribs}% \fi \let\contribs\@empty } \let\contribs\@empty \let\xcontribs\@empty \let\toccontribs\@empty \let\addresses\@empty \let\thankses\@empty \newcommand{\address}[2][]{\g@addto@macro\addresses{\address{#1}{#2}}} \newcommand{\curraddr}[2][]{\g@addto@macro\addresses{\curraddr{#1}{#2}}} \newcommand{\email}[2][]{\g@addto@macro\addresses{\email{#1}{#2}}} \newcommand{\urladdr}[2][]{\g@addto@macro\addresses{\urladdr{#1}{#2}}} \long\def\thanks@warning#1{% \ClassError{\@classname}{% \protect\thanks\space should be given separately, not inside author name.% }\@ehb } \renewcommand{\thanks}[1]{% \@ifnotempty{#1}{\g@addto@macro\thankses{\thanks{#1}}}% } \def\enddoc@text{\ifx\@empty\@translators \else\@settranslators\fi \ifx\@empty\addresses \else\@setaddresses\fi} \AtEndDocument{\enddoc@text} \def\curraddrname{{\itshape Current address}} \def\emailaddrname{{\itshape Email address}} \def\urladdrname{{\itshape URL}} \def\@setaddresses{\par \nobreak \begingroup \footnotesize \def\author##1{\nobreak\addvspace\bigskipamount}% \def\\{\unskip, \ignorespaces}% \interlinepenalty\@M \def\address##1##2{\begingroup \par\addvspace\bigskipamount\indent \@ifnotempty{##1}{(\ignorespaces##1\unskip) }% {\scshape\ignorespaces##2}\par\endgroup}% \def\curraddr##1##2{\begingroup \@ifnotempty{##2}{\nobreak\indent\curraddrname \@ifnotempty{##1}{, \ignorespaces##1\unskip}\/:\space ##2\par}\endgroup}% \def\email##1##2{\begingroup \@ifnotempty{##2}{\nobreak\indent\emailaddrname \@ifnotempty{##1}{, \ignorespaces##1\unskip}\/:\space \ttfamily##2\par}\endgroup}% \def\urladdr##1##2{\begingroup \def~{\char`\~}% \@ifnotempty{##2}{\nobreak\indent\urladdrname \@ifnotempty{##1}{, \ignorespaces##1\unskip}\/:\space \ttfamily##2\par}\endgroup}% \addresses \endgroup } \let\@date\@empty \def\dedicatory#1{\def\@dedicatory{#1}} \let\@dedicatory=\@empty \def\keywords#1{\def\@keywords{#1}} \let\@keywords=\@empty \newcommand*\subjclass[2][2020]{% \def\@subjclass{#2}% \@ifundefined{subjclassname@#1}{% \ClassWarning{\@classname}{Unknown edition (#1) of Mathematics Subject Classification; using '2020'.}% }{% \@xp\let\@xp\subjclassname\csname subjclassname@#1\endcsname }% } \let\@subjclass=\@empty \def\commby#1{\def\@commby{(Communicated by #1)}} \let\@commby=\@empty \def\translname{Translated by} \def\translator#1{% \ifx\@empty\@translators \def\@translators{#1}% \else\g@addto@macro\@translators{\and#1}\fi} \let\@translators=\@empty \def\@settranslators{\par\begingroup \addvspace{6\p@\@plus9\p@}% \hbox to\columnwidth{\hss\normalfont\normalsize \translname{ }% \andify\@translators \uppercasenonmath\@translators \@translators} \endgroup } \newcommand{\xandlist}[4]{\@andlista{{#1}{#2}{#3}}#4\and\and} \def\@andlista#1#2\and#3\and{\@andlistc{#2}\@ifnotempty{#3}{% \@andlistb#1{#3}}} \def\@andlistb#1#2#3#4#5\and{% \@ifempty{#5}{% \@andlistc{#2#4}% }{% \@andlistc{#1#4}\@andlistb{#1}{#3}{#3}{#5}% }} \let\@andlistc\@iden \newcommand{\nxandlist}[4]{% \def\@andlistc##1{\toks@\@xp{\the\toks@##1}}% \toks@{\toks@\@emptytoks \@andlista{{#1}{#2}{#3}}}% \the\@xp\toks@#4\and\and \edef#4{\the\toks@}% \let\@andlistc\@iden} \def\@@and{and} \newcommand{\andify}{% \nxandlist{\unskip, }{\unskip{} \@@and~}{\unskip, \@@and~}} \def\and{\unskip{ }\@@and{ }\ignorespaces} \def\maketitle{\par \@topnum\z@ % this prevents figures from falling at the top of page 1 \@setcopyright \thispagestyle{firstpage}% this sets first page specifications \uppercasenonmath\shorttitle \ifx\@empty\shortauthors \let\shortauthors\shorttitle \else \andify\shortauthors \fi \@maketitle@hook \begingroup \@maketitle \toks@\@xp{\shortauthors}\@temptokena\@xp{\shorttitle}% \toks4{\def\\{ \ignorespaces}}% defend against questionable usage \edef\@tempa{% \@nx\markboth{\the\toks4 \@nx\MakeUppercase{\the\toks@}}{\the\@temptokena}}% \@tempa \endgroup \c@footnote\z@ \@cleartopmattertags } \def\@cleartopmattertags{% \def\do##1{\let##1\relax}% \do\maketitle \do\@maketitle \do\title \do\@xtitle \do\@title \do\author \do\@xauthor \do\address \do\@xaddress \do\contrib \do\contribs \do\xcontribs \do\toccontribs \do\email \do\@xemail \do\curraddr \do\@xcurraddr \do\commby \do\@commby \do\dedicatory \do\@dedicatory \do\thanks \do\thankses \do\keywords \do\@keywords \do\subjclass \do\@subjclass } \def\@maketitle@hook{\global\let\@maketitle@hook\@empty} \def\@maketitle{% \normalfont\normalsize \@adminfootnotes \@mkboth{\@nx\shortauthors}{\@nx\shorttitle}% \global\topskip42\p@\relax % 5.5pc " " " " " \@settitle \ifx\@empty\authors \else \@setauthors \fi \ifx\@empty\@dedicatory \else \baselineskip18\p@ \vtop{\centering{\footnotesize\itshape\@dedicatory\@@par}% \global\dimen@i\prevdepth}\prevdepth\dimen@i \fi \@setabstract \normalsize \if@titlepage \newpage \else \dimen@34\p@ \advance\dimen@-\baselineskip \vskip\dimen@\relax \fi } % end \@maketitle \def\@adminfootnotes{% \let\@makefnmark\relax \let\@thefnmark\relax \ifx\@empty\@date\else \@footnotetext{\@setdate}\fi \ifx\@empty\@subjclass\else \@footnotetext{\@setsubjclass}\fi \ifx\@empty\@keywords\else \@footnotetext{\@setkeywords}\fi \ifx\@empty\thankses\else \@footnotetext{% \def\par{\let\par\@par}\@setthanks}% \fi } \AtBeginDocument{% \@ifundefined{publname}{% \let\publname\@empty \let\@serieslogo\@empty }{% \def\@serieslogo{\article@logo}% }% } \AtBeginDocument{% \@ifundefined{volinfo}{% \def\volinfo{% Volume \currentvolume, Number \number0\currentissue \if\@printyear , \currentmonth\ \currentyear\fi }% }{}% } \def\@printyear{TF}% boolean false \def\issueinfo#1#2#3#4{\def\currentvolume{#1}\def\currentissue{#2}% \def\currentmonth{#3}\def\currentyear{#4}} \issueinfo{00}% volume number {0}% % issue number {Xxxx}% % month {XXXX}% % year \newcommand{\copyrightinfo}[2]{% \def\copyrightyear{#1}% \@ifnotempty{#2}{\def\copyrightholder{#2}}% } \copyrightinfo{0000}{(copyright holder)} \def\pagespan#1#2{\setcounter{page}{#1}% \ifnum\c@page<\z@ \pagenumbering{roman}\setcounter{page}{-#1}\fi \def\start@page{#1}\def\end@page{#2}} \pagespan{000}{000} \AtBeginDocument{% \@ifundefined{pageinfo}{% \def\pageinfo{% \ifnum\start@page=\z@ Pages 000--000 \else \ifx\start@page\end@page Page \start@page \else Pages \start@page--\end@page \fi \fi}% }{}% } \@ifundefined{ISSN}{\def\ISSN{0000-0000}}{} \newcommand\PII[1]{\def\@PII{#1}} \PII{S \ISSN(XX)0000-0} \newinsert\copyins \skip\copyins=1.5pc \count\copyins=1000 % magnification factor, 1000 = 100% \dimen\copyins=.5\textheight % maximum allowed per page \g@addto@macro\@reinserts{% \ifvoid\copyins\else\insert\copyins{\unvbox\copyins}\fi } \def\@copyinsfontsize{\fontsize{6}{7\p@}\normalfont\upshape} \newif\if@extracrline \@extracrlinefalse \let\@extracrline\@empty \relax \def\@setcopyright{% \ifx\@empty\@serieslogo \else\ifx\@empty\copyrightyear \else \insert\copyins{\hsize\textwidth \parfillskip\z@\relax \leftskip\z@\@plus.9\textwidth\relax \rightskip\z@\relax \@copyinsfontsize \everypar{}% \vskip-\skip\copyins \if@extracrline \vskip-6pt \fi \nointerlineskip \leavevmode\hfill\vrule\@width\z@\@height\skip\copyins \copyright\copyrightyear\ \copyrightholder\ignorespaces \if@extracrline \@extracrline \fi \par \kern\z@}% \fi\fi } \def\@combinefloats{% \ifx \@toplist\@empty \else \@cflt \fi \ifx \@botlist\@empty \else \@cflb \fi \ifvoid\copyins \else \@cflci \fi } \def\@cflci{% \setbox\@outputbox\vbox{% \unvbox\@outputbox \vskip\skip\copyins \if@twocolumn \else \vskip\z@ plus\p@ \fi \hbox to\columnwidth{% \hss\vbox to\z@{\vss \if@twocolumn \if@firstcolumn \else \unvbox\copyins \fi \else \unvbox\copyins \fi }}}% \if@twocolumn \if@firstcolumn \insert\copyins{\unvbox\copyins}% \fi\fi \global\count\copyins=999 \relax } \newif\if@revertcopyright \@revertcopyrightfalse \newcommand{\revertcopyright}{% \global\@revertcopyrighttrue \global\@extracrlinetrue} \def\@revertcrfontsize{\fontsize{6}{7\p@}\normalfont\upshape} \def\@extracrline{% \if@revertcopyright \unskip\\ \@revertcrfontsize Reverts to public domain 28 years from publication \fi } \newcommand{\abstractname}{Abstract} \newcommand{\keywordsname}{Key words and phrases} \@namedef{subjclassname@1991}{% \textup{1991} Mathematics Subject Classification} \@namedef{subjclassname@2000}{% \textup{2000} Mathematics Subject Classification} \@namedef{subjclassname@2010}{% \textup{2010} Mathematics Subject Classification} \@namedef{subjclassname@2020}{% \textup{2020} Mathematics Subject Classification} \@xp\let\@xp\subjclassname\csname subjclassname@2020\endcsname \def\@tempb{amsart} \ifx\@classname\@tempb \newcommand{\datename}{\textit{Date}:} \else \newcommand{\datename}{Received by the editors} \fi \def\@settitle{\begin{center}% \baselineskip14\p@\relax \bfseries \uppercasenonmath\@title \@title \end{center}% } \def\author@andify{% \nxandlist {\unskip ,\penalty-1 \space\ignorespaces}% {\unskip {} \@@and~}% {\unskip ,\penalty-2 \space \@@and~}% } \def\@setauthors{% \begingroup \def\thanks{\protect\thanks@warning}% \trivlist \centering\footnotesize \@topsep30\p@\relax \advance\@topsep by -\baselineskip \item\relax \author@andify\authors \def\\{\protect\linebreak}% \MakeUppercase{\authors}% \ifx\@empty\contribs \else ,\penalty-3 \space \@setcontribs \@closetoccontribs \fi \endtrivlist \endgroup } \def\@closetoccontribs{} \def\@setcontribs{% \@xcontribs \MakeUppercase{\xcontribs}% } \def\@setdate{\datename\ \@date\@addpunct.} \def\@setsubjclass{% {\itshape\subjclassname.}\enspace\@subjclass\@addpunct.} \def\@setkeywords{% {\itshape \keywordsname.}\enspace \@keywords\@addpunct.} \def\@setthanks{\def\thanks##1{\par##1\@addpunct.}\thankses} \newbox\abstractbox \newenvironment{abstract}{% \ifx\maketitle\relax \ClassWarning{\@classname}{Abstract should precede \protect\maketitle\space in AMS document classes; reported}% \fi \global\setbox\abstractbox=\vtop \bgroup \normalfont\Small \list{}{\labelwidth\z@ \leftmargin3pc \rightmargin\leftmargin \listparindent\normalparindent \itemindent\z@ \parsep\z@ \@plus\p@ \let\fullwidthdisplay\relax }% \item[\hskip\labelsep\scshape\abstractname.]% }{% \endlist\egroup \ifx\@setabstract\relax \@setabstracta \fi } \def\@setabstract{\@setabstracta \global\let\@setabstract\relax} \def\@setabstracta{% \ifvoid\abstractbox \else \skip@20\p@ \advance\skip@-\lastskip \advance\skip@-\baselineskip \vskip\skip@ \box\abstractbox \prevdepth\z@ % because \abstractbox is a vtop \fi } \def\titlepage{% \clearpage \thispagestyle{empty}\setcounter{page}{0}} \def\endtitlepage{\newpage} \def\labelenumi{(\theenumi)} \def\theenumi{\@arabic\c@enumi} \def\labelenumii{(\theenumii)} \def\theenumii{\@alph\c@enumii} \def\p@enumii{\theenumi} \def\labelenumiii{(\theenumiii)} \def\theenumiii{\@roman\c@enumiii} \def\p@enumiii{\theenumi(\theenumii)} \def\labelenumiv{(\theenumiv)} \def\theenumiv{\@Alph\c@enumiv} \def\p@enumiv{\p@enumiii\theenumiii} \def\labelitemi{$\m@th\bullet$} \def\labelitemii{\bfseries --}% \upshape already done by \itemize \def\labelitemiii{$\m@th\ast$} \def\labelitemiv{$\m@th\cdot$} \newenvironment{verse}{\let\\\@centercr \list{}{\itemsep\z@ \itemindent -1.5em\listparindent\itemindent \rightmargin\leftmargin \advance\leftmargin 1.5em}\item[]% }{% \endlist } \let\endverse=\endlist % for efficiency \newenvironment{quotation}{\list{}{% \leftmargin3pc \listparindent\normalparindent \itemindent\z@ \rightmargin\leftmargin \parsep\z@ \@plus\p@}% \item[]% }{% \endlist } \let\endquotation=\endlist % for efficiency \newenvironment{quote}{% \list{}{\rightmargin\leftmargin}\item[]% }{% \endlist } \let\endquote=\endlist % for efficiency \def\trivlist{\parsep\parskip\@nmbrlistfalse \@trivlist \labelwidth\z@ \leftmargin\z@ \itemindent\z@ \let\@itemlabel\@empty \def\makelabel##1{\upshape##1}} \renewenvironment{enumerate}{% \ifnum \@enumdepth >3 \@toodeep\else \advance\@enumdepth \@ne \edef\@enumctr{enum\romannumeral\the\@enumdepth}\list {\csname label\@enumctr\endcsname}{\usecounter {\@enumctr}\def\makelabel##1{\hss\llap{\upshape##1}}}\fi }{% \endlist } \let\endenumerate=\endlist % for efficiency \renewenvironment{itemize}{% \ifnum\@itemdepth>3 \@toodeep \else \advance\@itemdepth\@ne \edef\@itemitem{labelitem\romannumeral\the\@itemdepth}% \list{\csname\@itemitem\endcsname}% {\def\makelabel##1{\hss\llap{\upshape##1}}}% \fi }{% \endlist } \let\enditemize=\endlist % for efficiency \newcommand{\descriptionlabel}[1]{\hspace\labelsep \upshape\bfseries #1:} \newenvironment{description}{\list{}{% \advance\leftmargini6\p@ \itemindent-12\p@ \labelwidth\z@ \let\makelabel\descriptionlabel}% }{ \endlist } \let\enddescription=\endlist % for efficiency \let\upn=\textup \AtBeginDocument{% \labelsep=5pt\relax \setcounter{enumi}{13}\setcounter{enumii}{13}% \setcounter{enumiii}{13}\setcounter{enumiv}{13}% \settowidth\leftmargini{\labelenumi\hskip\labelsep}% \advance\leftmargini by \normalparindent \settowidth\leftmarginii{\labelenumii\hskip\labelsep}% \settowidth\leftmarginiii{\labelenumiii\hskip\labelsep}% \settowidth\leftmarginiv{\labelenumiv\hskip\labelsep}% \setcounter{enumi}{0}\setcounter{enumii}{0}% \setcounter{enumiii}{0}\setcounter{enumiv}{0}% \leftmarginv=10pt \leftmarginvi=\leftmarginv \leftmargin=\leftmargini \labelwidth=\leftmargini \advance\labelwidth-\labelsep \@listi} \newskip\listisep \listisep\smallskipamount \def\@listI{\leftmargin\leftmargini \parsep\z@skip \topsep\listisep \itemsep\z@skip \listparindent\normalparindent} \let\@listi\@listI \def\@listii{\leftmargin\leftmarginii \labelwidth\leftmarginii \advance\labelwidth-\labelsep \topsep\z@skip \parsep\z@skip \partopsep\z@skip \itemsep\z@skip} \def\@listiii{\leftmargin\leftmarginiii \labelwidth\leftmarginiii \advance\labelwidth-\labelsep} \def\@listiv{\leftmargin\leftmarginiv \labelwidth\leftmarginiv \advance\labelwidth-\labelsep} \def\@listv{\leftmargin\leftmarginv \labelwidth\leftmarginv \advance\labelwidth-\labelsep} \def\@listvi{\leftmargin\leftmarginvi \labelwidth\leftmarginvi \advance\labelwidth-\labelsep} \@ifclasswith{\@classname}{fleqn}{% \let\@tempa\@iden \AtBeginDocument{\mathindent\leftmargini}% }{\let\@tempa\@gobble}% \@ifpackageloaded{amsmath}{\let\@tempa\@gobble}{% \@ifpackageloaded{amstex}{\let\@tempa\@gobble}{}% } \@tempa{% \def\[{\relax \ifmmode\@badmath \else \begin{trivlist}% \@beginparpenalty\predisplaypenalty \@endparpenalty\postdisplaypenalty \item[]\leavevmode \hbox to\linewidth\bgroup$\displaystyle \hskip\mathindent\bgroup \fi}% \def\]{\relax \ifmmode \egroup \m@th$\hfil \egroup \end{trivlist}% \else \@badmath \fi}% \renewenvironment{equation}{% \@beginparpenalty\predisplaypenalty \@endparpenalty\postdisplaypenalty \refstepcounter{equation}% \@topsep\abovedisplayskip \trivlist \item[]\leavevmode \hbox to\linewidth\bgroup\hskip\mathindent$\displaystyle }{% \m@th$\hfil \displaywidth\linewidth \hbox{\@eqnnum}\egroup \endtrivlist }% \renewenvironment{eqnarray}{% \stepcounter{equation}\let\@currentlabel\theequation \global\@eqnswtrue \global\@eqcnt\z@ \tabskip\mathindent \let\\=\@eqncr \abovedisplayskip\topsep \ifvmode \advance\abovedisplayskip\partopsep \fi \belowdisplayskip\abovedisplayskip \belowdisplayshortskip\abovedisplayskip \abovedisplayshortskip\abovedisplayskip $$\everycr{}\halign to\linewidth\bgroup \hskip\@centering $\displaystyle\tabskip\z@skip####\m@th$&% \@eqnsel \global\@eqcnt\@ne \hfil${}####{}\m@th$\hfil&% \global\@eqcnt\tw@ $\displaystyle ####\m@th$\hfil\tabskip\@centering&% \global\@eqcnt\thr@@ \hbox to \z@\bgroup\hss####\egroup\tabskip\z@skip\cr }{% \@@eqncr \egroup \global\advance\c@equation\m@ne$$% \global\@ignoretrue }% \newdimen\mathindent \mathindent\leftmargini } \def\@startsection#1#2#3#4#5#6{% \if@noskipsec \leavevmode \fi \par \@tempskipa #4\relax \@afterindenttrue \ifdim \@tempskipa <\z@ \@tempskipa -\@tempskipa \@afterindentfalse\fi \if@nobreak \everypar{}\else \addpenalty\@secpenalty\addvspace\@tempskipa\fi \@ifstar{\@dblarg{\@sect{#1}{\@m}{#3}{#4}{#5}{#6}}}% {\@dblarg{\@sect{#1}{#2}{#3}{#4}{#5}{#6}}}% } \def\@seccntformat#1{% \protect\textup{\protect\@secnumfont \csname the#1\endcsname \protect\@secnumpunct }% } \def\@secnumfont{\mdseries} \def\@sect#1#2#3#4#5#6[#7]#8{% \edef\@toclevel{\ifnum#2=\@m 0\else\number#2\fi}% \ifnum #2>\c@secnumdepth \let\@secnumber\@empty \else \@xp\let\@xp\@secnumber\csname the#1\endcsname\fi \@tempskipa #5\relax \ifnum #2>\c@secnumdepth \let\@svsec\@empty \else \refstepcounter{#1}% \edef\@secnumpunct{% \ifdim\@tempskipa>\z@ % not a run-in section heading \@ifnotempty{#8}{.\@nx\enspace}% \else \@ifempty{#8}{.}{.\@nx\enspace}% \fi }% \@ifempty{#8}{% \ifnum #2=\tw@ \def\@secnumfont{\bfseries}\fi}{}% \protected@edef\@svsec{% \ifnum#2<\@m \@ifundefined{#1name}{}{% \ignorespaces\csname #1name\endcsname\space }% \fi \@seccntformat{#1}% }% \fi \ifdim \@tempskipa>\z@ % then this is not a run-in section heading \begingroup #6\relax \@hangfrom{\hskip #3\relax\@svsec}{\interlinepenalty\@M #8\par}% \endgroup \ifnum#2>\@m \else \@tocwrite{#1}{#8}\fi \else \def\@svsechd{#6\hskip #3\@svsec \@ifnotempty{#8}{\ignorespaces#8\unskip \@addpunct.}% \ifnum#2>\@m \else \@tocwrite{#1}{#8}\fi }% \fi \global\@nobreaktrue \@xsect{#5}} \let\@ssect\relax \newcounter{part} \newcounter{section} \newcounter{subsection}[section] \newcounter{subsubsection}[subsection] \newcounter{paragraph}[subsubsection] \newcounter{subparagraph}[paragraph] \renewcommand\thepart {\arabic{part}} \renewcommand\thesection {\arabic{section}} \renewcommand\thesubsection {\thesection.\arabic{subsection}} \renewcommand\thesubsubsection {\thesubsection .\arabic{subsubsection}} \renewcommand\theparagraph {\thesubsubsection.\arabic{paragraph}} \renewcommand\thesubparagraph {\theparagraph.\arabic{subparagraph}} \setcounter{secnumdepth}{3} \def\partname{Part} \def\part{\@startsection{part}{0}% \z@{\linespacing\@plus\linespacing}{.5\linespacing}% {\normalfont\bfseries\raggedright}} \def\specialsection{\@startsection{section}{1}% \z@{\linespacing\@plus\linespacing}{.5\linespacing}% {\normalfont\centering}} \def\section{\@startsection{section}{1}% \z@{.7\linespacing\@plus\linespacing}{.5\linespacing}% {\normalfont\scshape\centering}} \def\subsection{\@startsection{subsection}{2}% \z@{.5\linespacing\@plus.7\linespacing}{-.5em}% {\normalfont\bfseries}} \def\subsubsection{\@startsection{subsubsection}{3}% \z@{.5\linespacing\@plus.7\linespacing}{-.5em}% {\normalfont\itshape}} \def\paragraph{\@startsection{paragraph}{4}% \z@\z@{-\fontdimen2\font}% \normalfont} \def\subparagraph{\@startsection{subparagraph}{5}% \z@\z@{-\fontdimen2\font}% \normalfont} \def\appendix{\par\c@section\z@ \c@subsection\z@ \let\sectionname\appendixname \def\thesection{\@Alph\c@section}} \def\appendixname{Appendix} \def\@Roman#1{\@xp\@slowromancap \romannumeral#1@}% \def\@slowromancap#1{\ifx @#1% then terminate \else \if i#1I\else\if v#1V\else\if x#1X\else\if l#1L\else\if c#1C\else\if m#1M\else#1\fi\fi\fi\fi\fi\fi \@xp\@slowromancap \fi } \newcommand{\@pnumwidth}{1.6em} \newcommand{\@tocrmarg}{2.6em} \setcounter{tocdepth}{2} \newswitch{toc} \newswitch{lof} \newswitch{lot} \newcommand\contentsnamefont{\scshape} \def\@starttoc#1#2{\begingroup \setTrue{#1}% \par\removelastskip\vskip\z@skip \@startsection{}\@M\z@{\linespacing\@plus\linespacing}% {.5\linespacing}{\centering\contentsnamefont}{#2}% \ifx\contentsname#2% \else \addcontentsline{toc}{section}{#2}\fi \makeatletter \@input{\jobname.#1}% \if@filesw \@xp\newwrite\csname tf@#1\endcsname \immediate\@xp\openout\csname tf@#1\endcsname \jobname.#1\relax \fi \global\@nobreakfalse \endgroup \addvspace{32\p@\@plus14\p@}% \let\tableofcontents\relax } \def\contentsname{Contents} \def\listfigurename{List of Figures} \def\listtablename{List of Tables} \def\tableofcontents{% \@starttoc{toc}\contentsname } \def\listoffigures{\@starttoc{lof}\listfigurename} \def\listoftables{\@starttoc{lot}\listtablename} \AtBeginDocument{% \@for\@tempa:=-1,0,1,2,3\do{% \@ifundefined{r@tocindent\@tempa}{% \@xp\gdef\csname r@tocindent\@tempa\endcsname{0pt}}{}% }% } \def\@writetocindents{% \begingroup \@for\@tempa:=-1,0,1,2,3\do{% \immediate\write\@auxout{% \string\newlabel{tocindent\@tempa}{% \csname r@tocindent\@tempa\endcsname}}% }% \endgroup} \AtEndDocument{\@writetocindents} \let\indentlabel\@empty \def\@tochangmeasure#1{\sbox\z@{#1}% \ifdim\wd\z@>\csname r@tocindent\@toclevel\endcsname\relax \@xp\xdef\csname r@tocindent\@toclevel\endcsname{\the\wd\z@}% \fi } \def\@toclevel{0} \def\@tocline#1#2#3#4#5#6#7{\relax \ifnum #1>\c@tocdepth % then omit \else \par \addpenalty\@secpenalty\addvspace{#2}% \begingroup \hyphenpenalty\@M \@ifempty{#4}{% \@tempdima\csname r@tocindent\number#1\endcsname\relax }{% \@tempdima#4\relax }% \parindent\z@ \leftskip#3\relax \advance\leftskip\@tempdima\relax \rightskip\@pnumwidth plus4em \parfillskip-\@pnumwidth #5\leavevmode\hskip-\@tempdima #6\nobreak\relax \hfil\hbox to\@pnumwidth{\@tocpagenum{#7}}\par \nobreak \endgroup \fi} \def\@tocpagenum#1{\hss{\mdseries #1}} \def\@tocwrite#1{\@xp\@tocwriteb\csname toc#1\endcsname{#1}} \def\@tocwriteb#1#2#3{% \begingroup \def\@tocline##1##2##3##4##5##6{% \ifnum##1>\c@tocdepth \else \sbox\z@{##5\let\indentlabel\@tochangmeasure##6}\fi}% \csname l@#2\endcsname{#1{\csname#2name\endcsname}{\@secnumber}{}}% \endgroup \addcontentsline{toc}{#2}% {\protect#1{\csname#2name\endcsname}{\@secnumber}{#3}}} \def\l@section{\@tocline{1}{0pt}{1pc}{}{}} \newcommand{\tocsection}[3]{% \indentlabel{\@ifnotempty{#2}{\ignorespaces#1 #2.\quad}}#3} \def\l@subsection{\@tocline{2}{0pt}{1pc}{5pc}{}} \let\tocsubsection\tocsection \def\l@subsubsection{\@tocline{3}{0pt}{1pc}{7pc}{}} \let\tocsubsubsection\tocsection \let\l@paragraph\l@subsubsection \let\tocparagraph\tocsection \let\l@subparagraph\l@subsubsection \let\tocsubparagraph\tocsection \def\l@part{\@tocline{-1}{12pt plus2pt}{0pt}{}{\bfseries}} \let\tocpart\tocsection \def\l@chapter{\@tocline{0}{8pt plus1pt}{0pt}{}{}} \let\tocchapter\tocsection \newcommand{\tocappendix}[3]{% \indentlabel{#1\@ifnotemamsbook.cls60 KBVendored from mirrors.ctan.org on 2026-05-26.
%% %% This is file `amsbook.cls', %% generated with the docstrip utility. %% %% The original source files were: %% %% amsclass.dtx (with options: `amsbook,classes') %% This is a generated file. %% %% Copyright 1995, 1999, 2004, 2009-2020 American Mathematical Society. %% %% American Mathematical Society %% Technical Support %% Publications Technical Group %% 201 Charles Street %% Providence, RI 02904 %% USA %% tel: (401) 455-4080 %% (800) 321-4267 (USA and Canada only) %% fax: (401) 331-3842 %% email: tech-support@ams.org %% %% This work may be distributed and/or modified under the %% conditions of the LaTeX Project Public License, either version 1.3c %% 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.3c or later is part of all distributions of LaTeX %% version 2005/12/01 or later. %% %% This work has the LPPL maintenance status `maintained'. %% %% The Current Maintainer of this work is the American Mathematical %% Society. %% %% ======================================================================== %% \NeedsTeXFormat{LaTeX2e}% LaTeX 2.09 can't be used (nor non-LaTeX) [1995/06/01]% LaTeX date must be June 1995 or later \ProvidesClass{amsbook}[2020/05/29 v2.20.6] \global\expandafter\let\csname ver@amsthm.sty\expandafter\endcsname \csname ver@\@currname.\@currext\endcsname \let\@xp=\expandafter \let\@nx=\noexpand \def\@oparg#1[#2]{\@ifnextchar[{#1}{#1[#2]}} \long\def\@ifempty#1{\@xifempty#1@@..\@nil} \long\def\@xifempty#1#2@#3#4#5\@nil{% \ifx#3#4\@xp\@firstoftwo\else\@xp\@secondoftwo\fi} \long\def\@ifnotempty#1{\@ifempty{#1}{}} \def\setboxz@h{\setbox\z@\hbox} \def\@addpunct#1{% \relax\ifhmode \ifnum\spacefactor>\@m \else#1\fi \fi} \def\nopunct{\spacefactor 1007 } \def\frenchspacing{\sfcode`\.1006\sfcode`\?1005\sfcode`\!1004% \sfcode`\:1003\sfcode`\;1002\sfcode`\,1001 } \def\@tempa#1#2\@nil{\edef\@classname{#1}} \expandafter\@tempa\@currnamestack{}{}{}\@nil \ifx\@classname\@empty \edef\@classname{\@currname}\fi \def\@True{00} \def\@False{01} \newcommand\newswitch[2][False]{% \expandafter\@ifdefinable\csname ?@#2\endcsname{% \global\expandafter\let\csname ?@#2\expandafter\endcsname \csname @#1\endcsname }% } \newcommand{\setFalse}[1]{% \expandafter\let\csname ?@#1\endcsname\@False } \newcommand{\setTrue}[1]{% \expandafter\let\csname ?@#1\endcsname\@True } \newswitch{} \DeclareRobustCommand{\except}[1]{% \if\csname ?@#1\endcsname \expandafter\@gobble \else \expandafter\@firstofone \fi } \DeclareRobustCommand{\for}[1]{% \if\csname ?@#1\endcsname \expandafter\@firstofone \else \expandafter\@gobble \fi } \DeclareRobustCommand{\forany}[1]{% \csname for@any@01\endcsname#1,?,\@nil } \@namedef{for@any@\@False}#1,{% \csname for@any@% \csname ?@\zap@space#1 \@empty\endcsname \endcsname } \@namedef{?@?}{x} \@namedef{for@any@\@True}#1\@nil#2{#2} \def\for@any@x{\@car\@gobble} \DeclareOption{a4paper}{\paperheight 297mm\paperwidth 210mm \textheight 54.5pc } \DeclareOption{letterpaper}{\paperheight 11in\paperwidth 8.5in } \DeclareOption{landscape}{\@tempdima\paperheight \paperheight\paperwidth \paperwidth\@tempdima} \DeclareOption{portrait}{} \DeclareOption{oneside}{\@twosidefalse \@mparswitchfalse} \DeclareOption{twoside}{\@twosidetrue \@mparswitchtrue} \DeclareOption{draft}{\overfullrule5\p@ \ClassWarningNoLine{\@classname}{% When the draft option is used, the \protect\includegraphics\MessageBreak command will print blank placeholder boxes\MessageBreak for the graphics}% } \DeclareOption{final}{\overfullrule\z@ } \def\dateposted#1{\def\@dateposted{#1}}% \let\@dateposted\@empty \newif\if@titlepage \DeclareOption{titlepage}{\@titlepagetrue} \DeclareOption{notitlepage}{\@titlepagefalse} \newif\if@openright \DeclareOption{openright}{\@openrighttrue} \DeclareOption{openany}{\@openrightfalse} \@openrighttrue \DeclareOption{onecolumn}{\@twocolumnfalse} \DeclareOption{twocolumn}{\@twocolumntrue} \DeclareOption{nomath}{} \DeclareOption{noamsfonts}{} \DeclareOption{psamsfonts}{% \PassOptionsToPackage{psamsfonts}{amsfonts}% \PassOptionsToPackage{cmex10}{amsmath}} \newif\iftagsleft@ \DeclareOption{leqno}{% \tagsleft@true \PassOptionsToPackage{leqno}{amsmath}} \DeclareOption{reqno}{% \tagsleft@false \PassOptionsToPackage{reqno}{amsmath}} \newif\ifctagsplit@ \DeclareOption{centertags}{% \ctagsplit@true \PassOptionsToPackage{centertags}{amsmath}} \DeclareOption{tbtags}{% \ctagsplit@false \PassOptionsToPackage{tbtags}{amsmath}} \DeclareOption{fleqn}{}% \newcommand{\@mainsize}{10} \newcommand{\@ptsize}{0} \newcommand{\larger}[1][1]{% \count@\@currsizeindex \advance\count@#1\relax \ifnum\count@<\z@ \count@\z@ \else\ifnum\count@>12 \count@12 \fi\fi \ifcase\count@ \Tiny\or\Tiny\or\tiny\or\SMALL\or\Small\or\small \or\normalsize \or\large\or\Large\or\LARGE\or\huge\or\Huge\else\Huge \fi } \newcommand{\smaller}[1][1]{\larger[-#1]} \def\@adjustvertspacing{% \bigskipamount.7\baselineskip plus.7\baselineskip \medskipamount\bigskipamount \divide\medskipamount\tw@ \smallskipamount\medskipamount \divide\smallskipamount\tw@ \abovedisplayskip\medskipamount \belowdisplayskip \abovedisplayskip \abovedisplayshortskip\abovedisplayskip \advance\abovedisplayshortskip-1\abovedisplayskip \belowdisplayshortskip\abovedisplayshortskip \advance\belowdisplayshortskip 1\smallskipamount \jot\baselineskip \divide\jot 4 \relax } \renewcommand\normalsize{\@xsetfontsize\normalsize 6% \@adjustvertspacing \let\@listi\@listI} \DeclareRobustCommand{\Tiny}{\@xsetfontsize\Tiny 1} \DeclareRobustCommand{\tiny}{\@xsetfontsize\tiny 2} \DeclareRobustCommand{\SMALL}{\@xsetfontsize\SMALL 3} \DeclareRobustCommand{\Small}{\@xsetfontsize\Small 4% \@adjustvertspacing \def\@listi{\topsep\smallskipamount \parsep\z@skip \itemsep\z@skip \leftmargin=\leftmargini \labelwidth=\leftmargini \advance\labelwidth-\labelsep }% } \DeclareRobustCommand{\small}{\@xsetfontsize\small 5\@adjustvertspacing} \def\footnotesize{\Small} \def\scriptsize{\SMALL} \DeclareRobustCommand{\large}{\@xsetfontsize\large 7\@adjustvertspacing} \DeclareRobustCommand{\Large}{\@xsetfontsize\Large 8\@adjustvertspacing} \DeclareRobustCommand{\LARGE}{\@xsetfontsize\LARGE 9} \DeclareRobustCommand{\huge}{\@xsetfontsize\huge{10}} \DeclareRobustCommand{\Huge}{\@xsetfontsize\Huge{11}} \def\@xsetfontsize#1#2{% \chardef\@currsizeindex#2\relax \edef\@tempa{\@nx\@setfontsize\@nx#1% \@xp\ifcase\@xp\@currsizeindex\@typesizes \else{99}{99}\fi}% \@tempa } \chardef\@currsizeindex=6 \widowpenalty=10000 \clubpenalty=10000 \brokenpenalty=10000 \newdimen\linespacing \lineskip=1pt \lineskiplimit=1pt \normallineskip=1pt \normallineskiplimit=1pt \let\baselinestretch=\@empty \headheight=8pt \headsep=14pt \footskip=18pt \textheight=50.5pc \topskip=10pt \textwidth=30pc \columnsep=10pt \columnseprule=0pt \marginparwidth=90pt \marginparsep=11pt \marginparpush=5pt \AtBeginDocument{\settoheight{\footnotesep}{\footnotesize M$^1$}} \skip\footins=7pt plus11pt \skip\@mpfootins=\skip\footins \fboxsep=3pt \fboxrule=.4pt \arrayrulewidth=.4pt \doublerulesep=2pt \labelsep=5pt \arraycolsep=\labelsep \tabcolsep=\labelsep \tabbingsep=\labelsep \floatsep=15pt plus 12pt \dblfloatsep=15pt plus 12pt \textfloatsep=\floatsep \dbltextfloatsep=15pt plus 12pt \intextsep=\floatsep \@fptop=0pt plus1fil \@dblfptop=0pt plus1fil \@fpbot=0pt plus1fil \@dblfpbot=0pt plus1fil \@fpsep=8pt plus2fil \@dblfpsep=8pt plus2fil\relax \parskip=0pt \relax \newdimen\normalparindent \normalparindent=18pt \parindent=\normalparindent \partopsep=0pt \relax \parsep=0pt \relax \itemsep=0pt \relax \@lowpenalty=51 \@medpenalty=151 \@highpenalty=301 \@beginparpenalty=-\@lowpenalty \@endparpenalty=-\@lowpenalty \@itempenalty=-\@lowpenalty \DeclareOption{10pt}{\def\@mainsize{10}\def\@ptsize{0}% \def\@typesizes{% \or{5}{6}\or{6}{7}\or{7}{8}\or{8}{10}\or{9}{11}% \or{10}{12}% normalsize \or{\@xipt}{13}\or{\@xiipt}{14}\or{\@xivpt}{17}% \or{\@xviipt}{20}\or{\@xxpt}{24}}% \normalsize \linespacing=\baselineskip } \DeclareOption{11pt}{\def\@mainsize{11}\def\@ptsize{1}% \def\@typesizes{% \or{6}{7}\or{7}{8}\or{8}{10}\or{9}{11}\or{10}{12}% \or{\@xipt}{13}% normalsize \or{\@xiipt}{14}\or{\@xivpt}{17}\or{\@xviipt}{20}% \or{\@xxpt}{24}\or{\@xxvpt}{30}}% \normalsize \linespacing=\baselineskip } \DeclareOption{12pt}{\def\@mainsize{12}\def\@ptsize{2}% \def\@typesizes{% \or{7}{8}\or{8}{10}\or{9}{11}\or{10}{12}\or{\@xipt}{13}% \or{\@xiipt}{14}% normalsize \or{\@xivpt}{17}\or{\@xviipt}{20}\or{\@xxpt}{24}% \or{\@xxvpt}{30}\or{\@xxvpt}{30}}% \normalsize \linespacing=\baselineskip } \DeclareOption{8pt}{\def\@mainsize{8}\def\@ptsize{8}% \def\@typesizes{% \or{5}{6}\or{5}{6}\or{5}{6}\or{6}{7}\or{7}{8}% \or{8}{10}% normalsize \or{9}{11}\or{10}{12}\or{\@xipt}{13}% \or{\@xiipt}{14}\or{\@xivpt}{17}}% \normalsize \linespacing=\baselineskip } \DeclareOption{9pt}{\def\@mainsize{9}\def\@ptsize{9}% \def\@typesizes{% \or{5}{6}\or{5}{6}\or{6}{7}\or{7}{8}\or{8}{10}% \or{9}{11}% normalsize \or{10}{12}\or{\@xipt}{13}\or{\@xiipt}{14}% \or{\@xivpt}{17}\or{\@xviipt}{20}}% \normalsize \linespacing=\baselineskip } \def\ps@empty{\let\@mkboth\@gobbletwo \let\@oddhead\@empty \let\@evenhead\@empty \let\@oddfoot\@empty \let\@evenfoot\@empty \global\topskip\normaltopskip} \def\ps@plain{\ps@empty \def\@oddfoot{\normalfont\scriptsize \hfil\thepage\hfil}% \let\@evenfoot\@oddfoot} \newswitch{runhead} \def\ps@headings{\ps@empty \def\@evenhead{% \setTrue{runhead}% \normalfont\scriptsize \rlap{\thepage}\hfil \def\thanks{\protect\thanks@warning}% \leftmark{}{}\hfil}% \def\@oddhead{% \setTrue{runhead}% \normalfont\scriptsize \hfil \def\thanks{\protect\thanks@warning}% \rightmark{}{}\hfil \llap{\thepage}}% \let\@mkboth\markboth \def\partmark{\@secmark\markboth\partrunhead\partname}% \def\chaptermark{% \@secmark\markboth\chapterrunhead{}}% \def\sectionmark{% \@secmark\markright\sectionrunhead\sectionname}% } \let\sectionname\@empty \let\subsectionname\@empty \let\subsubsectionname\@empty \let\paragraphname\@empty \let\subparagraphname\@empty \def\leftmark{\expandafter\@firstoftwo\topmark{}{}} \def\rightmark{\expandafter\@secondoftwo\botmark{}{}} \long\def\@nilgobble#1\@nil{} \def\@secmark#1#2#3#4{% \begingroup \let\protect\@unexpandable@protect \edef\@tempa{\endgroup \toks@{\protect#2{#3}{\@secnumber}}}% \@tempa \toks@\@xp{\the\toks@{#4}}% \afterassignment\@nilgobble\@temptokena\@themark{}\@nil \edef\@tempa{\@nx\@mkboth{% \ifx\markright#1\the\@temptokena\else\the\toks@\fi}{\the\toks@}}% \@tempa} \let\@secnumber\@empty \def\markboth#1#2{% \begingroup \@temptokena{{#1}{#2}}\xdef\@themark{\the\@temptokena}% \mark{\the\@temptokena}% \endgroup \if@nobreak\ifvmode\nobreak\fi\fi} \def\ps@myheadings{\ps@headings \let\@mkboth\@gobbletwo} \newskip\normaltopskip \normaltopskip=10pt \relax \let\sectionmark\@gobble \let\subsectionmark\@gobble \let\subsubsectionmark\@gobble \let\paragraphmark\@gobble \DeclareOption{makeidx}{} \ExecuteOptions{leqno,centertags,letterpaper,portrait,% 10pt,twoside,onecolumn,final} \ProcessOptions\relax \if@compatibility \def\@tempa{\RequirePackage{amstex}\relax}% \else \@ifclasswith{\@classname}{nomath}{% \let\@tempa\relax }{% \def\@tempa{\RequirePackage{amsmath}\relax}% }% \fi \@tempa % load amstex.sty or amsmath.sty \@ifundefined{numberwithin}{% \newcommand{\numberwithin}[3][\arabic]{% \@ifundefined{c@#2}{\@nocounterr{#2}}{% \@ifundefined{c@#3}{\@nocnterr{#3}}{% \@addtoreset{#2}{#3}% \@xp\xdef\csname the#2\endcsname{% \@xp\@nx\csname the#3\endcsname .\@nx#1{#2}}}}% } \csname newtoks\endcsname\@emptytoks }{} \if@compatibility \else \@ifclasswith{\@classname}{noamsfonts}{% % amsfonts package is not wanted }{% % amsfonts package IS wanted; test whether a recent enough version % seems to be installed \begingroup \fontencoding{U}\fontfamily{msa}\try@load@fontshape\endgroup \global\@xp\let\csname U+msa\endcsname\relax % reset \@ifundefined{U/msa/m/n}{% \ClassError{\@classname}{% Package `amsfonts' not installed, or version too old?\MessageBreak Unable to get font info for the `msam' fonts in the expected form% }{% The amsfonts package will not be loaded, to avoid probable\MessageBreak incompatibility problems. You can (a) use the `noamsfonts' documentclass\MessageBreak option next time, or (b) check that the amsfonts package is installed\MessageBreak correctly, and is not too old to be compatible.% }% }{% \RequirePackage{amsfonts}[1995/01/01]\relax }% } \fi % end yesamsfonts branch \let\cleardouble@page\cleardoublepage \AtBeginDocument{% \ifx\cleardouble@page\cleardoublepage \def\cleardoublepage{\clearpage{\pagestyle{empty}\cleardouble@page}} \fi } \newcommand{\uppercasenonmath}[1]{\toks@\@emptytoks \@xp\@skipmath\@xp\@empty#1$$% \edef#1{{\@nx\protect\@nx\@upprep\the\toks@}}% } \newcommand{\@upprep}{% \spaceskip1.3\fontdimen2\font plus1.3\fontdimen3\font \upchars@} \newcommand{\upchars@}{% \def\ss{SS}\def\i{I}\def\j{J}\def\ae{\AE}\def\oe{\OE}% \def\o{\O}\def\aa{\AA}\def\l{\L}\def\Mc{M{\scshape c}}} \providecommand{\Mc}{Mc} \newcommand{\@skipmath}{} \long\def\@skipmath#1$#2${% \@xskipmath#1\(\)% \@ifnotempty{#2}{\toks@\@xp{\the\toks@$#2$}\@skipmath\@empty}}% \newcommand{\@xskipmath}{} \long\def\@xskipmath#1\(#2\){% \uppercase{\toks@\@xp\@xp\@xp{\@xp\the\@xp\toks@#1}}% \@ifnotempty{#2}{\toks@\@xp{\the\toks@\(#2\)}\@xskipmath\@empty}}% \def\altucnm#1{% \MakeTextUppercase{\toks@{#1}}% \edef#1{\the\toks@}% } \AtBeginDocument{% \@ifundefined{MakeTextUppercase}{}{\let\uppercasenonmath\altucnm}% } \@ifundefined{MakeUppercase}{\let\MakeUppercase\uppercase}{}% \newcommand{\today}{% \relax\ifcase\month\or January\or February\or March\or April\or May\or June\or July\or August\or September\or October\or November\or December\fi \space\number\day, \number\year} \DeclareOldFontCommand{\rm}{\normalfont\rmfamily}{\mathrm} \DeclareOldFontCommand{\sf}{\normalfont\sffamily}{\mathsf} \DeclareOldFontCommand{\tt}{\normalfont\ttfamily}{\mathtt} \DeclareOldFontCommand{\bf}{\normalfont\bfseries}{\mathbf} \DeclareOldFontCommand{\it}{\normalfont\itshape}{\mathit} \DeclareOldFontCommand{\sl}{\normalfont\slshape}{\@nomath\sl} \DeclareOldFontCommand{\sc}{\normalfont\scshape}{\@nomath\sc} %%\if@compatibility %%\else %% \def\@obsolete@fontswitch#1#2#3{% %% \@latex@warning@no@line{% %% Command {\string#1...}\on@line\space is obsolete;\MessageBreak %% the LaTeX2e equivalent is \string#3{...}}% %% \gdef#1{\@fontswitch\relax#3}% %% } %% \DeclareRobustCommand*\cal{% %% \@xp\@obsolete@fontswitch\csname cal \endcsname\relax\mathcal} %% \DeclareRobustCommand*\mit{% %% \@xp\@obsolete@fontswitch\csname mit \endcsname\relax\mathnormal} %%\fi \renewcommand*{\title}[2][]{\gdef\shorttitle{#1}\gdef\@title{#2}} \edef\title{\@nx\@dblarg \@xp\@nx\csname\string\title\endcsname} \renewcommand{\author}[2][]{% \ifx\@empty\authors \gdef\authors{#2}% \else \g@addto@macro\authors{\and#2}% \g@addto@macro\addresses{\author{}}% \fi \@ifnotempty{#1}{% \ifx\@empty\shortauthors \gdef\shortauthors{#1}% \else \g@addto@macro\shortauthors{\and#1}% \fi }% } \edef\author{\@nx\@dblarg \@xp\@nx\csname\string\author\endcsname} \let\shortauthors\@empty \let\authors\@empty \let\addresses\@empty \let\thankses\@empty \newcommand{\address}[2][]{\g@addto@macro\addresses{\address{#1}{#2}}} \newcommand{\curraddr}[2][]{\g@addto@macro\addresses{\curraddr{#1}{#2}}} \newcommand{\email}[2][]{\g@addto@macro\addresses{\email{#1}{#2}}} \newcommand{\urladdr}[2][]{\g@addto@macro\addresses{\urladdr{#1}{#2}}} \long\def\thanks@warning#1{% \ClassError{\@classname}{% \protect\thanks\space should be given separately, not inside author name.% }\@ehb } \renewcommand{\thanks}[1]{% \@ifnotempty{#1}{\g@addto@macro\thankses{\thanks{#1}}}% } \def\curraddrname{{\itshape Current address}} \def\emailaddrname{{\itshape Email address}} \def\urladdrname{{\itshape URL}} \def\@setaddresses{\par \nobreak \begingroup \def\author##1{\nobreak\addvspace\bigskipamount}% \def\\{\unskip, \ignorespaces}% \interlinepenalty\@M \def\address##1##2{\begingroup \par\addvspace\bigskipamount\indent \@ifnotempty{##1}{(\ignorespaces##1\unskip) }% {\scshape\ignorespaces##2}\par\endgroup}% \def\curraddr##1##2{\begingroup \@ifnotempty{##2}{\nobreak\indent\curraddrname \@ifnotempty{##1}{, \ignorespaces##1\unskip}\/:\space ##2\par}\endgroup}% \def\email##1##2{\begingroup \@ifnotempty{##2}{\nobreak\indent\emailaddrname \@ifnotempty{##1}{, \ignorespaces##1\unskip}\/:\space \ttfamily##2\par}\endgroup}% \def\urladdr##1##2{\begingroup \def~{\char`\~}% \@ifnotempty{##2}{\nobreak\indent\urladdrname \@ifnotempty{##1}{, \ignorespaces##1\unskip}\/:\space \ttfamily##2\par}\endgroup}% \addresses \endgroup } \let\@date\@empty \def\dedicatory#1{\def\@dedicatory{#1}} \let\@dedicatory=\@empty \def\keywords#1{\def\@keywords{#1}} \let\@keywords=\@empty \newcommand*\subjclass[2][2020]{% \def\@subjclass{#2}% \@ifundefined{subjclassname@#1}{% \ClassWarning{\@classname}{Unknown edition (#1) of Mathematics Subject Classification; using '2020'.}% }{% \@xp\let\@xp\subjclassname\csname subjclassname@#1\endcsname }% } \let\@subjclass=\@empty \def\translname{Translated by} \def\translator#1{% \ifx\@empty\@translators \def\@translators{#1}% \else\g@addto@macro\@translators{\and#1}\fi} \let\@translators=\@empty \newcommand{\xandlist}[4]{\@andlista{{#1}{#2}{#3}}#4\and\and} \def\@andlista#1#2\and#3\and{\@andlistc{#2}\@ifnotempty{#3}{% \@andlistb#1{#3}}} \def\@andlistb#1#2#3#4#5\and{% \@ifempty{#5}{% \@andlistc{#2#4}% }{% \@andlistc{#1#4}\@andlistb{#1}{#3}{#3}{#5}% }} \let\@andlistc\@iden \newcommand{\nxandlist}[4]{% \def\@andlistc##1{\toks@\@xp{\the\toks@##1}}% \toks@{\toks@\@emptytoks \@andlista{{#1}{#2}{#3}}}% \the\@xp\toks@#4\and\and \edef#4{\the\toks@}% \let\@andlistc\@iden} \def\@@and{and} \newcommand{\andify}{% \nxandlist{\unskip, }{\unskip{} \@@and~}{\unskip, \@@and~}} \def\and{\unskip{ }\@@and{ }\ignorespaces} \newcommand{\copyrightinfo}[2]{% \def\copyrightyear{#1}% \@ifnotempty{#2}{\def\copyrightholder{#2}}% } \copyrightinfo{0000}{(copyright holder)} \newinsert\copyins \skip\copyins=1.5pc \count\copyins=1000 % magnification factor, 1000 = 100% \dimen\copyins=.5\textheight % maximum allowed per page \g@addto@macro\@reinserts{% \ifvoid\copyins\else\insert\copyins{\unvbox\copyins}\fi } \def\@copyinsfontsize{\fontsize{6}{7\p@}\normalfont\upshape} \newif\if@extracrline \@extracrlinefalse \let\@extracrline\@empty \relax \def\@setcopyright{% \ifx\@empty\@serieslogo \else\ifx\@empty\copyrightyear \else \insert\copyins{\hsize\textwidth \parfillskip\z@\relax \leftskip\z@\@plus.9\textwidth\relax \rightskip\z@\relax \@copyinsfontsize \everypar{}% \vskip-\skip\copyins \if@extracrline \vskip-6pt \fi \nointerlineskip \leavevmode\hfill\vrule\@width\z@\@height\skip\copyins \copyright\copyrightyear\ \copyrightholder\ignorespaces \if@extracrline \@extracrline \fi \par \kern\z@}% \fi\fi } \def\@combinefloats{% \ifx \@toplist\@empty \else \@cflt \fi \ifx \@botlist\@empty \else \@cflb \fi \ifvoid\copyins \else \@cflci \fi } \def\@cflci{% \setbox\@outputbox\vbox{% \unvbox\@outputbox \vskip\skip\copyins \if@twocolumn \else \vskip\z@ plus\p@ \fi \hbox to\columnwidth{% \hss\vbox to\z@{\vss \if@twocolumn \if@firstcolumn \else \unvbox\copyins \fi \else \unvbox\copyins \fi }}}% \if@twocolumn \if@firstcolumn \insert\copyins{\unvbox\copyins}% \fi\fi \global\count\copyins=999 \relax } \newcommand{\abstractname}{Abstract} \newcommand{\keywordsname}{Key words and phrases} \@namedef{subjclassname@1991}{% \textup{1991} Mathematics Subject Classification} \@namedef{subjclassname@2000}{% \textup{2000} Mathematics Subject Classification} \@namedef{subjclassname@2010}{% \textup{2010} Mathematics Subject Classification} \@namedef{subjclassname@2020}{% \textup{2020} Mathematics Subject Classification} \@xp\let\@xp\subjclassname\csname subjclassname@2020\endcsname \def\@tempb{amsbook} \ifx\@classname\@tempb \newcommand{\datename}{\textit{Date}:} \else \newcommand{\datename}{Received by the editors} \fi \def\@setthanks{\def\thanks##1{\par##1\@addpunct.}\thankses} \newbox\abstractbox \newenvironment{abstract}{% \ifx\maketitle\relax \ClassWarning{\@classname}{Abstract should precede \protect\maketitle\space in AMS document classes; reported}% \fi \global\setbox\abstractbox=\vtop \bgroup \normalfont\Small \list{}{\labelwidth\z@ \leftmargin3pc \rightmargin\leftmargin \listparindent\normalparindent \itemindent\z@ \parsep\z@ \@plus\p@ \let\fullwidthdisplay\relax }% \item[\hskip\labelsep\scshape\abstractname.]% }{% \endlist\egroup \ifx\@setabstract\relax \@setabstracta \fi } \def\@setabstract{\@setabstracta \global\let\@setabstract\relax} \def\@setabstracta{% \ifvoid\abstractbox \else \skip@20\p@ \advance\skip@-\lastskip \advance\skip@-\baselineskip \vskip\skip@ \box\abstractbox \prevdepth\z@ % because \abstractbox is a vtop \fi } \def\titlepage{% \cleardoublepage \thispagestyle{empty}\setcounter{page}{0}} \def\endtitlepage{\newpage} \def\labelenumi{(\theenumi)} \def\theenumi{\@arabic\c@enumi} \def\labelenumii{(\theenumii)} \def\theenumii{\@alph\c@enumii} \def\p@enumii{\theenumi} \def\labelenumiii{(\theenumiii)} \def\theenumiii{\@roman\c@enumiii} \def\p@enumiii{\theenumi(\theenumii)} \def\labelenumiv{(\theenumiv)} \def\theenumiv{\@Alph\c@enumiv} \def\p@enumiv{\p@enumiii\theenumiii} \def\labelitemi{$\m@th\bullet$} \def\labelitemii{\bfseries --}% \upshape already done by \itemize \def\labelitemiii{$\m@th\ast$} \def\labelitemiv{$\m@th\cdot$} \newenvironment{verse}{\let\\\@centercr \list{}{\itemsep\z@ \itemindent -1.5em\listparindent\itemindent \rightmargin\leftmargin \advance\leftmargin 1.5em}\item[]% }{% \endlist } \let\endverse=\endlist % for efficiency \newenvironment{quotation}{\list{}{% \leftmargin3pc \listparindent\normalparindent \itemindent\z@ \rightmargin\leftmargin \parsep\z@ \@plus\p@}% \item[]% }{% \endlist } \let\endquotation=\endlist % for efficiency \newenvironment{quote}{% \list{}{\rightmargin\leftmargin}\item[]% }{% \endlist } \let\endquote=\endlist % for efficiency \def\trivlist{\parsep\parskip\@nmbrlistfalse \@trivlist \labelwidth\z@ \leftmargin\z@ \itemindent\z@ \let\@itemlabel\@empty \def\makelabel##1{\upshape##1}} \renewenvironment{enumerate}{% \ifnum \@enumdepth >3 \@toodeep\else \advance\@enumdepth \@ne \edef\@enumctr{enum\romannumeral\the\@enumdepth}\list {\csname label\@enumctr\endcsname}{\usecounter {\@enumctr}\def\makelabel##1{\hss\llap{\upshape##1}}}\fi }{% \endlist } \let\endenumerate=\endlist % for efficiency \renewenvironment{itemize}{% \ifnum\@itemdepth>3 \@toodeep \else \advance\@itemdepth\@ne \edef\@itemitem{labelitem\romannumeral\the\@itemdepth}% \list{\csname\@itemitem\endcsname}% {\def\makelabel##1{\hss\llap{\upshape##1}}}% \fi }{% \endlist } \let\enditemize=\endlist % for efficiency \newcommand{\descriptionlabel}[1]{\hspace\labelsep \upshape\bfseries #1:} \newenvironment{description}{\list{}{% \advance\leftmargini6\p@ \itemindent-12\p@ \labelwidth\z@ \let\makelabel\descriptionlabel}% }{ \endlist } \let\enddescription=\endlist % for efficiency \let\upn=\textup \AtBeginDocument{% \labelsep=5pt\relax \setcounter{enumi}{13}\setcounter{enumii}{13}% \setcounter{enumiii}{13}\setcounter{enumiv}{13}% \settowidth\leftmargini{\labelenumi\hskip\labelsep}% \advance\leftmargini by \normalparindent \settowidth\leftmarginii{\labelenumii\hskip\labelsep}% \settowidth\leftmarginiii{\labelenumiii\hskip\labelsep}% \settowidth\leftmarginiv{\labelenumiv\hskip\labelsep}% \setcounter{enumi}{0}\setcounter{enumii}{0}% \setcounter{enumiii}{0}\setcounter{enumiv}{0}% \leftmarginv=10pt \leftmarginvi=\leftmarginv \leftmargin=\leftmargini \labelwidth=\leftmargini \advance\labelwidth-\labelsep \@listi} \newskip\listisep \listisep\smallskipamount \def\@listI{\leftmargin\leftmargini \parsep\z@skip \topsep\listisep \itemsep\z@skip \listparindent\normalparindent} \let\@listi\@listI \def\@listii{\leftmargin\leftmarginii \labelwidth\leftmarginii \advance\labelwidth-\labelsep \topsep\z@skip \parsep\z@skip \partopsep\z@skip \itemsep\z@skip} \def\@listiii{\leftmargin\leftmarginiii \labelwidth\leftmarginiii \advance\labelwidth-\labelsep} \def\@listiv{\leftmargin\leftmarginiv \labelwidth\leftmarginiv \advance\labelwidth-\labelsep} \def\@listv{\leftmargin\leftmarginv \labelwidth\leftmarginv \advance\labelwidth-\labelsep} \def\@listvi{\leftmargin\leftmarginvi \labelwidth\leftmarginvi \advance\labelwidth-\labelsep} \@ifclasswith{\@classname}{fleqn}{% \let\@tempa\@iden \AtBeginDocument{\mathindent\leftmargini}% }{\let\@tempa\@gobble}% \@ifpackageloaded{amsmath}{\let\@tempa\@gobble}{% \@ifpackageloaded{amstex}{\let\@tempa\@gobble}{}% } \@tempa{% \def\[{\relax \ifmmode\@badmath \else \begin{trivlist}% \@beginparpenalty\predisplaypenalty \@endparpenalty\postdisplaypenalty \item[]\leavevmode \hbox to\linewidth\bgroup$\displaystyle \hskip\mathindent\bgroup \fi}% \def\]{\relax \ifmmode \egroup \m@th$\hfil \egroup \end{trivlist}% \else \@badmath \fi}% \renewenvironment{equation}{% \@beginparpenalty\predisplaypenalty \@endparpenalty\postdisplaypenalty \refstepcounter{equation}% \@topsep\abovedisplayskip \trivlist \item[]\leavevmode \hbox to\linewidth\bgroup\hskip\mathindent$\displaystyle }{% \m@th$\hfil \displaywidth\linewidth \hbox{\@eqnnum}\egroup \endtrivlist }% \renewenvironment{eqnarray}{% \stepcounter{equation}\let\@currentlabel\theequation \global\@eqnswtrue \global\@eqcnt\z@ \tabskip\mathindent \let\\=\@eqncr \abovedisplayskip\topsep \ifvmode \advance\abovedisplayskip\partopsep \fi \belowdisplayskip\abovedisplayskip \belowdisplayshortskip\abovedisplayskip \abovedisplayshortskip\abovedisplayskip $$\everycr{}\halign to\linewidth\bgroup \hskip\@centering $\displaystyle\tabskip\z@skip####\m@th$&% \@eqnsel \global\@eqcnt\@ne \hfil${}####{}\m@th$\hfil&% \global\@eqcnt\tw@ $\displaystyle ####\m@th$\hfil\tabskip\@centering&% \global\@eqcnt\thr@@ \hbox to \z@\bgroup\hss####\egroup\tabskip\z@skip\cr }{% \@@eqncr \egroup \global\advance\c@equation\m@ne$$% \global\@ignoretrue }% \newdimen\mathindent \mathindent\leftmargini } \def\@startsection#1#2#3#4#5#6{% \if@noskipsec \leavevmode \fi \par \@tempskipa #4\relax \@afterindenttrue \ifdim \@tempskipa <\z@ \@tempskipa -\@tempskipa \@afterindentfalse\fi \if@nobreak \everypar{}\else \addpenalty\@secpenalty\addvspace\@tempskipa\fi \@ifstar{\@dblarg{\@sect{#1}{\@m}{#3}{#4}{#5}{#6}}}% {\@dblarg{\@sect{#1}{#2}{#3}{#4}{#5}{#6}}}% } \def\@seccntformat#1{% \protect\textup{\protect\@secnumfont \csname the#1\endcsname \protect\@secnumpunct }% } \let\@secnumfont\@empty \def\@sect#1#2#3#4#5#6[#7]#8{% \edef\@toclevel{\ifnum#2=\@m 0\else\number#2\fi}% \ifnum #2>\c@secnumdepth \let\@secnumber\@empty \else \@xp\let\@xp\@secnumber\csname the#1\endcsname\fi \@tempskipa #5\relax \ifnum #2>\c@secnumdepth \let\@svsec\@empty \else \refstepcounter{#1}% \edef\@secnumpunct{% \ifdim\@tempskipa>\z@ % not a run-in section heading \@ifnotempty{#8}{.\@nx\enspace}% \else \@ifempty{#8}{.}{.\@nx\enspace}% \fi }% \protected@edef\@svsec{% \ifnum#2<\@m \@ifundefined{#1name}{}{% \ignorespaces\csname #1name\endcsname\space }% \fi \@seccntformat{#1}% }% \fi \ifdim \@tempskipa>\z@ % then this is not a run-in section heading \begingroup #6\relax \@hangfrom{\hskip #3\relax\@svsec}{\interlinepenalty\@M #8\par}% \endgroup \csname #1mark\endcsname{#7}% \ifnum#2>\@m \else \@tocwrite{#1}{#8}\fi \else \def\@svsechd{#6\hskip #3\@svsec \@ifnotempty{#8}{\ignorespaces#8\unskip \@addpunct.}% \ifnum#2>\@m \else \@tocwrite{#1}{#8}\fi }% \fi \global\@nobreaktrue \@xsect{#5}} \let\@ssect\relax \newcounter{part} \newcounter{chapter} \newcounter{section}[chapter] \def\thesection{\arabic{section}} \newcounter{subsection}[section] \newcounter{subsubsection}[subsection] \newcounter{paragraph}[subsubsection] \newcounter{subparagraph}[paragraph] \renewcommand\thepart {\arabic{part}} \renewcommand\thechapter {\arabic{chapter}} \renewcommand\thesection {\arabic{section}} \renewcommand\thesubsection {\thesection.\arabic{subsection}} \renewcommand\thesubsubsection {\thesubsection .\arabic{subsubsection}} \renewcommand\theparagraph {\thesubsubsection.\arabic{paragraph}} \renewcommand\thesubparagraph {\theparagraph.\arabic{subparagraph}} \setcounter{secnumdepth}{3} \def\partname{Part} \def\specialsection{\@startsection{section}{1}% \z@{2\linespacing\@plus\linespacing}{.5\linespacing}% {\large\scshape\centering}} \def\part{\cleardoublepage \thispagestyle{empty}% \null\vfil \markboth{}{}\secdef\@part\@spart} \def\@part[#1]#2{% \ifnum \c@secnumdepth >-2\relax \refstepcounter{part}% \addcontentsline{toc}{part}{\partname\ \thepart. \protect\enspace\protect\noindent#1}% \else \addcontentsline{toc}{part}{#1}\fi \begingroup\centering \ifnum \c@secnumdepth >-2\relax {\fontsize{\@xviipt}{22}\bfseries \partname\ \thepart} \vskip 20\p@ \fi \fontsize{\@xxpt}{25}\bfseries #1\vfil\vfil\endgroup \newpage\thispagestyle{empty}} \def\@spart#1{\addcontentsline{toc}{part}{\protect\noindent#1}% \begingroup\centering \fontsize{\@xxpt}{25}\bfseries #1\vfil\vfil\endgroup \newpage\thispagestyle{empty}} \def\partrunhead#1#2#3{% \@ifnotempty{#2}{\uppercase{\ignorespaces#1 #2\unskip}\@ifnotempty{#3}{. }}% \def\@tempa{#3}% \ifx\@empty\@tempa\else \begingroup \def\\{ \ignorespaces}% defend against questionable usage \uppercasenonmath\@tempa\@tempa \endgroup \fi } \let\chapterrunhead\partrunhead \let\sectionrunhead\partrunhead \def\section{\@startsection{section}{1}% \z@{.7\linespacing\@plus\linespacing}{.5\linespacing}% {\normalfont\bfseries\centering}} \def\subsection{\@startsection{subsection}{2}% \normalparindent{.5\linespacing\@plus.7\linespacing}{-.5em}% {\normalfont\bfseries}} \def\subsubsection{\@startsection{subsubsection}{3}% \normalparindent\z@{-.5em}% {\normalfont\itshape}} \def\paragraph{\@startsection{paragraph}{4}% \normalparindent\z@{-\fontdimen2\font}% \normalfont} \def\subparagraph{\@startsection{subparagraph}{5}% \z@\z@{-\fontdimen2\font}% \normalfont} \def\@Roman#1{\@xp\@slowromancap \romannumeral#1@}% \def\@slowromancap#1{\ifx @#1% then terminate \else \if i#1I\else\if v#1V\else\if x#1X\else\if l#1L\else\if c#1C\else\if m#1M\else#1\fi\fi\fi\fi\fi\fi \@xp\@slowromancap \fi } \def\frontmatter{\cleardoublepage\pagenumbering{roman}} \def\mainmatter{\cleardoublepage\pagenumbering{arabic}} \def\backmatter{% \if@openright\cleardoublepage\else\clearpage\fi \let\chaptername\relax} \def\aufm#1{\par\vspace*{12pt}{\flushright #1\par}} \newenvironment{xcb}{% \setcounter{enumi}{0}% \settowidth{\leftmargini}{\labelenumi\hskip\labelsep}% \setcounter{enumii}{4}% letter d \settowidth{\leftmarginii}{\labelenumii\hskip\labelsep}% \@startsection{section}% counter name; ignored because of the % * below {1}% sectioning level {\z@}% indent to the left of the section title {18\p@\@plus2\p@}% vertical space above {1sp}% Space below of 13pt base-to-base, so none needs to be added % here; but \z@ would cause the following text to be run-in, so we % use 1sp instead. {\bfseries}% The font of the subsection title *% always unnumbered }{% \par } \def\chapter{% \if@openright\cleardoublepage\else\clearpage\fi \thispagestyle{plain}\global\@topnum\z@ \@afterindenttrue \secdef\@chapter\@schapter} \def\@chapter[#1]#2{\refstepcounter{chapter}% \ifnum\c@secnumdepth<\z@ \let\@secnumber\@empty \else \let\@secnumber\thechapter \fi \typeout{\chaptername\space\@secnumber}% \def\@toclevel{0}% \ifx\chaptername\appendixname \@tocwriteb\tocappendix{chapter}{#2}% \else \@tocwriteb\tocchapter{chapter}{#2}\fi \chaptermark{#1}% \addtocontents{lof}{\protect\addvspace{10\p@}}% \addtocontents{lot}{\protect\addvspace{10\p@}}% \@makechapterhead{#2}\@afterheading} \def\@schapter#1{\typeout{#1}% \let\@secnumber\@empty \def\@toclevel{0}% \ifx\chaptername\appendixname \@tocwriteb\tocappendix{chapter}{#1}% \else \@tocwriteb\tocchapter{chapter}{#1}\fi \chaptermark{#1}% \addtocontents{lof}{\protect\addvspace{10\p@}}% \addtocontents{lot}{\protect\addvspace{10\p@}}% \@makeschapterhead{#1}\@afterheading} \newcommand\chaptername{Chapter} \newcommand\appendixname{Appendix} \def\@makechapterhead#1{\global\topskip 7.5pc\relax \begingroup \fontsize{\@xivpt}{18}\bfseries\centering \ifnum\c@secnumdepth>\m@ne \leavevmode \hskip-\leftskip \rlap{\vbox to\z@{\vss \centerline{\normalsize\mdseries \uppercase\@xp{\chaptername}\enspace\thechapter} \vskip 3pc}}\hskip\leftskip\fi #1\par \endgroup \skip@34\p@ \advance\skip@-\normalbaselineskip \vskip\skip@ } \def\@makeschapterhead#1{\global\topskip 7.5pc\relax \begingroup \fontsize{\@xivpt}{18}\bfseries\centering #1\par \endgroup \skip@34\p@ \advance\skip@-\normalbaselineskip \vskip\skip@ } \def\appendix{\par \c@chapter\z@ \c@section\z@ \let\chaptername\appendixname \def\thechapter{\@Alph\c@chapter}} \newcommand{\@pnumwidth}{1.6em} \newcommand{\@tocrmarg}{2.6em} \setcounter{tocdepth}{1} \newswitch{toc} \newswitch{lof} \newswitch{lot} \def\@starttoc#1#2{% \begingroup \setTrue{#1}% \let\secdef\@gobbletwo \chapter \let\@secnumber\@empty % for \@tocwrite and \chaptermark \ifx\contentsname#2% \else \@tocwrite{chapter}{#2}\fi \typeout{#2}\@xp\chaptermark\@xp{#2}% \@makeschapterhead{#2}\@afterheading \parskip\z@skip \makeatletter \@input{\jobname.#1}% \if@filesw \@xp\newwrite\csname tf@#1\endcsname \immediate\@xp\openout\csname tf@#1\endcsname \jobname.#1\relax \fi \global\@nobreakfalse \endgroup \newpage } \def\contentsname{Contents} \def\listfigurename{List of Figures} \def\listtablename{List of Tables} \def\tableofcontents{% \@starttoc{toc}\contentsname } \def\listoffigures{\@starttoc{lof}\listfigurename} \def\listoftables{\@starttoc{lot}\listtablename} \AtBeginDocument{% \@for\@tempa:=-1,0,1,2,3\do{% \@ifundefined{r@tocindent\@tempa}{% \@xp\gdef\csname r@tocindent\@tempa\endcsname{0pt}}{}% }% } \def\@writetocindents{% \begingroup \@for\@tempa:=-1,0,1,2,3\do{% \immediate\write\@auxout{% \string\newlabel{tocindent\@tempa}{% \csname r@tocindent\@tempa\endcsname}}% }% \endgroup} \AtEndDocument{\@writetocindents} \let\indentlabel\@empty \def\@tochangmeasure#1{\sbox\z@{#1}% \ifdim\wd\z@>\csname r@tocindent\@toclevel\endcsname\relax \@xp\xdef\csname r@tocindent\@toclevel\endcsname{\the\wd\z@}% \fi } \def\@toclevel{0} \def\@tocline#1#2#3#4#5#6#7{\relax \ifnum #1>\c@tocdepth % then omit \else \par \addpenalty\@secpenalty\addvspace{#2}% \begingroup \hyphenpenalty\@M \@ifempty{#4}{% \@tempdima\csname r@tocindent\number#1\endcsname\relax }{% \@tempdima#4\relax }% \parindent\z@ \leftskip#3\relax \advance\leftskip\@tempdima\relax \rightskip\@pnumwidth plus4em \parfillskip-\@pnumwidth #5\leavevmode\hskip-\@tempdima #6\nobreak\relax \hfil\hbox to\@pnumwidth{\@tocpagenum{#7}}\par \nobreak \endgroup \fi} \def\@tocpagenum#1{\hss{\mdseries #1}} \def\@tocwrite#1{\@xp\@tocwriteb\csname toc#1\endcsname{#1}} \def\@tocwriteb#1#2#3{% \begingroup \def\@tocline##1##2##3##4##5##6{% \ifnum##1>\c@tocdepth \else \sbox\z@{##5\let\indentlabel\@tochangmeasure##6}\fi}% \csname l@#2\endcsname{#1{\csname#2name\endcsname}{\@secnumber}{}}% \endgroup \addcontentsline{toc}{#2}% {\protect#1{\csname#2name\endcsname}{\@secnumber}{#3}}} \def\l@section{\@tocline{1}{0pt}{1pc}{}{}} \newcommand{\tocsection}[3]{% \indentlabel{\@ifnotempty{#2}{\ignorespaces#1 #2.\quad}}#3} \def\l@subsection{\@tocline{2}{0pt}{1pc}{5pc}{}} \let\tocsubsection\tocsection \def\l@subsubsection{\@tocline{3}{0pt}{1pc}{7pc}{}} \let\tocsubsubsection\tocsection \let\l@paragraph\l@subsubsection \let\tocparagraph\tocsection \let\l@subparagraph\l@subsubsection \let\tocsubparagraph\tocsection \def\l@part{\@tocline{-1}{12pt plus2pt}{0pt}{}{\bfseries}} \let\tocpart\tocsection \def\l@chapter{\@tocline{0}{8pt plus1pt}{0pt}{}{}} \let\tocchapter\tocsection \newcommand{\tocappendix}[3]{% \indentlabel{#1\@ifnotempty{#2}{ #2}.\quad}#3} \def\l@figure{\@tocline{0}{3pt plus2pt}{0pt}{1.5pc}{}} \let\l@table=\l@figure \def\refname{References} \def\bibname{Bibliography} \def\@defaultbiblabelstyle#1{#1.} \def\bibliographystyle#1{% \if@filesw\immediate\write\@auxout{\string\bibstyle{#1}}\fi \def\@tempa{#1}% \def\@tempb{amsplain}% \def\@tempc{}% \ifx\@tempa\@tempb \def\@biblabel##1{\@defaultbiblabelstyle{##1}}% \def\bibsetup{}% \else \def\bibsetup{\labelsep6\p@}% \ifx\@tempa\@tempc \def\@biblabel##1{}% \def\bibsetup{\labelwidth\z@ \leftmargin24\p@ \itemindent-\leftmargin \labelsep\z@ }% \fi \fi} \newcommand{\bibliofont}{\footnotesize} \newcommand{\@bibtitlestyle}{% \@xp\chapter\@xp*\@xp{\bibname}% } \newenvironment{thebibliography}[1]{% \@bibtitlestyle \normalfont\bibliofont\labelsep .5em\relax \renewcommand\theenumiv{\arabic{enumiv}}\let\p@enumiv\@empty \list{\@biblabel{\theenumiv}}{\settowidth\labelwidth{\@biblabel{#1}}% \leftmargin\labelwidth \advance\leftmargin\labelsep \usecounter{enumiv}}% \sloppy \clubpenalty\@M \widowpenalty\clubpenalty \sfcode`\.=\@m }{% \def\@noitemerr{\@latex@warning{Empty `thebibliography' environment}}% \endlist } \def\bysame{\leavevmode\hbox to3em{\hrulefill}\thinspace} \def\newblock{} \newcommand\MR[1]{\relax\ifhmode\unskip\spacefactor3000 \space\fi MR~\MRhref{#1}{#1}} \let\MRhref\@gobble \newcommand\URL{\begingroup \def\@sverb##1{% \def\@tempa####1##1{\@URL{####1}\egroup\endgroup}% \@tempa}% \verb} \let\URLhref\@gobble \def\@URL#1{\URLhref{#1}#1} \newif\if@restonecol \def\indexchap#1{\global\topskip 7.5pc\relax \twocolumn[{\fontsize{\@xivpt}{18}\bfseries\centering \vskip\topskip\hbox{}\vskip-\baselineskip% adjust top space #1\par \global\topskip 34\p@\relax \ifx\@empty\indexintro \else \begingroup \normalsize \skip@\topskip \advance\skip@ -\baselineskip \vskip\skip@ \parbox[t]{24pc}{\normalfont\indexintro\par}% \endgroup \global\topskip 24\p@\relax \fi }]% } \newcommand{\indexintro}{} \newcommand{\@indextitlestyle}{% \let\@makeschapterhead\indexchap \@xp\chapter\@xp*\@xp{\indexname}% } \def\theindex{\@restonecoltrue\if@twocolumnamsproc.cls59 KBVendored from mirrors.ctan.org on 2026-05-26.
%% %% This is file `amsproc.cls', %% generated with the docstrip utility. %% %% The original source files were: %% %% amsclass.dtx (with options: `amsproc,classes') %% This is a generated file. %% %% Copyright 1995, 1999, 2004, 2009-2020 American Mathematical Society. %% %% American Mathematical Society %% Technical Support %% Publications Technical Group %% 201 Charles Street %% Providence, RI 02904 %% USA %% tel: (401) 455-4080 %% (800) 321-4267 (USA and Canada only) %% fax: (401) 331-3842 %% email: tech-support@ams.org %% %% This work may be distributed and/or modified under the %% conditions of the LaTeX Project Public License, either version 1.3c %% 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.3c or later is part of all distributions of LaTeX %% version 2005/12/01 or later. %% %% This work has the LPPL maintenance status `maintained'. %% %% The Current Maintainer of this work is the American Mathematical %% Society. %% %% ======================================================================== %% \NeedsTeXFormat{LaTeX2e}% LaTeX 2.09 can't be used (nor non-LaTeX) [1995/06/01]% LaTeX date must be June 1995 or later \ProvidesClass{amsproc}[2020/05/29 v2.20.6] \global\expandafter\let\csname ver@amsthm.sty\expandafter\endcsname \csname ver@\@currname.\@currext\endcsname \let\@xp=\expandafter \let\@nx=\noexpand \def\@oparg#1[#2]{\@ifnextchar[{#1}{#1[#2]}} \long\def\@ifempty#1{\@xifempty#1@@..\@nil} \long\def\@xifempty#1#2@#3#4#5\@nil{% \ifx#3#4\@xp\@firstoftwo\else\@xp\@secondoftwo\fi} \long\def\@ifnotempty#1{\@ifempty{#1}{}} \def\setboxz@h{\setbox\z@\hbox} \def\@addpunct#1{% \relax\ifhmode \ifnum\spacefactor>\@m \else#1\fi \fi} \def\nopunct{\spacefactor 1007 } \def\frenchspacing{\sfcode`\.1006\sfcode`\?1005\sfcode`\!1004% \sfcode`\:1003\sfcode`\;1002\sfcode`\,1001 } \def\@tempa#1#2\@nil{\edef\@classname{#1}} \expandafter\@tempa\@currnamestack{}{}{}\@nil \ifx\@classname\@empty \edef\@classname{\@currname}\fi \def\@True{00} \def\@False{01} \newcommand\newswitch[2][False]{% \expandafter\@ifdefinable\csname ?@#2\endcsname{% \global\expandafter\let\csname ?@#2\expandafter\endcsname \csname @#1\endcsname }% } \newcommand{\setFalse}[1]{% \expandafter\let\csname ?@#1\endcsname\@False } \newcommand{\setTrue}[1]{% \expandafter\let\csname ?@#1\endcsname\@True } \newswitch{} \DeclareRobustCommand{\except}[1]{% \if\csname ?@#1\endcsname \expandafter\@gobble \else \expandafter\@firstofone \fi } \DeclareRobustCommand{\for}[1]{% \if\csname ?@#1\endcsname \expandafter\@firstofone \else \expandafter\@gobble \fi } \DeclareRobustCommand{\forany}[1]{% \csname for@any@01\endcsname#1,?,\@nil } \@namedef{for@any@\@False}#1,{% \csname for@any@% \csname ?@\zap@space#1 \@empty\endcsname \endcsname } \@namedef{?@?}{x} \@namedef{for@any@\@True}#1\@nil#2{#2} \def\for@any@x{\@car\@gobble} \DeclareOption{a4paper}{\paperheight 297mm\paperwidth 210mm \textheight 54.5pc } \DeclareOption{letterpaper}{\paperheight 11in\paperwidth 8.5in } \DeclareOption{landscape}{\@tempdima\paperheight \paperheight\paperwidth \paperwidth\@tempdima} \DeclareOption{portrait}{} \DeclareOption{oneside}{\@twosidefalse \@mparswitchfalse} \DeclareOption{twoside}{\@twosidetrue \@mparswitchtrue} \DeclareOption{draft}{\overfullrule5\p@ \ClassWarningNoLine{\@classname}{% When the draft option is used, the \protect\includegraphics\MessageBreak command will print blank placeholder boxes\MessageBreak for the graphics}% } \DeclareOption{final}{\overfullrule\z@ } \def\dateposted#1{\def\@dateposted{#1}}% \let\@dateposted\@empty \def\@logofont{\fontsize{6}{7\p@}\selectfont} \long\def\set@logo#1{% \vbox to\headheight{% \@parboxrestore \@logofont \noindent#1\par\vss }% } \def\procart@logo{% \set@logo{\publname \ifx\@empty\volinfo \else\newline\volinfo\fi}% } \newif\if@titlepage \DeclareOption{titlepage}{\@titlepagetrue} \DeclareOption{notitlepage}{\@titlepagefalse} \DeclareOption{onecolumn}{\@twocolumnfalse} \DeclareOption{twocolumn}{\@twocolumntrue} \DeclareOption{nomath}{} \DeclareOption{noamsfonts}{} \DeclareOption{psamsfonts}{% \PassOptionsToPackage{psamsfonts}{amsfonts}% \PassOptionsToPackage{cmex10}{amsmath}} \newif\iftagsleft@ \DeclareOption{leqno}{% \tagsleft@true \PassOptionsToPackage{leqno}{amsmath}} \DeclareOption{reqno}{% \tagsleft@false \PassOptionsToPackage{reqno}{amsmath}} \newif\ifctagsplit@ \DeclareOption{centertags}{% \ctagsplit@true \PassOptionsToPackage{centertags}{amsmath}} \DeclareOption{tbtags}{% \ctagsplit@false \PassOptionsToPackage{tbtags}{amsmath}} \DeclareOption{fleqn}{}% \newcommand{\@mainsize}{10} \newcommand{\@ptsize}{0} \newcommand{\larger}[1][1]{% \count@\@currsizeindex \advance\count@#1\relax \ifnum\count@<\z@ \count@\z@ \else\ifnum\count@>12 \count@12 \fi\fi \ifcase\count@ \Tiny\or\Tiny\or\tiny\or\SMALL\or\Small\or\small \or\normalsize \or\large\or\Large\or\LARGE\or\huge\or\Huge\else\Huge \fi } \newcommand{\smaller}[1][1]{\larger[-#1]} \def\@adjustvertspacing{% \bigskipamount.7\baselineskip plus.7\baselineskip \medskipamount\bigskipamount \divide\medskipamount\tw@ \smallskipamount\medskipamount \divide\smallskipamount\tw@ \abovedisplayskip\medskipamount \belowdisplayskip \abovedisplayskip \abovedisplayshortskip\abovedisplayskip \advance\abovedisplayshortskip-1\abovedisplayskip \belowdisplayshortskip\abovedisplayshortskip \advance\belowdisplayshortskip 1\smallskipamount \jot\baselineskip \divide\jot 4 \relax } \renewcommand\normalsize{\@xsetfontsize\normalsize 6% \@adjustvertspacing \let\@listi\@listI} \DeclareRobustCommand{\Tiny}{\@xsetfontsize\Tiny 1} \DeclareRobustCommand{\tiny}{\@xsetfontsize\tiny 2} \DeclareRobustCommand{\SMALL}{\@xsetfontsize\SMALL 3} \DeclareRobustCommand{\Small}{\@xsetfontsize\Small 4% \@adjustvertspacing \def\@listi{\topsep\smallskipamount \parsep\z@skip \itemsep\z@skip \leftmargin=\leftmargini \labelwidth=\leftmargini \advance\labelwidth-\labelsep }% } \DeclareRobustCommand{\small}{\@xsetfontsize\small 5\@adjustvertspacing} \def\footnotesize{\Small} \def\scriptsize{\SMALL} \DeclareRobustCommand{\large}{\@xsetfontsize\large 7\@adjustvertspacing} \DeclareRobustCommand{\Large}{\@xsetfontsize\Large 8\@adjustvertspacing} \DeclareRobustCommand{\LARGE}{\@xsetfontsize\LARGE 9} \DeclareRobustCommand{\huge}{\@xsetfontsize\huge{10}} \DeclareRobustCommand{\Huge}{\@xsetfontsize\Huge{11}} \def\@xsetfontsize#1#2{% \chardef\@currsizeindex#2\relax \edef\@tempa{\@nx\@setfontsize\@nx#1% \@xp\ifcase\@xp\@currsizeindex\@typesizes \else{99}{99}\fi}% \@tempa } \chardef\@currsizeindex=6 \widowpenalty=10000 \clubpenalty=10000 \brokenpenalty=10000 \newdimen\linespacing \lineskip=1pt \lineskiplimit=1pt \normallineskip=1pt \normallineskiplimit=1pt \let\baselinestretch=\@empty \headheight=8pt \headsep=14pt \footskip=12pt \textheight=50.5pc \topskip=10pt \textwidth=30pc \columnsep=10pt \columnseprule=0pt \marginparwidth=90pt \marginparsep=11pt \marginparpush=5pt \AtBeginDocument{\settoheight{\footnotesep}{\footnotesize M$^1$}} \skip\footins=7pt plus11pt \skip\@mpfootins=\skip\footins \fboxsep=3pt \fboxrule=.4pt \arrayrulewidth=.4pt \doublerulesep=2pt \labelsep=5pt \arraycolsep=\labelsep \tabcolsep=\labelsep \tabbingsep=\labelsep \floatsep=15pt plus 12pt \dblfloatsep=15pt plus 12pt \textfloatsep=\floatsep \dbltextfloatsep=15pt plus 12pt \intextsep=\floatsep \@fptop=0pt plus1fil \@dblfptop=0pt plus1fil \@fpbot=0pt plus1fil \@dblfpbot=0pt plus1fil \@fpsep=8pt plus2fil \@dblfpsep=8pt plus2fil\relax \parskip=0pt \relax \newdimen\normalparindent \normalparindent=18pt \parindent=\normalparindent \partopsep=0pt \relax \parsep=0pt \relax \itemsep=0pt \relax \@lowpenalty=51 \@medpenalty=151 \@highpenalty=301 \@beginparpenalty=-\@lowpenalty \@endparpenalty=-\@lowpenalty \@itempenalty=-\@lowpenalty \DeclareOption{10pt}{\def\@mainsize{10}\def\@ptsize{0}% \def\@typesizes{% \or{5}{6}\or{6}{7}\or{7}{8}\or{8}{10}\or{9}{11}% \or{10}{12}% normalsize \or{\@xipt}{13}\or{\@xiipt}{14}\or{\@xivpt}{17}% \or{\@xviipt}{20}\or{\@xxpt}{24}}% \normalsize \linespacing=\baselineskip } \DeclareOption{11pt}{\def\@mainsize{11}\def\@ptsize{1}% \def\@typesizes{% \or{6}{7}\or{7}{8}\or{8}{10}\or{9}{11}\or{10}{12}% \or{\@xipt}{13}% normalsize \or{\@xiipt}{14}\or{\@xivpt}{17}\or{\@xviipt}{20}% \or{\@xxpt}{24}\or{\@xxvpt}{30}}% \normalsize \linespacing=\baselineskip } \DeclareOption{12pt}{\def\@mainsize{12}\def\@ptsize{2}% \def\@typesizes{% \or{7}{8}\or{8}{10}\or{9}{11}\or{10}{12}\or{\@xipt}{13}% \or{\@xiipt}{14}% normalsize \or{\@xivpt}{17}\or{\@xviipt}{20}\or{\@xxpt}{24}% \or{\@xxvpt}{30}\or{\@xxvpt}{30}}% \normalsize \linespacing=\baselineskip } \DeclareOption{8pt}{\def\@mainsize{8}\def\@ptsize{8}% \def\@typesizes{% \or{5}{6}\or{5}{6}\or{5}{6}\or{6}{7}\or{7}{8}% \or{8}{10}% normalsize \or{9}{11}\or{10}{12}\or{\@xipt}{13}% \or{\@xiipt}{14}\or{\@xivpt}{17}}% \normalsize \linespacing=\baselineskip } \DeclareOption{9pt}{\def\@mainsize{9}\def\@ptsize{9}% \def\@typesizes{% \or{5}{6}\or{5}{6}\or{6}{7}\or{7}{8}\or{8}{10}% \or{9}{11}% normalsize \or{10}{12}\or{\@xipt}{13}\or{\@xiipt}{14}% \or{\@xivpt}{17}\or{\@xviipt}{20}}% \normalsize \linespacing=\baselineskip } \def\ps@empty{\let\@mkboth\@gobbletwo \let\@oddhead\@empty \let\@evenhead\@empty \let\@oddfoot\@empty \let\@evenfoot\@empty \global\topskip\normaltopskip} \def\ps@plain{\ps@empty \def\@oddfoot{\normalfont\scriptsize \hfil\thepage\hfil}% \let\@evenfoot\@oddfoot} \newswitch{runhead} \def\ps@headings{\ps@empty \def\@evenhead{% \setTrue{runhead}% \normalfont\scriptsize \rlap{\thepage}\hfil \def\thanks{\protect\thanks@warning}% \leftmark{}{}\hfil}% \def\@oddhead{% \setTrue{runhead}% \normalfont\scriptsize \hfil \def\thanks{\protect\thanks@warning}% \rightmark{}{}\hfil \llap{\thepage}}% \let\@mkboth\markboth } \let\sectionname\@empty \let\subsectionname\@empty \let\subsubsectionname\@empty \let\paragraphname\@empty \let\subparagraphname\@empty \def\leftmark{\expandafter\@firstoftwo\topmark{}{}} \def\rightmark{\expandafter\@secondoftwo\botmark{}{}} \def\ps@firstpage{\ps@plain \def\@oddfoot{\normalfont\scriptsize \hfil\thepage\hfil \global\topskip\normaltopskip}% \let\@evenfoot\@oddfoot \def\@oddhead{\@serieslogo\hss}% \let\@evenhead\@oddhead % in case an article starts on a left-hand page } \long\def\@nilgobble#1\@nil{} \def\markboth#1#2{% \begingroup \@temptokena{{#1}{#2}}\xdef\@themark{\the\@temptokena}% \mark{\the\@temptokena}% \endgroup \if@nobreak\ifvmode\nobreak\fi\fi} \def\ps@myheadings{\ps@headings \let\@mkboth\@gobbletwo} \newskip\normaltopskip \normaltopskip=10pt \relax \let\sectionmark\@gobble \let\subsectionmark\@gobble \let\subsubsectionmark\@gobble \let\paragraphmark\@gobble \DeclareOption{makeidx}{} \ExecuteOptions{leqno,centertags,letterpaper,portrait,% 10pt,twoside,onecolumn,final} \ProcessOptions\relax \if@compatibility \def\@tempa{\RequirePackage{amstex}\relax}% \else \@ifclasswith{\@classname}{nomath}{% \let\@tempa\relax }{% \def\@tempa{\RequirePackage{amsmath}\relax}% }% \fi \@tempa % load amstex.sty or amsmath.sty \@ifundefined{numberwithin}{% \newcommand{\numberwithin}[3][\arabic]{% \@ifundefined{c@#2}{\@nocounterr{#2}}{% \@ifundefined{c@#3}{\@nocnterr{#3}}{% \@addtoreset{#2}{#3}% \@xp\xdef\csname the#2\endcsname{% \@xp\@nx\csname the#3\endcsname .\@nx#1{#2}}}}% } \csname newtoks\endcsname\@emptytoks }{} \if@compatibility \else \@ifclasswith{\@classname}{noamsfonts}{% % amsfonts package is not wanted }{% % amsfonts package IS wanted; test whether a recent enough version % seems to be installed \begingroup \fontencoding{U}\fontfamily{msa}\try@load@fontshape\endgroup \global\@xp\let\csname U+msa\endcsname\relax % reset \@ifundefined{U/msa/m/n}{% \ClassError{\@classname}{% Package `amsfonts' not installed, or version too old?\MessageBreak Unable to get font info for the `msam' fonts in the expected form% }{% The amsfonts package will not be loaded, to avoid probable\MessageBreak incompatibility problems. You can (a) use the `noamsfonts' documentclass\MessageBreak option next time, or (b) check that the amsfonts package is installed\MessageBreak correctly, and is not too old to be compatible.% }% }{% \RequirePackage{amsfonts}[1995/01/01]\relax }% } \fi % end yesamsfonts branch \let\cleardouble@page\cleardoublepage \AtBeginDocument{% \ifx\cleardouble@page\cleardoublepage \def\cleardoublepage{\clearpage{\pagestyle{empty}\cleardouble@page}} \fi } \newcommand{\uppercasenonmath}[1]{\toks@\@emptytoks \@xp\@skipmath\@xp\@empty#1$$% \edef#1{{\@nx\protect\@nx\@upprep\the\toks@}}% } \newcommand{\@upprep}{% \spaceskip1.3\fontdimen2\font plus1.3\fontdimen3\font \upchars@} \newcommand{\upchars@}{% \def\ss{SS}\def\i{I}\def\j{J}\def\ae{\AE}\def\oe{\OE}% \def\o{\O}\def\aa{\AA}\def\l{\L}\def\Mc{M{\scshape c}}} \providecommand{\Mc}{Mc} \newcommand{\@skipmath}{} \long\def\@skipmath#1$#2${% \@xskipmath#1\(\)% \@ifnotempty{#2}{\toks@\@xp{\the\toks@$#2$}\@skipmath\@empty}}% \newcommand{\@xskipmath}{} \long\def\@xskipmath#1\(#2\){% \uppercase{\toks@\@xp\@xp\@xp{\@xp\the\@xp\toks@#1}}% \@ifnotempty{#2}{\toks@\@xp{\the\toks@\(#2\)}\@xskipmath\@empty}}% \def\altucnm#1{% \MakeTextUppercase{\toks@{#1}}% \edef#1{\the\toks@}% } \AtBeginDocument{% \@ifundefined{MakeTextUppercase}{}{\let\uppercasenonmath\altucnm}% } \@ifundefined{MakeUppercase}{\let\MakeUppercase\uppercase}{}% \newcommand{\today}{% \relax\ifcase\month\or January\or February\or March\or April\or May\or June\or July\or August\or September\or October\or November\or December\fi \space\number\day, \number\year} \DeclareOldFontCommand{\rm}{\normalfont\rmfamily}{\mathrm} \DeclareOldFontCommand{\sf}{\normalfont\sffamily}{\mathsf} \DeclareOldFontCommand{\tt}{\normalfont\ttfamily}{\mathtt} \DeclareOldFontCommand{\bf}{\normalfont\bfseries}{\mathbf} \DeclareOldFontCommand{\it}{\normalfont\itshape}{\mathit} \DeclareOldFontCommand{\sl}{\normalfont\slshape}{\@nomath\sl} \DeclareOldFontCommand{\sc}{\normalfont\scshape}{\@nomath\sc} %%\if@compatibility %%\else %% \def\@obsolete@fontswitch#1#2#3{% %% \@latex@warning@no@line{% %% Command {\string#1...}\on@line\space is obsolete;\MessageBreak %% the LaTeX2e equivalent is \string#3{...}}% %% \gdef#1{\@fontswitch\relax#3}% %% } %% \DeclareRobustCommand*\cal{% %% \@xp\@obsolete@fontswitch\csname cal \endcsname\relax\mathcal} %% \DeclareRobustCommand*\mit{% %% \@xp\@obsolete@fontswitch\csname mit \endcsname\relax\mathnormal} %%\fi \renewcommand*{\title}[2][]{\gdef\shorttitle{#1}\gdef\@title{#2}} \edef\title{\@nx\@dblarg \@xp\@nx\csname\string\title\endcsname} \renewcommand{\author}[2][]{% \ifx\@empty\authors \gdef\authors{#2}% \else \g@addto@macro\authors{\and#2}% \g@addto@macro\addresses{\author{}}% \fi \@ifnotempty{#1}{% \ifx\@empty\shortauthors \gdef\shortauthors{#1}% \else \g@addto@macro\shortauthors{\and#1}% \fi }% } \edef\author{\@nx\@dblarg \@xp\@nx\csname\string\author\endcsname} \let\shortauthors\@empty \let\authors\@empty \newif\ifresetcontrib \resetcontribfalse \newcommand\contrib[2][]{% \def\@tempa{#1}% \ifx\@empty\@tempa \else \ifresetcontrib \@xcontribs \else \global\resetcontribtrue \fi \fi \ifx\@empty\contribs \gdef\contribs{#1 #2}% \else \g@addto@macro\contribs{\and#1 #2}% \fi \@wraptoccontribs{#1}{#2}% } \def\wraptoccontribs#1#2{} \def\@xcontribs{% \author@andify\contribs \ifx\@empty\xcontribs \xdef\xcontribs{\contribs}% \else \xdef\xcontribs{\xcontribs, \contribs}% \fi \let\contribs\@empty } \let\contribs\@empty \let\xcontribs\@empty \let\toccontribs\@empty \let\addresses\@empty \let\thankses\@empty \newcommand{\address}[2][]{\g@addto@macro\addresses{\address{#1}{#2}}} \newcommand{\curraddr}[2][]{\g@addto@macro\addresses{\curraddr{#1}{#2}}} \newcommand{\email}[2][]{\g@addto@macro\addresses{\email{#1}{#2}}} \newcommand{\urladdr}[2][]{\g@addto@macro\addresses{\urladdr{#1}{#2}}} \long\def\thanks@warning#1{% \ClassError{\@classname}{% \protect\thanks\space should be given separately, not inside author name.% }\@ehb } \renewcommand{\thanks}[1]{% \@ifnotempty{#1}{\g@addto@macro\thankses{\thanks{#1}}}% } \def\enddoc@text{\ifx\@empty\@translators \else\@settranslators\fi \ifx\@empty\addresses \else\@setaddresses\fi} \AtEndDocument{\enddoc@text} \def\curraddrname{{\itshape Current address}} \def\emailaddrname{{\itshape Email address}} \def\urladdrname{{\itshape URL}} \def\@setaddresses{\par \nobreak \begingroup \footnotesize \def\author##1{\nobreak\addvspace\bigskipamount}% \def\\{\unskip, \ignorespaces}% \interlinepenalty\@M \def\address##1##2{\begingroup \par\addvspace\bigskipamount\indent \@ifnotempty{##1}{(\ignorespaces##1\unskip) }% {\scshape\ignorespaces##2}\par\endgroup}% \def\curraddr##1##2{\begingroup \@ifnotempty{##2}{\nobreak\indent\curraddrname \@ifnotempty{##1}{, \ignorespaces##1\unskip}\/:\space ##2\par}\endgroup}% \def\email##1##2{\begingroup \@ifnotempty{##2}{\nobreak\indent\emailaddrname \@ifnotempty{##1}{, \ignorespaces##1\unskip}\/:\space \ttfamily##2\par}\endgroup}% \def\urladdr##1##2{\begingroup \def~{\char`\~}% \@ifnotempty{##2}{\nobreak\indent\urladdrname \@ifnotempty{##1}{, \ignorespaces##1\unskip}\/:\space \ttfamily##2\par}\endgroup}% \addresses \endgroup } \let\@date\@empty \def\dedicatory#1{\def\@dedicatory{#1}} \let\@dedicatory=\@empty \def\keywords#1{\def\@keywords{#1}} \let\@keywords=\@empty \newcommand*\subjclass[2][2020]{% \def\@subjclass{#2}% \@ifundefined{subjclassname@#1}{% \ClassWarning{\@classname}{Unknown edition (#1) of Mathematics Subject Classification; using '2020'.}% }{% \@xp\let\@xp\subjclassname\csname subjclassname@#1\endcsname }% } \let\@subjclass=\@empty \def\translname{Translated by} \def\translator#1{% \ifx\@empty\@translators \def\@translators{#1}% \else\g@addto@macro\@translators{\and#1}\fi} \let\@translators=\@empty \def\@settranslators{\par\begingroup \addvspace{6\p@\@plus9\p@}% \hbox to\columnwidth{\hss\normalfont\normalsize \translname{ }% \andify\@translators \uppercasenonmath\@translators \@translators} \endgroup } \newcommand{\xandlist}[4]{\@andlista{{#1}{#2}{#3}}#4\and\and} \def\@andlista#1#2\and#3\and{\@andlistc{#2}\@ifnotempty{#3}{% \@andlistb#1{#3}}} \def\@andlistb#1#2#3#4#5\and{% \@ifempty{#5}{% \@andlistc{#2#4}% }{% \@andlistc{#1#4}\@andlistb{#1}{#3}{#3}{#5}% }} \let\@andlistc\@iden \newcommand{\nxandlist}[4]{% \def\@andlistc##1{\toks@\@xp{\the\toks@##1}}% \toks@{\toks@\@emptytoks \@andlista{{#1}{#2}{#3}}}% \the\@xp\toks@#4\and\and \edef#4{\the\toks@}% \let\@andlistc\@iden} \def\@@and{and} \newcommand{\andify}{% \nxandlist{\unskip, }{\unskip{} \@@and~}{\unskip, \@@and~}} \def\and{\unskip{ }\@@and{ }\ignorespaces} \def\maketitle{\par \@topnum\z@ % this prevents figures from falling at the top of page 1 \@setcopyright \thispagestyle{firstpage}% this sets first page specifications \uppercasenonmath\shorttitle \ifx\@empty\shortauthors \let\shortauthors\shorttitle \else \andify\shortauthors \fi \@maketitle@hook \begingroup \@maketitle \toks@\@xp{\shortauthors}\@temptokena\@xp{\shorttitle}% \toks4{\def\\{ \ignorespaces}}% defend against questionable usage \edef\@tempa{% \@nx\markboth{\the\toks4 \@nx\MakeUppercase{\the\toks@}}{\the\@temptokena}}% \@tempa \endgroup \c@footnote\z@ \@cleartopmattertags } \def\@cleartopmattertags{% \def\do##1{\let##1\relax}% \do\maketitle \do\@maketitle \do\title \do\@xtitle \do\@title \do\author \do\@xauthor \do\address \do\@xaddress \do\contrib \do\contribs \do\xcontribs \do\toccontribs \do\email \do\@xemail \do\curraddr \do\@xcurraddr \do\dedicatory \do\@dedicatory \do\thanks \do\thankses \do\keywords \do\@keywords \do\subjclass \do\@subjclass } \def\@maketitle@hook{\global\let\@maketitle@hook\@empty} \def\@maketitle{% \normalfont\normalsize \@adminfootnotes \@mkboth{\@nx\shortauthors}{\@nx\shorttitle}% \global\topskip8pc\relax % 10pc to base of first title line \@settitle \ifx\@empty\authors \else \@setauthors \fi \ifx\@empty\@dedicatory \else \baselineskip26\p@ \vtop{\centering{\footnotesize\itshape\@dedicatory\@@par}% \global\dimen@i\prevdepth}\prevdepth\dimen@i \fi \@setabstract \normalsize \if@titlepage \newpage \else \dimen@34\p@ \advance\dimen@-\baselineskip \vskip\dimen@\relax \fi } % end \@maketitle \def\@adminfootnotes{% \let\@makefnmark\relax \let\@thefnmark\relax \ifx\@empty\@subjclass\else \@footnotetext{\@setsubjclass}\fi \ifx\@empty\@keywords\else \@footnotetext{\@setkeywords}\fi \ifx\@empty\thankses\else \@footnotetext{% \def\par{\let\par\@par}\@setthanks}% \fi } \AtBeginDocument{% \@ifundefined{publname}{% \let\publname\@empty \let\@serieslogo\@empty }{% \def\@serieslogo{\procart@logo}% }% } \AtBeginDocument{% \@ifundefined{volinfo}{\let\volinfo\@empty}{} } \def\issueinfo#1#2#3#4{\def\currentvolume{#1}\def\currentissue{#2}% \def\currentmonth{#3}\def\currentyear{#4}} \issueinfo{00}% volume number {0}% % issue number {Xxxx}% % month {XXXX}% % year \newcommand{\copyrightinfo}[2]{% \def\copyrightyear{#1}% \@ifnotempty{#2}{\def\copyrightholder{#2}}% } \copyrightinfo{0000}{(copyright holder)} \def\pagespan#1#2{\setcounter{page}{#1}% \ifnum\c@page<\z@ \pagenumbering{roman}\setcounter{page}{-#1}\fi \def\start@page{#1}\def\end@page{#2}} \pagespan{000}{000} \newinsert\copyins \skip\copyins=1.5pc \count\copyins=1000 % magnification factor, 1000 = 100% \dimen\copyins=.5\textheight % maximum allowed per page \g@addto@macro\@reinserts{% \ifvoid\copyins\else\insert\copyins{\unvbox\copyins}\fi } \def\@copyinsfontsize{\fontsize{6}{7\p@}\normalfont\upshape} \newif\if@extracrline \@extracrlinefalse \let\@extracrline\@empty \relax \def\@setcopyright{% \ifx\@empty\@serieslogo \else\ifx\@empty\copyrightyear \else \insert\copyins{\hsize\textwidth \parfillskip\z@\relax \leftskip\z@\@plus.9\textwidth\relax \rightskip\z@\relax \@copyinsfontsize \everypar{}% \vskip-\skip\copyins \if@extracrline \vskip-6pt \fi \nointerlineskip \leavevmode\hfill\vrule\@width\z@\@height\skip\copyins \copyright\copyrightyear\ \copyrightholder\ignorespaces \if@extracrline \@extracrline \fi \par \kern\z@}% \fi\fi } \def\@combinefloats{% \ifx \@toplist\@empty \else \@cflt \fi \ifx \@botlist\@empty \else \@cflb \fi \ifvoid\copyins \else \@cflci \fi } \def\@cflci{% \setbox\@outputbox\vbox{% \unvbox\@outputbox \vskip\skip\copyins \if@twocolumn \else \vskip\z@ plus\p@ \fi \hbox to\columnwidth{% \hss\vbox to\z@{\vss \if@twocolumn \if@firstcolumn \else \unvbox\copyins \fi \else \unvbox\copyins \fi }}}% \if@twocolumn \if@firstcolumn \insert\copyins{\unvbox\copyins}% \fi\fi \global\count\copyins=999 \relax } \newcommand{\abstractname}{Abstract} \newcommand{\keywordsname}{Key words and phrases} \@namedef{subjclassname@1991}{% \textup{1991} Mathematics Subject Classification} \@namedef{subjclassname@2000}{% \textup{2000} Mathematics Subject Classification} \@namedef{subjclassname@2010}{% \textup{2010} Mathematics Subject Classification} \@namedef{subjclassname@2020}{% \textup{2020} Mathematics Subject Classification} \@xp\let\@xp\subjclassname\csname subjclassname@2020\endcsname \def\@tempb{amsproc} \ifx\@classname\@tempb \newcommand{\datename}{\textit{Date}:} \else \newcommand{\datename}{Received by the editors} \fi \def\@settitle{\begin{center}% \Large \bfseries \@title \end{center}% } \def\author@andify{% \nxandlist {\unskip ,\penalty-1 \space\ignorespaces}% {\unskip {} \@@and~}% {\unskip ,\penalty-2 \space \@@and~}% } \def\@setauthors{% \begingroup \def\thanks{\protect\thanks@warning}% \trivlist \centering \fontsize{11}{13\p@}\selectfont\@topsep13\p@\relax \item\relax \author@andify\authors \def\\{\protect\linebreak}% \authors \ifx\@empty\contribs \else ,\penalty-3 \space \@setcontribs \@closetoccontribs \fi \endtrivlist \endgroup } \def\@closetoccontribs{} \def\@setcontribs{% \@xcontribs \xcontribs } \def\@setdate{\datename\ \@date\@addpunct.} \def\@setsubjclass{% {\itshape\subjclassname.}\enspace\@subjclass\@addpunct.} \def\@setkeywords{% {\itshape \keywordsname.}\enspace \@keywords\@addpunct.} \def\@setthanks{\def\thanks##1{\par##1\@addpunct.}\thankses} \newbox\abstractbox \newenvironment{abstract}{% \ifx\maketitle\relax \ClassWarning{\@classname}{Abstract should precede \protect\maketitle\space in AMS document classes; reported}% \fi \global\setbox\abstractbox=\vtop \bgroup \normalfont\Small \list{}{\labelwidth\z@ \leftmargin3pc \rightmargin\leftmargin \listparindent\normalparindent \itemindent\z@ \parsep\z@ \@plus\p@ \let\fullwidthdisplay\relax }% \item[\hskip\labelsep\scshape\abstractname.]% }{% \endlist\egroup \ifx\@setabstract\relax \@setabstracta \fi } \def\@setabstract{\@setabstracta \global\let\@setabstract\relax} \def\@setabstracta{% \ifvoid\abstractbox \else \skip@20\p@ \advance\skip@-\lastskip \advance\skip@-\baselineskip \vskip\skip@ \box\abstractbox \prevdepth\z@ % because \abstractbox is a vtop \fi } \def\titlepage{% \clearpage \thispagestyle{empty}\setcounter{page}{0}} \def\endtitlepage{\newpage} \def\labelenumi{(\theenumi)} \def\theenumi{\@arabic\c@enumi} \def\labelenumii{(\theenumii)} \def\theenumii{\@alph\c@enumii} \def\p@enumii{\theenumi} \def\labelenumiii{(\theenumiii)} \def\theenumiii{\@roman\c@enumiii} \def\p@enumiii{\theenumi(\theenumii)} \def\labelenumiv{(\theenumiv)} \def\theenumiv{\@Alph\c@enumiv} \def\p@enumiv{\p@enumiii\theenumiii} \def\labelitemi{$\m@th\bullet$} \def\labelitemii{\bfseries --}% \upshape already done by \itemize \def\labelitemiii{$\m@th\ast$} \def\labelitemiv{$\m@th\cdot$} \newenvironment{verse}{\let\\\@centercr \list{}{\itemsep\z@ \itemindent -1.5em\listparindent\itemindent \rightmargin\leftmargin \advance\leftmargin 1.5em}\item[]% }{% \endlist } \let\endverse=\endlist % for efficiency \newenvironment{quotation}{\list{}{% \leftmargin3pc \listparindent\normalparindent \itemindent\z@ \rightmargin\leftmargin \parsep\z@ \@plus\p@}% \item[]% }{% \endlist } \let\endquotation=\endlist % for efficiency \newenvironment{quote}{% \list{}{\rightmargin\leftmargin}\item[]% }{% \endlist } \let\endquote=\endlist % for efficiency \def\trivlist{\parsep\parskip\@nmbrlistfalse \@trivlist \labelwidth\z@ \leftmargin\z@ \itemindent\z@ \let\@itemlabel\@empty \def\makelabel##1{\upshape##1}} \renewenvironment{enumerate}{% \ifnum \@enumdepth >3 \@toodeep\else \advance\@enumdepth \@ne \edef\@enumctr{enum\romannumeral\the\@enumdepth}\list {\csname label\@enumctr\endcsname}{\usecounter {\@enumctr}\def\makelabel##1{\hss\llap{\upshape##1}}}\fi }{% \endlist } \let\endenumerate=\endlist % for efficiency \renewenvironment{itemize}{% \ifnum\@itemdepth>3 \@toodeep \else \advance\@itemdepth\@ne \edef\@itemitem{labelitem\romannumeral\the\@itemdepth}% \list{\csname\@itemitem\endcsname}% {\def\makelabel##1{\hss\llap{\upshape##1}}}% \fi }{% \endlist } \let\enditemize=\endlist % for efficiency \newcommand{\descriptionlabel}[1]{\hspace\labelsep \upshape\bfseries #1:} \newenvironment{description}{\list{}{% \advance\leftmargini6\p@ \itemindent-12\p@ \labelwidth\z@ \let\makelabel\descriptionlabel}% }{ \endlist } \let\enddescription=\endlist % for efficiency \let\upn=\textup \AtBeginDocument{% \labelsep=5pt\relax \setcounter{enumi}{13}\setcounter{enumii}{13}% \setcounter{enumiii}{13}\setcounter{enumiv}{13}% \settowidth\leftmargini{\labelenumi\hskip\labelsep}% \advance\leftmargini by \normalparindent \settowidth\leftmarginii{\labelenumii\hskip\labelsep}% \settowidth\leftmarginiii{\labelenumiii\hskip\labelsep}% \settowidth\leftmarginiv{\labelenumiv\hskip\labelsep}% \setcounter{enumi}{0}\setcounter{enumii}{0}% \setcounter{enumiii}{0}\setcounter{enumiv}{0}% \leftmarginv=10pt \leftmarginvi=\leftmarginv \leftmargin=\leftmargini \labelwidth=\leftmargini \advance\labelwidth-\labelsep \@listi} \newskip\listisep \listisep\smallskipamount \def\@listI{\leftmargin\leftmargini \parsep\z@skip \topsep\listisep \itemsep\z@skip \listparindent\normalparindent} \let\@listi\@listI \def\@listii{\leftmargin\leftmarginii \labelwidth\leftmarginii \advance\labelwidth-\labelsep \topsep\z@skip \parsep\z@skip \partopsep\z@skip \itemsep\z@skip} \def\@listiii{\leftmargin\leftmarginiii \labelwidth\leftmarginiii \advance\labelwidth-\labelsep} \def\@listiv{\leftmargin\leftmarginiv \labelwidth\leftmarginiv \advance\labelwidth-\labelsep} \def\@listv{\leftmargin\leftmarginv \labelwidth\leftmarginv \advance\labelwidth-\labelsep} \def\@listvi{\leftmargin\leftmarginvi \labelwidth\leftmarginvi \advance\labelwidth-\labelsep} \@ifclasswith{\@classname}{fleqn}{% \let\@tempa\@iden \AtBeginDocument{\mathindent\leftmargini}% }{\let\@tempa\@gobble}% \@ifpackageloaded{amsmath}{\let\@tempa\@gobble}{% \@ifpackageloaded{amstex}{\let\@tempa\@gobble}{}% } \@tempa{% \def\[{\relax \ifmmode\@badmath \else \begin{trivlist}% \@beginparpenalty\predisplaypenalty \@endparpenalty\postdisplaypenalty \item[]\leavevmode \hbox to\linewidth\bgroup$\displaystyle \hskip\mathindent\bgroup \fi}% \def\]{\relax \ifmmode \egroup \m@th$\hfil \egroup \end{trivlist}% \else \@badmath \fi}% \renewenvironment{equation}{% \@beginparpenalty\predisplaypenalty \@endparpenalty\postdisplaypenalty \refstepcounter{equation}% \@topsep\abovedisplayskip \trivlist \item[]\leavevmode \hbox to\linewidth\bgroup\hskip\mathindent$\displaystyle }{% \m@th$\hfil \displaywidth\linewidth \hbox{\@eqnnum}\egroup \endtrivlist }% \renewenvironment{eqnarray}{% \stepcounter{equation}\let\@currentlabel\theequation \global\@eqnswtrue \global\@eqcnt\z@ \tabskip\mathindent \let\\=\@eqncr \abovedisplayskip\topsep \ifvmode \advance\abovedisplayskip\partopsep \fi \belowdisplayskip\abovedisplayskip \belowdisplayshortskip\abovedisplayskip \abovedisplayshortskip\abovedisplayskip $$\everycr{}\halign to\linewidth\bgroup \hskip\@centering $\displaystyle\tabskip\z@skip####\m@th$&% \@eqnsel \global\@eqcnt\@ne \hfil${}####{}\m@th$\hfil&% \global\@eqcnt\tw@ $\displaystyle ####\m@th$\hfil\tabskip\@centering&% \global\@eqcnt\thr@@ \hbox to \z@\bgroup\hss####\egroup\tabskip\z@skip\cr }{% \@@eqncr \egroup \global\advance\c@equation\m@ne$$% \global\@ignoretrue }% \newdimen\mathindent \mathindent\leftmargini } \def\@startsection#1#2#3#4#5#6{% \if@noskipsec \leavevmode \fi \par \@tempskipa #4\relax \@afterindenttrue \ifdim \@tempskipa <\z@ \@tempskipa -\@tempskipa \@afterindentfalse\fi \if@nobreak \everypar{}\else \addpenalty\@secpenalty\addvspace\@tempskipa\fi \@ifstar{\@dblarg{\@sect{#1}{\@m}{#3}{#4}{#5}{#6}}}% {\@dblarg{\@sect{#1}{#2}{#3}{#4}{#5}{#6}}}% } \def\@seccntformat#1{% \protect\textup{\protect\@secnumfont \csname the#1\endcsname \protect\@secnumpunct }% } \let\@secnumfont\@empty \def\@sect#1#2#3#4#5#6[#7]#8{% \edef\@toclevel{\ifnum#2=\@m 0\else\number#2\fi}% \ifnum #2>\c@secnumdepth \let\@secnumber\@empty \else \@xp\let\@xp\@secnumber\csname the#1\endcsname\fi \@tempskipa #5\relax \ifnum #2>\c@secnumdepth \let\@svsec\@empty \else \refstepcounter{#1}% \edef\@secnumpunct{% \ifdim\@tempskipa>\z@ % not a run-in section heading \@ifnotempty{#8}{.\@nx\enspace}% \else \@ifempty{#8}{.}{.\@nx\enspace}% \fi }% \protected@edef\@svsec{% \ifnum#2<\@m \@ifundefined{#1name}{}{% \ignorespaces\csname #1name\endcsname\space }% \fi \@seccntformat{#1}% }% \fi \ifdim \@tempskipa>\z@ % then this is not a run-in section heading \begingroup #6\relax \@hangfrom{\hskip #3\relax\@svsec}{\interlinepenalty\@M #8\par}% \endgroup \ifnum#2>\@m \else \@tocwrite{#1}{#8}\fi \else \def\@svsechd{#6\hskip #3\@svsec \@ifnotempty{#8}{\ignorespaces#8\unskip \@addpunct.}% \ifnum#2>\@m \else \@tocwrite{#1}{#8}\fi }% \fi \global\@nobreaktrue \@xsect{#5}} \let\@ssect\relax \newcounter{part} \newcounter{section} \newcounter{subsection}[section] \newcounter{subsubsection}[subsection] \newcounter{paragraph}[subsubsection] \newcounter{subparagraph}[paragraph] \renewcommand\thepart {\arabic{part}} \renewcommand\thesection {\arabic{section}} \renewcommand\thesubsection {\thesection.\arabic{subsection}} \renewcommand\thesubsubsection {\thesubsection .\arabic{subsubsection}} \renewcommand\theparagraph {\thesubsubsection.\arabic{paragraph}} \renewcommand\thesubparagraph {\theparagraph.\arabic{subparagraph}} \setcounter{secnumdepth}{3} \def\partname{Part} \def\part{\@startsection{part}{0}% \z@{\linespacing\@plus\linespacing}{.5\linespacing}% {\normalfont\bfseries\raggedright}} \def\specialsection{\@startsection{section}{1}% \z@{2\linespacing\@plus\linespacing}{.5\linespacing}% {\large\scshape\centering}} \def\section{\@startsection{section}{1}% \z@{.7\linespacing\@plus\linespacing}{.5\linespacing}% {\normalfont\bfseries\centering}} \def\subsection{\@startsection{subsection}{2}% \normalparindent{.5\linespacing\@plus.7\linespacing}{-.5em}% {\normalfont\bfseries}} \def\subsubsection{\@startsection{subsubsection}{3}% \normalparindent\z@{-.5em}% {\normalfont\itshape}} \def\paragraph{\@startsection{paragraph}{4}% \normalparindent\z@{-\fontdimen2\font}% \normalfont} \def\subparagraph{\@startsection{subparagraph}{5}% \z@\z@{-\fontdimen2\font}% \normalfont} \def\appendix{\par\c@section\z@ \c@subsection\z@ \let\sectionname\appendixname \def\thesection{\@Alph\c@section}} \def\appendixname{Appendix} \def\@Roman#1{\@xp\@slowromancap \romannumeral#1@}% \def\@slowromancap#1{\ifx @#1% then terminate \else \if i#1I\else\if v#1V\else\if x#1X\else\if l#1L\else\if c#1C\else\if m#1M\else#1\fi\fi\fi\fi\fi\fi \@xp\@slowromancap \fi } \def\aufm#1{\par\vspace*{12pt}{\flushright #1\par}} \newcommand{\@pnumwidth}{1.6em} \newcommand{\@tocrmarg}{2.6em} \setcounter{tocdepth}{1} \newswitch{toc} \newswitch{lof} \newswitch{lot} \newcommand\contentsnamefont{\scshape} \def\@starttoc#1#2{\begingroup \setTrue{#1}% \par\removelastskip\vskip\z@skip \@startsection{}\@M\z@{\linespacing\@plus\linespacing}% {.5\linespacing}{\centering\contentsnamefont}{#2}% \ifx\contentsname#2% \else \addcontentsline{toc}{section}{#2}\fi \makeatletter \@input{\jobname.#1}% \if@filesw \@xp\newwrite\csname tf@#1\endcsname \immediate\@xp\openout\csname tf@#1\endcsname \jobname.#1\relax \fi \global\@nobreakfalse \endgroup \addvspace{32\p@\@plus14\p@}% \let\tableofcontents\relax } \def\contentsname{Contents} \def\listfigurename{List of Figures} \def\listtablename{List of Tables} \def\tableofcontents{% \@starttoc{toc}\contentsname } \def\listoffigures{\@starttoc{lof}\listfigurename} \def\listoftables{\@starttoc{lot}\listtablename} \AtBeginDocument{% \@for\@tempa:=-1,0,1,2,3\do{% \@ifundefined{r@tocindent\@tempa}{% \@xp\gdef\csname r@tocindent\@tempa\endcsname{0pt}}{}% }% } \def\@writetocindents{% \begingroup \@for\@tempa:=-1,0,1,2,3\do{% \immediate\write\@auxout{% \string\newlabel{tocindent\@tempa}{% \csname r@tocindent\@tempa\endcsname}}% }% \endgroup} \AtEndDocument{\@writetocindents} \let\indentlabel\@empty \def\@tochangmeasure#1{\sbox\z@{#1}% \ifdim\wd\z@>\csname r@tocindent\@toclevel\endcsname\relax \@xp\xdef\csname r@tocindent\@toclevel\endcsname{\the\wd\z@}% \fi } \def\@toclevel{0} \def\@tocline#1#2#3#4#5#6#7{\relax \ifnum #1>\c@tocdepth % then omit \else \par \addpenalty\@secpenalty\addvspace{#2}% \begingroup \hyphenpenalty\@M \@ifempty{#4}{% \@tempdima\csname r@tocindent\number#1\endcsname\relax }{% \@tempdima#4\relax }% \parindent\z@ \leftskip#3\relax \advance\leftskip\@tempdima\relax \rightskip\@pnumwidth plus4em \parfillskip-\@pnumwidth #5\leavevmode\hskip-\@tempdima #6\nobreak\relax \hfil\hbox to\@pnumwidth{\@tocpagenum{#7}}\par \nobreak \endgroup \fi} \def\@tocpagenum#1{\hss{\mdseries #1}} \def\@tocwrite#1{\@xp\@tocwriteb\csname toc#1\endcsname{#1}} \def\@tocwriteb#1#2#3{% \begingroup \def\@tocline##1##2##3##4##5##6{% \ifnum##1>\c@tocdepth \else \sbox\z@{##5\let\indentlabel\@tochangmeasure##6}\fi}% \csname l@#2\endcsname{#1{\csname#2name\endcsname}{\@secnumber}{}}% \endgroup \addcontentsline{toc}{#2}% {\protect#1{\csname#2name\endcsname}{\@secnumber}{#3}}} \def\l@section{\@tocline{1}{0pt}{1pc}{}{}} \newcommand{\tocsection}[3]{% \indentlabel{\@ifnotempty{#2}{\ignorespaces#1 #2.\quad}}#3} \def\l@subsection{\@tocline{2}{0pt}{1pc}{5pc}{}} \let\tocsubsection\tocsection \def\l@subsubsection{\@tocline{3}{0pt}{1pc}{7pc}{}} \let\tocsubsubsection\tocsection \let\l@paragraph\l@subsubsection \let\tocparagraph\tocsection \let\l@subparagraph\l@subsubsection \let\tocsubparagraph\tocsection \def\l@part{\@tocline{-1}{12pt plus2pt}{0pt}{}{\bfseries}} \let\tocpart\tocsection \def\l@chapter{\@tocline{0}{8pt plus1pt}{0pt}{}{}} \let\tocchapter\tocsection \newcommand{\tocappendix}[3]{% \indentlabel{#1\@ifnotempty{#2}{ #2}.\quad}#3} \def\l@figure{\@tocline{0}{3pt plus2pt}{0pt}{1.5pc}{}} \let\l@table=\l@figure \def\refname{References} \def\bibname{Bibliography} \def\@defaultbiblabelstyle#1{#1.} \def\bibliographystyle#1{% \if@filesw\immediate\write\@auxout{\string\bibstyle{#1}}\fi \def\@tempa{#1}% \def\@tempb{amsplain}% \def\@tempc{}% \ifx\@tempa\@tempb \def\@biblabel##1{\@defaultbiblabelstyle{##1}}% \def\bibsetup{}% \else \def\bibsetup{\labelsep6\p@}% \ifx\@tempa\@tempc \def\@biblabel##1{}% \def\bibsetup{\labelwidth\z@ \leftmargin24\p@ \itemindent-\leftmargin \labelsep\z@ }% \fi \fi} \newcommand{\bibliofont}{\footnotesize} \newcommand{\@bibtitlestyle}{% \@xp\section\@xp*\@xp{\refname}% } \newenvironment{thebibliography}[1]{% \@bibtitlestyle \normalfont\bibliofont\labelsep .5em\relax \renewcommand\theenumiv{\arabic{enumiv}}\let\p@enumiv\@empty \list{\@biblabel{\theenumiv}}{\settowidth\labelwidth{\@biblabel{#1}}% \leftmargin\labelwidth \advance\leftmargin\labelsep \usecounter{enumiv}}% \sloppy \clubpenalty\@M \widowpenalty\clubpenalty \sfcode`\.=\@m }{% \def\@noitemerr{\@latex@warning{Empty `thebibliography' environment}}% \endlist } \def\bysame{\leavevmode\hbox to3em{\hrulefill}\thinspace} \def\newblock{} \newcommand\MR[1]{\relax\ifhmode\unskip\spacefactor3000 \space\fi MR~\MRhref{#1}{#1}} \let\MRhref\@gobble \newcommand\URL{\begingroup \def\@sverb##1{% \def\@tempa####1##1{\@URL{####1}\egroup\endgroup}% \@tempa}% \verb} \let\URLhref\@gobble \def\@URL#1{\URLhref{#1}#1} \newif\ireferences.bib707 B
@book{rudin1976principles, author = {Rudin, Walter}, title = {Principles of Mathematical Analysis}, edition = {Third}, publisher = {McGraw-Hill}, address = {New York}, year = {1976} } @book{granas2003fixed, author = {Granas, Andrzej and Dugundji, James}, title = {Fixed Point Theory}, series = {Springer Monographs in Mathematics}, publisher = {Springer}, address = {New York}, year = {2003} } @article{banach1922, author = {Banach, Stefan}, title = {Sur les op\'erations dans les ensembles abstraits et leur application aux \'equations int\'egrales}, journal = {Fund. Math.}, volume = {3}, pages = {133--181}, year = {1922} }main.pdfprebuilt · 181 KBReplaced by the first recompile.
Binary file, seeded as-is.
main.synctex.gzprebuilt · 14 KBReplaced by the first recompile.
Binary file, seeded as-is.