# HG changeset patch # User Daichi Toma # Date 1321434675 -32400 # Node ID 08708e1a2e643893b42a0b1aaac125116a15dee3 first commit diff -r 000000000000 -r 08708e1a2e64 Paper/Makefile --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Paper/Makefile Wed Nov 16 18:11:15 2011 +0900 @@ -0,0 +1,30 @@ +# Created by Daichi Toma on Nov 16, 2011 + +TARGET=prosym + +LATEX=platex +DVIPDF=dvipdfmx +#You need setting "-l" option if You think You get a landscape PDF +#DVIPDF_OPT=-l + +.SUFFIXES: .tex .dvi .pdf + +.tex.dvi: + $(LATEX) $< + $(LATEX) $< + +.dvi.pdf: + $(DVIPDF) $(DVIPDF_OPT) $< + + +all: $(TARGET).pdf + open $(TARGET).pdf + +dvi: $(TARGET).dvi + +pdf: $(TARGET).pdf + + +clean: + rm -f *.dvi *.aux *.log *.pdf *.ps *.gz *~ *.core + diff -r 000000000000 -r 08708e1a2e64 Paper/ipsjcommon.sty --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Paper/ipsjcommon.sty Wed Nov 16 18:11:15 2011 +0900 @@ -0,0 +1,858 @@ +% Copyright (C) 1995,1996,1997,1998,1999,2000,2001 +% by Hiroshi Nakashima, Yasuki Saito and +% The Editorial Board of the IPSJ Journal +% +% ipsjcommon.sty 15-May-01 by Hiroshi Nakashima (ver 2.08) +% (revision history deleted) +% ipsjcommon.sty 24-Apr-95 by Hiroshi Nakashima (ver 1.0) + +%%%%%% Sectioning Commands %%%%%% + +% \section: 2行取り +% others: 1行取り +% +% Note that \paragraph and \subparagraph act as \subsubsubsection and +% \subsubsubsubsection resp. +% +% The form of sectioning header is; +% <1 Kanji sp> \the [`.' if \section] <1 Kanji sp> +% Nothe that <1 Kanji sp> is that of \normalsize. + +\def\section{\@startsection + {section}{1}{\@mojihaba}{\sec@aboveskip}{\sec@belowskip}{\fs@sec\bf}} +\let\ipsj@section\section % 2.04(1) +\def\subsection{\@startsection + {subsection}{2}{\@mojihaba}{\z@}{\z@}{\fs@subsec\bf}} +\def\subsubsection{\@startsection + {subsubsection}{3}{\@mojihaba}{\z@}{\z@}{\fs@subsec\bf}} +\def\paragraph{\@startsection + {paragraph}{4}{\@mojihaba}{\z@}{\z@}{\fs@subsec\bf}} +\def\subparagraph{\@startsection + {subparagraph}{5}{\@mojihaba}{\z@}{\z@}{\fs@subsec\bf}} + +\newcounter{section} +\newcounter{subsection}[section] +\newcounter{subsubsection}[subsection] +\newcounter{paragraph}[subsubsection] +\newcounter{subparagraph}[paragraph] + +\def\thesection{\arabic{section}} +\def\sec@section@postfix{.} +\def\thesubsection{\thesection.\arabic{subsection}} +\def\thesubsubsection{\thesubsection.\arabic{subsubsection}} +\def\theparagraph{\thesubsubsection.\arabic{paragraph}} +\def\thesubparagraph{\theparagraph.\arabic{subparagraph}} + +\setcounter{secnumdepth}{5} + +\def\appendix{\let\sec@sec\section + \def\section{\@startsection + {section}{1}{\@mojihaba}{\z@}{\z@}{\fs@subsec\bf}}% + \def\thesection{\appendixprefix\arabic{section}}% + \def\sec@section@postfix{\appendixpostfix}% + \stepcounter{section}\setcounter{section}{0}% + \@ifnextchar[%] + {\sec@oappendix}{\sec@xappendix}} +\def\sec@xappendix{\@ifstar{\let\section\sec@sec}% + {\sec@sec*{\ifDS@english Appendix\else 付録\fi}}} +\def\sec@oappendix[#1]{\sec@sec*{\ifDS@english Appendix: \else + 付録\hskip\jspaceskip\fi #1}} +\def\appendixprefix{A.} +\def\appendixpostfix{} + +\def\acknowledgment{\par + {\bf \ifDS@english Acknowledgments\else 謝辞\fi}\hskip\@mojihaba + \ignorespaces} +\let\endacknowledgment\par + +\newif\ifipsj@recommendation \ipsj@recommendationfalse % 2.04(1) >> +\def\recommendation#1{\global\ipsj@recommendationtrue + \ifDS@draft\else \ra@putrcvacc\fi + \ipsj@section*{#1} +} +\def\endrecommendation{\par\vskip\baselineskip\penalty\opt@magicpenalty} + % 2.04(1) << + +% Modified \@startsection has a trick for 2行取り of \section, which must +% work even if \section appears the top of a page. The BEFORESKIP must be +% inserted with respect to the previous baseline. So, we must go back to +% the imaginary previous baseline at the top of a page. That is, we do; +% \vskip\baselineskip \vspace*{-\baselineskip} +% which resuls; +% <a> do nothing at midpage +% <b> go to the first baseline by \topskip, then go back to 0th +% baseline by \vspace*. +% The trick "\vskip-\prevdepth \prevdepth\z@" will assure exact vertical +% space even when the last line has much depth. +% +% \@startsection {NAME}{LEVEL}{INDENT}{BEFORESKIP}{AFTERSKIP}{STYLE} +\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}\fi + \ifdim\@tempskipa>\z@ +% Here is the trick for \section. + \vskip-\prevdepth \prevdepth\z@ \vskip\baselineskip + \vspace*{-\baselineskip}\vskip\@tempskipa\fi + \@ifstar + {\@ssect{#3}{#4}{#5}{#6}}{\@dblarg{\@sect{#1}{#2}{#3}{#4}{#5}{#6}}}} + +% \@sect is modified to cope with `.' for \section and 文字取り +% +% \@sect{NAME}{LEVEL}{INDENT}{BEFORESKIP}{AFTERSKIP}{STYLE}[TITLE]{TITLE} +\def\@sect#1#2#3#4#5#6[#7]#8{\ifnum #2>\c@secnumdepth + \def\@svsec{}\else + \refstepcounter{#1} + % 2.00(1)>> + \let\@@protect\protect \def\protect{\noexpand\protect\noexpand} + \edef\@svsec{\csname the#1\endcsname \csname sec@#1@postfix\endcsname + \hskip\@mojihaba} \let\protect\@@protect\fi % 2.00(1)<< + \@tempskipa #5\relax + \ifdim \@tempskipa<\z@ + \def\@svsechd{#6\hskip #3\relax\@svsec #8} % 2.00(1) + \else + \begingroup #6\relax + \@hangfrom{\hskip #3\relax\@svsec}% + {\interlinepenalty\@M \sec@mojidori{#8}\par}% + \endgroup + \fi \@xsect{#5}} + +% \@ssect is modified to cope with 文字取り +% +% \@sect{INDENT}{BEFORESKIP}{AFTERSKIP}{STYLE}{TITLE} +\def\@ssect#1#2#3#4#5{\@tempskipa #3\relax + \ifdim \@tempskipa<\z@ \def\@svsechd{#4\hskip #1\relax #5}% + \else \begingroup #4% + \@hangfrom{\hskip #1}{\interlinepenalty\@M + \sec@mojidori{#5}\par}\endgroup + \fi \@xsect{#3}} + +%% Modify \@xsect to avoid (buggy) \clubpenalty=10000. (H.N.) +\def\@xsect#1{\@tempskipa #1\relax + \ifdim \@tempskipa<\z@ + \glboal\@nobreakfalse \global\@noskipsectrue + \everypar{\global\@noskipsecfalse \hskip-\parindent + \begingroup \@svsechd \endgroup \unskip + \hskip -#1\everypar{}}% + \else + \par \nobreak + \vskip \@tempskipa \global\@nobreaktrue + \everypar{\global\@nobreakfalse + \if@afterindent\else {\setbox0\lastbox}\fi \everypar{}} + \fi\ignorespaces} + +% Here is a trick for 文字取り of sectioning tilte. The rule is; +% 2 - 4 Kanji char -> 5 Kanji char +% otherwise -> natural width +% +\def\sec@mojidori#1{\setbox0\hbox{#1}\settowidth\@tempdimb{あ}% + \ifdim\wd0>4.5\@tempdimb #1\else + \ifdim\wd0<1.5\@tempdimb #1\else + \jintercharskip\fill \jasciikanjiskip\fill \jmathkanjiskip\fill + \leavevmode\hbox to5\@tempdimb{#1\hfil}\fi\fi} + +%%%%%% List-like Environments %%%%%% +% +% LM RM LW LS LPI II +% default 2K 0 0.75K 0.25K 0 0 +% \enumerate 3K 0 3K 0 0 0 +% \Enumerate 0 0 3K 0 0 3K +% \ENUMERATE 0 0 3K 0 0 4K +% \enumerate* 1K 0 3K 0 0 2K +% \itemize 2K 0 2K 0 0 0 +% \Itemize 0 0 2K 0 0 2K +% \ITEMIZE 0 0 2K 0 0 3K +% \itemize* 1K 0 2K 0 0 1K +% \description 2K 0 0 1K 0 -1K +% \Description 0 0 0 1K 0 1K +% \DESCRIPTION 0 0 0 1K 0 2K +% \description* 1K 0 0 1K 0 0 +% \verse 3K 2K 0.75K 0.25K -1K -1K +% \quotation 2K 2K 0.75K 0.25K 1K 1K +% \quote 2K 2K 0.75K 0.25K 0 0 +% +% where LM is \leftmargin, RM is \rightmargin, LW is \labelwidth, LS is +% \labelsep, \LPI is \listparindent, II is \itemindent, and K is Kanji char +% width (\@mojihaba). +% +% All vertical space parameters, \topsep, \partopsep, \itemsep and \parsep, +% are 0pt. + +\leftmargini2\@mojihaba +\leftmarginii2\@mojihaba +\leftmarginiii2\@mojihaba +\leftmarginiv2\@mojihaba +\leftmarginv2\@mojihaba +\leftmarginvi2\@mojihaba + +\def\lst@listi{\labelsep.75\@mojihaba \labelwidth.25\@mojihaba + \rightmargin\z@ \listparindent\z@ \itemindent\z@ + \partopsep\z@ \parsep\z@ \topsep\z@ \itemsep\z@} +\def\@listi{\leftmargin\leftmargini \lst@listi} +\def\@listii{\leftmargin\leftmarginii \lst@listi} +\def\@listiii{\leftmargin\leftmarginiii \lst@listi} +\def\@listiv{\leftmargin\leftmarginiv \lst@listi} +\def\@listv{\leftmargin\leftmarginv \lst@listi} +\def\@listvi{\leftmargin\leftmarginvi \lst@listi} + +\@listi + +\def\labelenumi{(\,\theenumi\,)} +\def\theenumi{\arabic{enumi}} +\def\labelenumii{(\,\theenumii\,)} +\def\theenumii{\alph{enumii}} +\def\p@enumii{\theenumi} +\def\labelenumiii{(\,\theenumiii\,)} +\def\theenumiii{\roman{enumiii}} +\def\p@enumiii{\theenumi(\theenumii)} +\def\labelenumiv{(\,\theenumiv\,)} +\def\theenumiv{\Alph{enumiv}} +\def\p@enumiv{\p@enumiii\theenumiii} +\def\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{##1\hss}% + \leftmargin3\@mojihaba \labelwidth3\@mojihaba \labelsep\z@}\fi} +\let\endenumerate\endlist + +\def\labelitemi{$\bullet$} +\def\labelitemii{\bf --} +\def\labelitemiii{$\ast$} +\def\labelitemiv{$\cdot$} +\def\itemize{\ifnum \@itemdepth >3 \@toodeep\else \advance\@itemdepth \@ne + \edef\@itemitem{labelitem\romannumeral\the\@itemdepth}% + \list{\csname\@itemitem\endcsname}{\def\makelabel##1{\hss##1\hss}% + \labelwidth2\@mojihaba \labelsep\z@}\fi} +\let\enditemize\endlist + +\def\description{\list{}{\labelwidth\z@ \labelsep\@mojihaba + \itemindent\labelsep \advance\itemindent-\leftmargin + \def\makelabel##1{\bf ##1}}} +\let\enddescription\endlist + +\let\latex@trivlist\@trivlist +\def\lst@trivlist#1#2{\leftmargin#1\relax + \itemindent\labelwidth \advance\itemindent\labelsep + \advance\itemindent#2\relax + \let\@trivlist\latex@trivlist \@trivlist} + +\def\lst@Trivlist{\def\@trivlist{\lst@trivlist\z@\z@}} +\def\Enumerate{\lst@Trivlist \enumerate} +\let\endEnumerate\endlist +\def\Itemize{\lst@Trivlist \itemize} +\let\endItemize\endlist +\def\Description{\lst@Trivlist \description} +\let\endDescription\endlist + +\def\lst@TRIVLIST{\def\@trivlist{\lst@trivlist\z@\@mojihaba}} +\def\ENUMERATE{\lst@TRIVLIST \enumerate} +\let\endENUMERATE\endlist +\def\ITEMIZE{\lst@TRIVLIST \itemize} +\let\endITEMIZE\endlist +\def\DESCRIPTION{\lst@TRIVLIST \description} +\let\endDESCRIPTION\endlist + +\def\lst@strivlist{\def\@trivlist{\lst@trivlist\@mojihaba{-\@mojihaba}}} +\@namedef{enumerate*}{\lst@strivlist \enumerate} +\@namedef{endenumerate*}{\endlist} +\@namedef{itemize*}{\lst@strivlist \itemize} +\@namedef{enditemize*}{\endlist} +\@namedef{description*}{\lst@strivlist \description} +\@namedef{enddescription*}{\endlist} + +\def\verse{\let\\=\@centercr + \list{}{\itemindent-\@mojihaba \listparindent\itemindent + \rightmargin\leftmargin \advance\leftmargin\@mojihaba}\item[]} +\let\endverse\endlist +\def\quotation{\list{}{\listparindent\@mojihaba \itemindent\listparindent + \rightmargin\leftmargin}\item[]} +\let\endquotation\endlist +\def\quote{\list{}{\rightmargin\leftmargin}\item[]} +\let\endquote\endlist + +\def\newtheorem{\@ifstar + {\theo@newtheorem{\theo@it}{\ }}{\theo@newtheorem{}{\theo@sp}}} +\def\theo@newtheorem#1#2#3{\@namedef{theo@it@#3}{#1}\@namedef{theo@sp@#3}{#2}% + \@ifnextchar[%] + {\@othm{#3}}{\@nthm{#3}}} +\def\@begintheorem#1#2{\DESCRIPTION \csname theo@it@\@currenvir\endcsname + \item[#1\csname theo@sp@\@currenvir\endcsname #2]} +\def\@opargbegintheorem#1#2#3{\DESCRIPTION + \csname theo@style@\@currenvir\endcsname + \item[#1\csname theo@sp@\@currenvir\endcsname #2\ (#3)]} +\let\@endtheorem\endlist % 1.02(2) +\ifDS@english +\let\theo@it\it \let\theo@sp\ % +\else +\let\theo@it\relax \let\theo@sp\relax +\fi + +%%%%%% Bibliography %%%%%% +% +% 1. Label format is "<nn>)". +% 2. \leftmargin 24Q (or 2K) +% 3. \labelsep is 6Q (or 0.5K) +% 4. \baselineskip is 16Q(j)/15Q(e)/normal(d) +% 5. ~ and \ can be shrunk to 0pt. + +\def\thebibliography#1{% + \section*{\hskip-\@mojihaba\hfill\hbox{\bib@refname}\hfill\hskip\z@} + \ifDS@draft \@tempdima\@mojihaba \else\@tempdima12\@Q\fi + \list{\arabic{enumi}\rlap{%( + )}}% + {\fs@bibliography \leftmargin2\@tempdima \labelwidth\z@ + \labelsep\@tempdima \itemindent.5\@tempdima + \usecounter{enumi}\def\makelabel##1{\hss\llap{##1}}} + \def\newblock{\hskip .11em plus .33em minus .07em} + \sloppy \frenchspacing + \def\ {\hskip\fontdimen\tw@\font plus\fontdimen\thr@@\font + minus\fontdimen\tw@\font\relax}} +\ifDS@english +\def\bib@refname{References} +\else +{\fs@sec \@tempdima7\jspaceskip +\xdef\bib@refname{\hbox to\the\@tempdima{\jintercharskip\fill 参考文献}}} +\fi +\newdimen\bib@adjustheight \bib@adjustheight-\maxdimen +\def\endthebibliography{\endlist \par \@normalsize + \@tempdima\@colht \advance\@tempdima-\@colroom + \advance\@tempdima\pagetotal \advance\@tempdima-\prevdepth + \advance\@tempdima-\topskip + \@tempdimb\@tempdima \divide\@tempdima\baselineskip + \@tempcnta\@tempdima \@tempdima\@tempcnta\baselineskip + \advance\@tempdima-\@tempdimb + \ifdim\@tempdima<\z@ \advance\@tempdima\baselineskip \fi + \vskip-\prevdepth \vskip\@tempdima \prevdepth\z@ + \bib@adjustheight\@tempdimb \advance\bib@adjustheight\@tempdima + \global\advance\bib@adjustheight\topskip + \if@firstcolumn\else\global\advance\bib@adjustheight\@M pt\fi} + + +%%%%%% Floats %%%%%% + +% You may need to change following parameters +\setcounter{topnumber}{4} +\setcounter{bottomnumber}{4} +\setcounter{totalnumber}{8} +\setcounter{dbltopnumber}{4} +\def\topfraction{.9} +\def\bottomfraction{.9} +\def\textfraction{.1} +\def\dbltopfraction{.9} +\def\floatpagefraction{.9} +\def\dblfloatpagefraction{.9} + +\newcounter{figure} +\newcounter{table} +\def\thefigure{\@arabic\c@figure} +\def\thetable{\@arabic\c@table} +\def\fps@figure{tbp} +\def\fps@table{tbp} +\def\ftype@figure{1} +\def\ftype@table{2} +\def\fnum@figure{\fname@figure\thefigure} +\def\fnum@table{\fname@table\thetable} +\ifDS@english +\def\fname@figure{Fig.\,} % 2.06(1) +\def\fname@Figure{Figure~} +\def\fname@table{Table~} +\else +\def\fname@figure{図\fref@nobreak} % 1.06(1) +\let\fname@Figure\fname@figure +\def\fname@table{表\fref@nobreak} % 1.06(1) +\fi +\def\fnum@efigure{Fig.\,\thefigure} % 2.06(1) +\def\fnum@etable{Table~\thetable} + +% 1.06(3) >> +\def\figure{\let\cap@afterskip\relax \let\flt@fontsize\relax \@float{figure}} +\def\endfigure{\end@float} +\@namedef{figure*}{\let\cap@afterskip\relax \let\flt@fontsize\relax + \@dblfloat{figure}} +\@namedef{endfigure*}{\end@dblfloat} + +%% Default font for table env. is \footnotesize (H.N.) +\def\table{\let\cap@beforeskip\relax \let\flt@fontsize\fs@table + \@float{table}} +\def\endtable{\end@float} +\@namedef{table*}{\let\cap@beforeskip\relax \let\flt@fontsize\fs@table + \@dblfloat{table}} % 2.01(2) +\@namedef{endtable*}{\end@dblfloat} +% 1.06(3) << + +\let\latex@float\@float +\let\latex@dbflt\@dbflt +\def\@float{\cap@linewidth\hsize \cap@hsize\hsize \latex@float} +\def\@dbflt{\cap@linewidth.8\textwidth \cap@hsize.667\textwidth \latex@dbflt} +\let\latex@xfloat\@xfloat % 1.06(3) +\def\@xfloat#1[#2]{\latex@xfloat#1[#2]\flt@fontsize} + % 1.06(3) +\def\end@float{\flt@endfloat + \ifdim\bib@adjustheight=-\maxdimen\else + \advance\bib@adjustheight\@tempdima + \global\advance\bib@adjustheight\baselineskip \fi + \ifnum\@floatpenalty <\z@ + \@nameuse{@largefloatcheck}% % 2.00(2) + \@cons\@currlist\@currbox + \ifdim \ht\@currbox >\textheight + \ht\@currbox\textheight \fi + \ifnum\@floatpenalty < -\@Mii + \penalty -\@Miv + \@tempdima\prevdepth \vbox{} \prevdepth\@tempdima + \penalty\@floatpenalty + \else \vadjust{\penalty -\@Miv \vbox{}\penalty\@floatpenalty}\@esphack + \fi\fi} +\def\end@dblfloat{\if@twocolumn \flt@endfloat + \ifnum\@floatpenalty <\z@ \@cons\@dbldeferlist\@currbox\fi + \ifnum \@floatpenalty =-\@Mii \@esphack\fi\else\end@float\fi} +\def\flt@endfloat{\par \vskip\z@ + \global\@minipagefalse \@nameuse{outer@nobreak}\egroup % 2.00(2) + \@nameuse{color@endbox}\@normalsize % 2.00(2) + \@tempdima\ht\@currbox \advance\@tempdima\dp\@currbox + \divide\@tempdima\baselineskip \@tempcnta\@tempdima + \advance\@tempcnta\@ne \@tempdima\@tempcnta\baselineskip + \global\setbox\@currbox\vbox to\@tempdima{\vfil\box\@currbox\vfil}} + +\def\cap@beforeskip{\nointerlineskip\vskip5pt} +\def\cap@afterskip{\nointerlineskip\vskip5pt} +\long\def\@caption#1[#2]#3{\par\begingroup + \fs@caption \cap@beforeskip + \@makecaption{{\bf \csname fnum@#1\endcsname}}{\ignorespaces#3}\par + \ifDS@english \cap@afterskip \fi + \endgroup} +\def\ecaption{\@dblarg{\@ecaption\@captype}} +\long\def\@ecaption#1[#2]#3{\par + \begingroup \fs@caption + \@makecaption{\csname fnum@e#1\endcsname}{\ignorespaces #3}\par + \cap@afterskip + \endgroup} + +\newif\ifcap@sw +\newdimen\cap@linewidth +\newdimen\cap@hsize +\newcount\cap@prevgraf +\newbox\cap@box +\let\latex@label\label +\long\def\@makecaption#1#2{\begingroup \gdef\cap@label{}\let\label\@gobble + \setbox0\hbox{#1\hskip\jspaceskip} + \advance\cap@linewidth-\wd0 \advance\cap@hsize-\wd0 + \cap@makepar\cap@linewidth{#2}{\def\label##1{{% %1.03(1) + \def\protect{\noexpand\protect\noexpand} %1.03(1) + \xdef\cap@label{\cap@label\protect\label{##1}}}}} %1.03(1) + \cap@swtrue + \ifnum\cap@prevgraf=\@ne + \setbox1\vbox{\unvcopy1\cap@getbox1 + \ifhbox1 \global\setbox\cap@box\hbox{\unhbox1} + \ifdim\wd\cap@box>\cap@linewidth\else + \global\cap@swfalse \fi\fi} + \ifcap@sw\else + \cap@put{\vtop{\box\cap@box\hbox{}}} + \fi\fi + \ifcap@sw \cap@makepar\cap@hsize{#2}\relax + \ifnum\cap@prevgraf=\tw@ + \setbox1\vbox{\unvcopy1\cap@getbox2\cap@getbox3 + \ifhbox2\ifhbox3 + \setbox2\hbox{\unhbox2}\setbox3\hbox{\unhbox3} + \ifdim\wd2>\cap@hsize\else + \ifdim\wd3>\cap@hsize\else + \global\cap@swfalse + \global\setbox\cap@box\vtop{\box3\box2\hbox{}} + \fi\fi\fi\fi}\fi + \ifcap@sw \setbox1\vtop{\hsize\cap@hsize + \@parboxrestore #2\par\hbox{}}\cap@put{\box1} + \else\cap@put{\box\cap@box}\fi + \fi + \endgroup \cap@label} +\long\def\cap@makepar#1#2#3{\setbox1\vbox{\hsize#1\@parboxrestore + \rightskip\@flushglue \hfuzz\maxdimen + \exhyphenpenalty\z@ \finalhyphendemerits\z@ + \let\@@par\cap@par \let\par\cap@par \global\cap@prevgraf\z@ + #3#2\cap@par}} +\let\cap@@par\@@par +\def\cap@par{\cap@@par\global\advance\cap@prevgraf\prevgraf \prevgraf\z@} +\def\cap@put#1{\hbox to\hsize{\hss\box0#1\hss} + \vskip-\baselineskip\prevdepth\z@} +\def\cap@getbox#1{\@tempcnta10\relax\@whilenum\@tempcnta>0\do{% + \unskip\unkern\unpenalty\advance\@tempcnta\m@ne}\setbox#1\lastbox} + +\def\figref{\fref@ref\fname@figure} +\def\Figref{\fref@ref\fname@Figure} +\def\tabref{\fref@ref\fname@table} +\let\Tabref\tabref +\def\fref@ref#1{\@ifstar{\fref@sref{#1}}{\fref@iref\bf{#1}}} +\def\fref@iref#1#2#3{{\@ifundefined{fref@r@#3}% + {#1#2\fref@doref{#3}\global\@namedef{fref@r@#3}{}}{#2\fref@doref{#3}}}} +\def\fref@sref#1#2{#1\fref@doref{#2}} +\def\fref@doref#1{{\let\null\relax\ref{#1}}} % 1.06(2) +\def\fref@nobreak{\nobreak\ifASCII\else\hskip\@@jasciikanjiskip\fi} + % 1.06(1) + +\def\fig@extraspace{3mm} %1.04(4) +\def\figspace#1{\vskip#1\vskip\fig@extraspace} %1.04(4) + +%%%%%% Footnote %%%%%% + +%% The following codes are from pfnote.sty, by H. Nakashima of Kyoto Univ., +%% to reset footnote counter at the begining of every page. (H.N.) + +% 1.04(2c)>> +\def\footnote{\@ifnextchar[%] + {\@xfootnote}{{\PF@adjustfnote \stepcounter{\@mpfn}% + \xdef\@thefnmark{\thempfn}}\@footnotemark\@footnotetext}} +\def\footnotemark{\@ifnextchar[%] + {\@xfootnotemark}{{\PF@adjustfnote \stepcounter{footnote}% + \xdef\@thefnmark{\thefootnote}}\@footnotemark}} +% 1.04(2c)<< + +\newcount\PF@fnotectr\global\PF@fnotectr=\z@ +\newcount\PF@page\global\PF@page=-\@M +\def\PF@thepage{\number\c@page} +\def\PF@adjustfnote{\global\advance\PF@fnotectr\@ne + \expandafter\ifx\csname PF@fn\number\PF@fnotectr\endcsname\relax + \global\c@footnote\z@\else + \expandafter\@tempcnta\csname PF@fn\number\PF@fnotectr\endcsname\relax + \ifnum\@tempcnta=\PF@page\else + \global\PF@page\@tempcnta \global\c@footnote\z@ \fi\fi +% 1.04(2a)>> + \expandafter\ifx\csname PF@fnpage\number\PF@page\endcsname\relax \else + \expandafter\@tempcnta\csname PF@fnpage\number\PF@page\endcsname\relax + % 2.00(4)>> + \ifnum\@tempcnta>\tw@ \global\let\thefootnote\thefootnotemany + \else \global\let\thefootnote\thefootnoteord \fi\fi % 2.00(4)<< + \@tempcnta\c@footnote \multiply\@tempcnta\@M + \advance\@tempcnta\PF@fnotectr + \if@filesw{\let\PF@thepage\relax + \xdef\@gtempa{\write\@auxout{\string\PF@fnpage + {\number\@tempcnta}{\PF@thepage}}}}% + \@gtempa\fi} +% 1.04(2a)<< + +% 1.04(2a)>> +\def\PF@fnpage#1#2{\@tempcnta#1\relax \@tempcntb\@tempcnta \divide\@tempcnta\@M + \expandafter\xdef\csname PF@fnpage#2\endcsname{\number\@tempcnta} + \multiply\@tempcnta\@M \advance\@tempcntb-\@tempcnta + \global\@namedef{PF@fn\number\@tempcntb}{#2}} +% 1.04(2a)<< +%% End of quote from pfnote.sty. (H.N.) + +\long\def\@makefntext#1{\leftskip20\@Q + \noindent\llap{\@makefnmarkforfn\hskip-\scriptspace\hskip5\@Q}#1} + % 1.04(2e) +\def\@makefnmarkstar{$^{\hbox{\tiny\fn@fontv\@thefnmark}}$} % 1.04(2d) +\def\@makefnmarkdagger{$\@thefnmark$} +\let\@makefnmarkforfn\@makefnmarkstar + +\def\@makefnmark{\smash{\hbox{\scriptsize\fn@fontvi$^{\@thefnmark}$}}} + % 1.04(2d) + % smashed to make it + % zero height + +%% Awful definition of \thefootnote to put subsequent ☆'s. (H.N.) +\def\thefootnote{\leavevmode\hbox{% + \ifcase\c@footnote\or ☆\or ☆☆\or ☆☆☆\else \thefootnotemany\fi}} + % 1.04(2b) +\def\thefootnotemany{\hbox{☆\hskip\z@\number\c@footnote}} % 1.04(2b) + % 2.05(3) +\let\thefootnoteord\thefootnote + + +%%%%%% Citation %%%%%% + +%% The following codes for \cite are from overcite.sty by D. Arseneau, but +%% modified for Trans. IPSJ (H.N.) +% O V E R C I T E . S T Y +% +% version 3.2 (Mar 1993) +% +% Compressed, sorted lists of superscript numerical citations. +% see also CITE.STY and DRFTCITE.STY +% +% Copyright (C) 1989-1993 by Donald Arseneau +% These macros may be freely transmitted, reproduced, or modified for +% non-commercial purposes provided that this notice is left intact. +% +\def\cite{\protect\@p@cite} +\def\@p@cite{\let\@citeY\@citey \@p@@cite} +\def\Cite{\protect\@p@Cite} +\def\@p@Cite{\let\@citeY\@Citey \@p@@cite} +\def\@p@@cite{\@ifnextchar[%] + {\@tempswatrue\@citex}{\@tempswafalse\@citex[]}} +\def\@citex[#1]#2{\@citeY{\@p@citen{#2}}\if@tempswa\space[#1]\fi} +\def\@citey#1{\leavevmode\unskip\kern\z@$\let\@cite@tiestyle\scriptstyle +% % 2.06(2) + \def\@cite@punct{,}\m@th^{\hbox{\scriptsize#1}}$\spacefactor\@m} +\def\@Citey#1{\let\@cite@tiestyle\textstyle + \ifDS@english \def\@cite@punct{,\space\penalty\@highpenalty}%1.04(1) + \else\def\@cite@punct{,}\fi#1\spacefactor\@m} %1.04(1) + +\def\@p@citen#1{% + \edef\@tempa{\@ignspaftercomma,#1, \@end, }% + \edef\@tempa{\expandafter\@ignendcommas\@tempa\@end}% + \if@filesw \immediate\write\@auxout{\string\citation{\@tempa}}\fi + \@tempcntb\m@ne \let\@h@ld\relax \let\@citea\@empty + \let\@celt\relax \def\@cite@list{}% % 2.06(3) + \@for\@citeb:=\@tempa\do{\@make@cite@list}% + \@tempcnta\m@ne \let\@celt\@compress@cite \@cite@list + \@h@ld} +\def\@ignspaftercomma#1, {\ifx\@end#1\@empty\else + #1,\expandafter\@ignspaftercomma\fi} +\def\@ignendcommas,#1,\@end{#1} + +%( +\let\@cite@rp) +\chardef\@cite@escape`\\ +\def\@make@cite@list{% + \expandafter\let\expandafter\@B@citeB\csname b@\@citeb\endcsname + \ifx\@B@citeB\relax + \@citea {\bf ?}\@cite@rp \let\@citea\@cite@punct + \@latex@warning{Citation `\@citeb' on page \thepage\space undefined}% + % 2.00(3) + \global\@namedef{b@\@citeb}{{\bf ?}}% + \else + \ifcat \@cite@escape\ifnum\z@<0\@B@citeB \@cite@escape\else A\fi + \@tempcnta\@B@citeB \relax + \ifnum \@tempcnta>\@tempcntb + \edef\@cite@list{\@cite@list \@celt{\@B@citeB}}% + \@tempcntb\@tempcnta + \else + \edef\@cite@list{\expandafter\@sort@celt\@cite@list\@gobble @}% + \fi + \else \@citea \@B@citeB \@cite@rp \let\@citea\@cite@punct + \fi\fi} + +\def\@sort@celt#1#2{\ifx \@celt #1% parameters are \@celt {num} + \ifnum #2<\@tempcnta % number goes later in list + \@celt{#2}\expandafter\expandafter\expandafter\@sort@celt + \else \@celt{\number\@tempcnta}\@celt{#2}\fi\fi} + +\def\@compress@cite#1{\advance\@tempcnta\@ne + \ifnum #1=\@tempcnta + \ifx\@h@ld\relax \edef\@h@ld{\@citea #1\@cite@rp}% + \else \edef\@h@ld{\hbox{$\@cite@tiestyle\sim$}% + \penalty\@highpenalty #1\@cite@rp}\fi + \else \@h@ld \@citea #1\@cite@rp + \let\@h@ld\relax + \fi \@tempcnta#1\relax \let\@citea\@cite@punct} + +%% End of quote from overcite.sty. (H.N.) + +\def\multicite{\protect\@p@multicite} +\def\@p@multicite#1#2{\@citey{\@p@citen{#1}$\scriptstyle\sim$\@p@citen{#2}}} +\def\multiCite{\protect\@p@multiCite} +\def\@p@multiCite#1#2{\@Citey{\@p@citen{#1}$\sim$\penalty\@highpenalty + \@p@citen{#2}}} + + +%%%%%% Box Height Adjustment and Displayed Math %%%%%% + +\newbox\adj@boxa \newbox\adj@boxb +\newdimen\adj@height +\@tempdima\baselineskip \advance\@tempdima-\topskip +\edef\adj@minaboveclearance{\the\@tempdima} +\@tempdima\baselineskip \advance\@tempdima-1ex +\edef\adj@maxaboveclearance{\the\@tempdima} +\ifDS@english +\setbox0\hbox{A} +\else +\setbox0\hbox{あ} +\fi +\@tempdima\baselineskip \advance\@tempdima-\ht0 \advance\@tempdima\dp0 +\edef\adj@bhd{\the\@tempdima} + +% 2.01(1) >> +\def\adjustvboxheight{\ifinner \let\@tempa\relax + \let\endadjustvboxheight\relax \let\@endadjustvboxheight\relax + \else \let\@tempa\@adjustvboxheight \fi \@tempa} +\def\@adjustvboxheight{\par\penalty\z@ + \global\setbox\adj@boxa\vbox\bgroup\relax % 1.01(3) + \let\@footnotetext\@mpfootnotetext % 2.02(1) +% % 2.05(1) + \hsize\columnwidth} +% 2.01(1) << +\def\endadjustvboxheight{\adj@closebox \adj@putbox + \ifvoid\@mpfootins\else\insert\footins{\unvbox\@mpfootins}\fi +% % 2.02(1) + \global\@ignoretrue\@endparenv} +\def\adj@closebox{\egroup \normalsize \boxmaxdepth\@maxdepth % 1.01(1,3) + \setbox\adj@boxa\vbox{\unvbox\adj@boxa} % 1.01(3) + \adj@height\ht\adj@boxa + \advance\adj@height\adj@minaboveclearance\relax + \@tempdima\adj@height \divide\adj@height\baselineskip + \@tempcnta\adj@height \adj@height\@tempcnta\baselineskip + \ifdim\adj@height<\@tempdima \advance\adj@height\baselineskip\fi} +\def\adj@putbox{\vskip-\prevdepth \prevdepth\z@ \vskip\baselineskip + \vspace*{-\baselineskip}\advance\@tempdima-\adj@height + \@tempdima-\@tempdima \advance\@tempdima\adj@minaboveclearance\relax + \@tempdimb\dp\adj@boxa + \ifdim\@tempdima>\adj@maxaboveclearance\relax + \advance\@tempdima-\@tempdimb \advance\@tempdima\adj@bhd\relax + \divide\@tempdima\tw@ + \vbox to\adj@height{\vskip\@tempdima \box\adj@boxa \vss} + \else \vbox to\adj@height{\vfil\box\adj@boxa\vskip-\@tempdimb}\fi} + +\newcount\adj@deadcycle +\@namedef{adjustvboxheight*}{\adjustvboxheight} +\@namedef{endadjustvboxheight*}{\@endadjustvboxheight} +\def\@endadjustvboxheight{\global\adj@deadcycle10\relax + \@iendadjustvboxheight + \ifvoid\@mpfootins\else\insert\footins{\unvbox\@mpfootins}\fi +% % 2.05(2) + \global\@ignoretrue\@endparenv} +\def\@iendadjustvboxheight{\adj@closebox + \ifnum\adj@deadcycle<\@ne + \ipsj@error{I cannot adjust too tall/deep box}{\@ehd}\fi % 2.00(3) + \global\advance\adj@deadcycle\m@ne + \ifdim\pagegoal=\maxdimen + \@tempdimb\@colht \advance\@tempdimb-\topskip + \advance\@tempdimb\baselineskip + \else \@tempdimb\pagegoal + \advance\@tempdimb-\pagetotal \advance\@tempdimb-\pagedepth + \advance\@tempdimb\prevdepth \fi % 1.01(4a) + \let\next\relax + \ifdim\adj@height<\@tempdimb \adj@putbox \else + \ifdim\adj@height=\@tempdimb \adj@putbox \else + \divide\@tempdimb\baselineskip \@tempcnta\@tempdimb % 1.01(4b)>> + \@tempdimb\@tempcnta\baselineskip + \advance\@tempdimb-\adj@minaboveclearance\relax % 1.01(4b)<< + \setbox\adj@boxa\vbox{\allowbreak\unvbox\adj@boxa} + \vbadness\@M \splittopskip\z@ \splitmaxdepth\@maxdepth %1.01(1) + \setbox\@tempboxa\vsplit\adj@boxa to\@tempdimb + \setbox\adj@boxb\copy\adj@boxa + \setbox\@tempboxa\vbox{\unvbox\@tempboxa} + \@tempdimb\ht\@tempboxa \advance\@tempdimb\dp\@tempboxa + \ifdim\@tempdimb>\z@ + \setbox\adj@boxa\vbox\bgroup\unvbox\@tempboxa + \adj@closebox \adj@putbox \newpage + \else \newpage \fi + \setbox\adj@boxa\vbox\bgroup\unvbox\adj@boxb + \let\next\@iendadjustvboxheight \fi\fi \next} + +\def\adj@eqindent{2\@mojihaba} +\def\[{\adjustvboxheight\advance\@totalleftmargin\adj@eqindent\relax + \hbox to\hsize\bgroup\hskip\@totalleftmargin$\displaystyle} +\def\]{$\hfill\egroup\endadjustvboxheight\@doendpe\ignorespaces} % 2.03(1) +\def\equation{\refstepcounter{equation}\[} +\def\endequation{\hfill\@eqnnum$\egroup\endadjustvboxheight} +\def\theequation{\arabic{equation}} +\def\@eqnnum{{\rm (\theequation)\hskip\@mojihaba}} + +\def\adj@eqnlineskip{3pt} +\def\adj@eqnlineskiplimit{2pt} +\def\eqnarray{\futurelet\@tempa\adj@eqnarray} +\def\adj@eqnarray{\ifx\@tempa[%] + \let\next\adj@ieqnarray\else\let\next\adj@xeqnarray\fi\next} +\def\adj@ieqnarray[#1]{\@ifundefined{adj@xeqnarray#1}% + {\ipsj@warning{Unknown eqnarray option `#1'}\adj@xeqnarray}% 2.00(3) + {\@nameuse{adj@xeqnarray#1}}} +\def\adj@xeqnarray{\adjustvboxheight + \advance\@totalleftmargin\adj@eqindent\relax + \stepcounter{equation}\let\@currentlabel=\theequation + \global\@eqnswtrue + \global\@eqcnt\z@\tabskip\z@\let\\=\@eqncr + \lineskip\adj@eqnlineskip \lineskiplimit\adj@eqnlineskiplimit \jot\z@ + \halign to \hsize\bgroup\@eqnsel\hskip\@totalleftmargin + \hfil$\displaystyle{##}$&\global\@eqcnt\@ne % 1.01(2) + \hfil$\displaystyle{}\mathrel{##}{}$\hfil + &\global\@eqcnt\tw@ $\displaystyle{##}$\hfil + \tabskip\@centering&\llap{##}\tabskip\z@\cr} +\def\adj@xeqnarrays{\let\endadjustvboxheight\@endadjustvboxheight + \adj@xeqnarray} +\@namedef{adj@xeqnarrays!}{\par\let\adjustvboxheight\relax + \let\endadjustvboxheight\relax \adj@xeqnarray} +\def\endeqnarray{\@@eqncr \egroup \global\advance\c@equation\m@ne + \endadjustvboxheight} + + +%%%%%% Kinsoku Parameters %%%%%% + +% 1.04(3)>> +\ifASCII +\postbreakpenalty`\`=\@M +\prebreakpenalty`'=\@M +\prebreakpenalty`)=\@M +\postbreakpenalty`(=\@M +\prebreakpenalty`]=\@M +\postbreakpenalty`[=\@M +\prebreakpenalty`\}=\@M +\postbreakpenalty`\{=\@M + +\prebreakpenalty`・=\@M +\prebreakpenalty`:=\@M +\prebreakpenalty`;=\@M +\prebreakpenalty`?=\@M +\prebreakpenalty`!=\@M + +\prebreakpenalty\jis"212D=\@M % ´ +\postbreakpenalty\jis"212E=\@M % ` +\postbreakpenalty\jis"2146=\@M % ‘ +\prebreakpenalty\jis"2147=\@M % ’ +\postbreakpenalty\jis"2148=\@M % “ +\prebreakpenalty\jis"2149=\@M % ” + +\prebreakpenalty`)=\@M +\postbreakpenalty`(=\@M +\prebreakpenalty`}=\@M +\postbreakpenalty`{=\@M +\prebreakpenalty`]=\@M +\postbreakpenalty`[=\@M +\postbreakpenalty`‘=\@M +\prebreakpenalty`’=\@M + +\postbreakpenalty\jis"214C=\@M %〔 +\prebreakpenalty\jis"214D=\@M % 〕 +\postbreakpenalty\jis"2152=\@M % 〈 +\prebreakpenalty\jis"2153=\@M % 〉 +\postbreakpenalty\jis"2154=\@M % 《 +\prebreakpenalty\jis"2155=\@M % 》 +\postbreakpenalty\jis"2156=\@M % 「 +\prebreakpenalty\jis"2157=\@M % 」 +\postbreakpenalty\jis"2158=\@M % 『 +\prebreakpenalty\jis"2159=\@M % 』 +\postbreakpenalty\jis"215A=\@M % 【 +\prebreakpenalty\jis"215B=\@M % 】 + +\prebreakpenalty`ぁ=\@M +\prebreakpenalty`ぃ=\@M +\prebreakpenalty`ぅ=\@M +\prebreakpenalty`ぇ=\@M +\prebreakpenalty`ぉ=\@M +\prebreakpenalty`っ=\@M +\prebreakpenalty`ゃ=\@M +\prebreakpenalty`ゅ=\@M +\prebreakpenalty`ょ=\@M +\prebreakpenalty\jis"246E=\@M % ゎ +\prebreakpenalty`ァ=\@M +\prebreakpenalty`ィ=\@M +\prebreakpenalty`ゥ=\@M +\prebreakpenalty`ェ=\@M +\prebreakpenalty`ォ=\@M +\prebreakpenalty`ッ=\@M +\prebreakpenalty`ャ=\@M +\prebreakpenalty`ュ=\@M +\prebreakpenalty`ョ=\@M +\prebreakpenalty\jis"256E=\@M % ヮ +\prebreakpenalty\jis"2575=\@M % ヵ +\prebreakpenalty\jis"2576=\@M % ヶ + +\fi +% 1.04(3)<< + + +%%%%%% Miscellaneous %%%%%% + +%% \doublerulesep is 1pt (H.N.) +\arraycolsep5pt \tabcolsep6pt \arrayrulewidth.4pt \doublerulesep1pt +\tabbingsep.5\@mojihaba + +\skip\@mpfootins\skip\footins +\fboxsep3pt \fboxrule.4pt + +%% We simply allow (not encourage) club and widow lines. (H.N.) +\clubpenalty\z@ \widowpenalty\z@ \displaywidowpenalty\z@ + +% The following redefinition influences \linebreak etc. +\def\sloppy{\tolerance9999\hbadness9999\hfuzz.5\p@ \vfuzz.5\p@} + +\endinput diff -r 000000000000 -r 08708e1a2e64 Paper/ipsjdrafts.sty --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Paper/ipsjdrafts.sty Wed Nov 16 18:11:15 2011 +0900 @@ -0,0 +1,364 @@ +% Copyright (C) 1995,1996,1997,1998,1999,2000,2001 +% by Hiroshi Nakashima, Yasuki Saito and +% The Editorial Board of the IPSJ Journal +% +% ipsjdrafts.sty 5-Jun-00 by Hiroshi Nakashima (ver 2.07) +% (revision history deleted) +% ipsjdrafts.sty 24-Apr-95 by Hiroshi Nakashima (ver 1.0) + +%%%%%% Fonts %%%%%% +% All font loading are removed. + +\ifASCII + +\let\latex@setsize\@setsize +\def\@setsize#1#2#3#4{\latex@setsize{#1}{#2}{#3}{#4}\jspaceskip1zw} + +\newcount\jfsize +\let\setjglues\relax +\let\jintercharskip\kanjiskip +\let\jasciikanjiskip\xkanjiskip +\let\jmathkanjiskip\xkanjiskip +\newdimen\jspaceskip + +\def\defjintercharskip#1#2#3#4{\@asciiwarning{\defjintercharskip}} +\def\defjasciikanjiskip#1#2#3#4{\@asciiwarning{\defjasciicharskip}} +\def\defmathkanjiskip#1#2#3#4{\@asciiwarning{\defmathcharskip}} +\def\defjspaceskip#1#2#3#4{\@asciiwarning{\defjspaceskip}} + +\def\@asciiwarning#1{\ipsj@warning{\string#1\space % 2.00(1) + is not supported in ASCII version}} + +\if@LaTeX@eN % 2.00(2)>> +\DeclareOldFontCommand{\mc}{\normalfont\mcfamily}{\mathmc} +\DeclareOldFontCommand{\gt}{\normalfont\gtfamily}{\mathgt} +\fi % 2.00(2)<< + +\def\dg{\gt} % 1.06(1) +\def\dm{\mc} % 1.06(1) + +\else % This is necessary even in 2e. +\ifx\sixdm\undefined \jfont\sixdm=dm6 \fi % 1.01(1) + % 1.06(2) +\fi + +\if@LaTeX@eN % 2.00(2)>> +\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} +\DeclareRobustCommand*{\cal}{\@fontswitch{\relax}{\mathcal}} +\DeclareRobustCommand*{\mit}{\@fontswitch{\relax}{\mathnormal}} +\fi % 2.00(2)<< + +%%%%%% Basic Font Size Macros %%%%%% +% Nothing at all. + + +%%%%%% Font Size Macros %%%%%% + +\def\fs@setsize#1#2#3#4{\normalsize\dimen@\normalbaselineskip + \@ifstar{\@setsize{#1}{\dimen@}{#3}{#4}}% + {\@setsize{#1}{#2}{#3}{#4}}} + +% \baselineskip's are almost 1.25 times those defined in NTT jart12. + +\def\@normalsize{\@setsize\normalsize{20pt}\xiipt\@xiipt} +\def\small{\fs@setsize\small{17pt}\xipt\@xipt} +\def\footnotesize{\fs@setsize\footnotesize{14pt}\xpt\@xpt} +\def\scriptsize{\@setsize\scriptsize{11.875pt}\viiipt\@viiipt} +\def\tiny{\@setsize\tiny{8.75pt}\vipt\@vipt} +\def\large{\@setsize\large{20pt}\xivpt\@xivpt} % 1.06(3) +\def\Large{\@setsize\Large{25pt}\xviipt\@xviipt} +\def\LARGE{\@setsize\LARGE{25pt}\xxpt\@xxpt} +\let\huge\LARGE +\let\Huge\LARGE + +\if@LaTeX@e % 2.00(3)>> +\let\normalsize\@normalsize +\fi % 2.00(3)<< + +\let\fs@sec\large +\let\fs@subsec\normalsize +\let\fs@bibliography\normalsize +\let\fs@caption\normalsize +\let\fs@table\normalsize +\let\fs@footnote\footnotesize +{\tiny \xdef\fn@fontv{\ifASCII \the\jfont \else \sixdm \fi}} +\let\fn@fontvi\fn@fontv + +\@normalsize + +\ifASCII\else % 1.06(2) >> +\ifx\setjglue\undefined\else % 2.04(1) +\def\@tempc{\edef\@tempa{\the\ja} + \edef\@tempa{\expandafter\string\@tempa} + \expandafter\@tempb\@tempa\@nil + \expandafter\defjintercharskip\csname\@tempa\endcsname} +\let\@tempd\@namedef +{\catcode`j=12\catcode`a=12\gdef\@tempb#1#2ja\@nil{\@tempd{@tempa}{#2}}} +\dg\@tempc{0pt}{1.4pt}{0.14pt} +\dm\@tempc{0pt}{1.4pt}{0.14pt} +\setjglues +\fi\fi % 1.06(2) << + +\@tempdima.55\baselineskip +\edef\sec@aboveskip{\the\@tempdima} +\@tempdima.45\baselineskip +\edef\sec@belowskip{\the\@tempdima} + +\if@LaTeX@e\else % 2.04(2) +\let\latex@bf\bf % 1.06(1) +\def\bf{\dg\latex@bf} % 1.06(1) +\fi % 2.04(2) + + +%%%%%% Page Layout Parameters %%%%%% + +\newdimen\@mojihaba +\@mojihaba\jspaceskip + +% No heads +\headheight\z@ +\headsep\z@ + +\setbox0\hbox{$\displaystyle X^X$} +\topskip\ht0 + +% 1 page = 32 lines +\textheight31\baselineskip \advance\textheight\topskip \advance\textheight100sp + +% \topmargin is (A4height-\textheight)/2 - 1in +\topmargin296mm \advance\topmargin-\textheight \divide\topmargin\tw@ +\advance\topmargin-1in +\ifASCII\if@LaTeX@e\@@topmargin\topmargin\fi\fi % 2.00(4) + +\footskip 1.5\baselineskip + +% 1 page = 35 Kanji chars +\ifDS@english % 1.06(4) >> +\textwidth404.13048pt +\else +\textwidth35\@mojihaba +\fi % 1.06(4) << + +% \oddsidemargin is (A4width-\textwidth)/2 - 1in +\oddsidemargin210mm \advance\oddsidemargin-\textwidth \divide\oddsidemargin\tw@ +\advance\oddsidemargin-1in + +% As jart12 +\footnotesep10pt +\skip\footins 10.8pt plus 4pt minus 2pt +\def\footnoterule{\kern-3\p@ \hrule width.4\columnwidth \kern2.6\p@} + +\floatsep \baselineskip \textfloatsep \baselineskip +\intextsep \baselineskip \@maxsep \baselineskip +\dblfloatsep \baselineskip \dbltextfloatsep \baselineskip +\@dblmaxsep \baselineskip +\@fptop 0pt plus 1fil \@fpsep 0pt plus 2fil \@fpbot 0pt plus 1fil +\@dblfptop 0pt plus 1fil \@dblfpsep 0pt plus 2fil \@dblfpbot 0pt plus 1fil + +\parskip\z@ \parindent \@mojihaba +\@lowpenalty 51 \@medpenalty 151 \@highpenalty 301 +\@beginparpenalty -\@lowpenalty \@endparpenalty -\@lowpenalty +\@itempenalty -\@lowpenalty + + +%%%%%% Title and Authors %%%%%% +% +% Format of title, author names and abstract. +% +% \leftline{\LARGE 論文} +% \vfill +% \beign{center}\LARGE\bf <Japanese title>\end{center} +% \vfill +% \begin{center}\LARGE\bf <Engilish title>\end{center} +% \vfill\vfill +% \newpage +% \large <Japanese author names> +% \vfill +% 連絡先 +% \begin{itemize}\item[]\large <Contact address>\end{itemize} +% \vfill\vfill +% \newpage +% \normalsize <Japanese abstract> +% \normalsize <English abstract> + +\def\maketitle{\@maketitle} + +% default title header + +\def\title{\@dblarg{\@xtitle}} +\def\@xtitle[#1]#2{\gdef\@title{#2}} +\def\@title{\leavevmode\mkt@warning\title} +\long\def\author#1{\long\gdef\@author{#1}} +\def\@author{\mkt@warning\author} + +\newbox\@abstractbox + +\def\abstract{\global\let\@abstract\relax + \global\setbox\@abstractbox\vtop\bgroup} +\def\endabstract{\par\hbox{}\egroup} +\def\@abstract{\mkt@warning{abstract env}} + +%% We need English title, author name(s) and abstract. (H.N.) +%% English author names are simply ignored. +\def\etitle#1{\gdef\@etitle{#1}} +\def\@etitle{\leavevmode\mkt@warning\etitle} +\long\def\eauthor#1{} + +\newbox\@eabstractbox +\def\eabstract{\global\let\@eabstract\relax + \global\setbox\@eabstractbox\vtop\bgroup} +\let\endeabstract\endabstract +\def\@eabstract{\mkt@warning{eabstract env}} + +\ifDS@english \let\abstract\eabstract \let\@eabstract\@abstract \fi + +% Contact address is required in draft. +\def\contact{\long\def\mkt@contact} +\def\mkt@contact{\leavevmode\mkt@warning\contact} + +\def\mkt@warning#1{\ipsj@warning{Missing \string#1}} % 2.00(1) + +\def\@maketitle{\newpage\thispagestyle{empty} + \leftline{\LARGE + \ifDS@english \ifDS@technote Technical Note\else + Regular Paper\fi + \else \ifDS@technote テクニカルノート\else 論文\fi\fi} + \vfill + \begin{center}\LARGE\bf\@title\end{center} + \ifDS@english\else + \vfill + \begin{center}\LARGE\bf\@etitle\end{center}\fi + \@thanks + \vfill\vfill + \newpage\thispagestyle{empty} + \begingroup\large\vspace*{\fill}\rightskip0pt plus1fil + \parindent\z@\parskip.5\baselineskip\hangindent2em\hangafter\@ne + \def\par{{\@@par}} + \mkt@makeauthor + \par\vfill + \noindent + \ifDS@english Contact To:\else 連絡先\fi + \endgroup + \begin{itemize}\large\item[]\mkt@contact\end{itemize} + \vfill\vfill\newpage \setcounter{page}{1}\def\thepage{\roman{page}} + \ifDS@english\else \@abstract \centerline{\bf 概要} + \vskip-\prevdepth\vskip\baselineskip\vskip-\ht\@abstractbox + \unvbox\@abstractbox\prevdepth\z@ \fi + \centerline{\bf Abstract} + \vskip-\prevdepth \vskip\baselineskip\vskip-\ht\@eabstractbox + \@eabstract \unvbox\@eabstractbox + \newpage \def\thepage{\arabic{page}}\setcounter{page}{1}} + +\def\mkt@makeauthor{\let\member\mkt@member \let\nomember\mkt@nomember + \let\stmember\mkt@stmember + \expandafter\mkt@imakeauthor\@author\and\@nil\and} +\def\mkt@imakeauthor#1\and{\def\@tempa{#1}\ifx\@tempa\@nnil\let\next\relax + \else #1\par\let\next\mkt@imakeauthor\fi\next} + +% Macros to specify author's affiliation easily. +\ifDS@english +\def\paffilabel#1#2{\affilabel{#1}{Presently with #2}} +\else +\def\paffilabel#1#2{\affilabel{#1}{現在 #2}} +\fi +% Ignore English affiliation even if given. +\def\affilabel#1#2{\@ifundefined{affi@r@#1}% + {\expandafter\xdef\csname affi@r@#1\endcsname + {\affi@cuteng#2\\\@nil}} + {\ipsj@warning{Affiliation label `#1' multiply defined}}} + % 2.00(1) +\def\affiref#1{\@ifundefined{affi@r@#1}% + {\ipsj@warning{% % 2.00(1) + Affiliation reference `#1' undefined}\hbox{(???)}} + {\setbox\@tempboxa\hbox{(\csname affi@r@#1\endcsname)}% + \@tempdima\wd\@tempboxa \advance\@tempdima2em\relax + \ifdim\@tempdima>\hsize + \newline\unhbox\@tempboxa + \else\ \box\@tempboxa\fi}} +\def\affi@cuteng#1\\#2\@nil{#1} + +% Membership of aurthor is required in draft. +\ifDS@english +\def\mkt@member#1{\ \hbox{[Regular Member\##1]}} +\def\mkt@nomember{\ \hbox{[Non Member]}} +\def\mkt@stmember#1{\ \hbox{[Student Member\##1]}} +\else +\def\mkt@member#1{\ \hbox{[正会員\##1]}} +\def\mkt@nomember{\ \hbox{[非会員]}} +\def\mkt@stmember#1{\ \hbox{[学生会員\##1]}} +\fi + +%%%%%% Page Header and Footer %%%%%% + +\mark{{}{}} + +% The following counters are not used, but may appear. +\let\c@volpage\c@page % 2.00(5) +\def\thevolpage{\thepage} % 2.00(5) +\newcounter{volpageoffset} % You must set this to appropriate value +\newcounter{volume}\expandafter\let\csname c@巻数\endcsname\c@volume +\newcounter{number}\expandafter\let\csname c@号数\endcsname\c@number +\newcounter{year}\expandafter\let\csname c@年数\endcsname\c@year + +\def\ps@plain{\let\@mkboth\@gobbletwo + \def\@oddhead{\@checklines}\let\@evenhead\@oddhead + \def\@oddfoot{\rm \hfil\thepage\hfil}\let\@evenfoot\@oddfoot} + +% \checklines enables to draw a horizontal rule onto each baselines. + +\newif\if@checklines \@checklinesfalse +\def\checklines{\@checklinestrue} +\def\@checklines{\if@checklines \rlap{\smash{\vtop{ + \hbox{} \vskip\headsep \hrule width\textwidth\vskip-.4pt \vskip\topskip + \hrule\vskip-.4pt + \@tempcnta31\relax\@@checklines}}}\hfil\fi} +\def\@@checklines{\ifnum\@tempcnta>\z@ + \vskip\normalbaselineskip \hrule\vskip-.4pt \advance\@tempcnta\m@ne + \let\next\@@checklines\else\let\next\relax\fi\next} + +\pagestyle{plain} +\pagenumbering{arabic} + +\ifDS@english\else +\def\today{\the\year 年 \the\month 月 \the\day 日} +\fi + + +%%%%%% Output Routine %%%%%% +% Nothing at all. + + +%%%%%% Biography %%%%%% +% Almost nothing. + +\def\受付#1#2#3{}\let\received\受付 +\def\採録#1#2#3{}\let\accepted\採録 + +\def\biography{\let\member\@gobble \let\nomember\@gobble \let\stmember\@gobble + \let\adjust\@gobble \setbox0\vbox\bgroup + \tolerance\@M \hbadness\@M \hfuzz\maxdimen} +\def\endbiography{\egroup\setbox0\hbox{}} + + +%%%%%% Miscellaneous %%%%%% + +\raggedbottom + +\input{ipsjcommon.sty} + +% Redefine \acknowledgment to put it separately. +\newbox\ack@box +\let\@acknowledgment\acknowledgment +\def\acknowledgment{\global\setbox\ack@box\vtop\bgroup\@acknowledgment} +\def\endacknowledgment{\par\egroup} + +\let\id@enddocument\enddocument +\def\enddocument{\clearpage \unvbox\ack@box \id@enddocument} + +\endinput diff -r 000000000000 -r 08708e1a2e64 Paper/ipsjpapers.cls --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Paper/ipsjpapers.cls Wed Nov 16 18:11:15 2011 +0900 @@ -0,0 +1,17 @@ +% Copyright (C) 1995,1996,1997,1998,1999,2000,2001 +% by Hiroshi Nakashima, Yasuki Saito and +% The Editorial Board of the IPSJ Journal +% +% ipsjpapers.cls 15-May-01 by Hiroshi Nakashima (ver 2.08) +% (revision history deleted) +% ipsjpapers.cls 1-Apr-96 by Hiroshi Nakashima (ver 2.00) + +\ifx\pfmtname\undefined +\NeedsTeXFormat{LaTeX2e} +\else +\NeedsTeXFormat{pLaTeX2e} +\fi + +\ProvidesClass{ipsjpapers}[2001/05/01 ver 2.08] +\input{ipsjpapers.sty} +\endinput diff -r 000000000000 -r 08708e1a2e64 Paper/ipsjpapers.sty --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Paper/ipsjpapers.sty Wed Nov 16 18:11:15 2011 +0900 @@ -0,0 +1,1788 @@ +% Copyright (C) 1995,1996,1997,1998,1999,2000,2001 +% by Hiroshi Nakashima, Yasuki Saito and +% The Editorial Board of the IPSJ Journal +% +% ipsjpapers.sty 15-May-01 by Hiroshi Nakashima (ver 2.08) +% (revision history deleted) +% ipsjpapers.sty 24-Apr-95 by Hiroshi Nakashima (ver 1.0) +% ipsjpapers.sty 30-Nov-93 by Hiroshi Nakashima +% ipsjpapers.sty 3-Feb-93 by Yaski Saito +% compsoft.sty 22-April-92 by Yaski Saito +% compsoft.sty 18-July-90 by Hideki Isozaki +% j-article.sty 10-Feb-89 from report.sty 16-Mar-88 + +%%%%%% LaTeX Version %%%%%% + +% 2.00(1) >> +%% \ifASCII is true if ASCII version Japanese TeX, which doesn't have +%% \jintercharskip (H.N.) +\newif\ifASCII \ASCIIfalse +\ifx\jintercharskip\undefined\ASCIItrue\fi +\newif\if@LaTeX@e \@LaTeX@efalse % 1.06(1) +\newif\if@LaTeX@eN \@LaTeX@eNfalse % 2.00(1) +\def\@tempa{LaTeX2e} % 1.06(1) +\ifx\fmtname\@tempa \@LaTeX@etrue % 1.06(1) +\ifx\xpt\undefined \@LaTeX@eNtrue \fi\fi % 2.00(1) +% 2.00(1) << + + +%%%%%% Document Styles %%%%%% + +% 2.00(2) >> +\newif\ifDS@printer \DS@printerfalse +\newif\ifDS@english \DS@englishfalse +\newif\ifDS@technote \DS@technotefalse +\newif\ifDS@preface \DS@prefacefalse +\newif\ifDS@draft \DS@draftfalse +\newif\ifDS@techrep \DS@techrepfalse % 1.05(2) +\newif\ifDS@sigrecommended \DS@sigrecommendedfalse % 2.04(1) +\newif\ifDS@invited \DS@invitedfalse % 2.06(1) +\newif\ifDS@abstract \DS@abstractfalse % 2.07(7) +\newif\ifDS@private \DS@privatefalse % 2.07(8) + +\if@LaTeX@eN +\DeclareOption{printer}{\DS@printertrue} +\DeclareOption{english}{\DS@englishtrue} +\DeclareOption{technote}{\DS@technotetrue} +\DeclareOption{preface}{\DS@prefacetrue} +\DeclareOption{draft}{\DS@drafttrue} +\DeclareOption{techrep}{\DS@techreptrue} +\DeclareOption{sigrecommended}{\DS@sigrecommendedtrue} % 2.04(1) +\DeclareOption{invited}{\DS@invitedtrue} % 2.06(1) +\DeclareOption{abstract}{\DS@abstracttrue} % 2.07(7) +\DeclareOption{private}{\DS@privatetrue} % 2.07(8) +\DeclareOption{10pt}{\def\@ptsize{0}} +\DeclareOption{11pt}{\def\@ptsize{1}} +\DeclareOption{12pt}{\def\@ptsize{2}} +\ExecuteOptions{10pt} +\ProcessOptions +\def\ipsj@warning{\ClassWarning{ipsjpapers}} % 2.00(3) +\def\ipsj@error{\ClassError{ipsjpapers}} % 2.00(3) +\newskip \old@latex@skip % 2.00(14) +\let\@maxsep\old@latex@skip % 2.00(14) +\let\@dblmaxsep\old@latex@skip % 2.00(14) + +\else +\expandafter\ifx\csname ver@ipsjpapers.cls\endcsname\relax +\typeout{Document Style `ipsjpapers' (ver 2.08) <15 May 2001>.} % 2.05(1) +\fi + +\def\ds@printer{\DS@printertrue} +\def\ds@english{\DS@englishtrue} +\def\ds@technote{\DS@technotetrue} +\def\ds@preface{\DS@prefacetrue} +\def\ds@draft{\DS@drafttrue} +\def\ds@techrep{\DS@techreptrue} % 1.05(2) +\def\ds@sigrecommended{\DS@sigrecommendedtrue} % 2.04(1) +\def\ds@invited{\DS@invitedtrue} % 2.06(1) +\def\ds@abstract{\DS@abstracttrue} % 2.07(7) +\def\ds@private{\DS@privatetrue} % 2.07(8) + +% 1.04(3)>> +\def\@ptsize{0} +\@namedef{ds@11pt}{\def\@ptsize{1}} +\@namedef{ds@12pt}{\def\@ptsize{2}} +% 1.04(3)<< + +\@options +\let\ipsj@warning\@warning % 2.00(3) +\let\@latex@warning\@warning % 2.00(3) +\def\ipsj@error#1#2{\errhlp{#2}\errmessge{#1}} % 2.00(3) +\fi +% 2.00(2) << + +\ifx\@classoptionslist\undefined\else % 2.03(1) >> +\def\ipsj@draft@option{draft} +\def\ipsj@remove@draft@option{\def\@tempb{}% + \@for\@tempa:=\@classoptionslist\do{% + \ifx\@tempa\ipsj@draft@option\else + \edef\@tempb{\@tempb,\@tempa}\fi}% + \ifx\@tempb\@empty \def\@classoptionslist{}\else + \expandafter\ipsj@remove@draft@ption\@tempb\@nil\fi} +\def\ipsj@remove@draft@ption,#1\@nil{% + \def\@classoptionslist{#1}} +\ipsj@remove@draft@option +\fi % 2.03(1) << + +%%%%%% Basics %%%%%% + +\newdimen\@Q \@Q=0.25mm + +\lineskip\z@ \normallineskip\z@ +\lineskiplimit\z@ \normallineskiplimit\z@ +\abovedisplayskip\z@ \belowdisplayskip\z@ +\abovedisplayshortskip\z@ \belowdisplayshortskip\z@ + +\def\baselinestretch{1} +\jot\z@ + +\ifDS@draft\def\next{\input{ipsjdrafts.sty}\endinput}\else\let\next\relax\fi +\next + +\@twosidetrue + +%%%%%% Fonts %%%%%% +% \finvedm(dg) dm5 \vpt \tiny fn-mark +% \sixdm(dg) dm6 \vipt \scriptsize +% \sevendm(dg) dm7 \vipt \footnotesize f-note, capt +% 10Q = 7.11304pt -> w(min7) = 6.73550pt +% \eightdm(dg) dm8 \viiipt \small abst, header +% 11Q = 7.82434pt -> w(min8) = 7.69772pt +% \eightdm(dg)half dm9 \ixpt \normalsize main text +% 12Q = 8.53564pt -> w(min9) = 8.65994 +% \tendm(dg) dm10 \xpt \large sec title +% 13Q = 9.24695pt -> w(min10) = 9.62216pt +% \tendm(dg)half dm10*1095 \xipt \Large author names +% 15Q =10.66956pt -> w(min10*1095) = 10.53625pt +% (\twlvdm) (dm12) \xiipt \LARGE e-title +% \twelvedm(dg)half dm12*1095 \xivpt \huge title +% min10*1440 +% 18Q =12.80347pt -> w(min10*1440) = 13.8559pt +% +% Note that cm fonts follows LaTeX standard. (e.g. \viiipt -> cmr8, etc.) + +% 2.00(4)>> +\if@LaTeX@e +\ifASCII +\def\ipsj@declare@font#1#2#3{{\fontsize{#3}{\z@}#2\selectfont % 2.00(5)>> + \edef\@tempa{\the\jfont} + \expandafter\global\expandafter\let\expandafter#1\@tempa}} % 2.00(5)<< + +\ifDS@printer % ASCII LaTeX2e printer +\DeclareFontShape{JY1}{mc}{m}{n}{% + <5> sfixed* [5.175] min5 % 7Q/w5 = 4.97922/4.81108=1.035 + <6> sfixed* [5.916] min6 % 8Q/w6 = 5.69055/5.77328=0.986 + <7> sfixed* [7.392] min7 %10Q/w7 = 7.11304/6.73550=1.056 + <8> sfixed* [8.128] min8 %11Q/w8 = 7.82434/7.69772=1.016 + <9> sfixed* [8.872] min8 %12Q/w8 = 8.53564/7.69772=1.109 + <10> sfixed* [9.610] min10 %13Q/w10= 9.24695/9.62216=0.961 + <10.95> sfixed* [11.09] min10 %15Q/w10=10.66956/9.62216=1.109 + <12> sfixed* [11.83] min10 %16Q/w10=11.38110/9.62216=1.183 + <14.4> sfixed* [13.31] min10 %18Q/w10=12.80347/9.62216=1.331 +}{} +\DeclareFontShape{JY1}{gt}{m}{n}{% + <5> sfixed* [5.175] goth5 % 7Q/w5 = 4.97922/4.81108=1.035 + <6> sfixed* [5.916] goth6 % 8Q/w6 = 5.69055/5.77328=0.986 + <7> sfixed* [7.392] goth7 %10Q/w7 = 7.11304/6.73550=1.056 + <8> sfixed* [8.128] goth8 %11Q/w8 = 7.82434/7.69772=1.016 + <9> sfixed* [8.872] goth8 %12Q/w8 = 8.53564/7.69772=1.109 + <10> sfixed* [9.610] goth10 %13Q/w10= 9.24695/9.62216=0.961 + <10.95> sfixed* [11.09] goth10 %15Q/w10=10.66956/9.62216=1.109 + <12> sfixed* [11.83] goth10 %16Q/w10=11.38110/9.62216=1.183 + <14.4> sfixed* [13.31] goth10 %18Q/w10=12.80347/9.62216=1.331 +}{} + +\ipsj@declare@font\fn@fontvii\mcfamily\@vpt + +%% The following fonts are out of NFSS scheme +\font\fn@fontv min5 scaled739 % 5Q/w5 = 3.55658/4.81108=0.739 +\font\fn@fontvi min5 scaled887 % 6Q/w5 = 4.26790/4.81108=0.887 +\font\fn@fontxv goth10 scaled1035 %14Q/w10= 9.95846/9.62216=1.035 + +\else % ASCII LaTeX2e non-printer +\ipsj@declare@font\fn@fontv\mcfamily\@vpt +\ipsj@declare@font\fn@fontvi\mcfamily\@vpt +\ipsj@declare@font\fn@fontvii\mcfamily\@vpt +\ipsj@declare@font\fn@fontxv\gtfamily\@xipt +\fi + +\else % NTT LaTeX2e +\def\ipsj@declare@font#1#2#3{{\fontsize{#3}{\z@}#2\selectfont % 2.00(5) + \xdef#1{\expandafter\noexpand\csname\jf@ntn@me\endcsname}}} % 2.00(5) +\ipsj@declare@font\fn@fontv\dm\@vpt +\ipsj@declare@font\fn@fontvi\dm\@vpt +\ipsj@declare@font\fn@fontvii\dm\@vpt +\ipsj@declare@font\fn@fontxv\dg\@xipt +\fi +% 2.00(4) << + +\else % LaTeX 2.09 % 2.00(4) +%% Fonts for ASCII TeX. (H.N.) +\ifASCII +\ifDS@printer +\font\fn@fontv min5 scaled739 % 5Q/w5 = 3.55658/4.81108=0.739 +\font\fn@fontvi min5 scaled887 % 6Q/w5 = 4.26790/4.81108=0.887 +\font\fivedm min5 scaled1035 % 7Q/w5 = 4.97922/4.81108=1.035 +\font\fivedg goth5 scaled1035 +\font\sixdm min6 scaled986 % 8Q/w6 = 5.69055/5.77328=0.986 +\font\sixdg goth6 scaled986 +\font\sevendm min7 scaled1056 %10Q/w7 = 7.11304/6.73550=1.056 +\font\sevendg goth7 scaled1056 +\font\eightdm min8 scaled1016 %11Q/w8 = 7.82434/7.69772=1.016 +\font\eightdg goth8 scaled1016 +\font\eightdmhalf min8 scaled1109 %12Q/w8 = 8.53564/7.69772=1.109 +\font\eightdghalf goth8 scaled1109 +\font\tendm min10 scaled961 %13Q/w10= 9.24695/9.62216=0.961 +\font\tendg goth10 scaled961 +\font\fn@fontxv goth10 scaled1035 %14Q/w10= 9.95846/9.62216=1.035 +\font\tendmhalf min10 scaled1109 %15Q/w10=10.66956/9.62216=1.109 +\font\tendghalf goth10 scaled1109 +\font\twelvedm min10 scaled1183 %16Q/w10=11.38110/9.62216=1.183 +\font\twelvedg goth10 scaled1183 +\font\twelvedmhalf min10 scaled1331 %18Q/w10=12.80347/9.62216=1.331 +\font\twelvedghalf goth10 scaled1331 +\let\fn@fontvii\fivedm + +\else +\font\fivedm min5 +\font\fivedg goth5 +\font\sixdm min6 +\font\sixdg goth6 +\font\sevendm min7 +\font\sevendg goth7 +\font\eightdm min8 +\font\eightdg goth8 +\font\eightdmhalf min9 +\font\eightdghalf goth9 +\font\tendm min10 +\font\tendg goth10 +\font\tendmhalf min10 scaled\magstephalf +\font\tendghalf goth10 scaled\magstephalf +\font\twelvedm min10 scaled\magstep1 +\font\twelvedg goth10 scaled\magstep1 +\font\twelvedmhalf min10 scaled\magstep2 +\font\twelvedghalf goth10 scaled\magstep2 +\let\fn@fontv\fivedm +\let\fn@fontvi\fivedm +\let\fn@fontvii\fivedm +\let\fn@fontxv\tendghalf + +\fi + +%% ASCII doesn't have \old@Npt. (H.N.) +\let\old@@vpt\vpt +\let\old@@vipt\vipt +\let\old@@viipt\viipt +\let\old@@viiipt\viiipt +\let\old@@ixpt\ixpt +\let\old@@xpt\xpt +\let\old@@xipt\xipt +\let\old@@xiipt\xiipt +\let\old@@xivpt\xivpt + +\def\old@vpt{\old@@vpt\jspaceskip1zw\relax} +\def\old@vipt{\old@@vipt\jspaceskip1zw\relax} +\def\old@viipt{\old@@viipt\jspaceskip1zw\relax} +\def\old@viiipt{\old@@viiipt\jspaceskip1zw\relax} +\def\old@ixpt{\old@@ixpt\jspaceskip1zw\relax} +\def\old@xpt{\old@@xpt\jspaceskip1zw\relax} +\def\old@xipt{\old@@xipt\jspaceskip1zw\relax} +\def\old@xiipt{\old@@xiipt\jspaceskip1zw\relax} +\def\old@xivpt{\old@@xivpt\jspaceskip1zw\relax} + + % 2.00(6) + % 1.06(2) + +%% ASCII doesn't have \dg nor \dm. (H.N.) +\def\dg{\protect\pdg} +\def\dm{\protect\pdm} +%% Redefine \gt and \mc +\def\gt{\protect\pdg} +\def\mc{\protect\pdm} +\let\pdm\relax + +\else +%% Fonts for NTT jTeX +%% \magstephalf and \magstep1 may cause trouble in older versions. + +\jfont\fivedm=dm5 +\jfont\fivedg=dg5 +\jfont\sixdm=dm6 +\jfont\sixdg=dg6 +\jfont\sevendm=dm7 +\jfont\sevendg=dg7 +\jfont\eightdm=dm8 +\jfont\eightdg=dg8 +\jfont\eightdmhalf=dm9 +\jfont\eightdghalf=dg9 +\jfont\tendm=dm10 +\jfont\tendg=dg10 +\jfont\tendmhalf=dm10 scaled 1095 +\jfont\tendghalf=dg10 scaled 1095 +\jfont\twelvedm=dm12 +\jfont\twelvedg=dg12 +\jfont\twelvedmhalf=dm12 scaled 1095 +\jfont\twelvedghalf=dg12 scaled 1095 +\let\fn@fontv\fivedm +\let\fn@fontvi\fivedm +\let\fn@fontvii\fivedm +\let\fn@fontxv\tendghalf + % 1.06(3) +\fi +\fi + +\ifx\jfsize\undefined \newcount\jfsize \fi % 1.06(2) + +\ifASCII % 1.06(3),2.00(6)>> +\let\setjglues\relax +\let\jintercharskip\kanjiskip +\let\jasciikanjiskip\xkanjiskip +\let\jmathkanjiskip\xkanjiskip +\newdimen\jspaceskip + +\def\defjintercharskip#1#2#3#4{\@asciiwarning{\defjintercharskip}} +\def\defjasciikanjiskip#1#2#3#4{\@asciiwarning{\defjasciicharskip}} +\def\defmathkanjiskip#1#2#3#4{\@asciiwarning{\defmathcharskip}} +\def\defjspaceskip#1#2#3#4{\@asciiwarning{\defjspaceskip}} + +\def\@asciiwarning#1{\ipsj@warning{\string#1\space % 2.00(3) + is not supported in ASCII version}} + % 1.06(3),2.00(6)<< +\else % 2.00(7)>> +\if@LaTeX@e +\ipsj@declare@font\fn@eightdmhalf\dm\@ixpt +\ipsj@declare@font\fn@eightdghalf\dg\@ixpt +\else +\def\fn@eightdmhalf{\eightdmhalf} +\def\fn@eightdghalf{\eightdghalf} +\fi +\ifx\setjglues\undefined\else +\expandafter\defjintercharskip\fn@eightdmhalf{0pt}{1.4pt}{0.5pt} +\expandafter\defjintercharskip\fn@eightdghalf{0pt}{1.4pt}{0.5pt} +\expandafter\defjasciikanjiskip\fn@eightdmhalf{2pt}{1pt}{1pt} +\expandafter\defjasciikanjiskip\fn@eightdghalf{2pt}{1pt}{1pt} +\expandafter\defjmathkanjiskip\fn@eightdmhalf{2pt}{1pt}{1pt} +\expandafter\defjmathkanjiskip\fn@eightdghalf{2pt}{1pt}{1pt} +\fi % 2.00(7)<< +\fi % 2.00(4) + +\if@LaTeX@e % 2.00(8)>> +\if@LaTeX@eN +\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} +\DeclareRobustCommand*{\cal}{\@fontswitch{\relax}{\mathcal}} +\DeclareRobustCommand*{\mit}{\@fontswitch{\relax}{\mathnormal}} +\ifASCII +\DeclareOldFontCommand{\mc}{\normalfont\mcfamily}{\mathmc} +\DeclareOldFontCommand{\gt}{\normalfont\gtfamily}{\mathgt} +\fi\fi +\ifASCII +\def\dm{\mc} +\def\dg{\gt} +\fi\fi % 2.00(8)<< + +%%%%%% Basic Font Size Macros %%%%%% + +\if@LaTeX@e % 1.06(4),2.00(9),2.04(3)>> +\def\@setsize#1#2#3#4{\@setfontsize#1{#4}{#2}\ipsj@setjspaceskip} +\ifASCII +\def\ipsj@setjspaceskip{\jspaceskip1zw\relax} +\else +\let\ipsj@setjspaceskip\relax +\fi % 1.06(4),2.00(9),2.04(3)<< + +%% \vipt etc. are redefined to use appropriate Japanese fonts. +\else % 2.00(9) +\def\vpt{\old@vpt\fivedm\let\pdg\fivedg\let\pdm\fivedm\jfsize=5\relax} +\def\vipt{\old@vipt\sixdm\let\pdg\sixdg\let\pdm\sixdm\jfsize=6\relax} +\def\viipt{\old@viipt\sevendm\let\pdg\sevendg\let\pdm\sevendm\jfsize=7\relax} +\def\viiipt{\old@viiipt\eightdm\let\pdg\eightdg\let\pdm\eightdm\jfsize=8\relax} +\def\ixpt{\old@ixpt\eightdmhalf\let\pdg\eightdghalf\let\pdm\eightdmhalf + \jfsize=9\relax \@ixptboldmath} % 1.02(2) +\def\xpt{\old@xpt\tendm\let\pdg\tendg\let\pdm\tendm\jfsize=10\relax} +\def\xipt{\old@xipt\tendmhalf\let\pdg\tendghalf\let\pdm\tendmhalf\jfsize=11 + \relax} +\def\xiipt{\old@xiipt\twelvedm\let\pdg\twelvedg\let\pdm\twelvedm + \jfsize=12\relax} +\def\xivpt{\old@xivpt\twelvedmhalf\let\pdg\twelvedghalf\let\pdm\twelvedmhalf + \jfsize=14\relax} +\fi % 2.00(9) + +\if@LaTeX@e % 1.06(5) +\let\@ixptboldmath\relax % 1.06(5) +\else % 1.06(5) +% 1.02(2) >> +\ifDS@printer +\def\@ixptboldmath{% + \def\unboldmath{\everymath{}\everydisplay{}\@nomath\unboldmath + \textfont\@ne\ninmi + \textfont\tw@\ninsy \textfont\lyfam\ninly + \@boldfalse}\@boldfalse + \def\boldmath{\@ifundefined{ninmib}{% + \global\font\ninmib\@mbi\@ptscale9\relax + \global\font\ninsyb\@mbsy\@ptscale9\relax + \global\font\ninlyb\@lasyb\@ptscale9\relax + \@addfontinfo\@ixpt + {\def\boldmath{\everymath{\mit}\everydisplay{\mit}% + \@prtct\@nomathbold + \textfont\@ne\ninmib \textfont\tw@\ninsyb + \textfont\lyfam\ninlyb \@prtct\@boldtrue}}}{}% + \@ixpt\boldmath}} +\else +\def\@ixptboldmath{% + \def\unboldmath{\everymath{}\everydisplay{}\@nomath\unboldmath + \textfont\@ne\ninmi + \textfont\tw@\ninsy \textfont\lyfam\ninly + \@boldfalse}\@boldfalse +% 1.03(1) >> + \def\boldmath{\@ifundefined{ninmib}{\global\font\ninmib\@mbi + \global\font\ninsyb\@mbsy\relax + \global\font\ninlyb\@lasyb\relax + \@addfontinfo\@ixpt + {\def\boldmath{\everymath{\mit}\everydisplay{\mit}% + \@prtct\@nomathbold + \textfont\@ne\ninmib \textfont\tw@\ninsyb + \textfont\lyfam\ninlyb \@prtct\@boldtrue}}}{}% + \@ixpt\boldmath}} +% 1.03(1) << +\fi +% 1.02(2) << +\fi % 1.06(5) + + +%%%%%% Font Size Macros %%%%%% + +\def\fs@setsize#1#2#3#4{\normalsize\dimen@\normalbaselineskip + \@ifstar{\@setsize{#1}{\dimen@}{#3}{#4}}% + {\@setsize{#1}{#2}{#3}{#4}}} + +% s = (3*b - (h' + d') - (h + d))/2 +% s_a = s + h' + d - b +% s_b = s + h + d' - b +\def\sec@setskips#1{\setbox0\hbox{\fs@sec\bf#1}\setbox1\hbox{#1} + \@tempdima3\baselineskip + \advance\@tempdima-\ht0 \advance\@tempdima-\dp0 + \advance\@tempdima-\ht1 \advance\@tempdima-\dp1 + \divide\@tempdima\tw@ \advance\@tempdima-\baselineskip + \@tempdimb\@tempdima + \advance\@tempdima\ht0 \advance\@tempdima\dp1 + \advance\@tempdimb\ht1 \advance\@tempdimb\dp0 + \edef\sec@aboveskip{\the\@tempdima} + \edef\sec@belowskip{\the\@tempdimb}} + +\ifDS@english +% size pt \baselineskip size \?pt \baselineskip +% \normalsize 10 16Q \large 11 18Q (*) +% \small 9 15Q \Large 12 22Q +% \footnotesize 8 13Q \LARGE 14 26Q (*) +% \scriptsize 6 8pt (*) \huge 18 30Q (*) +% \tiny 5 6pt (*) \Huge 18 30Q (*) +% * : not measured + +\def\@normalsize{\@setsize\normalsize{16\@Q}\xpt\@xpt} +\def\small{\fs@setsize\small{15\@Q}\ixpt\@ixpt} +\def\footnotesize{\fs@setsize\footnotesize{13\@Q}\viiipt\@viiipt} +\def\scriptsize{\@setsize\scriptsize{8pt}\viipt\@viipt} +\def\tiny{\@setsize\tiny{6pt}\vpt\@vpt} +\def\large{\@setsize\Large{18\@Q}\xipt\@xipt} +\def\Large{\@setsize\LARGE{22\@Q}\xiipt\@xiipt} +\def\LARGE{\@setsize\LARGE{26\@Q}\xivpt\@xivpt} +\def\huge{\@setsize\Huge{30\@Q}\xviipt\@xviipt} +\let\Huge\huge + +\ifDS@techrep % 1.05(2)>> +\def\@normalsize{\@setsize\normalsize{17\@Q}\xpt\@xpt} +\fi % 1.05(2)<< + +\if@LaTeX@e % 2.00(10)>> +\let\normalsize\@normalsize +\fi % 2.00(10)<< + +\let\fs@footnote\footnotesize +\let\fs@caption\footnotesize +\let\fs@table\footnotesize +\let\fs@eabst\footnotesize +\let\fs@header\footnotesize +\let\fs@footer\footnotesize +\let\fs@bibliography\small +\let\fs@subsec\normalsize +\let\fs@sec\normalsize +\let\fs@type\large +\let\fs@eauthor\large +\let\fs@title\Large + +\@normalsize + +\sec@setskips{A} + +\else +% size pt \baselineskip size \?pt \baselineskip +% \normalsize 9 19Q \large 10 19Q +% \small 8 14Q \Large 11 22Q +% \footnotesize 7 14Q \LARGE 12 18Q +% \scriptsize 6 8pt (*) \huge 14 26Q +% \tiny 5 6pt (*) \Huge 14 26Q +% * : not measured + +\def\@normalsize{\@setsize\normalsize{19\@Q}\ixpt\@ixpt} +\def\small{\fs@setsize\small{14\@Q}\viiipt\@viiipt} +\def\footnotesize{\fs@setsize\footnotesize{14\@Q}\viipt\@viipt} +\def\scriptsize{\@setsize\scriptsize{8pt}\vipt\@vipt} +\def\tiny{\@setsize\tiny{6pt}\vpt\@vpt} +\def\large{\@setsize\large{19\@Q}\xpt\@xpt} +\def\Large{\@setsize\Large{22\@Q}\xipt\@xipt} +\def\LARGE{\@setsize\LARGE{18\@Q}\xiipt\@xiipt} +\def\huge{\@setsize\Huge{26\@Q}\xivpt\@xivpt} +\let\Huge\huge + +\ifDS@techrep % 1.05(2)>> +\def\@normalsize{\@setsize\normalsize{17\@Q}\ixpt\@ixpt} +\fi % 1.05(2)<< + +\if@LaTeX@e % 2.00(10)>> +\let\normalsize\@normalsize +\fi % 2.00(10)<< + +\let\fs@footnote\footnotesize +\let\fs@caption\footnotesize +\let\fs@table\footnotesize +\let\fs@abst\small +\def\fs@eabst{\small\baselineskip13\@Q} +\let\fs@header\small +\let\fs@footer\small +\let\fs@subsec\normalsize +\def\fs@bibliography{\normalsize\baselineskip16\@Q} +\let\fs@sec\large +\let\fs@type\fn@fontxv +\let\fs@author\Large +\def\fs@eauthor{\Large\baselineskip15\@Q} +\let\fs@etitle\LARGE +\let\fs@title\huge + +\@normalsize + % 2.00(7) +\ifx\setjglues\undefined\else +\setjglues +\fi + +\sec@setskips{あ} + +\fi + +\if@LaTeX@e\else % 2.00(11) +\let\latex@bf\bf % 1.06(6) +\def\bf{\latex@bf \dg} % 1.06(6) +\fi % 2.00(11) + + +%%%%%% Page Layout Parameters %%%%%% + +\newdimen\@mojihaba + +\headheight 12\@Q + +% We want to allow a line containing $\displaystyle X^X$ to be a first line. +\setbox0\hbox{$\displaystyle X^X$} +\topskip\ht0 + +\ifdim\maxdepth<\dp\strutbox \maxdepth\dp\strutbox \@maxdepth\maxdepth\fi + +\@tempswafalse % 1.05(2)>> +\ifDS@english \ifDS@techrep \else \@tempswatrue \fi\fi +\if@tempswa % 1.05(2)<< +\topmargin 138\@Q \advance\topmargin-1in + +% \textheight = 53\baselineskip + \topskip + epsilon(100sp) +\textheight53\baselineskip \advance\textheight\topskip \advance\textheight100sp + +% \headsep = 24Q - \topskip +\headsep28\@Q \advance\headsep-\topskip % 2.02(2) + +% Only first page has page number (footer) at the bottom +\footskip 27\@Q + +\@mojihaba13\@Q + +\else +\topmargin 131\@Q \advance\topmargin-1in + +% \textheight = 45\baselineskip + \topskip + epsilon(100sp) +\textheight45\baselineskip \advance\textheight\topskip \advance\textheight100sp + +\ifDS@techrep % 1.05(2)>> +\textheight50\baselineskip \advance\textheight\topskip \advance\textheight100sp +\fi % 1.05(2)<< + +% \headsep = 28Q - \topskip +\headsep28\@Q \advance\headsep-\topskip + +% Only first page has page number (footer) at the bottom +\footskip24\@Q + +\@mojihaba12\@Q +\fi + +\columnsep30\@Q + +% \textwidth - \columnwidth = 24 * 12Q * 2 + \columnsep = 606Q +\textwidth606\@Q +\columnseprule0pt + +\oddsidemargin210mm \advance\oddsidemargin-\textwidth \divide\oddsidemargin\tw@ +\advance\oddsidemargin-1in \evensidemargin\oddsidemargin + +\skip\footins\baselineskip \advance\skip\footins-.5\@mojihaba +% \footnotesep = \baselineskip - depth(\strutbox) +{\fs@footnote + \footnotesep\baselineskip + \global\advance\footnotesep-\dp\strutbox} + +\def\footnoterule{{\fs@footnote\kern-\dp\strutbox \hrule \kern-.4\p@ + \kern\dp\strutbox}} + +\floatsep \baselineskip \textfloatsep \baselineskip +\intextsep \baselineskip \@maxsep \baselineskip +\dblfloatsep \baselineskip \dbltextfloatsep \baselineskip +\@dblmaxsep \baselineskip +\@fptop 0pt plus 1fil \@fpsep 0pt plus 2fil \@fpbot 0pt plus 1fil +\@dblfptop 0pt plus 1fil \@dblfpsep 0pt plus 2fil \@dblfpbot 0pt plus 1fil + +\parskip\z@ \parindent\@mojihaba +\@lowpenalty 51 \@medpenalty 151 \@highpenalty 301 +\@beginparpenalty -\@lowpenalty \@endparpenalty -\@lowpenalty +\@itempenalty -\@lowpenalty + + +%%%%%% Title and Authors %%%%%% +% +% Format of title, author names and abstract. +% +% \huge\bf <Japanese title> +% \vskip 32Q +% \Large <Japanese author names> +% \vskip 32Q +% \small <Japanese abstract> +% \vskip 34Q +% \LARGE\bf <English title> +% \vskip 28Q +% \Large\sc <English author names> +% \vskip 28Q +% \small <English abstract> +% \vskip 25Q + +% 2.07(3)>> +\def\ipsj@ohcheck#1#2#3{\fs@header\hskip12\@Q#1\qquad#2\qquad#3\hskip12\@Q} +\def\ipsj@ohcvolno{Vol.~00\hskip12\@Q No.~SIG\ 00(\ipsj@sig@code\ 00)} + +\def\maketitle{\let\ipsj@oddhead@t\ipsj@oddhead@a + \ifipsj@trans + \settowidth\@tempdima{% + \ipsj@ohcheck\ipsj@ohcvolno\@titlestring\ipsj@ohcvolno}% + \ifdim\@tempdima>\textwidth + \let\ipsj@oddhead@t\ipsj@oddhead@b + \settowidth\@tempdima{% + \ipsj@ohcheck\ipsj@ohcvolno\@titlestring{000}}% + \ifdim\@tempdima>\textwidth + \ipsj@warning{% % 2.00(3) + \string\title\space for headding is too wide}% + \fi \fi + \else + \settowidth\@tempdima{\fs@header + \hskip12\@Q Vol.~00\hskip12\@Q No.~00\qquad\@titlestring\qquad + Vol.~00\hskip12\@Q No.~00\hskip12\@Q} + \ifdim\@tempdima>\textwidth + \ipsj@warning{% % 2.00(3) + \string\title\space for headding is too wide}% + \fi \fi + \par\twocolumn[\@maketitle]\thispagestyle{myheadings}\@thanks} +% 2.07(3)<< + +% default title header + +\def\title{\@dblarg{\@xtitle}} +\def\@xtitle[#1]#2{\gdef\@title{#2}% + {\def\protect{\noexpand\protect\noexpand}% + \ifDS@english\def\\{\unskip\ \ignorespaces}% + \else\def\\{\unskip\ignorespaces}\fi + \xdef\@titlestring{#1}}} % 2.07(3) + +\def\@title{\mkt@warning\title}\def\@titlestring{} +\long\def\author#1{\long\gdef\@author{#1}} +\def\@author{\mkt@warning\author} + +\newbox\@abstractbox +%% Introduce \@titlewidth because we now use this dimen repeatedly. (H.N.) +%% \@titlewidth = 44 * 11Q = 484Q +\newdimen\@titlewidth \@titlewidth 484\@Q + +\def\abstract{\global\let\@abstract\relax + \global\setbox\@abstractbox\hbox\bgroup + \begin{minipage}[b]{\@titlewidth}\fs@abst\parindent11\@Q} +\def\endabstract{\end{minipage}\egroup} +\def\@abstract{\mkt@warning{abstract env}} + +%% We need English title, author name(s) and abstract. (H.N.) +\def\etitle#1{\gdef\@etitle{#1}} +\def\@etitle{\mkt@warning\etitle} +\long\def\eauthor#1{\long\gdef\@eauthor{#1}} +\def\@eauthor{\mkt@warning\eauthor} + +\newbox\@eabstractbox +\def\eabstract{\global\let\@eabstract\relax + \global\setbox\@eabstractbox\hbox\bgroup + \begin{minipage}[b]{\@titlewidth}\fs@eabst\parindent11\@Q} +\let\endeabstract\endabstract +\def\@eabstract{\mkt@warning{eabstract env}} + +\ifDS@english +\let\author\eauthor \let\abstract\eabstract +\let\@eauthor\@author \let\@eabstract\@abstract +\fi + +\def\mkt@warning#1{\ipsj@warning{Missing \string#1}} % 2.00(3) + +\newdimen\mkt@prevdepth +\newbox\mkt@titlebox +\def\@maketitle{\setbox\mkt@titlebox\vbox{ + \ifDS@english \ifDS@preface + \hbox{}\vskip60\@Q \vskip-\headsep \vskip-\baselineskip + \else + \hbox{}\vskip26\@Q \vskip-\headsep \vskip-\baselineskip + \leftline{\fs@type\it + \ifDS@technote Technical Note + \else\ifDS@invited Invited Paper % 2.06(1) + \else\ifDS@sigrecommended % 2.04(1) + Recommended Paper % 2.04(1) + \else\ifDS@abstract % 2.07(7) + Abstract % 2.07(7) + \else\ifDS@techrep\else % 2.02(1) + Regular Paper\fi\fi\fi\fi\fi} % 2.06(1) +% % 2.04(1) + \vskip32\@Q \vskip-\baselineskip \fi + \else % 2.04(1) >> + \@tempswafalse \ifDS@technote\@tempswatrue\fi + \ifDS@sigrecommended\@tempswatrue\fi + \ifDS@invited\@tempswatrue\fi % 2.06(1) + \ifDS@abstract\@tempswatrue\fi % 2.07(7) + \if@tempswa + \vskip18\@Q \vskip-\headsep + \leftline{\vbox to28\@Q{\hrule height.8pt\vss + \hbox{\hskip7\@Q \fs@type + \ifDS@technote テクニカルノート% + \else\ifDS@invited 招待論文% % 2.06(1) + \else\ifDS@sigrecommended + 研究会推薦論文 % 2.06(1) + \else 発表概要\fi\fi\fi % 2.07(7) + \hskip7\@Q}\vss\hrule height.8pt}} +% % 2.04(1) << + \vskip40\@Q \vskip-\baselineskip + \else + \hbox{}\vskip60\@Q \vskip-\headsep \vskip-\baselineskip + \fi\fi + \@tempswafalse \ifDS@english\else\ifDS@preface\@tempswatrue\fi\fi + \mkt@maketitle{\fs@title\bf}\@title\title +% 1.04(1a) >> + \ifnum\c@affi@footnote>\thr@@ + \let\theaffi@footnote\theaffi@footnotemany \fi + \c@affi@footnote\z@ +% 1.04(1a) << + \affi@labels + \ifDS@english\else + \vskip-\mkt@prevdepth \nointerlineskip\vskip32\@Q + \centerline{\vbox{\centering\hsize\@titlewidth\fs@author + \mkt@makeauthor}} + \ifDS@preface\else + \vskip-\prevdepth \nointerlineskip\vskip32\@Q + \centerline{\@abstract\box\@abstractbox} + \vskip-\prevdepth \nointerlineskip\vskip34\@Q + \mkt@maketitle{\fs@etitle\bf}\@etitle\etitle + \fi\fi + \if@tempswa\else + \vskip-\mkt@prevdepth \nointerlineskip\vskip28\@Q + \centerline{\vbox{\centering\hsize\@titlewidth\fs@eauthor\sc + \mkt@makeeauthor}} + \fi + \ifDS@preface\else + \vskip-\prevdepth \nointerlineskip\vskip28\@Q + \centerline{\@eabstract\box\@eabstractbox} + \fi + \vskip-\prevdepth \nointerlineskip\vskip25\@Q} + \@tempdimb\ht\mkt@titlebox \advance\@tempdimb\dp\mkt@titlebox + \@tempcnta\@tempdimb \@tempcntb\baselineskip + \divide\@tempcnta\@tempcntb \@tempdima\@tempcnta\baselineskip + \advance\@tempdima-\@tempdimb + \box\mkt@titlebox + \ifdim\@tempdima=\z@\else\advance\@tempdima\baselineskip + \vskip\@tempdima\fi} + +%% \mkt@maketitle puts Japanese/English title, whose lines should be +%% properly broken with \\ by the user. The result is flushed to left, then +%% centered with respect to the longest line. (H.N.) +\def\mkt@maketitle#1#2#3{\setbox\@tempboxa\vtop{ + \def\\{\unskip\egroup\hbox\bgroup\ignorespaces} + #1\hbox\bgroup#2\unskip\egroup + \global\mkt@prevdepth\prevdepth} + \@tempdima\textwidth\advance\@tempdima-4\@mojihaba + \ifdim\wd\@tempboxa>\@tempdima + \ipsj@warning{% % 2.00(3) + \string#3 is too wide. Break line(s) by \string\\}\fi + \centerline{\box\@tempboxa}} + +% Assignment of Japanese author names to lines: +% 1 -> 1, 2 -> 2, 3 -> 3, 4 -> 2+2, 5 -> 3+2, 6 -> 3+3, 7 -> 3+2+2, 8 -> 3+3+2, +% ... +% Rule for N authors (N > 2, q := N div 3) +% N mod 3 = 0 -> 3 * q +% N mod 3 = 1 -> 3 * (q - 2) + 2 + 2 +% N mod 3 = 2 -> 3 * (q - 1) + 2 + +\newcount\mkt@cnta\newcount\mkt@cntb +\newcount\mkt@sname\newcount\mkt@gname +\newbox\mkt@boxa +\newdimen\mkt@namewidth +\def\mkt@makeauthor{\let\member\@gobble \let\nomember\relax + \let\stmember\@gobble % Those are not necessary in final manuscript. + \def\@makefnmark{\smash{\rlap{\fn@fontvii$^{\affi@thefnmark}$}}}% + \gdef\affi@thefnmark{}\leavevmode\let\+\ignorespaces + \settowidth\@tempdima{あ}\mkt@namewidth7\@tempdima\@tempcnta\z@ + \expandafter\mkt@countauthor\@author\and\@nil\and + \ifnum\@tempcnta=\@ne\let\mkt@anhbox\mkt@anhboxc\mkt@makesingleauthor + \else + \@tempcntb\@tempcnta \divide\@tempcntb\thr@@ + \multiply\@tempcntb\thr@@ \advance\@tempcntb-\@tempcnta + \ifnum\@tempcntb=\m@ne\relax\@tempcntb\tw@\else\@tempcntb\z@\fi + \mkt@cnta\thr@@ + \let\mkt@anhbox\mkt@anhboxl + \expandafter\mkt@makemultiauthor\@author\and\and\fi} +\def\mkt@countauthor#1\and{\def\@tempa{#1}\ifx\@tempa\@nnil\let\next\relax + \else\advance\@tempcnta\@ne \let\next\mkt@countauthor\fi\next} + +% If single author, author name has 9 KC width instead of 7. +\def\mkt@makesingleauthor{\divide\mkt@namewidth7\multiply\mkt@namewidth9\relax + \expandafter\mkt@putauthor\@author\+ \@nil} + +\def\mkt@makemultiauthor#1\and{\ifnum\@tempcnta=\z@\unskip\let\next\relax\else + \leavevmode + \advance\mkt@cnta\m@ne \advance\@tempcnta\m@ne + \ifnum\mkt@cnta=\z@\mkt@maleft{#1}\mkt@cnta\thr@@\else + \ifnum\@tempcnta=\@tempcntb\mkt@maleft{#1}\mkt@cnta\tw@\else + \mkt@putauthor#1\+ \@nil\let\mkt@anhbox\mkt@anhboxc\fi\fi + \let\next\mkt@makemultiauthor\fi\next} +\def\mkt@maleft#1{\let\mkt@anhbox\mkt@anhboxr\mkt@putauthor#1\+ \@nil + \par\let\mkt@anhbox\mkt@anhboxl} + +% Japanese author name format: +% Non Japanese : As is. +% Japanese w/o s/g delimitor : As is with warning. +% Japanese (s+g>6) : As is. +% Japanese (s+g<7) : Give 1-KC space to s/g delimitor, then insert +% infinit stretch between each character pair, assuming the +% s/g delimitor as a charcter, to make the name have 7-KC +% width. An exception is 2s + 2g case, in which s/g +% delimitor has 0 width in order to have the result +% "S_S_G_G". + +\def\mkt@putauthor#1 #2\@nil{% + \setbox\@tempboxa\hbox{\let\affiref\@gobble \let\mkt@warning\@gobble + \jintercharskip\z@#1#2}% + \setbox\mkt@boxa\hbox{\let\affiref\@gobble \let\mkt@warning\@gobble + \jintercharskip1cm#1#2}% + \ifdim\wd\@tempboxa=\wd\mkt@boxa \mkt@anhbox{#1 #2}\else + % probably no Kanjis + \def\@tempa{#2}\ifx\@tempa\empty % without space btwn s/g-name + {\let\affiref\@gobble \def\+{}% + \ipsj@warning{Author name #1 doesn't have a space}}% + % 2.00(3) + \mkt@anhbox{#1}\else + \mkt@getnamewidth\mkt@sname{#1}\mkt@getnamewidth\mkt@gname{#2}% + \mkt@cntb\mkt@sname \advance\mkt@cntb\mkt@gname + \ifnum\mkt@cntb>6\relax\mkt@anhbox{#1\ #2}\else + \jintercharskip\fill% + \@tempskipa\@tempdima plus2fill\relax + \ifnum\mkt@sname=\tw@ \ifnum\mkt@gname=\tw@ \@tempskipa\fill\fi\fi + \hbox to\mkt@namewidth{#1\hskip\@tempskipa#2\@makefnmark}\fi\fi\fi + \gdef\affi@thefnmark{}\hskip\columnsep} + +% When an author name is formatted "as is", the following macros are used +% according to their position (left, right, or center). +\def\mkt@anhboxl#1{\hbox to\mkt@namewidth{\hss#1\@makefnmark}} +\def\mkt@anhboxr#1{\hbox to\mkt@namewidth{#1\@makefnmark\hss}} +\def\mkt@anhboxc#1{\setbox\@tempboxa\hbox{#1\@makefnmark}% + \ifdim\wd\@tempboxa>\mkt@namewidth\box\@tempboxa + \else\hbox to\mkt@namewidth{\hss\box\@tempboxa\hss}\fi} % 2.08(1) + +\def\mkt@getnamewidth#1#2{\setbox\@tempboxa\hbox{\let\affiref\@gobble#2}% + \@tempdimb\wd\@tempboxa + \advance\@tempdimb.5\@tempdima #1\@tempdimb \mkt@cntb\@tempdima + \divide#1\mkt@cntb} + +% English author name format +% 1 -> <name-1>^* +% 2 -> <name-1>^* and~<name-2>^* +% 3 or more -> <name-1>,^* <name-2>,^* ... <name-n-1>^* and~<name-n>^* +% (be careful the position of comma). +% +% No special tricks for assignment names to line. Names are simply put in a +% \centering paragraph. + +\def\mkt@makeeauthor{\let\member\@gobble \let\nomember\relax + \let\stmember\@gobble % Those are not necessary in final manuscript. + \leavevmode\let\mkt@and\relax\gdef\affi@thefnmark{}% + \def\@thefnmark{\affi@thefnmark}% + \expandafter\mkt@imakeeauthor\@eauthor\and\@nil\and} +\def\mkt@imakeeauthor#1\and#2\and{\def\@tempa{#2}\ifx\@tempa\@nnil + #1\@makefnmark\let\next\relax + \else + \def\@tempb{#1}\def\next{\mkt@iimakeeauthor#2\and}% + \fi\next} +\def\mkt@iimakeeauthor#1\and{\def\@tempa{#1}\ifx\@tempa\@nnil + \@makefnmark\ {\rm{and}~}\gdef\affi@thefnmark{}\hbox{\@tempb}% + \@makefnmark\let\next\relax + \else + \mkt@and\hbox{\@tempb}\let\mkt@and\mkt@andmid + \let\next\mkt@iimakeeauthor + \fi\def\@tempb{#1}\next} +\def\mkt@andmid{,\@makefnmark\ \gdef\affi@thefnmark{}} + +% Macros to specify author's affiliation easily. +\newcounter{affi@footnote} \c@affi@footnote\z@ +\def\affilabel{\stepcounter{affi@footnote}\affi@deflabels\affi@affilabel} + % 1.04(1a) +\def\paffilabel{\affi@deflabels\affi@paffilabel} +\def\affi@deflabels#1#2#3{{\def\protect{\noexpand\protect\noexpand}% + \let\affi@affilabel\relax \let\affi@paffilabel\relax \let\\\relax + \xdef\affi@labels{\affi@labels#1{#2}{#3}}}} +\def\affi@labels{} +\def\affi@affilabel{\begingroup + \def\@mpfn{affi@footnote}\def\thempfn{\theaffi@footnote}% + \def\affi@fnmark{\protect\@makefnmarkdagger}% + \affi@label} +\def\affi@paffilabel#1#2{\begingroup\PF@adjustfnote + \def\affi@fnmark{\protect\@makefnmarkstar}% + \def\protect{\noexpand\protect\noexpand}% + \def\\{\noexpand\\Presently with \ignorespaces}% + \edef\@tempa{\ifDS@english Presently with \else 現在,\fi#2}% 1.04(1d) + \affi@label{#1}{\@tempa}} +\def\affi@label#1#2{\stepcounter{\@mpfn}% + \@ifundefined{affi@r@#1}% + {\expandafter\xdef\csname affi@r@#1\endcsname{\thempfn}} + {\ipsj@warning{Affiliation label `#1' multiply defined}}% + % 2.00(3) + \let\affi@footnotetext\relax\let\\\relax + \def\protect{\noexpand\protect\noexpand}% + \xdef\@thanks{\@thanks + \affi@footnotetext{\thempfn}{\affi@fnmark}{#2}}\endgroup} + +\def\affiref#1{\@ifundefined{affi@r@#1}% + {\ipsj@warning{Affiliation reference `#1' undefined}% 2.00(3) + \def\@tempa{?}}% + {\def\@tempa{\csname affi@r@#1\endcsname}}% + \ifx\affi@thefnmark\empty\xdef\affi@thefnmark{\@tempa}\else + \xdef\affi@thefnmark{\affi@thefnmark,\hskip\z@\@tempa}\fi} +\def\affi@footnotetext#1#2#3{{\def\@thefnmark{#1}\def\@makefnmarkforfn{#2} + \@footnotetext{#3}}} + +% 1.04(1b)>> +\def\theaffi@footnote{\ifcase\c@affi@footnote\or + {\dagger}\or {\dagger}{\dagger}\or {\dagger}{\dagger}{\dagger}\fi} + % 1.04(1c) +\def\theaffi@footnotemany{{\dagger}\number\c@affi@footnote} +% 1.04(1b)<< + +\def\thanks#1{\begingroup + \def\@makefnmark{\smash{\hbox{\fn@fontvii$^{\@thefnmark}$}}}% + \footnotemark + \let\affi@footnotetext\relax\let\\\relax + \def\protect{\noexpand\protect\noexpand}% + \xdef\@thanks{\@thanks + \affi@footnotetext{\thempfn}{\protect\@makefnmarkstar}{#1}}% + \endgroup} + +% \contact is necessary only for drafts. +\long\def\contact#1{} + + +%%%%%% Page Header and Footer %%%%%% + +\mark{{}{}} + +\newcounter{volpageoffset} % You must set this to appropriate value +\setcounter{volpageoffset}{1} % for each issue! + +% 2.00(16)>> +\let\latex@document\document +\def\document{\latex@document + \ifDS@private\else \global\c@page\c@volpageoffset \fi} % 2.07(8) +\let\c@volpage\c@page % for backward compatibility +\def\thevolpage{\thepage} % for backward compatibility +% 2.00(16)<< + +\newcounter{volume}\expandafter\let\csname c@巻数\endcsname\c@volume +\newcounter{number}\expandafter\let\csname c@号数\endcsname\c@number +\let\c@month\c@number \expandafter\let\csname c@月数\endcsname\c@number + % 2.07(4) +\newcounter{year}\expandafter\let\csname c@年数\endcsname\c@year + +% 2.07(4)>> +\def\@thevolno{Vol.~\arabic{巻数}\hskip\@mojihaba No.~% + \ifipsj@trans SIG\ \ipsj@sig@numa(\ipsj@sig@code\ \ipsj@sig@numb)% + \else \arabic{号数}\fi} +% 2.07(4)<< +% 2.00(15)>> +\def\@monthyear{\ifcase\value{号数}\or Jan.\or Feb.\or Mar.\or Apr.\or May\or + June\or July\or Aug.\or Sep.\or Oct.\or Nov.\or Dec.\else\fi + \hskip.5\@mojihaba \setcounter{年数}{1959}% + \addtocounter{年数}{\value{巻数}}\arabic{年数}} +% 2.00(15)<< + +% 2.07(2)>> +\newif\ifipsj@trans \ipsj@transfalse +\def\transaction#1#2#3{\ipsj@transtrue + \def\ipsj@sig@code{#1}\def\ipsj@sig@numa{#2}\def\ipsj@sig@numb{#3}% + \expandafter\let\expandafter\ipsj@sig@title + \csname ipsj@sig@#1@\ifDS@english e\else j\fi\endcsname + \ifx\ipsj@sig@title\relax + \ipsj@warning{Transaction code #1 is unknown}\fi + \let\ipsj@oddhead@s\ipsj@oddhead@a + \settowidth\@tempdima{% + \ipsj@ohcheck\ipsj@ohcvolno\hdr@tipsj\ipsj@ohcvolno}% + \ifdim\@tempdima>\textwidth + \let\ipsj@oddhead@s\ipsj@oddhead@b + \settowidth\@tempdima{\c@month3\relax % "Mar." is longest + \ipsj@ohcheck\ipsj@ohcvolno\hdr@tipsj\@monthyear}% + \ifdim\@tempdima>\textwidth + \let\ipsj@oddhead@s\ipsj@oddhead@c + \fi \fi} + +\def\ipsj@sig@PRO@j{プログラミング} +\def\ipsj@sig@PRO@e{Programming} +\def\ipsj@sig@TOM@j{数理モデル化と応用} +\def\ipsj@sig@TOM@e{Mathematical Modeling and Its Applications} +\def\ipsj@sig@TOD@j{データベース} +\def\ipsj@sig@TOD@e{Databases} +\def\ipsj@sig@HPS@j{ハイパフォーマンスコンピューティングシステム} +\def\ipsj@sig@HPS@e{High Performance Computing Systems} +\def\ipsj@sig@CVIM@j{コンピュータビジョンとイメージメディア} +\def\ipsj@sig@CVIM@e{Computer Vision and Image Media} +% 2.07(2)<< + +\def\copyrightnotice{\long\def\ipsj@cnotice} + +% 1.05(2)>> +\ifDS@techrep +\def\ps@headings{\let\@mkboth\markboth + \def\@oddhead{\@checklines\hss}\let\@evenhead\@oddhead + \def\@oddfoot{}\def\@evenfoot{}} +\let\ps@myheadings\ps@headings + +\else\ifDS@private % 2.07(8)>> +\def\ps@headings{\let\@mkboth\markboth + \def\@oddhead{\@checklines\hfil\thepage\hskip12\@Q}% + \def\@evenhead{\@checklines\hskip12\@Q\thepage\hfil} + \def\@oddfoot{}\def\@evenfoot{}} +\def\ps@myheadings{\ps@headings + \def\@oddhead{\@checklines + \smash{\parbox[b]{.75\textwidth}{\@nameuse{ipsj@cnotice}}}% + \hfil\thepage\hskip12\@Q}% + \let\@evenhead\@oddhead} + % 2.07(8)<< +\else +% 1.05(2)<< +\def\ps@headings{\let\@mkboth\markboth + \def\@oddfoot{} + \def\@evenfoot{} + \def\@evenhead{\fs@header \@checklines + \hskip12\@Q\rlap{\thepage}\hss % 2.07(3) + \hdr@tipsj\hss\llap{\@monthyear}\hskip12\@Q} + \def\@oddhead{\fs@header \@checklines + \ipsj@oddhead@t\@titlestring\thepage} % 2.07(3) + \def\sectionmark##1{}\def\subsectionmark##1{}} + +\def\ps@myheadings{\let\@mkboth\@gobbletwo + \def\@oddhead{\fs@header \@checklines + \ipsj@oddhead@s\hdr@tipsj\@monthyear} % 2.07(3) + \def\@oddfoot{\fs@footer\hfil\thepage\hfil} + \let\@evenhead\@oddhead + \let\@evenfoot\@oddfoot + \def\sectionmark##1{}\def\subsectionmark##1{}} +\fi\fi % 1.05(2) + % 2.07(8) +% 2.07(3)>> +\def\ipsj@oddhead@a#1#2{\hskip12\@Q \rlap{\@thevolno}\hss#1\hss + \llap{#2}\hskip12\@Q} +\def\ipsj@oddhead@b#1#2{\hskip12\@Q \@thevolno\qquad#1\hss + \llap{#2}\hskip12\@Q} +\def\ipsj@oddhead@c#1#2{\hskip12\@Q \@thevolno\hss#1\hss#2\hskip12\@Q} +\let\ipsj@oddhead@t\ipsj@oddhead@a +\let\ipsj@oddhead@s\ipsj@oddhead@a +% 2.07(3)<< + +% 2.02(2),2.07(4)>> +\ifDS@english +\def\hdr@tipsj{\smash{% + \ifipsj@trans + IPSJ Transactions on \ipsj@sig@title + \else + IPSJ Journal\fi}} +\else +\def\hdr@tipsj{\smash{情報処理学会論文誌% + \ifipsj@trans :\ipsj@sig@title\fi}} +\fi +% 2.02(2),2.07(4)<< + +% \checklines enables to draw a horizontal rule onto each baselines. + +\newif\if@checklines \@checklinesfalse +\def\checklines{\@checklinestrue} +\def\@checklines{\if@checklines \rlap{\smash{\vtop{\normalsize + \hbox{} \vskip\headsep \hrule width\textwidth\vskip-.4pt \vskip\topskip + \hrule\vskip-.4pt + \ifDS@techrep\@tempcnta50\else % 1.05(2) + \ifDS@english\@tempcnta53\else\@tempcnta45\fi\fi % 1.05(2) + \relax\@@checklines}}}\fi + \ifDS@english\@tempcnta-7\else\@tempcnta\z@\fi\relax +% 1.05(2)>> + \@tempswafalse + \ifDS@printer \@tempswatrue \fi \ifDS@techrep \@tempswatrue \fi + \if@tempswa \unitlength\@Q \begin{picture}(0,0)(0,\@tempcnta) + \put(-61,63){\begin{picture}(0,0) + \put(-10,0){\line(-1,0){30}} + \put(0,10){\line(0,1){30}}\end{picture}} + \put(667,63){\begin{picture}(0,0) + \put(10,0){\line(1,0){30}} + \put(0,10){\line(0,1){30}}\end{picture}} + \put(-61,-965){\begin{picture}(0,0) + \put(-10,0){\line(-1,0){30}} + \put(0,-10){\line(0,-1){30}} + \ifDS@techrep + \put(0,-10){\makebox(728,0)[t]{\thepage}}\fi + \end{picture}} +% 1.05(2)<< + \put(667,-965){\begin{picture}(0,0) + \put(10,0){\line(1,0){30}} + \put(0,-10){\line(0,-1){30}}\end{picture}} + \end{picture}\fi} +\def\@@checklines{\ifnum\@tempcnta>\z@ + \vskip\normalbaselineskip \hrule\vskip-.4pt \advance\@tempcnta\m@ne + \let\next\@@checklines\else\let\next\relax\fi\next} + +\pagestyle{headings} +\pagenumbering{arabic} + +\ifDS@english\else +\def\today{\the\year 年 \the\month 月 \the\day 日} +\fi + + +%%%%%% Output Routine %%%%%% + +% To balance the final page, +% following code is borrowed from nicetwocolumn style + +% you can refrain from balancing by falsifying following switch! +%% Initial value of \if@lastpagebalancing is false. It may be turned true by +%% biography processing macros. (H.N.) + +\newif\if@lastpagebalancing \@lastpagebalancingfalse +\newif\if@finalpageoutput \@finalpageoutputfalse +% incorporate balanced output to \enddocument +\let\latex@enddocument\enddocument +\def\enddocument{\@finalpageoutputtrue + \if@lastpagebalancing + \global\let\@outputdblcol\opt@balanceoutputdblcol\fi + \ifDS@preface + \global\let\@outputdblcol\opt@balanceoutputdblcol\fi + \ifDS@abstract % 2.07(7)>> + \hbox{}\newpage + \ifDS@english \rightline{(Presented \ra@presented)} + \else \expandafter\ra@putpresented\ra@presented \fi + \fi % 2.07(7)<< + \latex@enddocument} + +\newbox\@leftcolumnfootnote \newbox\@rightcolumnfootnote +\newif\if@leftfootnoteexist \@leftfootnoteexistfalse +\newif\if@rightfootnoteexist \@rightfootnoteexistfalse +\newif\ifopt@floatexist \opt@floatexistfalse + +% 2.00(12) \color@{begin/end}group ignored +\def\enlargethispage{\ipsj@warning{\string\enlargepage is ignored}} + % 2.00(3,12) +\def\@makecol{\vbadness10000 \lineskiplimit\normallineskiplimit % 1.05(1) + \setbox\@outputbox\box\@cclv + \if@firstcolumn + \ifvoid\footins \global\@leftfootnoteexistfalse + \else + \global\@leftfootnoteexisttrue + \@tempdima\dp\footins + \global\setbox\@leftcolumnfootnote\vbox{ + \unvbox\footins\vskip-\@tempdima} + \fi + \ifx\@botlist\@empty\else\global\opt@floatexisttrue\fi + \else + \ifvoid\footins \global\@rightfootnoteexistfalse + \else + \global\@rightfootnoteexisttrue + \@tempdima\dp\footins + \global\setbox\@rightcolumnfootnote\vbox{ + \unvbox\footins \vskip-\@tempdima} + \ifx\@toplist\@empty\else\global\opt@floatexisttrue\fi + \fi + \fi + \xdef\@freelist{\@freelist\@midlist}\gdef\@midlist{}\@combinefloats + \global\maxdepth\@maxdepth} + +% 2.01(1) >> +\let\latex@vtryfc\@vtryfc +\def\@vtryfc{\if@firstcolumn \global\@leftfootnoteexistfalse + \else \global\@rightfootnoteexistfalse \fi \latex@vtryfc} +% 2.01(1) << + +% 1.01(1,2) >> +\let\latex@addtobot\@addtobot +\def\@addtobot{\latex@addtobot\global\maxdepth\@maxdepth} +\let\latex@combinefloats\@combinefloats +\def\@combinefloats{\ifx\@botlist\@empty\else \dimen@\dp\@outputbox + \setbox\@outputbox\vbox{\unvbox\@outputbox \vskip-\dimen@}\fi + \latex@combinefloats} +% 1.01(1,2) << + +\newskip\opt@baselineskip +\def\@outputdblcol{ + \if@firstcolumn \global\@firstcolumnfalse + \global\setbox\@leftcolumn\box\@outputbox + \global\opt@baselineskip\baselineskip + \else \global\@firstcolumntrue \global\opt@floatexistfalse + \global\bib@adjustheight-\maxdimen + \setbox\@leftcolumn\vbox to\@colht{\boxmaxdepth\@maxdepth % 1.01(3) + \unvbox\@leftcolumn + \if@leftfootnoteexist\vfil + \footnoterule\box\@leftcolumnfootnote\fi} + \setbox\@outputbox\vbox to\@colht{\boxmaxdepth\@maxdepth % 1.01(3) + \unvbox\@outputbox + \if@rightfootnoteexist\vfil + \footnoterule\box\@rightcolumnfootnote\fi} + \global\maxdepth\@maxdepth + \if@finalpageoutput + \if@leftfootnoteexist\else\if@rightfootnoteexist\else + \setbox\@leftcolumn\vbox{\unvbox\@leftcolumn}% + \setbox\@outputbox\vbox{\unvbox\@outputbox} + \ifdim\ht\@leftcolumn<\ht\@outputbox + \setbox\@leftcolumn\vbox to\ht\@outputbox{ + \unvbox\@leftcolumn}% + \else + \setbox\@outputbox\vbox to\ht\@leftcolumn{ + \unvbox\@outputbox}% + \fi + \fi\fi\fi + \setbox\@outputbox\vbox{\hbox to\textwidth{\hbox to\columnwidth + {\box\@leftcolumn \hss}\hfil \vrule width\columnseprule\hfil + \hbox to\columnwidth{\box\@outputbox \hss}}} + \@combinedblfloats + \@outputpage \begingroup \@dblfloatplacement \@startdblcolumn + \@whilesw\if@fcolmade \fi{\@outputpage\@startdblcolumn}% + \endgroup + \fi} + +\let\opt@outputdblcol\@outputdblcol +\chardef\opt@boxa\z@ +\chardef\opt@boxb\@ne +\chardef\opt@boxc\tw@ +\def\opt@magicpenalty{1234} +\def\opt@balanceoutputdblcol{\let\next\opt@ibalanceoutputdblcol + \if@firstcolumn \let\next\opt@outputdblcol + \else \ifopt@floatexist \opt@warning \let\next\opt@outputdblcol + \else\ifx\@deferlist\@empty\else + \opt@warning \let\next\opt@outputdblcol\fi\fi\fi + \next} +\def\opt@ibalanceoutputdblcol{% + \setbox\@leftcolumn\vbox{\unvbox\@leftcolumn + \ifnum\lastpenalty=\opt@magicpenalty\relax\else + \@tempcnta10\relax\@whilenum\@tempcnta>0\do{% + \unskip\unskip\unkern\unpenalty + \advance\@tempcnta\m@ne}\fi} + \advance\opt@baselineskip-\dp\@leftcolumn + \ifdim\dp\@leftcolumn=\z@ \ifdim\opt@baselineskip=\baselineskip + \@tempdima\ht\@leftcolumn \advance\@tempdima-\topskip + \divide\@tempdima\baselineskip + \@tempcnta\@tempdima \@tempdima\@tempcnta\baselineskip + \advance\@tempdima\topskip + \advance\@tempdima-\ht\@leftcolumn + \advance\opt@baselineskip\@tempdima \fi\fi + \advance\opt@baselineskip-\topskip + \setbox\@outputbox\vbox{\unvbox\@outputbox} + \ifdim\ht\@outputbox=\topskip \ifdim\dp\@outputbox=\z@ + \setbox\opt@boxa\vbox{\unvcopy\@outputbox\unskip + \global\setbox\opt@boxb\lastbox + \global\dimen@\lastskip} + \ifvoid\opt@boxb\else\ifdim\ht\opt@boxb=\z@ + \ifdim\dp\opt@boxb=\z@\ifdim\dimen@=\topskip + \@firstcolumntrue\fi\fi\fi\fi\fi\fi + \setbox\opt@boxa\copy\@outputbox + \setbox\@outputbox\vbox{\unvcopy\@leftcolumn + \if@firstcolumn\else + \vskip\opt@baselineskip + \penalty\interlinepenalty\unvbox\@outputbox\fi} + \@tempdima\ht\@outputbox \advance\@tempdima\topskip + \divide\@tempdima\tw@ \advance\@tempdima100sp + \splittopskip\topskip \splitmaxdepth\@maxdepth + \ifdim\bib@adjustheight<\@M pt + \opt@split\@outputbox\opt@boxb\@tempdima + \ifdim\ht\opt@boxb<\bib@adjustheight + \opt@split\@leftcolumn\opt@boxc\bib@adjustheight + \opt@split\opt@boxc\opt@boxb\@tempdima + \if@firstcolumn + \opt@adjust\opt@boxc{\unvbox\@leftcolumn} + \else\opt@adjust\opt@boxc{\ifvoid\@leftcolumn\else + \unvbox\@leftcolumn\vskip\opt@baselineskip\fi + \unvbox\opt@boxa}\fi\fi + \else + \advance\bib@adjustheight-\@M pt + \opt@split\opt@boxa\opt@boxc\bib@adjustheight + \setbox\@outputbox\vbox{\unvbox\@leftcolumn + \vskip\opt@baselineskip\unvbox\opt@boxc} + \opt@split\@outputbox\opt@boxb\@tempdima + \opt@adjust\@outputbox{\unvbox\opt@boxa} + \fi + \if@leftfootnoteexist + \setbox\opt@boxb\vbox to\@colht{\box\opt@boxb\vfill + \footnoterule\box\@leftcolumnfootnote}\fi + \if@rightfootnoteexist + \setbox\@outputbox\vbox to\@colht{\box\@outputbox\vfill + \footnoterule\box\@rightcolumnfootnote}\fi + \ifdim\ht\@outputbox>\ht\opt@boxb + \setbox\opt@boxb\vbox to\ht\@outputbox{\unvbox\opt@boxb} + \else + \setbox\@outputbox\vbox to\ht\opt@boxb{\unvbox\@outputbox} + \fi + \setbox\@outputbox\vbox{\hbox to\textwidth{\hbox to\columnwidth + {\box\opt@boxb \hss}\hfil \vrule width\columnseprule\hfil + \hbox to\columnwidth{\box\@outputbox \hss}}} + \global\@firstcolumntrue \@combinedblfloats + \@outputpage \begingroup \@dblfloatplacement \@startdblcolumn + \@whilesw\if@fcolmade \fi{\@outputpage\@startdblcolumn}\endgroup} + +\if@LaTeX@eN % 2.00(3)>> +\def\opt@warning{\ClassWarning{ipsjpapers}{% + Single column floats still remain on biography\MessageBreak + processing.\MessageBreak + Do \string\verbbiography\space for manual balcing}} +\else +\def\opt@warning{\@warning{Single column floats still remain on biography + processing.^^J\space\space\space\space\space + \space\space\space\space\space\space\space\space\space\space + Do \string\verbbiography\space for manual balancing}} +\fi % 2.00(3)<< +\def\opt@split#1#2#3{\setbox#2\vsplit#1to#3\setbox#2\vbox{\unvbox#2}} +\def\opt@adjust#1#2{\@tempdima\ht#1 \advance\@tempdima-\topskip + \@tempdimb\@tempdima \divide\@tempdima\baselineskip + \@tempcnta\@tempdima \@tempdima\@tempcnta\baselineskip + \advance\@tempdima-\@tempdimb + \ifdim\@tempdima<\z@ \advance\@tempdima\baselineskip \fi + \advance\@tempdima\baselineskip \advance\@tempdima-\dp#1 + \advance\@tempdima-\topskip + \setbox\@outputbox\vbox{\ifvoid#1\else\unvbox#1\vskip\@tempdima\fi#2}} + +\let\latex@outputpage\@outputpage +% \opt@finalgap: vertical space above the \hrule at the end of paper. +% \opt@finallinewidth: width of the \hrule at the end of paper. +\@tempdima2\baselineskip % This might be changed +\edef\opt@finalgap{\the\@tempdima} +\def\opt@finallinewidth{220\@Q} % This might be changed +\ifDS@techrep \let\opt@finallinewidth\z@ \fi % 1.05(2) + +\def\@outputpage{\if@finalpageoutput + \setbox\@outputbox\vbox{\unvbox\@outputbox} + \@tempdima\dp\@outputbox + \@tempdimb\ht\@outputbox \advance\@tempdimb\opt@finalgap\relax + \ifdim\@tempdimb>\textheight\else + \setbox\@outputbox\vbox{\unvbox\@outputbox\vskip-\@tempdima + \nointerlineskip\vbox to\z@{\vskip\opt@finalgap + \hbox to\textwidth{\hss + \vrule height0.4pt width\opt@finallinewidth\hss} + \vss}}\fi\fi + \ifASCII\if@LaTeX@e \@@topmargin\topmargin \fi\fi % 2.00(13) + \latex@outputpage} + +%%%%%% Biography %%%%%% + +% If you want to control the allocation of biographies manually, do +% \verbbiography and insert \adjust{<vertical materials>} just before +% \member (or its relatives). For example; +% \verbbiography +% \begin{biography} +% \member{...} ... +% \adjust{\protect\newpage} +% \member{...} ... +% \adjust{\protect\vspace{1.3cm}} +% \member{...} ... +% \end{biography} +% will make page break just after the biography of the 1st author, and will +% insert a vertical space of 1.3cm just after that of the 2nd. It is +% strongly recommended to \protect any control sequence in the argument of +% \adjust. + +% \受付 and \採録 define the dates of receipt/acceptance. They are put at +% the end of manuscript (just before biographies) by ra@putrcvacc. +\def\ra@nengo{平成} %% Change here when ... +\ifDS@english +\def\受付#1#2#3{\def\ra@received{\ra@date{#1}{#2}{#3}}\ignorespaces} +\def\採録#1#2#3{\def\ra@accepted{\ra@date{#1}{#2}{#3}}\ignorespaces} +\def\再受付#1#2#3{\def\ra@rereceived{\ra@date{#1}{#2}{#3}}\ignorespaces} + % 2.07(5) +\def\発表#1#2#3{\def\ra@presented{\ra@date{#1}{#2}{#3}}\ignorespaces} + % 2.07(7) +\def\ra@received{??? ??, ????} +\def\ra@accepted{??? ??, ????} +\def\ra@presented{??? ??, ????} % 2.07(7) +\def\ipsj@TOD@editor{(Editor in Charge: {\it\ipsj@TOD@ename})} % 2.07(6) +\else +\def\受付#1#2#3{\def\ra@received{#1&}\ignorespaces} +\def\採録#1#2#3{\def\ra@accepted{#1&}\ignorespaces} +\def\再受付#1#2#3{\def\ra@rereceived{#1&}\ignorespaces} % 2.07(5) +\def\発表#1#2#3{\def\ra@presented{#1&}\ignorespaces} % 2.07(7) +\def\ra@received{?&?&?&} +\def\ra@accepted{?&?&?&} +\def\ra@presented{?&?&?&} % 2.07(7) +\def\ipsj@TOD@editor{(担当編集委員\ \ipsj@TOD@ename )} % 2.07(6) + % 2.08(2) +\fi +\let\received\受付 +\let\accepted\採録 +\let\rereceived\再受付 % 2.07(5) +\let\presented\発表 % 2.07(7) + +\def\edInCharge#1{\def\ipsj@TOD@ename{#1}\ignorespaces} % 2.07(6) + +\def\ra@putrcvacc{\rightline{\vtop{\normalsize\tabskip\z@ + \ifDS@english + \llap{(Received \ra@received)} + \ifx\ra@rereceived\undefined\else + \llap{(Revised \ra@rereceived)}\fi + \llap{(Accepted \ra@accepted)}\hbox{} + \else + \halign{(\ra@nengo\hskip\jasciikanjiskip + \hfil##\hfil\hskip\jasciikanjiskip 年\hskip\jasciikanjiskip& + \hfil##\hfil\hskip\jasciikanjiskip 月\hskip\jasciikanjiskip& + \hfil##\hfil\hskip\jasciikanjiskip 日&##\hfil\cr% 2.07(5)>> + \ra@received 受付)\cr + \ifx\ra@rereceived\undefined\else \ra@rereceived 再受付)\cr\fi + \ra@accepted 採録)\cr\multispan3\cr}\fi}% + % 2.07(5)<< + \hskip\@mojihaba} + \nobreak\vskip-2\baselineskip\prevdepth\z@\hbox{} + \ifipsj@recommendation\else % 2.04(2) + \ifx\ipsj@TOD@ename\undefined\else % 2.07(6)>> + \nobreak\vskip\baselineskip + \hbox{\ipsj@TOD@editor}\fi % 2.07(6)<< + \vskip\baselineskip\penalty\opt@magicpenalty\fi}% 2.04(2) +\def\ra@date#1#2#3{\ifcase#2\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#3, #1} +\def\ra@putpresented#1&{\rightline{% + (\ra@nengo\hskip\jasciikanjiskip % 2.07(7)>> + #1\hskip\jasciikanjiskip 年\hskip\jasciikanjiskip + #2\hskip\jasciikanjiskip 月\hskip\jasciikanjiskip + #3\hskip\jasciikanjiskip 日発表)}} % 2.07(7)<< + +\newbox\bio@picbox +% The following define the height and width of a picture for biography, and +% the indentation of the first 6 lines. They might be changed. +\def\bio@picheight{100\@Q} +\def\bio@picwidth{80\@Q} + +\newif\ifbio@showpicbox +\bio@showpicboxtrue +% Do \bio@showpicboxfalse if you don't want to put a frame box at the +% position for picture. +\ifDS@english +\def\bio@lineheight{9\@Q} +\def\bio@piclines{7} +\def\bio@indent{91\@Q} +\def\bio@hangafter{7} +\else +\def\bio@lineheight{8\@Q} +\def\bio@piclines{6} +\def\bio@indent{96\@Q} +\def\bio@hangafter{5} +\fi + +% \verbbiography forces verbatim output of biography (i.e. not ballanced). +\newif\ifbio@verb \bio@verbfalse +\def\verbbiography{\global\bio@verbtrue} +% The environment biography saves texts for biographies into the list of +% \inserts (for floats). +\def\biography{\ifipsj@recommendation\else\par\ra@putrcvacc\fi % 2.04(2) + \def\member{\bio@member{(正会員)}}\def\nomember{\bio@member{}} + \def\stmember{\bio@member{(学生会員)}}\let\adjust\bio@adjust + \ifbio@showpicbox + \setbox\bio@picbox\hbox{\hbox to\z@{\vrule\hskip-0.4pt% + \vtop to\bio@picheight{\vskip\z@\hrule width\bio@picwidth + \vfil\hrule}\hskip-0.4pt\vrule\hss}} + \else + \setbox\bio@picbox\hbox{} + \fi + \@tempdima\bio@piclines\baselineskip \advance\@tempdima\bio@lineheight + \dp\bio@picbox\@tempdima + \let\bio@egroup\relax\let\+\ignorespaces\let\@elt\relax + \def\bio@list{}\global\bio@th\z@} + +\def\bio@member#1#2{\bio@egroup\let\bio@egroup\bio@@egroup + \@next\@currbox\@freelist\relax + {\@latexerr{Too many unprocessed floats and biographies}\@ehb}% + \def\@tempa{#2}% + \global\setbox\@currbox\hbox\bgroup + \raise\bio@lineheight\copy\bio@picbox + \vtop\bgroup + \let\par\\ + \hangindent\bio@indent\hangafter-\bio@hangafter + \ifDS@english {\bf #2\ }% + \else {\bf\bio@putauthor#2\+ \@nil}#1{\@@par}\fi\ignorespaces} + +% Author name format: +% S + G < 5 -> fill space between S/G (like SS__G) +% otherwise -> 1 KC space between S/G (like SS_GG) +\def\bio@putauthor#1 #2\@nil{% + \setbox\@tempboxa\hbox{\jintercharskip\z@#1#2}% + \setbox\mkt@boxa\hbox{\jintercharskip1cm#1#2}% + \ifdim\wd\@tempboxa=\wd\mkt@boxa #1 #2\else + \def\@tempa{#2}\ifx\@tempa\empty + {\def\+{}\ipsj@warning{Author name #1 doesn't have a space}}% + % 2.00(3) + #1\else + \@tempdima\@mojihaba + \mkt@getnamewidth\mkt@sname{#1}\mkt@getnamewidth\mkt@gname{#2}% + \advance\mkt@sname\mkt@gname + \ifnum\mkt@sname<5\leavevmode\hbox to5\@mojihaba{#1\hfil#2}\else + #1#2\fi\fi\fi} +\def\bio@@egroup{\@@par\hbox{}\egroup\egroup\@tempdima\dp\@currbox + \ifdim\@tempdima>\textheight + \ipsj@warning{Biography of \@tempa\space is too long}% 2.00(3) + \bio@verbtrue \fi + \advance\@tempdima\baselineskip\global\advance\bio@th\@tempdima + \global\dimen\@currbox\@tempdima \global\count\@currbox\z@ + {\let\protect\bio@protect\xdef\bio@list{\bio@list\@elt\@currbox}}} +\def\bio@adjust#1{\bio@egroup\let\bio@egroup\relax + \ifbio@verb {\let\protect\bio@protect\xdef\bio@list{\bio@list#1}\fi}} +\def\bio@protect{\noexpand\protect\noexpand} + +\def\endbiography{\bio@egroup \@tempswatrue + \ifx\@botlist\@empty\ifx\@deferlist\@empty \@tempswafalse \fi\fi + \ifbio@verb\else\if@tempswa \bio@verbtrue \opt@warning\fi\fi + \ifbio@verb{\let\@elt\bio@putelt \let\protect\relax \bio@list}% + \else\bio@putbio\fi} + +\newdimen\bio@colht \newdimen\bio@splitheight +\newdimen\bio@maxgap \newdimen\bio@lastgap +\newdimen\bio@th \newdimen\bio@lhA \newdimen\bio@hA \newdimen\bio@hB +\newdimen\bio@lh \newdimen\bio@rh +\newdimen\bio@tempdim +\newif\ifbio@awful +\newinsert\bio@pbox \count\bio@pbox\@ne + +\def\bio@putbio{\let\@elt\relax \let\bio@vskip\relax \allowbreak + \bio@colht\@colht \advance\bio@colht-\topskip + \advance\bio@colht\baselineskip + \@tempdima\bio@colht \advance\@tempdima-\@colroom + \advance\@tempdima\pagetotal + \if@firstcolumn + \ifdim\@tempdima>\bio@th + \global\@lastpagebalancingtrue + {\let\@elt\bio@putelt\bio@list}\vskip-\baselineskip + \else + \ifdim\pagetotal=\z@\else + \dimen\bio@pbox\@tempdima \advance\bio@th\@tempdima + \edef\bio@list{\@elt\bio@pbox\bio@list}\fi + \bio@splitheight\bio@colht \bio@splitpage + \bio@splitheight.5\bio@th + \let\bio@awfulput\bio@specialawfulput + \bio@trybalance\fi + \else \advance\@tempdima\bio@th + \ifdim\@tempdima<\bio@colht + \global\@lastpagebalancingtrue + \ifdim\pagetotal=\z@ \global\opt@baselineskip2\baselineskip\fi + {\let\@elt\bio@putelt\bio@list}\vskip-\baselineskip + \else + \let\bio@awfulput\bio@normalawfulput + \bio@splitheight\z@ \advance\@tempdima-\bio@th + \advance\bio@colht-\@tempdima \bio@splitpage + {\let\@elt\bio@putelt\bio@list}\bio@nextpage + \bio@trybalance\fi + \fi} + +\def\bio@trybalance{\bio@split + \let\bio@right\bio@rightA \let\bio@left\bio@leftA + \def\bio@rightx{}\def\bio@leftx{}% + \let\bio@hX\bio@hA \bio@balance + \let\bio@rightxA\bio@rightx \let\bio@leftxA\bio@leftx + \ifbio@awful\@tempcnta\tw@\else\@tempcnta\z@\fi + \let\bio@right\bio@rightB \let\bio@left\bio@leftB + \def\bio@rightx{}\def\bio@leftx{}% + \let\bio@hX\bio@hB \bio@balance + \let\bio@rightxB\bio@rightx \let\bio@leftxB\bio@leftx + \ifbio@awful\advance\@tempcnta\@ne\fi + \ifcase\@tempcnta + \ifdim\bio@hA<\bio@hB \bio@balanceput\bio@leftxA\bio@rightxA + \else \bio@balanceput\bio@leftxB\bio@rightxB\fi + \or \bio@balanceput\bio@leftxA\bio@rightxA + \or \bio@balanceput\bio@leftxB\bio@rightxB + \else \bio@awfulput\fi + \ifx\bio@deferred\empty\vskip-\baselineskip\let\next\relax + \else\bio@nextpage\let\next\bio@trybalance\fi\next} + +\def\bio@split{\def\bio@leftA{}\def\bio@leftB{}% + \def\bio@rightA{}\def\bio@rightB{}% + \bio@lhA\z@\@tempdimb\z@ \bio@isplit} +\def\bio@isplit{\ifx\bio@list\empty\let\next\relax\else + \bio@car\@tempdima\@currbox\bio@list + \bio@lhA\@tempdimb\advance\@tempdimb\@tempdima + \edef\bio@leftB{\bio@leftB\@elt\@currbox}% + \ifdim\@tempdimb>\bio@splitheight + \edef\bio@rightA{\@elt\@currbox\bio@list}% + \let\bio@rightB\bio@list \let\next\relax + \else\edef\bio@leftA{\bio@leftA\@elt\@currbox}\let\next\bio@isplit + \fi\fi\next} + +\def\bio@balanceput#1#2{{\let\@elt\bio@putelt\let\bio@vskip\bio@xvskip + #1\bio@newpage#2}} +\def\bio@normalawfulput{{\let\bio@vskip\@gobble \@tempcnta\z@ + \@tempdima\z@ \bio@addheight\@tempdima\bio@leftxB + \ifdim\@tempdima<\bio@colht + \@tempdima\z@ \bio@addheight\@tempdima\bio@rightxB + \ifdim\@tempdima<\bio@colht \@tempcnta\@ne + \let\@elt\bio@putelt + \bio@leftxB\bio@newpage\bio@rightxB\fi\fi + \ifnum\@tempcnta=\z@ + \@tempdima\z@ \bio@addheight\@tempdima\bio@leftxA + \ifdim\@tempdima<\bio@colht + \@tempdima\z@\bio@addheight\@tempdima\bio@rightxA + \ifdim\@tempdima<\bio@colht \@tempcnta\@ne + \let\@elt\bio@putelt + \bio@leftxA\bio@newpage\bio@rightxA\fi\fi\fi +% The following may be redundant. + \ifnum\@tempcnta=\z@ + \let\@elt\bio@putelt\bio@listsave\fi}} +\def\bio@specialawfulput{{\advance\bio@th-\dimen\bio@pbox + \ifdim\bio@th<\bio@colht\bio@newpage + \let\bio@newpage\relax\fi\bio@normalawfulput}} + +\def\bio@putelt#1{\ifnum\count#1>\z@\else\box#1 + \nobreak\vskip-2\baselineskip\prevdepth\z@\hbox{} + \vskip\baselineskip\fi} +\def\bio@xvskip#1{\vskip#1\prevdepth\z@} +\def\bio@newpage{\vskip-\baselineskip\newpage} + +\def\bio@nextpage{\bio@newpage \let\bio@list\bio@deferred + \bio@th\z@ \bio@addheight\bio@th\bio@list + \bio@colht\@colht \advance\bio@colht-\topskip + \advance\bio@colht\baselineskip + \bio@splitheight\bio@colht \bio@splitpage + \bio@splitheight.5\bio@th + \let\bio@awfulput\bio@normalawfulput} +\def\bio@splitpage{\let\bio@listsave\bio@list \bio@split + \@tempdima\bio@th \advance\@tempdima-\bio@lhA + \ifdim\@tempdima>\bio@colht + \let\bio@leftAsave\bio@leftA \bio@th\bio@lhA + \let\bio@list\bio@rightA \bio@splitheight\bio@colht + \bio@split \edef\bio@list{\bio@leftAsave\bio@leftA}% + \advance\bio@th\bio@lhA + \let\bio@deferred\bio@rightA + \else\def\bio@deferred{}\let\bio@list\bio@listsave\fi} + +% \bio@tolerablegap: maximum tolerable gap between adjacent bio's. +% \bio@tolerablestretch:maximum stretch of a column. + +\@tempdima10\baselineskip % This might be changed +\edef\bio@tolerablegap{\the\@tempdima} +\@tempdima15\baselineskip +\edef\bio@tolerablelastgap{\the\@tempdima} +\def\bio@tolerablestretch{2} % This might be changed + +\def\bio@balance{\let\@elt\relax \edef\bio@bstack{% + \@elt{{\bio@left}{\bio@right}{}{}{0pt}}} + \bio@xbalance} +\def\bio@xbalance{% + \expandafter\bio@popstack\bio@bstack\@nil + \let\bio@nextA\bio@xbalance \@tempdima\z@ + \ifx\bio@left\empty \ifx\bio@right\empty + \let\bio@nextA\bio@balanceend + \else + \bio@addheight\@tempdima\bio@right + \edef\bio@leftx{\bio@leftx\bio@vskip{\the\@tempdima}}% + \advance\bio@hX\@tempdima + \edef\bio@rightx{\bio@rightx\bio@right}\def\bio@right{}% + \bio@pushstack \fi\else + \ifx\bio@right\empty + \bio@addheight\@tempdima\bio@left + \edef\bio@rightx{\bio@rightx\bio@vskip{\the\@tempdima}}% + \advance\bio@hX\@tempdima + \edef\bio@leftx{\bio@leftx\bio@left}\def\bio@left{}% + \bio@pushstack \else + \bio@car\@tempdima\bio@leftbox\bio@left + \bio@car\@tempdimb\bio@rightbox\bio@right + \edef\bio@leftx{\bio@leftx\@elt\bio@leftbox}% + \edef\bio@rightx{\bio@rightx\@elt\bio@rightbox}% + \ifdim\@tempdima>\@tempdimb + \advance\bio@hX\@tempdima + \let\bio@da\@tempdima\let\bio@db\@tempdimb + \bio@ibalance\bio@left\bio@right\bio@leftx\bio@rightx + \else \advance\bio@hX\@tempdimb + \let\bio@da\@tempdimb\let\bio@db\@tempdima + \bio@ibalance\bio@right\bio@left\bio@rightx\bio@leftx\fi + \fi\fi\bio@nextA} +\def\bio@ibalance#1#2#3#4{\let\bio@nextB\relax + \ifx#2\empty + \advance\bio@da-\bio@db + \edef#4{#4\bio@vskip{\the\bio@da}}\bio@pushstack\else + \bio@car\bio@tempdim\@currbox#2 \advance\bio@db\bio@tempdim + \ifdim\bio@da<\bio@db + \advance\bio@db-\bio@da + \let\@tempa#3\edef#3{#3\bio@vskip{\the\bio@db}}% + \let\@tempb#4\edef#4{#4\@elt\@currbox}% + \advance\bio@hX\bio@db \bio@pushstack + \advance\bio@hX-\bio@db + \edef#2{\@elt\@currbox#2}% + \advance\bio@tempdim-\bio@db + \let#3\@tempa \edef#4{\@tempb\bio@vskip{\the\bio@tempdim}}% + \bio@pushstack + \else \edef#4{#4\@elt\@currbox}\def\bio@nextB{\bio@ibalance#1#2#3#4}% + \fi\fi\bio@nextB} +\def\bio@balanceend{\bio@awfulfalse \def\bio@bstack{}% + \bio@maxgap\z@ \bio@lastgap\z@ + \bio@checkgap\bio@leftx \bio@checkgap\bio@rightx + \ifdim\bio@maxgap>\bio@tolerablegap\relax\bio@awfultrue\fi + \ifdim\bio@lastgap>\bio@tolerablelastgap\relax\bio@awfultrue\fi + \ifdim\bio@hX>\bio@tolerablestretch\bio@splitheight\bio@awfultrue\fi + \ifdim\bio@hX>\bio@colht\bio@awfultrue\fi} +\def\bio@checkgap#1{{\@tempdima\z@ \@tempdimb\z@ \bio@tempdim\z@ + \let\@elt\bio@cgelt \let\bio@vskip\bio@cgvskip #1\relax + \ifdim\@tempdima>\bio@maxgap \global\bio@maxgap\@tempdima \fi + \ifdim\bio@tempdim>\bio@lastgap \global\bio@lastgap\bio@tempdim \fi}} +\def\bio@cgvskip#1{\advance\bio@tempdim#1\relax + \ifdim\bio@tempdim>\@tempdimb \@tempdimb\bio@tempdim\fi} +\def\bio@cgelt#1{\@tempdima\@tempdimb \bio@tempdim\z@} +\def\bio@popstack\@elt#1#2\@nil{\edef\bio@bstack{#2}\bio@ipopstack#1} +\def\bio@ipopstack#1#2#3#4#5{\def\bio@left{#1}\def\bio@right{#2}% + \def\bio@leftx{#3}\def\bio@rightx{#4}\bio@hX#5\relax} +\def\bio@pushstack{\def\bio@bstackx{}% + \expandafter\bio@ipushstack\bio@bstack\@elt\@nil} +\def\bio@ipushstack\@elt#1{\def\@tempc{#1}% + \ifx\@tempc\@nnil \edef\bio@bstack{\bio@bstackx\bio@stackelt}% + \let\bio@nextC\relax \else + \bio@iipushstack#1\fi\bio@nextC} +\def\bio@iipushstack#1#2#3#4#5{\ifdim#5>\bio@hX + \edef\bio@bstackx{\bio@bstackx\bio@stackelt + \@elt{{#1}{#2}{#3}{#4}{#5}}}% + \let\bio@nextC\bio@pushstackend\else + \edef\bio@bstackx{\bio@bstackx + \@elt{{#1}{#2}{#3}{#4}{#5}}}% + \let\bio@nextC\bio@ipushstack\fi} +\def\bio@pushstackend#1\@elt\@nil{\edef\bio@bstack{\bio@bstackx#1}} +\def\bio@stackelt{\@elt{{\bio@left}{\bio@right}{\bio@leftx}{\bio@rightx}% + {\the\bio@hX}}} +\def\bio@addheight#1#2{\def\@elt##1{\advance#1\dimen##1}#2\let\@elt\relax} +\def\bio@car#1#2#3{\expandafter\bio@icar#3\@nil#1#2#3} +\def\bio@icar\@elt#1#2\@nil#3#4#5{#3=\dimen#1\relax\def#4{#1}\def#5{#2}} + + +%%%%%% Miscellaneous %%%%%% + +\flushbottom + +\ifDS@english +\hbadness9999 \tolerance9999 +\else +\hbadness5000 \tolerance5000 +\pretolerance\m@ne +\fi + +\input{ipsjcommon.sty} + +\twocolumn + +\endinput diff -r 000000000000 -r 08708e1a2e64 Paper/prosym.tex --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Paper/prosym.tex Wed Nov 16 18:11:15 2011 +0900 @@ -0,0 +1,1059 @@ +\documentclass{ipsjpapers} + +% 巻数,号数などの設定 +\setcounter{巻数}{41} +\setcounter{号数}{6} +\setcounter{volpageoffset}{1234} +\受付{12}{2}{4} +\採録{12}{5}{11} + +% ユーザが定義したマクロなど. +\makeatletter +\let\@ARRAY\@array \def\@array{\def\<{\inhibitglue}\@ARRAY} +\def\<{\(\langle\)} +\def\>{\(\rangle\)} +\def\|{\verb|} +\def\Underline{\setbox0\hbox\bgroup\let\\\endUnderline} +\def\endUnderline{\vphantom{y}\egroup\smash{\underline{\box0}}\\} +\def\LATEX{\iLATEX\Large} +\def\LATEx{\iLATEX\normalsize} +\def\LATex{\iLATEX\small} +\def\iLATEX#1{L\kern-.36em\raise.3ex\hbox{#1\bf A}\kern-.15em + T\kern-.1667em\lower.7ex\hbox{E}\kern-.125emX} +\def\LATEXe{\ifx\LaTeXe\undefined \LaTeX 2e\else\LaTeXe\fi} +\def\LATExe{\ifx\LaTeXe\undefined \iLATEX\scriptsize 2e\else\LaTeXe\fi} +\def\Quote{\list{}{}\item[]} +\let\endQuote\endlist +\def\TT{\if@LaTeX@e\tt\fi} +\def\CS#1{\if@LaTeX@e\tt\expandafter\string\csname#1\endcsname\else + $\backslash$#1\fi} + +%\checklines % 行送りを確認する時に使用 +\begin{document}%{ +% 和文表題 +\title[{\protect\LaTeX} による論文作成のガイド]% + {{\protect\LATEX} による論文作成のガイド(第3版)} +% 英文表題 +\etitle{How to Typeset Your Papers in {\LATEx} (Version 3)} +% 所属ラベルの定義 +\affilabel{TUT}{豊橋技術科学大学\\Toyohashi University of Technology} +\paffilabel{Princeton}{プリンストン高等研究所(嘘です)\\ + Institute for Advanced Study, Princeton (just joke)} +\affilabel{NTT}{NTT基礎研究所\\NTT Basic Research Laboratories} +% 和文著者名 +\author{中島 浩\affiref{TUT}\affiref{Princeton}\member{8104129}\and + 斉藤 康己\affiref{NTT}\member{8003547}} + +% 英文著者名 +\eauthor{Hiroshi Nakashima\affiref{TUT}\affiref{Princeton}\and + Yasuki Saito\affiref{NTT}} + +% 連絡先(投稿時に必要.製版用では無視される.) +\contact{中島 浩\\ + 〒441-8580 豊橋市天伯町雲雀ヶ丘1-1\\ + 豊橋技術科学大学 情報工学系\\ + TEL: (0532)44-6753\qquad FAX: (0532)44-6757\\ + email: nakasima@tutics.tut.ac.jp} + +% 和文概要 +\begin{abstract} +このパンフレットは,情報処理学会論文誌(以後,論文誌と呼ぶ)に投稿する論文, +並びに掲載が決定した論文の最終版を,日本語 {\LaTeX} を用いて作成し提出するた +めのガイドである.このパンフレットでは,論文作成のためのスタイルファイルにつ +いて解説している.また,このパンフレット自体も論文と同じ方法で作成されている +ので,必要に応じてスタイルファイルとともに配布するソース・ファイルを参照され +たい. +\end{abstract} +% 英文概要 +\begin{eabstract} +This pamphlet is a guide to produce a draft to be submitted to IPSJ Journal +and Transactions and the final camera-ready manuscript of a paper to appear +in the Journal\slash Transactions, using Japanese {\LaTeX} and special style +files. Since the pamphlet itself is produced with the style files, it will +help you to refer its source file which is distributed with the style files. +\end{eabstract} + +% 表題などの出力 +\maketitle + +% }{ + +% 本文はここから始まる +\section{はじめに} +\stepcounter{footnote} +\footnotetext{実際の著者は情報処理学会 論文誌編集委員会である.} + +情報処理学会では,論文誌を迅速かつ低コストで出版するために {\LaTeX} による製版 +を採用している.この製版方式では,著者が作成した {\LaTeX} ソースが基本的にはそ +のまま最終的な製版プロセスに使用される.したがって,多数の読者に親しまれてき +た体裁を継承し,読み易い論文誌を出版するためには,著者の方々の協力が不可欠で +ある. + +一方,著者にとってのメリットとしては,活字製版では避け難い製版時の誤りがなく +なり,校正の手間が大幅に削減されることがあげられる.また専用のスタイルファイ +ルと通常使われる {\LaTeX} のコマンドを使えば,簡単に論文誌の体裁に則った出力 +が得られるので,日頃 {\LaTeX} で文書を作成している多くの著者には無理なく受け +入れられるものと期待している.さらに,投稿用のスタイルファイルも用意されてお +り,最終版作成のための修正は最小限となるだけでなく,以前に比べて格段に読み易 +い草稿を得ることができる.これは自分の原稿をチェックする著者だけではなく,査 +読者にとっても大きなメリットである. + +なお,論文誌スタイルには通常の {\LaTeX} に追加されたコマンドがあり,その多く +は論文製版に不可欠なものである.またスタイルファイルだけでは対処しきれない体 +裁上の注意事項もいくつかある.したがって,著者も含めて論文誌作成に関わる全て +の人々の労力を軽減するためにも,原稿を作成する前にこのガイドを{\bf 良く読ん +で規定を厳密に守っていただきたい}. + +% }{ + +\section{投稿から出版まで}\label{sec:Enum}\label{sec:item} + +投稿する論文の作成から,論文が掲載された論文誌が出版されるまでの流れは,以下 +の通りである. +% +\begin{Enumerate}%{ +\item {\bf スタイルファイルの取得}\\ +任意の電子メールを \|guide@ipsj.or.jp| に送ると,スタイルファイルなどからなる +論文作成キットをWWW, anonymous-FTP, 電子メールなどによって取得する方法を説明 +した返信が届く.なお,インターネットにアクセスできない方は,学会事務局に相談 +していただきたい. + +このキットには以下のファイルが含まれている. +% +\begin{itemize}%{ +\item\|ipsjpapers.sty| : 製版用スタイル +\item\|ipsjpapers.cls| : {\LATEXe} 用製版用スタイル +\item\|ipsjdrafts.sty| : 投稿用スタイル +\item\|ipsjcommon.sty| : 製版/投稿用補助スタイル +\item\|ipsjsort.bst | : jBib{\TeX}スタイル(著者名順) +\item\|ipsjunsrt.bst | : jBib{\TeX}スタイル(出現順) +\item\|sample.tex | : このガイドのソース(製版用) +\item\|dsample.tex | : このガイドのソース(投稿用) +\item\|esample.tex | : 英文ガイドのソース(製版用) +\item\|desample.tex | : 英文ガイドのソース(投稿用) +\item\|bibsample.bib | : 文献リストのサンプル +\item\|ebibsample.bib| : 英文文献リストのサンプル +\end{itemize}%} +% +キットは Unix 用,DOS 用,Macintosh 用などが用意されており,著者の作業環境 +に応じたものを選択できるようになっている. + +\item {\bf 投稿用原稿の作成と投稿}\\ +このガイドにしたがって {\LaTeX} ソースを作成してハードコピーを作る.学会へは +{\bf このハードコピーを「論文誌執筆案内」に定められた部数だけ送付する} +\footnote {電子的な投稿を可能にすることも検討されている.}.なお著者名など, +別々のページとすべきものは自動的に別ページに出力される. + +\item {\bf 製版用原稿の作成}\\ +採録が決定したら,査読者からのコメントなどにしたがって原稿を修正し,著者紹介 +など投稿時になかった項目があれば追加する.また図表などのレイアウトも最終的な +ものとする.なお後の校正の手間を最小にするために,{\bf この段階で記述の誤り +などを完全に除去するように綿密なチェックをお願いしたい}. + +\item {\bf 製版用原稿とファイルの送付}\\ +学会へは {\bf {\LaTeX} ファイル(をまとめたもの)とハードコピーの双方を}送付 +する.送付するファイル群の標準的な構成は \|.tex| と \|.bbl| であり,この他に + PostScript ファイルや特別なスタイルファイルがあれば付加する.なお \|.tex| は +印刷業者が修正することがあるので,{\bf 必ず一つのファイルにしていただきたい}. +また必要なファイルが全てそろっていること,特に特別なスタイルファイルに洩れが +ないことを,注意深く確認して頂きたい. + +ファイルの送付方法などについては,採録通知とともに学会事務局から送られる指示 +にしたがっていただきたい. + +\item {\bf 著者校正}\\ +学会では用語や用字を一定の基準にしたがって修正することがあり,また {\LaTeX} +の実行環境の差異などによって著者が作成したハードコピーと実際の製版結果が微妙 +に異なることがある.これらの修正や差異が問題ないかを最終的に確認するために, +著者にゲラ刷りが送られるので,もし問題があれば朱書によって指摘して返送する. +なお{\bf この段階での記述誤りの修正は原則として認められない}ので,原稿送付時 +に細心の注意を払っていただきたい. + +\item {\bf 印刷・出版}\\ +著者の校正に基づき最終的な製版を行ない,印刷,出版する. +\end{Enumerate}%} + +% }{ + +\section{{\protect\LATex}の実行環境}\label{sec:ITEM} + +スタイルファイルはNTTの斉藤康己氏による j{\TeX}(いわゆるNTT版)と,アスキー +社による日本語 {\TeX}(いわゆるアスキー版)のどちらにも対応しているので,著者 +の {\LaTeX} 環境に関わらず同じスタイルファイルを使用できる. + +NTT版およびアスキー版の各々について,以下のバージョンでの動作確認を行なって +いる. +% +\begin{ITEMIZE}%{ +\item +NTT版${}={}${j\TeX} 1.52${}+{}${\LaTeX} 2.09 +\item +アスキー版${}={}${\TeX} 2.99-j1.7${}+{}${\LaTeX} 2.09 +\end{ITEMIZE}%} +% +これ以前の版についても動作すると期待できるが,できれば新しい版を使って頂きた +い.また {\LATEXe} に関しては,以下のバージョンでの動作確認を行なっている. +% +\begin{ITEMIZE}%{ +\item +NTT版${}={}${j\TeX} 1.6${}+{}$% +\ifDS@draft\else\\\mbox{}\hskip5em\fi + {\LATEXe} 1994/12/01 patch level 3 +\item +アスキー版${}={}${p\TeX} 3.1415 p2.1.4${}+{}$% +\ifDS@draft\else\\\mbox{}\hskip5em\fi + {p\LATEXe} 1995/09/01 +\end{ITEMIZE}%} +% +いずれについても,ネイティブ・モードと{\LaTeX} 2.09 互換モードのどちらでも使 +用することができる. + +% }{ + +\section{スタイルファイルの使い方} +\subsection{一般的な注意事項} + +会議の予稿集などとは違い,論文誌の体裁には伝統的かつ「堅い」約束事が数多くあ +る.そのためスタイルファイルも「堅い」ものとなっており,{\LaTeX} の特徴の一 +つであるカスタマイズ機能は大幅に制限される.例えば \|\textheight| などのいわ +ゆる style parameter を変更するのは当然やめていただきたい.どのようなカスタ +マイズが許されるのかを示すのは難しいが,一つの基準として「スタイルファイルを +読んでみて大丈夫だと確信が持てる」こと以外はしないことを強く勧める. + +なお,これらの変更やこのガイドで述べている「やめて欲しいこと」を行なっても, +{\bf エラーになったりせず単に結果が変になる}ことに注意していただきたい. + +% }{ + +\subsection{論文の構成}\label{sec:config} + +ファイルは次の形式で作る.なお下線部は投稿時にはなくてもよい.また研究会論文 +誌特有のコマンドなどについては,付録\ref{sec:app-sig}を参照されたい. +% +\begin{Quote}\small* +\|\documentclass{ipsjpapers}|\footnote{% + {\LATExe} を native mode で使う場合には \CS{documentclass} を使 +用し,必要に応じて \CS{usepackage} を加える.} または\\ +\|\documentclass[draft]{ipsjpapers}|\footnotemark[1]\\ +必要ならばオプションのスタイルを指定する.\\ +\Underline{\|\setcounter{|{\bf 巻数}\|}{|\<巻数\>\|}|}\\ +\Underline{\|\setcounter{|{\bf 号数}\|}{|\<号数\>\|}|}\\ +\Underline{\|\setcounter{volpageoffset}{|\<先頭ページ\>\|}|}\\ +\Underline{\|\|{\bf 受付}\|{|\<年\>\|}{|\<月\>\|}{|\<日\>\|}|}\\ +\Underline{\|\|{\bf 採録}\|{|\<年\>\|}{|\<月\>\|}{|\<日\>\|}|}\\ +必要ならばユーザのマクロ定義などをここに書く.\\ +\|\begin{document}|\\ +\|\title{|\<表題(和文)\>\|}|\\ +\|\etitle{|\<表題(英文)\>\|}|\\ +\|\affilabel{|\<所属ラベル\>\|}%|\\ +\mbox{}\qquad\qquad\|{|\<和文所属\>\|\\|\<英文所属\>\|}|\\ +\mbox{}\qquad\qquad\ldots\ldots\ldots\\ +必要ならば \|\paffilabel| により現在の所属を宣言する.\\ +\|\author{|\<第一著者(和文)\>\|\and|\\ +\leavevmode\phantom{\tt @author@}\<第二著者(和文)\>\|\and|\\ +\leavevmode\phantom{\tt @author@} \ldots{} \|}|\\ +\|\eauthor{|\<第一著者(英文)\>\|\and|\\ +\leavevmode\phantom{\tt @eauthor@}\<第二著者(英文)\>\|\and|\\ +\leavevmode\phantom{\tt @eauthor@} \ldots{} \|}|\\ +\|\contact{|\<連絡先\>\|}|\\ +\|\begin{abstract}|\\ +\mbox{}\quad\<概要(和文)\>\\ +\|\end{abstract}|\\ +\|\begin{eabstract}|\\ +\mbox{}\quad\<概要(英文)\>\\ +\|\end{eabstract}|\\ +\|\maketitle|\\ +\|\section{|\<第1節の表題\>\|}|\\ +\mbox{}\quad $\ldots\ldots\ldots$\\ +\mbox{}\quad\<本文\>\\ +\mbox{}\quad $\ldots\ldots\ldots$\\ +謝辞があれば \|acknowledgment| 環境を使ってここに記す.\\ +\|\bibliographystyle{ipsjunsrt}| または\\ +\|\bibliographystyle{ipsjsort}|\\ +\|\bibliography{|\<文献データベース\>\|}|\\ +付録があれば \|\appendix| に続いてここに記す.\\ +\Underline{\|\begin{biography}|}\\ +\Underline{\mbox{}\quad\<著者紹介\>}\\ +\Underline{\mbox\qquad$\ldots\ldots\ldots$}\\ +\Underline{\|\end{biography}|}\\ +\|\end{document}| +\end{Quote} + +% }{ + +\subsection{オプション・スタイル}\label{sec:ENUM} + +\|\documentstyle| (または \|\documentclass|)の標準オプションとして,以下の5 +つのものが用意されている. +% +\begin{ENUMERATE}%{ +\item\|draft | 投稿用 +\item\|technote| テクニカルノート用 +\item\|preface | 序文用 +\item\|printer | 最終印刷用 +\item\|english | 英文用 +\end{ENUMERATE}%} +% +これらのオプションは(意味があれば)任意の組合せで指定することができる.なお +\|printer|オプションは,{\LaTeX} の実行環境によっては無視されたり印刷時にエ +ラーになったりすることがある. + +オプション引数で補助的なスタイルファイルを指定した場合には,製版用のファイ +ル群に必ずスタイルファイルを含める.ただし,以下の5つについては標準的に用 +意されているので同封の必要はない. +% +\begin{Quote}\raggedright\tt +epsf\qquad eclepsf\qquad epsbox\qquad epic\qquad eepic +\end{Quote} +% +なおスタイルファイルによっては論文誌スタイルと矛盾するようなものもあるので, +スタイルファイルの性格を良く理解して使用していただきたい. + +\subsection{巻数,号数などの記述} +学会より指示された巻数,号数,先頭ページ番号\hbox{(\|\volpageoffset|)},受 +付/採録年月日(年は平成年)を記述する.なお学会からの指示がない項目に関して +は,記述しなくてよい. + +% }{ + +\subsection{表題などの記述}\label{sec:Desc}\label{sec:DESC} + +表題,著者名とその所属,および概要を前述のコマンドや環境により{\dg 和文と英 +文の双方について}定義した後,\|\maketitle| によって出力する.また投稿時には +\|\contact| によって連絡先を記述する(製版時にもあっても良いが無視される). +投稿時には,表題,著者名と連絡先,概要がそれぞれ別のページに出力される. +% +\begin{Description} +\item[表題] +\|\title| および \|\etitle| で定義した表題はセンタリングされる.文字数の多い +ものについては{\dg 自動的な改行が行なわれない}ので,適宜 \|\\| を挿入して改行 +する.その際には各行は左詰めで組版され,その後最も長い行を基準にしてセンタリ +ングされる.なお和文表題は奇数ページのヘッダにも表示されるので,ヘッダに納ま +らないような長い表題の場合には +% +\begin{quote} +\|\title[|\<ヘッダ用表題\>\|]{|\<表題\>\|}| +\end{quote} +% +のように,ヘッダ用に短くしたものをオプション引数として指定する. + +\item[著者名と所属] +各著者の所属を第一著者から順に \|\affilabel| を用いてラベル(第1引数)を付け +ながら定義すると,脚注に $\dagger$ や $\dagger\dagger$ を付けて和文の所属 +(第2引数の\|\\|より前)と英文の所属(\|\\|より後)が出力される.なお,複数 +の著者が同じ所属である場合には,一度定義するだけで良い.また論文執筆時と発行 +時とでは所属が異なる場合には,\|\paffilabel| を用いて新しい所属を定義する. +新しい所属は脚注に☆や\hbox{☆☆}などを付けて出力される. + +著者名は \|\author| と \|\eauthor| で定義し,複数の著者は \|\and| で区切る. +また各著者名の直後に \|\affiref|\allowbreak\hbox{\|{|\<所属ラベル\>\|}|} +をおいて(複数可)所属ラベル (\|\affilabel| や \|\paffilabel| で定義したも +の)を参照し,対応する脚注参照記号を付加する.またさらにその後に,著者が会 +員であるか否かにより +% +\begin{DESCRIPTION} +\item[会員\phantom{ああ}]:\|\member{|\<会員番号\>\|}| +\item[学生会員]:\|\stmember{|\<会員番号\>\|}| +\item[非会員\phantom{あ}]:\|\nomember| +\end{DESCRIPTION} +% +を付加する.これらは投稿時に出力され,製版時には無視される. + +なお,和文著者名は必ず{\dg 姓と名を半角(ASCII)の空白で区切る}. + +\item[連絡先] +投稿時には必ず \|\contact| の引数の中に,連絡先の氏名,住所,電話/FAX番号, +電子メール・アドレスを,適宜 \|\\| で改行しながら記述する.なお製版版では無 +視される. + +\item[概要] +和文の概要は \|abstract| 環境の中に,英文の概要は \|eabstract| 環境の中に, +それぞれ記述する. +\end{Description} + +% }{ + +\subsection{見出し} + +節や小節の見出しには \|\section|, \|\subsection| といったコマンドを使用する. +\|\section|の見出しは2行を占め,他は1行に出力される. + +「定義」,「定理」などについては,\|\newtheorem|で適宜環境を宣言し, +その環境を用いて記述する.なお見出しは{\bf 定理1}などのように日本語の題と番 +号の組合せを想定しているので,題と番号の間には微小な空白しか入らない.もし +{\bf Thorem 1}のような英語と番号の組合せを用いる場合には,\|\newtheorem*|に +よって環境を宣言すれば,空白が挿入される.. + +% }{ + +\subsection{文章の記述}\label{sec:desc*}\label{sec:enum} + +\begin{description*} +\item[行送り] +学会誌は2段組を採用しており,左右の段で行の基準線の位置が一致することを原則 +としている.また,節見出しなど,行の間隔を他よりたくさんとった方が読みやすい +場所では,この原則を守るようにスタイルファイルが自動的にスペースを挿入する. +したがって本文中では \|\vspace| や \|\vskip| を用いたスペースの調整を行なわ +ないでいただきたい.なお \|\begin{document}| の前にコマンド \|\checkline| を +挿入しておくと,本文の各行が持つべき基準線が印刷されるので,行送りが正しいか +どうかをチェックすることができる.ただしこのコマンドは原稿送付時には使用しな +いでいただきたい. +\item[フォントサイズ] +このガイドの印刷結果からもわかるように,論文誌スタイルでは様々な大きさのフォ +ントが使われるが,これらは全てスタイルファイルが自動的かつ注意深く選択したも +のである.したがって,著者が自分でフォントサイズを変更する必要はなく,かえっ +て行送りの原則を守る妨げにもなる.もし特定の箇所で1行に多くの文字を入れたい +などの理由から小さいフォントを使用する場合には,\|\small*| あるいは +\|\footnotesize*| という\|*|が付いたコマンドを使用していただきたい(この二つ +以外は禁止).これらは基準線間隔を変えずにフォントの大きさだけを変更するもの +である.なお \|\small*| の例が\ref{sec:config}節とこのページに示されている. + +\item[句読点] +句点には全角の「.」,読点には全角の「,」を用いる.ただし英文中や数式 +中で「.」や「,」を使う場合には,半角文字を使う.「。」や「、」は一切使 +わない. + +\item[全角文字と半角文字] +全角文字と半角文字の両方にある文字は次のように使い分ける. +% +\begin{enumerate} +\item 括弧は全角の「(」と「)」を用いる.但し,英文の概要,図表見出し,書誌 +データでは半角の「(」と「)」を用いる. + +\item +英数字,空白,記号類は半角文字を用いる.ただし,句読点に関しては,前項で述べ +たような例外がある. + +\item +カタカナは全角文字を用いる. + +\item +引用符では開きと閉じを区別する. 開きには \|``|(``) を用い,閉じには \|''| +('') を用いる. +\end{enumerate} + +\item[OverfullとUnderfull] +製版時にはoverfullを起こさないことを原則としている.従って,まず提出するソー +スが著者の環境でoverfullを起こさないように,文章を工夫するなどの最善の努力を +払っていただきたい.但し,\|flushleft| 環境,\|\\|,\|\linebreak| などによる右 +詰めをしない形でのoverfullを回避は,できるだけ避けていただきたい.また著者の +環境では発生しないoverfullが,印刷時の環境では発生することもある.このような +事態をできるだけ回避するために,文中の長い数式や \|\verb| を避ける,パラグラフ +の先頭付近では長い英単語を使用しない,などの注意を払っていただきたい. + +また,\verb|\\| をパラグラフの終りで使用すると +% +\begin{Quote}\small* +\|Underfull \hbox (badness 10000) detected| +\end{Quote} +% +のwarningが発生し,空行が挿入される.このような空行は見苦しく,また重要なエ +ラー・メッセージを見逃す原因にもなるので,ソースを提出する時点では全て除去さ +れているようにしていただきたい.特に,箇条書用環境の直前, \|\item| の直前, +箇条書用環境の末尾などで \verb|\\| を使うと,前述のwarning が出力されること +に注意していただきたい. +\end{description*} + +% }{ + +\subsection{数式}\label{sec:Item} + +\begin{Itemize} +\item 本文中の数式\\ +本文中の数式は \|$| と \|$|, \|\(| と \|\)|, あるいは \|math| 環境のいずれで +囲んでもよい.なお \smash{$\frac{a}{b}$} (\|\frac{a}{b}|) のように背が高い要 +素は見苦しくかつ行送りを乱すことにもなるので,使用しないようにしていただきた +い. + +\item 別組の数式\\ +別組数式(displayed math)については {\bf \|$$| と \|$$| は使用してはならない}. +すなわち \|\[| と \|\]| で囲むか, \|displaymath|, \|equation|, \|eqnarray| +のいずれかの環境を用いなければならない.これらは +% +\begin{equation} +\Delta_l = \sum_{i=l+1}^L\delta_{pi} +\end{equation} +% +のように,センタリングではなく固定字下げで数式を出力し,かつ背が高い数式によ +る行送りの乱れを吸収する機能がある. + +\item \|eqnarray|環境\\ +互いに関連する別組の数式が2行以上連続して現れる場合には,単に \|\[| と \|\]|, +あるいは \|\begin{equation}| と \|\end{equation}| で囲った数式を書き並べるの +ではなく,\|\begin|\allowbreak\|{eqnarray}| と \|\end{eqnarray}| を使って, +等号(あるいは不等号)の位置で縦揃えを行なった方が読みやすい.なお +\|eqnarray| の中では改ページが行なわれないので,行数が多く途中で改ページが起 +こって欲しい場合には,\|\begin{eqnarray}[s]| のようにオプション \|[s]| を指 +定すればよい. + +\item 数式のフォント\\ +{\LaTeX}が標準的にサポートしているもの以外の特殊な数式用フォントは,できるだ +け使わないようにしていただきたい.どうしても使用しなければならない場合には, +その旨申し出ていただくとともに,印刷工程に深く関与していただくこともあること +に留意されたい. +\end{Itemize} + +% }{ + +\subsection{図} + +1段の幅におさまる図は,\figref{fig:single} の形式で指定する. 位置の指定に \|h| +は使わない.また,図の下に{\dg 和文と英文の双方の}見出しを,\|\caption| と % +\|\ecaption| で指定する.文字数が多い見出しはは自動的に改行して最大幅の行を +基準にセンタリングするが,見出しが2行になる場合には適宜 \|\\| を挿入して改行 +したほうが良い結果となることがしばしばある(\figref{fig:single} の英文見出し +を参照). + +\begin{figure} +\setbox0\vbox{ +\hbox{\|\begin{figure}[tb]|} +\hbox{\quad \<図本体の指定\>} +\hbox{\|\caption{|\<和文見出し\>\|}|} +\hbox{\|\ecaption{|\<英文見出し\>\|}|} +\hbox{\|\label{| $\ldots$ \|}|} +\hbox{\|\end{figure}\|}} +\centerline{\fbox{\box0}} +\caption{1段幅の図} +\ecaption{Single column figure with caption\\ + explicitly broken by $\backslash\backslash$} +\label{fig:single} +\end{figure} + +2段の幅にまたがる図は,\figref{fig:double} の形式で指定する. 位置の指定は +\|t| しか使えない. + +\begin{figure*} +\setbox0\vbox{\large +\hbox{\|\begin{figure*}[t]|} +\hbox{\quad\<図本体の指定\>} +\hbox{\|\caption{|\<和文見出し\>\|}|} +\hbox{\|\ecaption{|\<英文見出し\>\|}|} +\hbox{\|\label{| $\ldots$ \|}|} +\hbox{\|\end{figure*}|}} +\centerline{\fbox{\hbox to.9\textwidth{\hss\box0\hss}}} +\caption{2段幅の図} +\ecaption{Double column figure} +\label{fig:double} +\end{figure*} + +図の中身では本文と違い,どのような大きさのフォントを使用しても構わない +(\figref{fig:double} 参照).また図の中身として,encapsulate された +PostScript ファイル(いわゆるEPSファイル)を読み込むこともできる.読み込みの +ためには以下に示すいずれかのスタイル・ファイルを \|\documentstyle| のオプショ +ン(または \|\usepackage| の引数)で指定し,ファイル名(など)をコマンド +\|\epsfile| の引数で指定する. +% +\begin{Quote}\tt +epsf\qquad eclepsf\qquad epsbox +\end{Quote} +% +なお PostScript ファイルの中で使用できるフォントは,付録に示 +された標準的なものだけであることに注意していただきたい. + +この節を注意深く見ると,\figref{fig:single} や\figref{fig:double} の最初の参照 +はゴチック体であるのに対し,2回目以降では明朝体であるのに気づくだろう.この +切替えは論文誌の伝統的体裁に基づくもので,図の参照を(「図\hbox{\|\ref{|\<ラ +ベル\>\|}|}」ではなく)\|\figref{|\<ラベル\>\|}|を用いて行なえば自動的に成され +る. + +% }{ + +\subsection{表} + +表の罫線はなるべく少なくするのが,仕上がりをすっきりさせるコツである.罫線を +つける場合には,一番上の罫線には二重線を使い,左右の端には縦の罫線をつけない +(\tabref{tab:example}).表中のフォントサイズのデフォルトは\|\small|である. + +また,表の上に{\dg 和文と英文の双方の}見出しを, \|\caption|と \|\ecaption| +で指定する.表の参照は \|\tabref{|\<ラベル \>\|}| を用いて行なう. + +\begin{table}[b] \caption{箇条書環境の使用箇所(表の例)} \ecaption{Sections +and sub-sections in which list-like environments are used (example of +table)} \label{tab:example} +% 左右の罫線はつけず,一番上の罫線は二重線 +\hbox to\hsize{\hfil +\begin{tabular}{l|lll}\hline\hline +&enumerate&itemize&description\\\hline +type-1& \ref{sec:enum}& \ref{sec:item}& ---\\ +type-2& ---& \ref{sec:item*}&\ref{sec:desc*}\\ +type-3& \ref{sec:Enum}& \ref{sec:Item}& \ref{sec:Desc}\\ +type-4& \ref{sec:ENUM}& \ref{sec:ITEM}& \ref{sec:DESC}\\\hline +\multicolumn{4}{l}{type-1\,: enumerate等\quad type-2\,: enumerate*等}\\ +\multicolumn{4}{l}{type-3\,: Enumerate等\quad type-4\,: ENUMERATE等}\\ +\end{tabular}\hfil} +\end{table} + +% }{ + +\subsection{箇条書}\label{sec:item*} + +論文誌では箇条書に関する形式を特に定めておらず,場合に応じて様々な様式が用い +られている.スタイルファイルでは,{\LaTeX} の箇条書用の環境である +\|enumerate|, \|itemize|, \|description| に4種類のファミリーを設け,状況に応 +じた使い分けができるようにしている. +% +\begin{itemize*} +\item \|enumerate|, \|itemize|, \|description|\\ +{\LaTeX} の標準的なものと同じ.但しインデンテーションは \|enumerate| では全角3 +文字分,その他は全角2文字分である.また \|enumerate| のラベルは,標準の +% +\begin{quote} +1.\quad (a)\quad i.\quad A. +\end{quote} +% +ではなく, +% +\begin{quote} +(\,1\,)\quad (\,a\,)\quad (\,i\,)\quad (\,A\,) +\end{quote} +% +のように全て括弧付きであり,数字などの前後に小さな空白が挿入される. + +\item \|enumerate*|, \|itemize*|, \|description*|\\ +\|enumerate|などとほぼ同じだが,インデンテーションは全角1文字分である. + +\item \|Enumerate|, \|Itemize|, \|Description|\\ +文章のインデンテーションを行なわない. + +\item \|ENUMERATE|, \|ITEMIZE|, \|DESCRIPTION|\\ +文章のインデンテーションを行なわず,先頭行(ラベルがある行)を全角1文字分だ +けインデントする. +\end{itemize*} +% +\tabref{tab:example} に示すように\footnotemark , +% 34行下の \footnotetext 参照 +このパンフレットの各章/節に各々の環境の使用例があるので,適宜参照されたい. + +% }{ + +\subsection{左右の段の行揃え} + +文章の記述のところでも述べたように,論文誌では左右の段で行の位置をそろえる必 +要がある.ユーザが特別な高さのボックスを使ったために行の位置が乱れてしまうよ +うな場合には,その部分を \|\begin|\allowbreak\|{adjustvboxheight}| と +\|\end|\allowbreak\|{adjustvboxheight}| で囲っていただきたい.この環境は中途 +半端な行送りを吸収するためのものである.例えば次の; +% +\begin{adjustvboxheight} +\begin{quote} +\fbox{$\displaystyle\sum_{i=0}^n i$} +\end{quote} +\end{adjustvboxheight} +% +は,以下のようにして出力したものである. +% +\begin{Quote} +\|\begin{adjustvboxheight}|\\ +\|\begin{quote}|\\ +\|\fbox{$\displaystyle\sum_{i=0}^n i$}|\\ +\|\end{quote}|\\ +\|\end{adjustvboxheight}| +\end{Quote} +% +ただしこのようなものを本文中に挿入することを推奨しているわけではない. + +% }{ + +\subsection{脚注} +\footnotetext{このfootnoteは左カラムにマークがあるのにfootnote自体は +右カラムに現われている.これは簡単なトリックで実現できる.ソースファイ +ル参照.}% +% 38行上の \footnotemark 参照 + +脚注は\|\footnote| コマンドを使って書くと,ページ単位に\footnote{脚注の例.} +や\footnote{二つめの脚注.}のような参照記号とともに脚注が生成される.なお, +ページ内に複数の脚注がある場合,参照記号は {\LaTeX} を2回実行しないと正しく +ならないことに注意されたい. +({\LaTeX} ブック \cite{latex} の156ページ参照.) + +また場合によっては,脚注をつけた位置と脚注本体とを別の段に置く方がよいことも +ある.この場合には,\|\footnotemark| コマンドや \|\footnotetext| コマンドを +使って対処していただきたい. + +% }{ + +\subsection{参考文献の参照} + +本文中で参考文献を参照する場合には,参考文献番号が文中の単語 +として使われる場合と,そうでない参照とでは,使用する文字の大きさが異 +なる.前者は\|\Cite|により参照し,後者は\|\cite|により参照する.たとえば; +% +\begin{Quote} +文献 \|\Cite{total}| は \|\LaTeX\cite{latex}| の総合的な解説書である. +\end{Quote} +% +と書くと; +% +\begin{Quote} +文献\Cite{total}は\LaTeX\cite{latex}の総合的な解説書である. +\end{Quote} +% +が得られる. + +また,一つの \|\Cite| あるいは \|\cite| コマンドで三つ以上の文献を参照し,か +つそれらの参照番号が連続している場合,\Cite{article1,article2,article3}や +「文献\cite{latex,article4,article5,article6}」のように,自動的に先 +頭と末尾の文献番号が $\sim$ で結合される.なお,非常に多数の文献を参照し,そ +れら全てを \|\Cite| や \|\cite|で指定するのが面倒な場合は +% +\begin{Quote}\raggedright +\|\multiCite{|\<先頭文献のラベル\>\|}|\nobreak\hskip-2em\allowbreak + \hspace*{2em}\hbox{\|{|\<末尾文献のラベル\>\|}|}\\ +\|\multicite{|\<先頭文献のラベル\>\|}|\nobreak\hskip-2em\allowbreak + \hspace*{2em}\hbox{\|{|\<末尾文献のラベル\>\|}|} +\end{Quote} +% +を用いて,\multiCite{article1}{book3}や「文献 +\multicite{booklet1}{unpublished}」のような結果を得ることもできる. + +% }{ + +\subsection{参考文献リスト} + +参考文献リストには,原則として本文中で引用した文献のみを列挙する.順序は参照 +順あるいは第一著者の苗字のアルファベット順とする.文献リストは BiB{\TeX} +と \|ipsjunsrt.bst|(参照順)または \|ipsjsort.bst|(アルファベット順)を用 +いて作り,\|\bibliograhpystyle| と \|\bibliography| コマンドにより読み込むこ +とを原則とする\footnote{このガイドはファイルを一つにするために +{\TT thebibliography} 環境を用いているが,その中身はBiB{\TeX}で作成したもの +である.}.これらを用いれば,規定の体裁にあったものができるので,できるだけ +利用していただきたい.なおこのガイドの参考文献は,\|bibsample.bib| を文献ス +タイル \|ipsjunsort| で処理した結果であるので,両者を適宜参照されたい.また +製版用のファイル群には \|.bib| ファイルではなく \|.bbl| ファイルを必ず含 +めることに注意されたい. + +一方,何らかの理由で \|thebibliography| 環境で文献リストを「手作り」しなけれ +ばならない場合は,このガイドの参考文献リストを注意深く見て,そのスタイルにし +たがっていただきたい. + +% }{ + +\subsection{謝辞,付録} + +謝辞がある場合には,参考文献リストの直前に置き,\|acknowledgment|環境の中に +入れる.この環境の中身は投稿時には最後のページに出力される. + +付録がある場合には,参考文献リストの直後にコマンド \|\appendix| に引き続いて +書く.なお付録では,\|\section| コマンドが{\bf A.1},{\bf A.2}などの見出しを +生成する.また付録全体に見出しをつける場合には,\|\appendix[|\<見出し\>\|]| % +のように見出しをオプション引数として与える. + +% }{ + +\subsection{著者紹介} + +本文の最後(\|\end{document}| の直前)に,以下のように著者紹介を記述する. +% +\begin{quote} +\|\begin{biography}|\\ +\|\member{|\<第一著者名\>\|}|\\ +\mbox{}\quad\<第一著者の紹介\>\\ +\|\member{|\<第二著者名\>\|}|\\ +\mbox{}\quad\<第二著者の紹介\>\\ +\mbox{}\quad $\ldots\ldots\ldots$ \\ +\|\end{biography}| +\end{quote} +% +なお著者が学生会員あるいは非会員の場合は,正会員用の \|\member| の代わりにそ +れぞれ \|\stmember|,\|\nomember| を用いる. + +なお著者紹介は投稿時には出力されない. + +% }{ + +\subsection{ページ数の見積り} + +投稿用スタイルでは1ページが\(35\hbox{字}\times32\hbox{行}=1120\hbox{字}\), +また製版用では\(24\hbox{字}\times46\hbox{行}\times2\hbox{段}=2208\hbox{字}\) +である.したがって粗い見積りとして,製版時には投稿時の半分のページ数になると +考えることができる.たとえば,このガイドは投稿用では謝辞を除いて17ページ,製 +版用では9ページであるので,ほぼ見積った通りである. + +また投稿用のファイルを製版用にするのは簡単であるので,投稿時にあらかじめどの +ように製版されるかを試せば,もっと良い見積りが得られる. + +% }{ + +\section{おわりに} + +論文誌の {\LaTeX} 化は運用が始まってから日が浅いため,解決されていない問題点 +が少なからずあると思われる.これらを著者の方々の御協力を仰ぎつつ,少しでも使 +いやすくするための改良を加えていくつもりである.そこで,スタイル・ファイルに +関する要望や意見を,是非 +% +\begin{Quote} +\|texnicians@ipsj.or.jp| +\end{Quote} +% +までお寄せいただきたい.また技術的な質問も同じアドレスで受け付けるが,その他 +の一般的な質問については +% +\begin{Quote} +\|editt@ipsj.or.jp| +\end{Quote} +% +にお寄せいただきたい. + +\begin{acknowledgment} +論文誌の {\LaTeX}化に御協力いただいた三美印刷(株),SATO工房,ならびに試行 +のためのボランティアをお願いした著者の皆様に,謹んで感謝の意を表する. +\end{acknowledgment} + +% }{ + +\begin{thebibliography}{10} + +\bibitem{total} +伊藤和人: {\LaTeX} トータルガイド, 秀和システムトレーディング (1991). + +\bibitem{latex} +Lamport, L.: {\em A Document Preparation System {\LaTeX} User's Guide \& + Reference Manual\/}, Addison Wesley, Reading, Massachusetts (1986). +\newblock (Cooke, E., et al.訳:文書処理システム {\LaTeX},アスキー出版局 + (1990)). + +\bibitem{nodera} +野寺隆志: 楽々 {\LaTeX}, 共立出版 (1990). + +\bibitem{okumura} +奥村晴彦: {\LaTeX} 美文書作成入門, 技術評論社 (1991). + +\bibitem{article1} +桜井貴文: 直観主義論理と型理論, 情報処理, Vol.~30, No.~6, pp.\ 626--634 + (1989). + +\bibitem{article2} +野口健一郎, 大谷真: OSIの実現とその課題, 情報処理, Vol.~31, No.~9, pp.\ + 1235--1244 (1990). + +\bibitem{article3} +Itoh, S. and Goto, N.: An Adaptive Noiseless Coding for Sources with Big + Alphabet Size, {\em Trans. IEICE\/}, Vol.~E74, No.~9, pp.\ 2495--2503 + (1991). + +\bibitem{article4} +田中{正次}, 村松茂, 山下茂: 9段数7次陽的Runge-Kutta法の最適化について, + 情報処理学会論文誌, Vol.~33, No.~12, pp.\ 1512--1526 (1992). + +\bibitem{article5} +Abrahamson, K., Dadoun, N., Kirkpatrick, D.~G. and Przytycka, T.: A Simple + Parallel Tree Contraction Algorithm, {\em J. Algorithms\/}, Vol.~10, No.~2, + pp.\ 287--302 (1989). + +\bibitem{article6} +田中{正次}ほか: 9段数7次陽的Runge-Kutta法の次数条件式の解について, + 情報処理学会論文誌, Vol.~33, No.~12, pp.\ 1506--1511 (1992). + +\bibitem{book1} +Foley, J.~D. et al.: {\em Computer Graphics --- Principles and Practice\/}, + System Programming Series, Addison-Wesley, Reading, Massachusetts, 2nd + edition (1990). + +\bibitem{book2} +千葉則茂, 村岡一信: レイトレーシングCG入門, Information {\&} Computing, + Vol.~46, サイエンス社 (1990). + +\bibitem{book3} +Chang, C.~L. and Lee, R. C.~T.: {\em Symbolic Logic and Mechanical Theorem + Proving\/}, Academic Press, New York (1973). +\newblock (長尾真,辻井潤一訳: 計算機による定理の自動証明, 日本コンピュータ協会 + (1983)). + +\bibitem{booklet1} +新世代コンピュータ技術開発機構: 第五世代コンピュータプロジェクトの概要, + {FGCS'92}にて配布 (1992). + +\bibitem{inbook1} +Knuth, D.~E.: {\em Fundamental Algorithms\/}, Art of Computer Programming, + Vol.~1, Addison-Wesley, 2nd edition, chapter~2, pp.\ 371--381 (1973). + +\bibitem{incollection1} +Schwartz, A.~J.: Subdividing B{\'e}zier Curves and Surfaces, {\em Geometric + Modeling: Algorithms and New Trends\/} (Farin, G.~E.(ed.)), SIAM, + Philadelphia, pp.\ 55--66 (1987). + +\bibitem{inproceedings1} +Baraff, D.: Curved Surfaces and Coherence for Non-penetrating Rigid Body + Simulation, {\em SIGGRAPH '90 Proceedings\/} (Beach, R.~J.(ed.)), Dallas, + Texas, ACM, Addison-Wesley, pp.\ 19--28 (1990). + +\bibitem{manual1} +Adobe Systems Inc.: {\em PostScript Language Reference Manual\/}, Reading, + Massachusetts (1985). + +\bibitem{mastersthesis1} +山下義行: 文脈自由文法への否定の導入, 修士論文, 筑波大学大学院工学研究科 + (1989). + +\bibitem{misc1} +斉藤康己, 中島浩: {{\tt ipsjpapers.sty}} (1995). +\newblock (情報処理学会論文誌用スタイルファイル,論文著者に配布). + +\bibitem{phdthesis1} +Weihl, W.: {\em Specification and Implementation of Atomic Data Types\/}, PhD + Thesis, MIT, Boston (1984). + +\bibitem{proceedings1} +Institute for New Generation Computer Technology: {\em Proc. Intl. Conf. on + Fifth Generation Computer Systems\/}, Vol.~1 (1992). + +\bibitem{techreport1} +Aredon, I.: {\TeX} 独稽古, Seminar on Mathematical Sciences~13, Department of + Mathematics, Keio University, Yokohama (1989). + +\bibitem{unpublished} +情報処理学会論文誌編集委員会: {\LaTeX}による論文作成のガイド(第1版) (1995). +\newblock (論文著者に配布). + +\end{thebibliography} + +% }{ + +\appendix +\section{PostScriptのフォント}\label{app-psfont} + +\def\RBI{\it\langle RBI\rangle} +\def\BO{\it\langle BO\rangle} +\def\BDO{\it\langle BDO\rangle} +\def\BI{\it\langle BI\rangle} +\def\LD{\it\langle LD\rangle} + +PostScriptファイルの中では以下の標準的なフォントのみが使用できる. +% +\begin{Quote} +Ryumin Light-KL\\ +Gothic Medium BBB\\ +Jun 101\\ +Futo Min A101\\ +Futo Go B101\\ +Times-\(\RBI\)\\ +Hlevetica[-\(\BO\)]\\ +Courier[-\(BO\)]\\ +Helvetica-Narrow[-\(\BO\)]\\ +Symbols Set\\ +ITC AvantGarge Gohtic-\(\BDO\)\\ +Platino[-\(\BI\)]\\ +New Century-Schoolbok[-\(\BI\)]\\ +ITC Bookman[-\(\LD\)]\\ +ITC Zapf Chancery-Mediumitalic\\ +ITC Zapf Dingbats +\end{Quote} +{\def\!{$\,|\,$} +\begin{eqnarray*}[s] +\RBI&::=&\hbox{Roman\!Bold\!Italic\!BoldItalic}\\ +\BO&::=&\hbox{Bold\!Oblique\!BoldOblique}\\ +\BDO&::=&\hbox{Book\!Demi\!BookOblique\!}\\&&\hbox{DemiOblique}\\ +\BI&::=&\hbox{Bold\!Italic\!BoldItalic}\\ +\LD&::=&\hbox{\thinmuskip.7\thinmuskip Light\!Demi\!LightItalic\!DemiItalic} +\end{eqnarray*}} + +% }{ + +\section{研究会論文誌用コマンド}\label{sec:app-sig} + +各研究会論文誌(トランザクション)には各々に固有のサブタイトル,略称,通番が +ある.製版用原稿では,以下のコマンドを\|\begin{document}|の前に置くことによ +り,これらの情報を与える. +% +\begin{itemize}\item[] +\|\transaction{|\<略称\>\|}{|\<号数\>\|}{|\<通番\>\|}| +\end{itemize} +% +なお\<略称\>は以下のいずれかであり,\<号数\>と\<通番\>は学会あるいは研究会論 +文誌編集委員会の指示に基づいて与える. +% +\begin{itemize}%{ +\item +\|PRO|(プログラミング) +\item +\|TOM|(数理モデル化と応用) +\item +\|TOD|(データベース) +\item +\|HPS|(ハイパフォーマンスコンピューティングシステム) +\item +\|CVIM|(コンピュータビジョンとイメージメディア) +\end{itemize}%} +% +また上記の\<号数\>は発行月とは連動していないので,学会あるいは編集委員会の指 +示に基づき発行月を; +% +\begin{itemize}\item[] +\|\setcounter{|{\bf 月数}\|}{|\<発行月\>\|}| +\end{itemize} +% +によって指定する. + +この他,以下の各節で示すように,いくつかの論文誌に固有の機能を実現するための +コマンドなどが用意されている. + +% }{ + +\subsection{「プログラミング」固有機能} + +「論文誌:プログラミング」には論文以外に,プログラミング研究会での研究発表の +内容梗概が含まれている.この内容梗概は,\|\documentstyle|または +\|\documentclass|のオプションとして\|abstract|を指定した上で, +\ref{sec:config}節の\|\maketitle|までの内容からなるファイル(すなわち本文が +ないファイル)から生成する.なお\|\|{\bf 受付}や\|\|{\bf 採録}は不要であるが, +代わりに発表年月日を; +% +\begin{itemize}\item[] +\|\|{\bf 発表}\|{|\<年\>\|}{|\<月\>\|}{|\<日\>\|}| +\end{itemize} +% +により指定する. + +% }{ + +\subsection{「数理モデル化と応用」固有機能} + +「論文誌:数理モデル化と応用」の論文では,受付や採録の日付以外に再受付日付を +記載するように指示されることがある.その場合には; +% +\begin{itemize}\item[] +\|\|{\bf 再受付}\|{|\<年\>\|}{|\<月\>\|}{|\<日\>\|}| +\end{itemize} +% +により指定する. + +% }{ + +\subsection{「データベース」固有機能} + +「論文誌:データベース」の論文の担当編集委員の氏名は; +% +\begin{itemize}\item[] +\|\edInCharge{|\<氏名\>\|}| +\end{itemize} +% +により指定する. + +% }{ + +\begin{biography} +\member{中島 浩} +昭和31年生. +昭和56年京都大学大学院工学研究科情報工学専攻修士課程修了. +同年三菱電機(株)入社. +推論マシンの研究開発に従事. +平成4年より京都大学工学部助教授. +平成9年より豊橋技術科学大学教授. +並列計算機のアーキテクチャ,プログラミング言語の実装方式に関する研究に従事. +工学博士.昭和63年元岡賞,平成5年坂井記念特別賞受賞.IEEE-CS, ACM, ALP, TUG +各会員. +% +\member{斉藤 康己} +昭和28年生. +昭和53年英国エセックス大学よりM.Sc.(AI研究). +昭和54年東京大学大学院工学系研究科情報工学専攻修士課程修了. +同年電電公社入社. +昭和59年から60年にかけて仏国INRIA客員研究員. +現在NTT基礎研究所主幹研究員. +人工知能(Symbol Grounding Problem),計算機ソフトウェア(\TeX の日本語化), +認知科学(理解プロセスの解明)などの研究に従事. +訳書に『メタマジック・ゲーム』(D. ホフスタッター著, 共訳, 白揚社)など. +人工知能学会,ソフトウェア科学会,日本認知科学会,Cognitive Science Society, +TUG各会員. +\end{biography} +\end{document}