Files
mlpack/fastlib/u/march/nsf/ltexpprt.sty
T
2007-11-02 15:28:39 +00:00

361 lines
10 KiB
TeX

% This is ltexpprt.sty, a file of macros and definitions for creating a
% chapter for publication in the ACM/SIAM Preprint series using LaTeX2E.
% It is designed to produce double-column output.
% This file may be freely distributed but may not be altered in any way.
% Any comments or questions regarding these macros should be directed to:
% Donna Witzleben
% SIAM
% 3600 University City Science Center
% Philadelphia, PA 19104-2688
% USA
% Telephone: (215) 382-9800
% Fax: (215) 386-7999
% e-mail: witzleben@siam.org
% Report the version.
\message{*** ACM/SIAM LaTeX2E Preprint Series macro package, version 1.0,
September 5, 1996 ***}
\pretolerance=800
\tolerance=10000
\sloppy
%\voffset=-.5in
%\hoffset=-.5in
\vsize=55pc
\hsize=41pc
\baselineskip=14pt
\footskip=18pt
%\topmargin -24pt
\topmargin 1in
\headheight 12pt
\headsep 17pt
\textheight 52.5pc \advance\textheight by \topskip
\textwidth 41pc
\parskip 0pt
\parindent 18pt
%\oddsidemargin 0.0in
%\setlength{\oddsidemargin}{-0.875pc}
%\setlength{\evensidemargin}{-0.875pc}
\setlength{\oddsidemargin}{0.0in}
\setlength{\evensidemargin}{0.0in}
\font\tensmc=cmcsc10
\def\smc{\tensmc}
%% footnotes to be set 8/10
\def\footnotesize{\@setsize\footnotesize{10pt}\viiipt\@viiipt
% \indent
\abovedisplayskip \z@
\belowdisplayskip\z@
\abovedisplayshortskip\abovedisplayskip
\belowdisplayshortskip\belowdisplayshortskip
\def\@listi{\leftmargin\leftmargini \topsep 3pt plus 1pt minus 1pt
\parsep 2pt plus 1pt minus 1pt
\itemsep \parsep}}
\let\referencesize\footnotesize
\footnotesep 0pt
\skip\footins 12pt plus 12pt
\def\footnoterule{\kern3\p@ \hrule width 3em} % the \hrule is .4pt high
\def\ps@plain{\let\@mkboth\@gobbletwo
\def\@oddfoot{{\hfil\small\thepage\hfil}}%
\def\@oddhead{}
\def\@evenhead{}\def\@evenfoot{}}
\def\ps@headings{\let\@mkboth\markboth
\def\@oddfoot{}\def\@evenfoot{}%
\def\@evenhead{{\rm\thepage}\hfil{\small\leftmark}}%
\def\@oddhead{{\noindent\small\rightmark}\hfil{\rm\thepage}}%
\def\ps@myheadings{\let\@mkboth\@gobbletwo
\def\@oddfoot{}\def\@evenfoot{}%
\def\@oddhead{\rlap{\normalsize\rm\rightmark}\hfil{small\thepage}}%
\def\@evenhead%{\hfil{\small\@chapapp}\
{\small\thepage}\hfil\llap{\normalsize\rm\leftmark}}%
\def\chaptermark##1{}%
\def\sectionmark##1{}\def\subsectionmark##1{}}
\def\theequation{\arabic{section}.\arabic{equation}}
\def\section{\@startsection{section}{1}{0pt}{-12pt}{3pt}{\hyphenpenalty=\@M
\exhyphenpenalty=\@M\normalsize\bf}}
\def\subsection{\@startsection{subsection}{2}{0pt}{-12pt}{-5pt}{\normalsize\bf}}
\def\subsubsection{\@startsection
{subsubsection}{3}{0pt}{-12pt}{-5pt}{\normalsize\bf}}
\def\paragraph{\@startsection
{paragraph}{4}{\parindent}{0pt}{-5pt}{\normalsize\bf}}
\def\subparagraph{\@startsection
{subparagraph}{4}{\parindent}{0pt}{-5pt}{\normalsize\bf}}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% %
% THEOREMS, PROOFS, ALGORITHMS %
% %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%% defined proof environment by theorem model (took out counter)
\def\newproof#1{\@nprf{#1}}
\def\@nprf#1#2{\@xnprf{#1}{#2}}
\def\@xnprf#1#2{\expandafter\@ifdefinable\csname #1\endcsname
\global\@namedef{#1}{\@prf{#1}{#2}}\global\@namedef{end#1}{\@endproof}}
\def\@prf#1#2{\@xprf{#1}{#2}}
\def\@xprf#1#2{\@beginproof{#2}{\csname the#1\endcsname}\ignorespaces}
%%% defined algorithm environment by theorem model
\def\newalgorithm#1{\@ifnextchar[{\@oalg{#1}}{\@nalg{#1}}}
\def\@nalg#1#2{%
\@ifnextchar[{\@xnalg{#1}{#2}}{\@ynalg{#1}{#2}}}
\def\@xnalg#1#2[#3]{\expandafter\@ifdefinable\csname #1\endcsname
{\@definecounter{#1}\@addtoreset{#1}{#3}%
\expandafter\xdef\csname the#1\endcsname{\expandafter\noexpand
\csname the#3\endcsname \@thmcountersep \@thmcounter{#1}}%
\global\@namedef{#1}{\@alg{#1}{#2}}\global\@namedef{end#1}{\@endalgorithm}}}
\def\@ynalg#1#2{\expandafter\@ifdefinable\csname #1\endcsname
{\@definecounter{#1}%
\expandafter\xdef\csname the#1\endcsname{\@thmcounter{#1}}%
\global\@namedef{#1}{\@alg{#1}{#2}}\global\@namedef{end#1}{\@endalgorithm}}}
\def\@oalg#1[#2]#3{\expandafter\@ifdefinable\csname #1\endcsname
{\global\@namedef{the#1}{\@nameuse{the#2}}%
\global\@namedef{#1}{\@alg{#2}{#3}}%
\global\@namedef{end#1}{\@endalgorithm}}}
\def\@alg#1#2{\refstepcounter
{#1}\@ifnextchar[{\@yalg{#1}{#2}}{\@xalg{#1}{#2}}}
\def\@xalg#1#2{\@beginalgorithm{#2}{\csname the#1\endcsname}\ignorespaces}
\def\@yalg#1#2[#3]{\@opargbeginalgorithm{#2}{\csname
the#1\endcsname}{#3}\ignorespaces}
\def\@beginproof#1{\rm \trivlist \item[\hskip \labelsep{\it #1.\/}]}
\def\@endproof{\outerparskip 0pt\endtrivlist}
\def\@begintheorem#1#2{\it \trivlist \item[\hskip \labelsep{\sc #1\ #2.}]}
\def\@opargbegintheorem#1#2#3{\it \trivlist
\item[\hskip \labelsep{\sc #1\ #2.\ (#3)}]}
\def\@endtheorem{\outerparskip 0pt\endtrivlist}
%\def\@begindefinition#1#2{\rm \trivlist \item[\hskip \labelsep{\sc #1\ #2.}]}
%\def\@opargbegindefinition#1#2#3{\rm \trivlist
% \item[\hskip \labelsep{\sc #1\ #2.\ (#3)}]}
%\def\@enddefinition{\outerparskip 0pt\endtrivlist}
\def\@beginalgorithm#1#2{\rm \trivlist \item[\hskip \labelsep{\sc #1\ #2.}]}
\def\@opargbeginalgorithm#1#2#3{\rm \trivlist
\item[\hskip \labelsep{\sc #1\ #2.\ (#3)}]}
\def\@endalgorithm{\outerparskip 6pt\endtrivlist}
\newskip\outerparskip
%\def\trivlist{\parsep\outerparskip
% \@trivlist \labelwidth\z@ \leftmargin\z@
% \itemindent\parindent \def\makelabel##1{##1}}
%
%\def\@trivlist{\topsep=0pt\@topsepadd\topsep
% \if@noskipsec \leavevmode \fi
% \ifvmode \advance\@topsepadd\partopsep \else \unskip\par\fi
% \if@inlabel \@noparitemtrue \@noparlisttrue
% \else \@noparlistfalse \@topsep\@topsepadd \fi
% \advance\@topsep \parskip
% \leftskip\z@\rightskip\@rightskip \parfillskip\@flushglue
% \@setpar{\if@newlist\else{\@@par}\fi}%
% \global\@newlisttrue \@outerparskip\parskip}
%
%
%\def\endtrivlist{\if@newlist\@noitemerr\fi
% \if@inlabel\indent\fi
% \ifhmode\unskip \par\fi
% \if@noparlist \else
% \ifdim\lastskip >\z@ \@tempskipa\lastskip \vskip -\lastskip
% \advance\@tempskipa\parskip \advance\@tempskipa -\@outerparskip
% \vskip\@tempskipa
% \fi\@endparenv\fi
% \vskip\outerparskip}
\newproof{@proof}{Proof}
\newenvironment{proof}{\begin{@proof}}{\end{@proof}}
\newtheorem{@theorem}{Theorem}[section]
\newenvironment{theorem}{\begin{@theorem}}{\end{@theorem}}
\newalgorithm{@algorithm}{Algorithm}[section]
\newenvironment{algorithm}{\begin{@algorithm}}{\end{@algorithm}}
\newtheorem{lemma}{Lemma}[section]
\newtheorem{fact}{Fact}[section]
\newtheorem{corollary}{Corollary}[section]
\newtheorem{axiom}{Axiom}[section]
\newtheorem{cond}{Condition}[section]
\newtheorem{property}{Property}[section]
\newtheorem{proposition}{Proposition}[section]
\newtheorem{Conjecture}{Conjecture}[section]
%\newtheorem{Corollary}[Theorem]{Corollary}
\newtheorem{Definition}{Definition}[section]
\newtheorem{Lemma}{Lemma}[section]
\newtheorem{Remark}{Remark}[section]
\newproof{Example}{Example}
\newproof{Method}{Method}
\newproof{Exercise}{Exercise}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% %%
%% BIBLIOGRAPHY %%
%% %%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\def\thebibliography#1{%
%\cleardoublepage
\parindent 0em
\vspace{6pt}
\begin{flushleft}\normalsize\bf References\end{flushleft}
\addvspace{3pt}\nopagebreak\list
%% default is no labels, for those not using \cite or BibTeX
% {[\arabic{enumi}]} {\settowidth\labelwidth{[#1]}
{[\arabic{enumi}]}{\settowidth\labelwidth{mm}
\leftmargin\labelwidth
\advance\leftmargin\labelsep
\usecounter{enumi}\@bibsetup}
\def\newblock{\hskip .11em plus .33em minus -.07em}
\sloppy\clubpenalty4000\widowpenalty4000
\sfcode`\.=1000\relax}
%% setup 8/10 type
\def\@bibsetup{\itemindent=0pt \itemsep=0pt \parsep=0pt
\small}
\def\sameauthor{\leavevmode\vrule height 2pt depth -1.6pt width 23pt}
\pagestyle{empty}
%%%change maketitle to eliminate drop folio
\if@titlepage
\renewcommand\maketitle{\begin{titlepage}%
\let\footnotesize\small
\let\footnoterule\relax
\let \footnote \thanks
\null\vfil
\vskip 60\p@
\begin{center}%
{\LARGE \@title \par}%
\vskip 3em%
{\large
\lineskip .75em%
\begin{tabular}[t]{c}%
\@author
\end{tabular}\par}%
\vskip 1.5em%
{\large \@date \par}% % Set date in \large size.
\end{center}\par
\@thanks
\vfil\null
\end{titlepage}%
\setcounter{footnote}{0}%
\global\let\thanks\relax
\global\let\maketitle\relax
\global\let\@thanks\@empty
\global\let\@author\@empty
\global\let\@date\@empty
\global\let\@title\@empty
\global\let\title\relax
\global\let\author\relax
\global\let\date\relax
\global\let\and\relax
}
\else
\renewcommand\maketitle{\par
\begingroup
\renewcommand\thefootnote{\@fnsymbol\c@footnote}%
\def\@makefnmark{\rlap{\@textsuperscript{\normalfont\@thefnmark}}}%
\long\def\@makefntext##1{\parindent 1em\noindent
\hb@xt@1.8em{%
\hss\@textsuperscript{\normalfont\@thefnmark}}##1}%
\if@twocolumn
\ifnum \col@number=\@ne
\@maketitle
\else
\twocolumn[\@maketitle]%
\fi
\else
\newpage
\global\@topnum\z@ % Prevents figures from going at top of page.
\@maketitle
\fi
\thispagestyle{empty}\@thanks
\endgroup
\setcounter{footnote}{0}%
\global\let\thanks\relax
\global\let\maketitle\relax
\global\let\@maketitle\relax
\global\let\@thanks\@empty
\global\let\@author\@empty
\global\let\@date\@empty
\global\let\@title\@empty
\global\let\title\relax
\global\let\author\relax
\global\let\date\relax
\global\let\and\relax
}
\def\@maketitle{%
\newpage
\null
\vskip 2em%
\begin{center}%
\let \footnote \thanks
{\LARGE \@title \par}%
\vskip 1.5em%
{\large
\lineskip .5em%
\begin{tabular}[t]{c}%
\@author
\end{tabular}\par}%
\vskip 1em%
{\large \@date}%
\end{center}%
\par
\vskip 1.5em}
\fi