
hekeus@51: %%%% This sty file contains all necessary bibliographic code to 
hekeus@51: %%%%  produce AAAI / AI Magazine author-year style referecnes.
hekeus@51: %%%%  Stolen from ijcai97.sty by Dan Weld 1/27/99
hekeus@51: 
hekeus@51: % Lists
hekeus@51: \leftmargini 2em
hekeus@51: \leftmarginii 2em
hekeus@51: \leftmarginiii 1em 
hekeus@51: \leftmarginiv 0.5em
hekeus@51: \leftmarginv 0.5em 
hekeus@51: \leftmarginvi 0.5em
hekeus@51: 
hekeus@51: \leftmargin\leftmargini
hekeus@51: \labelsep 5pt
hekeus@51: \labelwidth\leftmargini\advance\labelwidth-\labelsep
hekeus@51: 
hekeus@51: \def\@listI{\leftmargin\leftmargini 
hekeus@51: \parsep 2pt plus 1pt minus 0.5pt%
hekeus@51: \topsep 4pt plus 1pt minus 2pt%
hekeus@51: \itemsep 2pt plus 1pt minus 0.5pt%
hekeus@51: \partopsep 1pt plus 0.5pt minus 0.5pt}
hekeus@51: 
hekeus@51: \let\@listi\@listI
hekeus@51: \@listi 
hekeus@51: 
hekeus@51: \def\@listii{\leftmargin\leftmarginii
hekeus@51:    \labelwidth\leftmarginii\advance\labelwidth-\labelsep
hekeus@51:    \parsep 1pt plus 0.5pt minus 0.5pt
hekeus@51:    \topsep 2pt plus 1pt minus 0.5pt
hekeus@51:    \itemsep \parsep}
hekeus@51: \def\@listiii{\leftmargin\leftmarginiii
hekeus@51:     \labelwidth\leftmarginiii\advance\labelwidth-\labelsep
hekeus@51:     \parsep 0pt plus 1pt
hekeus@51:     \partopsep 0.5pt plus 0pt minus 0.5pt
hekeus@51:     \topsep 1pt plus 0.5pt minus 0.5pt 
hekeus@51:     \itemsep \topsep}
hekeus@51: \def\@listiv{\leftmargin\leftmarginiv
hekeus@51:      \labelwidth\leftmarginiv\advance\labelwidth-\labelsep}
hekeus@51: \def\@listv{\leftmargin\leftmarginv
hekeus@51:      \labelwidth\leftmarginv\advance\labelwidth-\labelsep}
hekeus@51: \def\@listvi{\leftmargin\leftmarginvi
hekeus@51:      \labelwidth\leftmarginvi\advance\labelwidth-\labelsep}
hekeus@51: 
hekeus@51: % We're never going to need a table of contents, so just flush it to
hekeus@51: % save space --- suggested by drstrip@sandia-2
hekeus@51: %\def\addcontentsline#1#2#3{}
hekeus@51: 
hekeus@51: %%%% named.sty
hekeus@51: 
hekeus@51: \typeout{Named Citation Style, version of 30 November 1994}
hekeus@51: 
hekeus@51: % This file implements citations for the ``named'' bibliography style.
hekeus@51: %  Place it in a file called named.sty in the TeX search path.  (Placing it
hekeus@51: % in the same directory as the LaTeX document should also work.)
hekeus@51: 
hekeus@51: % Prepared by Peter F. Patel-Schneider, with the assistance of several,
hekeus@51: % since forgotten, LaTeX hackers.
hekeus@51: % This style is NOT guaranteed to work.  It is provided in the hope
hekeus@51: % that it will make the preparation of papers easier.
hekeus@51: %
hekeus@51: % There are undoubtably bugs in this style.  If you make bug fixes,
hekeus@51: % improvements, etc.  please let me know.  My e-mail address is:
hekeus@51: %       pfps@research.att.com
hekeus@51: 
hekeus@51: % The preparation of this file was supported by Schlumberger Palo Alto
hekeus@51: % Research and AT\&T Bell Laboratories.
hekeus@51: 
hekeus@51: % This file can be modified and used in other conferences as long
hekeus@51: % as credit to the authors and supporting agencies is retained, this notice
hekeus@51: % is not changed, and further modification or reuse is not restricted.
hekeus@51: 
hekeus@51: % The ``named'' bibliography style creates citations with labels like
hekeus@51: %       \citeauthoryear{author-info}{year}
hekeus@51: % these labels are processed by the following commands:
hekeus@51: %       \cite{keylist}
hekeus@51: %               which produces citations with both author and year,
hekeus@51: %               enclosed in square brackets
hekeus@51: %       \shortcite{keylist}
hekeus@51: %               which produces citations with year only,
hekeus@51: %               enclosed in square brackets
hekeus@51: %       \citeauthor{key}
hekeus@51: %               which produces the author information only
hekeus@51: %       \citeyear{key}
hekeus@51: %               which produces the year information only
hekeus@51: 
hekeus@51: \def\leftcite{\@up[}\def\rightcite{\@up]}
hekeus@51: 
hekeus@51: \def\cite{\def\citeauthoryear##1##2{\def\@thisauthor{##1}%
hekeus@51:              \ifx \@lastauthor \@thisauthor \relax \else##1, \fi ##2}\@icite}
hekeus@51: \def\shortcite{\def\citeauthoryear##1##2{##2}\@icite}
hekeus@51: 
hekeus@51: \def\citeauthor{\def\citeauthoryear##1##2{##1}\@nbcite}
hekeus@51: \def\citeyear{\def\citeauthoryear##1##2{##2}\@nbcite}
hekeus@51: 
hekeus@51: % internal macro for citations with [] and with breaks between citations
hekeus@51: % used in \cite and \shortcite
hekeus@51: \def\@icite{\leavevmode\def\@citeseppen{-1000}%
hekeus@51:  \def\@cite##1##2{\leftcite\nobreak\hskip 0in{##1\if@tempswa , ##2\fi}\rightcite}%
hekeus@51:  \@ifnextchar [{\@tempswatrue\@citex}{\@tempswafalse\@citex[]}}
hekeus@51: % internal macro for citations without [] and with no breaks
hekeus@51: % used in \citeauthor and \citeyear
hekeus@51: \def\@nbcite{\leavevmode\def\@citeseppen{1000}%
hekeus@51:  \def\@cite##1##2{{##1\if@tempswa , ##2\fi}}%
hekeus@51:  \@ifnextchar [{\@tempswatrue\@citex}{\@tempswafalse\@citex[]}}
hekeus@51: 
hekeus@51: % don't box citations, separate with ; and a space
hekeus@51: % also, make the penalty between citations a parameter, 
hekeus@51: % it may be a good place to break
hekeus@51: \def\@citex[#1]#2{%
hekeus@51:   \def\@lastauthor{}\def\@citea{}%
hekeus@51:   \@cite{\@for\@citeb:=#2\do
hekeus@51:     {\@citea\def\@citea{;\penalty\@citeseppen\ }%
hekeus@51:      \if@filesw\immediate\write\@auxout{\string\citation{\@citeb}}\fi
hekeus@51:      \@ifundefined{b@\@citeb}{\def\@thisauthor{}{\bf ?}\@warning
hekeus@51:        {Citation `\@citeb' on page \thepage \space undefined}}%
hekeus@51:      {\csname b@\@citeb\endcsname}\let\@lastauthor\@thisauthor}}{#1}}
hekeus@51: 
hekeus@51: % raise the brackets in bibliography labels
hekeus@51: \def\@biblabel#1{\def\citeauthoryear##1##2{##1, ##2}\@up{[}#1\@up{]}\hfill}
hekeus@51: 
hekeus@51: \def\@up#1{\leavevmode\raise.2ex\hbox{#1}}
hekeus@51: 
hekeus@51: % Optional changes
hekeus@51: 
hekeus@51: %%%% use parentheses in the reference list and citations
hekeus@51: %\def\leftcite{(}\def\rightcite{)}
hekeus@51: %\def\@biblabel#1{\def\citeauthoryear##1##2{##1, ##2}(#1)\hfill}
hekeus@51: 
hekeus@51: %%%% no key in the reference list
hekeus@51: %\def\@lbibitem[#1]#2{\item\if@filesw 
hekeus@51: %      { \def\protect##1{\string ##1\space}\immediate
hekeus@51: %        \write\@auxout{\string\bibcite{#2}{#1}}}\fi\ignorespaces}
hekeus@51: %\def\thebibliography#1{\section*{References\@mkboth
hekeus@51: %  {REFERENCES}{REFERENCES}}\list
hekeus@51: %  {}{\labelwidth 0pt\leftmargin\labelwidth \itemsep 0.5ex}
hekeus@51: %    \def\newblock{\hskip .11em plus .33em minus .07em}
hekeus@51: %    \sloppy\clubpenalty4000\widowpenalty4000
hekeus@51: %    \sfcode`\.=1000\relax}



