1 |
dashley |
24 |
%$Header: /cvsroot/esrg/sfesrg/esrgpubs/acm0010/paper/esub2acm.cls,v 1.1 2001/09/25 21:44:55 dtashley Exp $ |
2 |
|
|
%% |
3 |
|
|
%%-------------------------------------------------------------- |
4 |
|
|
%% This file is the ESUB2ACM.CLS file, downloaded from the |
5 |
|
|
%% ACM's web site in 10/2000, to allow preparation of a |
6 |
|
|
%% rational approximation paper and other papers for ACM |
7 |
|
|
%% journals. |
8 |
|
|
%% |
9 |
|
|
%% This file is placed under a version control system |
10 |
|
|
%% (Microsoft Visual Source Safe 6.0) at Dave Ashley's home. |
11 |
|
|
%% All changes to this file will be accompanied by |
12 |
|
|
%% comments automatically inserted in the change history at the |
13 |
|
|
%% end of the file. |
14 |
|
|
%%-------------------------------------------------------------- |
15 |
|
|
%% |
16 |
|
|
% ESUB2ACM.CLS V1.2 - November 10th. 1999 |
17 |
|
|
\def\fileversion{v1.2} % for ACM's tracking purposes |
18 |
|
|
\def\filedate{November 10, 1999} % Gerry Murray's tracking data |
19 |
|
|
\def\docdate {Wed 10 Nov 1999} % Gerry Murray (with deltas to doc} |
20 |
|
|
\usepackage{epsfig} |
21 |
|
|
% |
22 |
|
|
% This is esub2acm.cls. |
23 |
|
|
% |
24 |
|
|
% It is the class (style) file that you should use |
25 |
|
|
% if you intend to submit a LaTeX2e electronic file (.tex) to |
26 |
|
|
% ACM for use in their electronic publishing system. |
27 |
|
|
% |
28 |
|
|
% It is directly derived from esub2acm.sty (LaTeX 2.09 version), |
29 |
|
|
% itself a slightly modified version of David M. Jones's style file. |
30 |
|
|
% It can work for both LaTeX2e and LaTeX 2.09; name the file |
31 |
|
|
% esub2acm.sty to use it with LaTeX 2.09. |
32 |
|
|
% |
33 |
|
|
% Conversion scripts have been written to successfully convert a |
34 |
|
|
% LaTeX2e submission into an SGML file, provided the submission |
35 |
|
|
% has been authored using *this* particular (class) style file. |
36 |
|
|
% |
37 |
|
|
% Vanilla LaTeX is preferred. |
38 |
|
|
% |
39 |
|
|
% For additional information on submission formats check out: |
40 |
|
|
% http://www.acm.org/pubs/submitting_accepted_articles/auth_rd.htm |
41 |
|
|
% |
42 |
|
|
% Gerry Murray 6/21/99 and 8/5/1999 |
43 |
|
|
% murray@hq.acm.org |
44 |
|
|
% |
45 |
|
|
% |
46 |
|
|
%% |
47 |
|
|
%% \CharacterTable |
48 |
|
|
%% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z |
49 |
|
|
%% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z |
50 |
|
|
%% Digits \0\1\2\3\4\5\6\7\8\9 |
51 |
|
|
%% Exclamation \! Double quote \" Hash (number) \# |
52 |
|
|
%% Dollar \$ Percent \% Ampersand \& |
53 |
|
|
%% Acute accent \' Left paren \( Right paren \) |
54 |
|
|
%% Asterisk \* Plus \+ Comma \, |
55 |
|
|
%% Minus \- Point \. Solidus \/ |
56 |
|
|
%% Colon \: Semicolon \; Less than \< |
57 |
|
|
%% Equals \= Greater than \> Question mark \? |
58 |
|
|
%% Commercial at \@ Left bracket \[ Backslash \\ |
59 |
|
|
%% Right bracket \] Circumflex \^ Underscore \_ |
60 |
|
|
%% Grave accent \` Left brace \{ Vertical bar \| |
61 |
|
|
%% Right brace \} Tilde \~} |
62 |
|
|
%% |
63 |
|
|
%% |
64 |
|
|
% |
65 |
|
|
% -> \documentclass{esub2acm} |
66 |
|
|
% -> \markboth{}{} |
67 |
|
|
% takes 2 arguments and it is for the left- and right-page headers: |
68 |
|
|
% the first set of braces is assigned for author's name(s) |
69 |
|
|
% and |
70 |
|
|
% the second set of braces is assigned for the title |
71 |
|
|
% (if the title is too long, contraction may be needed |
72 |
|
|
% -> \title{} |
73 |
|
|
% if the title is too long, it can be separated by \\ |
74 |
|
|
% -> \author{} |
75 |
|
|
% author1 \\ author1 affiliation |
76 |
|
|
% \and |
77 |
|
|
% author2 \\ author2 affiliation |
78 |
|
|
% -> \begin{abstract} |
79 |
|
|
% -> \end{abstract} |
80 |
|
|
% |
81 |
|
|
% -> \category{}{}{} |
82 |
|
|
% takes 3 arguments for the Computing Reviews Classification Scheme. |
83 |
|
|
% ex: \category{D.3.3}{Programming Languages}{Language Constructs and |
84 |
|
|
% Features}[data types and structures] |
85 |
|
|
% the last argument, in square brackets, is optional. |
86 |
|
|
% -> \terms{} (ex: \terms{Human Factors, Languages}) |
87 |
|
|
% -> \keywords{} (in alphabetical order \keywords{document processing, sequences, |
88 |
|
|
% string searching, subsequences, substrings}) |
89 |
|
|
% -> \begin{document} |
90 |
|
|
% |
91 |
|
|
% -> \begin{bottomstuff} |
92 |
|
|
% similar to \thanks |
93 |
|
|
% for authors' addresses; research/grant statements |
94 |
|
|
% -> \end{bottomstuff} |
95 |
|
|
% -> \maketitle |
96 |
|
|
% |
97 |
|
|
% Now you can start the body of the paper; your figures, tables and |
98 |
|
|
% use all the latex constructs. |
99 |
|
|
% |
100 |
|
|
% -> \begin{acks} |
101 |
|
|
% acknowledgements |
102 |
|
|
% -> \end{acks} |
103 |
|
|
% |
104 |
|
|
% -> \bibliographystyle{esub2acm} |
105 |
|
|
% -> \bibliography{mybib_file} |
106 |
|
|
% |
107 |
|
|
% **** |
108 |
|
|
% If your paper has been accepted with a separate (electronic only) |
109 |
|
|
% appendix, you need to add the following control sequence: |
110 |
|
|
% |
111 |
|
|
% -> \appendixhead{}{}{}{} |
112 |
|
|
% takes 4 arguments to identify your appendix section. |
113 |
|
|
% first = journal name (e.g. toplas ) |
114 |
|
|
% second = paper-id (a four-digit number) |
115 |
|
|
% third = year of appearance, for copyright notice |
116 |
|
|
% (approximation will suffice) |
117 |
|
|
% fourth = journal, volume and year of publication if known |
118 |
|
|
% |
119 |
|
|
% body of appendix |
120 |
|
|
|
121 |
|
|
% -> \end{document} |
122 |
|
|
% |
123 |
|
|
% Do not worry about the other definitions in this style file |
124 |
|
|
% Remember to compile: latex, bibtex, latex latex |
125 |
|
|
% |
126 |
|
|
% Bibliographic cite forms needed: |
127 |
|
|
% |
128 |
|
|
% \cite{key} |
129 |
|
|
% which produces citations with full author list and year. |
130 |
|
|
% eg. [Brown 1978; Jarke, Turner, Stohl, et al. 1985] |
131 |
|
|
% \citeA{key} |
132 |
|
|
% which produces citations with only the full author list. |
133 |
|
|
% eg. [Brown; Jarke, Turner and Stohl] |
134 |
|
|
% \citeN{key} |
135 |
|
|
% which produces citations with the full author list and year, but |
136 |
|
|
% can be used as nouns in a sentence; no brackets appear around |
137 |
|
|
% the author names, but only around the year. |
138 |
|
|
% eg. Shneiderman [1978] states that...... |
139 |
|
|
% \citeN should only be used for a single citation. |
140 |
|
|
% \shortcite{key} |
141 |
|
|
% which produces citations with abbreviated author list and year. |
142 |
|
|
% \shortciteA{key} |
143 |
|
|
% which produces only the abbreviated author list. |
144 |
|
|
% \shortciteN{key} |
145 |
|
|
% which produces the abbreviated author list and year, with only the |
146 |
|
|
% year in brackets. Use with only one citation. |
147 |
|
|
% \citeyear{key} |
148 |
|
|
% which produces the year information only, within brackets. |
149 |
|
|
% |
150 |
|
|
% Abbreviated author lists use the ``et al.'' construct. |
151 |
|
|
% |
152 |
|
|
% The above are examples of required ACM bibliographic cite formats needed. |
153 |
|
|
% ******************* |
154 |
|
|
% Here is the complete list of cite forms from the chicago bibliographic style |
155 |
|
|
% |
156 |
|
|
% \cite{key} |
157 |
|
|
% which produces citations with full author list and year. |
158 |
|
|
% eg. (Brown 1978; Jarke, Turner, Stohl, et al. 1985) |
159 |
|
|
% \citeNP{key} |
160 |
|
|
% which produces citations with full author list and year, but without |
161 |
|
|
% enclosing parentheses: |
162 |
|
|
% eg. Brown 1978; Jarke, Turner and Stohl 1985 |
163 |
|
|
% \citeA{key} |
164 |
|
|
% which produces citations with only the full author list. |
165 |
|
|
% eg. (Brown; Jarke, Turner and Stohl) |
166 |
|
|
% \citeANP{key} |
167 |
|
|
% which produces citations with only the full author list, without |
168 |
|
|
% parentheses eg. Brown; Jarke, Turner and Stohl |
169 |
|
|
% \citeN{key} |
170 |
|
|
% which produces citations with the full author list and year, but |
171 |
|
|
% can be used as nouns in a sentence; no parentheses appear around |
172 |
|
|
% the author names, but only around the year. |
173 |
|
|
% eg. Shneiderman (1978) states that...... |
174 |
|
|
% \citeN should only be used for a single citation. |
175 |
|
|
% \shortcite{key} |
176 |
|
|
% which produces citations with abbreviated author list and year. |
177 |
|
|
% \shortciteNP{key} |
178 |
|
|
% which produces citations with abbreviated author list and year. |
179 |
|
|
% \shortciteA{key} |
180 |
|
|
% which produces only the abbreviated author list. |
181 |
|
|
% \shortciteANP{key} |
182 |
|
|
% which produces only the abbreviated author list. |
183 |
|
|
% \shortciteN{key} |
184 |
|
|
% which produces the abbreviated author list and year, with only the |
185 |
|
|
% year in parentheses. Use with only one citation. |
186 |
|
|
% \citeyear{key} |
187 |
|
|
% which produces the year information only, within parentheses. |
188 |
|
|
% \citeyearNP{key} |
189 |
|
|
% which produces the year information only. |
190 |
|
|
% |
191 |
|
|
% Abbreviated author lists use the ``et al.'' construct. |
192 |
|
|
% |
193 |
|
|
% `NP' means `no parentheses' |
194 |
|
|
% |
195 |
|
|
%%% End of inserted ACM - esub2acm comments |
196 |
|
|
|
197 |
|
|
%% CHANGES ON NEXT LINES |
198 |
|
|
\newif\if@ll % to record which version of LaTeX is in use |
199 |
|
|
|
200 |
|
|
\expandafter\ifx\csname LaTeXe\endcsname\relax % LaTeX2.09 is used |
201 |
|
|
\else% LaTeX2e is used, so set ll to true |
202 |
|
|
\global\@lltrue |
203 |
|
|
\fi |
204 |
|
|
|
205 |
|
|
\if@ll |
206 |
|
|
\NeedsTeXFormat{LaTeX2e} |
207 |
|
|
\ProvidesClass{esub2acm} [1999/07/18 based on esub2acm.sty <23 April 96>] |
208 |
|
|
\RequirePackage{latexsym}% QUERY: are these two really needed? |
209 |
|
|
%\RequirePackage{amssymb} |
210 |
|
|
\let\dooptions\ProcessOptions |
211 |
|
|
\else |
212 |
|
|
\let\dooptions\@options |
213 |
|
|
\fi |
214 |
|
|
%% END CHANGES |
215 |
|
|
|
216 |
|
|
\typeout{Document Style `esub2acm' Electronic Submissions \fileversion\space <\filedate> (ACM).} |
217 |
|
|
\def\@height{height} |
218 |
|
|
\def\@width{width} |
219 |
|
|
\def\@minus{minus} |
220 |
|
|
\def\@plus{plus} |
221 |
|
|
\def\hb@xt@{\hbox to} |
222 |
|
|
\newif\if@faircopy |
223 |
|
|
\@faircopyfalse |
224 |
|
|
\def\ds@faircopy{\@faircopytrue} |
225 |
|
|
|
226 |
|
|
\def\ds@preprint{\@faircopyfalse} |
227 |
|
|
|
228 |
|
|
\def\ds@twocolumn{% |
229 |
|
|
\typeout{Warning! twocolumn mode is not supported by esub2acm}% |
230 |
|
|
} |
231 |
|
|
\@twosidetrue |
232 |
|
|
\@mparswitchtrue |
233 |
|
|
\def\ds@draft{\overfullrule 5\p@} |
234 |
|
|
%% CHANGE ON NEXT LINE |
235 |
|
|
\dooptions |
236 |
|
|
|
237 |
|
|
\lineskip \p@ |
238 |
|
|
\normallineskip \p@ |
239 |
|
|
\def\baselinestretch{1} |
240 |
|
|
\def\@ptsize{0} %needed for amssymbols.sty |
241 |
|
|
|
242 |
|
|
%% CHANGES ON NEXT LINES |
243 |
|
|
\if@ll% allow use of old-style font change commands in LaTeX2e |
244 |
|
|
\@maxdepth\maxdepth |
245 |
|
|
\DeclareOldFontCommand{\rm}{\normalfont\rmfamily}{\mathrm} |
246 |
|
|
\DeclareOldFontCommand{\sf}{\normalfont\sffamily}{\mathsf} |
247 |
|
|
\DeclareOldFontCommand{\tt}{\normalfont\ttfamily}{\mathtt} |
248 |
|
|
\DeclareOldFontCommand{\bf}{\normalfont\bfseries}{\mathbf} |
249 |
|
|
\DeclareOldFontCommand{\it}{\normalfont\itshape}{\mathit} |
250 |
|
|
\DeclareOldFontCommand{\sl}{\normalfont\slshape}{\@nomath\sl} |
251 |
|
|
\DeclareOldFontCommand{\sc}{\normalfont\scshape}{\@nomath\sc} |
252 |
|
|
\DeclareRobustCommand*{\cal}{\@fontswitch{\relax}{\mathcal}} |
253 |
|
|
\DeclareRobustCommand*{\mit}{\@fontswitch{\relax}{\mathnormal}} |
254 |
|
|
\fi |
255 |
|
|
|
256 |
|
|
\if@ll |
257 |
|
|
\renewcommand{\@ptsize}{} |
258 |
|
|
\renewcommand{\normalsize}{% |
259 |
|
|
\@setfontsize\normalsize\@xpt{12\p@}% |
260 |
|
|
\abovedisplayskip 6\p@ \@plus2\p@ \@minus\p@ |
261 |
|
|
\belowdisplayskip \abovedisplayskip |
262 |
|
|
\abovedisplayshortskip 6\p@ \@minus 3\p@ |
263 |
|
|
\belowdisplayshortskip 6\p@ \@minus 3\p@ |
264 |
|
|
\let\@listi\@listI |
265 |
|
|
} |
266 |
|
|
\else |
267 |
|
|
\def\@normalsize{% |
268 |
|
|
\@setsize\normalsize{12\p@}\xpt\@xpt |
269 |
|
|
\abovedisplayskip 6\p@ \@plus2\p@ \@minus\p@ |
270 |
|
|
\belowdisplayskip \abovedisplayskip |
271 |
|
|
\abovedisplayshortskip 6\p@ \@minus 3\p@ |
272 |
|
|
\belowdisplayshortskip 6\p@ \@minus 3\p@ |
273 |
|
|
\let\@listi\@listI |
274 |
|
|
}% |
275 |
|
|
\fi |
276 |
|
|
\if@ll |
277 |
|
|
\newcommand{\small}{% |
278 |
|
|
\@setfontsize\small\@ixpt{12\p@}% |
279 |
|
|
\abovedisplayskip 5\p@ \@plus 2\p@ \@minus \p@ |
280 |
|
|
\belowdisplayskip \abovedisplayskip |
281 |
|
|
\abovedisplayshortskip 5\p@ \@minus 2\p@ |
282 |
|
|
\belowdisplayshortskip 5\p@ \@minus 2\p@ |
283 |
|
|
\def\@listi{% |
284 |
|
|
\leftmargin\leftmargini |
285 |
|
|
\topsep 5\p@ \@plus 2\p@ \@minus \p@ |
286 |
|
|
\parsep \z@ \@plus .7\p@ |
287 |
|
|
\itemsep 1.6\p@ \@plus .8\p@ |
288 |
|
|
}% |
289 |
|
|
}% |
290 |
|
|
\else |
291 |
|
|
\def\small{% |
292 |
|
|
\@setsize\small{11\p@}\ixpt\@ixpt |
293 |
|
|
\abovedisplayskip 5\p@ \@plus 2\p@ \@minus \p@ |
294 |
|
|
\belowdisplayskip \abovedisplayskip |
295 |
|
|
\abovedisplayshortskip 5\p@ \@minus 2\p@ |
296 |
|
|
\belowdisplayshortskip 5\p@ \@minus 2\p@ |
297 |
|
|
\def\@listi{% |
298 |
|
|
\leftmargin\leftmargini |
299 |
|
|
\topsep 5\p@ \@plus 2\p@ \@minus \p@ |
300 |
|
|
\parsep \z@ \@plus .7\p@ |
301 |
|
|
\itemsep 1.6\p@ \@plus .8\p@ |
302 |
|
|
}% |
303 |
|
|
}% |
304 |
|
|
\fi |
305 |
|
|
|
306 |
|
|
\if@ll |
307 |
|
|
\newcommand{\footnotesize}{% |
308 |
|
|
\@setfontsize\footnotesize\@viiipt{10\p@}% |
309 |
|
|
\abovedisplayskip 4\p@ \@plus \p@ |
310 |
|
|
\belowdisplayskip \abovedisplayskip |
311 |
|
|
\abovedisplayshortskip 4\p@ \@minus \p@ |
312 |
|
|
\belowdisplayshortskip 4\p@ \@minus \p@ |
313 |
|
|
\def\@listi{% |
314 |
|
|
\leftmargin\leftmargini |
315 |
|
|
\topsep 4\p@ \@plus \p@ |
316 |
|
|
\parsep \z@ \@plus .5\p@ |
317 |
|
|
\itemsep \p@ \@plus .7\p@ |
318 |
|
|
}% |
319 |
|
|
}% |
320 |
|
|
\else |
321 |
|
|
\def\footnotesize{% |
322 |
|
|
\@setsize\footnotesize{10pt}\viiipt\@viiipt |
323 |
|
|
\abovedisplayskip 4\p@ \@plus \p@ |
324 |
|
|
\belowdisplayskip \abovedisplayskip |
325 |
|
|
\abovedisplayshortskip 4\p@ \@minus \p@ |
326 |
|
|
\belowdisplayshortskip 4\p@ \@minus \p@ |
327 |
|
|
\def\@listi{% |
328 |
|
|
\leftmargin\leftmargini |
329 |
|
|
\topsep 4\p@ \@plus \p@ |
330 |
|
|
\parsep \z@ \@plus .5\p@ |
331 |
|
|
\itemsep \p@ \@plus .7\p@ |
332 |
|
|
}% |
333 |
|
|
}% |
334 |
|
|
\fi |
335 |
|
|
\if@ll |
336 |
|
|
\newcommand\scriptsize{\@setfontsize\scriptsize\@viipt{8\p@}} |
337 |
|
|
\newcommand\tiny{\@setfontsize\tiny\@vpt{6\p@}} |
338 |
|
|
\newcommand\large{\@setfontsize\large\@xiipt{14\p@}} |
339 |
|
|
\newcommand\Large{\@setfontsize\Large\@xivpt{18\p@}} |
340 |
|
|
\newcommand\LARGE{\@setfontsize\LARGE\@xviipt{20\p@}} |
341 |
|
|
\newcommand\huge{\@setfontsize\huge\@xxpt{25\p@}} |
342 |
|
|
\newcommand\Huge{\@setfontsize\Huge\@xxvpt{30\p@}} |
343 |
|
|
\else |
344 |
|
|
\def\scriptsize{\@setsize\scriptsize{8\p@}\viipt\@viipt} |
345 |
|
|
\def\tiny{\@setsize\tiny{6\p@}\vpt\@vpt} |
346 |
|
|
\def\large{\@setsize\large{14\p@}\xiipt\@xiipt} |
347 |
|
|
\def\Large{\@setsize\Large{18\p@}\xivpt\@xivpt} |
348 |
|
|
\def\LARGE{\@setsize\LARGE{20\p@}\xviipt\@xviipt} |
349 |
|
|
\def\huge{\@setsize\huge{25\p@}\xxpt\@xxpt} |
350 |
|
|
\def\Huge{\@setsize\Huge{30\p@}\xxvpt\@xxvpt} |
351 |
|
|
\fi |
352 |
|
|
\normalsize |
353 |
|
|
|
354 |
|
|
\oddsidemargin .75in |
355 |
|
|
\evensidemargin .75in |
356 |
|
|
\marginparwidth .5in |
357 |
|
|
\marginparsep .125in |
358 |
|
|
\topmargin .25in |
359 |
|
|
\headheight 12\p@ |
360 |
|
|
\headsep 16\p@ |
361 |
|
|
%% CHANGES ON NEXT LINES |
362 |
|
|
\if@ll |
363 |
|
|
\newlength{\footheight}% |
364 |
|
|
\else |
365 |
|
|
\fi |
366 |
|
|
%% END CHANGES |
367 |
|
|
\footheight 10\p@ |
368 |
|
|
\footskip 15\p@ |
369 |
|
|
|
370 |
|
|
\textheight 47pc |
371 |
|
|
\textwidth 30pc |
372 |
|
|
\columnsep 10\p@ |
373 |
|
|
\columnseprule 0\p@ |
374 |
|
|
|
375 |
|
|
\footnotesep 7\p@ |
376 |
|
|
\skip\footins 15\p@ plus 4\p@ minus 3\p@ |
377 |
|
|
|
378 |
|
|
\floatsep 12\p@ plus 2\p@ minus 2\p@ |
379 |
|
|
\textfloatsep \floatsep |
380 |
|
|
|
381 |
|
|
\intextsep 1pc plus 1pc |
382 |
|
|
|
383 |
|
|
%% CHANGES ON NEXT LINES |
384 |
|
|
\if@ll |
385 |
|
|
\newlength{\@maxsep}% |
386 |
|
|
\else |
387 |
|
|
\fi |
388 |
|
|
%% END CHANGES |
389 |
|
|
\@maxsep 1pc |
390 |
|
|
|
391 |
|
|
\dblfloatsep 12\p@ plus 2\p@ minus 2\p@ |
392 |
|
|
|
393 |
|
|
\dbltextfloatsep 20\p@ plus 2\p@ minus 4\p@ |
394 |
|
|
|
395 |
|
|
%% CHANGES ON NEXT LINES |
396 |
|
|
\if@ll |
397 |
|
|
\newlength{\@dblmaxsep}% |
398 |
|
|
\else |
399 |
|
|
\fi |
400 |
|
|
%% END CHANGES |
401 |
|
|
\@dblmaxsep 20\p@ |
402 |
|
|
|
403 |
|
|
\@fptop 0\p@ plus 1fil |
404 |
|
|
|
405 |
|
|
\@fpsep 1pc plus 2fil |
406 |
|
|
|
407 |
|
|
\@fpbot 0\p@ plus 1fil |
408 |
|
|
|
409 |
|
|
\@dblfptop 0\p@ plus 1fil |
410 |
|
|
|
411 |
|
|
\@dblfpsep 8\p@ plus 2fil |
412 |
|
|
|
413 |
|
|
\@dblfpbot 0\p@ plus 1fil |
414 |
|
|
|
415 |
|
|
\marginparpush 6\p@ |
416 |
|
|
|
417 |
|
|
\parskip 0\p@ plus .1\p@ |
418 |
|
|
|
419 |
|
|
|
420 |
|
|
|
421 |
|
|
\partopsep 0\p@ |
422 |
|
|
|
423 |
|
|
\@lowpenalty 51 |
424 |
|
|
\@medpenalty 151 |
425 |
|
|
\@highpenalty 301 |
426 |
|
|
|
427 |
|
|
\@beginparpenalty -\@lowpenalty |
428 |
|
|
\@endparpenalty -\@lowpenalty |
429 |
|
|
\@itempenalty -\@lowpenalty |
430 |
|
|
\newcounter{part} |
431 |
|
|
\newcounter{section} |
432 |
|
|
\newcounter{subsection}[section] |
433 |
|
|
\newcounter{subsubsection}[subsection] |
434 |
|
|
\newcounter{paragraph}[subsubsection] |
435 |
|
|
\def\thepart{\Roman{part}} |
436 |
|
|
\def\thesection{\arabic{section}} |
437 |
|
|
\def\thesubsection{\thesection.\arabic{subsection}} |
438 |
|
|
\def\thesubsubsection{\thesubsection.\arabic{subsubsection}} |
439 |
|
|
\def\theparagraph{\thesubsubsection.\arabic{paragraph}} |
440 |
|
|
\newif\if@uchead |
441 |
|
|
\@ucheadfalse |
442 |
|
|
|
443 |
|
|
%% CHANGES: NEW NOTE |
444 |
|
|
%% NOTE: OK to use old-style font commands below, since they were |
445 |
|
|
%% suitably redefined for LaTeX2e |
446 |
|
|
%% END CHANGES |
447 |
|
|
\setcounter{secnumdepth}{3} |
448 |
|
|
\def\part{% |
449 |
|
|
\@startsection{part}{9}{\z@}{-10\p@ \@plus -4\p@ \@minus -2\p@} |
450 |
|
|
{4\p@}{\normalsize\sf\@ucheadtrue}% |
451 |
|
|
} |
452 |
|
|
\def\section{% |
453 |
|
|
\@startsection{section}{1}{\z@}{-10\p@ \@plus -4\p@ \@minus -2\p@}% |
454 |
|
|
{4\p@}{\normalsize\sf\@ucheadtrue}% |
455 |
|
|
} |
456 |
|
|
\def\subsection{% |
457 |
|
|
\@startsection{subsection}{2}{\z@}{-8\p@ \@plus -2\p@ \@minus -\p@} |
458 |
|
|
{4\p@}{\normalsize\sf}% |
459 |
|
|
} |
460 |
|
|
\def\subsubsection{% |
461 |
|
|
\@startsection{subsubsection}{3}{\parindent}{6\p@ \@plus \p@}% |
462 |
|
|
{-5\p@}{\normalsize\it}% |
463 |
|
|
} |
464 |
|
|
\def\paragraph{% |
465 |
|
|
\@startsection{paragraph}{3}{\parindent}{6\p@ \@plus \p@}% |
466 |
|
|
{-5\p@}{\normalsize\it}% |
467 |
|
|
} |
468 |
|
|
\let\@period=. |
469 |
|
|
\def\@startsection#1#2#3#4#5#6{% |
470 |
|
|
\if@noskipsec |
471 |
|
|
\global\let\@period\@empty |
472 |
|
|
\leavevmode |
473 |
|
|
\global\let\@period.% |
474 |
|
|
\fi |
475 |
|
|
\par |
476 |
|
|
\@tempskipa #4\relax |
477 |
|
|
\@afterindenttrue |
478 |
|
|
\ifdim \@tempskipa <\z@ |
479 |
|
|
\@tempskipa -\@tempskipa |
480 |
|
|
\@afterindentfalse |
481 |
|
|
\fi |
482 |
|
|
\if@nobreak |
483 |
|
|
\everypar{}% |
484 |
|
|
\else |
485 |
|
|
\addpenalty\@secpenalty |
486 |
|
|
\addvspace\@tempskipa |
487 |
|
|
\fi |
488 |
|
|
\@ifstar |
489 |
|
|
{\@ssect{#3}{#4}{#5}{#6}} |
490 |
|
|
{\@dblarg{\@sect{#1}{#2}{#3}{#4}{#5}{#6}}}% |
491 |
|
|
} |
492 |
|
|
\def\@sect#1#2#3#4#5#6[#7]#8{% |
493 |
|
|
\ifnum #2>\c@secnumdepth |
494 |
|
|
\let\@svsec\@empty |
495 |
|
|
\else |
496 |
|
|
\refstepcounter{#1}% |
497 |
|
|
\edef\@svsec{% |
498 |
|
|
\begingroup |
499 |
|
|
\ifnum#2>2 \noexpand\rm \fi |
500 |
|
|
\csname the#1\endcsname |
501 |
|
|
\endgroup |
502 |
|
|
\ifnum #2=1\relax .\fi |
503 |
|
|
\hskip .5em |
504 |
|
|
}% |
505 |
|
|
\fi |
506 |
|
|
\@tempskipa #5\relax |
507 |
|
|
\ifdim \@tempskipa>\z@ |
508 |
|
|
\begingroup |
509 |
|
|
#6\relax |
510 |
|
|
\@hangfrom{\hskip #3\relax\@svsec}% |
511 |
|
|
\begingroup |
512 |
|
|
\interlinepenalty \@M |
513 |
|
|
\if@uchead |
514 |
|
|
\uppercase{#8}% |
515 |
|
|
\else |
516 |
|
|
#8% |
517 |
|
|
\fi |
518 |
|
|
\par |
519 |
|
|
\endgroup |
520 |
|
|
\endgroup |
521 |
|
|
\csname #1mark\endcsname{#7}% |
522 |
|
|
\addcontentsline{toc}{#1}{% |
523 |
|
|
\ifnum #2>\c@secnumdepth \else |
524 |
|
|
\protect\numberline{\csname the#1\endcsname}% |
525 |
|
|
\fi |
526 |
|
|
#7% |
527 |
|
|
}% |
528 |
|
|
\else |
529 |
|
|
\def\@svsechd{% |
530 |
|
|
#6% |
531 |
|
|
\hskip #3\relax |
532 |
|
|
\@svsec |
533 |
|
|
\if@uchead |
534 |
|
|
\uppercase{#8}% |
535 |
|
|
\else |
536 |
|
|
#8% |
537 |
|
|
\fi |
538 |
|
|
\csname #1mark\endcsname{#7}% |
539 |
|
|
\addcontentsline{toc}{#1}{% |
540 |
|
|
\ifnum #2>\c@secnumdepth \else |
541 |
|
|
\protect\numberline{\csname the#1\endcsname}% |
542 |
|
|
\fi |
543 |
|
|
#7% |
544 |
|
|
}% |
545 |
|
|
}% |
546 |
|
|
\fi |
547 |
|
|
\@xsect{#5}% |
548 |
|
|
} |
549 |
|
|
\def\@xsect#1{% |
550 |
|
|
\@tempskipa #1\relax |
551 |
|
|
\ifdim \@tempskipa>\z@ |
552 |
|
|
\par |
553 |
|
|
\nobreak |
554 |
|
|
\vskip \@tempskipa |
555 |
|
|
\@afterheading |
556 |
|
|
\else |
557 |
|
|
\global\@nobreakfalse |
558 |
|
|
\global\@noskipsectrue |
559 |
|
|
\everypar{% |
560 |
|
|
\if@noskipsec |
561 |
|
|
\global\@noskipsecfalse |
562 |
|
|
\clubpenalty\@M |
563 |
|
|
\hskip -\parindent |
564 |
|
|
\begingroup |
565 |
|
|
\@svsechd |
566 |
|
|
\@period |
567 |
|
|
\endgroup |
568 |
|
|
\unskip |
569 |
|
|
\@tempskipa #1\relax |
570 |
|
|
\hskip -\@tempskipa |
571 |
|
|
\else |
572 |
|
|
\clubpenalty \@clubpenalty |
573 |
|
|
\everypar{}% |
574 |
|
|
\fi |
575 |
|
|
}% |
576 |
|
|
\fi |
577 |
|
|
\ignorespaces |
578 |
|
|
} |
579 |
|
|
\def\@trivlist{% |
580 |
|
|
\@topsepadd\topsep |
581 |
|
|
\if@noskipsec |
582 |
|
|
\global\let\@period\@empty |
583 |
|
|
\leavevmode |
584 |
|
|
\global\let\@period.% |
585 |
|
|
\fi |
586 |
|
|
\ifvmode |
587 |
|
|
\advance\@topsepadd\partopsep |
588 |
|
|
\else |
589 |
|
|
\unskip |
590 |
|
|
\par |
591 |
|
|
\fi |
592 |
|
|
\if@inlabel |
593 |
|
|
\@noparitemtrue |
594 |
|
|
\@noparlisttrue |
595 |
|
|
\else |
596 |
|
|
\@noparlistfalse |
597 |
|
|
\@topsep\@topsepadd |
598 |
|
|
\fi |
599 |
|
|
\advance\@topsep \parskip |
600 |
|
|
\leftskip\z@skip |
601 |
|
|
\rightskip\@rightskip |
602 |
|
|
\parfillskip\@flushglue |
603 |
|
|
\@setpar{\if@newlist\else{\@@par}\fi} |
604 |
|
|
\global\@newlisttrue |
605 |
|
|
\@outerparskip\parskip |
606 |
|
|
} |
607 |
|
|
\newfont{\apbf}{cmbx9} |
608 |
|
|
\def\@withappendix#1{\rm A--\number #1} |
609 |
|
|
\def\appenheader{% |
610 |
|
|
\global\@topnum\z@ |
611 |
|
|
\global\@botroom \textheight |
612 |
|
|
\begin{@float}{figure}[b] |
613 |
|
|
\footnotesize |
614 |
|
|
\newfont{\sc}{cmcsc10}% %%* ACK! |
615 |
|
|
\parindent\z@ |
616 |
|
|
\null |
617 |
|
|
\vskip -\textfloatsep |
618 |
|
|
\vskip 11\p@ |
619 |
|
|
\hrule \@height .2\p@ \@width 30pc |
620 |
|
|
\vskip 2\p@ |
621 |
|
|
\rule{\z@}{10\p@}% |
622 |
|
|
\ignorespaces |
623 |
|
|
} |
624 |
|
|
|
625 |
|
|
\def\endappenheader{% |
626 |
|
|
\end{@float} |
627 |
|
|
\global\let\appendixhead\@empty |
628 |
|
|
} |
629 |
|
|
\long\def\appendixhead#1#2#3#4{% |
630 |
|
|
\section*{Appendix} |
631 |
|
|
|
632 |
|
|
An appendix to this paper is available in electronic form |
633 |
|
|
(PostScript$^{\mbox{\tiny TM}}$). Any of the following methods |
634 |
|
|
may be used to obtain it; or see the inside back cover of a |
635 |
|
|
current issue for up-to-date instructions. |
636 |
|
|
|
637 |
|
|
\begin{itemize} |
638 |
|
|
\item By anonymous ftp from {\apbf acm.org}, file |
639 |
|
|
{\apbf [pubs.journals.#1.append]p#2.ps} |
640 |
|
|
\item Send electronic mail to {\apbf mailserve@acm.org} containing |
641 |
|
|
the line\\ {\apbf send~[anonymous.pubs.journals.#1.append]p#2.ps} |
642 |
|
|
\item By {\it Gopher} from {\apbf acm.org} |
643 |
|
|
\item By anonymous ftp from {\apbf ftp.cs.princeton.edu}, |
644 |
|
|
file {\apbf pub/#1/append/p#2.ps} |
645 |
|
|
\item Hardcopy from {\it Article Express}, for a fee: phone |
646 |
|
|
800-238-3458, fax 201-216-8526, or write P.O.~Box~1801, Hoboken NJ |
647 |
|
|
07030; and request {\sc acm-#1-appendix-{\small #2}}. |
648 |
|
|
\end{itemize} |
649 |
|
|
|
650 |
|
|
\clearpage |
651 |
|
|
\pagenumbering{withappendix} |
652 |
|
|
\appendix |
653 |
|
|
\par |
654 |
|
|
\noindent{\sc this document is the appendix to the following |
655 |
|
|
paper:} |
656 |
|
|
\hfill |
657 |
|
|
\vskip 1em |
658 |
|
|
\vbox{\sf \parindent\z@\@title}% |
659 |
|
|
\vskip .5em |
660 |
|
|
\vbox{\sf \parindent\z@\@author}% |
661 |
|
|
\vskip .5em\noindent |
662 |
|
|
\vskip 10\p@\noindent #4 |
663 |
|
|
\vskip 11\p@\noindent |
664 |
|
|
\hrule \@height .2\p@ |
665 |
|
|
\par |
666 |
|
|
\begin{bottomstuff} |
667 |
|
|
\permission |
668 |
|
|
\copyright #3 ACM |
669 |
|
|
\par |
670 |
|
|
\end{bottomstuff} |
671 |
|
|
} |
672 |
|
|
\def\appendix{% |
673 |
|
|
\par |
674 |
|
|
\part{Appendix}% |
675 |
|
|
\par |
676 |
|
|
\setcounter{section}{0}% |
677 |
|
|
\setcounter{subsection}{0}% |
678 |
|
|
\def\thesection{\Alph{section}}% |
679 |
|
|
\def\thesubsection{\thesection.\arabic{subsection}}% |
680 |
|
|
} |
681 |
|
|
\labelsep 5\p@ |
682 |
|
|
|
683 |
|
|
\settowidth{\leftmargini}{(9)} |
684 |
|
|
\addtolength\leftmargini\labelsep |
685 |
|
|
|
686 |
|
|
\settowidth{\leftmarginii}{(b)} |
687 |
|
|
\addtolength\leftmarginii\labelsep |
688 |
|
|
|
689 |
|
|
\leftmarginiii \leftmarginii |
690 |
|
|
\leftmarginiv \leftmarginii |
691 |
|
|
\leftmarginv \leftmarginii |
692 |
|
|
\leftmarginvi \leftmarginii |
693 |
|
|
\leftmargin \leftmargini |
694 |
|
|
|
695 |
|
|
\labelwidth\leftmargini |
696 |
|
|
\advance\labelwidth-\labelsep |
697 |
|
|
\def\@listI{% |
698 |
|
|
\leftmargin\leftmargini |
699 |
|
|
\parsep \z@ \@plus \p@ |
700 |
|
|
\topsep 6\p@ \@plus 2\p@ \@minus 2\p@ |
701 |
|
|
\itemsep 2\p@ \@plus \p@ \@minus .5\p@ |
702 |
|
|
} |
703 |
|
|
|
704 |
|
|
\let\@listi\@listI |
705 |
|
|
|
706 |
|
|
\@listi |
707 |
|
|
\def\@listii{% |
708 |
|
|
\leftmargin\leftmarginii |
709 |
|
|
\labelwidth\leftmarginii |
710 |
|
|
\advance\labelwidth-\labelsep |
711 |
|
|
\topsep \z@ \@plus \p@ |
712 |
|
|
\parsep \z@ \@plus .5\p@ |
713 |
|
|
\itemsep \parsep |
714 |
|
|
} |
715 |
|
|
\def\@listiii{% |
716 |
|
|
\leftmargin\leftmarginiii |
717 |
|
|
\labelwidth\leftmarginiii |
718 |
|
|
\advance\labelwidth-\labelsep |
719 |
|
|
\topsep \z@ \@plus \p@ |
720 |
|
|
\parsep \z@ \@plus .5\p@ |
721 |
|
|
\itemsep \parsep |
722 |
|
|
} |
723 |
|
|
\def\@listiv{% |
724 |
|
|
\leftmargin\leftmarginiv |
725 |
|
|
\labelwidth\leftmarginiv |
726 |
|
|
\advance\labelwidth-\labelsep |
727 |
|
|
} |
728 |
|
|
\def\@listv{% |
729 |
|
|
\leftmargin\leftmarginv |
730 |
|
|
\labelwidth\leftmarginv |
731 |
|
|
\advance\labelwidth-\labelsep |
732 |
|
|
} |
733 |
|
|
\def\@listvi{% |
734 |
|
|
\leftmargin\leftmarginvi |
735 |
|
|
\labelwidth\leftmarginvi |
736 |
|
|
\advance\labelwidth-\labelsep |
737 |
|
|
} |
738 |
|
|
\def\enumerate{% |
739 |
|
|
\ifnum \@enumdepth >3 |
740 |
|
|
\@toodeep |
741 |
|
|
\else |
742 |
|
|
\advance\@enumdepth \@ne |
743 |
|
|
\edef\@enumctr{enum\romannumeral\the\@enumdepth}% |
744 |
|
|
\list{\csname label\@enumctr\endcsname}{% |
745 |
|
|
\usecounter{\@enumctr}% |
746 |
|
|
\def\makelabel##1{##1\hss}% |
747 |
|
|
}% |
748 |
|
|
\fi |
749 |
|
|
} |
750 |
|
|
|
751 |
|
|
\let\endenumerate\endlist |
752 |
|
|
\def\longenum{% |
753 |
|
|
\ifnum \@enumdepth >3 |
754 |
|
|
\@toodeep |
755 |
|
|
\else |
756 |
|
|
\advance\@enumdepth \@ne |
757 |
|
|
\edef\@enumctr{enum\romannumeral\the\@enumdepth}% |
758 |
|
|
\list{\csname label\@enumctr\endcsname}{% |
759 |
|
|
\usecounter{\@enumctr}% |
760 |
|
|
\labelwidth\z@ |
761 |
|
|
}% |
762 |
|
|
\fi |
763 |
|
|
} |
764 |
|
|
|
765 |
|
|
\let\endlongenum\endlist |
766 |
|
|
\def\labelenumi{(\arabic{enumi})} |
767 |
|
|
\def\theenumi{\arabic{enumi}} |
768 |
|
|
\def\labelenumii{(\alph{enumii})} |
769 |
|
|
\def\theenumii{\alph{enumii}} |
770 |
|
|
\def\p@enumii{\theenumi} |
771 |
|
|
\def\labelenumiii{\roman{enumiii}.} |
772 |
|
|
\def\theenumiii{\roman{enumiii}} |
773 |
|
|
\def\p@enumiii{\theenumi(\theenumii)} |
774 |
|
|
\def\labelenumiv{\Alph{enumiv}.} |
775 |
|
|
\def\theenumiv{\Alph{enumiv}} |
776 |
|
|
\def\p@enumiv{\p@enumiii\theenumiii} |
777 |
|
|
\def\itemize{% |
778 |
|
|
\list{---\hskip -\labelsep}{% |
779 |
|
|
\settowidth{\leftmargin}{---}% |
780 |
|
|
\labelwidth\leftmargin |
781 |
|
|
\addtolength{\labelwidth}{-\labelsep}% |
782 |
|
|
}% |
783 |
|
|
} |
784 |
|
|
|
785 |
|
|
\let\enditemize\endlist |
786 |
|
|
\def\longitem{% |
787 |
|
|
\list{---}{% |
788 |
|
|
\labelwidth\z@ |
789 |
|
|
\leftmargin\z@ |
790 |
|
|
\itemindent\parindent |
791 |
|
|
\advance\itemindent\labelsep |
792 |
|
|
}% |
793 |
|
|
} |
794 |
|
|
|
795 |
|
|
\let\endlongitem\endlist |
796 |
|
|
\def\verse{% |
797 |
|
|
\let\\=\@centercr |
798 |
|
|
\list{}{% |
799 |
|
|
\leftmargin 2pc |
800 |
|
|
\itemindent -1.5em |
801 |
|
|
\listparindent \itemindent |
802 |
|
|
\rightmargin\leftmargin |
803 |
|
|
\advance\leftmargin 1.5em |
804 |
|
|
}% |
805 |
|
|
\item[] |
806 |
|
|
} |
807 |
|
|
|
808 |
|
|
\let\endverse\endlist |
809 |
|
|
\def\quotation{% |
810 |
|
|
\list{}{% |
811 |
|
|
\leftmargin 2pc |
812 |
|
|
\listparindent .5em |
813 |
|
|
\itemindent\listparindent |
814 |
|
|
\rightmargin\leftmargin |
815 |
|
|
\parsep \z@ \@plus \p@ |
816 |
|
|
}% |
817 |
|
|
\item[] |
818 |
|
|
} |
819 |
|
|
|
820 |
|
|
\let\endquotation=\endlist |
821 |
|
|
\def\quote{% |
822 |
|
|
\list{}{% |
823 |
|
|
\leftmargin 2pc |
824 |
|
|
\rightmargin\leftmargin |
825 |
|
|
}% |
826 |
|
|
\item[] |
827 |
|
|
} |
828 |
|
|
|
829 |
|
|
\let\endquote=\endlist |
830 |
|
|
|
831 |
|
|
% This version of describe puts unwanted periods and the |
832 |
|
|
% indenting is not aesthetic. See replacment below. |
833 |
|
|
%\def\description{% |
834 |
|
|
% \list{}{% |
835 |
|
|
% \listparindent\parindent |
836 |
|
|
% \labelwidth\z@ |
837 |
|
|
% \leftmargin\z@ |
838 |
|
|
% \itemindent\parindent |
839 |
|
|
% \advance\itemindent\labelsep |
840 |
|
|
% \def\makelabel##1{\it ##1.}% |
841 |
|
|
% }% |
842 |
|
|
%} |
843 |
|
|
%\let\enddescription\endlist |
844 |
|
|
|
845 |
|
|
% SUBSTITUTE VERSION |
846 |
|
|
% GERRY MURRAY - - NOVEMBER 1999 |
847 |
|
|
\def\descriptionlabel#1{% |
848 |
|
|
\hspace\labelsep \normalfont\bfseries #1% |
849 |
|
|
}% |
850 |
|
|
\newenvironment{description}{% |
851 |
|
|
\list{}{% |
852 |
|
|
\labelwidth\z@ \itemindent-\leftmargin |
853 |
|
|
\let\makelabel\descriptionlabel |
854 |
|
|
}% |
855 |
|
|
}{% |
856 |
|
|
\endlist |
857 |
|
|
}% |
858 |
|
|
% END OF SUBSTITUTE VERSION |
859 |
|
|
|
860 |
|
|
\def\describe#1{% |
861 |
|
|
\list{}{% |
862 |
|
|
\listparindent\parindent |
863 |
|
|
\settowidth{\labelwidth}{#1}% |
864 |
|
|
\leftmargin\labelwidth |
865 |
|
|
\addtolength\leftmargin\labelsep |
866 |
|
|
\def\makelabel##1{##1\hfil}% |
867 |
|
|
}% |
868 |
|
|
} |
869 |
|
|
|
870 |
|
|
\let\enddescribe\endlist |
871 |
|
|
|
872 |
|
|
\def\program{% |
873 |
|
|
\ifx\@currsize\normalsize |
874 |
|
|
\small |
875 |
|
|
\else |
876 |
|
|
\rm |
877 |
|
|
\fi |
878 |
|
|
\tabbing |
879 |
|
|
} |
880 |
|
|
|
881 |
|
|
\let\endprogram\endtabbing |
882 |
|
|
|
883 |
|
|
\def\@begintheorem#1#2{% |
884 |
|
|
\trivlist |
885 |
|
|
\item[% |
886 |
|
|
\hskip 10\p@ |
887 |
|
|
\hskip \labelsep |
888 |
|
|
{\sc #1\hskip 5\p@\relax#2.}% |
889 |
|
|
] |
890 |
|
|
\it |
891 |
|
|
} |
892 |
|
|
\def\@opargbegintheorem#1#2#3{% |
893 |
|
|
\trivlist |
894 |
|
|
\item[% |
895 |
|
|
\hskip 10\p@ |
896 |
|
|
\hskip \labelsep |
897 |
|
|
{\sc #1\ #2% % Gil Neiger (for numbering collaries and such) Sept. 1999 |
898 |
|
|
\savebox\@tempboxa{(#3)}% GN |
899 |
|
|
\ifdim \wd\@tempboxa>\z@ |
900 |
|
|
\hskip5\p@\relax |
901 |
|
|
\box\@tempboxa |
902 |
|
|
\fi.}% |
903 |
|
|
] |
904 |
|
|
\it |
905 |
|
|
} |
906 |
|
|
\newif\if@qeded |
907 |
|
|
\global\@qededfalse |
908 |
|
|
\def\proof{% |
909 |
|
|
\global\@qededfalse |
910 |
|
|
\@ifnextchar[{\@xproof}{\@proof}% |
911 |
|
|
} |
912 |
|
|
|
913 |
|
|
\def\endproof{% |
914 |
|
|
\if@qeded\else\qed\fi |
915 |
|
|
\endtrivlist |
916 |
|
|
} |
917 |
|
|
\def\@proof{% |
918 |
|
|
\trivlist |
919 |
|
|
\item[% |
920 |
|
|
\hskip 10\p@ |
921 |
|
|
\hskip \labelsep |
922 |
|
|
{\sc Proof.}% |
923 |
|
|
] |
924 |
|
|
\ignorespaces |
925 |
|
|
} |
926 |
|
|
\def\@xproof[#1]{% |
927 |
|
|
\trivlist |
928 |
|
|
\item[\hskip 10\p@\hskip \labelsep{\sc Proof #1.}]% |
929 |
|
|
\ignorespaces |
930 |
|
|
} |
931 |
|
|
\def\qed{% |
932 |
|
|
\unskip |
933 |
|
|
\kern 10\p@ |
934 |
|
|
\begingroup |
935 |
|
|
\unitlength\p@ |
936 |
|
|
\linethickness{.4\p@}% |
937 |
|
|
\framebox(6,6){}% |
938 |
|
|
\endgroup |
939 |
|
|
\global\@qededtrue |
940 |
|
|
} |
941 |
|
|
\def\newdef#1#2{% |
942 |
|
|
\expandafter\@ifdefinable\csname #1\endcsname |
943 |
|
|
{\@definecounter{#1}% |
944 |
|
|
\expandafter\xdef\csname the#1\endcsname{\@thmcounter{#1}}% |
945 |
|
|
\global\@namedef{#1}{\@defthm{#1}{#2}}% |
946 |
|
|
\global\@namedef{end#1}{\@endtheorem}% |
947 |
|
|
}% |
948 |
|
|
} |
949 |
|
|
\def\@defthm#1#2{% |
950 |
|
|
\refstepcounter{#1}% |
951 |
|
|
\@ifnextchar[{\@ydefthm{#1}{#2}}{\@xdefthm{#1}{#2}}% |
952 |
|
|
} |
953 |
|
|
\def\@xdefthm#1#2{% |
954 |
|
|
\@begindef{#2}{\csname the#1\endcsname}% |
955 |
|
|
\ignorespaces |
956 |
|
|
} |
957 |
|
|
\def\@ydefthm#1#2[#3]{% |
958 |
|
|
\trivlist |
959 |
|
|
\item[% |
960 |
|
|
\hskip 10\p@ |
961 |
|
|
\hskip \labelsep |
962 |
|
|
{\it #2% |
963 |
|
|
\savebox\@tempboxa{#3}% |
964 |
|
|
\ifdim \wd\@tempboxa>\z@ |
965 |
|
|
\ \box\@tempboxa |
966 |
|
|
\fi.% |
967 |
|
|
}]% |
968 |
|
|
\ignorespaces |
969 |
|
|
} |
970 |
|
|
\def\@begindef#1#2{% |
971 |
|
|
\trivlist |
972 |
|
|
\item[% |
973 |
|
|
\hskip 10\p@ |
974 |
|
|
\hskip \labelsep |
975 |
|
|
{\it #1\ \rm #2.}% |
976 |
|
|
]% |
977 |
|
|
} |
978 |
|
|
\def\theequation{\arabic{equation}} |
979 |
|
|
\def\titlepage{% |
980 |
|
|
\@restonecolfalse |
981 |
|
|
\if@twocolumn |
982 |
|
|
\@restonecoltrue |
983 |
|
|
\onecolumn |
984 |
|
|
\else |
985 |
|
|
\newpage |
986 |
|
|
\fi |
987 |
|
|
\thispagestyle{empty}% |
988 |
|
|
\c@page\z@ |
989 |
|
|
} |
990 |
|
|
|
991 |
|
|
\def\endtitlepage{% |
992 |
|
|
\if@restonecol |
993 |
|
|
\twocolumn |
994 |
|
|
\else |
995 |
|
|
\newpage |
996 |
|
|
\fi |
997 |
|
|
} |
998 |
|
|
\arraycolsep 2.5\p@ |
999 |
|
|
|
1000 |
|
|
\tabcolsep 6\p@ |
1001 |
|
|
\arrayrulewidth .4\p@ |
1002 |
|
|
\doublerulesep 2\p@ |
1003 |
|
|
\tabbingsep \labelsep |
1004 |
|
|
|
1005 |
|
|
\skip\@mpfootins = \skip\footins |
1006 |
|
|
\fboxsep = 3pt \fboxrule = .4\p@ |
1007 |
|
|
\def\@pnumwidth{1.55em} |
1008 |
|
|
\def\@tocrmarg {2.55em} |
1009 |
|
|
\def\@dotsep{4.5} |
1010 |
|
|
\setcounter{tocdepth}{3} |
1011 |
|
|
\def\tableofcontents{% |
1012 |
|
|
\section*{Contents\@mkboth{CONTENTS}{CONTENTS}} |
1013 |
|
|
\@starttoc{toc}% |
1014 |
|
|
} |
1015 |
|
|
\def\l@part#1#2{% |
1016 |
|
|
\addpenalty\@secpenalty |
1017 |
|
|
\addvspace{2.25em \@plus \p@}% |
1018 |
|
|
\begingroup |
1019 |
|
|
\@tempdima 3em |
1020 |
|
|
\parindent \z@ |
1021 |
|
|
\rightskip \@pnumwidth |
1022 |
|
|
\parfillskip -\@pnumwidth |
1023 |
|
|
\begingroup |
1024 |
|
|
\large |
1025 |
|
|
\bf |
1026 |
|
|
\leavevmode |
1027 |
|
|
#1% |
1028 |
|
|
\hfil |
1029 |
|
|
\hb@xt@\@pnumwidth{\hss #2}% |
1030 |
|
|
\endgroup |
1031 |
|
|
\par |
1032 |
|
|
\nobreak |
1033 |
|
|
\endgroup |
1034 |
|
|
} |
1035 |
|
|
\def\l@section#1#2{% |
1036 |
|
|
\addpenalty\@secpenalty |
1037 |
|
|
\addvspace{1.0em \@plus \p@}% |
1038 |
|
|
\@tempdima 1.5em |
1039 |
|
|
\begingroup |
1040 |
|
|
\parindent \z@ |
1041 |
|
|
\rightskip \@pnumwidth |
1042 |
|
|
\parfillskip -\@pnumwidth |
1043 |
|
|
\bf |
1044 |
|
|
\leavevmode |
1045 |
|
|
#1% |
1046 |
|
|
\hfil |
1047 |
|
|
\hb@xt@\@pnumwidth{\hss #2}% |
1048 |
|
|
\par |
1049 |
|
|
\endgroup |
1050 |
|
|
} |
1051 |
|
|
\def\l@subsection{\@dottedtocline{2}{1.5em}{2.3em}} |
1052 |
|
|
|
1053 |
|
|
\def\l@subsubsection{\@dottedtocline{3}{3.8em}{3.2em}} |
1054 |
|
|
\def\listoffigures{% |
1055 |
|
|
\section*{List of Figures\@mkboth{LIST OF FIGURES}{LIST OF FIGURES}} |
1056 |
|
|
\@starttoc{lof}% |
1057 |
|
|
} |
1058 |
|
|
|
1059 |
|
|
\def\l@figure{\@dottedtocline{1}{1.5em}{2.3em}} |
1060 |
|
|
\def\listoftables{% |
1061 |
|
|
\section*{List of Tables\@mkboth{LIST OF TABLES}{LIST OF TABLES}} |
1062 |
|
|
\@starttoc{lot}% |
1063 |
|
|
} |
1064 |
|
|
|
1065 |
|
|
\let\l@table\l@figure |
1066 |
|
|
\def\thebibliography#1{% |
1067 |
|
|
\par |
1068 |
|
|
\footnotesize |
1069 |
|
|
\@startsection{subsection}{2}{\z@}{16\p@ \@plus 2\p@ \@minus \p@} |
1070 |
|
|
{2\p@}{\sf}*{\uppercase{\refname}} |
1071 |
|
|
\list{\arabic{enumi}.}{% |
1072 |
|
|
\settowidth\labelwidth{99.}% |
1073 |
|
|
\leftmargin\labelwidth |
1074 |
|
|
\advance\leftmargin\labelsep |
1075 |
|
|
\topsep \z@ |
1076 |
|
|
\parsep \z@ \@plus .1\p@ |
1077 |
|
|
\itemsep \parsep |
1078 |
|
|
\usecounter{enumi}% |
1079 |
|
|
}% |
1080 |
|
|
\def\newblock{\hskip .11em \@plus .33em \@minus .07em}% |
1081 |
|
|
\sloppy |
1082 |
|
|
\widowpenalty4500 |
1083 |
|
|
\clubpenalty4500 |
1084 |
|
|
\sfcode`\.=1000 |
1085 |
|
|
\relax |
1086 |
|
|
} |
1087 |
|
|
|
1088 |
|
|
\let\endthebibliography=\endlist |
1089 |
|
|
\newif\if@restonecol |
1090 |
|
|
\def\theindex{% |
1091 |
|
|
\@restonecoltrue |
1092 |
|
|
\if@twocolumn \@restonecolfalse \fi |
1093 |
|
|
\columnseprule \z@ |
1094 |
|
|
\columnsep 35\p@ |
1095 |
|
|
\twocolumn[\section*{Index}] |
1096 |
|
|
\@mkboth{INDEX}{INDEX}% |
1097 |
|
|
\thispagestyle{plain}% |
1098 |
|
|
\parindent\z@ |
1099 |
|
|
\parskip\z@ \@plus .3\p@\relax |
1100 |
|
|
\let\item\@idxitem |
1101 |
|
|
} |
1102 |
|
|
|
1103 |
|
|
\def\endtheindex{% |
1104 |
|
|
\if@restonecol |
1105 |
|
|
\onecolumn |
1106 |
|
|
\else |
1107 |
|
|
\clearpage |
1108 |
|
|
\fi |
1109 |
|
|
} |
1110 |
|
|
\def\@idxitem{\par\hangindent 40\p@} |
1111 |
|
|
\def\subitem{\par\hangindent 40\p@ \hspace*{20\p@}} |
1112 |
|
|
\def\subsubitem{\par\hangindent 40\p@ \hspace*{30\p@}} |
1113 |
|
|
\def\indexspace{\par \vskip 10\p@ \@plus 5\p@ \@minus 3\p@\relax} |
1114 |
|
|
\def\footnoterule{% |
1115 |
|
|
\kern-3\p@ |
1116 |
|
|
\hrule \@width 47\p@ %\@height .004\p@ |
1117 |
|
|
\kern 2.6\p@ |
1118 |
|
|
} |
1119 |
|
|
\long\def\@makefntext#1{% |
1120 |
|
|
\parindent 1em |
1121 |
|
|
\noindent $^{\@thefnmark}$#1% |
1122 |
|
|
} |
1123 |
|
|
\setcounter{topnumber}{2} |
1124 |
|
|
\def\topfraction{.89} |
1125 |
|
|
\setcounter{bottomnumber}{1} |
1126 |
|
|
\def\bottomfraction{.5} |
1127 |
|
|
\setcounter{totalnumber}{3} |
1128 |
|
|
\def\textfraction{.11} |
1129 |
|
|
\def\floatpagefraction{.6} |
1130 |
|
|
\setcounter{dbltopnumber}{2} |
1131 |
|
|
\def\dbltopfraction{.7} |
1132 |
|
|
\def\dblfloatpagefraction{.5} |
1133 |
|
|
\long\def\@makecaption#1#2{% |
1134 |
|
|
\vskip 1pc |
1135 |
|
|
\setbox\@tempboxa\hbox{#1.\hskip 1em\relax #2}% |
1136 |
|
|
\ifdim \wd\@tempboxa >\hsize |
1137 |
|
|
#1.\hskip 1em\relax #2\par |
1138 |
|
|
\else |
1139 |
|
|
\centerline{\box\@tempboxa}% |
1140 |
|
|
\fi |
1141 |
|
|
} |
1142 |
|
|
\def\nocaption{% |
1143 |
|
|
\refstepcounter\@captype |
1144 |
|
|
\par |
1145 |
|
|
\vskip 1pc |
1146 |
|
|
\centerline{\footnotesize \csname fnum@\@captype \endcsname}% |
1147 |
|
|
} |
1148 |
|
|
\newcounter{figure} |
1149 |
|
|
\def\thefigure{\@arabic\c@figure} |
1150 |
|
|
\def\fps@figure{tbp} |
1151 |
|
|
\def\ftype@figure{1} |
1152 |
|
|
\def\ext@figure{lof} |
1153 |
|
|
\def\figurename{Fig.} |
1154 |
|
|
\def\fnum@figure{\figurename~\thefigure} |
1155 |
|
|
\def\figfilename{\gdef\@figfilename} |
1156 |
|
|
\let\@figfilename\@empty |
1157 |
|
|
\if@faircopy |
1158 |
|
|
\newenvironment{figure}{% |
1159 |
|
|
\let\normalsize\footnotesize |
1160 |
|
|
\normalsize |
1161 |
|
|
\@ifnextchar[{\@figure}{\@figure[]}% |
1162 |
|
|
}{\end@float |
1163 |
|
|
\global\setbox\@currbox\vbox to\textheight{% |
1164 |
|
|
\vskip\@fptop |
1165 |
|
|
\unvbox\@currbox |
1166 |
|
|
\vskip\@fpbot |
1167 |
|
|
\noindent \fnum@figure |
1168 |
|
|
\ifx\@figfilename\@empty\else |
1169 |
|
|
: {\tt \@figfilename}% |
1170 |
|
|
\global\let\@figfilename\@empty |
1171 |
|
|
\fi |
1172 |
|
|
}% |
1173 |
|
|
} |
1174 |
|
|
\else |
1175 |
|
|
\newenvironment{figure}{% |
1176 |
|
|
\let\normalsize\footnotesize |
1177 |
|
|
\normalsize |
1178 |
|
|
\@float{figure} |
1179 |
|
|
}{\end@float} |
1180 |
|
|
\fi |
1181 |
|
|
\def\@figure[#1]{\@float{figure}[p]} |
1182 |
|
|
\expandafter\let\csname figure*\endcsname\figure |
1183 |
|
|
\expandafter\let\csname endfigure*\endcsname\endfigure |
1184 |
|
|
\newenvironment{table}{% |
1185 |
|
|
\let\normalsize\footnotesize |
1186 |
|
|
\normalsize |
1187 |
|
|
\@float{table}% |
1188 |
|
|
}{\end@float} |
1189 |
|
|
\expandafter\let\csname table*\endcsname\table |
1190 |
|
|
\expandafter\let\csname endtable*\endcsname\endtable |
1191 |
|
|
\def\thetable{\@Roman\c@table} |
1192 |
|
|
\newcounter{table} |
1193 |
|
|
\def\fps@table{tbp} |
1194 |
|
|
\def\ftype@table{2} |
1195 |
|
|
\def\ext@table{lot} |
1196 |
|
|
\def\tablename{Table} |
1197 |
|
|
\def\fnum@table{\tablename~\thetable} |
1198 |
|
|
\newdimen\@narrowfig |
1199 |
|
|
\newbox\@nfigbox |
1200 |
|
|
\newbox\@nfcapbox |
1201 |
|
|
\newif\if@nfeven |
1202 |
|
|
\def\acmtable#1{% |
1203 |
|
|
\@narrowfig #1\relax |
1204 |
|
|
\let\caption\@atcap |
1205 |
|
|
\let\nocaption\@atnocap |
1206 |
|
|
\@ifnextchar[{\@ntab}{\@ntab[\fps@table]}% |
1207 |
|
|
} |
1208 |
|
|
|
1209 |
|
|
\def\@ntab[#1]{% |
1210 |
|
|
\expandafter\table\expandafter[#1]% |
1211 |
|
|
\setbox\@nfigbox\vbox\bgroup |
1212 |
|
|
\hsize \@narrowfig |
1213 |
|
|
\@parboxrestore |
1214 |
|
|
} |
1215 |
|
|
|
1216 |
|
|
\def\endacmtable{% |
1217 |
|
|
\hb@xt@\textwidth{% |
1218 |
|
|
\hfil |
1219 |
|
|
\vbox{% |
1220 |
|
|
\hsize \@narrowfig |
1221 |
|
|
\box\@nfcapbox{% |
1222 |
|
|
\baselineskip 4\p@ |
1223 |
|
|
\hbox{\vrule \@height .4\p@ \@width \hsize}% |
1224 |
|
|
|
1225 |
|
|
}% |
1226 |
|
|
\vskip -\p@ |
1227 |
|
|
\box\@nfigbox |
1228 |
|
|
\vskip -\p@ |
1229 |
|
|
\begingroup |
1230 |
|
|
\baselineskip 4\p@ |
1231 |
|
|
\hbox{\vrule \@height .4\p@ \@width \hsize}% |
1232 |
|
|
\endgroup |
1233 |
|
|
}% |
1234 |
|
|
\hfil |
1235 |
|
|
}% |
1236 |
|
|
\end@float |
1237 |
|
|
} |
1238 |
|
|
\def\@atmakecap#1#2{% |
1239 |
|
|
\setbox\@tempboxa\hbox{#1.\hskip 1em\relax #2}% |
1240 |
|
|
\ifdim \wd\@tempboxa >\hsize |
1241 |
|
|
\sloppy #1.\hskip 1em\relax #2 \par |
1242 |
|
|
\else |
1243 |
|
|
\centerline{\box\@tempboxa}% |
1244 |
|
|
\fi |
1245 |
|
|
} |
1246 |
|
|
\def\@atcap{% |
1247 |
|
|
\par |
1248 |
|
|
\egroup |
1249 |
|
|
\refstepcounter\@captype |
1250 |
|
|
\@dblarg{\@atcapx\@captype}% |
1251 |
|
|
} |
1252 |
|
|
\long\def\@atcapx#1[#2]#3{% |
1253 |
|
|
\addcontentsline{\csname ext@#1\endcsname}{#1}{% |
1254 |
|
|
\protect\numberline{\csname the#1\endcsname}{\ignorespaces #2}% |
1255 |
|
|
}% |
1256 |
|
|
\setbox\@nfcapbox\vbox{% |
1257 |
|
|
\hsize \wd\@nfigbox |
1258 |
|
|
\@parboxrestore |
1259 |
|
|
\@atmakecap{\csname fnum@#1\endcsname}{\ignorespaces #3}% |
1260 |
|
|
\par |
1261 |
|
|
}% |
1262 |
|
|
} |
1263 |
|
|
\def\@atnocap{% |
1264 |
|
|
\egroup |
1265 |
|
|
\refstepcounter\@captype |
1266 |
|
|
\setbox\@nfcapbox\vbox{% |
1267 |
|
|
\hsize \wd\@nfigbox |
1268 |
|
|
\centerline{\footnotesize \fnum@table} |
1269 |
|
|
}% |
1270 |
|
|
} |
1271 |
|
|
\def\narrowfig#1{% |
1272 |
|
|
\@narrowfig #1\relax |
1273 |
|
|
\let\caption\@nfcap |
1274 |
|
|
\let\nocaption\@nfnocap |
1275 |
|
|
\@ifnextchar[{\@nfig}{\@nfig[\fps@figure]}% |
1276 |
|
|
} |
1277 |
|
|
|
1278 |
|
|
\def\@nfig[#1]{% |
1279 |
|
|
\expandafter\figure\expandafter[#1]% |
1280 |
|
|
\setbox\@nfigbox\vbox\bgroup |
1281 |
|
|
\hsize\@narrowfig |
1282 |
|
|
\@parboxrestore |
1283 |
|
|
} |
1284 |
|
|
|
1285 |
|
|
\def\endnarrowfig{% |
1286 |
|
|
\hb@xt@\textwidth{% |
1287 |
|
|
\if@nfeven |
1288 |
|
|
\box\@nfcapbox \hfil \box\@nfigbox |
1289 |
|
|
\else |
1290 |
|
|
\box\@nfigbox \hfil \box\@nfcapbox |
1291 |
|
|
\fi |
1292 |
|
|
}% |
1293 |
|
|
\endfigure |
1294 |
|
|
} |
1295 |
|
|
\def\@nfcap{% |
1296 |
|
|
\par |
1297 |
|
|
\egroup |
1298 |
|
|
\refstepcounter\@captype |
1299 |
|
|
\@dblarg{\@nfcapx\@captype}% |
1300 |
|
|
} |
1301 |
|
|
\def\@nfmakecap #1#2{% |
1302 |
|
|
\setbox\@tempboxa\hbox{#1.\hskip 1em\relax #2}% |
1303 |
|
|
\ifdim \wd\@tempboxa >\hsize |
1304 |
|
|
\sloppy #1.\hskip 1em\relax #2 \par |
1305 |
|
|
\else |
1306 |
|
|
\@@line{% |
1307 |
|
|
\if@nfeven\else\hfil\fi |
1308 |
|
|
\box\@tempboxa |
1309 |
|
|
\if@nfeven\hfil\fi |
1310 |
|
|
}% |
1311 |
|
|
\fi |
1312 |
|
|
} |
1313 |
|
|
\long\def\@nfcapx#1[#2]#3{% |
1314 |
|
|
\addcontentsline{\csname ext@#1\endcsname}{#1}{% |
1315 |
|
|
\protect\numberline{\csname the#1\endcsname}{\ignorespaces #2}% |
1316 |
|
|
}% |
1317 |
|
|
\@seteven |
1318 |
|
|
\setbox\@nfcapbox\vbox to \ht\@nfigbox{% |
1319 |
|
|
\hsize \textwidth |
1320 |
|
|
\advance\hsize -2pc |
1321 |
|
|
\advance\hsize -\wd\@nfigbox |
1322 |
|
|
\@parboxrestore |
1323 |
|
|
\vfil |
1324 |
|
|
\@nfmakecap{\csname fnum@#1\endcsname}{\ignorespaces #3}% |
1325 |
|
|
\par |
1326 |
|
|
\vfil |
1327 |
|
|
}% |
1328 |
|
|
} |
1329 |
|
|
\def\@nfnocap{% |
1330 |
|
|
\egroup |
1331 |
|
|
\refstepcounter\@captype |
1332 |
|
|
\@seteven |
1333 |
|
|
\setbox\@nfcapbox\vbox to \ht\@nfigbox{% |
1334 |
|
|
\hsize \textwidth |
1335 |
|
|
\advance\hsize -2pc |
1336 |
|
|
\advance\hsize -\wd\@nfigbox |
1337 |
|
|
\@parboxrestore |
1338 |
|
|
\vfil |
1339 |
|
|
\@@line{% |
1340 |
|
|
\if@nfeven\else\hfil\fi |
1341 |
|
|
\footnotesize \fnum@figure |
1342 |
|
|
\if@nfeven\hfil\fi |
1343 |
|
|
}% |
1344 |
|
|
\vfil |
1345 |
|
|
}% |
1346 |
|
|
} |
1347 |
|
|
% ________________________________________________________ |
1348 |
|
|
% ACM / OCLC modifications begin |
1349 |
|
|
% |
1350 |
|
|
%\def\setbmp#1#2#3#4{\vskip#3\relax\noindent\hskip#1\relax |
1351 |
|
|
% \special{bmp:#4 x=#2, y=#3}} |
1352 |
|
|
%\def\centerbmp#1#2#3{\vskip#2\relax\centerline{\hbox to#1{\special |
1353 |
|
|
% {bmp:#3 x=#1, y=#2}\hfil}}} |
1354 |
|
|
% |
1355 |
|
|
%\def\seteps#1#2#3#4{\vskip#3\relax\noindent\hskip#1\relax |
1356 |
|
|
% \special{eps:#4 x=#2, y=#3}} |
1357 |
|
|
%\def\centereps#1#2#3{\vskip#2\relax\centerline{\hbox to#1{\special |
1358 |
|
|
% {eps:#3 x=#1, y=#2}\hfil}}} |
1359 |
|
|
% |
1360 |
|
|
%\def\centertif#1#2#3{\vskip#2\relax\centerline{{ |
1361 |
|
|
% \it{Figure {(#3)} to be inserted here.}}}} |
1362 |
|
|
% |
1363 |
|
|
% ACM / OCLC modifications end |
1364 |
|
|
% ________________________________________________________ |
1365 |
|
|
|
1366 |
|
|
\def\@seteven{% |
1367 |
|
|
\@nfeventrue |
1368 |
|
|
\@ifundefined{r@@nf\thefigure}{}{% |
1369 |
|
|
\edef\@tmpnf{\csname r@@nf\thefigure\endcsname}% |
1370 |
|
|
\edef\@tmpnf{\expandafter\@cdr\@tmpnf\@nil}% |
1371 |
|
|
\ifodd\@tmpnf\relax |
1372 |
|
|
\@nfevenfalse |
1373 |
|
|
\fi |
1374 |
|
|
}% |
1375 |
|
|
\label{@nf\thefigure}% |
1376 |
|
|
\edef\@tmpnfx{\if@nfeven e\else o\fi}% |
1377 |
|
|
\edef\@tmpnf{% |
1378 |
|
|
\write\@unused{% |
1379 |
|
|
\noexpand\ifodd \noexpand\c@page |
1380 |
|
|
\noexpand\if \@tmpnfx e% |
1381 |
|
|
\noexpand\@nfmsg{\thefigure} |
1382 |
|
|
\noexpand\fi |
1383 |
|
|
\noexpand\else |
1384 |
|
|
\noexpand\if \@tmpnfx o% |
1385 |
|
|
\noexpand\@nfmsg{\thefigure}% |
1386 |
|
|
\noexpand\fi |
1387 |
|
|
\noexpand\fi |
1388 |
|
|
}% |
1389 |
|
|
}% |
1390 |
|
|
\@tmpnf |
1391 |
|
|
} |
1392 |
|
|
|
1393 |
|
|
\def\@nfmsg#1{Bad narrowfig: Figure #1 on page \thepage} |
1394 |
|
|
\newdimen\@narrowfig |
1395 |
|
|
\newbox\@nfigbox |
1396 |
|
|
\newbox\@nfcapbox |
1397 |
|
|
\newif\if@nfeven |
1398 |
|
|
\newenvironment{authinfo}{% |
1399 |
|
|
\newcommand{\name}[1] {Name: ##1\newline } |
1400 |
|
|
\newcommand{\address}[1] {Address: ##1\newline } |
1401 |
|
|
\newcommand{\affiliation}[1] {Affiliation: ##1\newline } |
1402 |
|
|
\newcommand{\biography}[1] {Biography: ##1\newline} |
1403 |
|
|
}{} |
1404 |
|
|
% |
1405 |
|
|
% _________________________________ |
1406 |
|
|
% ACM / OCLC modifications |
1407 |
|
|
\newenvironment{sponsor}[2]{% |
1408 |
|
|
Sponsor: #1\strut\newline |
1409 |
|
|
\parbox{3.in}{#2}% |
1410 |
|
|
}{\newline} |
1411 |
|
|
\def\and{\\ and\\} |
1412 |
|
|
% _________________________________ |
1413 |
|
|
|
1414 |
|
|
\def\maketitle{% |
1415 |
|
|
\newpage |
1416 |
|
|
\thispagestyle{titlepage}% |
1417 |
|
|
\global\@topnum\z@ |
1418 |
|
|
\begingroup |
1419 |
|
|
\lineskip \z@ |
1420 |
|
|
\null |
1421 |
|
|
\vskip -30\p@\relax |
1422 |
|
|
\parindent\z@ |
1423 |
|
|
\begingroup |
1424 |
|
|
\LARGE |
1425 |
|
|
\raggedright |
1426 |
|
|
\hyphenpenalty\@M |
1427 |
|
|
\sf \@title |
1428 |
|
|
\par |
1429 |
|
|
\endgroup |
1430 |
|
|
\vskip 13.5\p@ |
1431 |
|
|
%vskip 13.5\p@ between title and author |
1432 |
|
|
\begingroup |
1433 |
|
|
|
1434 |
|
|
{ |
1435 |
|
|
\addtolength{\baselineskip}{2\p@}% |
1436 |
|
|
\sf |
1437 |
|
|
\@author\par |
1438 |
|
|
\ifx \@sponsors\@empty |
1439 |
|
|
\else |
1440 |
|
|
%\baselineskip 17\p@%\relax |
1441 |
|
|
\hbox{\vrule height .2\p@ width 30pc} |
1442 |
|
|
\@sponsors \par |
1443 |
|
|
\fi |
1444 |
|
|
} |
1445 |
|
|
\endgroup |
1446 |
|
|
\begingroup |
1447 |
|
|
\footnotesize |
1448 |
|
|
\medskip |
1449 |
|
|
\rule{\textwidth}{.2\p@}% |
1450 |
|
|
\ifvoid\@abstract |
1451 |
|
|
\typeout{^^JPackage acmart Warning: an abstract |
1452 |
|
|
is required^^J}% |
1453 |
|
|
\else |
1454 |
|
|
\vskip 8.5\p@ |
1455 |
|
|
\box\@abstract |
1456 |
|
|
\fi |
1457 |
|
|
|
1458 |
|
|
|
1459 |
|
|
\ifx\@categories\@empty \else |
1460 |
|
|
\vskip 4\p@\relax %vskip8.5 space above abstract |
1461 |
|
|
\def\and{\unskip{\rm;} }% |
1462 |
|
|
Categories and Subject Descriptors: \@categories\par |
1463 |
|
|
\fi |
1464 |
|
|
\ifx\@terms\@empty\else |
1465 |
|
|
\vskip 4\p@ |
1466 |
|
|
General Terms: \ignorespaces |
1467 |
|
|
\@terms |
1468 |
|
|
\par |
1469 |
|
|
\fi |
1470 |
|
|
\ifx\@keywords\@empty\else |
1471 |
|
|
\vskip 4\p@ |
1472 |
|
|
Additional Key Words and Phrases: \ignorespaces |
1473 |
|
|
\@keywords |
1474 |
|
|
\par |
1475 |
|
|
\fi |
1476 |
|
|
\endgroup |
1477 |
|
|
\label{@firstpg}% |
1478 |
|
|
\rule{\textwidth}{.2\p@}% |
1479 |
|
|
\vskip 23\p@ |
1480 |
|
|
\endgroup |
1481 |
|
|
\let\maketitle\relax |
1482 |
|
|
\global\let\@sponsors\@empty |
1483 |
|
|
\global\let\@categories\@empty |
1484 |
|
|
\global\let\@terms\@empty |
1485 |
|
|
\global\let\@keywords\@empty |
1486 |
|
|
} |
1487 |
|
|
|
1488 |
|
|
\def\sponsor#1{\@ifnextchar |
1489 |
|
|
[{\@sponsor{#1}}{\@xsponsor{#1}}} |
1490 |
|
|
\def\@sponsor#1[#2]{\edef\@tempa{\ifx \@sponsors\@empty |
1491 |
|
|
\else ; \fi}{\def\protect{\noexpand\protect |
1492 |
|
|
\noexpand}\def\and{\noexpand\and}\xdef\@sponsors{\@sponsors\@tempa #1 }}} |
1493 |
|
|
\def\@xsponsor#1{\edef\@tempa{\ifx \@sponsors\@empty \else ; |
1494 |
|
|
\fi}{\def\protect{\noexpand\protect\noexpand}\def\and{\noexpand |
1495 |
|
|
\and}\xdef\@sponsors{\@sponsors\@tempa #1}}} |
1496 |
|
|
\def\@sponsors{} |
1497 |
|
|
|
1498 |
|
|
|
1499 |
|
|
\newbox\@abstract |
1500 |
|
|
\def\abstract{% |
1501 |
|
|
\everypar{}% |
1502 |
|
|
\global\setbox\@abstract\vbox\bgroup |
1503 |
|
|
\footnotesize |
1504 |
|
|
\trivlist\item[]\ignorespaces |
1505 |
|
|
} |
1506 |
|
|
|
1507 |
|
|
\def\endabstract{% |
1508 |
|
|
\endtrivlist |
1509 |
|
|
\egroup |
1510 |
|
|
\ifx\maketitle\relax |
1511 |
|
|
\typeout{^^JPackage acmart Warning: |
1512 |
|
|
the abstract must be specified before the^^J% |
1513 |
|
|
\string\maketitle\space command^^J% |
1514 |
|
|
}% |
1515 |
|
|
\box\@abstract |
1516 |
|
|
\fi |
1517 |
|
|
} |
1518 |
|
|
\def\terms{\gdef\@terms} |
1519 |
|
|
|
1520 |
|
|
\let\@terms\@empty |
1521 |
|
|
\def\keywords{\gdef\@keywords} |
1522 |
|
|
|
1523 |
|
|
\let\@keywords\@empty |
1524 |
|
|
\def\category#1#2#3{% |
1525 |
|
|
\@ifnextchar [{\@category{#1}{#2}{#3}}{\@category{#1}{#2}{#3}[]}% |
1526 |
|
|
} |
1527 |
|
|
\def\@category#1#2#3[#4]{% |
1528 |
|
|
\edef\@tempa{\ifx \@categories\@empty \else ; \fi}% |
1529 |
|
|
\begingroup |
1530 |
|
|
\def\protect{\noexpand\protect\noexpand}% |
1531 |
|
|
\let\and\relax |
1532 |
|
|
\xdef\@categories{% |
1533 |
|
|
\@categories |
1534 |
|
|
\@tempa |
1535 |
|
|
#1 [{\bf #2}]% |
1536 |
|
|
\if!#4!% |
1537 |
|
|
\if!#3!\else : #3\fi |
1538 |
|
|
\else |
1539 |
|
|
:\space |
1540 |
|
|
\if!#3!\else #3\kern\z@---\hskip\z@\fi |
1541 |
|
|
{\it #4}% |
1542 |
|
|
\fi |
1543 |
|
|
}% |
1544 |
|
|
\endgroup |
1545 |
|
|
} |
1546 |
|
|
|
1547 |
|
|
\let\@categories\@empty |
1548 |
|
|
\def\bottomstuff{% |
1549 |
|
|
\global\@topnum\z@ |
1550 |
|
|
\global\@botroom \textheight |
1551 |
|
|
\@float{figure}[b] |
1552 |
|
|
\footnotesize |
1553 |
|
|
\parindent\z@ |
1554 |
|
|
\null |
1555 |
|
|
\vskip -\textfloatsep |
1556 |
|
|
\vskip 10\p@ |
1557 |
|
|
\hrule \@height .2\p@ \@width 30pc |
1558 |
|
|
\vskip 4\p@ |
1559 |
|
|
\ignorespaces |
1560 |
|
|
} |
1561 |
|
|
\def\endbottomstuff{% |
1562 |
|
|
\par |
1563 |
|
|
\strut |
1564 |
|
|
\end@float |
1565 |
|
|
} |
1566 |
|
|
\long\def\permission{\par |
1567 |
|
|
Permission to make digital or hard copies of part or all of this |
1568 |
|
|
work for personal or classroom use is granted without fee provided |
1569 |
|
|
that copies are not made or distributed for profit or direct |
1570 |
|
|
commercial advantage and that copies show this notice on the first |
1571 |
|
|
page or initial screen of a display along with the full citation. |
1572 |
|
|
Copyrights for components of this work owned by others than ACM |
1573 |
|
|
must be honored. Abstracting with credit is permitted. To copy |
1574 |
|
|
otherwise, to republish, to post on servers, to redistribute to |
1575 |
|
|
lists, or to use any component of this work in other works, |
1576 |
|
|
requires prior specific permission and/or a fee. Permissions may |
1577 |
|
|
be requested from Publications Dept, ACM Inc., 1515 Broadway, New |
1578 |
|
|
York, NY 10036 USA, fax +1 (212) 869-0481, or {\tt |
1579 |
|
|
permissions@acm.org}. |
1580 |
|
|
\par |
1581 |
|
|
} |
1582 |
|
|
% _______________________________________________________ |
1583 |
|
|
% |
1584 |
|
|
% Original acks did not sans serif heading at all. |
1585 |
|
|
% |
1586 |
|
|
%\newenvironment{acksold}{% |
1587 |
|
|
% \@startsection{subsection}{2}{\z@}{-16\p@ \@plus -2\p@ \@minus -\p@} |
1588 |
|
|
% {2\p@}{\sf}*{\footnotesize ACKNOWLEDGMENTS}% |
1589 |
|
|
%}{\par} |
1590 |
|
|
% |
1591 |
|
|
% |
1592 |
|
|
% ACM / OCLC modification to sans serif the heading. |
1593 |
|
|
% |
1594 |
|
|
\newenvironment{acks}{% |
1595 |
|
|
\@startsection{subsection}{2}{\z@}{-16\p@ \@plus -2\p@ \@minus -\p@} |
1596 |
|
|
{2\p@}{}*{\footnotesize\sf ACKNOWLEDGMENTS}% |
1597 |
|
|
}{\par} |
1598 |
|
|
% |
1599 |
|
|
% _____________________________________________________ |
1600 |
|
|
% |
1601 |
|
|
\newenvironment{received}{% |
1602 |
|
|
\par |
1603 |
|
|
\footnotesize |
1604 |
|
|
\addvspace{18\p@ \@minus 4\p@}% |
1605 |
|
|
\parindent\z@ |
1606 |
|
|
}{% |
1607 |
|
|
\label{@lastpg}% |
1608 |
|
|
\par |
1609 |
|
|
} |
1610 |
|
|
\mark{{}{}} |
1611 |
|
|
\def\ps@myheadings{% |
1612 |
|
|
\let\@mkboth\@gobbletwo |
1613 |
|
|
\def\@oddhead{% |
1614 |
|
|
\hfill\small\sf\rightmark |
1615 |
|
|
\hskip 19\p@ |
1616 |
|
|
{\Large$\cdot$}% |
1617 |
|
|
\hskip 17\p@ |
1618 |
|
|
\thepage |
1619 |
|
|
}% |
1620 |
|
|
\def\@oddfoot{\null\hfill\tiny\@runningfoot} |
1621 |
|
|
\def\@evenhead{% |
1622 |
|
|
\small\sf\thepage |
1623 |
|
|
\hskip 17\p@ |
1624 |
|
|
{\Large$\cdot$}% |
1625 |
|
|
\hskip 19\p@ |
1626 |
|
|
\leftmark |
1627 |
|
|
\hfill |
1628 |
|
|
}% |
1629 |
|
|
\def\@evenfoot{\tiny\@runningfoot \hfill\null}% |
1630 |
|
|
\let\partmark\@gobble |
1631 |
|
|
\let\sectionmark\@gobble |
1632 |
|
|
\let\subsectionmark\@gobble |
1633 |
|
|
} |
1634 |
|
|
\def\runningfoot#1{\def\@runningfoot{#1}} |
1635 |
|
|
|
1636 |
|
|
\let\@runningfoot\@empty |
1637 |
|
|
|
1638 |
|
|
\def\firstfoot#1{\def\@firstfoot{#1}} |
1639 |
|
|
|
1640 |
|
|
\let\@firstfoot\@empty |
1641 |
|
|
|
1642 |
|
|
\def\pages{\pageref{@firstpg}--\pageref{@lastpg}} |
1643 |
|
|
\def\ps@titlepage{% |
1644 |
|
|
\let\@mkboth\@gobbletwo |
1645 |
|
|
\let\@oddhead\@empty |
1646 |
|
|
\def\@oddfoot{\null\hfill\tiny\@firstfoot}% |
1647 |
|
|
\let\@evenhead\@empty |
1648 |
|
|
\def\@evenfoot{\tiny\@firstfoot\hfill\null}% |
1649 |
|
|
} |
1650 |
|
|
\def\today{% |
1651 |
|
|
\ifcase\month \or |
1652 |
|
|
January\or |
1653 |
|
|
February\or |
1654 |
|
|
March\or |
1655 |
|
|
April\or |
1656 |
|
|
May\or |
1657 |
|
|
June\or |
1658 |
|
|
July\or |
1659 |
|
|
August\or |
1660 |
|
|
September\or |
1661 |
|
|
October\or |
1662 |
|
|
November\or |
1663 |
|
|
December |
1664 |
|
|
\fi |
1665 |
|
|
\space\number\day, \number\year |
1666 |
|
|
} |
1667 |
|
|
\def\marray{% |
1668 |
|
|
\arraycolsep 2.5\p@ |
1669 |
|
|
\let\@acol\@arrayacol |
1670 |
|
|
\let\@classz\@marrayclassz |
1671 |
|
|
\let\@classiv\@marrayclassiv |
1672 |
|
|
\let\\\@arraycr |
1673 |
|
|
\let\@halignto\@empty |
1674 |
|
|
\@tabarray |
1675 |
|
|
} |
1676 |
|
|
|
1677 |
|
|
\let\endmarray\endarray |
1678 |
|
|
\def\@marrayclassiv{\@addtopreamble{$\displaystyle \@nextchar$}} |
1679 |
|
|
|
1680 |
|
|
\def\@marrayclassz{% |
1681 |
|
|
\ifcase \@lastchclass |
1682 |
|
|
\@acolampacol |
1683 |
|
|
\or \@ampacol |
1684 |
|
|
\or |
1685 |
|
|
\or |
1686 |
|
|
\or \@addamp |
1687 |
|
|
\or \@acolampacol |
1688 |
|
|
\or \@firstampfalse \@acol |
1689 |
|
|
\fi |
1690 |
|
|
\edef\@preamble{% |
1691 |
|
|
\@preamble |
1692 |
|
|
\ifcase \@chnum |
1693 |
|
|
\hfil$\relax\displaystyle\@sharp$\hfil |
1694 |
|
|
\or $\relax\displaystyle\@sharp$\hfil |
1695 |
|
|
\or \hfil$\relax\displaystyle\@sharp$% |
1696 |
|
|
\fi |
1697 |
|
|
}% |
1698 |
|
|
} |
1699 |
|
|
\ps@myheadings |
1700 |
|
|
|
1701 |
|
|
\pagenumbering{arabic} |
1702 |
|
|
|
1703 |
|
|
\onecolumn |
1704 |
|
|
|
1705 |
|
|
|
1706 |
|
|
\parindent10\p@ |
1707 |
|
|
\typeout{Using ACM bibliography style} |
1708 |
|
|
\newcommand\bibyear[2]{% |
1709 |
|
|
\unskip\quad\ignorespaces#1\unskip |
1710 |
|
|
\if#2..\quad \else \quad#2 \fi |
1711 |
|
|
} |
1712 |
|
|
\newcommand{\bibemph}[1]{{\em#1}} |
1713 |
|
|
\newcommand{\bibemphic}[1]{{\em#1\/}} |
1714 |
|
|
\newcommand{\bibsc}[1]{{\sc#1}} |
1715 |
|
|
\def\@normalcite{% |
1716 |
|
|
\def\@cite##1##2{[##1\if@tempswa , ##2\fi]}% |
1717 |
|
|
} |
1718 |
|
|
\def\@citeNB{% |
1719 |
|
|
\def\@cite##1##2{##1\if@tempswa , ##2\fi}% |
1720 |
|
|
} |
1721 |
|
|
\def\@citeRB{% |
1722 |
|
|
\def\@cite##1##2{##1\if@tempswa , ##2\fi]}% |
1723 |
|
|
} |
1724 |
|
|
\def\start@cite#1#2{% |
1725 |
|
|
\edef\citeauthoryear##1##2##3{% |
1726 |
|
|
###1% |
1727 |
|
|
\ifnum#2=\z@ \else\ ###2\fi |
1728 |
|
|
}% |
1729 |
|
|
\ifnum#1=\thr@@ |
1730 |
|
|
\let\@@cite\@citeyear |
1731 |
|
|
\else |
1732 |
|
|
\let\@@cite\@citenormal |
1733 |
|
|
\fi |
1734 |
|
|
\@ifstar{\@citeNB\@@cite}{\@normalcite\@@cite}% |
1735 |
|
|
} |
1736 |
|
|
\def\cite{\start@cite23} |
1737 |
|
|
\def\citeNP{\cite*} |
1738 |
|
|
\def\citeA{\start@cite10} |
1739 |
|
|
\def\citeANP{\citeA*} |
1740 |
|
|
\def\shortcite{\start@cite23} |
1741 |
|
|
\def\shortciteNP{\shortcite*} |
1742 |
|
|
\def\shortciteA{\start@cite20} |
1743 |
|
|
\def\shortciteANP{\shortciteA*} |
1744 |
|
|
\def\citeyear{\start@cite30} |
1745 |
|
|
\def\citeyearNP{\citeyear*} |
1746 |
|
|
\def\citeN{% |
1747 |
|
|
\@citeRB |
1748 |
|
|
\def\citeauthoryear##1##2##3{##1\ [##3% |
1749 |
|
|
\def\reserved@a{##1}% |
1750 |
|
|
\def\citeauthoryear####1####2####3{% |
1751 |
|
|
\def\reserved@b{####1}% |
1752 |
|
|
\ifx\reserved@a\reserved@b |
1753 |
|
|
####3% |
1754 |
|
|
\else |
1755 |
|
|
\errmessage{Package acmart Error: author mismatch |
1756 |
|
|
in \string\citeN^^J^^J% |
1757 |
|
|
See the acmart package documentation for explanation}% |
1758 |
|
|
\fi |
1759 |
|
|
}% |
1760 |
|
|
}% |
1761 |
|
|
\@ifstar\@citeyear\@citeyear |
1762 |
|
|
} |
1763 |
|
|
\def\shortciteN{% |
1764 |
|
|
\@citeRB |
1765 |
|
|
\def\citeauthoryear##1##2##3{##2\ [##3% |
1766 |
|
|
\def\reserved@a{##2}% |
1767 |
|
|
\def\citeauthoryear####1####2####3{% |
1768 |
|
|
\def\reserved@b{####2}% |
1769 |
|
|
\ifx\reserved@a\reserved@b |
1770 |
|
|
####3% |
1771 |
|
|
\else |
1772 |
|
|
\errmessage{Package acmart Error: author mismatch |
1773 |
|
|
in \string\shortciteN^^J^^J% |
1774 |
|
|
See the acmart package documentation for explanation}% |
1775 |
|
|
\fi |
1776 |
|
|
}% |
1777 |
|
|
}% |
1778 |
|
|
\@ifstar\@citeyear\@citeyear |
1779 |
|
|
} |
1780 |
|
|
\def\@citenormal{% |
1781 |
|
|
\@ifnextchar [{\@tempswatrue\@citex;} |
1782 |
|
|
{\@tempswafalse\@citex;[]}% |
1783 |
|
|
} |
1784 |
|
|
\def\@citeyear{% |
1785 |
|
|
\@ifnextchar [{\@tempswatrue\@citex,}% |
1786 |
|
|
{\@tempswafalse\@citex,[]}% |
1787 |
|
|
} |
1788 |
|
|
\def\@citex#1[#2]#3{% |
1789 |
|
|
\let\@citea\@empty |
1790 |
|
|
\@cite{% |
1791 |
|
|
\@for\@citeb:=#3\do{% |
1792 |
|
|
\@citea |
1793 |
|
|
\def\@citea{#1 }% |
1794 |
|
|
\edef\@citeb{\expandafter\@iden\@citeb}% |
1795 |
|
|
\if@filesw |
1796 |
|
|
\immediate\write\@auxout{\string\citation{\@citeb}}% |
1797 |
|
|
\fi |
1798 |
|
|
\@ifundefined{b@\@citeb}{% |
1799 |
|
|
{\bf ?}% |
1800 |
|
|
\@warning{% |
1801 |
|
|
Citation `\@citeb' on page \thepage\space undefined% |
1802 |
|
|
}% |
1803 |
|
|
}% |
1804 |
|
|
{\csname b@\@citeb\endcsname}% |
1805 |
|
|
}% |
1806 |
|
|
}{#2}% |
1807 |
|
|
} |
1808 |
|
|
\let\@biblabel\@gobble |
1809 |
|
|
\newdimen\bibindent |
1810 |
|
|
\bibindent=1.5em |
1811 |
|
|
\def\refname{References} |
1812 |
|
|
\def\thebibliography#1{% |
1813 |
|
|
\footnotesize |
1814 |
|
|
\section*{% |
1815 |
|
|
{\footnotesize\sf REFERENCES} |
1816 |
|
|
\@mkboth{\uppercase{\refname}}{\uppercase{\refname}}% |
1817 |
|
|
}% |
1818 |
|
|
\list{[\arabic{enumi}]}{% |
1819 |
|
|
\settowidth\labelwidth{[#1]}% |
1820 |
|
|
\leftmargin\labelwidth |
1821 |
|
|
\advance\leftmargin\labelsep |
1822 |
|
|
\advance\leftmargin\bibindent |
1823 |
|
|
\itemindent -\bibindent |
1824 |
|
|
\listparindent \itemindent |
1825 |
|
|
\parsep \z@ |
1826 |
|
|
\usecounter{enumi}% |
1827 |
|
|
}% |
1828 |
|
|
\let\newblock\@empty |
1829 |
|
|
\sloppy |
1830 |
|
|
\sfcode`\.=1000\relax |
1831 |
|
|
} |
1832 |
|
|
\endinput |
1833 |
|
|
|
1834 |
|
|
% |
1835 |
|
|
%% |
1836 |
|
|
%% End of file `esub2acm.cls' Version 1.2 - Gerry Murray ACM November 10th. 1999 |
1837 |
|
|
|
1838 |
|
|
%$History: esub2acm.cls $ |
1839 |
|
|
% |
1840 |
|
|
% ***************** Version 3 ***************** |
1841 |
|
|
% User: Dashley1 Date: 10/17/00 Time: 8:43p |
1842 |
|
|
% Updated in $/ACM Rational Approximation Paper And Algorithms/LaTeX Paper And Graphics |
1843 |
|
|
% Comments added to explain that file under VC and that a change history |
1844 |
|
|
% is at the end of file. |
1845 |
|
|
% |
1846 |
|
|
% ***************** Version 2 ***************** |
1847 |
|
|
% User: Dashley1 Date: 10/17/00 Time: 8:37p |
1848 |
|
|
% Updated in $/ACM Rational Approximation Paper And Algorithms/LaTeX Paper And Graphics |
1849 |
|
|
% VC info added. |
1850 |
|
|
% |
1851 |
|
|
%End of file ESUB2ACM.TEX |