Mercurial > hg > Papers > 2008 > gongo-sigos
changeset 0:b6cb037260ce
Initial revision
author | gongo |
---|---|
date | Mon, 24 Mar 2008 01:30:34 +0900 |
parents | |
children | 057cef56defb 9216a2b217e6 |
files | Makefile bib.tex cell.tex figure/cbe-spe.bb figure/cbe-spe.graffle figure/cbe-spe.pdf figure/cbe.bb figure/cbe.graffle figure/cbe.pdf ipsj-sample/README ipsj-sample/bibsample.bib ipsj-sample/desample.tex ipsj-sample/dsample.tex ipsj-sample/ebibsample.bib ipsj-sample/esample.pdf ipsj-sample/esample.tex ipsj-sample/ipsj-sty-unix.tar ipsj-sample/sample.pdf ipsj-sample/sample.tex ipsjcommon.sty ipsjdrafts.sty ipsjpapers.cls ipsjpapers.sty ipsjsort-e.bst ipsjsort.bst ipsjunsrt-e.bst ipsjunsrt.bst sigos.bib sigos.tex |
diffstat | 29 files changed, 10614 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Makefile Mon Mar 24 01:30:34 2008 +0900 @@ -0,0 +1,79 @@ +TARGET = sigos + +LATEX = platex-utf8 +BIBTEX = jbibtex +DVIPS = dvips +DVIPDFM = dvipdfmx +RM = rm -f + +# Option definitions +DVIPDFMOPT = +DVIPSOPT = -D 720 -mode esphi -O 0mm,0mm -N0 + +# Suffixes definitions +.SUFFIXES: .tex .dvi + +# Recipes +all: pdf# $(TARGET).ps + open $(TARGET).pdf +dvi: + @echo "----------- make dvi file ($(TARGET).dvi) ----------" + $(LATEX) $(TARGET) + $(BIBTEX) $(TARGET) + $(LATEX) $(TARGET) + $(LATEX) $(TARGET) +pdf: dvi + $(DVIPDFM) $(DVIPDFMOPT) $(TARGET) +ps: dvi + $(DVIPS) $(DVIPSOPT) $(TARGET) + +clean: + $(RM) *~ \#* + @if [ -f $(TARGET).aux ];\ + then $(RM) $(TARGET).aux;\ + fi + @if [ -f $(TARGET).log ];\ + then $(RM) $(TARGET).log;\ + fi + @if [ -f $(TARGET).toc ];\ + then $(RM) $(TARGET).toc;\ + fi + @if [ -f $(TARGET).lof ];\ + then $(RM) $(TARGET).lof;\ + fi + @if [ -f $(TARGET).lot ];\ + then $(RM) $(TARGET).lot;\ + fi + @if [ -f $(TARGET).big ];\ + then $(RM) $(TARGET).big;\ + fi + @if [ -f $(TARGET).bbl ];\ + then $(RM) $(TARGET).bbl;\ + fi + @if [ -f $(TARGET).ilg ];\ + then $(RM) $(TARGET).ilg;\ + fi + @if [ -f $(TARGET).idx ];\ + then $(RM) $(TARGET).idx;\ + fi + @if [ -f $(TARGET).ind ];\ + then $(RM) $(TARGET).ind;\ + fi + @if [ -f $(TARGET).dvi ];\ + then $(RM) $(TARGET).dvi;\ + fi + @if [ -f $(TARGET).ps ];\ + then $(RM) $(TARGET).ps;\ + fi + @if [ -f $(TARGET).pdf ];\ + then $(RM) $(TARGET).pdf;\ + fi + @if [ -f $(TARGET).out ];\ + then $(RM) $(TARGET).out;\ + fi + @if [ -f $(TARGET).bbl ];\ + then $(RM) $(TARGET).bbl;\ + fi + @if [ -f $(TARGET).blg ];\ + then $(RM) $(TARGET).blg;\ + fi
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/bib.tex Mon Mar 24 01:30:34 2008 +0900 @@ -0,0 +1,2 @@ +\bibliographystyle{ipsjunsrt} +\bibliography{sigos}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/cell.tex Mon Mar 24 01:30:34 2008 +0900 @@ -0,0 +1,36 @@ +\section{Cell} +Cell Broadband Engine \cite{cell} は、SCEI と IBM によって開発された +CPU である。2 thread の PPE (PowerPC Processor Element) と、 +8 個の SPE (Synergetic Processor Element) を持ち、 +EIB と呼ばれる高速リングバスで構成されている。 +本研究で用いた PS3Linux (Fedora 8) では、 +6 個の SPE を使うことができる (\figref{fig-cbe}) 。 + +\begin{figure}[tb] + \begin{center} + \includegraphics[scale=0.41]{figure/cbe.pdf} + \caption{Cell Architecture} + %\ecaption{Cell Broadband Engine} + \label{fig-cbe} + \end{center} +\end{figure} + +各 SPE は 256KB のローカルメモリである LS (Local Store) を持ち、 +バスに負担をかけることなく並列に計算を進めることが出来る。 +SPE からメインメモリへは、直接アクセスすることは出来ず、 +SPE を構成する一つである MFC (Memory Flow Controller) へ、チャネルを介して +DMA (Direct Memory Access) 命令を送ることで行われる (\figref{fig-cbe-spe}) 。 + +\begin{figure}[tb] + \begin{center} + \includegraphics[scale=0.6]{figure/cbe-spe.pdf} + \caption{Synergetic Processor Element} + %\ecaption{Synergetic Processor Element} + \label{fig-cbe-spe} + \end{center} +\end{figure} + + +SPE はグラフィックスに適した、4 つの固定小数点、浮動小数点を +同時に演算する命令などを持ち、PPE に比べて高速な演算が可能である。 +そのため、ほとんどの演算を SPE 上で行わせることが推奨されている。
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/figure/cbe-spe.bb Mon Mar 24 01:30:34 2008 +0900 @@ -0,0 +1,5 @@ +%%Title: ./cbe-spe.pdf +%%Creator: ebb Version 0.5.2 (+ArtBox) +%%BoundingBox: 0 0 271 359 +%%CreationDate: Mon Mar 24 01:57:05 2008 +
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/figure/cbe.bb Mon Mar 24 01:30:34 2008 +0900 @@ -0,0 +1,5 @@ +%%Title: ./cbe.pdf +%%Creator: ebb Version 0.5.2 (+ArtBox) +%%BoundingBox: 0 0 485 264 +%%CreationDate: Sun Mar 23 17:15:49 2008 +
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/ipsj-sample/README Mon Mar 24 01:30:34 2008 +0900 @@ -0,0 +1,28 @@ +This file package contains the following files for LaTeX publishing of +Trans. IPSJ. + +ipsjpapers.cls class file to invoke ipsjpapers.sty (for LaTeX2e native) +ipsjpapers.sty style for final version to make up (ver2.12) +ipsjdrafts.sty style for drafts to submit (ver2.12) +ipsjcommon.sty auxiliary style for final and draft versions (ver2.12) +ipsjsort.bst BibTeX style (sorted, for Japanese) +ipsjunsrt.bst BibTeX style (unsorted, for Japanese) +ipsjsort-e.bst BibTeX style (sorted, for Non-Japanese) +ipsjunsrt-e.bst BibTeX style (unsorted, for Non-Japanese) +sample.tex source of the guide (for final, Japanese) +dsample.tex source of the guide (for draft, Japanese) +esample.tex source of the guide (for final, English) +desample.tex source of the guide (for draft, English) +sample.pdf pdf resulting from sample.tex +esample.pdf pdf resulting from esample.tex +bibsample.bib sample of bibliographic data (Japanese) +ebibsample.bib sample of bibliographic data (English) + +COPYRIGHT NOTICE: + Althoght the style, class and related files included in this + distribution listed above are NOT the part of standard LaTeX + contribution, they can be redistributed and/or modified under the + terms of the LaTeX Project Public License Distributed, in which + those files are referred to as The Program, from CTAN archives in + directory macros/latex/base/lppl.txt; either version 1 of the + License, or any later version.
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/ipsj-sample/bibsample.bib Mon Mar 24 01:30:34 2008 +0900 @@ -0,0 +1,198 @@ +@book{total, + author = "$B0KF#(B $BOB?M(B", + yomi = "Kazuto Itoh", + title = "{\LaTeX} $B%H!<%?%k%,%$%I(B", + publisher = "$B=(OB%7%9%F%`%H%l!<%G%#%s%0(B", + year = 1991} +@book{latex, + author = "Leslie Lamport", + title = "A Document Preparation System {\LaTeX} User's Guide + \& Reference Manual", + publisher = "Addison Wesley", + address = "Reading, Massachusetts", + year = 1986, + note = "$B!J(BCooke, E., et al.$BLu!'J8=q=hM}%7%9%F%`(B {\LaTeX}$B!$(B" # + "$B%"%9%-!<=PHG6I(B (1990)$B!K(B"} +@book{nodera, + author = "$BLn;{(B $BN4;V(B", + yomi = "Takashi Nodera", + title = "$B3Z!9(B {\LaTeX}", + publisher = "$B6&N)=PHG(B", + year = 1990} +@book{okumura, + author = "$B1|B<(B $B@2I'(B", + yomi = "Haruhiko Okudera", + title = "{\LaTeX} $BH~J8=q:n@.F~Lg(B", + publisher = "$B5;=QI>O@<R(B", + year = 1991} +@article{article1, + author = "$B:y0f(B $B5.J8(B", + yomi = "Sakurai, Takafumi", + title = "$BD>4Q<g5AO@M}$H7?M}O@(B", + journal = "$B>pJs=hM}(B", + volume = 30, + number = 6, + pages = "626--634", + year = 1989} +@article{article2, + author = "$BLn8}(B $B7r0lO:(B and $BBgC+(B $B??(B", + yomi = "Noguchi, K and Ohtani, M", + title = "OSI$B$N<B8=$H$=$N2]Bj(B", + journal = "$B>pJs=hM}(B", + volume = 31, + number = 9, + pages = "1235-1244", + year = 1990} +@article{article3, + author = "Ssss Itoh and Nnnn Goto", + title = "An Adaptive Noiseless Coding for Sources with Big + Alphabet Size", + journal = "Trans. IEICE", + volume = "E74", + number = 9, + pages = "2495--2503", + year = 1991, + month = sep} +@article{article4, + author = "$BEDCf(B {$B@5<!(B} and $BB<>>(B $BLP(B and $B;32<(B $BLP(B", + yomi = "Tanaka, S and Muramatsu, S and Yamashita, S", + title = "9$BCJ?t(B7$B<!M[E*(BRunge-Kutta$BK!$N:GE,2=$K$D$$$F(B", + journal = "$B>pJs=hM}3X2qO@J8;o(B", + volume = 33, + number = 12, + pages = "1512--1526", + year = 1992} +@article{article5, + author = "K. Abrahamson and N. Dadoun and " # + "D. G. Kirkpatrick and T. Przytycka", + title = "A Simple Parallel Tree Contraction Algorithm", + journal = "J. Algorithms", + volume = 10, + number = 2, + pages = "287--302", + year = 1989} +@article{article6, + author = "$BEDCf(B {$B@5<!(B} and others", + title = "9$BCJ?t(B7$B<!M[E*(BRunge-Kutta$BK!$N<!?t>r7o<0$N2r$K$D$$$F(B", + journal = "$B>pJs=hM}3X2qO@J8;o(B", + volume = 33, + number = 12, + pages = "1506--1511", + year = 1992} + +@book{book1, + author = "J. D. Foley and others", + title = "Computer Graphics --- Principles and Practice", + series = "System Programming Series", + publisher = "Addison-Wesley", + address = "Reading, Massachusetts", + edition = "2nd", + year = 1990} +@book{book2, + author = "$B@iMU(B $BB'LP(B and $BB<2,(B $B0l?.(B", + yomi = "Chiba, N. and Muraoka, K.", + title = "$B%l%$%H%l!<%7%s%0(BCG$BF~Lg(B", + series = "Information {\&} Computing", + volume = 46, + publisher = "$B%5%$%(%s%9<R(B", + year = 1990} +@book{book3, + author = "Chang, C. L. and Lee, R. C. T.", + title = "Symbolic Logic and Mechanical Theorem Proving", + publisher = "Academic Press", + address = "New York", + year = 1973, + note = "$B!JD9Hx??!$DT0f=a0lLu(B: " # + "$B7W;;5!$K$h$kDjM}$N<+F0>ZL@(B, " # + "$BF|K\%3%s%T%e!<%?6(2q(B (1983)$B!K(B"} +@booklet{booklet1, + author = "$B?7@$Be%3%s%T%e!<%?5;=Q3+H/5!9=(B", + title = "$BBh8^@$Be%3%s%T%e!<%?%W%m%8%'%/%H$N35MW(B", + howpublished = "{FGCS'92}$B$K$FG[I[(B", + year = 1992} + +@inbook{inbook1, + author = "Knuth, D. E.", + title = "Fundamental Algorithms", + series = "Art of Computer Programming", + volume = 1, + chapter = 2, + pages = "371--381", + publisher = "Addison-Wesley", + address = "Reading, Massachusetts", + edition = "2nd", + year = 1973} + +@incollection{incollection1, + author = "Schwartz, Aaaa Jjjj", + title = "Subdividing B{\'e}zier Curves and Surfaces", + booktitle = "Geometric Modeling: Algorithms and New Trends", + editor = "Farin, G. E.", + publisher = "SIAM", + address = "Philadelphia", + pages = "55--66", + year = 1987} + +@inproceedings{inproceedings1, + author = "Baraff, D", + title = "Curved Surfaces and Coherence for Non-penetrating + Rigid Body Simulation", + booktitle = "SIGGRAPH '90 Proceedings", + pages = "19--28", + editor = "Beach, R. J.", + address = "Dallas, Texas", + organization = "ACM", + publisher = "Addison-Wesley", + year = 1990} + +@manual{manual1, + organization = "Adobe Systems Inc.", + title = "PostScript Language Reference Manual", + publisher = "Addison-Wesley", + address = "Reading, Massachusetts", + year = 1985} + +@mastersthesis{mastersthesis1, + author = "$B;32<(B $B5A9T(B", + yomi = "Yamashita, Y", + title = "$BJ8L.<+M3J8K!$X$NH]Dj$NF3F~(B", + school = "$BC^GHBg3XBg3X1!9)3X8&5f2J(B", + year = 1989} + + +@misc{misc1, + author = "$B@FF#(B $B9/8J(B and $BCfEg(B $B9@(B", + title = "{{\tt ipsjpapers.sty}}", + note = "$B!J>pJs=hM}3X2qO@J8;oMQ%9%?%$%k%U%!%$%k!$(B" # + "$BO@J8Cx<T$KG[I[!K(B", + year = 1995} + +@phdthesis{phdthesis1, + author = "Weihl, W.", + title = "Specification and Implementation of + Atomic Data Types", + school = "MIT", + address = "Boston", + year = 1984} + +@proceedings{proceedings1, + title = "Proc. Intl. Conf. on Fifth Generation Computer + Systems", + organization = "Institute for New Generation Computer Technology", + volume = 1, + year = 1992} + +@techreport{techreport1, + author = "Ihsakat Aredon", + title = "{\TeX} $BFH7N8E(B", + type = "Seminar on Mathematical Sciences", + number = 13, + institution = "Department of Mathematics, Keio University", + address = "Yokohama", + year = 1989} + +@unpublished{unpublished, + author = "$B>pJs=hM}3X2qO@J8;oJT=80Q0w2q(B", + title = "{\LaTeX}$B$K$h$kO@J8:n@.$N%,%$%I!JBh(B1$BHG!K(B", + note = "$B!JO@J8Cx<T$KG[I[!K(B", + year = 1995}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/ipsj-sample/desample.tex Mon Mar 24 01:30:34 2008 +0900 @@ -0,0 +1,9 @@ +% In order to make the amount of distributed files samll, this file includes +% esample.tex in a tricky way to print it in the draft style. So, don't +% follow this sample, but add `draft' option of \documentclass in sample.tex +% to have the real sample file of draft versions. +% +\documentclass[english,draft]{ipsjpapers} +\makeatletter +\def\documentclass[#1]#2{} +\input{esample}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/ipsj-sample/dsample.tex Mon Mar 24 01:30:34 2008 +0900 @@ -0,0 +1,8 @@ +% $B$3$N%U%!%$%k$OG[I[$9$k%U%!%$%k$NNL$r8:$i$9$?$a$K!$(Bsample.tex $B$r%H%j%C%-!<(B +% $B$JJ}K!$GEj9FMQ$G=PNO$9$k!#<B:]$K$O(B sample.tex $B$N(B \documentclass $B$K(B draft +% $B%*%W%7%g%s$r$D$1$?$b$N$,@5$7$$%5%s%W%k$G$"$k!#(B +% +\documentclass[draft]{ipsjpapers} +\makeatletter +\def\documentclass#1{} +\input{sample}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/ipsj-sample/ebibsample.bib Mon Mar 24 01:30:34 2008 +0900 @@ -0,0 +1,139 @@ +@book{companion, + author = "Michael Goossens and Frank Mittelbach and + Alexander Samarin", + title = "The LaTeX Companion", + publisher = "Addison Wesley", + address = "Reading, Massachusetts", + year = 1993} +@book{latex, + author = "Leslie Lamport", + title = "A Document Preparation System {\LaTeX} User's Guide + \& Reference Manual", + publisher = "Addison Wesley", + address = "Reading, Massachusetts", + year = 1986} +@article{article1, + author = "Ssss Itoh and Nnnn Goto", + title = "An Adaptive Noiseless Coding for Sources with Big + Alphabet Size", + journal = "Trans. IEICE", + volume = "E74", + number = 9, + pages = "2495--2503", + year = 1991, + month = sep} +@article{article2, + author = "K. Abrahamson and N. Dadoun and " # + "D. G. Kirkpatrick and T. Przytycka", + title = "A Simple Parallel Tree Contraction Algorithm", + journal = "J. Algorithms", + volume = 10, + number = 2, + pages = "287--302", + year = 1989} + +@book{book1, + author = "J. D. Foley and others", + title = "Computer Graphics --- Principles and Practice", + series = "System Programming Series", + publisher = "Addison-Wesley", + address = "Reading, Massachusetts", + edition = "2nd", + year = 1990} +@book{book2, + author = "Chang, C. L. and Lee, R. C. T.", + title = "Symbolic Logic and Mechanical Theorem Proving", + publisher = "Academic Press", + address = "New York", + year = 1973} + +@booklet{booklet1, + author = "{Institute for New Generation Computer Technology}", + title = "Overview of the Fifth Generation Computer Project", + howpublished = "distributed in {FGCS'92}", + year = 1992, + note = "(in Japanese)"} + +@inbook{inbook1, + author = "Knuth, D. E.", + title = "Fundamental Algorithms", + series = "Art of Computer Programming", + volume = 1, + chapter = 2, + pages = "371--381", + publisher = "Addison-Wesley", + address = "Reading, Massachusetts", + edition = "2nd", + year = 1973} + +@incollection{incollection1, + author = "Schwartz, Aaaa Jjjj", + title = "Subdividing B{\'e}zier Curves and Surfaces", + booktitle = "Geometric Modeling: Algorithms and New Trends", + editor = "Farin, G. E.", + publisher = "SIAM", + address = "Philadelphia", + pages = "55--66", + year = 1987} + +@inproceedings{inproceedings1, + author = "Baraff, D", + title = "Curved Surfaces and Coherence for Non-penetrating + Rigid Body Simulation", + booktitle = "SIGGRAPH '90 Proceedings", + pages = "19--28", + editor = "Beach, R. J.", + address = "Dallas, Texas", + organization = "ACM", + publisher = "Addison-Wesley", + year = 1990} + +@manual{manual1, + organization = "Adobe Systems Inc.", + title = "PostScript Language Reference Manual", + publisher = "Addison-Wesley", + address = "Reading, Massachusetts", + year = 1985} + +@mastersthesis{mastersthesis1, + author = "Kazuhiro Ohno", + title = "Efficient Message Communication of Concurrent Logic + Programming Language KL1 Based on Static Analysis", + school = "Dept. Information Science, Kyoto University", + year = 1995} + +@misc{misc1, + author = "Yasuki Saito and Hiroshi Nakashima", + title = "{{\tt ipsjpapers.sty}}", + note = "(Style file for Trans. IPSJ distributed to authors.)", + year = 1995} + +@phdthesis{phdthesis1, + author = "Weihl, W.", + title = "Specification and Implementation of + Atomic Data Types", + school = "MIT", + address = "Boston", + year = 1984} + +@proceedings{proceedings1, + title = "Proc. Intl. Conf. on Fifth Generation Computer + Systems", + organization = "Institute for New Generation Computer Technology", + volume = 1, + year = 1992} + +@techreport{WarD:WAM-1, + author = "David H. D. Warren", + title = "An Abstract {Prolog} Instruction Set", + type = "Technical Report", + number = 309, + institution = "Artificial Intelligence Center, SRI International", + year = 1983, + month = oct} + +@unpublished{unpublished, + author = "{Editorial Board of Trans. IPSJ}", + title = "How to Typeset Your Papers in {\LaTeX} (Version 1)", + note = "(distributed to authors)", + year = 1995}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/ipsj-sample/esample.tex Mon Mar 24 01:30:34 2008 +0900 @@ -0,0 +1,1011 @@ +\documentclass[english]{ipsjpapers} +% Set volume, number, etc. +\setcounter{volume}{48} +\setcounter{number}{5} +\setcounter{volpageoffset}{1234} +\received{2006}{11}{28} +\accepted{2007}{2}{4} + +% User defined macros +\makeatletter +\let\@ARRAY\@array \def\@array{\def\<{\inhibitglue}\@ARRAY} +\def\<{\begingroup\(\langle\)\it} +\def\>{\/\(\rangle\)\endgroup} +\def\|{\verb|} +\def\cs#1{{\tt\string#1}} +\def\Underline{\setbox0\hbox\bgroup\let\\\endUnderline} +\def\endUnderline{\vphantom{y}\egroup\underline{\box0}\\} +\def\LATEx{\iLATEX{\normalsize\bf A}} +\def\LATex{\iLATEX{\small\bf A}} +\def\LaTeX{\leavevmode\smash{\iLATEX{\sc a}}} +\def\iLATEX#1{L\kern-.36em\raise.3ex\hbox{#1}\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\LDOTS{$\mathinner{\ldotp\ldotp\ldotp}$} + +%\checklines % Do it to check that baselines are fixed. +\begin{document}%{ +% Title +\title[How to Typeset Your Papers in {\protect\LaTeX}]% + {How to Typeset Your Papers in {\protect\LATEx} (Version 6)} +% Definition of Affiliation Labels +\affilabel{KU}{Kyoto University} +\paffilabel{Princeton}{Institute for Advanced Study, Princeton (just joke)} +\affilabel{NTT}{NTT Basic Research Laboratories} +% Author Names +\author{Hiroshi Nakashima\affiref{KU}\affiref{Princeton}\member{8104129}\and + Yasuki Saito\affiref{NTT}\member{8003547}} + +% Contact Address (only for submission, ignored in final version) +\contact{Hiroshi Nakashima\\ + Academic Center for Computing and Media Studies, Kyoto University\\ + Yoshida Honmachi, Sakyo-Ku, Kyoto, 606--8501\\ + phone: (075)753--7457\qquad facsimile: (075)753--7450\\ + email: h.nakashima@media.kyoto-u.ac.jp} + +% Absract +\begin{abstract} +This pamphlet is a guide to producing 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 {\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{abstract} + +% Output title, etc. +\maketitle + +%}{ + +% Main text starts here. +\section{Introduction} +\footnotetext[1]{The real author is the Editorial Board of the Trans. IPSJ.} + +The Information Processing Society of Japan now employs {\LaTeX} to make up +the Journal\slash Transactions for quick and low-cost publishing. This +means that your {\LaTeX} source file is basically used as the source of the +final printing process. Therefore, your cooperation is essential for the +publishing of the Journal\slash Transactions inheriting its traditional and +easy-to-read style. + +This make-up system, on the other hand, should be also convenient for you, +because it will greatly reduce troubles on proofreading by eliminating +printer's errors inevitable in conventional type-printing systems. +You can easily produce the final version of your paper conforming to the +traditional style using special style files and standard {\LaTeX} commands. +A style file for submission is also available and you can easily switch the +style from submission to final with relatively few changes. +Moreover, the draft +produced by this submission style are much more readable for both you and +referees than those following conventional submission rules. + +Although almost everything for final make-up can be done by using standard +{\LaTeX} commands, there are a few additional and essential commands. Also +there are special rules that are not checked by the style files. Therefore, +you are requested {\em to read this guide carefully and to follow it +rigidly} in order to make all the people involved in the publishing happy! + +%}{ + +\section{Flow from Submission to Publishing} +\label{sec:Enum}\label{sec:enum} + +The process from submission of a paper to publishing the Journal\slash +Transactions featuring it is as follows\footnote[2]{% +% +The following explanation is based on the process of Journal. Since each +transactions may have its own process, please inquire its detail from each +Editorial Board.}. +% +\begin{Enumerate}%{ +\item {\bf Obtaining Style Files}\\ +Access the WEB site of IPSJ \|http://www.|\allowbreak\|ipsj.or.jp/| to +download author's kit including style files. The kit contains the following +files. +% +\begin{enumerate}%{ +\item{\tt ipsjpapers.sty}\mbox{}\\style for final version to make up +\item{\tt ipsjpapers.cls}\mbox{}\\{\LATEXe} style for final version +\item{\tt ipsjdrafts.sty}\mbox{}\\style for drafts to submit +\item{\tt ipsjcommon.sty}\mbox{}\\auxiliary style for final and draft versions +\item{\tt ipsjsort-e.bst}\mbox{}\\Bib{\TeX} style (sorted)% +\footnote[3]{% +The kit also contains \texttt{ipsjsort.bst} and +\texttt{ipsjunsrt.}\allowbreak\texttt{bst} which +are the counterparts of ``\texttt{-e}'' versions and require a Japanese +\LaTeX{} environment.} +\item{\tt ipsjunsrt-e.bst}\mbox{}\\Bib{\TeX} style (unsorted)% +\footnotemark[3] +\item{\tt esample.tex}\mbox{}\\source of this guide (for final) +\item{\tt desample.tex}\mbox{}\\source of this guide (for draft) +\item{\tt sample.tex}\mbox{}\\Japanese version source of this guide (for final) +\item{\tt dsample.tex}\mbox{}\\Japanese version source of this guide +(for draft) +\item{\tt ebibsample.bib}\mbox{}\\sample of bibliographic data (English) +\item{\tt bibsample.bib}\mbox{}\\sample of bibliographic data (Japanese) +\end{enumerate}%} +% +The kit can be unpacked and read by most of platforms, including UNIX +workstations, Windows (DOS) and Macintosh machines. + +\item {\bf Submitting Draft}\\ +Prepare the {\LaTeX} source of your draft with the \|draft| option as per +this guide, process it using {\LaTeX} and produce a PDF file. Since +the style for submission automatically produces an output appropriate for +{\em blind review}, your source file may have commands to give +information which shows who you are and thus cannot appear in the draft. +That is, even if you specify the names and affiliations of authors, their +biographies, and/or acknowledgments to the people and/or organizations +related to you, these items will not appear in your draft version if you use +appropriate commands for them. +Then access the web site +\begin{itemize}\item[]\tt +http://www.ipsj.or.jp/08editt/\\\phantom{http://}journal/submit/ +\end{itemize} +to register +yourself and to obtain your own URL to submit the PDF file. + +\item {\bf Making Final Version}\\ +After you receive the notification of acceptance, revise your paper +in accordance with +the comments from referees, and add required omissions from +the draft, such as biography, if any. The layout of figures and tables +should be fixed. After that, {\em check your paper again and again to +completely remove description errors}. + +\item {\bf Sending Final Version}\\ +Send {\em both {\LaTeX} file package and the hard copy} to the IPSJ\@. The +standard contents of the file package are \|.tex| and \|.bbl|. If you +include PostScript files and/or special style files, add them into the +package. Note that {\em you must not split your source into multiple +\|.tex| files}, because it is hard for printers to access multiple files +when they modify your source. Also carefully make sure that the package +contains all necessary files, especially special style files. + +The detail of the file transfer, including its destination and packaging +method, will be instructed to you by the IPSJ secretariat. + +\item {\bf Proofreading}\\ +The IPSJ may change terms in your paper as per its standard, and the printing +house may modify your source to make it fit the standard printing style. Even +if they make no changes, the result printed at the printing house may be +different from what you printed because of differences of {\LaTeX} +execution environment. Therefore, the galley proofs of your paper will be +sent to you to check if those modification and/or differences are +acceptable. If not, correct errors with red ink. Note that {\em this +proofreading is not for the correction of your errors} which should have been +corrected before sending the final version. + +\item {\bf Printing and Publishing}\\ +Your paper is printed, after the correction of the errors you pointed out (if +any), and is published as part of the Journal\slash Transactions. +\end{Enumerate}%} + +%}{ + +\section{{\protect\LATex} Environment}\label{sec:item} + +Although a style file, \|ipsjcommon.sty|, has some symbols in Japanese +character set in its last part, you can use the standard (i.e., +non-Japanese) {\LaTeX} for your English papers because the sytle +autmatically recognizes your environment and lets your {\LaTeX} stop to read +the part it cannot cope with. One exeception is, however, that you have to use +one of non-Japanese versions of Bib\TeX{} styles \|ipsjsort-e.bst| or +\|ipsjunsrt-e.bst|. + +The style files are confirmed to work with the following {\LATEXe} +versions. +% +\begin{itemize}%{ +\item[] +{\TeX} 3.141592${}+{}$ {\LaTeXe} 2003/12/01 +\end{itemize}%} +% +You may use the styles in either native-mode or {\LaTeX} 2.09 compatible +mode. Although we expect they will work with older versions, it is strongly +recommended to use the version shown above or later one. + +If you still love {\LaTeX} 2.09, do not be afraid to use it because the +sytles are backward compatible. + +%}{ + +\section{How to Use Style Files} +\subsection{General Advice} + +The Journal\slash Transactions, as opposed to conference proceedings, have a +traditional and {\em stiff} style. This makes the style files also {\em +stiff} and strongly restricts the customizability that is one of the useful +features of {\LaTeX}. For example, you must not change {\em style +parameters}, such as \|\texheight|. It is not easy to show which +customizations are allowed, but the standard ``Don't tamper with it unless +you are confident'' should work well. + +Note that if you do something you should not, {\em you may not have error +messages but simply have ugly results}. + +%}{ + +\subsection{Configuration of Paper}\label{sec:config} + +The source file must have the following format. Underlined parts can be +omitted from draft versions. Note that a few additional commands shown in +\ref{sec:app-sig} of the Appendix are availabel for a paper included in the +Transactions. +% +\begin{list}{}{\leftmargin.5\leftmargin}\item[]\def\!{\kern-.16667em}\small*\it +\|\documentclass[english]{ipsjpapers}|\footnote{% +Replace it with {\cs\documentstyle} and, if necessary, add auxiliary style +name(s) as its optional argument, when you use {\LATExe} in 2.09-compatible +mode or {\LaTeX} 2.09.} +or\\ +\|\documentclass[english,draft]{ipsjpapers}|\rlap{\footnotemark[1]}\\ +Specify other option styles if necessary.\\ +Specify auxiliary styles by \|\usepackage|.\\ +\Underline{\|\setcounter{volume}{|\<volume\>\|}|}\\ +\Underline{\|\setcounter{number}{|\<number\>\|}|}\\ +\Underline{\|\setcounter{volpageoffset}{|\<first-page\>\|}|}\\ +\Underline{\|\received{|\<year\>\|}{|\<month\>\|}{|\<day\>\|}|}\\ +\Underline{\|\accepted{|\<year\>\|}{|\<month\>\|}{|\<day\>\|}|}\\ +Define your own macros if necessary.\\ +\|\begin{document}|\\ +\|\title{|\<title\>\|}|\\ +\Underline{\|\affilabel{|\<affiliation-label\>\|}{|\<affiliation\>\|}|}\\ +\Underline{\mbox{}\qquad\qquad\ldots\ldots\ldots}\\ +Declare current affiliation by \|\paffilabel| if necessary.\\ +\Underline{\|\author{|\<1st-author\>\|\and|\<2nd-author\>\|\and|\,\LDOTS\|}|}\\ +\|\begin{abstract}|\\ +\mbox{}\quad\<abstract\>\\ +\|\end{abstract}|\\ +\|\maketitle|\\ +\|\section{|\<heading-of-1st-section\>\|}|\\ +\mbox{}\quad $\ldots\ldots\ldots$\\ +\mbox{}\quad\<main text\>\\ +\mbox{}\quad $\ldots\ldots\ldots$\\ +Put acknowledgments here by \|acknowledgment| environment if any.\\ +\|\bibliographystyle{ipsjunsrt}| or\\ +\|\bibliographystyle{ipsjsort}|\\ +\|\bibliography{|\<bib-data-file\>\|}|\\ +Put appendices here following \|\appendix| if any.\\ +\Underline{\|\begin{biography}|}\\ +\Underline{\mbox{}\quad\<biography-of-1st-author\>}\\ +\Underline{\mbox\qquad$\ldots\ldots\ldots$}\\ +\Underline{\|\end{biography}|}\\ +\|\end{document}| +\end{list} + +%}{ + +\subsection{Option Styles}\label{sec:DESC} + +The following six standard option styles may be specified as +optional arguments of \|\documentclass| or \|\documentstyle|. +% +\begin{DESCRIPTION}%{ +\item[\tt english] for English papers. +\item[\tt draft] for draft versions. +\item[\tt technote] for technical notes. +\item[\tt preface] for preface of an issue. +\item[\tt sigrecommended] for a paper recommended by a SIG. +\item[\tt invited] for invited papers. +\end{DESCRIPTION}%} +% +Any (meaningful) combinations of options are acceptable. The style has +other options to make a non-Journal\slash +Transactions manuscript. The option \|techrep| is for SIG reports, while +\|private| may be used for your private version (to link it from your own +web page). With \|private| option, additionally, you may put a copyright +notice to the left top corner of the first page by; +% +\begin{itemize}\item[]%{ +\|\copyrightnotice{|\<copyright-notice\>\|}| +\end{itemize}%} +% +as per the IPSJ Copyright Regulation. + +If you specify auxiliary style files by \|\usepackage|\footnote{% +Or in the optional argument of \cs{documentstyle} if you use {\LaTeX} 2.09}, +% +you must include them into the file package when you send your final version +to IPSJ\@. However, style files included in {\LATEXe} standard distribusion +(e.g. \|graphicx|) may be omitted. Note that style files may be +incompatible to the style of the Journal\slash Transactions. + +\subsection{Volume, Number, etc.} + +If IPSJ notifies you of the volume and number of the issue that your paper is +included in, the first page number of your paper, reception and acceptance +dates, specify them with appropriate commands. If some (or all) of them are +not notified, you may omit the corresponding commands. The {\<year\>} should +be a four digit number like 2007, and {\<month\>} should be one or two +digit number like 5 (not May). + +%}{ + +\subsection{Title, Author Names, etc.}\label{sec:Desc}\label{sec:desc} + +Describe the title of your paper, author names and affiliations, and +abstract using the commands and environment shown in \ref{sec:config}. Then +perform \|\maketitle| that automatically puts them at the appropriate position. +In the draft version, the title and abstract are automatically printed onto +separate pages, while author names and affiliations are not printed to make +your paper anonymous. + +\begin{Description} +\item[Title] +The title specified by \|\title| is made centered. Even if the title is +too long to be fit to one line, {\em automatic line break is not performed}. +If your title is long, insert \|\\| into appropriate positions to break +lines. A multiple line title is first flushed left and then is centered +with respect to the widest line. + +The title also appears in the header of odd pages. If your title is too +long, provide a shortened title for the header to \|\title| as its optional +argument as follows. +% +\begin{quote} +\|\title[|\<for-header\>\|]{|\<title\>\|}| +\end{quote} + +\item[Author Name and Affiliation] +Define the affiliation of each author with a label by using \|\affilabel|, +in order from the first author, to have footnotes showing the affiliations with +${\dagger}1$, ${\dagger}2$ and so on. If two or more authors belong to the +same organization, their affiliation should be declared once. If an author +moved somewhere after the paper was written and he/she want to show his/her +new affiliation, use \|\paffilabel| to define and to put it with ${\ast}1$, +${\ast}2$, and so on. + +The \|\author| argument is a list of author names separated by \|\and|. +Each author name is followed by one or more \|\affiref{|\<label\>\|}| to +attach marks corresponding to labels that have been defined by \|\affilabel| +or \|\paffilabel|. + +\item[Abstract] +The abstract of your paper should be given as the contents for the +\|abstract| environment. +\end{Description} + +%}{ + +\subsection{Sectioning} + +{\LaTeX} standard commands such as \|\section| and \|\subsection| are +available for sectioning. The section heading of \|\section| occupies two +lines, while others are put in one line. + +For definitions, axioms, theorems, and so on, define and use appropriate +environments with \|\newtheorem|. Note that the contents of such environments +are not italicized. If you want have an italicized environment, use +\|\newtheorem*|. + +%}{ + +\subsection{Main Text}\label{sec:desc*} + +\begin{description*} +\item[Fixed Baselines] +Each page of the Journal\slash Transactions is formatted with double-column +style. The printing tradition of double-column requires that a line in the +left column and its neighbor in the right column has the same baseline. To +meet +this requirement, the style files carefully control the progression of +baselines when a vertical space is inserted for section titles and so on. +Therefore, {\em you must not use \|\vspace| nor \|\vskip|}. + +If you want to check whether baselines progress properly, add the +\|\checklines| command in the preamble to print baselines on which +(ordinary) lines should be located. This command, however, should be +omitted when you send your source to the IPSJ. + +\item[Font Size] +You will see that various size fonts are used in the printed result of your +paper. Since these fonts are automatically and carefully chosen by the +style files, you are free from headach of selecting proper fonts. In +fact, it is strongly recommended not to use font-size-changing commands such +as \|\large| and \|\small| in the main text, because they are quite harmful +to the retention of keeping fixed baselines. If you really want to use +smaller fonts, \|\small| +or \|\footnotesize|, in order to pack many things in a line, use their {\em +starred} versions, \|\small*| or \|\footnote*|. They will change the font +size while retaining spaces between baselines the same as \|\normalsize|. +An example of \|\small*| is shown in \ref{sec:config}, and that of +\|\footnotesize*| is in this page. + +\item[Overfull and Underfull] +The final result must be free from any overfulls. It is well known that +almost all overfulls can be avoided by a little effort when describing +sentences. For example, avoiding long in-text formulas and \|\verb| is +very effective. However, tricks using \|flushleft| environment, \|\\| or +\|\linebreak| are not recommended, because they cause quite ugly results. + +As for underfulls, you will easily get the following warning message +\begin{Quote}\footnotesize* +\|Underfull| \|\hbox| \|(badness 10000)| \|detected| +\end{Quote} +by \|\\| at the end of a paragraph. This message is also output when you use +\|\\| just before a list-like environment, just before an \|\item|, and at +the end of the environment. Such underfulls cause ugly empty lines and +flood of warnings that will hide an important error message. +\end{description*} + +%}{ + +\subsection{Formulas}\label{sec:ITEM} + +\begin{Itemize} +\item In-text Formulas\\ +In-text formulas may be surrounded by any proper math-open\slash close pair, +i.e. \|$| and \|$|, \|\(| and \|\)|, or \|\begin| and \|\end| for \|math| +environment. Note that tall materials in in-text formulas, such as +\smash{$\frac{a}{b}$} (\|\frac{a}{b}|), are ugly and will disarrange the +baseline progression. + +\item Displayed Formulas\\ +Displayed formulas {\em must not be surrounded by the pair of \|$$|}. +Instead, use the \|\[| and \|\]| pair or one of the environments +\|displaymath|, +\|equation| and \|eqnarray|. These commands\slash environments indent +formulas (not centered) and keep fixed baselines as follows. +\begin{equation} +\Delta_l = \sum_{i=l+1}^L\delta_{pi}. +\end{equation} + +\item \|eqnarray| environment\\ +For a sequence of two or more related formulas (equations), use the \|eqnarray| +environment to line up them at equal (or unequal) signs, instead of +\|\[|/\|\]| or \|equation| environment. Note that contents of \|eqnarray| +will not be broken over two pages. If an \|eqnarray| has many lines and you +want a page break in it, add the option \|[s]| as \|\begin{eqnarray}[s]|. + +\item Special Fonts\\ +It is strongly recommended to use only standard {\LaTeX} math fonts. +Otherwise, you must report that you are using some special fonts and will be +deeply involved in the dark side of printing process. +\end{Itemize} + +%}{ + +\subsection{Figures} +A figure fit to one column is specified by the form shown in +\figref{fig:single}. Note that you must not specify \|h| option. + +The \|\caption| of a figure should be given below of the figure body +together with a \|\label| command. A long caption will be automatically +broken into two or more lines and centered with respect to the widest line. +You can assist, however, with the line breaking by adding \|\\| to +obtain more beautiful result especially in the case of two-line captions as +shown in \figref{fig:single}. + +\begin{figure} +\setbox0\vbox{\it +\hbox{\|\begin{figure}[tb]|} +\hbox{\quad \<figure-body\>} +\hbox{\|\caption{|\<caption\>\|}|} +\hbox{\|\label{| $\ldots$ \|}|} +\hbox{\|\end{figure}\|}} +\centerline{\fbox{\box0}} +\caption{Single column figure with caption\\ + explicitly broken by $\backslash\backslash$.} +\label{fig:single} +\end{figure} + +\Figref{fig:double} shows how to make a double column figure. + +\begin{figure*} +\setbox0\vbox{\large +\hbox{\|\begin{figure}*[t]|} +\hbox{\quad\<figure-body\>} +\hbox{\|\caption{|\<caption\>\|}|} +\hbox{\|\label{| $\ldots$ \|}|} +\hbox{\|\end{figure*}|}} +\centerline{\fbox{\hbox to.9\textwidth{\hss\box0\hss}}} +\caption{Double column figure} +\label{fig:double} +\end{figure*} + +You may use any size of fonts as shown in \figref{fig:double}. +Also you may include an encapsulated PostScript file (so called EPS file) as +the body of a figure. For the inclusion, do; +% +\begin{Quote} +\|\usepackage{graphicx}| +\end{Quote} +% +in the preamble and put \|\includegraphics| command at which you wish to +embed the EPS graphics with its file name (and options if necessary). If +you use {\LaTeX} 2.09, you have to include \|epsf| in the optional argument +of \|\documentstyle| and use \|\epsfile| for the embedment. Note that only +the standard fonts shown in Appendix are usable in PostScript files. + +You might have noticed that the first reference to \figref{fig:single} is +bold-faced while the second and third are typed in roman fonts. This font +switching is a rule of the Journal\slash Transactions, and will be +automatically performed if you use \|\figref{|\<label\>\|}| instead of +\|Fig.~\ref{|\<label\>\|}|. Another rule is that ``Figure'' must be used +instead of ``Fig.''\ if the reference is the first word of a sentence, as +the first reference to \figref{fig:double}. Unfortunately, this switching +is too hard to do automatically, and you must use \|\Figref{|\<label\>\|}| +in such cases. + +%}{ + +\subsection{Tables} +A table with many rules is not very beautiful. \Tabref{tab:example} shows +an example of a table with standard style rules. Note that the uppermost +rule is doubled, and no rules are drawn on the left and right edges. The +caption should be put above the table. The default font size in tables is +\|\footnotesize|. Any reference to a table should be made using +\|\tabref{|\<label\>\|}|\footnote{\cs{\Tabref} is also available but is just +the same as \cs{\tabref}.}. + +\begin{table}[b] +\caption{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}& \ref{sec:desc}\\ +type-2& ---& \ref{sec:item*}&\ref{sec:desc*}\\ +type-3& \ref{sec:Enum}& ---& \ref{sec:Desc}\\ +type-4& ---& \ref{sec:ITEM}& \ref{sec:DESC}\\\hline +\multicolumn{4}{l}{type-1\,: {\tt enumerate}, etc.\quad + type-2\,: {\tt enumerate*}, etc.}\\ +\multicolumn{4}{l}{type-3\,: {\tt Enumerate}, etc.\quad + type-4\,: {\tt ENUMERATE}, etc.}\\ +\end{tabular}\hfil} +\end{table} + +%}{ + +\subsection{Itemizing}\label{sec:item*} + +There are four {\em families} of three {\LaTeX} standard itemizing +enviroments, \|enume|{\tt\-}\|rate|, \|itemize| and \|description|, as follows. +% +\begin{itemize*} +\item \|enumerate|, \|itemize|, \|description|\\ +Simlar to {\LaTeX}-standard environment except for wider +indentation. The indentation of \|enumerate| is three times as wide as +\|\parindent|, while those of others are twice. The \|enumerate| labels +are not {\LaTeX} standard; +% +\begin{quote} +1.\quad (a)\quad i.\quad A. +\end{quote} +% +but have parentheses with small spaces as follows. +% +\begin{quote} +(\,1\,)\quad (\,a\,)\quad (\,i\,)\quad (\,A\,) +\end{quote} + +\item \|enumerate*|, \|itemize*|, \|description*|\\ +Similar to \|enumerate| etc., but indentation is as wide as +\|\parindent|. + +\item \|Enumerate|, \|Itemize|, \|Description|\\ +No indentation is performed. + +\item \|ENUMERATE|, \|ITEMIZE|, \|DESCRIPTION|\\ +Indent only the first line by \|\parindent|. +\end{itemize*} +% +See \tabref{tab:example} to see examples of each environment in this +guide. + +%}{ + +\subsection{Keeping Fixed Baselines} + +As described before, every (ordinary) lines in the main text should be +placed on +fixed baselines. Therefore, if your text has extraordinary tall material +and it shifts other lines from their fixed baselines, enclose the material in +an \|adjustvboxheight| environment. For example, +% +\begin{adjustvboxheight} +\begin{quote} +\fbox{$\displaystyle\sum_{i=0}^n i$} +\end{quote} +\end{adjustvboxheight} +% +is produced by the following sequence. +% +\begin{Quote}\small* +\|\begin{adjustvboxheight}|\\ +\|\begin{quote}|\\ +\|\fbox{$\displaystyle\sum_{i=0}^n i$}|\\ +\|\end{quote}|\\ +\|\end{adjustvboxheight}| +\end{Quote} +% +You will find the line just after the odd thing is on a fixed baseline. + +%}{ + +\subsection{Footnotes} + +The command \|\footnote| produces footnotes with marks like \footnote{An +example of footnote.} and \footnotemark, resetting number of +% +% See \footnotetext 56 lines below. +% +footnote marks to one after the page-break. This automatic adjustment of +footnote marks, however, usually requires {\LaTeX} to be run twice. +(See p.~156 of {\LaTeX}Book\cite{latex}.) + +Sometimes, it is preferable to separate a footnote and its mark into +different columns. You can cope with such a special case using +\|\footnotemark| and \|\footnotetext| commands. + +%}{ + +\subsection{Citations} + +There are two styles of citation. When the citation appears as a word, use +the \|\Cite| command to produce the citation number with normal fonts. +Otherwise, use \|\cite| to have subscripted citations. For example, +% +\begin{Quote}\tt\raggedright +Goosens explained details of \|\LaTeX|\allowbreak\|\cite{latex}| in +\|\Cite{companion}|. +\end{Quote} +will produce +\begin{Quote} +Goosens explained details of \LaTeX\cite{latex} in \Cite{companion}. +\end{Quote} +% +as the result. + +When three or more texts are cited by \|\Cite| or \|\cite| and their +reference numbers are in series, the first and last numbers are connected by +`--' (en-dash) automatically, as \Cite{book1,book2,booklet1} and +``literatures\cite{latex,inbook1,incollection1,inproceedings1}.'' If +texts cited at once are too numerous to specify them by \|\Cite| or +\|\cite|, use the following {\em multi} versions. +% +\begin{Quote} +\|\multiCite{|\<1st-label\>\|}{|\<last-label\>\|}|\\ +\|\multicite{|\<1st-label\>\|}{|\<last-label\>\|}| +\end{Quote} +% +They produce results such as \multiCite{article1}{inproceedings1} and +``literatures\multicite{manual1}{unpublished}.'' + +%}{ + +\subsection{References} + +References should be arranged in alphabetical or cited order. It is +strongly recommended to use BiB{\TeX} and style files \|ipsjsort-e.bst| +(alphabetical order) or \|ipsjunsort-e.bst| (cited order) to make references +fit to the traditional style. You will pick up hints by examining the +sample bibliography file \|ebibsample.|\allowbreak\|bib| and the refereces of +this guide produced by BiB{\TeX} with \|ipsjunsort-e| style. Remember +that you must include \|.bbl| file in the file package, instead of \|.bib|. + +\footnotetext{Another footnote. +This footnote appears right column while its mark is in left +column. See the source file to know how to do it.} +% See \footnotemark 61 lines above. + +If you cannot use Bib{\TeX} and have to make references manually using +\|the|{\tt\-}\|bibliography| environment, observe the references of this guide +carefully and follow its style\footnote{The references of this guide are +produced by {\tt thebiliography} environment to make the source single file, +but the contents are produced by BiB\TeX.}. + +%}{ + +\subsection{Acknowledgments and Appendices} + +If you want to acknowledge some people, put your acknowledgments just +before the references and enclose them in the \|acknowledgment| environment. +Acknowledgments will not be printed in drafts. + +Apendices, if any, should be just after the references and \|\appendix| +command. Sectioning commands produce headings like {\bf A.1}, {\bf A.2} and +so on in apendices. If you want to make the appendix itself have a title, +give a title to \|\appendix| as its optional argument, like +\|\appendix[|\<title\>\|]|. + +%}{ + +\subsection{Biography} + +Biographies of authors must be put just before \|\end{document}| and have +the following format. +% +\begin{Quote} +\|\begin{biography}|\\ +\|\author{|\<1st-author's-name\>\|}|\\ +\mbox{}\quad\<biography-of-1st-author\>\\ +\|\author{|\<2nd-author's-name\>\|}|\\ +\mbox{}\quad\<biography-of-2nd-author\>\\ +\mbox{}\quad $\ldots\ldots\ldots$ \\ +\|\end{biography}| +\end{Quote} +% +The first sentence of each biography must not have subjects and be written +as if its subject is the author's name, e.g. ``was born in 1956.'' The +biographies are not printed in draft versions. + +%}{ + +\subsection{Estimation of Pages} + +Roughly speaking, two pages of a draft version are packed into one page of +its final version. For example, the source of this guide produces a 18-page +draft and 9-page final version, showing the estimation works. + +Better estimation, of course, can be obtained by typesetting your draft +using final version style. + +%}{ + +\section{Concluding Remarks} + +We don't dream that the style files are perfect, but wish to improve them +with your cooperation and hope you let us know your complainment, comments, +suggessions by e-mail to +% +\begin{Quote} +\|texnicians@ipsj.or.jp|. +\end{Quote} +{\TeX}nical questions also welcome to this address, but other questions on the +Journal\slash Transactions should be received by +\begin{Quote} +\|editt@ipsj.or.jp|. +\end{Quote} + +\begin{acknowledgment} +We would like to express our thanks to Sanbi Printing Corp, ULS and Comany, +and all those authors who voluntarily cooperate us in the experimental {\LaTeX} +publishing of the Journal\slash Transactions. +\end{acknowledgment} + +%}{ + +\begin{thebibliography}{10} + +\bibitem{companion} +Goossens, M., Mittelbach, F. and Samarin, A.: {\em The LaTeX Companion\/}, + Addison Wesley, Reading, Massachusetts (1993). + +\bibitem{latex} +Lamport, L.: {\em A Document Preparation System {\LaTeX} User's Guide \& + Reference Manual\/}, Addison Wesley, Reading, Massachusetts (1986). + +\bibitem{article1} +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{article2} +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{book1} +Foley, J.~D. et al.: {\em Computer Graphics --- Principles and Practice\/}, + System Programming Series, Addison-Wesley, Reading, Massachusetts, 2nd + edition (1990). + +\bibitem{book2} +Chang, C.~L. and Lee, R. C.~T.: {\em Symbolic Logic and Mechanical Theorem + Proving\/}, Academic Press, New York (1973). + +\bibitem{booklet1} +{Institute for New Generation Computer Technology}: Overview of the Fifth + Generation Computer Project, distributed in {FGCS'92} (1992). +\newblock (in Japanese). + +\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} +Ohno, K.: Efficient Message Communication of Concurrent Logic Programming + Language KL1 Based on Static Analysis, Master's thesis, Dept. Information + Science, Kyoto University (1995). + +\bibitem{misc1} +Saito, Y. and Nakashima, H.: {{\tt ipsjpapers.\allowbreak sty}} (1995). +\newblock (Style file for Trans. IPSJ distributed to authors.). + +\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{WarD:WAM-1} +Warren, D. H.~D.: An Abstract {Prolog} Instruction Set, Technical Report\ 309, + Artificial Intelligence Center, SRI International (1983). + +\bibitem{unpublished} +{Editorial Board of Trans. IPSJ}: How to Typeset Your Papers in {\LaTeX} + (Version 1) (1995). +\newblock (distributed to authors). + +\end{thebibliography} + +%}{ + +\appendix +\section{Commands for the Transactions}\label{sec:app-sig} + +Each Transactions has its own subtitle, abbreviation code and serial +number. This information is given by the following command placed before +\|\begin{document}| of the final version source. +% +\begin{itemize}\item[] +\|\transaction{|\<abbrev\>\|}{|\<number\>\|}%|\\ +\phantom{\tt+transaction}\|{|\<ser-num\>\|}| +\end{itemize} +% +The argument \<abbrev\> must be one of the folloiwngs, while the \<number\> +of the issue and \<ser-num\> will be notified by the IPSJ or the Editorial +Board of the Transactions. +% +\begin{itemize}%{ +\item +\|PRO| (Trans.\ Programming) +\item +\|TOM| (Trans.\ Mathematical Modeling and Its Applications) +\item +\|TOD| (Trans.\ Database) +\item +\|ACS| (Trans.\ Advanced Computing Systems) +\item +\|CVIM| (Trans.\ Computer Vision and Image Media) +\item +\|TBIO| (Trans.\ Bioinformatics) +\item +\|SLDM| (Trans.\ System LSI Design Methodology) +\end{itemize}%} +% +Note that the \<number\> of the issue does not mean the issue is published +in the \<number\>-th month of a year. You may be notified about the +\<month\>, to be set to the following \|month| counter, by IPSJ or the +Editorial Board. +% +\begin{itemize}\item[] +\|\setcounter{month}{|\<month\>\|}| +\end{itemize} + +Also note that Transactions may have a few local typesetting +convensions shown in the following sections. + +%}{ + +\subsection{Functions for PRO} + +Issues of The Transactions on Programming (PRO) not only have regular +papers but also abstracts of the talks given in workshops of SIGPRO. +The file for an abstract consists of the materials from \|\documentclass| +(or \|\documentstyle|) to \|\maketitle| of the format shown in +Section~\ref{sec:config}. That is, the file does not have a main text. Note +that the reception and acceptance dates are not necessary but the date of +presentation has to be given by; +% +\begin{itemize}\item[] +\|\presented{|\<year\>\|}{|\<month\>\|}{|\<day\>\|}| +\end{itemize} + +%}{ + +\subsection{Functions for TOM} + +Authors of papers included in The Transactions on Mathematical Modeling +and Its Applications (TOM) may be instructed to give the date of reception +of the revised version of the paper. In this case, the date is given by; +% +\begin{itemize}\item[] +\|\rereceived{|\<year\>\|}{|\<month\>\|}{|\<day\>\|}| +\end{itemize} +% +If the paper has revised twice or more, repeat the command above with each +of the date of revision reception. + +%}{ + +\subsection{Functions for TOD} + +The name of the editor in charge for the paper included in The Transactions +on Database (TOD) is given by; +% +\begin{itemize}\item[] +\|\edInCharge{|\<name-of-editor\>\|}| +\end{itemize} + +%}{ + +\subsection{Functions for TBIO} + +In order to activate TBIO-specific commands, you should specify \|TBIO| +as an optional argument for \|\documentclass| (or \|documentstyle|). Since +TBIO accepts English papers only, \|TBIO| option implies \|english| option. +Therefore, you may do; +% +\begin{itemize}\item[] +\|\documentclass[TBIO]{ipsjpaper}| +\end{itemize} +% +without \|english| option. Then the following commands become available. +% +\begin{itemize}%{ +\item +The \<category\> of the paper, \|original|, \|survey| or \|database|, may +be given by;\\ +\mbox{}\quad +\|\TBIOpapercategory{|\<category\>\|}|\\ +% +in the preamble to put ``{\it Original Paper}'', ``{\it Survey Paper}'' or +``{\it Database\slash Software Paper}'' above the paper title in the first +page. If this command is not given, \|original| is assumed. + +\item +The name of the editor in charge for the paper may be given by;\\ +\mbox{}\quad +\|\edInCharge{|\<name-of-editor\>\|}| +% +\item +The date of reception of the revised version may be specified by;\\ +\mbox{}\quad +\|\rereceived{|\<year\>\|}{|\<month\>\|}{|\<day\>\|}| +% +\end{itemize} +% +Note that the last two commands are optional and thus may be omitted +unless the author is given the information for them and is requested to +specify them. + +%}{ + +\begin{biography} +\member{Hiroshi Nakashima} +was born in 1956. He received his M.E.\ and Ph.D.\ from Kyoto +University in +1981 and 1991 respectively, and was engaged in research on inference systems +with Mitsubishi Electric Corporation from 1981. +He became an associate professor at Kyoto University in 1992, a professor at +Toyohashi University of Technology in 1997, and a professor at +Kyoto University in 2006. His +current research interests are the architecture of parallel processing systems +and the implementation of programming languages. He received the Motooka +award in 1988 and the Sakai award in 1993. He is a Board Member of IPSJ, +and a member of IEEE-CS, ACM, ALP and TUG. +% +\member{Yasuki Saito} +was born in 1953. He received his M.S. degree from Univ.\ of Essex, UK in +1978, and M.E. degree from Univ.\ of Tokyo in 1979, respectively. He has +been working in NTT Corp.\ since 1979 and now is a senior research scientist +of the Basic Research Laboratories of NTT. Since 1984 until 1985 he had +been a visiting researcher of INRIA, France. He has been engaging in the +research areas of artificial intelligence (symbol grouping problem), +computer software (Japanese \TeX), cognitive science (learning processes). +He is a member of IPSJ, JSAI, JSSST, JCSS and TUG. +\end{biography} +\end{document}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/ipsj-sample/sample.tex Mon Mar 24 01:30:34 2008 +0900 @@ -0,0 +1,1035 @@ +\documentclass{ipsjpapers} + +% $B4,?t!$9f?t$J$I$N@_Dj(B +\setcounter{$B4,?t(B}{48} +\setcounter{$B9f?t(B}{5} +\setcounter{volpageoffset}{1234} +\$B<uIU(B{18}{11}{28} +\$B:NO?(B{19}{2}{4} + +% $B%f!<%6$,Dj5A$7$?%^%/%m$J$I!%(B +\makeatletter +\let\@ARRAY\@array \def\@array{\def\<{\inhibitglue}\@ARRAY} +\def\<{\(\langle\)\nobreak} +\def\>{\nobreak\(\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 % $B9TAw$j$r3NG'$9$k;~$K;HMQ(B +\begin{document}%{ +% $BOBJ8I=Bj(B +\title[{\protect\LaTeX} $B$K$h$kO@J8:n@.$N%,%$%I(B]% + {{\protect\LATEX} $B$K$h$kO@J8:n@.$N%,%$%I!JBh(B6$BHG!K(B} +% $B1QJ8I=Bj(B +\etitle{How to Typeset Your Papers in {\LATEx} (Version 6)} +% $B=jB0%i%Y%k$NDj5A(B +\affilabel{TUT}{$BK-665;=Q2J3XBg3X(B\\Toyohashi University of Technology} +\paffilabel{Princeton}{$B%W%j%s%9%H%s9bEy8&5f=j!J13$G$9!K(B\\ + Institute for Advanced Study, Princeton (just joke)} +\affilabel{NTT}{NTT$B4pAC8&5f=j(B\\NTT Basic Research Laboratories} +% $BOBJ8Cx<TL>(B +\author{$BCfEg(B $B9@(B\affiref{TUT}\affiref{Princeton}\and + $B@FF#(B $B9/8J(B\affiref{NTT}} + +% $B1QJ8Cx<TL>(B +\eauthor{Hiroshi Nakashima\affiref{TUT}\affiref{Princeton}\and + Yasuki Saito\affiref{NTT}} + +% $BOBJ835MW(B +\begin{abstract} +$B$3$N%Q%s%U%l%C%H$O!$>pJs=hM}3X2qO@J8;o!J0J8e!$O@J8;o$H8F$V!K$KEj9F$9$kO@J8!$(B +$BJB$S$K7G:\$,7hDj$7$?O@J8$N:G=*HG$r!$F|K\8l(B {\LaTeX} $B$rMQ$$$F:n@.$7Ds=P$9$k$?(B +$B$a$N%,%$%I$G$"$k!%$3$N%Q%s%U%l%C%H$G$O!$O@J8:n@.$N$?$a$N%9%?%$%k%U%!%$%k$K$D(B +$B$$$F2r@b$7$F$$$k!%$^$?!$$3$N%Q%s%U%l%C%H<+BN$bO@J8$HF1$8J}K!$G:n@.$5$l$F$$$k(B +$B$N$G!$I,MW$K1~$8$F%9%?%$%k%U%!%$%k$H$H$b$KG[I[$9$k%=!<%9!&%U%!%$%k$r;2>H$5$l(B +$B$?$$!%(B +\end{abstract} +% $B1QJ835MW(B +\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} + +% $BI=Bj$J$I$N=PNO(B +\maketitle + +%}{ + +% $BK\J8$O$3$3$+$i;O$^$k(B +\section{$B$O$8$a$K(B} +\footnotetext[1]{$B<B:]$NCx<T$O>pJs=hM}3X2q(B $BO@J8;oJT=80Q0w2q$G$"$k!%(B} + +$B>pJs=hM}3X2q$G$O!$O@J8;o$r?WB.$+$DDc%3%9%H$G=PHG$9$k$?$a$K(B {\LaTeX} $B$K$h$k@=HG(B +$B$r:NMQ$7$F$$$k!%$3$N@=HGJ}<0$G$O!$Cx<T$,:n@.$7$?(B {\LaTeX} $B%=!<%9$,4pK\E*$K$O$=(B +$B$N$^$^:G=*E*$J@=HG%W%m%;%9$K;HMQ$5$l$k!%$7$?$,$C$F!$B??t$NFI<T$K?F$7$^$l$F$-(B +$B$?BN:[$r7Q>5$7!$FI$_0W$$O@J8;o$r=PHG$9$k$?$a$K$O!$Cx<T$NJ}!9$N6(NO$,IT2D7g$G(B +$B$"$k!%(B + +$B0lJ}!$Cx<T$K$H$C$F$N%a%j%C%H$H$7$F$O!$3h;z@=HG$G$OHr$1Fq$$@=HG;~$N8m$j$,$J$/(B +$B$J$j!$9;@5$N<j4V$,BgI}$K:o8:$5$l$k$3$H$,$"$2$i$l$k!%$^$?@lMQ$N%9%?%$%k%U%!%$(B +$B%k$HDL>o;H$o$l$k(B {\LaTeX} $B$N%3%^%s%I$r;H$($P!$4JC1$KO@J8;o$NBN:[$KB'$C$?=PNO(B +$B$,F@$i$l$k$N$G!$F|:"(B {\LaTeX} $B$GJ8=q$r:n@.$7$F$$$kB?$/$NCx<T$K$OL5M}$J$/<u$1(B +$BF~$l$i$l$k$b$N$H4|BT$7$F$$$k!%$5$i$K!$Ej9FMQ$N%9%?%$%k%U%!%$%k$bMQ0U$5$l$F$*(B +$B$j!$:G=*HG:n@.$N$?$a$N=$@5$O:G>.8B$H$J$k$@$1$G$J$/!$0JA0$KHf$Y$F3JCJ$KFI$_0W(B +$B$$Ap9F$rF@$k$3$H$,$G$-$k!%$3$l$O<+J,$N869F$r%A%'%C%/$9$kCx<T$@$1$G$O$J$/!$::(B +$BFI<T$K$H$C$F$bBg$-$J%a%j%C%H$G$"$k!%(B + +$B$J$*!$O@J8;o%9%?%$%k$K$ODL>o$N(B {\LaTeX} $B$KDI2C$5$l$?%3%^%s%I$,$"$j!$$=$NB?$/(B +$B$OO@J8@=HG$KIT2D7g$J$b$N$G$"$k!%$^$?%9%?%$%k%U%!%$%k$@$1$G$OBP=h$7$-$l$J$$BN(B +$B:[>e$NCm0U;v9`$b$$$/$D$+$"$k!%$7$?$,$C$F!$Cx<T$b4^$a$FO@J8;o:n@.$K4X$o$kA4$F(B +$B$N?M!9$NO+NO$r7Z8:$9$k$?$a$K$b!$869F$r:n@.$9$kA0$K$3$N%,%$%I$r(B{\bf $BNI$/FI$s(B +$B$G5,Dj$r87L)$K<i$C$F$$$?$@$-$?$$(B}$B!%(B + +%}{ + +\section{$BEj9F$+$i=PHG$^$G(B}\label{sec:Enum}\label{sec:item} + +$BEj9F$9$kO@J8$N:n@.$+$i!$O@J8$,7G:\$5$l$?O@J8;o$,=PHG$5$l$k$^$G$NN.$l$O!$0J2<(B +$B$NDL$j$G$"$k(B\footnote[2]{% +% +$B%8%c!<%J%k$N<j=g$K1h$C$?@bL@$H$J$C$F$*$j!$%H%i%s%6%/%7%g%s$G$O8D!9$K8GM-$N0[(B +$B$J$k<j=g$,Dj$a$i$l$F$$$k$3$H$,$"$k!%>\:Y$K$D$$$F$O3F%H%i%s%6%/%7%g%sJT=80Q0w(B +$B2q$K>H2q$5$l$?$$!%(B} +$B!%(B +% +\begin{Enumerate}%{ +\item {\bf $B%9%?%$%k%U%!%$%k$N<hF@(B}\\ +$B>pJs=hM}3X2q$N(BWEB site \|http://www.ipsj.or.jp/|$B$+$i!$%9%?%$%k%U%!%$%k$J$I(B +$B$+$i$J$kO@J8:n@.%-%C%H$r%@%&%s%m!<%I$9$k$3$H$,$G$-$k!%$3$N%-%C%H$K$O0J2<$N%U%!(B +$B%$%k$,4^$^$l$F$$$k(B\footnote[3]{% +% +$B2<5-$N$[$+$KHsF|K\8l4D6-$G$N(BBib{\TeX}$B%9%?%$%k$H$7$F!$(B\texttt{ipsjsort-e.bst} +$B$H(B\texttt{ipsjunsrt-e.bst}$B$b4^$^$l$F$$$k!%(B}$B!%(B +% +\begin{itemize}%{ +\item\|ipsjpapers.sty| : $B@=HGMQ%9%?%$%k(B +\item\|ipsjpapers.cls| : {\LATEXe} $BMQ@=HGMQ%9%?%$%k(B +\item\|ipsjdrafts.sty| : $BEj9FMQ%9%?%$%k(B +\item\|ipsjcommon.sty| : $B@=HG!?Ej9FMQJd=u%9%?%$%k(B +\item\|ipsjsort.bst | : jBib{\TeX}$B%9%?%$%k!JCx<TL>=g!K(B +\item\|ipsjunsrt.bst | : jBib{\TeX}$B%9%?%$%k!J=P8==g!K(B +\item\|sample.tex | : $B$3$N%,%$%I$N%=!<%9!J@=HGMQ!K(B +\item\|dsample.tex | : $B$3$N%,%$%I$N%=!<%9!JEj9FMQ!K(B +\item\|esample.tex | : $B1QJ8%,%$%I$N%=!<%9!J@=HGMQ!K(B +\item\|desample.tex | : $B1QJ8%,%$%I$N%=!<%9!JEj9FMQ!K(B +\item\|bibsample.bib | : $BJ88%%j%9%H$N%5%s%W%k(B +\item\|ebibsample.bib| : $B1QJ8J88%%j%9%H$N%5%s%W%k(B +\end{itemize}%} +% +$B%-%C%H$O(B Unix $BMQ!$(BWindows (DOS) $BMQ!$(BMacintosh $BMQ$J$I$,MQ0U$5$l$F$*$j!$Cx<T$N(B +$B:n6H4D6-$K1~$8$?$b$N$rA*Br$G$-$k$h$&$K$J$C$F$$$k!%(B + +\item {\bf $BEj9FMQ869F$N:n@.$HEj9F(B}\\ +$B$3$N%,%$%I$K$7$?$,$C$F!$8e=R$N(B \|draft| $B%*%W%7%g%s$r;XDj$7$?(B {\LaTeX} $B%=!<%9(B +$B$r:n@.$7!$$=$N(B \|.dvi| $B%U%!%$%k$r(BPDF$B%U%!%$%k$KJQ49$9$k!%(B +$B$J$*Cx<T$N;aL>!&=jB0!$Cx<T>R2p!$<U<-$OEj9FMQ869F$K4^$^$l$F$$$F$O$J$i$J$$$,!$(B +$B8e=R$9$k%3%^%s%IEy$rMQ$$$F;XDj$7$F$$$l$P<+F0E*$K=PNO$,M^;_$5$l$k!%(B +PDF$B%U%!%$%k$rEj9F$9$k$K$O$^$:!$(B +\begin{itemize}\item[]\tt +http://www.ipsj.or.jp/08editt/\\\phantom{http://}journal/submit/ +\end{itemize} +$B$K%"%/%;%9$7$FEj9F>pJs$rEPO?$7!$$=$N7k2LAw$i$l$F$/$k(Bemail$B$K5-:\$N(BURL$B$r%"%/%;(B +$B%9$9$k!%(B + +\item {\bf $B@=HGMQ869F$N:n@.(B}\\ +$B:NO?$,7hDj$7$?$i!$::FI<T$+$i$N%3%a%s%H$J$I$K$7$?$,$C$F869F$r=$@5$7!$Cx<T>R2p(B +$B$J$IEj9F;~$K$J$+$C$?9`L\$,$"$l$PDI2C$9$k!%$^$??^I=$J$I$N%l%$%"%&%H$b:G=*E*$J(B +$B$b$N$H$9$k!%$J$*8e$N9;@5$N<j4V$r:G>.$K$9$k$?$a$K!$(B{\bf $B$3$NCJ3,$G5-=R$N8m$j(B +$B$J$I$r40A4$K=|5n$9$k$h$&$KLJL)$J%A%'%C%/$r$*4j$$$7$?$$(B}$B!%(B + +\item {\bf $B@=HGMQ869F$H%U%!%$%k$NAwIU(B}\\ +$B3X2q$X$O(B {\bf {\LaTeX} $B%U%!%$%k!J$r$^$H$a$?$b$N!K$H%O!<%I%3%T!<$NAPJ}$r(B}$BAwIU(B +$B$9$k!%AwIU$9$k%U%!%$%k72$NI8=`E*$J9=@.$O(B \|.tex| $B$H(B \|.bbl| $B$G$"$j!$$3$NB>$K(B +PostScript $B%U%!%$%k$dFCJL$J%9%?%$%k%U%!%$%k$,$"$l$PIU2C$9$k!%$J$*(B \|.tex| $B$O(B +$B0u:~6H<T$,=$@5$9$k$3$H$,$"$k$N$G!$(B{\bf $BI,$:0l$D$N%U%!%$%k$K$7$F$$$?$@$-$?$$(B}$B!%(B +$B$^$?I,MW$J%U%!%$%k$,A4$F$=$m$C$F$$$k$3$H!$FC$KFCJL$J%9%?%$%k%U%!%$%k$K1L$l$,(B +$B$J$$$3$H$r!$Cm0U?<$/3NG'$7$FD:$-$?$$!%(B + +$B%U%!%$%k$NAwIUJ}K!$J$I$K$D$$$F$O!$:NO?DLCN$H$H$b$K3X2q;vL36I$+$iAw$i$l$k;X<((B +$B$K$7$?$,$C$F$$$?$@$-$?$$!%(B + +\item {\bf $BCx<T9;@5(B}\\ +$B3X2q$G$OMQ8l$dMQ;z$r0lDj$N4p=`$K$7$?$,$C$F=$@5$9$k$3$H$,$"$j!$$^$?(B {\LaTeX} +$B$N<B9T4D6-$N:90[$J$I$K$h$C$FCx<T$,:n@.$7$?%O!<%I%3%T!<$H<B:]$N@=HG7k2L$,HyL/(B +$B$K0[$J$k$3$H$,$"$k!%$3$l$i$N=$@5$d:90[$,LdBj$J$$$+$r:G=*E*$K3NG'$9$k$?$a$K!$(B +$BCx<T$K%2%i:~$j$,Aw$i$l$k$N$G!$$b$7LdBj$,$"$l$P<k=q$K$h$C$F;XE&$7$FJVAw$9$k!%(B +$B$J$*(B{\bf $B$3$NCJ3,$G$N5-=R8m$j$N=$@5$O86B'$H$7$FG'$a$i$l$J$$(B}$B$N$G!$869FAwIU;~(B +$B$K:Y?4$NCm0U$rJ'$C$F$$$?$@$-$?$$!%(B + +\item {\bf $B0u:~!&=PHG(B}\\ +$BCx<T$N9;@5$K4p$E$-:G=*E*$J@=HG$r9T$J$$!$0u:~!$=PHG$9$k!%(B +\end{Enumerate}%} + +%}{ + +\section{{\protect\LATex}$B$N<B9T4D6-(B}\label{sec:ITEM} + +$B%9%?%$%k%U%!%$%k$O(BNTT$B$N@FF#9/8J;a$K$h$k(B j{\TeX}$B!J$$$o$f$k(BNTT$BHG!K$H!$%"%9%-!<(B +$B<R$K$h$kF|K\8l(B {\TeX}$B!J$$$o$f$k%"%9%-!<HG!K$N$I$A$i$K$bBP1~$7$F$$$k$N$G!$Cx<T(B +$B$N(B {\LaTeX} $B4D6-$K4X$o$i$:F1$8%9%?%$%k%U%!%$%k$r;HMQ$G$-$k(B\footnote{% +% +$B1QJ8O@J8$G$"$l$P%*%j%8%J%k$N!J$9$J$o$AHsF|K\8l$N!K(B{\LaTeX}$B$r;HMQ$9$k$3$H$b$G(B +$B$-$k!%(B}$B!%(B + +NTT$BHG$*$h$S%"%9%-!<HG$N(B{\LATEXe}$B$K$D$$$F!$0J2<$N%P!<%8%g%s$G$NF0:n3NG'$r9T$J$C(B +$B$F$$$k!%(B +% +\begin{ITEMIZE}%{ +\item +NTT$BHG(B${}={}${j\TeX} 1.6${}+{}$% +\ifDS@draft\else\\\mbox{}\hskip5em\fi + {\LATEXe} 1994/12/01 patch level 3 +\item +$B%"%9%-!<HG(B${}={}${p\TeX} 3.141592 p3.1.4${}+{}$% +\ifDS@draft\else\\\mbox{}\hskip5em\fi + {p\LATEXe} 2004/08/10 +\end{ITEMIZE}%} +% +$B$$$:$l$K$D$$$F$b!$%M%$%F%#%V!&%b!<%I$H(B{\LaTeX} 2.09 $B8_49%b!<%I$N$I$A$i$G$b;H(B +$BMQ$9$k$3$H$,$G$-$k!%$^$?(B{\LaTeX} 2.09$B$K$D$$$F$O!$0J2<$N%P!<%8%g%s$G$NF0:n3N(B +$BG'$r9T$C$F$$$k!%(B +% +\begin{ITEMIZE}%{ +\item +NTT$BHG(B${}={}${j\TeX} 1.52${}+{}${\LaTeX} 2.09 +\item +$B%"%9%-!<HG(B${}={}${\TeX} 2.99-j1.7${}+{}${\LaTeX} 2.09 +\end{ITEMIZE}%} +% +$B$J$*>e5-0JA0$NHG$K$D$$$F$bF0:n$9$k$H4|BT$G$-$k$,!$$G$-$l$P?7$7$$HG$r;H$C$FD:(B +$B$-$?$$!%(B + +%}{ + +\section{$B%9%?%$%k%U%!%$%k$N;H$$J}(B} +\subsection{$B0lHLE*$JCm0U;v9`(B} + +$B2q5D$NM=9F=8$J$I$H$O0c$$!$O@J8;o$NBN:[$K$OEAE}E*$+$D!V7x$$!WLsB+;v$,?tB?$/$"(B +$B$k!%$=$N$?$a%9%?%$%k%U%!%$%k$b!V7x$$!W$b$N$H$J$C$F$*$j!$(B{\LaTeX} $B$NFCD'$N0l(B +$B$D$G$"$k%+%9%?%^%$%:5!G=$OBgI}$K@)8B$5$l$k!%Nc$($P(B \|\textheight| $B$J$I$N$$$o(B +$B$f$k(B style parameter $B$rJQ99$9$k$N$OEvA3$d$a$F$$$?$@$-$?$$!%$I$N$h$&$J%+%9%?(B +$B%^%$%:$,5v$5$l$k$N$+$r<($9$N$OFq$7$$$,!$0l$D$N4p=`$H$7$F!V%9%?%$%k%U%!%$%k$r(B +$BFI$s$G$_$FBg>fIW$@$H3N?.$,;}$F$k!W$3$H0J30$O$7$J$$$3$H$r6/$/4+$a$k!%(B + +$B$J$*!$$3$l$i$NJQ99$d$3$N%,%$%I$G=R$Y$F$$$k!V$d$a$FM_$7$$$3$H!W$r9T$J$C$F$b!$(B +{\bf $B%(%i!<$K$J$C$?$j$;$:C1$K7k2L$,JQ$K$J$k(B}$B$3$H$KCm0U$7$F$$$?$@$-$?$$!%(B + +%}{ + +\subsection{$BO@J8$N9=@.(B}\label{sec:config} + +$B%U%!%$%k$O<!$N7A<0$G:n$k!%$J$*2<@~It$OEj9F;~$K$O$J$/$F$b$h$$!%$^$?%H%i%s%6%/(B +$B%7%g%sFCM-$N%3%^%s%I$J$I$K$D$$$F$O!$IUO?(B\ref{sec:app-sig}$B$r;2>H$5$l$?$$!%(B +% +\begin{Quote}\small* +\|\documentclass{ipsjpapers}|\footnote{% + {\LATExe} $B$r(B2.09$B8_49%b!<%I$G;H$&>l9g!$$*$h$S(B{\LaTeX} 2.09$B$r;H$&>l9g(B + $B$K$O(B \CS{documentstyle} $B$r;HMQ$7!$I,MW$K1~$8$F%*%W%7%g%s0z?t$KJd=u%9(B + $B%?%$%kL>$r2C$($k!%(B} $B$^$?$O(B\\ +\|\documentclass[draft]{ipsjpapers}|\footnotemark[1]\\ +$BI,MW$J$i$P%*%W%7%g%s$N%9%?%$%k$r;XDj$9$k!%(B\\ +$BI,MW$J$i$PJd=u%9%?%$%k$r(B \|\usepackage| $B$G;XDj$9$k!%(B\\ +\Underline{\|\setcounter{|{\bf $B4,?t(B}\|}{|\<$B4,?t(B\>\|}|}\\ +\Underline{\|\setcounter{|{\bf $B9f?t(B}\|}{|\<$B9f?t(B\>\|}|}\\ +\Underline{\|\setcounter{volpageoffset}{|\<$B@hF,%Z!<%8(B\>\|}|}\\ +\Underline{\|\|{\bf $B<uIU(B}\|{|\<$BG/(B\>\|}{|\<$B7n(B\>\|}{|\<$BF|(B\>\|}|}\\ +\Underline{\|\|{\bf $B:NO?(B}\|{|\<$BG/(B\>\|}{|\<$B7n(B\>\|}{|\<$BF|(B\>\|}|}\\ +$BI,MW$J$i$P%f!<%6$N%^%/%mDj5A$J$I$r$3$3$K=q$/!%(B\\ +\|\begin{document}|\\ +\|\title{|\<$BI=Bj!JOBJ8!K(B\>\|}|\\ +\|\etitle{|\<$BI=Bj!J1QJ8!K(B\>\|}|\\ +\Underline{\|\affilabel{|\<$B=jB0%i%Y%k(B\>\|}%|}\\ +\Underline{\mbox{}\qquad\qquad\|{|\<$BOBJ8=jB0(B\>\|\\|\<$B1QJ8=jB0(B\>\|}|}\\ +\Underline{\mbox{}\qquad\qquad\ldots\ldots\ldots}\\ +$BI,MW$J$i$P(B \|\paffilabel| $B$K$h$j8=:_$N=jB0$r@k8@$9$k!%(B\\ +\Underline{\|\author{|\<$BBh0lCx<T!JOBJ8!K(B\>\|\and|}\\ +\Underline{\leavevmode\phantom{\tt @author@}\<$BBhFsCx<T!JOBJ8!K(B\>\|\and|}\\ +\Underline{\leavevmode\phantom{\tt @author@} \ldots{} \|}|}\\ +\Underline{\|\eauthor{|\<$BBh0lCx<T!J1QJ8!K(B\>\|\and|}\\ +\Underline{\leavevmode\phantom{\tt @eauthor@}\<$BBhFsCx<T!J1QJ8!K(B\>\|\and|}\\ +\Underline{\leavevmode\phantom{\tt @eauthor@} \ldots{} \|}|}\\ +\|\begin{abstract}|\\ +\mbox{}\quad\<$B35MW!JOBJ8!K(B\>\\ +\|\end{abstract}|\\ +\|\begin{eabstract}|\\ +\mbox{}\quad\<$B35MW!J1QJ8!K(B\>\\ +\|\end{eabstract}|\\ +\|\maketitle|\\ +\|\section{|\<$BBh(B1$B@a$NI=Bj(B\>\|}|\\ +\mbox{}\quad $\ldots\ldots\ldots$\\ +\mbox{}\quad\<$BK\J8(B\>\\ +\mbox{}\quad $\ldots\ldots\ldots$\\ +$B<U<-$,$"$l$P(B \|acknowledgment| $B4D6-$r;H$C$F$3$3$K5-$9!%(B\\ +\|\bibliographystyle{ipsjunsrt}| $B$^$?$O(B\\ +\|\bibliographystyle{ipsjsort}|\\ +\|\bibliography{|\<$BJ88%%G!<%?%Y!<%9(B\>\|}|\\ +$BIUO?$,$"$l$P(B \|\appendix| $B$KB3$$$F$3$3$K5-$9!%(B\\ +\Underline{\|\begin{biography}|}\\ +\Underline{\mbox{}\quad\<$BCx<T>R2p(B\>}\\ +\Underline{\mbox\qquad$\ldots\ldots\ldots$}\\ +\Underline{\|\end{biography}|}\\ +\|\end{document}| +\end{Quote} + +%}{ + +\subsection{$B%*%W%7%g%s!&%9%?%$%k(B}\label{sec:ENUM} + +\|\documentclass| $B!J$^$?$O(B \|\documentstyle|$B!K$NI8=`%*%W%7%g%s$H$7$F!$0J2<$N(B6 +$B$D$N$b$N$,MQ0U$5$l$F$$$k!%(B +% +\begin{ENUMERATE}%{ +\item\|draft | $BEj9FMQ(B +\item\|technote | $B%F%/%K%+%k%N!<%HMQ(B +\item\|preface | $B=xJ8MQ(B +\item\|english | $B1QJ8MQ(B +\item\|sigrecommended| $B8&5f2q?dA&O@J8(B +\item\|invited | $B>7BTO@J8(B +\end{ENUMERATE}%} +% +$B$3$l$i$N%*%W%7%g%s$O!J0UL#$,$"$l$P!KG$0U$NAH9g$;$G;XDj$9$k$3$H$,$G$-$k!%(B +$B$^$?O@J8;o$X$NEj9F!?7G:\0J30$NL\E*$G;H$&$3$H$,$G$-$k$h$&$K!$8&5f(B +$BJs9pMQ$N(B \|techrep| $B$H!$!JCx<T<+?H$N(Bweb site$BEy$K7G:\$9$k$?$a$N!K!VCx<THG!W$r(B +$B:n@.$9$k(B \|private| $B$bMQ0U$5$l$F$$$k!%$5$i$K8e<T$G$O(B +% +\begin{itemize}\item[]%{ +\|\copyrightnotice{|\<$BCx:n8">pJs(B\>\|}| +\end{itemize}%} +% +$B$K$h$j!$:G=i$N%Z!<%8$N:88*$K3X2qCx:n8"5,Dj$GDj$a$i$l$?Cx:n8"$K4X$9$kCm0U=q$r(B +$B=PNO$9$k$3$H$b$G$-$k!%(B + +\|\usepackage| $B$G(B\footnote{{\LaTeX} 2.09$B$N>l9g$O(B \CS{documentstyle} $B$N%*%W%7%g(B +$B%s0z?t$G!%(B}% +$BJd=uE*$J%9%?%$%k%U%!%$%k$r;XDj$7$?>l9g$K$O!$@=HGMQ$N%U%!%$%k72$KI,$:%9%?%$%k(B +$B%U%!%$%k$r4^$a$k!%$?$@$7!$(B{\LATEXe} $B$NI8=`G[I[$K4^$^$l$F$$$k$b$N!J$?$H$($P(B +\|graphicx|$B!K$K$D$$$F$OF1Iu$NI,MW$O$J$$!%$J$*%9%?%$%k%U%!%$%k$K$h$C$F$OO@J8(B +$B;o%9%?%$%k$HL7=b$9$k$h$&$J$b$N$b$"$k$N$G!$%9%?%$%k%U%!%$%k$N@-3J$rNI$/M}2r$7(B +$B$F;HMQ$7$F$$$?$@$-$?$$!%(B + +\subsection{$B4,?t!$9f?t$J$I$N5-=R(B} +$B3X2q$h$j;X<($5$l$?4,?t!$9f?t!$@hF,%Z!<%8HV9f(B\hbox{$B!J(B\|\volpageoffset|$B!K(B}$B!$<u(B +$BIU!?:NO?G/7nF|!JG/$OJ?@.G/!K$r5-=R$9$k!%$J$*3X2q$+$i$N;X<($,$J$$9`L\$K4X$7$F(B +$B$O!$5-=R$7$J$/$F$h$$!%(B + +%}{ + +\subsection{$BI=Bj$J$I$N5-=R(B}\label{sec:Desc} + +$BI=Bj!$Cx<TL>$H$=$N=jB0!$$*$h$S35MW$rA0=R$N%3%^%s%I$d4D6-$K$h$j(B{\dg $BOBJ8$H1Q(B +$BJ8$NAPJ}$K$D$$$F(B}$BDj5A$7$?8e!$(B\|\maketitle| $B$K$h$C$F=PNO$9$k!%(B +$B$J$*Ej9F;~$K$O!$I=Bj$H35MW$,$=$l$>$lJL$N%Z!<%8$K=PNO$5$l!$Cx<TL>$H=jB0$O=PNO(B +$B$5$l$J$$!%(B +% +\begin{Description} +\item[$BI=Bj(B] +\|\title| $B$*$h$S(B \|\etitle| $B$GDj5A$7$?I=Bj$O%;%s%?%j%s%0$5$l$k!%J8;z?t$NB?$$(B +$B$b$N$K$D$$$F$O(B{\dg $B<+F0E*$J2~9T$,9T$J$o$l$J$$(B}$B$N$G!$E,59(B \|\\| $B$rA^F~$7$F2~9T(B +$B$9$k!%$=$N:]$K$O3F9T$O:85M$a$GAHHG$5$l!$$=$N8e:G$bD9$$9T$r4p=`$K$7$F%;%s%?%j(B +$B%s%0$5$l$k!%$J$*OBJ8I=Bj$O4q?t%Z!<%8$N%X%C%@$K$bI=<($5$l$k$N$G!$%X%C%@$KG<$^(B +$B$i$J$$$h$&$JD9$$I=Bj$N>l9g$K$O(B +% +\begin{quote} +\|\title[|\<$B%X%C%@MQI=Bj(B\>\|]{|\<$BI=Bj(B\>\|}| +\end{quote} +% +$B$N$h$&$K!$%X%C%@MQ$KC;$/$7$?$b$N$r%*%W%7%g%s0z?t$H$7$F;XDj$9$k!%(B + +\item[$BCx<TL>$H=jB0(B] +$B3FCx<T$N=jB0$rBh0lCx<T$+$i=g$K(B \|\affilabel| $B$rMQ$$$F%i%Y%k!JBh(B1$B0z?t!K$rIU$1(B +$B$J$,$iDj5A$9$k$H!$5SCm$K(B ${\dagger}1$ $B$d(B ${\dagger}2$ $B$rIU$1$FOBJ8$N=jB0(B +$B!JBh(B2$B0z?t$N(B\|\\|$B$h$jA0!K$H1QJ8$N=jB0!J(B\|\\|$B$h$j8e!K$,=PNO$5$l$k!%$J$*!$J#?t(B +$B$NCx<T$,F1$8=jB0$G$"$k>l9g$K$O!$0lEYDj5A$9$k$@$1$GNI$$!%$^$?O@J8<9I.;~$HH/9T(B +$B;~$H$G$O=jB0$,0[$J$k>l9g$K$O!$(B\|\paffilabel| $B$rMQ$$$F?7$7$$=jB0$rDj5A$9$k!%(B +$B?7$7$$=jB0$O5SCm$K(B${\ast}1$$B$d(B${\ast}2$$B$J$I$rIU$1$F=PNO$5$l$k!%(B + +$BCx<TL>$O(B \|\author| $B$H(B \|\eauthor| $B$GDj5A$7!$J#?t$NCx<T$O(B \|\and| $B$G6h@Z$k!%(B +$B$^$?3FCx<TL>$ND>8e$K(B \|\affiref|\allowbreak\hbox{\|{|\<$B=jB0%i%Y%k(B\>\|}|} +$B$r$*$$$F!JJ#?t2D!K=jB0%i%Y%k(B $B!J(B\|\affilabel| $B$d(B \|\paffilabel| $B$GDj5A$7$?$b(B +$B$N!K$r;2>H$7!$BP1~$9$k5SCm;2>H5-9f$rIU2C$9$k!%(B + +$B$J$*!$OBJ8Cx<TL>$OI,$:(B{\dg $B@+$HL>$rH>3Q!J(BASCII$B!K$N6uGr$G6h@Z$k(B}$B!%(B + +\item[$B35MW(B] +$BOBJ8$N35MW$O(B \|abstract| $B4D6-$NCf$K!$1QJ8$N35MW$O(B \|eabstract| $B4D6-$NCf$K!$(B +$B$=$l$>$l5-=R$9$k!%(B +\end{Description} + +%}{ + +\subsection{$B8+=P$7(B} + +$B@a$d>.@a$N8+=P$7$K$O(B \|\section|, \|\subsection| $B$H$$$C$?%3%^%s%I$r;HMQ$9$k!%(B +\|\section|$B$N8+=P$7$O(B2$B9T$r@j$a!$B>$O(B1$B9T$K=PNO$5$l$k!%(B + +$B!VDj5A!W!$!VDjM}!W$J$I$K$D$$$F$O!$(B\|\newtheorem|$B$GE,594D6-$r@k8@$7!$(B +$B$=$N4D6-$rMQ$$$F5-=R$9$k!%$J$*8+=P$7$O(B{\bf $BDjM}(B1}$B$J$I$N$h$&$KF|K\8l$NBj$HHV(B +$B9f$NAH9g$;$rA[Dj$7$F$$$k$N$G!$Bj$HHV9f$N4V$K$OHy>.$J6uGr$7$+F~$i$J$$!%$b$7(B +{\bf Thorem 1}$B$N$h$&$J1Q8l$HHV9f$NAH9g$;$rMQ$$$k>l9g$K$O!$(B\|\newtheorem*|$B$K(B +$B$h$C$F4D6-$r@k8@$9$l$P!$6uGr$,A^F~$5$l$k!%(B + +%}{ + +\subsection{$BJ8>O$N5-=R(B}\label{sec:desc*}\label{sec:enum} + +\begin{description*} +\item[$B9TAw$j(B] +$B3X2q;o$O(B2$BCJAH$r:NMQ$7$F$*$j!$:81&$NCJ$G9T$N4p=`@~$N0LCV$,0lCW$9$k$3$H$r86B'(B +$B$H$7$F$$$k!%$^$?!$@a8+=P$7$J$I!$9T$N4V3V$rB>$h$j$?$/$5$s$H$C$?J}$,FI$_$d$9$$(B +$B>l=j$G$O!$$3$N86B'$r<i$k$h$&$K%9%?%$%k%U%!%$%k$,<+F0E*$K%9%Z!<%9$rA^F~$9$k!%(B +$B$7$?$,$C$FK\J8Cf$G$O(B \|\vspace| $B$d(B \|\vskip| $B$rMQ$$$?%9%Z!<%9$ND4@0$r9T$J$o(B +$B$J$$$G$$$?$@$-$?$$!%$J$*(B \|\begin{document}| $B$NA0$K%3%^%s%I(B \|\checkline| $B$r(B +$BA^F~$7$F$*$/$H!$K\J8$N3F9T$,;}$D$Y$-4p=`@~$,0u:~$5$l$k$N$G!$9TAw$j$,@5$7$$$+(B +$B$I$&$+$r%A%'%C%/$9$k$3$H$,$G$-$k!%$?$@$7$3$N%3%^%s%I$O869FAwIU;~$K$O;HMQ$7$J(B +$B$$$G$$$?$@$-$?$$!%(B +\item[$B%U%)%s%H%5%$%:(B] +$B$3$N%,%$%I$N0u:~7k2L$+$i$b$o$+$k$h$&$K!$O@J8;o%9%?%$%k$G$OMM!9$JBg$-$5$N%U%)(B +$B%s%H$,;H$o$l$k$,!$$3$l$i$OA4$F%9%?%$%k%U%!%$%k$,<+F0E*$+$DCm0U?<$/A*Br$7$?$b(B +$B$N$G$"$k!%$7$?$,$C$F!$Cx<T$,<+J,$G%U%)%s%H%5%$%:$rJQ99$9$kI,MW$O$J$/!$$+$($C(B +$B$F9TAw$j$N86B'$r<i$kK8$2$K$b$J$k!%$b$7FCDj$N2U=j$G(B1$B9T$KB?$/$NJ8;z$rF~$l$?$$(B +$B$J$I$NM}M3$+$i>.$5$$%U%)%s%H$r;HMQ$9$k>l9g$K$O!$(B\|\small*| $B$"$k$$$O(B +\|\footnotesize*| $B$H$$$&(B\|*|$B$,IU$$$?%3%^%s%I$r;HMQ$7$F$$$?$@$-$?$$!J$3$NFs$D(B +$B0J30$O6X;_!K!%$3$l$i$O4p=`@~4V3V$rJQ$($:$K%U%)%s%H$NBg$-$5$@$1$rJQ99$9$k$b$N(B +$B$G$"$k!%$J$*(B \|\small*| $B$NNc$,(B\ref{sec:config}$B@a$H<!$N%Z!<%8$K<($5$l$F$$$k!%(B + +\item[$B6gFIE@(B] +$B6gE@$K$OA43Q$N!V!%!W!$FIE@$K$OA43Q$N!V!$!W$rMQ$$$k!%$?$@$71QJ8Cf$d?t<0(B +$BCf$G!V(B.$B!W$d!V(B,$B!W$r;H$&>l9g$K$O!$H>3QJ8;z$r;H$&!%!V!#!W$d!V!"!W$O0l@Z;H(B +$B$o$J$$!%(B + +\item[$BA43QJ8;z$HH>3QJ8;z(B] +$BA43QJ8;z$HH>3QJ8;z$NN>J}$K$"$kJ8;z$O<!$N$h$&$K;H$$J,$1$k!%(B +% +\begin{enumerate} +\item $B3g8L$OA43Q$N!V!J!W$H!V!K!W$rMQ$$$k!%C"$7!$1QJ8$N35MW!$?^I=8+=P$7!$=q;o(B +$B%G!<%?$G$OH>3Q$N!V(B($B!W$H!V(B)$B!W$rMQ$$$k!%(B + +\item +$B1Q?t;z!$6uGr!$5-9fN`$OH>3QJ8;z$rMQ$$$k!%$?$@$7!$6gFIE@$K4X$7$F$O!$A09`$G=R$Y(B +$B$?$h$&$JNc30$,$"$k!%(B + +\item +$B%+%?%+%J$OA43QJ8;z$rMQ$$$k!%(B + +\item +$B0zMQId$G$O3+$-$HJD$8$r6hJL$9$k(B. $B3+$-$K$O(B \|``|$B!J(B``$B!K(B $B$rMQ$$!$JD$8$K$O(B \|''| +$B!J(B''$B!K(B $B$rMQ$$$k!%(B +\end{enumerate} + +\item[Overfull$B$H(BUnderfull] +$B@=HG;~$K$O(Boverfull$B$r5/$3$5$J$$$3$H$r86B'$H$7$F$$$k!%=>$C$F!$$^$:Ds=P$9$k%=!<(B +$B%9$,Cx<T$N4D6-$G(Boverfull$B$r5/$3$5$J$$$h$&$K!$J8>O$r9)IW$9$k$J$I$N:GA1$NEXNO$r(B +$BJ'$C$F$$$?$@$-$?$$!%C"$7!$(B\|flushleft| $B4D6-!$(B\|\\|$B!$(B\|\linebreak| $B$J$I$K$h$k(B +$BN>C<B7$($r$7$J$$7A$G$N(Boverfull$B$r2sHr$O!$$G$-$k$@$1Hr$1$F$$$?$@$-$?$$!%$^$?Cx(B +$B<T$N(B +$B4D6-$G$OH/@8$7$J$$(Boverfull$B$,!$0u:~;~$N4D6-$G$OH/@8$9$k$3$H$b$"$k!%$3$N$h$&$J(B +$B;vBV$r$G$-$k$@$12sHr$9$k$?$a$K!$J8Cf$ND9$$?t<0$d(B \|\verb| $B$rHr$1$k!$%Q%i%0%i%U(B +$B$N@hF,IU6a$G$OD9$$1QC18l$r;HMQ$7$J$$!$$J$I$NCm0U$rJ'$C$F$$$?$@$-$?$$!%(B + +$B$^$?!$(B\verb|\\| $B$r%Q%i%0%i%U$N=*$j$G;HMQ$9$k$H(B +% +\begin{Quote}\small* +\|Underfull \hbox (badness 10000) detected| +\end{Quote} +% +$B$N(Bwarning$B$,H/@8$7!$6u9T$,A^F~$5$l$k!%$3$N$h$&$J6u9T$O8+6l$7$/!$$^$?=EMW$J%((B +$B%i!<!&%a%C%;!<%8$r8+F($9860x$K$b$J$k$N$G!$%=!<%9$rDs=P$9$k;~E@$G$OA4$F=|5n$5(B +$B$l$F$$$k$h$&$K$7$F$$$?$@$-$?$$!%FC$K!$2U>r=qMQ4D6-$ND>A0!$(B \|\item| $B$ND>A0!$(B +$B2U>r=qMQ4D6-$NKvHx$J$I$G(B \verb|\\| $B$r;H$&$H!$A0=R$N(Bwarning $B$,=PNO$5$l$k$3$H(B +$B$KCm0U$7$F$$$?$@$-$?$$!%(B +\end{description*} + +%}{ + +\subsection{$B?t<0(B}\label{sec:Item} + +\begin{Itemize} +\item $BK\J8Cf$N?t<0(B\\ +$BK\J8Cf$N?t<0$O(B \|$| $B$H(B \|$|, \|\(| $B$H(B \|\)|, $B$"$k$$$O(B \|math| $B4D6-$N$$$:$l$G(B +$B0O$s$G$b$h$$!%$J$*(B \smash{$\frac{a}{b}$} (\|\frac{a}{b}|) $B$N$h$&$KGX$,9b$$MW(B +$BAG$O8+6l$7$/$+$D9TAw$j$rMp$9$3$H$K$b$J$k$N$G!$;HMQ$7$J$$$h$&$K$7$F$$$?$@$-$?(B +$B$$!%(B + +\item $BJLAH$N?t<0(B\\ +$BJLAH?t<0(B(displayed math)$B$K$D$$$F$O(B {\bf \|$$| $B$H(B \|$$| $B$O;HMQ$7$F$O$J$i$J$$(B}$B!%(B +$B$9$J$o$A(B \|\[| $B$H(B \|\]| $B$G0O$`$+(B, \|displaymath|, \|equation|, \|eqnarray| +$B$N$$$:$l$+$N4D6-$rMQ$$$J$1$l$P$J$i$J$$!%$3$l$i$O(B +% +\begin{equation} +\Delta_l = \sum_{i=l+1}^L\delta_{pi} +\end{equation} +% +$B$N$h$&$K!$%;%s%?%j%s%0$G$O$J$/8GDj;z2<$2$G?t<0$r=PNO$7!$$+$DGX$,9b$$?t<0$K$h(B +$B$k9TAw$j$NMp$l$r5[<}$9$k5!G=$,$"$k!%(B + +\item \|eqnarray|$B4D6-(B\\ +$B8_$$$K4XO"$9$kJLAH$N?t<0$,(B2$B9T0J>eO"B3$7$F8=$l$k>l9g$K$O!$C1$K(B \|\[| $B$H(B \|\]|$B!$(B +$B$"$k$$$O(B \|\begin{equation}| $B$H(B \|\end{equation}| $B$G0O$C$??t<0$r=q$-JB$Y$k$N(B +$B$G$O$J$/!$(B\|\begin|\allowbreak\|{eqnarray}| $B$H(B \|\end{eqnarray}| $B$r;H$C$F!$(B +$BEy9f!J$"$k$$$OITEy9f!K$N0LCV$G=DB7$($r9T$J$C$?J}$,FI$_$d$9$$!%$J$*(B +\|eqnarray| $B$NCf$G$O2~%Z!<%8$,9T$J$o$l$J$$$N$G!$9T?t$,B?$/ESCf$G2~%Z!<%8$,5/(B +$B$3$C$FM_$7$$>l9g$K$O!$(B\|\begin{eqnarray}[s]| $B$N$h$&$K%*%W%7%g%s(B \|[s]| $B$r;X(B +$BDj$9$l$P$h$$!%(B + +\item $B?t<0$N%U%)%s%H(B\\ +{\LaTeX}$B$,I8=`E*$K%5%]!<%H$7$F$$$k$b$N0J30$NFC<l$J?t<0MQ%U%)%s%H$O!$$G$-$k$@(B +$B$1;H$o$J$$$h$&$K$7$F$$$?$@$-$?$$!%$I$&$7$F$b;HMQ$7$J$1$l$P$J$i$J$$>l9g$K$O!$(B +$B$=$N;]?=$7=P$F$$$?$@$/$H$H$b$K!$0u:~9)Dx$K?<$/4XM?$7$F$$$?$@$/$3$H$b$"$k$3$H(B +$B$KN10U$5$l$?$$!%(B +\end{Itemize} + +%}{ + +\subsection{$B?^(B} + +1$BCJ$NI}$K$*$5$^$k?^$O!$(B\figref{fig:single} $B$N7A<0$G;XDj$9$k(B. $B0LCV$N;XDj$K(B \|h| +$B$O;H$o$J$$!%$^$?!$?^$N2<$K(B{\dg $BOBJ8$H1QJ8$NAPJ}$N(B}$B8+=P$7$r!$(B\|\caption| $B$H(B % +\|\ecaption| $B$G;XDj$9$k!%J8;z?t$,B?$$8+=P$7$O$O<+F0E*$K2~9T$7$F:GBgI}$N9T$r(B +$B4p=`$K%;%s%?%j%s%0$9$k$,!$8+=P$7$,(B2$B9T$K$J$k>l9g$K$OE,59(B \|\\| $B$rA^F~$7$F2~9T(B +$B$7$?$[$&$,NI$$7k2L$H$J$k$3$H$,$7$P$7$P$"$k!J(B\figref{fig:single} $B$N1QJ88+=P$7(B +$B$r;2>H!K!%(B + +\begin{figure} +\setbox0\vbox{ +\hbox{\|\begin{figure}[tb]|} +\hbox{\quad \<$B?^K\BN$N;XDj(B\>} +\hbox{\|\caption{|\<$BOBJ88+=P$7(B\>\|}|} +\hbox{\|\ecaption{|\<$B1QJ88+=P$7(B\>\|}|} +\hbox{\|\label{| $\ldots$ \|}|} +\hbox{\|\end{figure}\|}} +\centerline{\fbox{\box0}} +\caption{1$BCJI}$N?^(B} +\ecaption{Single column figure with caption\\ + explicitly broken by $\backslash\backslash$.} +\label{fig:single} +\end{figure} + +2$BCJ$NI}$K$^$?$,$k?^$O!$(B\figref{fig:double} $B$N7A<0$G;XDj$9$k(B. $B0LCV$N;XDj$O(B +\|t| $B$7$+;H$($J$$!%(B + +\begin{figure*} +\setbox0\vbox{\large +\hbox{\|\begin{figure*}[t]|} +\hbox{\quad\<$B?^K\BN$N;XDj(B\>} +\hbox{\|\caption{|\<$BOBJ88+=P$7(B\>\|}|} +\hbox{\|\ecaption{|\<$B1QJ88+=P$7(B\>\|}|} +\hbox{\|\label{| $\ldots$ \|}|} +\hbox{\|\end{figure*}|}} +\centerline{\fbox{\hbox to.9\textwidth{\hss\box0\hss}}} +\caption{2$BCJI}$N?^(B} +\ecaption{Double column figure.} +\label{fig:double} +\end{figure*} + +$B?^$NCf?H$G$OK\J8$H0c$$!$$I$N$h$&$JBg$-$5$N%U%)%s%H$r;HMQ$7$F$b9=$o$J$$(B +$B!J(B\figref{fig:double} $B;2>H!K!%$^$??^$NCf?H$H$7$F!$(Bencapsulate $B$5$l$?(B +PostScript $B%U%!%$%k!J$$$o$f$k(BEPS$B%U%!%$%k!K$rFI$_9~$`$3$H$b$G$-$k!%FI$_9~$_$N(B +$B$?$a$K$O!$%W%j%"%s%V%k$G(B +% +\begin{Quote} +\|\usepackage{graphicx}| +\end{Quote} +% +$B$r9T$C$?>e$G!$(B\|\includegraphics| $B%3%^%s%I$r?^$rKd$a9~$`2U=j$KCV$-!$$=$N0z?t(B +$B$K%U%!%$%kL>!J$J$I!K$r;XDj$9$k!%$^$?(B{\LaTeX} 2.09$B$N>l9g$O!$(B\|epsf| $B$r(B +\|\documentstyle| $B$N%*%W%7%g%s$G;XDj$7!$(B\|\epsfile| $B%3%^%s%I$G?^$rKd$a9~$`!%(B + +$B$3$N@a$rCm0U?<$/8+$k$H!$(B\figref{fig:single} $B$d(B\figref{fig:double} $B$N:G=i$N;2>H(B +$B$O%4%A%C%/BN$G$"$k$N$KBP$7!$(B2$B2sL\0J9_$G$OL@D+BN$G$"$k$N$K5$$E$/$@$m$&!%$3$N(B +$B@ZBX$($OO@J8;o$NEAE}E*BN:[$K4p$E$/$b$N$G!$?^$N;2>H$r!J!V?^(B\hbox{\|\ref{|\<$B%i(B +$B%Y%k(B\>\|}|}$B!W$G$O$J$/!K(B\|\figref{|\<$B%i%Y%k(B\>\|}|$B$rMQ$$$F9T$J$($P<+F0E*$K@.$5$l(B +$B$k!%(B + +%}{ + +\subsection{$BI=(B} + +$BI=$N7S@~$O$J$k$Y$/>/$J$/$9$k$N$,!$;E>e$,$j$r$9$C$-$j$5$;$k%3%D$G$"$k!%7S@~$r(B +$B$D$1$k>l9g$K$O!$0lHV>e$N7S@~$K$OFs=E@~$r;H$$!$:81&$NC<$K$O=D$N7S@~$r$D$1$J$$(B +$B!J(B\tabref{tab:example}$B!K!%I=Cf$N%U%)%s%H%5%$%:$N%G%U%)%k%H$O(B\|\small|$B$G$"$k!%(B + +$B$^$?!$I=$N>e$K(B{\dg $BOBJ8$H1QJ8$NAPJ}$N(B}$B8+=P$7$r!$(B \|\caption|$B$H(B \|\ecaption| +$B$G;XDj$9$k!%I=$N;2>H$O(B \|\tabref{|\<$B%i%Y%k(B \>\|}| $B$rMQ$$$F9T$J$&!%(B + +\begin{table}[b] \caption{$B2U>r=q4D6-$N;HMQ2U=j!JI=$NNc!K(B} \ecaption{Sections +and sub-sections in which list-like environments are used (example of +table).} \label{tab:example} +% $B:81&$N7S@~$O$D$1$:!$0lHV>e$N7S@~$OFs=E@~(B +\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$BEy(B\quad type-2\,: enumerate*$BEy(B}\\ +\multicolumn{4}{l}{type-3\,: Enumerate$BEy(B\quad type-4\,: ENUMERATE$BEy(B}\\ +\end{tabular}\hfil} +\end{table} + +%}{ + +\subsection{$B2U>r=q(B}\label{sec:item*} + +$BO@J8;o$G$O2U>r=q$K4X$9$k7A<0$rFC$KDj$a$F$*$i$:!$>l9g$K1~$8$FMM!9$JMM<0$,MQ$$(B +$B$i$l$F$$$k!%%9%?%$%k%U%!%$%k$G$O!$(B{\LaTeX} $B$N2U>r=qMQ$N4D6-$G$"$k(B +\|enumerate|, \|itemize|, \|description| $B$K(B4$B<oN`$N%U%!%_%j!<$r@_$1!$>u67$K1~(B +$B$8$?;H$$J,$1$,$G$-$k$h$&$K$7$F$$$k!%(B +% +\begin{itemize*} +\item \|enumerate|, \|itemize|, \|description|\\ +{\LaTeX} $B$NI8=`E*$J$b$N$HF1$8!%C"$7%$%s%G%s%F!<%7%g%s$O(B \|enumerate| $B$G$OA43Q(B3 +$BJ8;zJ,!$$=$NB>$OA43Q(B2$BJ8;zJ,$G$"$k!%$^$?(B \|enumerate| $B$N%i%Y%k$O!$I8=`$N(B +% +\begin{quote} +1.\quad (a)\quad i.\quad A. +\end{quote} +% +$B$G$O$J$/!$(B +% +\begin{quote} +(\,1\,)\quad (\,a\,)\quad (\,i\,)\quad (\,A\,) +\end{quote} +% +$B$N$h$&$KA4$F3g8LIU$-$G$"$j!$?t;z$J$I$NA08e$K>.$5$J6uGr$,A^F~$5$l$k!%(B + +\item \|enumerate*|, \|itemize*|, \|description*|\\ +\|enumerate|$B$J$I$H$[$\F1$8$@$,!$%$%s%G%s%F!<%7%g%s$OA43Q(B1$BJ8;zJ,$G$"$k!%(B + +\item \|Enumerate|, \|Itemize|, \|Description|\\ +$BJ8>O$N%$%s%G%s%F!<%7%g%s$r9T$J$o$J$$!%(B + +\item \|ENUMERATE|, \|ITEMIZE|, \|DESCRIPTION|\\ +$BJ8>O$N%$%s%G%s%F!<%7%g%s$r9T$J$o$:!$@hF,9T!J%i%Y%k$,$"$k9T!K$rA43Q(B1$BJ8;zJ,$@(B +$B$1%$%s%G%s%H$9$k!%(B +\end{itemize*} +% +\tabref{tab:example} $B$K<($9$h$&$K(B +$B$3$N%Q%s%U%l%C%H$N3F>O!?@a$K3F!9$N4D6-$N;HMQNc$,$"$k$N$G!$E,59;2>H$5$l$?$$!%(B + +%}{ + +\subsection{$B:81&$NCJ$N9TB7$((B} + +$BJ8>O$N5-=R$N$H$3$m$G$b=R$Y$?$h$&$K!$O@J8;o$G$O:81&$NCJ$G9T$N0LCV$r$=$m$($kI,(B +$BMW$,$"$k!%%f!<%6$,FCJL$J9b$5$N%\%C%/%9$r;H$C$?$?$a$K9T$N0LCV$,Mp$l$F$7$^$&$h(B +$B$&$J>l9g$K$O!$$=$NItJ,$r(B \|\begin|\allowbreak\|{adjustvboxheight}| $B$H(B % +\|\end|\allowbreak\|{adjustvboxheight}| $B$G0O$C$F$$$?$@$-$?$$!%$3$N4D6-$OCfES(B +$BH>C<$J9TAw$j$r5[<}$9$k$?$a$N$b$N$G$"$k!%Nc$($P<!$N!((B +% +\begin{adjustvboxheight} +\begin{quote} +\fbox{$\displaystyle\sum_{i=0}^n i$} +\end{quote} +\end{adjustvboxheight} +% +$B$O!$0J2<$N$h$&$K$7$F=PNO$7$?$b$N$G$"$k!%(B +% +\begin{Quote} +\|\begin{adjustvboxheight}|\\ +\|\begin{quote}|\\ +\|\fbox{$\displaystyle\sum_{i=0}^n i$}|\\ +\|\end{quote}|\\ +\|\end{adjustvboxheight}| +\end{Quote} +% +$B$?$@$7$3$N$h$&$J$b$N$rK\J8Cf$KA^F~$9$k$3$H$r?d>)$7$F$$$k$o$1$G$O$J$$!%(B + +%}{ + +\subsection{$B5SCm(B} +$B5SCm$O(B \|\footnote| $B%3%^%s%I$r;H$C$F=q$/$H!$%Z!<%8C10L$K(B\footnote{$B5SCm$NNc!%(B} +$B$d(B\footnote{$BFs$D$a$N5SCm!%(B}$B$N$h$&$J;2>H5-9f$H$H$b$K5SCm$,@8@.$5$l$k!%$J$*!$(B +$B%Z!<%8Fb$KJ#?t$N5SCm$,$"$k>l9g!$;2>H5-9f$O(B {\LaTeX} $B$r(B2$B2s<B9T$7$J$$$H@5$7$/(B +$B$J$i$J$$$3$H$KCm0U$5$l$?$$!%(B +$B!J(B{\LaTeX} $B%V%C%/(B \cite{latex} $B$N(B156$B%Z!<%8;2>H!%!K(B + +$B$^$?>l9g$K$h$C$F$O!$5SCm$r$D$1$?0LCV$H5SCmK\BN$H$rJL$NCJ$KCV$/J}$,$h$$$3$H$b(B +$B$"$k!%$3$N>l9g$K$O!$(B\|\footnotemark| $B%3%^%s%I$d(B \|\footnotetext| $B%3%^%s%I$r(B +$B;H$C$FBP=h$7$F$$$?$@$-$?$$!%(B + +%}{ + +\subsection{$B;29MJ88%$N;2>H(B} + +$BK\J8Cf$G;29MJ88%$r;2>H$9$k>l9g$K$O!$;29MJ88%HV9f$,J8Cf$NC18l(B +$B$H$7$F;H$o$l$k>l9g$H!$$=$&$G$J$$;2>H$H$G$O!$;HMQ$9$kJ8;z$NBg$-$5$,0[(B +$B$J$k!%A0<T$O(B\|\Cite|$B$K$h$j;2>H$7!$8e<T$O(B\|\cite|$B$K$h$j;2>H$9$k!%$?$H$($P!((B +% +\begin{Quote} +$BJ88%(B \|\Cite{total}| $B$O(B \|\LaTeX\cite{latex}| $B$NAm9gE*$J2r@b=q$G$"$k!%(B +\end{Quote} +% +$B$H=q$/$H!((B +% +\begin{Quote} +$BJ88%(B\Cite{total}$B$O(B\LaTeX\cite{latex}$B$NAm9gE*$J2r@b=q$G$"$k!%(B +\end{Quote} +% +$B$,F@$i$l$k!%(B + +$B$^$?!$0l$D$N(B \|\Cite| $B$"$k$$$O(B \|\cite| $B%3%^%s%I$G;0$D0J>e$NJ88%$r;2>H$7!$$+(B +$B$D$=$l$i$N;2>HHV9f$,O"B3$7$F$$$k>l9g!$(B\Cite{article1,article2,article3}$B$d(B +$B!VJ88%(B\cite{latex,article4,article5,article6}$B!W$N$h$&$K!$<+F0E*$K@h(B +$BF,$HKvHx$NJ88%HV9f$,(B `--' (en-dash) $B$G7k9g$5$l$k!%$J$*!$Hs>o$KB??t$NJ88%$r;2(B +$B>H$7!$$=$l$iA4$F$r(B \|\Cite| $B$d(B \|\cite|$B$G;XDj$9$k$N$,LLE]$J>l9g$O(B +% +\begin{Quote}\raggedright +\|\multiCite{|\<$B@hF,J88%$N%i%Y%k(B\>\|}|\nobreak\hskip-2em\allowbreak + \hspace*{2em}\hbox{\|{|\<$BKvHxJ88%$N%i%Y%k(B\>\|}|}\\ +\|\multicite{|\<$B@hF,J88%$N%i%Y%k(B\>\|}|\nobreak\hskip-2em\allowbreak + \hspace*{2em}\hbox{\|{|\<$BKvHxJ88%$N%i%Y%k(B\>\|}|} +\end{Quote} +% +$B$rMQ$$$F!$(B\multiCite{article1}{book3}$B$d!VJ88%(B +\multicite{booklet1}{unpublished}$B!W$N$h$&$J7k2L$rF@$k$3$H$b$G$-$k!%(B + +%}{ + +\subsection{$B;29MJ88%%j%9%H(B} + +$B;29MJ88%%j%9%H$K$O!$86B'$H$7$FK\J8Cf$G0zMQ$7$?J88%$N$_$rNs5s$9$k!%=g=x$O;2>H(B +$B=g$"$k$$$OBh0lCx<T$NID;z$N%"%k%U%!%Y%C%H=g$H$9$k!%J88%%j%9%H$O(B BiB{\TeX} +$B$H(B \|ipsjunsrt.bst|$B!J;2>H=g!K$^$?$O(B \|ipsjsort.bst|$B!J%"%k%U%!%Y%C%H=g!K$rMQ(B +$B$$$F:n$j!$(B\|\bibliograhpystyle| $B$H(B \|\bibliography| $B%3%^%s%I$K$h$jFI$_9~$`$3(B +$B$H$r86B'$H$9$k(B\footnotemark $B!%$3$l$i$rMQ$$$l$P!$5,Dj$NBN:[$K$"$C$?$b$N$,$G$-(B +% +% 23 $B9T2<$N(B \footnotetext $B;2>H!%(B +% +$B$k$N$G!$$G$-$k$@$1MxMQ$7$F$$$?$@$-$?$$!%(B +$B$J$*$3$N%,%$%I$N;29MJ88%$O!$(B\|bibsample.bib| $B$rJ88%%9%?%$%k(B \|ipsjunsort| $B$G(B +$B=hM}$7$?7k2L$G$"$k$N$G!$N><T$rE,59;2>H$5$l$?$$!%$^$?@=HGMQ$N%U%!%$%k72$K$O(B +\|.bib| $B%U%!%$%k$G$O$J$/(B \|.bbl| $B%U%!%$%k$rI,$:4^$a$k$3$H$KCm0U$5$l$?$$!%(B + +$B0lJ}!$2?$i$+$NM}M3$G(B \|thebibliography| $B4D6-$GJ88%%j%9%H$r!V<j:n$j!W$7$J$1$l(B +$B$P$J$i$J$$>l9g$O!$$3$N%,%$%I$N;29MJ88%%j%9%H$rCm0U?<$/8+$F!$$=$N%9%?%$%k$K$7(B +$B$?$,$C$F$$$?$@$-$?$$!%(B + +%}{ + +\subsection{$B<U<-!$IUO?(B} + +$B<U<-$,$"$k>l9g$K$O!$;29MJ88%%j%9%H$ND>A0$KCV$-!$(B\|acknowledgment|$B4D6-$NCf$K(B +$BF~$l$k!%$3$N4D6-$NCf?H$OEj9F;~$K$O=PNO$5$l$J$$!%(B + +$BIUO?$,$"$k>l9g$K$O!$;29MJ88%%j%9%H$ND>8e$K%3%^%s%I(B \|\appendix| $B$K0z$-B3$$$F(B +$B=q$/!%$J$*IUO?$G$O!$(B\|\section| $B%3%^%s%I$,(B{\bf A.1}$B!$(B{\bf A.2}$B$J$I$N8+=P$7$r(B +$B@8@.$9$k!%$^$?IUO?A4BN$K8+=P$7$r$D$1$k>l9g$K$O!$(B\|\appendix[|\<$B8+=P$7(B\>\|]| % +$B$N$h$&$K8+=P$7$r%*%W%7%g%s0z?t$H$7$FM?$($k!%(B + +\footnotetext{$B$3$N%,%$%I$O%U%!%$%k$r0l$D$K$9$k$?$a$K(B +{\TT thebibliography} $B4D6-$rMQ$$$F$$$k$,!$$=$NCf?H$O(BBiB{\TeX}$B$G:n@.$7$?$b$N(B +$B$G$"$k!%(B +$B$^$?!$$3$N(Bfootnote$B$O:8%+%i%`$K%^!<%/$,$"$k$N$K(Bfootnote$B<+BN$O(B +$B1&%+%i%`$K8=$o$l$F$$$k!%$3$l$O4JC1$J%H%j%C%/$G<B8=$G$-$k!%%=!<%9%U%!%$(B +$B%k;2>H!%(B} +% 31 $B9T>e$N(B \footnotemark $B;2>H!%(B + +%}{ + +\subsection{$BCx<T>R2p(B}\label{sec:DESC} + +$BK\J8$N:G8e!J(B\|\end{document}| $B$ND>A0!K$K!$0J2<$N$h$&$KCx<T>R2p$r5-=R$9$k!%(B +% +\begin{quote} +\|\begin{biography}|\\ +\|\member{|\<$BBh0lCx<TL>(B\>\|}|\\ +\mbox{}\quad\<$BBh0lCx<T$N>R2p(B\>\\ +\|\member{|\<$BBhFsCx<TL>(B\>\|}|\\ +\mbox{}\quad\<$BBhFsCx<T$N>R2p(B\>\\ +\mbox{}\quad $\ldots\ldots\ldots$ \\ +\|\end{biography}| +\end{quote} +% +$B$J$*Cx<T$,3X@82q0w$"$k$$$OHs2q0w$N>l9g$O!$@52q0wMQ$N(B \|\member| $B$NBe$o$j$K(B +$B2<5-$rMQ$$$k!%(B +% +\begin{DESCRIPTION} +\item[$B3X@82q0w(B]$B!'(B\|\stmember{|\<$BCx<TL>(B\>\|}| +\item[$BHs2q0w(B\phantom{$B$"(B}]$B!'(B\|\nomember{|\<$BCx<TL>(B\>\|}| +\end{DESCRIPTION} +% +$B$J$*Cx<T>R2p$OEj9F;~$K$O=PNO$5$l$J$$!%(B + +%}{ + +\subsection{$B%Z!<%8?t$N8+@Q$j(B} + +$BEj9FMQ%9%?%$%k$G$O(B1$B%Z!<%8$,(B\(35\hbox{$B;z(B}\times32\hbox{$B9T(B}=1120\hbox{$B;z(B}\)$B!$(B +$B$^$?@=HGMQ$G$O(B\(24\hbox{$B;z(B}\times46\hbox{$B9T(B}\times2\hbox{$BCJ(B}=2208\hbox{$B;z(B}\) +$B$G$"$k!%$7$?$,$C$FAF$$8+@Q$j$H$7$F!$@=HG;~$K$OEj9F;~$NH>J,$N%Z!<%8?t$K$J$k$H(B +$B9M$($k$3$H$,$G$-$k!%$?$H$($P!$$3$N%,%$%I$OEj9FMQ$G$O(B19$B%Z!<%8!$@=HGMQ$G$O(B9$B%Z!<(B +$B%8$G$"$k$N$G!$$[$\8+@Q$C$?DL$j$G$"$k!%(B + +$B$^$?Ej9FMQ$N%U%!%$%k$r@=HGMQ$K$9$k$N$O4JC1$G$"$k$N$G!$Ej9F;~$K$"$i$+$8$a$I$N(B +$B$h$&$K@=HG$5$l$k$+$r;n$;$P!$$b$C$HNI$$8+@Q$j$,F@$i$l$k!%(B + +%}{ + +\section{$B$*$o$j$K(B} + +$BO@J8;o$N(B {\LaTeX} $B2=$O(B10$BG/0J>e$N1?MQ<B@S$,$"$k$,!$2r7h$5$l$F$$$J$$LdBjE@$b(B +$B3'L5$H$O$$$($J$$!%(B +$B$3$l$i$rCx<T$NJ}!9$N8f6(NO$r6D$.$D$D!$>/$7$G$b;H$$$d$9$/(B +$B$9$k$?$a$N2~NI$r2C$($F$$$/$D$b$j$G$"$k!%$=$3$G!$%9%?%$%k!&%U%!%$%k$K4X$9$kMW(B +$BK>$d0U8+$r!$@'Hs(B +% +\begin{Quote} +\|texnicians@ipsj.or.jp| +\end{Quote} +% +$B$^$G$*4s$;$$$?$@$-$?$$!%$^$?5;=QE*$J<ALd$bF1$8%"%I%l%9$G<u$1IU$1$k$,!$$=$NB>(B +$B$N0lHLE*$J<ALd$K$D$$$F$O(B +% +\begin{Quote} +\|editt@ipsj.or.jp| +\end{Quote} +% +$B$K$*4s$;$$$?$@$-$?$$!%(B + +\begin{acknowledgment} +$BO@J8;o$N(B {\LaTeX}$B2=$K8f6(NO$$$?$@$$$?;0H~0u:~!J3t!K!$!J3t!K%&%k%9!$$J$i$S$K(B +$B;n9T$N$?$a$N%\%i%s%F%#%"$r$*4j$$$7$?Cx<T$N3'MM$K!$6`$s$G46<U$N0U$rI=$9$k!%(B +\end{acknowledgment} + +%}{ + +\begin{thebibliography}{10} + +\bibitem{latex} +Lamport, L.: {\em A Document Preparation System {\LaTeX} User's Guide \& + Reference Manual}, Addison Wesley, Reading, Massachusetts (1986). +\newblock $B!J(BCooke, E., et al.$BLu!'J8=q=hM}%7%9%F%`(B {\LaTeX}$B!$%"%9%-!<=PHG6I(B + (1990)$B!K(B. + +\bibitem{total} +$B0KF#OB?M!'(B{\LaTeX} $B%H!<%?%k%,%$%I!$=(OB%7%9%F%`%H%l!<%G%#%s%0(B (1991). + +\bibitem{article1} +$B:y0f5.J8!'D>4Q<g5AO@M}$H7?M}O@!$>pJs=hM}!$(B Vol.~30, No.~6, pp.\ 626--634 + (1989). + +\bibitem{article2} +$BLn8}7r0lO:!$BgC+!!??!'(BOSI$B$N<B8=$H$=$N2]Bj!$>pJs=hM}!$(B 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} +$BEDCf(B{$B@5<!(B}$B!$B<>>!!LP!$;32<!!LP!'(B9$BCJ?t(B7$B<!M[E*(BRunge-Kutta$BK!$N:GE,2=$K$D$$$F!$>p(B% +$BJs=hM}3X2qO@J8;o!$(B 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} +$BEDCf(B{$B@5<!(B}$B$[$+!'(B9$BCJ?t(B7$B<!M[E*(BRunge-Kutta$BK!$N<!?t>r7o<0$N2r$K$D$$$F!$>pJs=hM}3X(B% +$B2qO@J8;o!$(B Vol.~33, No.~12, pp.\ 1506--1511 (1992). + +\bibitem{book3} +Chang, C.~L. and Lee, R. C.~T.: {\em Symbolic Logic and Mechanical Theorem + Proving}, Academic Press, New York (1973). +\newblock $B!JD9Hx??!$DT0f=a0lLu(B: $B7W;;5!$K$h$kDjM}$N<+F0>ZL@(B, $BF|K\%3%s%T%e!<%?(B% + $B6(2q(B (1983)$B!K(B. + +\bibitem{booklet1} +$B?7@$Be%3%s%T%e!<%?5;=Q3+H/5!9=!'Bh8^@$Be%3%s%T%e!<%?%W%m%8%'%/%H$N35MW!$(B{FGCS'% +92}$B$K$FG[I[(B (1992). + +\bibitem{unpublished} +$B>pJs=hM}3X2qO@J8;oJT=80Q0w2q!'(B{\LaTeX}$B$K$h$kO@J8:n@.$N%,%$%I!JBh(B1$BHG!K(B (1995). +\newblock $B!JO@J8Cx<T$KG[I[!K(B. + +\end{thebibliography} + +%}{ + +\appendix +\section{$B8&5f2qO@J8;oMQ%3%^%s%I(B}\label{sec:app-sig} + +$B3F8&5f2qO@J8;o!J%H%i%s%6%/%7%g%s!K$K$O3F!9$K8GM-$N%5%V%?%$%H%k!$N,>N!$DLHV$,(B +$B$"$k!%@=HGMQ869F$G$O!$0J2<$N%3%^%s%I$r(B\|\begin{document}|$B$NA0$KCV$/$3$H$K$h(B +$B$j!$$3$l$i$N>pJs$rM?$($k!%(B +% +\begin{itemize}\item[] +\|\transaction{|\<$BN,>N(B\>\|}{|\<$B9f?t(B\>\|}{|\<$BDLHV(B\>\|}| +\end{itemize} +% +$B$J$*(B\<$BN,>N(B\>$B$O0J2<$N$$$:$l$+$G$"$j!$(B\<$B9f?t(B\>$B$H(B\<$BDLHV(B\>$B$O3X2q$"$k$$$O8&5f2qO@(B +$BJ8;oJT=80Q0w2q$N;X<($K4p$E$$$FM?$($k!%(B +% +\begin{itemize}%{ +\item +\|PRO|$B!J%W%m%0%i%_%s%0!K(B +\item +\|TOM|$B!J?tM}%b%G%k2=$H1~MQ!K(B +\item +\|TOD|$B!J%G!<%?%Y!<%9!K(B +\item +\|ACS|$B!J%3%s%T%e!<%F%#%s%0%7%9%F%`!K(B +\item +\|CVIM|$B!J%3%s%T%e!<%?%S%8%g%s$H%$%a!<%8%a%G%#%"!K(B +\item +\|TBIO|$B!J(BBioinformatics$B!K(B\footnote{% +TBIO$B$*$h$S(BSLDM$B$O1QJ8O@J8;o$G$"$k$N$GOBL>$O$J$$!%(B} +\item +\|SLDM|$B!J(BSystem LSI Design Methodology$B!K(B\footnotemark[1] +% +\end{itemize}%} +% +$B$^$?>e5-$N(B\<$B9f?t(B\>$B$OH/9T7n$H$OO"F0$7$F$$$J$$$N$G!$3X2q$"$k$$$OJT=80Q0w2q$N;X(B +$B<($K4p$E$-H/9T7n$r!((B +% +\begin{itemize}\item[] +\|\setcounter{|{\bf $B7n?t(B}\|}{|\<$BH/9T7n(B\>\|}| +\end{itemize} +% +$B$K$h$C$F;XDj$9$k!%(B + +$B$3$NB>!$0J2<$N3F@a$G<($9$h$&$K!$$$$/$D$+$NO@J8;o$K8GM-$N5!G=$r<B8=$9$k$?$a$N(B +$B%3%^%s%I$J$I$,MQ0U$5$l$F$$$k!%(B + +%}{ + +\subsection{$B!V%W%m%0%i%_%s%0!W8GM-5!G=(B} + +$B!VO@J8;o!'%W%m%0%i%_%s%0!W$K$OO@J80J30$K!$%W%m%0%i%_%s%08&5f2q$G$N8&5fH/I=$N(B +$BFbMF9<35$,4^$^$l$F$$$k!%$3$NFbMF9<35$O!$(B\|\documentclass|$B$^$?$O(B +\|\documentstyle|$B$N%*%W%7%g%s$H$7$F(B\|abstract|$B$r;XDj$7$?>e$G!$(B +\ref{sec:config}$B@a$N(B\|\maketitle|$B$^$G$NFbMF$+$i$J$k%U%!%$%k!J$9$J$o$AK\J8$,(B +$B$J$$%U%!%$%k!K$+$i@8@.$9$k!%$J$*(B\|\|{\bf $B<uIU(B}$B$d(B\|\|{\bf $B:NO?(B}$B$OITMW$G$"$k$,!$(B +$BBe$o$j$KH/I=G/7nF|$r!((B +% +\begin{itemize}\item[] +\|\|{\bf $BH/I=(B}\|{|\<$BG/(B\>\|}{|\<$B7n(B\>\|}{|\<$BF|(B\>\|}| +\end{itemize} +% +$B$K$h$j;XDj$9$k!%(B + +%}{ + +\subsection{$B!V?tM}%b%G%k2=$H1~MQ!W8GM-5!G=(B} + +$B!VO@J8;o!'?tM}%b%G%k2=$H1~MQ!W$NO@J8$G$O!$<uIU$d:NO?$NF|IU0J30$K:F<uIUF|IU$r(B +$B5-:\$9$k$h$&$K;X<($5$l$k$3$H$,$"$k!%$=$N>l9g$K$O!((B +% +\begin{itemize}\item[] +\|\|{\bf $B:F<uIU(B}\|{|\<$BG/(B\>\|}{|\<$B7n(B\>\|}{|\<$BF|(B\>\|}| +\end{itemize} +% +$B$K$h$j;XDj$9$k!%$J$*J#?t2s$N:F<uIU$,9T$o$l$?>l9g!$>e5-$N%3%^%s%I$r7+$jJV$7;H(B +$BMQ$9$k!%(B + +%}{ + +\subsection{$B!V%G!<%?%Y!<%9!W8GM-5!G=(B} + +$B!VO@J8;o!'%G!<%?%Y!<%9!W$NO@J8$NC4EvJT=80Q0w$N;aL>$O!((B +% +\begin{itemize}\item[] +\|\edInCharge{|\<$B;aL>(B\>\|}| +\end{itemize} +% +$B$K$h$j;XDj$9$k!%(B + +%}{ + +\subsection{$B!V(BBioinformatics$B!W8GM-5!G=(B} + +Trans.\ Bioinformatics (TBIO)$B$K8GM-$N5!G=$rMxMQ$9$k$?$a$K$O!$(B\|\documentclass| +$B!J$^$?$O(B\|\documentstyle|$B!K$N%*%W%7%g%s$G(B\|TBIO|$B$r;XDj$9$k!%$J$*(BTBIO$B$O1QJ8O@(B +$BJ8;o$G$"$k$N$G!$(B\|TBIO|$B%*%W%7%g%s$N;XDj$K$h$C$F<+F0E*$K(B\|english|$B%*%W%7%g%s(B +$B$,;XDj$5$l$?$b$N$H$_$J$5$l$k!%$7$?$,$C$F!((B +% +\begin{itemize}\item[] +\|\documentclass[TBIO]{ipsjpaper}| +\end{itemize} +% +$B$N$h$&$K(B\|english|$B%*%W%7%g%s$r>JN,$9$k$3$H$,$G$-$k!%$^$?$3$N%*%W%7%g%s$N;XDj(B +$B$K$h$j!$0J2<$N%3%^%s%I$,;HMQ2DG=$H$J$k!%(B +% +\begin{itemize}%{ +\item +$BO@J8$N<oJL$O!((B +% +\begin{itemize}\item[] +\|\TBIOpapercategory{|\<$B<oJL(B\>\|}| +\end{itemize} +% +$B$rMQ$$$F!$(B\|original|, \|survey|, \|database| $B$N$$$:$l$+$r;XDj$9$k!%$3$N7k2L!$(B +``{\it Original Paper}'', ``{\it Survey Paper}'' $B$^$?$O(B ``{\it +Database\slash Software Paper}'' $B$N$$$:$l$+$,@hF,%Z!<%8$N%?%$%H%k$N:8>e$KI=(B +$B<($5$l$k!%$J$*$3$N%3%^%s%I$,M?$($i$l$J$1$l$P(B \|original| $B$H$_$J$5$l$k!%(B + +\item +$BC4EvJT=80Q0w$N;aL>$O!((B +% +\begin{itemize}\item[] +\|\edInCharge{|\<$B;aL>(B\>\|}| +\end{itemize} +% +$B$K$h$j;XDj$9$k!%(B + +\item +$B::FI2aDx$G>r7oIU:NO?$H$J$C$?O@J8$N:F<uIUF|$O!((B +% +\begin{itemize}\item[] +\|\rereceived{|\<$BG/(B\>\|}{|\<$B7n(B\>\|}{|\<$BF|(B\>\|}| +\end{itemize} +% +$B$K$h$j;XDj$9$k!%(B + +\end{itemize}%} +% +$B$J$*8e$N(B2$B$D$N%3%^%s%I$N;HMQ$O%*%W%7%g%J%k$G$"$j!$3X2q$"$k$$$OJT=80Q0w2q$+$i(B +$B$N>pJsDs6!$d;X<($,$J$1$l$P>JN,$7$F$b9=$o$J$$!%(B + +%}{ + +\begin{biography} +\member{$BCfEg(B $B9@(B} +$B><OB(B31$BG/@8!%(B +$B><OB(B56$BG/5~ETBg3XBg3X1!9)3X8&5f2J>pJs9)3X@l96=$;N2]Dx=$N;!%(B +$BF1G/;0I)EE5!(B($B3t(B)$BF~<R!%(B +$B?dO@%^%7%s$N8&5f3+H/$K=>;v!%(B +$BJ?@.(B4$BG/$h$j5~ETBg3X9)3XIt=u65<x!%(B +$BJ?@.(B9$BG/$h$jK-665;=Q2J3XBg3X65<x!%(B +$BJ?@.(B18$BG/$h$j5~ETBg3X65<x!%(B +$BJBNs7W;;5!$N%"!<%-%F%/%A%c!$%W%m%0%i%_%s%08@8l$N<BAuJ}<0$K4X$9$k8&5f$K=>;v!%(B +$B9)3XGn;N!%><OB(B63$BG/852,>^!$J?@.(B5$BG/:d0f5-G0FCJL>^<u>^!%(BIEEE-CS, ACM, ALP, TUG +$B3F2q0w!%(B +% +\member{$B@FF#(B $B9/8J(B} +$B><OB(B28$BG/@8!%(B +$B><OB(B53$BG/1Q9q%(%;%C%/%9Bg3X$h$j(BM.Sc.(AI$B8&5f(B)$B!%(B +$B><OB(B54$BG/El5~Bg3XBg3X1!9)3X7O8&5f2J>pJs9)3X@l96=$;N2]Dx=$N;!%(B +$BF1G/EEEE8x<RF~<R!%(B +$B><OB(B59$BG/$+$i(B60$BG/$K$+$1$FJ)9q(BINRIA$B5R0w8&5f0w!%(B +$B8=:_(BNTT$B4pAC8&5f=j<g448&5f0w!%(B +$B?M9)CNG=(B(Symbol Grounding Problem)$B!$7W;;5!%=%U%H%&%'%"(B(\TeX $B$NF|K\8l2=(B)$B!$(B +$BG'CN2J3X(B($BM}2r%W%m%;%9$N2rL@(B)$B$J$I$N8&5f$K=>;v!%(B +$BLu=q$K!X%a%?%^%8%C%/!&%2!<%`!Y(B(D. $B%[%U%9%?%C%?!<Cx(B, $B6&Lu(B, $BGrMH<R(B)$B$J$I!%(B +$B?M9)CNG=3X2q!$%=%U%H%&%'%"2J3X2q!$F|K\G'CN2J3X2q!$(BCognitive Science Society$B!$(B +TUG$B3F2q0w!%(B +\end{biography} +\end{document}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/ipsjcommon.sty Mon Mar 24 01:30:34 2008 +0900 @@ -0,0 +1,995 @@ +% Copyright (C) 1995-2007 by Hiroshi Nakashima, Yasuki Saito and +% The Editorial Board of the IPSJ Journal +% +% ipsjcommon.sty 15-Jun-07 by Hiroshi Nakashima (ver 2.12) +% (revision history deleted) +% ipsjcommon.sty 24-Apr-95 by Hiroshi Nakashima (ver 1.0) + +%%%%%% Sectioning Commands %%%%%% + +% \section: 2 rows +% others: 1 row +% +% Note that \paragraph and \subparagraph act as \subsubsubsection and +% \subsubsubsubsection resp. +% +% The form of sectioning header is; +% <1 Kanji sp> \the<sect-command> [`.' if \section] <1 Kanji sp> <title> +% 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\ipsj@j@app \fi}}}% 2.12(1b) +\def\sec@oappendix[#1]{\sec@sec*{\ifDS@english Appendix: \else + \ipsj@j@app\hskip\jspaceskip\fi #1}} % 2.12(1b) +\def\appendixprefix{A.} +\def\appendixpostfix{} + +\def\acknowledgment{\par + {\bf \ifDS@english Acknowledgments \else\ipsj@j@ack\fi}%% 2.12(1b) + \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-row" 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 MOJI-DORI +% +% \@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 MOJI-DORI +% +% \@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 MOJI-DORI of sectioning tilte. The rule is; +% 2 - 4 Kanji char -> 5 Kanji char +% otherwise -> natural width +% +\def\sec@mojidori#1{\ifDS@english #1\else % 2.12(1b) + \setbox0\hbox{#1}\settowidth\@tempdimb{\ipsj@j@a}% % 2.12(1b) + \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\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 \ is null but stretchable and (hardly) breakable. % 2.09(1) + +\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\z@ plus\fontdimen\thr@@\font \penalty5000\relax} + % 2.09(1) + \ifDS@english\else \ipsj@defcolonforbib \fi} % 2.12(1b)(2) + +% (removal of \bib@refname) % 2.12(1a) + +\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~} +\def\fname@figures{Figs.\,} % 2.12(8)>> +\def\fname@Figures{Figures~} +\def\fname@tables{Tables~} % 2.12(8)<< +\else +\def\fname@figure{\ipsj@j@fig\fref@nobreak} % 1.06(1), 2.12(1b) +\let\fname@Figure\fname@figure +\def\fname@table{\ipsj@j@tab\fref@nobreak} % 1.06(1), 2.12(1b) +\let\fname@figures\fname@figure % 2.12(8)>> +\let\fname@Figures\fname@figure +\let\fname@tables\fname@table % 2.12(8)<< +\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 \boxmaxdepth\dp\strutbox % 2.12(7c) + \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{\box\@currbox\vfil}} + % 2.10(1) +% 2.12(7a,b)>> +\let\ipsj@cflb\@cflb +\let\ipsj@comflelt\@comflelt +\def\@cflb{\let\ipsj@botfigrule\botfigrule \let\botfigrule\vfil + \let\@comflelt\ipsj@comfleltbot \ipsj@cflb + \let\@comflelt\ipsj@comflelt \let\botfigrule\ipsj@botfigrule} +\def\ipsj@comfleltbot#1{% + \setbox#1\vbox to\ht#1{\vfil\unvbox#1\unskip}\ipsj@comflelt{#1}} +% 2.12(7a,b)<< + +\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\figsref{\fref@refs\fname@figures} % 2.12(8)>> +\def\Figsref{\fref@refs\fname@Figures} +\def\tabsref{\fref@refs\fname@tables} +\let\Tabsref\tabsref +\def\fref@refs#1{\@ifstar{\fref@irefs\relax{#1}}{\fref@irefs\bf{#1}}} +\def\fref@irefs#1#2#3{\def\fref@list{#3}\@tempswafalse \@tempcnta\z@ + \@for\fref@elem:=\fref@list\do{% + \@ifundefined{fref@r@\fref@elem}{\@tempswatrue}{}% + \advance\@tempcnta\@ne}% + \ifx#1\relax \@tempswafalse\fi + \ifDS@english {\if@tempswa #1\fi #2}\let\fref@temp\relax + \else \def\fref@temp{#2}\fi + \@for\fref@elem:=\fref@list\do{% + \if@tempswa \fref@iref{#1}{\fref@temp}{\fref@elem}% + \else \fref@temp\fref@doref{\fref@elem}\fi + \advance\@tempcnta\m@ne + \ifnum\@tempcnta=\@ne \fref@and + \else\ifnum\@tempcnta>\@ne \fref@comma \fi\fi}} +\ifDS@english +\def\fref@and{ and~} +\def\fref@comma{, } +\else +\def\fref@and{\ipsj@j@comma} +\let\fref@comma\fref@and +\fi + +\ifDS@printer +\def\figures{{\bf\fname@figures}} +\def\Figures{{\bf\fname@Figures}} +\def\tables{{\bf\fname@tables}} +\let\Tables\tables +\def\Ref{\fref@iref\bf\relax} +\fi % 2.12(8)<< + +\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}% + \def\protect{\noexpand\protect\noexpand}% + \xdef\@thefnmark{\thempfn}}\@footnotemark\@footnotetext}} +\def\footnotemark{\@ifnextchar[%] + {\@xfootnotemark}{{\PF@adjustfnote \stepcounter{footnote}% + \def\protect{\noexpand\protect\noexpand}% + \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 + \@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{$\@thefnmark$} % 2.12(3) +\def\@makefnmarkdagger{$\@thefnmark$} +\def\@makefnmarkast{$\@thefnmark$} % 2.12(3) +\let\@makefnmarkforfn\@makefnmarkstar + +\def\@makefnmark{\smash{$^{\@thefnmark}$}} % 2.12(3) + % 1.04(2d) + % smashed to make it + % zero height + +\def\thefootnote{\ifnum\c@footnote>0\relax{\star}\number\c@footnote\fi} + % 2.12(3) + +%%%%%% 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\ipsj@j@citescript +% % 2.06(2) + % 2.12(4) + \def\@cite@punct{,}\m@th^{\hbox{\scriptsize#1}}$\spacefactor\@m} +\def\@Citey#1{\let\@cite@tiestyle\ipsj@j@citetext % 2.12(4) + % 1.04(1)>> + \ifDS@english \def\@cite@punct{,\space\penalty\@highpenalty} + \else\def\@cite@punct{\ipsj@j@comma}\fi#1\spacefactor\@m} + % 1.04(1)<< + % 2.12(1b) +\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}% + \def\protect{\noexpand\protect\noexpand}% + \@tempcnta\m@ne \let\@celt\@compress@cite \@cite@list + \let\protect\relax \@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{\@cite@tie{\protect\@cite@tiestyle}% + % 2.12(4) + \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}% + \@cite@tie\ipsj@j@citescript \@p@citen{#2}}} % 2.12(4) +\def\multiCite{\protect\@p@multiCite} +\def\@p@multiCite#1#2{\@Citey{\@p@citen{#1}\@cite@tie\relax % 2.12(4) + \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} + +\def\adj@setbhd#1{\setbox0\hbox{#1} % 2.12(1c)>> + \@tempdima\baselineskip \advance\@tempdima-\ht0 \advance\@tempdima\dp0 + \edef\adj@bhd{\the\@tempdima}} % 2.12(1c)<< + +% 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} + + +%%%%%% 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@} + +%% For heading of TBIO papers +\ifDS@TBIO % 2.11(1)>> +\def\TBIOpapercategory#1{\def\ipsj@TBIO@pcat{#1}\ignorespaces} +\def\ipsj@TBIO@pcat{original} +\def\ipsj@TBIO@pcat@original{Original Paper} +\def\ipsj@TBIO@pcat@survey{Survey Paper} +\def\ipsj@TBIO@pcat@database{Database/Software Paper} +\def\ipsj@TBIO@pcatref{\@ifundefined{ipsj@TBIO@pcat@\ipsj@TBIO@pcat}% + {\ipsj@warning{TBIO paper category \ipsj@TBIO@pcat\space is undefined.}}% + \relax + \@nameuse{ipsj@TBIO@pcat@\ipsj@TBIO@pcat}} +\fi % 2.11(1)<< + + +% 2.12(1a)>> +\let\ipsj@j@citescript\scriptsize % 2.12(4)>> +\let\ipsj@j@citetext\normalsize +\def\@cite@tie#1{\hbox{#1--}} % 2.12(4)<< +\def\bib@refname{References} +\adj@setbhd{A} + +\ifipsj@nonjp \let\next\endinput \else \let\next\relax \fi +\next + +\def\ipsj@j@a{あ} +\def\ipsj@j@app{付録} +\def\ipsj@j@ack{謝辞} +\def\ipsj@j@bib{参考文献} +\def\ipsj@j@fig{図} +\def\ipsj@j@tab{表} +\def\ipsj@j@comma{,} +\def\ipsj@j@technote{テクニカルノート} +\def\ipsj@j@invited{招待論文} +\def\ipsj@j@sigrec{研究会推薦論文} +\def\ipsj@j@talkabst{発表概要} +\def\ipsj@j@presently{現在,} +\def\ipsj@j@jipsj{情報処理学会論文誌} +\def\ipsj@j@regpaper{論文} +\def\ipsj@j@contactto{連絡先} +\def\ipsj@j@abstract{概要} +\def\ipsj@j@colon{:} +\def\ipsj@j@year{年} +\def\ipsj@j@month{月} +\def\ipsj@j@day{日} +\def\ipsj@j@lp{(} +\def\ipsj@j@rp{)} +\def\ipsj@j@edinch{担当編集委員} +\def\ipsj@j@rerec{再受付} +\def\ipsj@j@received{受付} +\def\ipsj@j@accepted{採録} +\def\ipsj@j@presented{発表} +\def\ipsj@j@member{正会員} +\def\ipsj@j@stmember{学生会員} +\def\ipsj@j@nomember{非会員} + +\ifDS@english\else \ifDS@draft\else +\sec@setskips{\ipsj@j@a} +\fi\fi + +\expandafter\let\csname c@巻数\endcsname\c@volume +\expandafter\let\csname c@号数\endcsname\c@number +\expandafter\let\csname c@月数\endcsname\c@number +\expandafter\let\csname c@年数\endcsname\c@year + +\def\ipsj@sig@PRO@j{プログラミング} +\def\ipsj@sig@TOM@j{数理モデル化と応用} +\def\ipsj@sig@TOD@j{データベース} +\def\ipsj@sig@HPS@j{ハイパフォーマンスコンピューティングシステム} +\def\ipsj@sig@CVIM@j{コンピュータビジョンとイメージメディア} +\def\ipsj@sig@ACS@j{コンピューティングシステム} % 2.09(2) + +\def\ra@nengo{平成} %% Change here when ... +\let\受付\received +\let\採録\accepted +\let\発表\presented % 2.07(7) +\let\再受付\rereceived + +\def\々{\hskip\jintercharskip\hbox to\jspaceskip{\hfil 々\hfil}%% 2.12(5) + \hskip\jintercharskip} + +\ifDS@english\else \ifDS@draft\else +{\fs@sec \@tempdima7\jspaceskip +\xdef\bib@refname{\hbox to\the\@tempdima{\jintercharskip\fill\ipsj@j@bib}}} +\adj@setbhd\ipsj@j@a +\fi\fi + +\def\ipsj@j@colon@command{{\nobreak % 2.12(2)>> + \hbox to.7\jspaceskip{:\hss}\allowbreak + \@tempdima.3\jspaceskip \hskip\@tempdima minus\@tempdima + \allowbreak + \hskip\z@ minus-\@tempdima}\ignorespaces} +\def\ipsj@defcolonforbib{\let\:\ipsj@j@colon@command} +\ifDS@printer \ipsj@defcolonforbib \fi % 2.12(2)<< + + +%%%%%% 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 % 2.12(6) +\prebreakpenalty`〜=\@M % 2.12(6) + +\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)<< +% 2.12(1a)<<
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/ipsjdrafts.sty Mon Mar 24 01:30:34 2008 +0900 @@ -0,0 +1,392 @@ +% Copyright (C) 1995-2007 by Hiroshi Nakashima, Yasuki Saito and +% The Editorial Board of the IPSJ Journal +% +% ipsjdrafts.sty 15-Jun-07 by Hiroshi Nakashima (ver 2.12) +% (revision history deleted) +% ipsjdrafts.sty 24-Apr-95 by Hiroshi Nakashima (ver 1.0) + +%%%%%% Fonts %%%%%% +% All font loading are removed. + +\ifipsj@nonjp\else % 2.12(1a) +\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 \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{\ifipsj@nonjp \the\font \else % 2.12(1a) + \ifASCII \the\jfont \else \sixdm \fi\fi}} +\let\fn@fontvi\fn@fontv + +\@normalsize + +\ifipsj@nonjp\else % 2.12(1a) +\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\fi % 1.06(2) << + +\@tempdima.55\baselineskip +\edef\sec@aboveskip{\the\@tempdima} +\@tempdima.45\baselineskip +\edef\sec@belowskip{\the\@tempdima} + +\ifipsj@nonjp\else % 2.12(1a) +\if@LaTeX@e\else % 2.04(2) +\let\latex@bf\bf % 1.06(1) +\def\bf{\dg\latex@bf} % 1.06(1) +\fi\fi % 2.04(2) + + +%%%%%% Page Layout Parameters %%%%%% + +\newdimen\@mojihaba +\ifipsj@nonjp % 2.12(1a)>> + \@mojihaba11.54659pt + \let\jspaceskip\@mojihaba +\else + \@mojihaba\jspaceskip +\fi % 2.12(1a)<< + +% 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\ifipsj@nonjp\else + \@@topmargin\topmargin \fi\fi\fi % 2.00(4),2.12(1a) + +\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 <<paper-category>>} +% \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 +% <<contact info>> +% \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 no longer required even in draft. +\def\contact{\long\def\mkt@contact} +\def\mkt@contact{} % 2.12(4) + +\def\@maketitle{\newpage\thispagestyle{empty} + \leftline{\LARGE + \ifDS@TBIO \ipsj@TBIO@pcatref % 2.11(1) + \else\ifDS@english \ifDS@technote Technical Note\else + Regular Paper\fi + \else \ifDS@technote \ipsj@j@technote % 2.12(1b) + \else \ipsj@j@regpaper\fi\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 +% % 2.12(4)>> +% \ifDS@anonymous\else % 2.10(1)>> +% \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 \ipsj@j@contactto \fi% 2.12(1b) +% \endgroup +% \begin{itemize}\large\item[]\mkt@contact\end{itemize} +% \vfill\vfill +% \fi % 2.10(1)<< +% % 2.12(4)<< + \newpage \setcounter{page}{1}\def\thepage{\roman{page}} + \ifDS@english\else \@abstract \centerline{\bf \ipsj@j@abstract} +% % 2.12(1b) + \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}{\ipsj@j@presently #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{[\ipsj@j@member\##1]}} +\def\mkt@nomember{\ \hbox{[\ipsj@j@nomember]}} +\def\mkt@stmember#1{\ \hbox{[\ipsj@j@stmember\##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} % 2.12(1b)>> +\newcounter{number} +\newcounter{year} % 2.12(1b)<< + +\def\ps@plain{\let\@mkboth\@gobbletwo + \def\@oddhead{\@checklines}\let\@evenhead\@oddhead + \def\@oddfoot{\rm \hfil\thepage\hfil}\let\@evenfoot\@oddfoot} + +\def\transaction#1#2#3{} % 2.11(2) +\long\def\copyrightnotice#1{} % 2.11(2) + +% \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\ipsj@j@year \the\month\ipsj@j@month \the\day\ipsj@j@day} + % 2.12(1b) +\fi + + +%%%%%% Output Routine %%%%%% +% Nothing at all. + + +%%%%%% Biography %%%%%% +% Almost nothing. + +\def\received#1#2#3{} % 2.12(1b)>> +\def\accepted#1#2#3{} +\def\rereceived#1#2#3{} % 2.11(2)>> +% definition of \released is removed % 2.12(2) +\def\edInCharge#1{} % 2.11(2)<< +% % 2.12(1b)<< + +\def\biography{\let\member\@gobble \let\nomember\@gobble \let\stmember\@gobble + \ifDS@english \let\author\@gobble \fi % 2.12(3) + \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} + +% % 2.12(4)>> +%\let\id@enddocument\enddocument +%\def\enddocument{\clearpage +% \ifDS@anonymous\else \unvbox\ack@box \fi % 2.10(1) +% \id@enddocument} +% % 2.12(4)<< + +\endinput
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/ipsjpapers.cls Mon Mar 24 01:30:34 2008 +0900 @@ -0,0 +1,16 @@ +% Copyright (C) 1995-2007 by Hiroshi Nakashima, Yasuki Saito and +% The Editorial Board of the IPSJ Journal +% +% ipsjpapers.cls 13-Mar-07 by Hiroshi Nakashima (ver 2.12) +% (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}[2007/06/15 ver 2.12] +\input{ipsjpapers.sty} +\endinput
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/ipsjpapers.sty Mon Mar 24 01:30:34 2008 +0900 @@ -0,0 +1,1919 @@ +% Copyright (C) 1995-2007 by Hiroshi Nakashima, Yasuki Saito and +% The Editorial Board of the IPSJ Journal +% +% ipsjpapers.sty 15-Jun-07 by Hiroshi Nakashima (ver 2.12) +% (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\ifipsj@nonjp \ipsj@nonjpfalse % 2.12(1a) +\newif\ifASCII \ASCIIfalse +\ifx\jintercharskip\undefined \ASCIItrue +\ifx\kanjiskip\undefined \ipsj@nonjptrue % 2.12(1a) +\fi\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) +\newif\ifDS@anonymous \DS@anonymousfalse % 2.10(1) +\newif\ifDS@TBIO \DS@TBIOfalse % 2.11(1) +\newif\ifDS@online \DS@onlinefalse % 2.12(4a) + +\if@LaTeX@eN +\DeclareOption{printer}{\DS@printertrue} % 2.09(1) + % 2.12(2) +\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{anonymous}{\DS@anonymoustrue} % 2.10(1) +\DeclareOption{TBIO}{\DS@TBIOtrue \DS@englishtrue} % 2.11(1) +\DeclareOption{online}{\DS@onlinetrue \DS@printertrue \DS@englishtrue} + % 2.12(4a) +\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.12) <15 Jun 2007>.} % 2.05(1) +\fi % \ifx + +\def\ds@printer{\relax} % 2.09(1) +\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) +\def\ds@anonymous{\DS@anonymoustrue} % 2.10(1) +\def\ds@TBIO{\DS@TBIOtrue \DS@englishtrue} % 2.11(1) +\def\ds@online{\DS@onlinetrue \DS@printertrue \DS@englishtrue} % 2.12(4a) + +% 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 % \if@LaTeX@eN +% 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 % \ifx % 2.03(1) << + +\ifipsj@nonjp \DS@englishtrue \fi % 2.12(1a) + +%%%%%% 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{\ifipsj@nonjp \the\font \else \the\jfont \fi} % 2.12(1b) + \expandafter\global\expandafter\let\expandafter#1\@tempa}} % 2.00(5)<< + +\iffalse % ASCII LaTeX2e printer settings is removed % 2.12(2a) +\else % ASCII LaTeX2e non-printer +\ifipsj@nonjp % 2.12(1b)>> +\ipsj@declare@font\fn@fontv\rmfamily\@vpt +\ipsj@declare@font\fn@fontvi\rmfamily\@vpt +\ipsj@declare@font\fn@fontvii\rmfamily\@vpt +% no declaration for \fn@fontxv % 2.12(1b)<< +\else % \ifipsj@nonjp +\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\fi %\ifipsj@nonjp\iffalse + +\else % \ifASCII = 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 % \ifASCII +% 2.00(4) << + +\else % \if@LaTeX@e = LaTeX 2.09 % 2.00(4) +%% Fonts for ASCII TeX. (H.N.) +\ifASCII +\iffalse % ASCII LaTeX 2.09 printer settings is removed % 2.12(2a) +\else \ifipsj@nonjp\else % 2.12(1b) +\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\fi % \ifipsj@nonjp\iffalse + +%% 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 + +\ifipsj@nonjp % 2.12(1b)>> +\def\old@vpt{\old@@vpt} +\def\old@vipt{\old@@vipt} +\def\old@viipt{\old@@viipt} +\def\old@viiipt{\old@@viiipt} +\def\old@ixpt{\old@@ixpt} +\def\old@xpt{\old@@xpt} +\def\old@xipt{\old@@xipt} +\def\old@xiipt{\old@@xiipt} +\def\old@xivpt{\old@@xivpt} % 2.12(1b)<< +\else % \ifipsj@nonjp +\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} +\fi % \ifipsj@nonjp + % 2.00(6) + % 1.06(2) + +%% ASCII doesn't have \dg nor \dm. (H.N.) +\ifipsj@nonjp\else % 2.12(1b) +\def\dg{\protect\pdg} +\def\dm{\protect\pdm} +%% Redefine \gt and \mc +\def\gt{\protect\pdg} +\def\mc{\protect\pdm} +\let\pdm\relax +\fi % \ifipsj@nonjp + +\else % \ifASCII +%% 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 % \ifASCII +\fi % \if@LaTeX@e + +\ifx\jfsize\undefined \newcount\jfsize \fi % 1.06(2) + +\ifASCII % 1.06(3),2.00(6)>> +\ifipsj@nonjp\else % 2.12(1b) +\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)<< +\fi % \ifipsj@nonjp +\else % \ifASCII % 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 % \if@LaTeX@e +\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 % \if@LaTeX@e % 2.00(7)<< +\fi % \ifASCII % 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 \ifipsj@nonjp\else % 2.12(1b) +\DeclareOldFontCommand{\mc}{\normalfont\mcfamily}{\mathmc} +\DeclareOldFontCommand{\gt}{\normalfont\gtfamily}{\mathgt} +\fi\fi\fi % \ifipsj@nonjp\ifASCII\if@LaTeX@eN + +\ifASCII \ifipsj@nonjp\else % 2.12(1b) +\def\dm{\mc} +\def\dg{\gt} +\fi\fi\fi % \ifipsj@nonjp\ifASCII\if@LaTeX@e % 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} +\let\ipsj@setjspaceskip\relax % 2.12(1b)>> +\ifASCII \ifipsj@nonjp\else +\def\ipsj@setjspaceskip{\jspaceskip1zw\relax} +\fi\fi % \ifipsj@nonjp\ifASCII % 2.12(1b)<< + % 1.06(4),2.00(9),2.04(3)<< + +%% \vipt etc. are redefined to use appropriate Japanese fonts. +\else % \if@LaTeX@e % 2.00(9) +\ifipsj@nonjp\else % 2.12(1b) +\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\fi % \ifipsj@nonjp\if@LaTeX@e % 2.00(9) + +\if@LaTeX@e % 1.06(5) +\let\@ixptboldmath\relax % 1.06(5) +\else % 1.06(5) +% 1.02(2) >> +\iffalse % printer setting removed % 2.12(2a) +\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 % \iffalse +% 1.02(2) << +\fi % \if@LaTeX@e % 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 % \ifDS@english +% 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\baselineskip20\@Q} % 2.12(7) +\let\fs@etitle\LARGE +\let\fs@title\huge + +\@normalsize + % 2.00(7) +\ifx\setjglues\undefined\else +\setjglues +\fi + +% \sec@setskips{<A of hiragana>} is moved to ipsjcommon % 2.12(1c) +\fi % \ifDS@englisth + +\if@LaTeX@e\else \ifipsj@nonjp\else % 2.00(11),2.12(1b) +\let\latex@bf\bf % 1.06(6) +\def\bf{\latex@bf \dg} % 1.06(6) +\fi\fi % 2.00(11) + + +%%%%%% Page Layout Parameters %%%%%% + +\newdimen\@mojihaba +\ifipsj@nonjp \let\jspaceskip\@mojihaba \fi % 2.12(1b) + +\ifDS@printer % 2.12(2b) >> +\voffset=-20mm +\hoffset=-14mm +\fi % 2.12(2b) << + +\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 % \if@tempswa +\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 % \ifDS@techrep % 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 % \if@tempswa + +\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)} + +\newif\ifipsj@trans \ipsj@transfalse % 2.12(4f) +\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@TBIO \ipsj@TBIO@pcatref % 2.11(2) + \else\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\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 \ipsj@j@technote % 2.12(1c)>> + \else\ifDS@invited + \ipsj@j@invited % 2.06(1) + \else\ifDS@sigrecommended + \ipsj@j@sigrec % 2.06(1) + \else \ipsj@j@talkabst % 2.07(7) + \fi\fi\fi % 2.12(1c)<< + \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 + \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{$^{\affi@thefnmark}$}}}% % 2.12(7) + \gdef\affi@thefnmark{}\leavevmode\let\+\ignorespaces + \settowidth\@tempdima{\ifipsj@nonjp x\else\ipsj@j@a \fi}% 2.12(1c) + \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{% + \ifipsj@nonjp \mkt@anhbox{#1 #2}\else + \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-\lastskip + \hskip\@tempskipa#2\hskip-\lastskip\@makefnmark}\fi\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. +% 2.12(7)>> +\newcounter{affi@footnote} \c@affi@footnote\z@ +\newcounter{affi@pfootnote} \c@affi@pfootnote\z@ +\def\affilabel{\affi@deflabels\affi@affilabel} +\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 \affi@label{affi@footnote}\@makefnmarkdagger} +\def\affi@paffilabel#1#2{\begingroup + \def\protect{\noexpand\protect\noexpand}% + \def\\{\noexpand\\Presently with \ignorespaces}% + \edef\@tempa{\ifDS@english Presently with \else % 1.04(1d) + \ipsj@j@presently\fi#2}% % 2.12(1c) + \affi@label{affi@pfootnote}\@makefnmarkast{#1}\@tempa} +\def\affi@label#1#2#3#4{\stepcounter{#1}% + \@ifundefined{affi@r@#3}% + {\expandafter\xdef\csname affi@r@#3\endcsname{% + \csname the#1\endcsname}}% + {\ipsj@warning{Affiliation label `#3' multiply defined}}% + % 2.00(3) + \let\affi@footnotetext\relax\let\\\relax + \def\protect{\noexpand\protect\noexpand}% + \xdef\@thanks{\@thanks + \affi@footnotetext + {\csname the#1\endcsname}{\protect#2}{#4}}\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}}% + {\def\protect{\noexpand\protect\noexpand}% + \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}}} + +\def\theaffi@footnote{{\dagger}\number\c@affi@footnote} +\def\theaffi@pfootnote{{\ast}\number\c@affi@pfootnote} + +\def\thanks#1{\begingroup + \stepcounter{affi@pfootnote}\let\thempfn\theaffi@pfootnote + \let\@thefnmark\thempfn \@makefnmark + \let\affi@footnotetext\relax\let\\\relax + \def\protect{\noexpand\protect\noexpand}% + \xdef\@thanks{\@thanks + \affi@footnotetext{\thempfn}{\protect\@makefnmarkast}{#1}}% + \endgroup} +% 2.12(7)<< + +% \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! +\ifDS@printer % 2.12(4d)>> +\def\LastPageNumber{\gdef\ipsj@last@page} +\fi % 2.12(4d)<< + +% 2.00(16)>> +\let\latex@document\document +\def\document{\latex@document + \ifDS@private\else + \ifDS@online \global\c@page\ipsj@olh@page % 2.12(4) + \else \global\c@page\c@volpageoffset \fi \fi} % 2.07(8) +\let\c@volpage\c@page % for backward compatibility +\def\thevolpage{\thepage} % for backward compatibility +% 2.00(16)<< + +\newcounter{volume} % 2.12(1c)>> +\newcounter{number} +\let\c@month\c@number % 2.07(4) +\newcounter{year} % 2.12(1c)<< + +\ifDS@printer % 2.12(4b)>> +\def\SetOnlineHeaderInfo#1#2#3#4{% % <vol><year><month><page>[<lastpage>] + \def\ipsj@olh@vol{#1}% + \def\ipsj@olh@year{#2}% + \def\ipsj@olh@month{#3}% + \def\ipsj@olh@page{#4}% + \@ifnextchar[%] + \ipsj@olh@setlastpage\relax} +\def\ipsj@olh@setlastpage[#1]{\def\ipsj@olh@lastpage{#1}} +\fi % 2.12(4b)<< + +% 2.07(4)>> +\ifDS@online % 2.12(4b) +\def\@thevolno{Vol.~\ipsj@olh@vol} % 2.12(4b) +\else +\def\@thevolno{Vol.~\arabic{volume}\hskip\@mojihaba No.~% % 2.12(1c)>> + \ifipsj@trans SIG\ \ipsj@sig@numa(\ipsj@sig@code\ \ipsj@sig@numb)% + \else \arabic{number}\fi} % 2.12(1c)<< +\fi +% 2.07(4)<< +% 2.00(15)>> +% 2.12(1c)(4b)>> +\def\@monthyear{% + \ifDS@online \ipsj@monthyear\ipsj@olh@month\ipsj@olh@year + \else \c@year1959 \advance\c@year\c@volume + \ipsj@monthyear\c@number\c@year \fi} +\def\ipsj@monthyear#1#2{\ifcase#1\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 \number#2} +% 2.12(1c)(4b)<< +% 2.00(15)<< + +% 2.07(2)>> +\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 + \ifDS@online\else % 2.12(4c) + \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 \fi} + +\def\ipsj@sig@PRO@e{Programming} +\def\ipsj@sig@TOM@e{Mathematical Modeling and Its Applications} +\def\ipsj@sig@TOD@e{Databases} +\def\ipsj@sig@HPS@e{High Performance Computing Systems} +\def\ipsj@sig@CVIM@e{Computer Vision and Image Media} +\def\ipsj@sig@ACS@e{Advanced Computing Systems} % 2.09(2) +\def\ipsj@sig@TBIO@e{Bioinformatics} % 2.11(3) +\def\ipsj@sig@SLDM@e{System LSI Design Methodology} % 2.12(8) +% 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.12(9)>> +\def\ipsj@lc@Rtop{\rlap{\smash{\rule[-\headsep]{0.05mm}{10mm}% + \rule[-\headsep]{10mm}{0.05mm}}}} +\def\ipsj@lc@Ltop{\llap{\smash{\rule[-\headsep]{10mm}{0.05mm}% + \rule[-\headsep]{0.05mm}{10mm}}}} +\def\ipsj@lc@Lbot{\llap{\smash{\raisebox{-\textheight}{% + \raisebox{-\headsep}{\rule{10mm}{0.05mm}\rule[-10mm]{0.05mm}{10mm}}}}}} +\def\ipsj@lc@Rbot{\rlap{\smash{\raisebox{-\textheight}{% + \raisebox{-\headsep}{\rule[-10mm]{0.05mm}{10mm}\rule{10mm}{0.05mm}}}}}} + +\def\ps@layoutcheck{\ps@headings + \let\ipsj@lc@evenhead\@evenhead + \def\@evenhead{\ipsj@lc@Lbot \ipsj@lc@Ltop + \ipsj@lc@evenhead + \ipsj@lc@Rtop \ipsj@lc@Rbot}% + \let\ipsj@lc@oddhead\@oddhead + \def\@oddhead{\ipsj@lc@Lbot \ipsj@lc@Ltop + \ipsj@lc@oddhead + \ipsj@lc@Rtop \ipsj@lc@Rbot}% + \let\ipsj@lc@myheadings\ps@myheadings + \def\ps@myheadings{\ipsj@lc@myheadings + \let\ipsj@lc@fpoddhead\@oddhead + \def\@oddhead{\ipsj@lc@Lbot \ipsj@lc@Ltop + \ipsj@lc@fpoddhead + \ipsj@lc@Rtop \ipsj@lc@Rbot}% + \let\@evenhead\@oddhead}} +% 2.12(9)<< + +% 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)<< + +\def\ipsj@online@trans{IPSJ Digital Courier} % 2.12(4c) +\def\ipsj@online@journal{IPSJ Digital Courier} % 2.12(4c) +% 2.02(2),2.07(4)>> +\ifDS@english +\def\hdr@tipsj{\smash{% + \ifDS@online % 2.12(4c)>> + \ifipsj@trans + \ipsj@online@trans + \else + \ipsj@online@journal\fi % 2.12(4c)<< + \else + \ifipsj@trans + IPSJ Transactions on \ipsj@sig@title + \else + IPSJ Journal\fi + \fi}} +\else +\def\hdr@tipsj{\smash{\ipsj@j@jipsj % 2.12(1c)>> + \ifipsj@trans \ipsj@j@colon \ipsj@sig@title \fi}} % 2.12(1c)<< +\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)>> + % register marks are removed % 2.12(2d) +% 1.05(2)<< + } +\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\ipsj@j@year \the\month\ipsj@j@month \the\day\ipsj@j@day} + % 2.12(1c) +\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)<< +% % 2.12(4d)>> + \if@filesw \write\@auxout{\string\gdef\string\ipsj@lastpage + {\number\c@page}}\fi % 2.12(4d)<< + \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\ifipsj@nonjp\else + \@@topmargin\topmargin \fi\fi\fi % 2.00(13),2.12(1b) + \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. + +% \received and \accepted define the dates of receipt/acceptance. +% They are put at the end of manuscript (just before biographies) by +% \ra@putrcvacc. + +% 2.12(1c)>> +% \def\ra@nengo is moved to the tail % 2.12(1c) +\ifDS@english +\def\received#1#2#3{\def\ra@received{\ra@date{#1}{#2}{#3}}\ignorespaces} +\def\accepted#1#2#3{\def\ra@accepted{\ra@date{#1}{#2}{#3}}\ignorespaces} + % 2.07(5) +% \rereceived is moved below % 2.12(5) +\def\presented#1#2#3{\def\ra@presented{\ra@date{#1}{#2}{#3}}\ignorespaces} + % 2.07(7) +\ifDS@printer % 2.12(4e)>> +\def\ReleasedToOnline#1#2#3{\ifDS@online + \def\ra@released{\ra@date{#1}{#2}{#3}}\fi} +\fi % 2.12(4e)<< +\def\ra@received{??? ??, ????} +\def\ra@accepted{??? ??, ????} +\def\ra@presented{??? ??, ????} % 2.07(7) +\def\ipsj@TOD@editor{(Editor in Charge:\quad{\it\ipsj@TOD@ename\/})} + % 2.07(6) + % 2.12(6) + +\ifDS@TBIO % 2.11(4)>> +\def\ipsj@TOD@editor{(Communicated by\quad{\it\ipsj@TOD@ename\/})}% 2.12(6) +\fi % 2.11(4)<< +\else +\def\received#1#2#3{\def\ra@received{#1&}\ignorespaces} +\def\accepted#1#2#3{\def\ra@accepted{#1&}\ignorespaces} + % 2.07(5) +% \rereceived is moved below % 2.12(5) +\def\presented#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@j@lp\ipsj@j@edinch + \quad\ipsj@TOD@ename\ipsj@j@rp} % 2.07(6) + % 2.08(2) + % 2.12(6) +\fi +% aliasing of \received etc. is moved to the tail. + +% 2.12(1c)<< + +\let\ra@elt\relax % 2.12(5)>> +\def\rereceived#1#2#3{\ifx\ra@rereceived\undefined + \def\ra@rereceived{\ra@elt{}{#1}{#2}{#3}}\def\ra@rerecnum{1}% + \else + \@tempcnta\ra@rerecnum \advance\@tempcnta\@ne + \edef\ra@rerecnum{\number\@tempcnta}% + \edef\ra@rereceived{\ra@rereceived + \ra@elt{(\ra@rerecnum)}{#1}{#2}{#3}}% + \fi \ignorespaces} % 2.12(5)<< + +\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)} + \def\ra@elt##1##2##3##4{% % 2.12(5)>> + \llap{(Revised##1 \ra@date{##2}{##3}{##4})}} + \ifx\ra@rereceived\undefined \else \ra@rereceived \fi + % 2.12(5)<< + \llap{(Accepted \ra@accepted)} + \ifx\ra@released\undefined\else % 2.12(4e) + \llap{(Released \ra@released)}\fi % 2.12(4e) + \hbox{} + \else % 2.12(1c)>> + \def\ra@elt##1##2##3##4{##2&##3&##4&\ipsj@j@rerec##1)\cr}% + % 2.12(5) + \halign{(\ra@nengo\hskip\jasciikanjiskip + \hfil##\hfil\hskip\jasciikanjiskip \ipsj@j@year + \hskip\jasciikanjiskip& + \hfil##\hfil\hskip\jasciikanjiskip \ipsj@j@month + \hskip\jasciikanjiskip& + \hfil##\hfil\hskip\jasciikanjiskip \ipsj@j@day + &##\hfil\cr % 2.07(5)>> + \ra@received \ipsj@j@received)\cr + \ifx\ra@rereceived\undefined \else \ra@rereceived \fi + % 2.12(5) + \ra@accepted \ipsj@j@accepted)\cr\multispan3\cr}\fi}% + % 2.07(5)<< + % 2.12(1c)<< + \hskip\@mojihaba} + \nobreak\vskip-2\baselineskip\prevdepth\z@\hbox{} + \ifDS@printer \ifDS@english % 2.12(4d)>> + \ifipsj@trans + \ifDS@online \noindent \ipsj@refer@trans \par \fi + \else + \ifDS@online\else \noindent \ipsj@refer@online \par \fi + \fi \fi \fi % 2.12(4d)<< + \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@jdate#1#2#3{#1&} +\def\ra@putpresented#1&{\rightline{% % 2.12(1c)>> + (\ra@nengo\hskip\jasciikanjiskip % 2.07(7)>> + #1\hskip\jasciikanjiskip \ipsj@j@year \hskip\jasciikanjiskip + #2\hskip\jasciikanjiskip \ipsj@j@month \hskip\jasciikanjiskip + #3\hskip\jasciikanjiskip \ipsj@j@day\ipsj@j@presented)}} + % 2.07(7)<< + % 2.12(1c)<< + +% 2.12(4d)>> +\def\ipsj@space{\hskip\z@ plus\fontdimen\thr@@\font \penalty5000\relax} +\def\ipsj@refer@trans{% + (Paper version of this article can be found in the IPSJ Transactions on + \csname ipsj@sig@\ipsj@sig@code @e\endcsname, + Vol.\ipsj@space\number\c@volume, + No.\ipsj@space SIG\ipsj@sig@numa\ipsj@space + (\ipsj@sig@code\ipsj@space\ipsj@sig@numb), + pp.\ipsj@space\number\c@volpageoffset--\penalty5000\relax + \ipsj@thelastpage\c@volpageoffset\ipsj@last@page.)} +\def\ipsj@refer@online{% + (Online version of this article can be found in the + IPSJ Digital Courier, + Vol.\ipsj@space\ipsj@olh@vol, + pp.\ipsj@space\ipsj@olh@page--\penalty5000\relax + \ipsj@thelastpage\ipsj@olh@page\ipsj@olh@lastpage.)} +\def\ipsj@thelastpage#1#2{\begingroup + \@tempcnta#1\relax + \ifDS@online \@tempcntb\ipsj@olh@page + \else \@tempcntb\c@volpageoffset\fi + \ifx#2\undefined + \ifx\ipsj@lastpage\undefined \def\@tempa{???}% + \else \advance\@tempcntb-\ipsj@lastpage + \advance\@tempcnta-\@tempcntb + \def\@tempa{\number\@tempcnta}% + \fi + \else \def\@tempa{#2}% + \fi + \@tempa \endgroup} +% 2.12(4d)<< + +\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{}{\ipsj@j@member}}% %2.12(3a)(1c)>> + \def\nomember{\bio@member{}{}}% + \def\stmember{\bio@member{}{\ipsj@j@stmember}}% + \def\xmember{\bio@member{}}% + \ifDS@printer + \def\Kmember{\bio@Kmember{\ipsj@j@member}}% + \def\Knomember{\bio@Kmember{}}% + \def\Kstmember{\bio@Kmember{\ipsj@j@stmember}} + \let\Kxmember\bio@Kmember + \fi %2.12(3a)(1c)<< + \ifDS@english \let\author\nomember % 2.12(3d)>> + \ifDS@printer \let\Kauthor\Knomember \fi + \fi % 2.12(3d)<< + \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@Kmember#1#2#3{\bio@member{#3}{#1}{#2}} % 2.12(3a) +\def\bio@member#1#2#3{\bio@egroup\let\bio@egroup\bio@@egroup % 2.12(3b)>> + \@next\@currbox\@freelist\relax + {\@latexerr{Too many unprocessed floats and biographies}\@ehb}% + \def\@tempa{#3}\def\@tempb{#1}% + \global\setbox\@currbox\hbox\bgroup + \@tempswatrue + \ifx\@tempb\@empty + \ifDS@printer \@tempswafalse + \else \raise\bio@lineheight\copy\bio@picbox + \fi + \else + \setbox\@tempboxa\hbox to\z@{\vtop{\vskip\z@ + \hbox{\includegraphics + [width=\bio@picwidth,height=\bio@picheight]{#1.eps}}}% + \hss} + \dp\@tempboxa\dp\bio@picbox + \raise\bio@lineheight\box\@tempboxa + \fi % 2.12(3b)<< + \vtop\bgroup + \let\par\\ + \if@tempswa \hangindent\bio@indent\hangafter-\bio@hangafter \fi + \ifDS@english {\bf #3\ }% + \else {\bf\bio@putauthor#3\+ \@nil}% + \def\@tempb{#2}\ifx\@tempb\@empty\else % 2.12(3c) + \ipsj@j@lp#2\ipsj@j@rp\fi{\@@par}\fi % 2.12(3c)(1c) + \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{% + \ifipsj@nonjp#1 #2\else + \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\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
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/ipsjsort-e.bst Mon Mar 24 01:30:34 2008 +0900 @@ -0,0 +1,1188 @@ +% ipsjsort-e.bst 15-Jun-07 by Hiroshi Nakashima (ver 2.12) +% ipsjsort.bst 30-Jan-02 by Hiroshi Nakashima (ver 2.00) +% ipsjsort.bst 28-Dec-93 by Hiroshi Nakashima (ver 1.00) +% jssst.bst tomura@etl.go.jp (Satoru Tomura) +% BibTeX standard bibliography style `jplain' + % version 0.10 for JBibTeX versions 0.10 or later, JLaTeX version 2.09. + % by Shouichi Matsui, matsui@denken.junet + +ENTRY + { address + author + booktitle + chapter + edition + editor + howpublished + institution + journal + key + month + note + number + organization + pages + publisher + school + series + title + type + volume + year + } + {} + { label } + +INTEGERS { output.state before.all mid.sentence after.sentence after.block } + +INTEGERS { before.year } + +FUNCTION {init.state.consts} +{ #0 'before.all := + #1 'mid.sentence := + #2 'after.sentence := + #3 'after.block := + #4 'before.year := % 1.00(1) +} + +STRINGS { s t } + +FUNCTION {output.nonnull} +{ 's := + output.state mid.sentence = + { ", " * write$ } + { output.state after.block = + { add.period$ write$ + newline$ + "\newblock " write$ + } + { output.state before.all = + 'write$ + { output.state before.year = % 1.00(1) + { " " * write$ } + { add.period$ " " * write$ } + if$ + } + if$ + } + if$ + mid.sentence 'output.state := + } + if$ + s +} + +FUNCTION {output} +{ duplicate$ empty$ + 'pop$ + 'output.nonnull + if$ +} + +FUNCTION {required.argument} +{ 't := + empty$ + {"Missing required argument " t * " in " * cite$ * warning$} + 'skip$ + if$ +} + +FUNCTION {required.exclusive.or.argument} +{ 't := + empty$ + { 's := + empty$ + { t " or " * s * " is missing in " * cite$ * warning$} + 'skip$ + if$ + } + { 's := + empty$ + 'skip$ + { "You can use only one of " t * " and " * s * " in " * cite$ * warning$} + if$ + } + if$ +} + +FUNCTION {required.and.or.argument} +{ 't := empty$ + { 's := empty$ + { "there's no " t * " and/or " * s * cite$ * warning$ } + 'skip$ + if$ + } + { pop$ pop$ } + if$ +} + +FUNCTION {optional.series.volume.number.argument} +{ series empty$ + { volume empty$ + { number empty$ + 'skip$ + { "there's a number but no series in " cite$ * warning$ } + if$ + } + { number empty$ + { "there's a volume but no series in " cite$ * warning$ } + { "you can use only one of volume and number in " cite$ * warning$} + if$ + } + if$ + } + { volume empty$ + { number empty$ + { "there's a series but neither volume nor number in " cite$ * warning$ } + 'skip$ + if$ + } + { number empty$ + 'skip$ + { "you can use only one of volume and number in " cite$ * warning$ } + if$ + } + if$ + } + if$ +} + +FUNCTION {output.bibitem} +{ newline$ + "\bibitem{" write$ + cite$ write$ + "}" write$ + newline$ + before.all 'output.state := +} + +FUNCTION {fin.entry} +{ add.period$ + write$ + newline$ +} + +FUNCTION {new.block} +{ output.state before.all = + 'skip$ + { after.block 'output.state := } + if$ +} + +FUNCTION {new.sentence} +{ output.state after.block = + 'skip$ + { output.state before.all = + 'skip$ + { after.sentence 'output.state := } + if$ + } + if$ +} + +FUNCTION {not} +{ { #0 } + { #1 } + if$ +} + +FUNCTION {and} +{ 'skip$ + { pop$ #0 } + if$ +} + +FUNCTION {or} +{ { pop$ #1 } + 'skip$ + if$ +} + +FUNCTION {new.block.checka} +{ empty$ + 'skip$ + 'new.block + if$ +} + +FUNCTION {new.block.checkb} +{ empty$ + swap$ empty$ + and + 'skip$ + 'new.block + if$ +} + +FUNCTION {new.sentence.checka} +{ empty$ + 'skip$ + 'new.sentence + if$ +} + +FUNCTION {new.sentence.checkb} +{ empty$ + swap$ empty$ + and + 'skip$ + 'new.sentence + if$ +} + +FUNCTION {field.or.null} +{ duplicate$ empty$ + { pop$ "" } + 'skip$ + if$ +} + +FUNCTION {emphasize} +{ duplicate$ empty$ + { pop$ "" } + { "{\em " swap$ * "}" * } + if$ +} + +INTEGERS { nameptr namesleft numnames } + +FUNCTION {format.names} % 1.00(4), 2.00(4) +{ 's := + #1 'nameptr := + s num.names$ 'numnames := + numnames 'namesleft := + { namesleft #0 > } + { s nameptr "{vv }{ll}{, jj}{, f.}" format.name$ 't := + nameptr #1 > + { namesleft #1 > + { ", " * t * } + { t "others" = + {" et al." * } + {" and " * t * } + if$ + } + if$ + } + 't + if$ + nameptr #1 + 'nameptr := + namesleft #1 - 'namesleft := + } + while$ +} + +FUNCTION {format.authors} +{ author empty$ + { "" } + { author format.names } + if$ +} + +FUNCTION {add.colon} % 2.00(5) +{ ": " * +} + +FUNCTION {format.editors.inparen} % 2.00(6) +{ editor empty$ + { "" } + { editor format.names + editor num.names$ #1 > + {", eds." *} + {", ed." *} + if$ + } + if$ +} + +FUNCTION {format.editors} +{ editor empty$ + { "" } + { editor format.names + editor num.names$ #1 > + {"(eds.)" *} + {"(ed.)" *} + if$ + } + if$ +} + +FUNCTION {n.dashify} +{ 't := + "" + { t empty$ not } + { t #1 #1 substring$ "-" = + { t #1 #2 substring$ "--" = not + { "--" * + t #2 global.max$ substring$ 't := + } + { { t #1 #1 substring$ "-" = } + { "-" * + t #2 global.max$ substring$ 't := + } + while$ + } + if$ + } + { t #1 #1 substring$ * + t #2 global.max$ substring$ 't := + } + if$ + } + while$ +} + +FUNCTION {format.date} +{ before.year 'output.state := % 1.00(1) + year empty$ + { month empty$ + { "" } + { "there's a month but no year in " cite$ * warning$ + "" % 1.00(5) + } + if$ + } + { "(" year ")" * * } % 1.00(5) + if$ +} + +FUNCTION {tie.or.space.connect} +{ duplicate$ text.length$ #3 < + { "~" } + { "\ " } % 1.00(6) + if$ + swap$ * * +} + +FUNCTION {output.volume} +{ + volume empty$ + 'skip$ + { "Vol.~" volume * output} + if$ + +} + +FUNCTION {output.number} +{ + number empty$ + 'skip$ + { "No.~" number * output} + if$ +} + +FUNCTION {output.series.volume.number} +{ series empty$ + { output.volume + output.number } + { series output + output.volume + output.number } + if$ +} + +FUNCTION {format.edition} +{ edition empty$ + { "" } + { output.state mid.sentence = + { edition "l" change.case$ " edition" * } + { edition "t" change.case$ " edition" * } + if$ + } + if$ +} + +INTEGERS { multiresult } + +FUNCTION {multi.page.check} +{ 't := + #0 'multiresult := + { multiresult not + t empty$ not + and + } + { t #1 #1 substring$ + duplicate$ "-" = + swap$ duplicate$ "," = + swap$ "+" = + or or + { #1 'multiresult := } + { t #2 global.max$ substring$ 't := } + if$ + } + while$ + multiresult +} + +FUNCTION {format.pages} % 1.00(7) +{ pages empty$ + { "" } + { pages multi.page.check + { "pp." pages n.dashify tie.or.space.connect } + { "p." pages tie.or.space.connect } + if$ + } + if$ +} + +FUNCTION {format.vol.num.pages} % 1.00(8) +{ volume empty$ + { ""} + { " Vol.~" volume * } + if$ + number empty$ + 'skip$ + { volume empty$ + { "there's a number but no volume in " cite$ * warning$ } + { "," *} + if$ + " No.~" number * * + } + if$ + pages empty$ + 'skip$ + { duplicate$ empty$ + { pop$ format.pages } + { ", " * format.pages * } + if$ + } + if$ +} + +FUNCTION {format.chapter.pages} +{ chapter empty$ + 'format.pages + { type empty$ + { "chapter" chapter tie.or.space.connect } + { type "l" change.case$ chapter tie.or.space.connect } + if$ + pages empty$ + 'skip$ + { ", " * format.pages * } + if$ + } + if$ +} + +FUNCTION {format.in.ed.booktitle} +{ booktitle empty$ + { "" } + { booktitle emphasize + editor empty$ + 'skip$ + { " (" * format.editors.inparen * ")" *} % 1.00(9), 2.00(6) + if$ + } + if$ +} + +FUNCTION {empty.misc.check} +{ author empty$ title empty$ howpublished empty$ + month empty$ year empty$ note empty$ + and and and and and + key empty$ not and + { "all relevant fields are empty in " cite$ * warning$ } + 'skip$ + if$ +} + +FUNCTION {format.thesis.type} +{ type empty$ + 'skip$ + { pop$ + type "t" change.case$ + } + if$ +} + +FUNCTION {format.tr.number} +{ type empty$ + { "Technical Report" } + {type} + if$ + number empty$ + { "t" change.case$ } + { " " number * * } + if$ +} + +FUNCTION {format.article.crossref} % 2.00(8) +{ key empty$ + { journal empty$ + { "need key or journal for " cite$ * " to crossref " * crossref * + warning$ + "" + } + { journal emphasize } % 1.00(10) + if$ + } + { "In " key * } + if$ + " \cite{" * crossref * "}" * +} + +FUNCTION {format.crossref.editor} % 1.00(11) +{ editor #1 "{vv }{ll}" format.name$ + editor num.names$ duplicate$ + #2 > + {pop$ " et al." * } + { #2 < + 'skip$ + { editor #2 "{ff }{vv }{ll}{ jj}" format.name$ "others" = + {" et al." * } + {" and " * editor #2 "{vv }{ll}" format.name$ * } + if$ + } + if$ + } + if$ +} + +FUNCTION {format.book.crossref} % 2.00(8) +{ editor empty$ + editor field.or.null author field.or.null = + or + { key empty$ + { series empty$ + { "need editor, key, or series for " cite$ * " to crossref " * + crossref * warning$ + "" + } + { series emphasize } % 1.00(10) + if$ + } + { "In " key * } + if$ + } + { format.crossref.editor } + if$ + " \cite{" * crossref * "}" * + volume empty$ + { "empty volume in " cite$ * "'s crossref of " * crossref * warning$ } + { * "Vol." * volume tie.or.space.connect } + if$ +} + +FUNCTION {format.incoll.inproc.crossref} % 2.00(8) +{ editor empty$ + editor field.or.null author field.or.null = + or + { key empty$ + { booktitle empty$ + { "need editor, key, or booktitle for " cite$ * " to crossref " * + crossref * warning$ + "" + } + { booktitle emphasize } % 1.00(10) + if$ + } + { "In " key * } + if$ + } + { format.crossref.editor } + if$ + " \cite{" * crossref * "}" * +} + +FUNCTION {article} +{ +%%%% + author "author" required.argument + title "title" required.argument + journal "journal" required.argument + year "year" required.argument +%%%% jssst + volume "volume" + number "number" + required.and.or.argument + pages "pages" required.argument +%%%% + output.bibitem + format.authors add.colon % 2.00(5) + title output + crossref missing$ + { journal emphasize output + format.vol.num.pages output % 1.00(12) + format.date output + } + { format.article.crossref output.nonnull + format.pages output + } + if$ + new.block + note output + fin.entry +} + +FUNCTION {book} +{ +%%%% + author "author" + editor "editor" + required.exclusive.or.argument + title "title" required.argument + publisher "publisher" required.argument + year "year" required.argument + optional.series.volume.number.argument +%%%% + output.bibitem + author empty$ + { format.editors} + { format.authors} + if$ + add.colon % 2.00(5) + title emphasize output + crossref missing$ + { output.series.volume.number + publisher output + address output + } + { new.block + format.book.crossref output.nonnull + } + if$ + format.edition output + format.date output + new.block + note output + fin.entry +} + +FUNCTION {booklet} +{ +%%%% + title "title" required.argument +%%%% jssst + author "author" required.argument +%%%% + output.bibitem + format.authors add.colon % 2.00(5) + title output + howpublished output + address output + format.date output + new.block + note output + fin.entry +} + +FUNCTION {inbook} +{ +%%%% + author "author" + editor "editor" + required.exclusive.or.argument + title "title" required.argument + chapter "chapter" + pages "pages" + required.and.or.argument + publisher "publisher" required.argument + year "year" required.argument + + optional.series.volume.number.argument +%%%% + output.bibitem + author empty$ + { format.editors} + { format.authors} + if$ + add.colon % 2.00(5) + title emphasize output + crossref missing$ + { output.series.volume.number + format.chapter.pages output + publisher output + } + { format.chapter.pages output + new.block + format.book.crossref output.nonnull + } + if$ + format.edition output + format.date output % 1.00(13) + new.block + note output + fin.entry +} + +FUNCTION {incollection} +{ +%%%% + author "author" required.argument + title "title" required.argument + booktitle "booktitle" required.argument + publisher "publisher" required.argument + year "year" required.argument + + optional.series.volume.number.argument +%%%% + output.bibitem + format.authors add.colon % 2.00(5) + title output + crossref missing$ + { format.in.ed.booktitle output + output.series.volume.number + publisher output + address output + format.edition output + format.chapter.pages output % 1.00(13) + format.date output + } + { format.incoll.inproc.crossref output.nonnull + format.chapter.pages output + } + if$ + new.block + note output + fin.entry +} + +FUNCTION {inproceedings} +{ +%%%% + author "author" required.argument + title "title" required.argument + year "year" required.argument + + optional.series.volume.number.argument +%%%% + output.bibitem + format.authors add.colon % 2.00(5) + title output + crossref missing$ + { format.in.ed.booktitle output + booktitle "booktitle" required.argument + output.series.volume.number + address output + organization output + publisher output + format.pages output + format.date output % 1.00(13) + } + { format.incoll.inproc.crossref output.nonnull + format.pages output + } + if$ + new.block + note output + fin.entry +} + +FUNCTION {conference} { inproceedings } + +FUNCTION {manual} +{ +%%%% + title "title" required.argument +%%%% jssst + author "author" + organization "organazaion" + required.exclusive.or.argument +%%%% + output.bibitem + author empty$ + { organization} + { format.authors} + if$ + add.colon % 2.00(5) + title emphasize output + author empty$ + 'skip$ + { organization output } + if$ + address output + format.edition output + format.date output + new.block + note output + fin.entry +} + +FUNCTION {mastersthesis} +{ +%%%% + author "author" required.argument + title "title" required.argument + school "school" required.argument + year "year" required.argument +%%%% + output.bibitem + format.authors add.colon % 2.00(5) + title output + "Master's thesis" + format.thesis.type output.nonnull + school output + address output + format.date output + new.block + note output + fin.entry +} + +FUNCTION {misc} +{ +%%%% +%%%% jssst + author "author" required.argument + title "title" required.argument +%%%% + output.bibitem + format.authors add.colon % 2.00(5) + title output + howpublished output + format.date output + new.block + note output + fin.entry + empty.misc.check +} + +FUNCTION {phdthesis} +{ +%%%% + author "author" required.argument + title "title" required.argument + school "school" required.argument + year "year" required.argument +%%%% + output.bibitem + format.authors add.colon % 2.00(5) + title output % 2.00(9) + "PhD Thesis" + format.thesis.type output.nonnull + school output + address output + format.date output + new.block + note output + fin.entry +} + +FUNCTION {proceedings} +{ +%%%% + title "title" required.argument + year "year" required.argument + + optional.series.volume.number.argument +%%%% jssst + editor "editor" + organization "organization" + required.exclusive.or.argument +%%%% + output.bibitem + editor empty$ + { organization } + { format.editors } + if$ + add.colon % 2.00(5) + title emphasize output + output.series.volume.number + address output + editor empty$ + 'skip$ + { organization output } + if$ + publisher output + format.date output + new.block + note output + fin.entry +} + +FUNCTION {techreport} +{ +%%%% + author "author" required.argument + title "title" required.argument + institution "institution" required.argument + year "year" required.argument +%%%% + output.bibitem + format.authors add.colon % 2.00(5) + title output + format.tr.number output.nonnull + institution output + address output + format.date output + new.block + note output + fin.entry +} + +FUNCTION {unpublished} +{ +%%%% + author "author" required.argument + title "title" required.argument + note "note" required.argument +%%%% + output.bibitem + format.authors add.colon % 2.00(5) + title output + format.date output + new.block + note output + fin.entry +} + +FUNCTION {default.type} { misc } + +MACRO {jan} {"January"} + +MACRO {feb} {"February"} + +MACRO {mar} {"March"} + +MACRO {apr} {"April"} + +MACRO {may} {"May"} + +MACRO {jun} {"June"} + +MACRO {jul} {"July"} + +MACRO {aug} {"August"} + +MACRO {sep} {"September"} + +MACRO {oct} {"October"} + +MACRO {nov} {"November"} + +MACRO {dec} {"December"} + +MACRO {acmcs} {"ACM Computing Surveys"} + +MACRO {acta} {"Acta Informatica"} + +MACRO {cacm} {"Communications of the ACM"} + +MACRO {ibmjrd} {"IBM Journal of Research and Development"} + +MACRO {ibmsj} {"IBM Systems Journal"} + +MACRO {ieeese} {"IEEE Transactions on Software Engineering"} + +MACRO {ieeetc} {"IEEE Transactions on Computers"} + +MACRO {ieeetcad} + {"IEEE Transactions on Computer-Aided Design of Integrated Circuits"} + +MACRO {ipl} {"Information Processing Letters"} + +MACRO {jacm} {"Journal of the ACM"} + +MACRO {jcss} {"Journal of Computer and System Sciences"} + +MACRO {scp} {"Science of Computer Programming"} + +MACRO {sicomp} {"SIAM Journal on Computing"} + +MACRO {tocs} {"ACM Transactions on Computer Systems"} + +MACRO {tods} {"ACM Transactions on Database Systems"} + +MACRO {tog} {"ACM Transactions on Graphics"} + +MACRO {toms} {"ACM Transactions on Mathematical Software"} + +MACRO {toois} {"ACM Transactions on Office Information Systems"} + +MACRO {toplas} {"ACM Transactions on Programming Languages and Systems"} + +MACRO {tcs} {"Theoretical Computer Science"} + +READ + +FUNCTION {sortify} +{ purify$ + "l" change.case$ +} + +INTEGERS { len } + +FUNCTION {chop.word} +{ 's := + 'len := + s #1 len substring$ = + { s len #1 + global.max$ substring$ } + 's + if$ +} + +FUNCTION {sort.format.names} +{ 's := + #1 'nameptr := + "" + s num.names$ 'numnames := + numnames 'namesleft := + { namesleft #0 > } + { nameptr #1 > + { " " * } + 'skip$ + if$ + s nameptr "{vv{ } }{ll{ }}{ ff{ }}{ jj{ }}" format.name$ 't := + nameptr numnames = t "others" = and + { "et al" * } + { t sortify * } + if$ + nameptr #1 + 'nameptr := + namesleft #1 - 'namesleft := + } + while$ +} + +FUNCTION {sort.format.title} +{ 't := + "A " #2 + "An " #3 + "The " #4 t chop.word + chop.word + chop.word + sortify + #1 global.max$ substring$ +} + +FUNCTION {author.sort} +{ author empty$ + { key empty$ + { "to sort, need author or key in " cite$ * warning$ + "" + } + { key sortify } + if$ + } + { author sort.format.names } + if$ +} + +FUNCTION {author.editor.sort} +{ author empty$ + { editor empty$ + { key empty$ + { "to sort, need author, editor, or key in " cite$ * warning$ + "" + } + { key sortify } + if$ + } + { editor sort.format.names } + if$ + } + { author sort.format.names } + if$ +} + +FUNCTION {author.organization.sort} +{ author empty$ + { organization empty$ + { key empty$ + { "to sort, need author, organization, or key in " cite$ * warning$ + "" + } + { key sortify } + if$ + } + { "The " #4 organization chop.word sortify } + if$ + } + { author sort.format.names } + if$ +} + +FUNCTION {editor.organization.sort} +{ editor empty$ + { organization empty$ + { key empty$ + { "to sort, need editor, organization, or key in " cite$ * warning$ + "" + } + { key sortify } + if$ + } + { "The " #4 organization chop.word sortify } + if$ + } + { editor sort.format.names } + if$ +} + +FUNCTION {presort} +{ type$ "book" = + type$ "inbook" = + or + 'author.editor.sort + { type$ "proceedings" = + 'editor.organization.sort + { type$ "manual" = + 'author.organization.sort + 'author.sort + if$ + } + if$ + } + if$ + " " + * + year field.or.null sortify + * + " " + * + title field.or.null + sort.format.title + * + #1 entry.max$ substring$ + 'sort.key$ := +} + +ITERATE {presort} + +SORT + +STRINGS { longest.label } + +INTEGERS { number.label longest.label.width } + +FUNCTION {initialize.longest.label} +{ "" 'longest.label := + #1 'number.label := + #0 'longest.label.width := +} + +FUNCTION {longest.label.pass} +{ number.label int.to.str$ 'label := + number.label #1 + 'number.label := + label width$ longest.label.width > + { label 'longest.label := + label width$ 'longest.label.width := + } + 'skip$ + if$ +} + +EXECUTE {initialize.longest.label} + +ITERATE {longest.label.pass} + +FUNCTION {begin.bib} +{ preamble$ empty$ + 'skip$ + { preamble$ write$ newline$ } + if$ + "\begin{thebibliography}{" longest.label * "}" * write$ newline$ +} + +EXECUTE {begin.bib} + +EXECUTE {init.state.consts} + +ITERATE {call.type$} + +FUNCTION {end.bib} +{ newline$ + "\end{thebibliography}" write$ newline$ +} + +EXECUTE {end.bib} + +
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/ipsjsort.bst Mon Mar 24 01:30:34 2008 +0900 @@ -0,0 +1,1285 @@ +% ipsjsort.bst 15-Jun-07 by Hiroshi Nakashima (ver 2.12) +% ipsjsort.bst 30-Jan-02 by Hiroshi Nakashima (ver 2.00) +% ipsjsort.bst 28-Dec-93 by Hiroshi Nakashima (ver 1.00) +% jssst.bst tomura@etl.go.jp (Satoru Tomura) +% BibTeX standard bibliography style `jplain' + % version 0.10 for JBibTeX versions 0.10 or later, JLaTeX version 2.09. + % by Shouichi Matsui, matsui@denken.junet + +ENTRY + { address + author + booktitle + chapter + edition + editor + howpublished + institution + journal + key + month + note + number + organization + pages + publisher + school + series + title + type + volume + year + yomi + } + {} + { label } + +INTEGERS { output.state before.all mid.sentence after.sentence after.block } + +INTEGERS { before.year } + +FUNCTION {init.state.consts} +{ #0 'before.all := + #1 'mid.sentence := + #2 'after.sentence := + #3 'after.block := + #4 'before.year := % 1.00(1) +} + +STRINGS { s t } + +FUNCTION {is.kanji} +{ is.kanji.str$ } % 1.00(2), 2.00(1) + +FUNCTION {output.nonnull} +{ 's := + output.state mid.sentence = + { duplicate$ is.kanji % 2.00(2) + { "," * write$ } + { ", " * write$ } + if$ + } + { output.state after.block = + { add.period$ write$ + newline$ + "\newblock " write$ + } + { output.state before.all = + 'write$ + { output.state before.year = % 1.00(1) + { " " * write$ } + { add.period$ " " * write$ } + if$ + } + if$ + } + if$ + mid.sentence 'output.state := + } + if$ + s +} + +FUNCTION {output} +{ duplicate$ empty$ + 'pop$ + 'output.nonnull + if$ +} + +FUNCTION {required.argument} +{ 't := + empty$ + {"Missing required argument " t * " in " * cite$ * warning$} + 'skip$ + if$ +} + +FUNCTION {required.exclusive.or.argument} +{ 't := + empty$ + { 's := + empty$ + { t " or " * s * " is missing in " * cite$ * warning$} + 'skip$ + if$ + } + { 's := + empty$ + 'skip$ + { "You can use only one of " t * " and " * s * " in " * cite$ * warning$} + if$ + } + if$ +} + +FUNCTION {required.and.or.argument} +{ 't := empty$ + { 's := empty$ + { "there's no " t * " and/or " * s * cite$ * warning$ } + 'skip$ + if$ + } + { pop$ pop$ } + if$ +} + +FUNCTION {optional.series.volume.number.argument} +{ series empty$ + { volume empty$ + { number empty$ + 'skip$ + { "there's a number but no series in " cite$ * warning$ } + if$ + } + { number empty$ + { "there's a volume but no series in " cite$ * warning$ } + { "you can use only one of volume and number in " cite$ * warning$} + if$ + } + if$ + } + { volume empty$ + { number empty$ + { "there's a series but neither volume nor number in " cite$ * warning$ } + 'skip$ + if$ + } + { number empty$ + 'skip$ + { "you can use only one of volume and number in " cite$ * warning$ } + if$ + } + if$ + } + if$ +} + +FUNCTION {output.bibitem} +{ newline$ + "\bibitem{" write$ + cite$ write$ + "}" write$ + newline$ + before.all 'output.state := +} + +FUNCTION {fin.entry} +{ add.period$ + write$ + newline$ +} + +FUNCTION {new.block} +{ output.state before.all = + 'skip$ + { after.block 'output.state := } + if$ +} + +FUNCTION {new.sentence} +{ output.state after.block = + 'skip$ + { output.state before.all = + 'skip$ + { after.sentence 'output.state := } + if$ + } + if$ +} + +FUNCTION {not} +{ { #0 } + { #1 } + if$ +} + +FUNCTION {and} +{ 'skip$ + { pop$ #0 } + if$ +} + +FUNCTION {or} +{ { pop$ #1 } + 'skip$ + if$ +} + +FUNCTION {new.block.checka} +{ empty$ + 'skip$ + 'new.block + if$ +} + +FUNCTION {new.block.checkb} +{ empty$ + swap$ empty$ + and + 'skip$ + 'new.block + if$ +} + +FUNCTION {new.sentence.checka} +{ empty$ + 'skip$ + 'new.sentence + if$ +} + +FUNCTION {new.sentence.checkb} +{ empty$ + swap$ empty$ + and + 'skip$ + 'new.sentence + if$ +} + +FUNCTION {field.or.null} +{ duplicate$ empty$ + { pop$ "" } + 'skip$ + if$ +} + +FUNCTION {emphasize} +{ duplicate$ empty$ + { pop$ "" } + { duplicate$ is.kanji + 'skip$ % 1.00(3) + { "{\em " swap$ * "}" * } % 2.00(3) + if$ + } + if$ +} + +INTEGERS { nameptr namesleft numnames } + +FUNCTION {format.names} % 1.00(4), 2.00(4) +{ 's := + #1 'nameptr := + s num.names$ 'numnames := + numnames 'namesleft := + { namesleft #0 > } + { s nameptr "{ff}{ll}" format.name$ duplicate$ is.kanji + { duplicate$ text.length$ #6 > + { 't := } + { pop$ s nameptr "{ff} {ll}" format.name$ 't := } + if$ + } + { pop$ s nameptr "{vv }{ll}{, jj}{, f.}" format.name$ 't := } + if$ + nameptr #1 > + { namesleft #1 > + { s is.kanji + { "," } + { ", " } + if$ + * t * } + { t "others" = + { s is.kanji + {"ほか" * } + {" et al." * } + if$ + } + { s is.kanji + {"," * t * } % put "," here for Kanji (H.N.) + {" and " * t * } + if$ + } + if$ + } + if$ + } + 't + if$ + nameptr #1 + 'nameptr := + namesleft #1 - 'namesleft := + } + while$ +} + +FUNCTION {format.authors} +{ author empty$ + { "" } + { author format.names } + if$ +} + +FUNCTION {add.colon} % 2.00(5) +{ duplicate$ is.kanji + { "\:" * } % 2.12(1) + { ": " * } + if$ +} + +FUNCTION {format.editors.inparen} % 2.00(6) +{ editor empty$ + { "" } + { editor format.names + editor num.names$ #1 > + { editor is.kanji + {",編" * } {", eds." *} if$ + } + { editor is.kanji + {",編" *} {", ed." *} if$ + } + if$ + } + if$ +} + +FUNCTION {format.editors} +{ editor empty$ + { "" } + { editor format.names + editor num.names$ #1 > + { editor is.kanji + {"(編)" * } {"(eds.)" *} if$ % 2.00(7) + } + { editor is.kanji + {"(編)" *} {"(ed.)" *} if$ % 2.00(7) + } + if$ + } + if$ +} + +FUNCTION {n.dashify} +{ 't := + "" + { t empty$ not } + { t #1 #1 substring$ "-" = + { t #1 #2 substring$ "--" = not + { "--" * + t #2 global.max$ substring$ 't := + } + { { t #1 #1 substring$ "-" = } + { "-" * + t #2 global.max$ substring$ 't := + } + while$ + } + if$ + } + { t #1 #1 substring$ * + t #2 global.max$ substring$ 't := + } + if$ + } + while$ +} + +FUNCTION {format.date} +{ before.year 'output.state := % 1.00(1) + year empty$ + { month empty$ + { "" } + { "there's a month but no year in " cite$ * warning$ + "" % 1.00(5) + } + if$ + } + { "(" year ")" * * } % 1.00(5) + if$ +} + +FUNCTION {tie.or.space.connect} +{ duplicate$ text.length$ #3 < + { "~" } + { "\ " } % 1.00(6) + if$ + swap$ * * +} + +FUNCTION {output.volume} +{ + volume empty$ + 'skip$ + { "Vol.~" volume * output} + if$ + +} + +FUNCTION {output.number} +{ + number empty$ + 'skip$ + { "No.~" number * output} + if$ +} + +FUNCTION {output.series.volume.number} +{ series empty$ + { output.volume + output.number } + { series is.kanji + volume empty$ + number empty$ + or + and + { series " " * volume * number * output} + { series output + output.volume + output.number} + if$ + } + if$ +} + +FUNCTION {format.edition} +{ edition empty$ + { "" } + { output.state mid.sentence = + { edition "l" change.case$ " edition" * } + { edition "t" change.case$ " edition" * } + if$ + } + if$ +} + +INTEGERS { multiresult } + +FUNCTION {multi.page.check} +{ 't := + #0 'multiresult := + { multiresult not + t empty$ not + and + } + { t #1 #1 substring$ + duplicate$ "-" = + swap$ duplicate$ "," = + swap$ "+" = + or or + { #1 'multiresult := } + { t #2 global.max$ substring$ 't := } + if$ + } + while$ + multiresult +} + +FUNCTION {format.pages} % 1.00(7) +{ pages empty$ + { "" } + { pages multi.page.check + { "pp." pages n.dashify tie.or.space.connect } + { "p." pages tie.or.space.connect } + if$ + } + if$ +} + +FUNCTION {format.vol.num.pages} % 1.00(8) +{ volume empty$ + { ""} + { " Vol.~" volume * } + if$ + number empty$ + 'skip$ + { volume empty$ + { "there's a number but no volume in " cite$ * warning$ } + { "," *} + if$ + " No.~" number * * + } + if$ + pages empty$ + 'skip$ + { duplicate$ empty$ + { pop$ format.pages } + { ", " * format.pages * } + if$ + } + if$ +} + +FUNCTION {format.chapter.pages} +{ chapter empty$ + 'format.pages + { type empty$ + { "chapter" chapter tie.or.space.connect } + { type is.kanji + { chapter type tie.or.space.connect } + { type "l" change.case$ chapter tie.or.space.connect } + if$ + } + if$ + pages empty$ + 'skip$ + { ", " * format.pages * } + if$ + } + if$ +} + +FUNCTION {format.in.ed.booktitle} +{ booktitle empty$ + { "" } + { booktitle emphasize + editor empty$ + 'skip$ + { booktitle is.kanji + { "(" * format.editors.inparen * ")" *} % 2.00(6,7) + { " (" * format.editors.inparen * ")" *} % 1.00(9), 2.00(6) + if$ + } + if$ + } + if$ +} + +FUNCTION {empty.misc.check} +{ author empty$ title empty$ howpublished empty$ + month empty$ year empty$ note empty$ + and and and and and + key empty$ not and + { "all relevant fields are empty in " cite$ * warning$ } + 'skip$ + if$ +} + +FUNCTION {format.thesis.type} +{ type empty$ + 'skip$ + { pop$ + type "t" change.case$ + } + if$ +} + +FUNCTION {format.tr.number} +{ type empty$ + { title empty$ + { "Technical Report" } + { title is.kanji + { "技術報告" } + { "Technical Report" } + if$ + } + if$ + } + {type} + if$ + number empty$ + { "t" change.case$ } + { " " number * * } + if$ +} + +FUNCTION {format.article.crossref} % 2.00(8) +{ key empty$ + { journal empty$ + { "need key or journal for " cite$ * " to crossref " * crossref * + warning$ + "" + } + { journal emphasize } % 1.00(10) + if$ + } + { "In " key * } + if$ + " \cite{" * crossref * "}" * +} + +FUNCTION {format.crossref.editor} % 1.00(11) +{ editor #1 + editor is.kanji { "{ff}" } { "{vv }{ll}" } if$ + format.name$ + editor num.names$ duplicate$ + #2 > + { editor is.kanji + {pop$ "ほか" *} {pop$ " et al." * } if$ + } + { #2 < + 'skip$ + { editor #2 "{ff }{vv }{ll}{ jj}" format.name$ "others" = + { editor is.kanji + {"ほか" *} {" et al." * } if$ + } + { editor is.kanji + {"・" * editor #2 "{ff}" format.name$ * } + {" and " * editor #2 "{vv }{ll}" format.name$ * } + if$ + } + if$ + } + if$ + } + if$ +} + +FUNCTION {format.book.crossref} % 2.00(8) +{ editor empty$ + editor field.or.null author field.or.null = + or + { key empty$ + { series empty$ + { "need editor, key, or series for " cite$ * " to crossref " * + crossref * warning$ + "" + } + { series emphasize } % 1.00(10) + if$ + } + { "In " key * } + if$ + } + { format.crossref.editor } + if$ + " \cite{" * crossref * "}" * + volume empty$ + { "empty volume in " cite$ * "'s crossref of " * crossref * warning$ } + { duplicate$ is.kanji { "," } { ", "} if$ * + "Vol." * volume tie.or.space.connect + } + if$ +} + +FUNCTION {format.incoll.inproc.crossref} % 2.00(8) +{ editor empty$ + editor field.or.null author field.or.null = + or + { key empty$ + { booktitle empty$ + { "need editor, key, or booktitle for " cite$ * " to crossref " * + crossref * warning$ + "" + } + { booktitle emphasize } % 1.00(10) + if$ + } + { "In " key * } + if$ + } + { format.crossref.editor } + if$ + " \cite{" * crossref * "}" * +} + +FUNCTION {article} +{ +%%%% + author "author" required.argument + title "title" required.argument + journal "journal" required.argument + year "year" required.argument +%%%% jssst + volume "volume" + number "number" + required.and.or.argument + pages "pages" required.argument +%%%% + output.bibitem + format.authors add.colon % 2.00(5) + title output + crossref missing$ + { journal emphasize output + format.vol.num.pages output % 1.00(12) + format.date output + } + { format.article.crossref output.nonnull + format.pages output + } + if$ + new.block + note output + fin.entry +} + +FUNCTION {book} +{ +%%%% + author "author" + editor "editor" + required.exclusive.or.argument + title "title" required.argument + publisher "publisher" required.argument + year "year" required.argument + optional.series.volume.number.argument +%%%% + output.bibitem + author empty$ + { format.editors} + { format.authors} + if$ + add.colon % 2.00(5) + title emphasize output + crossref missing$ + { output.series.volume.number + publisher output + address output + } + { new.block + format.book.crossref output.nonnull + } + if$ + format.edition output + format.date output + new.block + note output + fin.entry +} + +FUNCTION {booklet} +{ +%%%% + title "title" required.argument +%%%% jssst + author "author" required.argument +%%%% + output.bibitem + format.authors add.colon % 2.00(5) + title output + howpublished output + address output + format.date output + new.block + note output + fin.entry +} + +FUNCTION {inbook} +{ +%%%% + author "author" + editor "editor" + required.exclusive.or.argument + title "title" required.argument + chapter "chapter" + pages "pages" + required.and.or.argument + publisher "publisher" required.argument + year "year" required.argument + + optional.series.volume.number.argument +%%%% + output.bibitem + author empty$ + { format.editors} + { format.authors} + if$ + add.colon % 2.00(5) + title emphasize output + crossref missing$ + { output.series.volume.number + format.chapter.pages output + publisher output + } + { format.chapter.pages output + new.block + format.book.crossref output.nonnull + } + if$ + format.edition output + format.date output % 1.00(13) + new.block + note output + fin.entry +} + +FUNCTION {incollection} +{ +%%%% + author "author" required.argument + title "title" required.argument + booktitle "booktitle" required.argument + publisher "publisher" required.argument + year "year" required.argument + + optional.series.volume.number.argument +%%%% + output.bibitem + format.authors add.colon % 2.00(5) + title output + crossref missing$ + { format.in.ed.booktitle output + output.series.volume.number + publisher output + address output + format.edition output + format.chapter.pages output % 1.00(13) + format.date output + } + { format.incoll.inproc.crossref output.nonnull + format.chapter.pages output + } + if$ + new.block + note output + fin.entry +} + +FUNCTION {inproceedings} +{ +%%%% + author "author" required.argument + title "title" required.argument + year "year" required.argument + + optional.series.volume.number.argument +%%%% + output.bibitem + format.authors add.colon % 2.00(5) + title output + crossref missing$ + { format.in.ed.booktitle output + booktitle "booktitle" required.argument + output.series.volume.number + address output + organization output + publisher output + format.pages output + format.date output % 1.00(13) + } + { format.incoll.inproc.crossref output.nonnull + format.pages output + } + if$ + new.block + note output + fin.entry +} + +FUNCTION {conference} { inproceedings } + +FUNCTION {manual} +{ +%%%% + title "title" required.argument +%%%% jssst + author "author" + organization "organazaion" + required.exclusive.or.argument +%%%% + output.bibitem + author empty$ + { organization} + { format.authors} + if$ + add.colon % 2.00(5) + title emphasize output + author empty$ + 'skip$ + { organization output } + if$ + address output + format.edition output + format.date output + new.block + note output + fin.entry +} + +FUNCTION {mastersthesis} +{ +%%%% + author "author" required.argument + title "title" required.argument + school "school" required.argument + year "year" required.argument +%%%% + output.bibitem + format.authors add.colon % 2.00(5) + title output + author empty$ + { "Master's thesis" } + { author is.kanji + { "修士論文" } + { "Master's thesis" } + if$ + } + if$ + format.thesis.type output.nonnull + school output + address output + format.date output + new.block + note output + fin.entry +} + +FUNCTION {misc} +{ +%%%% +%%%% jssst + author "author" required.argument + title "title" required.argument +%%%% + output.bibitem + format.authors add.colon % 2.00(5) + title output + howpublished output + format.date output + new.block + note output + fin.entry + empty.misc.check +} + +FUNCTION {phdthesis} +{ +%%%% + author "author" required.argument + title "title" required.argument + school "school" required.argument + year "year" required.argument +%%%% + output.bibitem + format.authors add.colon % 2.00(5) + title output % 2.00(9) + author empty$ + { "PhD Thesis" } + { author is.kanji + { "博士論文" } + { "PhD Thesis" } + if$ + } + if$ + format.thesis.type output.nonnull + school output + address output + format.date output + new.block + note output + fin.entry +} + +FUNCTION {proceedings} +{ +%%%% + title "title" required.argument + year "year" required.argument + + optional.series.volume.number.argument +%%%% jssst + editor "editor" + organization "organization" + required.exclusive.or.argument +%%%% + output.bibitem + editor empty$ + { organization } + { format.editors } + if$ + add.colon % 2.00(5) + title emphasize output + output.series.volume.number + address output + editor empty$ + 'skip$ + { organization output } + if$ + publisher output + format.date output + new.block + note output + fin.entry +} + +FUNCTION {techreport} +{ +%%%% + author "author" required.argument + title "title" required.argument + institution "institution" required.argument + year "year" required.argument +%%%% + output.bibitem + format.authors add.colon % 2.00(5) + title output + format.tr.number output.nonnull + institution output + address output + format.date output + new.block + note output + fin.entry +} + +FUNCTION {unpublished} +{ +%%%% + author "author" required.argument + title "title" required.argument + note "note" required.argument +%%%% + output.bibitem + format.authors add.colon % 2.00(5) + title output + format.date output + new.block + note output + fin.entry +} + +FUNCTION {default.type} { misc } + +MACRO {jan} {"January"} + +MACRO {feb} {"February"} + +MACRO {mar} {"March"} + +MACRO {apr} {"April"} + +MACRO {may} {"May"} + +MACRO {jun} {"June"} + +MACRO {jul} {"July"} + +MACRO {aug} {"August"} + +MACRO {sep} {"September"} + +MACRO {oct} {"October"} + +MACRO {nov} {"November"} + +MACRO {dec} {"December"} + +MACRO {acmcs} {"ACM Computing Surveys"} + +MACRO {acta} {"Acta Informatica"} + +MACRO {cacm} {"Communications of the ACM"} + +MACRO {ibmjrd} {"IBM Journal of Research and Development"} + +MACRO {ibmsj} {"IBM Systems Journal"} + +MACRO {ieeese} {"IEEE Transactions on Software Engineering"} + +MACRO {ieeetc} {"IEEE Transactions on Computers"} + +MACRO {ieeetcad} + {"IEEE Transactions on Computer-Aided Design of Integrated Circuits"} + +MACRO {ipl} {"Information Processing Letters"} + +MACRO {jacm} {"Journal of the ACM"} + +MACRO {jcss} {"Journal of Computer and System Sciences"} + +MACRO {scp} {"Science of Computer Programming"} + +MACRO {sicomp} {"SIAM Journal on Computing"} + +MACRO {tocs} {"ACM Transactions on Computer Systems"} + +MACRO {tods} {"ACM Transactions on Database Systems"} + +MACRO {tog} {"ACM Transactions on Graphics"} + +MACRO {toms} {"ACM Transactions on Mathematical Software"} + +MACRO {toois} {"ACM Transactions on Office Information Systems"} + +MACRO {toplas} {"ACM Transactions on Programming Languages and Systems"} + +MACRO {tcs} {"Theoretical Computer Science"} + +READ + +FUNCTION {sortify} +{ purify$ + "l" change.case$ +} + +INTEGERS { len } + +FUNCTION {chop.word} +{ 's := + 'len := + s #1 len substring$ = + { s len #1 + global.max$ substring$ } + 's + if$ +} + +FUNCTION {sort.format.names} +{ 's := + yomi empty$ + 'skip$ + { yomi 's := } + if$ + + #1 'nameptr := + "" + s num.names$ 'numnames := + numnames 'namesleft := + { namesleft #0 > } + { nameptr #1 > + { " " * } + 'skip$ + if$ + s nameptr "{vv{ } }{ll{ }}{ ff{ }}{ jj{ }}" format.name$ 't := + nameptr numnames = t "others" = and + { "et al" * } + { t sortify * } + if$ + nameptr #1 + 'nameptr := + namesleft #1 - 'namesleft := + } + while$ +} + +FUNCTION {sort.format.title} +{ 't := + "A " #2 + "An " #3 + "The " #4 t chop.word + chop.word + chop.word + sortify + #1 global.max$ substring$ +} + +FUNCTION {author.sort} +{ author empty$ + { key empty$ + { "to sort, need author or key in " cite$ * warning$ + "" + } + { key sortify } + if$ + } + { author sort.format.names } + if$ +} + +FUNCTION {author.editor.sort} +{ author empty$ + { editor empty$ + { key empty$ + { "to sort, need author, editor, or key in " cite$ * warning$ + "" + } + { key sortify } + if$ + } + { editor sort.format.names } + if$ + } + { author sort.format.names } + if$ +} + +FUNCTION {author.organization.sort} +{ author empty$ + { organization empty$ + { key empty$ + { "to sort, need author, organization, or key in " cite$ * warning$ + "" + } + { key sortify } + if$ + } + { "The " #4 organization chop.word sortify } + if$ + } + { author sort.format.names } + if$ +} + +FUNCTION {editor.organization.sort} +{ editor empty$ + { organization empty$ + { key empty$ + { "to sort, need editor, organization, or key in " cite$ * warning$ + "" + } + { key sortify } + if$ + } + { "The " #4 organization chop.word sortify } + if$ + } + { editor sort.format.names } + if$ +} + +FUNCTION {presort} +{ type$ "book" = + type$ "inbook" = + or + 'author.editor.sort + { type$ "proceedings" = + 'editor.organization.sort + { type$ "manual" = + 'author.organization.sort + 'author.sort + if$ + } + if$ + } + if$ + " " + * + year field.or.null sortify + * + " " + * + title field.or.null + sort.format.title + * + #1 entry.max$ substring$ + 'sort.key$ := +} + +ITERATE {presort} + +SORT + +STRINGS { longest.label } + +INTEGERS { number.label longest.label.width } + +FUNCTION {initialize.longest.label} +{ "" 'longest.label := + #1 'number.label := + #0 'longest.label.width := +} + +FUNCTION {longest.label.pass} +{ number.label int.to.str$ 'label := + number.label #1 + 'number.label := + label width$ longest.label.width > + { label 'longest.label := + label width$ 'longest.label.width := + } + 'skip$ + if$ +} + +EXECUTE {initialize.longest.label} + +ITERATE {longest.label.pass} + +FUNCTION {begin.bib} +{ preamble$ empty$ + 'skip$ + { preamble$ write$ newline$ } + if$ + "\begin{thebibliography}{" longest.label * "}" * write$ newline$ +} + +EXECUTE {begin.bib} + +EXECUTE {init.state.consts} + +ITERATE {call.type$} + +FUNCTION {end.bib} +{ newline$ + "\end{thebibliography}" write$ newline$ +} + +EXECUTE {end.bib} + +
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/ipsjunsrt-e.bst Mon Mar 24 01:30:34 2008 +0900 @@ -0,0 +1,1043 @@ +% ipsjsort-e.bst 15-Jun-07 by Hiroshi Nakashima (ver 2.12) +% ipsjsort.bst 30-Jan-02 by Hiroshi Nakashima (ver 2.00) +% ipsjsort.bst 28-Dec-93 by Hiroshi Nakashima (ver 1.00) +% jssst.bst tomura@etl.go.jp (Satoru Tomura) +% BibTeX standard bibliography style `jplain' + % version 0.10 for JBibTeX versions 0.10 or later, JLaTeX version 2.09. + % by Shouichi Matsui, matsui@denken.junet + +ENTRY + { address + author + booktitle + chapter + edition + editor + howpublished + institution + journal + key + month + note + number + organization + pages + publisher + school + series + title + type + volume + year + } + {} + { label } + +INTEGERS { output.state before.all mid.sentence after.sentence after.block } + +INTEGERS { before.year } + +FUNCTION {init.state.consts} +{ #0 'before.all := + #1 'mid.sentence := + #2 'after.sentence := + #3 'after.block := + #4 'before.year := % 1.00(1) +} + +STRINGS { s t } + +FUNCTION {output.nonnull} +{ 's := + output.state mid.sentence = + { ", " * write$ } + { output.state after.block = + { add.period$ write$ + newline$ + "\newblock " write$ + } + { output.state before.all = + 'write$ + { output.state before.year = % 1.00(1) + { " " * write$ } + { add.period$ " " * write$ } + if$ + } + if$ + } + if$ + mid.sentence 'output.state := + } + if$ + s +} + +FUNCTION {output} +{ duplicate$ empty$ + 'pop$ + 'output.nonnull + if$ +} + +FUNCTION {required.argument} +{ 't := + empty$ + {"Missing required argument " t * " in " * cite$ * warning$} + 'skip$ + if$ +} + +FUNCTION {required.exclusive.or.argument} +{ 't := + empty$ + { 's := + empty$ + { t " or " * s * " is missing in " * cite$ * warning$} + 'skip$ + if$ + } + { 's := + empty$ + 'skip$ + { "You can use only one of " t * " and " * s * " in " * cite$ * warning$} + if$ + } + if$ +} + +FUNCTION {required.and.or.argument} +{ 't := empty$ + { 's := empty$ + { "there's no " t * " and/or " * s * cite$ * warning$ } + 'skip$ + if$ + } + { pop$ pop$ } + if$ +} + +FUNCTION {optional.series.volume.number.argument} +{ series empty$ + { volume empty$ + { number empty$ + 'skip$ + { "there's a number but no series in " cite$ * warning$ } + if$ + } + { number empty$ + { "there's a volume but no series in " cite$ * warning$ } + { "you can use only one of volume and number in " cite$ * warning$} + if$ + } + if$ + } + { volume empty$ + { number empty$ + { "there's a series but neither volume nor number in " cite$ * warning$ } + 'skip$ + if$ + } + { number empty$ + 'skip$ + { "you can use only one of volume and number in " cite$ * warning$ } + if$ + } + if$ + } + if$ +} + +FUNCTION {output.bibitem} +{ newline$ + "\bibitem{" write$ + cite$ write$ + "}" write$ + newline$ + before.all 'output.state := +} + +FUNCTION {fin.entry} +{ add.period$ + write$ + newline$ +} + +FUNCTION {new.block} +{ output.state before.all = + 'skip$ + { after.block 'output.state := } + if$ +} + +FUNCTION {new.sentence} +{ output.state after.block = + 'skip$ + { output.state before.all = + 'skip$ + { after.sentence 'output.state := } + if$ + } + if$ +} + +FUNCTION {not} +{ { #0 } + { #1 } + if$ +} + +FUNCTION {and} +{ 'skip$ + { pop$ #0 } + if$ +} + +FUNCTION {or} +{ { pop$ #1 } + 'skip$ + if$ +} + +FUNCTION {new.block.checka} +{ empty$ + 'skip$ + 'new.block + if$ +} + +FUNCTION {new.block.checkb} +{ empty$ + swap$ empty$ + and + 'skip$ + 'new.block + if$ +} + +FUNCTION {new.sentence.checka} +{ empty$ + 'skip$ + 'new.sentence + if$ +} + +FUNCTION {new.sentence.checkb} +{ empty$ + swap$ empty$ + and + 'skip$ + 'new.sentence + if$ +} + +FUNCTION {field.or.null} +{ duplicate$ empty$ + { pop$ "" } + 'skip$ + if$ +} + +FUNCTION {emphasize} +{ duplicate$ empty$ + { pop$ "" } + { "{\em " swap$ * "}" * } + if$ +} + +INTEGERS { nameptr namesleft numnames } + +FUNCTION {format.names} % 1.00(4), 2.00(4) +{ 's := + #1 'nameptr := + s num.names$ 'numnames := + numnames 'namesleft := + { namesleft #0 > } + { s nameptr "{vv }{ll}{, jj}{, f.}" format.name$ 't := + nameptr #1 > + { namesleft #1 > + { ", " * t * } + { t "others" = + {" et al." * } + {" and " * t * } + if$ + } + if$ + } + 't + if$ + nameptr #1 + 'nameptr := + namesleft #1 - 'namesleft := + } + while$ +} + +FUNCTION {format.authors} +{ author empty$ + { "" } + { author format.names } + if$ +} + +FUNCTION {add.colon} % 2.00(5) +{ ": " * +} + +FUNCTION {format.editors.inparen} % 2.00(6) +{ editor empty$ + { "" } + { editor format.names + editor num.names$ #1 > + {", eds." *} + {", ed." *} + if$ + } + if$ +} + +FUNCTION {format.editors} +{ editor empty$ + { "" } + { editor format.names + editor num.names$ #1 > + {"(eds.)" *} + {"(ed.)" *} + if$ + } + if$ +} + +FUNCTION {n.dashify} +{ 't := + "" + { t empty$ not } + { t #1 #1 substring$ "-" = + { t #1 #2 substring$ "--" = not + { "--" * + t #2 global.max$ substring$ 't := + } + { { t #1 #1 substring$ "-" = } + { "-" * + t #2 global.max$ substring$ 't := + } + while$ + } + if$ + } + { t #1 #1 substring$ * + t #2 global.max$ substring$ 't := + } + if$ + } + while$ +} + +FUNCTION {format.date} +{ before.year 'output.state := % 1.00(1) + year empty$ + { month empty$ + { "" } + { "there's a month but no year in " cite$ * warning$ + "" % 1.00(5) + } + if$ + } + { "(" year ")" * * } % 1.00(5) + if$ +} + +FUNCTION {tie.or.space.connect} +{ duplicate$ text.length$ #3 < + { "~" } + { "\ " } % 1.00(6) + if$ + swap$ * * +} + +FUNCTION {output.volume} +{ + volume empty$ + 'skip$ + { "Vol.~" volume * output} + if$ + +} + +FUNCTION {output.number} +{ + number empty$ + 'skip$ + { "No.~" number * output} + if$ +} + +FUNCTION {output.series.volume.number} +{ series empty$ + { output.volume + output.number } + { series output + output.volume + output.number } + if$ +} + +FUNCTION {format.edition} +{ edition empty$ + { "" } + { output.state mid.sentence = + { edition "l" change.case$ " edition" * } + { edition "t" change.case$ " edition" * } + if$ + } + if$ +} + +INTEGERS { multiresult } + +FUNCTION {multi.page.check} +{ 't := + #0 'multiresult := + { multiresult not + t empty$ not + and + } + { t #1 #1 substring$ + duplicate$ "-" = + swap$ duplicate$ "," = + swap$ "+" = + or or + { #1 'multiresult := } + { t #2 global.max$ substring$ 't := } + if$ + } + while$ + multiresult +} + +FUNCTION {format.pages} % 1.00(7) +{ pages empty$ + { "" } + { pages multi.page.check + { "pp." pages n.dashify tie.or.space.connect } + { "p." pages tie.or.space.connect } + if$ + } + if$ +} + +FUNCTION {format.vol.num.pages} % 1.00(8) +{ volume empty$ + { ""} + { " Vol.~" volume * } + if$ + number empty$ + 'skip$ + { volume empty$ + { "there's a number but no volume in " cite$ * warning$ } + { "," *} + if$ + " No.~" number * * + } + if$ + pages empty$ + 'skip$ + { duplicate$ empty$ + { pop$ format.pages } + { ", " * format.pages * } + if$ + } + if$ +} + +FUNCTION {format.chapter.pages} +{ chapter empty$ + 'format.pages + { type empty$ + { "chapter" chapter tie.or.space.connect } + { type "l" change.case$ chapter tie.or.space.connect } + if$ + pages empty$ + 'skip$ + { ", " * format.pages * } + if$ + } + if$ +} + +FUNCTION {format.in.ed.booktitle} +{ booktitle empty$ + { "" } + { booktitle emphasize + editor empty$ + 'skip$ + { " (" * format.editors.inparen * ")" *} % 1.00(9), 2.00(6) + if$ + } + if$ +} + +FUNCTION {empty.misc.check} +{ author empty$ title empty$ howpublished empty$ + month empty$ year empty$ note empty$ + and and and and and + key empty$ not and + { "all relevant fields are empty in " cite$ * warning$ } + 'skip$ + if$ +} + +FUNCTION {format.thesis.type} +{ type empty$ + 'skip$ + { pop$ + type "t" change.case$ + } + if$ +} + +FUNCTION {format.tr.number} +{ type empty$ + { "Technical Report" } + {type} + if$ + number empty$ + { "t" change.case$ } + { " " number * * } + if$ +} + +FUNCTION {format.article.crossref} % 2.00(8) +{ key empty$ + { journal empty$ + { "need key or journal for " cite$ * " to crossref " * crossref * + warning$ + "" + } + { journal emphasize } % 1.00(10) + if$ + } + { "In " key * } + if$ + " \cite{" * crossref * "}" * +} + +FUNCTION {format.crossref.editor} % 1.00(11) +{ editor #1 "{vv }{ll}" format.name$ + editor num.names$ duplicate$ + #2 > + {pop$ " et al." * } + { #2 < + 'skip$ + { editor #2 "{ff }{vv }{ll}{ jj}" format.name$ "others" = + {" et al." * } + {" and " * editor #2 "{vv }{ll}" format.name$ * } + if$ + } + if$ + } + if$ +} + +FUNCTION {format.book.crossref} % 2.00(8) +{ editor empty$ + editor field.or.null author field.or.null = + or + { key empty$ + { series empty$ + { "need editor, key, or series for " cite$ * " to crossref " * + crossref * warning$ + "" + } + { series emphasize } % 1.00(10) + if$ + } + { "In " key * } + if$ + } + { format.crossref.editor } + if$ + " \cite{" * crossref * "}" * + volume empty$ + { "empty volume in " cite$ * "'s crossref of " * crossref * warning$ } + { * "Vol." * volume tie.or.space.connect } + if$ +} + +FUNCTION {format.incoll.inproc.crossref} % 2.00(8) +{ editor empty$ + editor field.or.null author field.or.null = + or + { key empty$ + { booktitle empty$ + { "need editor, key, or booktitle for " cite$ * " to crossref " * + crossref * warning$ + "" + } + { booktitle emphasize } % 1.00(10) + if$ + } + { "In " key * } + if$ + } + { format.crossref.editor } + if$ + " \cite{" * crossref * "}" * +} + +FUNCTION {article} +{ +%%%% + author "author" required.argument + title "title" required.argument + journal "journal" required.argument + year "year" required.argument +%%%% jssst + volume "volume" + number "number" + required.and.or.argument + pages "pages" required.argument +%%%% + output.bibitem + format.authors add.colon % 2.00(5) + title output + crossref missing$ + { journal emphasize output + format.vol.num.pages output % 1.00(12) + format.date output + } + { format.article.crossref output.nonnull + format.pages output + } + if$ + new.block + note output + fin.entry +} + +FUNCTION {book} +{ +%%%% + author "author" + editor "editor" + required.exclusive.or.argument + title "title" required.argument + publisher "publisher" required.argument + year "year" required.argument + optional.series.volume.number.argument +%%%% + output.bibitem + author empty$ + { format.editors} + { format.authors} + if$ + add.colon % 2.00(5) + title emphasize output + crossref missing$ + { output.series.volume.number + publisher output + address output + } + { new.block + format.book.crossref output.nonnull + } + if$ + format.edition output + format.date output + new.block + note output + fin.entry +} + +FUNCTION {booklet} +{ +%%%% + title "title" required.argument +%%%% jssst + author "author" required.argument +%%%% + output.bibitem + format.authors add.colon % 2.00(5) + title output + howpublished output + address output + format.date output + new.block + note output + fin.entry +} + +FUNCTION {inbook} +{ +%%%% + author "author" + editor "editor" + required.exclusive.or.argument + title "title" required.argument + chapter "chapter" + pages "pages" + required.and.or.argument + publisher "publisher" required.argument + year "year" required.argument + + optional.series.volume.number.argument +%%%% + output.bibitem + author empty$ + { format.editors} + { format.authors} + if$ + add.colon % 2.00(5) + title emphasize output + crossref missing$ + { output.series.volume.number + format.chapter.pages output + publisher output + } + { format.chapter.pages output + new.block + format.book.crossref output.nonnull + } + if$ + format.edition output + format.date output % 1.00(13) + new.block + note output + fin.entry +} + +FUNCTION {incollection} +{ +%%%% + author "author" required.argument + title "title" required.argument + booktitle "booktitle" required.argument + publisher "publisher" required.argument + year "year" required.argument + + optional.series.volume.number.argument +%%%% + output.bibitem + format.authors add.colon % 2.00(5) + title output + crossref missing$ + { format.in.ed.booktitle output + output.series.volume.number + publisher output + address output + format.edition output + format.chapter.pages output % 1.00(13) + format.date output + } + { format.incoll.inproc.crossref output.nonnull + format.chapter.pages output + } + if$ + new.block + note output + fin.entry +} + +FUNCTION {inproceedings} +{ +%%%% + author "author" required.argument + title "title" required.argument + year "year" required.argument + + optional.series.volume.number.argument +%%%% + output.bibitem + format.authors add.colon % 2.00(5) + title output + crossref missing$ + { format.in.ed.booktitle output + booktitle "booktitle" required.argument + output.series.volume.number + address output + organization output + publisher output + format.pages output + format.date output % 1.00(13) + } + { format.incoll.inproc.crossref output.nonnull + format.pages output + } + if$ + new.block + note output + fin.entry +} + +FUNCTION {conference} { inproceedings } + +FUNCTION {manual} +{ +%%%% + title "title" required.argument +%%%% jssst + author "author" + organization "organazaion" + required.exclusive.or.argument +%%%% + output.bibitem + author empty$ + { organization} + { format.authors} + if$ + add.colon % 2.00(5) + title emphasize output + author empty$ + 'skip$ + { organization output } + if$ + address output + format.edition output + format.date output + new.block + note output + fin.entry +} + +FUNCTION {mastersthesis} +{ +%%%% + author "author" required.argument + title "title" required.argument + school "school" required.argument + year "year" required.argument +%%%% + output.bibitem + format.authors add.colon % 2.00(5) + title output + "Master's thesis" + format.thesis.type output.nonnull + school output + address output + format.date output + new.block + note output + fin.entry +} + +FUNCTION {misc} +{ +%%%% +%%%% jssst + author "author" required.argument + title "title" required.argument +%%%% + output.bibitem + format.authors add.colon % 2.00(5) + title output + howpublished output + format.date output + new.block + note output + fin.entry + empty.misc.check +} + +FUNCTION {phdthesis} +{ +%%%% + author "author" required.argument + title "title" required.argument + school "school" required.argument + year "year" required.argument +%%%% + output.bibitem + format.authors add.colon % 2.00(5) + title output % 2.00(9) + "PhD Thesis" + format.thesis.type output.nonnull + school output + address output + format.date output + new.block + note output + fin.entry +} + +FUNCTION {proceedings} +{ +%%%% + title "title" required.argument + year "year" required.argument + + optional.series.volume.number.argument +%%%% jssst + editor "editor" + organization "organization" + required.exclusive.or.argument +%%%% + output.bibitem + editor empty$ + { organization } + { format.editors } + if$ + add.colon % 2.00(5) + title emphasize output + output.series.volume.number + address output + editor empty$ + 'skip$ + { organization output } + if$ + publisher output + format.date output + new.block + note output + fin.entry +} + +FUNCTION {techreport} +{ +%%%% + author "author" required.argument + title "title" required.argument + institution "institution" required.argument + year "year" required.argument +%%%% + output.bibitem + format.authors add.colon % 2.00(5) + title output + format.tr.number output.nonnull + institution output + address output + format.date output + new.block + note output + fin.entry +} + +FUNCTION {unpublished} +{ +%%%% + author "author" required.argument + title "title" required.argument + note "note" required.argument +%%%% + output.bibitem + format.authors add.colon % 2.00(5) + title output + format.date output + new.block + note output + fin.entry +} + +FUNCTION {default.type} { misc } + +MACRO {jan} {"January"} + +MACRO {feb} {"February"} + +MACRO {mar} {"March"} + +MACRO {apr} {"April"} + +MACRO {may} {"May"} + +MACRO {jun} {"June"} + +MACRO {jul} {"July"} + +MACRO {aug} {"August"} + +MACRO {sep} {"September"} + +MACRO {oct} {"October"} + +MACRO {nov} {"November"} + +MACRO {dec} {"December"} + +MACRO {acmcs} {"ACM Computing Surveys"} + +MACRO {acta} {"Acta Informatica"} + +MACRO {cacm} {"Communications of the ACM"} + +MACRO {ibmjrd} {"IBM Journal of Research and Development"} + +MACRO {ibmsj} {"IBM Systems Journal"} + +MACRO {ieeese} {"IEEE Transactions on Software Engineering"} + +MACRO {ieeetc} {"IEEE Transactions on Computers"} + +MACRO {ieeetcad} + {"IEEE Transactions on Computer-Aided Design of Integrated Circuits"} + +MACRO {ipl} {"Information Processing Letters"} + +MACRO {jacm} {"Journal of the ACM"} + +MACRO {jcss} {"Journal of Computer and System Sciences"} + +MACRO {scp} {"Science of Computer Programming"} + +MACRO {sicomp} {"SIAM Journal on Computing"} + +MACRO {tocs} {"ACM Transactions on Computer Systems"} + +MACRO {tods} {"ACM Transactions on Database Systems"} + +MACRO {tog} {"ACM Transactions on Graphics"} + +MACRO {toms} {"ACM Transactions on Mathematical Software"} + +MACRO {toois} {"ACM Transactions on Office Information Systems"} + +MACRO {toplas} {"ACM Transactions on Programming Languages and Systems"} + +MACRO {tcs} {"Theoretical Computer Science"} + +READ + +STRINGS { longest.label } + +INTEGERS { number.label longest.label.width } + +FUNCTION {initialize.longest.label} +{ "" 'longest.label := + #1 'number.label := + #0 'longest.label.width := +} + +FUNCTION {longest.label.pass} +{ number.label int.to.str$ 'label := + number.label #1 + 'number.label := + label width$ longest.label.width > + { label 'longest.label := + label width$ 'longest.label.width := + } + 'skip$ + if$ +} + +EXECUTE {initialize.longest.label} + +ITERATE {longest.label.pass} + +FUNCTION {begin.bib} +{ preamble$ empty$ + 'skip$ + { preamble$ write$ newline$ } + if$ + "\begin{thebibliography}{" longest.label * "}" * write$ newline$ +} + +EXECUTE {begin.bib} + +EXECUTE {init.state.consts} + +ITERATE {call.type$} + +FUNCTION {end.bib} +{ newline$ + "\end{thebibliography}" write$ newline$ +} + +EXECUTE {end.bib} + +
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/ipsjunsrt.bst Mon Mar 24 01:30:34 2008 +0900 @@ -0,0 +1,1135 @@ +% ipsjunsrt.bst 15-Jun-07 by Hiroshi Nakashima (ver 2.12) +% ipsjunsrt.bst 30-Jan-02 by Hiroshi Nakashima (ver 2.00) +% ipsjunsrt.bst 28-Dec-93 by Hiroshi Nakashima (ver 1.00) +% jssst.bst tomura@etl.go.jp (Satoru Tomura) +% BibTeX standard bibliography style `jplain' + % version 0.10 for JBibTeX versions 0.10 or later, JLaTeX version 2.09. + % by Shouichi Matsui, matsui@denken.junet + +ENTRY + { address + author + booktitle + chapter + edition + editor + howpublished + institution + journal + key + month + note + number + organization + pages + publisher + school + series + title + type + volume + year + yomi + } + {} + { label } + +INTEGERS { output.state before.all mid.sentence after.sentence after.block } + +INTEGERS { before.year } + +FUNCTION {init.state.consts} +{ #0 'before.all := + #1 'mid.sentence := + #2 'after.sentence := + #3 'after.block := + #4 'before.year := % 1.00(1) +} + +STRINGS { s t } + +FUNCTION {is.kanji} +{ is.kanji.str$ } % 1.00(2), 2.00(1) + +FUNCTION {output.nonnull} +{ 's := + output.state mid.sentence = + { duplicate$ is.kanji % 2.00(2) + { "," * write$ } + { ", " * write$ } + if$ + } + { output.state after.block = + { add.period$ write$ + newline$ + "\newblock " write$ + } + { output.state before.all = + 'write$ + { output.state before.year = % 1.00(1) + { " " * write$ } + { add.period$ " " * write$ } + if$ + } + if$ + } + if$ + mid.sentence 'output.state := + } + if$ + s +} + +FUNCTION {output} +{ duplicate$ empty$ + 'pop$ + 'output.nonnull + if$ +} + +FUNCTION {required.argument} +{ 't := + empty$ + {"Missing required argument " t * " in " * cite$ * warning$} + 'skip$ + if$ +} + +FUNCTION {required.exclusive.or.argument} +{ 't := + empty$ + { 's := + empty$ + { t " or " * s * " is missing in " * cite$ * warning$} + 'skip$ + if$ + } + { 's := + empty$ + 'skip$ + { "You can use only one of " t * " and " * s * " in " * cite$ * warning$} + if$ + } + if$ +} + +FUNCTION {required.and.or.argument} +{ 't := empty$ + { 's := empty$ + { "there's no " t * " and/or " * s * cite$ * warning$ } + 'skip$ + if$ + } + { pop$ pop$ } + if$ +} + +FUNCTION {optional.series.volume.number.argument} +{ series empty$ + { volume empty$ + { number empty$ + 'skip$ + { "there's a number but no series in " cite$ * warning$ } + if$ + } + { number empty$ + { "there's a volume but no series in " cite$ * warning$ } + { "you can use only one of volume and number in " cite$ * warning$} + if$ + } + if$ + } + { volume empty$ + { number empty$ + { "there's a series but neither volume nor number in " cite$ * warning$ } + 'skip$ + if$ + } + { number empty$ + 'skip$ + { "you can use only one of volume and number in " cite$ * warning$ } + if$ + } + if$ + } + if$ +} + +FUNCTION {output.bibitem} +{ newline$ + "\bibitem{" write$ + cite$ write$ + "}" write$ + newline$ + before.all 'output.state := +} + +FUNCTION {fin.entry} +{ add.period$ + write$ + newline$ +} + +FUNCTION {new.block} +{ output.state before.all = + 'skip$ + { after.block 'output.state := } + if$ +} + +FUNCTION {new.sentence} +{ output.state after.block = + 'skip$ + { output.state before.all = + 'skip$ + { after.sentence 'output.state := } + if$ + } + if$ +} + +FUNCTION {not} +{ { #0 } + { #1 } + if$ +} + +FUNCTION {and} +{ 'skip$ + { pop$ #0 } + if$ +} + +FUNCTION {or} +{ { pop$ #1 } + 'skip$ + if$ +} + +FUNCTION {new.block.checka} +{ empty$ + 'skip$ + 'new.block + if$ +} + +FUNCTION {new.block.checkb} +{ empty$ + swap$ empty$ + and + 'skip$ + 'new.block + if$ +} + +FUNCTION {new.sentence.checka} +{ empty$ + 'skip$ + 'new.sentence + if$ +} + +FUNCTION {new.sentence.checkb} +{ empty$ + swap$ empty$ + and + 'skip$ + 'new.sentence + if$ +} + +FUNCTION {field.or.null} +{ duplicate$ empty$ + { pop$ "" } + 'skip$ + if$ +} + +FUNCTION {emphasize} +{ duplicate$ empty$ + { pop$ "" } + { duplicate$ is.kanji + 'skip$ % 1.00(3) + { "{\em " swap$ * "}" * } % 2.00(3) + if$ + } + if$ +} + +INTEGERS { nameptr namesleft numnames } + +FUNCTION {format.names} % 1.00(4), 2.00(4) +{ 's := + #1 'nameptr := + s num.names$ 'numnames := + numnames 'namesleft := + { namesleft #0 > } + { s nameptr "{ff}{ll}" format.name$ duplicate$ is.kanji + { duplicate$ text.length$ #6 > + { 't := } + { pop$ s nameptr "{ff} {ll}" format.name$ 't := } + if$ + } + { pop$ s nameptr "{vv }{ll}{, jj}{, f.}" format.name$ 't := } + if$ + nameptr #1 > + { namesleft #1 > + { s is.kanji + { "," } + { ", " } + if$ + * t * } + { t "others" = + { s is.kanji + {"ほか" * } + {" et al." * } + if$ + } + { s is.kanji + {"," * t * } % put "," here for Kanji (H.N.) + {" and " * t * } + if$ + } + if$ + } + if$ + } + 't + if$ + nameptr #1 + 'nameptr := + namesleft #1 - 'namesleft := + } + while$ +} + +FUNCTION {format.authors} +{ author empty$ + { "" } + { author format.names } + if$ +} + +FUNCTION {add.colon} % 2.00(5) +{ duplicate$ is.kanji + { "\:" * } % 2.12(1) + { ": " * } + if$ +} + +FUNCTION {format.editors.inparen} % 2.00(6) +{ editor empty$ + { "" } + { editor format.names + editor num.names$ #1 > + { editor is.kanji + {",編" * } {", eds." *} if$ + } + { editor is.kanji + {",編" *} {", ed." *} if$ + } + if$ + } + if$ +} + +FUNCTION {format.editors} +{ editor empty$ + { "" } + { editor format.names + editor num.names$ #1 > + { editor is.kanji + {"(編)" * } {"(eds.)" *} if$ % 2.00(7) + } + { editor is.kanji + {"(編)" *} {"(ed.)" *} if$ % 2.00(7) + } + if$ + } + if$ +} + +FUNCTION {n.dashify} +{ 't := + "" + { t empty$ not } + { t #1 #1 substring$ "-" = + { t #1 #2 substring$ "--" = not + { "--" * + t #2 global.max$ substring$ 't := + } + { { t #1 #1 substring$ "-" = } + { "-" * + t #2 global.max$ substring$ 't := + } + while$ + } + if$ + } + { t #1 #1 substring$ * + t #2 global.max$ substring$ 't := + } + if$ + } + while$ +} + +FUNCTION {format.date} +{ before.year 'output.state := % 1.00(1) + year empty$ + { month empty$ + { "" } + { "there's a month but no year in " cite$ * warning$ + "" % 1.00(5) + } + if$ + } + { "(" year ")" * * } % 1.00(5) + if$ +} + +FUNCTION {tie.or.space.connect} +{ duplicate$ text.length$ #3 < + { "~" } + { "\ " } % 1.00(6) + if$ + swap$ * * +} + +FUNCTION {output.volume} +{ + volume empty$ + 'skip$ + { "Vol.~" volume * output} + if$ + +} + +FUNCTION {output.number} +{ + number empty$ + 'skip$ + { "No.~" number * output} + if$ +} + +FUNCTION {output.series.volume.number} +{ series empty$ + { output.volume + output.number } + { series is.kanji + volume empty$ + number empty$ + or + and + { series " " * volume * number * output} + { series output + output.volume + output.number} + if$ + } + if$ +} + +FUNCTION {format.edition} +{ edition empty$ + { "" } + { output.state mid.sentence = + { edition "l" change.case$ " edition" * } + { edition "t" change.case$ " edition" * } + if$ + } + if$ +} + +INTEGERS { multiresult } + +FUNCTION {multi.page.check} +{ 't := + #0 'multiresult := + { multiresult not + t empty$ not + and + } + { t #1 #1 substring$ + duplicate$ "-" = + swap$ duplicate$ "," = + swap$ "+" = + or or + { #1 'multiresult := } + { t #2 global.max$ substring$ 't := } + if$ + } + while$ + multiresult +} + +FUNCTION {format.pages} % 1.00(7) +{ pages empty$ + { "" } + { pages multi.page.check + { "pp." pages n.dashify tie.or.space.connect } + { "p." pages tie.or.space.connect } + if$ + } + if$ +} + +FUNCTION {format.vol.num.pages} % 1.00(8) +{ volume empty$ + { ""} + { " Vol.~" volume * } + if$ + number empty$ + 'skip$ + { volume empty$ + { "there's a number but no volume in " cite$ * warning$ } + { "," *} + if$ + " No.~" number * * + } + if$ + pages empty$ + 'skip$ + { duplicate$ empty$ + { pop$ format.pages } + { ", " * format.pages * } + if$ + } + if$ +} + +FUNCTION {format.chapter.pages} +{ chapter empty$ + 'format.pages + { type empty$ + { "chapter" chapter tie.or.space.connect } + { type is.kanji + { chapter type tie.or.space.connect } + { type "l" change.case$ chapter tie.or.space.connect } + if$ + } + if$ + pages empty$ + 'skip$ + { ", " * format.pages * } + if$ + } + if$ +} + +FUNCTION {format.in.ed.booktitle} +{ booktitle empty$ + { "" } + { booktitle emphasize + editor empty$ + 'skip$ + { booktitle is.kanji + { "(" * format.editors.inparen * ")" *} % 2.00(6,7) + { " (" * format.editors.inparen * ")" *} % 1.00(9), 2.00(6) + if$ + } + if$ + } + if$ +} + +FUNCTION {empty.misc.check} +{ author empty$ title empty$ howpublished empty$ + month empty$ year empty$ note empty$ + and and and and and + key empty$ not and + { "all relevant fields are empty in " cite$ * warning$ } + 'skip$ + if$ +} + +FUNCTION {format.thesis.type} +{ type empty$ + 'skip$ + { pop$ + type "t" change.case$ + } + if$ +} + +FUNCTION {format.tr.number} +{ type empty$ + { title empty$ + { "Technical Report" } + { title is.kanji + { "技術報告" } + { "Technical Report" } + if$ + } + if$ + } + {type} + if$ + number empty$ + { "t" change.case$ } + { " " number * * } + if$ +} + +FUNCTION {format.article.crossref} % 2.00(8) +{ key empty$ + { journal empty$ + { "need key or journal for " cite$ * " to crossref " * crossref * + warning$ + "" + } + { journal emphasize } % 1.00(10) + if$ + } + { "In " key * } + if$ + " \cite{" * crossref * "}" * +} + +FUNCTION {format.crossref.editor} % 1.00(11) +{ editor #1 + editor is.kanji { "{ff}" } { "{vv }{ll}" } if$ + format.name$ + editor num.names$ duplicate$ + #2 > + { editor is.kanji + {pop$ "ほか" *} {pop$ " et al." * } if$ + } + { #2 < + 'skip$ + { editor #2 "{ff }{vv }{ll}{ jj}" format.name$ "others" = + { editor is.kanji + {"ほか" *} {" et al." * } if$ + } + { editor is.kanji + {"・" * editor #2 "{ff}" format.name$ * } + {" and " * editor #2 "{vv }{ll}" format.name$ * } + if$ + } + if$ + } + if$ + } + if$ +} + +FUNCTION {format.book.crossref} % 2.00(8) +{ editor empty$ + editor field.or.null author field.or.null = + or + { key empty$ + { series empty$ + { "need editor, key, or series for " cite$ * " to crossref " * + crossref * warning$ + "" + } + { series emphasize } % 1.00(10) + if$ + } + { "In " key * } + if$ + } + { format.crossref.editor } + if$ + " \cite{" * crossref * "}" * + volume empty$ + { "empty volume in " cite$ * "'s crossref of " * crossref * warning$ } + { duplicate$ is.kanji { "," } { ", "} if$ * + "Vol." * volume tie.or.space.connect + } + if$ +} + +FUNCTION {format.incoll.inproc.crossref} % 2.00(8) +{ editor empty$ + editor field.or.null author field.or.null = + or + { key empty$ + { booktitle empty$ + { "need editor, key, or booktitle for " cite$ * " to crossref " * + crossref * warning$ + "" + } + { booktitle emphasize } % 1.00(10) + if$ + } + { "In " key * } + if$ + } + { format.crossref.editor } + if$ + " \cite{" * crossref * "}" * +} + +FUNCTION {article} +{ +%%%% + author "author" required.argument + title "title" required.argument + journal "journal" required.argument + year "year" required.argument +%%%% jssst + volume "volume" + number "number" + required.and.or.argument + pages "pages" required.argument +%%%% + output.bibitem + format.authors add.colon % 2.00(5) + title output + crossref missing$ + { journal emphasize output + format.vol.num.pages output % 1.00(12) + format.date output + } + { format.article.crossref output.nonnull + format.pages output + } + if$ + new.block + note output + fin.entry +} + +FUNCTION {book} +{ +%%%% + author "author" + editor "editor" + required.exclusive.or.argument + title "title" required.argument + publisher "publisher" required.argument + year "year" required.argument + optional.series.volume.number.argument +%%%% + output.bibitem + author empty$ + { format.editors} + { format.authors} + if$ + add.colon % 2.00(5) + title emphasize output + crossref missing$ + { output.series.volume.number + publisher output + address output + } + { new.block + format.book.crossref output.nonnull + } + if$ + format.edition output + format.date output + new.block + note output + fin.entry +} + +FUNCTION {booklet} +{ +%%%% + title "title" required.argument +%%%% jssst + author "author" required.argument +%%%% + output.bibitem + format.authors add.colon % 2.00(5) + title output + howpublished output + address output + format.date output + new.block + note output + fin.entry +} + +FUNCTION {inbook} +{ +%%%% + author "author" + editor "editor" + required.exclusive.or.argument + title "title" required.argument + chapter "chapter" + pages "pages" + required.and.or.argument + publisher "publisher" required.argument + year "year" required.argument + + optional.series.volume.number.argument +%%%% + output.bibitem + author empty$ + { format.editors} + { format.authors} + if$ + add.colon % 2.00(5) + title emphasize output + crossref missing$ + { output.series.volume.number + format.chapter.pages output + publisher output + } + { format.chapter.pages output + new.block + format.book.crossref output.nonnull + } + if$ + format.edition output + format.date output % 1.00(13) + new.block + note output + fin.entry +} + +FUNCTION {incollection} +{ +%%%% + author "author" required.argument + title "title" required.argument + booktitle "booktitle" required.argument + publisher "publisher" required.argument + year "year" required.argument + + optional.series.volume.number.argument +%%%% + output.bibitem + format.authors add.colon % 2.00(5) + title output + crossref missing$ + { format.in.ed.booktitle output + output.series.volume.number + publisher output + address output + format.edition output + format.chapter.pages output % 1.00(13) + format.date output + } + { format.incoll.inproc.crossref output.nonnull + format.chapter.pages output + } + if$ + new.block + note output + fin.entry +} + +FUNCTION {inproceedings} +{ +%%%% + author "author" required.argument + title "title" required.argument + year "year" required.argument + + optional.series.volume.number.argument +%%%% + output.bibitem + format.authors add.colon % 2.00(5) + title output + crossref missing$ + { format.in.ed.booktitle output + booktitle "booktitle" required.argument + output.series.volume.number + address output + organization output + publisher output + format.pages output + format.date output % 1.00(13) + } + { format.incoll.inproc.crossref output.nonnull + format.pages output + } + if$ + new.block + note output + fin.entry +} + +FUNCTION {conference} { inproceedings } + +FUNCTION {manual} +{ +%%%% + title "title" required.argument +%%%% jssst + author "author" + organization "organazaion" + required.exclusive.or.argument +%%%% + output.bibitem + author empty$ + { organization} + { format.authors} + if$ + add.colon % 2.00(5) + title emphasize output + author empty$ + 'skip$ + { organization output } + if$ + address output + format.edition output + format.date output + new.block + note output + fin.entry +} + +FUNCTION {mastersthesis} +{ +%%%% + author "author" required.argument + title "title" required.argument + school "school" required.argument + year "year" required.argument +%%%% + output.bibitem + format.authors add.colon % 2.00(5) + title output + author empty$ + { "Master's thesis" } + { author is.kanji + { "修士論文" } + { "Master's thesis" } + if$ + } + if$ + format.thesis.type output.nonnull + school output + address output + format.date output + new.block + note output + fin.entry +} + +FUNCTION {misc} +{ +%%%% +%%%% jssst + author "author" required.argument + title "title" required.argument +%%%% + output.bibitem + format.authors add.colon % 2.00(5) + title output + howpublished output + format.date output + new.block + note output + fin.entry + empty.misc.check +} + +FUNCTION {phdthesis} +{ +%%%% + author "author" required.argument + title "title" required.argument + school "school" required.argument + year "year" required.argument +%%%% + output.bibitem + format.authors add.colon % 2.00(5) + title output % 2.00(9) + author empty$ + { "PhD Thesis" } + { author is.kanji + { "博士論文" } + { "PhD Thesis" } + if$ + } + if$ + format.thesis.type output.nonnull + school output + address output + format.date output + new.block + note output + fin.entry +} + +FUNCTION {proceedings} +{ +%%%% + title "title" required.argument + year "year" required.argument + + optional.series.volume.number.argument +%%%% jssst + editor "editor" + organization "organization" + required.exclusive.or.argument +%%%% + output.bibitem + editor empty$ + { organization } + { format.editors } + if$ + add.colon % 2.00(5) + title emphasize output + output.series.volume.number + address output + editor empty$ + 'skip$ + { organization output } + if$ + publisher output + format.date output + new.block + note output + fin.entry +} + +FUNCTION {techreport} +{ +%%%% + author "author" required.argument + title "title" required.argument + institution "institution" required.argument + year "year" required.argument +%%%% + output.bibitem + format.authors add.colon % 2.00(5) + title output + format.tr.number output.nonnull + institution output + address output + format.date output + new.block + note output + fin.entry +} + +FUNCTION {unpublished} +{ +%%%% + author "author" required.argument + title "title" required.argument + note "note" required.argument +%%%% + output.bibitem + format.authors add.colon % 2.00(5) + title output + format.date output + new.block + note output + fin.entry +} + +FUNCTION {default.type} { misc } + +MACRO {jan} {"January"} + +MACRO {feb} {"February"} + +MACRO {mar} {"March"} + +MACRO {apr} {"April"} + +MACRO {may} {"May"} + +MACRO {jun} {"June"} + +MACRO {jul} {"July"} + +MACRO {aug} {"August"} + +MACRO {sep} {"September"} + +MACRO {oct} {"October"} + +MACRO {nov} {"November"} + +MACRO {dec} {"December"} + +MACRO {acmcs} {"ACM Computing Surveys"} + +MACRO {acta} {"Acta Informatica"} + +MACRO {cacm} {"Communications of the ACM"} + +MACRO {ibmjrd} {"IBM Journal of Research and Development"} + +MACRO {ibmsj} {"IBM Systems Journal"} + +MACRO {ieeese} {"IEEE Transactions on Software Engineering"} + +MACRO {ieeetc} {"IEEE Transactions on Computers"} + +MACRO {ieeetcad} + {"IEEE Transactions on Computer-Aided Design of Integrated Circuits"} + +MACRO {ipl} {"Information Processing Letters"} + +MACRO {jacm} {"Journal of the ACM"} + +MACRO {jcss} {"Journal of Computer and System Sciences"} + +MACRO {scp} {"Science of Computer Programming"} + +MACRO {sicomp} {"SIAM Journal on Computing"} + +MACRO {tocs} {"ACM Transactions on Computer Systems"} + +MACRO {tods} {"ACM Transactions on Database Systems"} + +MACRO {tog} {"ACM Transactions on Graphics"} + +MACRO {toms} {"ACM Transactions on Mathematical Software"} + +MACRO {toois} {"ACM Transactions on Office Information Systems"} + +MACRO {toplas} {"ACM Transactions on Programming Languages and Systems"} + +MACRO {tcs} {"Theoretical Computer Science"} + +READ + +STRINGS { longest.label } + +INTEGERS { number.label longest.label.width } + +FUNCTION {initialize.longest.label} +{ "" 'longest.label := + #1 'number.label := + #0 'longest.label.width := +} + +FUNCTION {longest.label.pass} +{ number.label int.to.str$ 'label := + number.label #1 + 'number.label := + label width$ longest.label.width > + { label 'longest.label := + label width$ 'longest.label.width := + } + 'skip$ + if$ +} + +EXECUTE {initialize.longest.label} + +ITERATE {longest.label.pass} + +FUNCTION {begin.bib} +{ preamble$ empty$ + 'skip$ + { preamble$ write$ newline$ } + if$ + "\begin{thebibliography}{" longest.label * "}" * write$ newline$ +} + +EXECUTE {begin.bib} + +EXECUTE {init.state.consts} + +ITERATE {call.type$} + +FUNCTION {end.bib} +{ newline$ + "\end{thebibliography}" write$ newline$ +} + +EXECUTE {end.bib} + +
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/sigos.bib Mon Mar 24 01:30:34 2008 +0900 @@ -0,0 +1,4 @@ +@manial{cell, +author = "Sony Corporation.", +title = "Cell broadband engine architecture", +year = 2005} \ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/sigos.tex Mon Mar 24 01:30:34 2008 +0900 @@ -0,0 +1,82 @@ +\documentclass[techrep]{ipsjpapers} +\usepackage[dvipdfm]{graphicx} + +% ユーザが定義したマクロなど. +\makeatletter + +\begin{document} + +% 和文表題 +\title{Cell 用の Fine-grain Task Manager の実装} +% 英文表題 +\etitle{} + +% 所属ラベルの定義 +\affilabel{1}{琉球大学理工学研究科情報工学専攻 \\Interdisciplinary Infomation Engineering, Graduate School of Engineering and Science, University of the Ryukyus.} +\affilabel{2}{琉球大学工学部情報工学科\\Infomation Engineering, University of the Ryukyus.} +\affilabel{3}{琉球大学理工学研究科情報工学専攻 \\Interdisciplinary Infomation Engineering, Graduate School of Engineering and Science, University of the Ryukyus.} +\affilabel{4}{琉球大学工学部情報工学科\\Infomation Engineering, University of the Ryukyus.} + +% 和文著者名 +\author{ + 宮國 渡\affiref{1}\and + 河野 真治\affiref{2}\and + 神里 晃\affiref{3}\and + 杉山 千秋\affiref{4} +} + +% 英文著者名 +\eauthor{ + Wataru MIYAGUNI\affiref{1}\and + Shinji KONO\affiref{2}\and + Akira KAMIZATO\affiref{1}\and + Chiaki SUGIYAMA\affiref{2} +} + +% 連絡先(投稿時に必要.製版用では無視される.) +\contact{宮國 渡\\ + 〒903-0213 沖縄県西原町千原1番地\\ + 琉球大学工学部情報工学科\\ + TEL: (098)895-2221\qquad FAX: (098)895-8727\\ + email: gongo@cr.ie.u-ryukyu.ac.jp} + +% 和文概要 +\begin{abstract} +PlayStation 3 では、 +搭載されている Linux を用いてゲームを開発することができるが、 +GPU の詳細が公開されていないため、 +Frame Buffer 上に描画する必要がある。 +Frame Buffer 上の描画は非常に低速である。 +本研究では Cell 用の Task Manager を実装し、 +Frame Buffer 上で高速な 3D Graphics Renderer を開発する。 +\end{abstract} +% 英文概要 +\begin{eabstract} +In PS3, the game can be developed by using installed Linux. +However, because details of GPU are unpublished, +it is necessary to draw on Frame Buffer. +Drawing on Frame Buffer is very low-speed. +In this research, we implement Task Manager for Cell and +develop 3D Graphics Renderer high-speed on Frame Buffer. +\end{eabstract} + +% 表題などの出力 +\maketitle + +% 本文はここから始まる + +\input{cell} +%\input{introduction.tex} +%\input{cbc.tex} +%\input{description_semantics.tex} +%\input{main.tex} +%\input{simulation.tex} +%\input{level.tex} +%\input{conclusion.tex} +%\input{bib.tex} + +\bibliographystyle{ipsjunsrt} +\bibliography{sigos} + + +\end{document}