[BACK]Return to genkou19991125.tex CVS log [TXT][DIR] Up to [local] / OpenXM / doc

Diff for /OpenXM/doc/Attic/genkou19991125.tex between version 1.80 and 1.96

version 1.80, 1999/12/25 04:08:50 version 1.96, 1999/12/26 06:33:32
Line 1 
Line 1 
 \documentclass{jarticle}  \documentclass{jarticle}
   
 %% $OpenXM: OpenXM/doc/genkou19991125.tex,v 1.79 1999/12/24 21:56:37 tam Exp $  %% $OpenXM: OpenXM/doc/genkou19991125.tex,v 1.95 1999/12/26 04:11:54 tam Exp $
   
 \usepackage{jssac}  \usepackage{jssac}
 \title{  
 1. °ÕÌ£¤â¤Ê¤¤½¤¾þ²á¾ê¤Ê¸ì¶ç¤ÏÇÓ½ü¤·¤Þ¤·¤ç¤¦¡£\\  
 2. ¤»¤Ã¤«¤¯ fill ¤·¤Æ¤¤¤ë¤Î¤ò¤¤¤¸¤é¤Ê¤¤¤Ç¤¯¤ì¡£\\  
 3. Åļ¤¬Í·¤ó¤Ç¤Ð¤«¤ê¤Ç¤ª¤ì¤Ð¤«¤ê»Å»ö¤ò¤·¤Æ¤¤¤ë¤Î¤Ï¤É¤¦¹Í¤¨¤Æ¤âÉÔ¸øÊ¿¤À¡£  
 ¤Ê¤ó¤Ç»Å»ö¤ò¤·¤Ê¤¤¤Î¤«¡¢¤¤¤¤²Ã¸º»Å»ö¤ò¤·¤í¡¢Åļ¡£  
 %¢¬¤¹¤ß¤Þ¤»¤ó¡¢²È¤Ç¸æÈÓ¿©¤Ù¤Æ¤Þ¤·¤¿¡£  
 }  
   
   \title{OpenXM ¥×¥í¥¸¥§¥¯¥È¤Î¸½¾õ¤Ë¤Ä¤¤¤Æ}
 \author{±ü ë ¡¡ ¹Ô ±û\affil{¿À¸ÍÂç³ØÂç³Ø±¡¼«Á³²Ê³Ø¸¦µæ²Ê}  \author{±ü ë ¡¡ ¹Ô ±û\affil{¿À¸ÍÂç³ØÂç³Ø±¡¼«Á³²Ê³Ø¸¦µæ²Ê}
                 \mail{okutani@math.sci.kobe-u.ac.jp}                  \mail{okutani@math.sci.kobe-u.ac.jp}
   \and  ¾® ¸¶ ¡¡ ¸ù Ǥ\affil{¶âÂôÂç³ØÍý³ØÉô}    \and  ¾® ¸¶ ¡¡ ¸ù Ǥ\affil{¶âÂôÂç³ØÍý³ØÉô}
Line 29 
Line 23 
 \begin{document}  \begin{document}
 \maketitle  \maketitle
   
   
 \section{OpenXM¤È¤Ï}  \section{OpenXM¤È¤Ï}
   
 OpenXM ¤Ï¿ô³Ø¥×¥í¥»¥¹´Ö¤Ç¥á¥Ã¥»¡¼¥¸¤ò¸ò´¹¤¹¤ë¤¿¤á¤Îµ¬Ìó¤Ç¤¢¤ë¡£  OpenXM ¤Ï¿ô³Ø¥×¥í¥»¥¹´Ö¤Ç¥á¥Ã¥»¡¼¥¸¤ò¸ò´¹¤¹¤ë¤¿¤á¤Îµ¬Ìó¤Ç¤¢¤ë.  ¿ô³Ø¥×¥í
 ¿ô³Ø¥×¥í¥»¥¹´Ö¤Ç¥á¥Ã¥»¡¼¥¸¤ò¤ä¤ê¤È¤ê¤¹¤ë¤³¤È¤Ë¤è¤ê¡¢  ¥»¥¹´Ö¤Ç¥á¥Ã¥»¡¼¥¸¤ò¤ä¤ê¤È¤ê¤¹¤ë¤³¤È¤Ë¤è¤ê, ¤¢¤ë¿ô³Ø¥×¥í¥»¥¹¤«¤é¾¤Î¿ô³Ø
 ¤¢¤ë¿ô³Ø¥×¥í¥»¥¹¤«¤é¾¤Î¿ô³Ø¥×¥í¥»¥¹¤ò¸Æ¤Ó½Ð¤·¤Æ·×»»¤ò¹Ô¤Ê¤Ã¤¿¤ê¡¢  ¥×¥í¥»¥¹¤ò¸Æ¤Ó½Ð¤·¤Æ·×»»¤ò¹Ô¤Ê¤Ã¤¿¤ê, ¾¤Î¥Þ¥·¥ó¤Ç·×»»¤ò¹Ô¤Ê¤ï¤»¤¿¤ê¤¹¤ë
 Â¾¤Î¥Þ¥·¥ó¤Ç·×»»¤ò¹Ô¤Ê¤ï¤»¤¿¤ê¤¹¤ë¤³¤È¤¬ÌÜŪ¤Ç¤¢¤ë¡£  ¤³¤È¤¬ÌÜŪ¤Ç¤¢¤ë.  ¤Ê¤ª, OpenXM ¤È¤Ï Open message eXchange protocol for
 ¤Ê¤ª¡¢ OpenXM ¤È¤Ï Open message eXchange protocol for Mathematics ¤Îά¤Ç¤¢¤ë¡£  Mathematics ¤Îά¤Ç¤¢¤ë.  OpenXM ¤Î³«È¯¤Îȯü¤ÏÌîϤ¤È¹â»³¤Ë¤è¤ê, asir ¤È
 OpenXM ¤Î³«È¯¤Îȯü¤ÏÌîϤ¤È¹â»³¤Ë¤è¤ê¡¢  kan/sm1 ¤òÁê¸ß¤Ë¸Æ¤Ó½Ð¤¹µ¡Ç½¤ò¼ÂÁõ¤·¤¿¤³¤È¤Ç¤¢¤ë.
 asir ¤È kan/sm1 ¤òÁê¸ß¤Ë¸Æ¤Ó½Ð¤¹µ¡Ç½¤ò¼ÂÁõ¤·¤¿¤³¤È¤Ç¤¢¤ë¡£  
   
 ½é´ü¤Î¼ÂÁõ¤Ç¤Ï¡¢Áê¼ê¦¤Î¥í¡¼¥«¥ë¸À¸ì¤Îʸˡ¤Ë½¾¤Ã¤¿Ê¸»úÎó¤òÁ÷¤Ã¤Æ¤¤¤¿¡£  ½é´ü¤Î¼ÂÁõ¤Ç¤Ï, Áê¼ê¦¤Î¥í¡¼¥«¥ë¸À¸ì¤Îʸˡ¤Ë½¾¤Ã¤¿Ê¸»úÎó¤òÁ÷¤Ã¤Æ¤¤¤¿.
 ¤³¤ÎÊýË¡¤Ç¤ÏÁê¼ê¦¤Î¥½¥Õ¥È¤¬ asir ¤Ê¤Î¤« kan/sm1 ¤Ê¤Î¤«¤òȽÊ̤¹¤ë¤Ê¤É¤·¤Æ¡¢  ¤³¤ÎÊýË¡¤Ç¤ÏÁê¼ê¦¤Î¥½¥Õ¥È¤¬ asir ¤Ê¤Î¤« kan/sm1 ¤Ê¤Î¤«¤òȽÊ̤¹¤ë¤Ê¤É¤·
 Áê¼ê¦¤Î¥í¡¼¥«¥ë¸À¸ì¤Îʸˡ¤Ë¹ç¤ï¤»¤¿Ê¸»úÎó¤òºîÀ®¤·¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤¡£  ¤Æ, Áê¼ê¦¤Î¥í¡¼¥«¥ë¸À¸ì¤Îʸˡ¤Ë¹ç¤ï¤»¤¿Ê¸»úÎó¤òºîÀ®¤·¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤.
 ¤³¤Î¥í¡¼¥«¥ë¸À¸ì¤Îʸˡ¤Ë½¾¤Ã¤¿Ê¸»úÎó¤òÁ÷¤ëÊýË¡¤Ï¡¢  ¤³¤Î¥í¡¼¥«¥ë¸À¸ì¤Îʸˡ¤Ë½¾¤Ã¤¿Ê¸»úÎó¤òÁ÷¤ëÊýË¡¤Ï, ¸úΨŪ¤Ç¤¢¤ë¤È¤Ï¤¤¤¤Æñ
 ¸úΨŪ¤Ç¤¢¤ë¤È¤Ï¤¤¤¤Æñ¤¤¤¬¡¢»È¤¤¤ä¤¹¤¤¤È¤â¸À¤¨¤ë¡£  ¤¤¤¬, »È¤¤¤ä¤¹¤¤¤È¤â¸À¤¨¤ë.
   
 ¸½ºß¤Î OpenXM µ¬Ìó¤Ç¤Ï¶¦ÄÌɽ¸½·Á¼°¤Ë¤è¤ë¥á¥Ã¥»¡¼¥¸¤òÍѤ¤¤Æ¤¤¤ë¡£  ¸½ºß¤Î OpenXM µ¬Ìó¤Ç¤Ï¶¦ÄÌɽ¸½·Á¼°¤Ë¤è¤ë¥á¥Ã¥»¡¼¥¸¤òÍѤ¤¤Æ¤¤¤ë.  ¾åµ­¤Î
 ¾åµ­¤Îʸ»úÎó¤òÁ÷¤ëÊýË¡¤ÎÍøÅÀ¤òÀ¸¤«¤¹¤¿¤á¡¢  Ê¸»úÎó¤òÁ÷¤ëÊýË¡¤ÎÍøÅÀ¤òÀ¸¤«¤¹¤¿¤á, OpenXM µ¬Ìó¤Ç¤Ï¶¦ÄÌɽ¸½·Á¼°¤ÎÃæ¤Îʸ
 OpenXM µ¬Ìó¤Ç¤Ï¶¦ÄÌɽ¸½·Á¼°¤ÎÃæ¤Îʸ»úÎó¤È¤·¤Æ¡¢  »úÎó¤È¤·¤Æ, ¥í¡¼¥«¥ë¸À¸ì¤Îʸˡ¤Ë½¾¤Ã¤¿Ê¸»úÎó¤òÍѤ¤¤¿¥á¥Ã¥»¡¼¥¸¤Î¸ò´¹¤â²Ä
 ¥í¡¼¥«¥ë¸À¸ì¤Îʸˡ¤Ë½¾¤Ã¤¿Ê¸»úÎó¤òÍѤ¤¤¿¥á¥Ã¥»¡¼¥¸¤Î¸ò´¹¤â²Äǽ¤È¤Ê¤Ã¤Æ¤¤¤ë¡£  Ç½¤È¤Ê¤Ã¤Æ¤¤¤ë.
   
 OpenXM µ¬Ìó¤Ç¤ÏÄÌ¿®¤ÎÊýË¡¤Ë´ö¤é¤«¤Î¼«Í³ÅÙ¤¬¤¢¤ë¤¬¡¢  OpenXM µ¬Ìó¤Ç¤ÏÄÌ¿®¤ÎÊýË¡¤Ë´ö¤é¤«¤Î¼«Í³ÅÙ¤¬¤¢¤ë¤¬, ¸½ºß¤Î¤È¤³¤í¤Ï TCP/IP
 ¸½ºß¤Î¤È¤³¤í¤Ï TCP/IP ¤òÍѤ¤¤¿ÄÌ¿®¤·¤«¼ÂÁõ¤µ¤ì¤Æ¤¤¤Ê¤¤¡£  ¤òÍѤ¤¤¿ÄÌ¿®¤·¤«¼ÂÁõ¤µ¤ì¤Æ¤¤¤Ê¤¤.  \footnote{asir ¤Ë¤Ï MPI ¤òÍѤ¤¤¿¼ÂÁõ
 ¤½¤³¤Ç¡¢¤³¤ÎÏÀʸ¤Ç¤Ï¶ñÂÎŪ¤Ê¼ÂÁõ¤Ï TCP/IP ¤òÍѤ¤¤Æ¤¤¤ë¤È²¾Äꤹ¤ë¡£  ¤â¤¢¤ë.}  ¤½¤³¤Ç, ¤³¤ÎÏÀʸ¤Ç¤Ï¶ñÂÎŪ¤Ê¼ÂÁõ¤Ï TCP/IP ¤òÍѤ¤¤Æ¤¤¤ë¤È²¾Äꤹ
   ¤ë.
   
 \section{OpenXM ¤Î¥á¥Ã¥»¡¼¥¸¤Î¹½Â¤}  \section{OpenXM ¤Î¥á¥Ã¥»¡¼¥¸¤Î¹½Â¤}
   
 ÄÌ¿®¤ÎÊýË¡¤Ë¤è¤Ã¤Æ¥á¥Ã¥»¡¼¥¸¤Î¹½Â¤¤ÏÊѤï¤ë¡£  ÄÌ¿®¤ÎÊýË¡¤Ë¤è¤Ã¤Æ¥á¥Ã¥»¡¼¥¸¤Î¹½Â¤¤ÏÊѤï¤ë.  ¤³¤ÎÏÀʸ¤Ç¤Ï TCP/IP ¤Î¾ì¹ç
 Á°Àá¤Ç²¾Äꤷ¤¿¤È¤ª¤ê¡¢¤³¤ÎÏÀʸ¤Ç¤Ï TCP/IP ¤Î¾ì¹ç¤Ë¤Ä¤¤¤Æ¤Î¤ßÀâÌÀ¤ò¹Ô¤Ê¤¦¡£  ¤Ë¤Ä¤¤¤Æ¤Î¤ßÀâÌÀ¤ò¹Ô¤Ê¤¦.
   
 OpenXM µ¬Ìó¤Çµ¬Äꤵ¤ì¤Æ¤¤¤ë¥á¥Ã¥»¡¼¥¸¤Ï¥Ð¥¤¥È¥¹¥È¥ê¡¼¥à¤È¤Ê¤Ã¤Æ¤ª¤ê¡¢  OpenXM µ¬Ìó¤Çµ¬Äꤵ¤ì¤Æ¤¤¤ë¥á¥Ã¥»¡¼¥¸¤Ï¥Ð¥¤¥È¥¹¥È¥ê¡¼¥à¤È¤Ê¤Ã¤Æ¤ª¤ê, ¼¡
 ¼¡¤Î¤è¤¦¤Ê¹½Â¤¤Ë¤Ê¤Ã¤Æ¤¤¤ë¡£  ¤Î¤è¤¦¤Ê¹½Â¤¤Ë¤Ê¤Ã¤Æ¤¤¤ë.
   \begin{center}
 \begin{tabular}{|c|c|}  \begin{tabular}{|c|c|}
 \hline  \hline
 ¥Ø¥Ã¥À  & \hspace{10mm} ¥Ü¥Ç¥£ \hspace{10mm} \\  ¥Ø¥Ã¥À  & \hspace{10mm} ¥Ü¥Ç¥£ \hspace{10mm} \\
 \hline  \hline
 \end{tabular}  \end{tabular}
   \end{center}
   ¥Ø¥Ã¥À¤ÎŤµ¤Ï 8 ¥Ð¥¤¥È¤Ç¤¢¤ë¤ÈÄê¤á¤é¤ì¤Æ¤¤¤ë.  ¥Ü¥Ç¥£¤ÎŤµ¤Ï¥á¥Ã¥»¡¼¥¸
   ¤´¤È¤Ë°Û¤Ê¤Ã¤Æ¤¤¤ë¤¬, Ťµ¤Ï $0$ ¤Ç¤â¤è¤¤.
   
 ¥Ø¥Ã¥À¤ÎŤµ¤Ï 8 ¥Ð¥¤¥È¤Ç¤¢¤ë¤ÈÄê¤á¤é¤ì¤Æ¤¤¤ë¡£  ¥Ø¥Ã¥À¤Ï¼¡¤ÎÆó¤Ä¤Î¾ðÊó¤ò»ý¤Ã¤Æ¤¤¤ë.
 ¥Ü¥Ç¥£¤ÎŤµ¤Ï¥á¥Ã¥»¡¼¥¸¤´¤È¤Ë°Û¤Ê¤Ã¤Æ¤¤¤ë¤¬¡¢  
 Ä¹¤µ¤Ï $0$ ¤Ç¤â¤è¤¤¡£  
   
 ¥Ø¥Ã¥À¤Ï¼¡¤ÎÆó¤Ä¤Î¾ðÊó¤ò»ý¤Ã¤Æ¤¤¤ë¡£  
 \begin{enumerate}  \begin{enumerate}
 \item   Á°È¾¤Î 4 ¥Ð¥¤¥È¡£¥á¥Ã¥»¡¼¥¸¤Î¼ïÎà¤òɽ¤ï¤¹¼±Ê̻ҤǤ¢¤ê¡¢  \item
         ¥¿¥°¤È¸Æ¤Ð¤ì¤ë¡£  Á°È¾¤Î 4 ¥Ð¥¤¥È. ¥á¥Ã¥»¡¼¥¸¤Î¼ïÎà¤òɽ¤¹¼±Ê̻ҤǤ¢¤ê, ¥¿¥°¤È¸Æ¤Ð¤ì¤ë.
 \item   ¸åȾ¤Î 4 ¥Ð¥¤¥È¡£¥á¥Ã¥»¡¼¥¸¤Ë¤Ä¤±¤é¤ì¤¿Ä̤·ÈÖ¹æ¤Ç¤¢¤ë¡£  \item
   ¸åȾ¤Î 4 ¥Ð¥¤¥È. ¥á¥Ã¥»¡¼¥¸¤Ë¤Ä¤±¤é¤ì¤¿Ä̤·ÈÖ¹æ¤Ç¤¢¤ë.
 \end{enumerate}  \end{enumerate}
 ¤½¤ì¤¾¤ì¤Î 4 ¥Ð¥¤¥È¤Ï 32 ¥Ó¥Ã¥ÈÀ°¿ô¤È¤ß¤Ê¤µ¤ì¤Æ°·¤ï¤ì¤ë¡£  ¤½¤ì¤¾¤ì¤Î 4 ¥Ð¥¤¥È¤Ï 32 ¥Ó¥Ã¥ÈÀ°¿ô¤È¤ß¤Ê¤µ¤ì¤Æ°·¤ï¤ì¤ë.
 ¤³¤Î¾ì¹ç¤ËÍѤ¤¤é¤ì¤ëÀ°¿ô¤Îɽ¸½ÊýË¡¤Ë¤Ä¤¤¤Æ¤Ï¸å½Ò¤¹¤ë¤¬¡¢  
 ´ðËÜŪ¤Ëɽ¸½ÊýË¡¤Ï¤¤¤¯¤Ä¤«¤ÎÁªÂò»è¤«¤éÁª¤Ö¤³¤È¤¬²Äǽ¤È¤Ê¤Ã¤Æ¤ª¤ê¡¢  
 ¤Þ¤¿¤½¤ÎÁªÂò¤ÏÄÌ¿®Ï©¤Î³ÎΩ»þ¤Ë°ìÅÙ¤À¤±¤Ê¤µ¤ì¤ë¤³¤È¤ËÃí°Õ¤·¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤¡£  
 ¸½ºß¤ÎOpenXM µ¬Ìó¤Ç¤Ï¡¢¥¿¥°(À°¿ôÃÍ)¤È¤·¤Æ  
 °Ê²¼¤Î¤â¤Î¤¬ÄêµÁ¤µ¤ì¤Æ¤¤¤ë¡£  
   
   ¤³¤Î¾ì¹ç¤ËÍѤ¤¤é¤ì¤ë 32 ¥Ó¥Ã¥ÈÀ°¿ô¤Îɽ¸½ÊýË¡¤Ë¤Ä¤¤¤ÆÀâÌÀ¤·¤Æ¤ª¤³¤¦.  Ìä
   Âê¤Ë¤Ê¤ë¤Î¤ÏÉé¿ô¤Îɽ¸½¤È¥Ð¥¤¥È¥ª¡¼¥À¡¼¤ÎÌäÂê¤Ç¤¢¤ë.  ¤Þ¤º, Éé¿ô¤òɽ¤¹É¬
   Íפ¬¤¢¤ë¤È¤­¤Ë¤Ï2¤ÎÊä¿ôɽ¸½¤ò»È¤¦¤³¤È¤Ë¤Ê¤Ã¤Æ¤¤¤ë.  ¼¡¤Ë¥Ð¥¤¥È¥ª¡¼¥À¡¼¤Ç
   ¤¢¤ë¤¬, OpenXM µ¬Ìó¤ÏÊ£¿ô¤Î¥Ð¥¤¥È¥ª¡¼¥À¡¼¤òµöÍƤ¹¤ë.  ¤¿¤À¤·°ì¤Ä¤ÎÄÌ¿®Ï©
   ¤Ç¤Ï¤Ò¤È¤Ä¤Î¥Ð¥¤¥È¥ª¡¼¥À¡¼¤Î¤ß¤¬µö¤µ¤ì, ÄÌ¿®Ï©¤Î³ÎΩ»þ¤Ë°ìÅÙ¤À¤±Áª¤Ð¤ì¤ë.
   
   ¸½ºß¤ÎOpenXM µ¬Ìó¤Ç¤Ï, ¥¿¥°(À°¿ôÃÍ)¤È¤·¤Æ°Ê²¼¤Î¤â¤Î¤¬ÄêµÁ¤µ¤ì¤Æ¤¤¤ë.
   
 \begin{verbatim}  \begin{verbatim}
 #define OX_COMMAND              513  #define OX_COMMAND              513
 #define OX_DATA                 514  #define OX_DATA                 514
Line 95  OpenXM µ¬Ìó¤Çµ¬Äꤵ¤ì¤Æ¤¤¤ë¥á¥Ã¥»¡¼¥¸¤Ï¥Ð¥¤¥È¥¹¥È¥ê¡¼¥
Line 93  OpenXM µ¬Ìó¤Çµ¬Äꤵ¤ì¤Æ¤¤¤ë¥á¥Ã¥»¡¼¥¸¤Ï¥Ð¥¤¥È¥¹¥È¥ê¡¼¥
 #define OX_DATA_MP              525  #define OX_DATA_MP              525
 \end{verbatim}  \end{verbatim}
   
 ¥Ü¥Ç¥£¤Î¹½Â¤¤Ï¥á¥Ã¥»¡¼¥¸¤Î¼ïÎà¤Ë¤è¤Ã¤Æ°Û¤Ê¤ë¡£  ¥Ü¥Ç¥£¤Î¹½Â¤¤Ï¥á¥Ã¥»¡¼¥¸¤Î¼ïÎà¤Ë¤è¤Ã¤Æ°Û¤Ê¤ë.  OX\_COMMAND ¤Ç¼±Ê̤µ¤ì¤ë
 ¥¿¥°¤¬ OX\_COMMAND ¤È¤Ê¤Ã¤Æ¤¤¤ë¥á¥Ã¥»¡¼¥¸¤Ï¥¹¥¿¥Ã¥¯¥Þ¥·¥ó¤Ø¤ÎÌ¿Îá¤Ç¤¢¤ê¡¢  ¥á¥Ã¥»¡¼¥¸¤Ï¥¹¥¿¥Ã¥¯¥Þ¥·¥ó¤Ø¤ÎÌ¿Îá¤Ç¤¢¤ê, ¤½¤ì°Ê³°¤Î¥á¥Ã¥»¡¼¥¸¤Ï²¿¤é¤«¤Î
 ¤½¤ì°Ê³°¤Î¥á¥Ã¥»¡¼¥¸¤Ï²¿¤é¤«¤Î¥ª¥Ö¥¸¥§¥¯¥È¤òɽ¤·¤Æ¤¤¤ë¡£  ¥ª¥Ö¥¸¥§¥¯¥È¤òɽ¤·¤Æ¤¤¤ë.  ¤³¤ÎÏÀʸ¤Ç¤Ï OX\_DATA ¤È OX\_COMMAND ¤Ç¼±Ê̤µ
 ¤³¤ÎÏÀʸ¤Ç¤Ï OX\_DATA ¤È OX\_COMMAND ¤Ç¼±Ê̤µ¤ì¤ë  ¤ì¤ë¥á¥Ã¥»¡¼¥¸¤Ë¤Ä¤¤¤Æ¤Î¤ß, ÀâÌÀ¤¹¤ë.
 ¥á¥Ã¥»¡¼¥¸¤Ë¤Ä¤¤¤Æ¤Î¤ß¡¢ÀâÌÀ¤¹¤ë¡£  
   
 ´û¸¤Î¥á¥Ã¥»¡¼¥¸¤Ç¤ÏÂбþ¤Ç¤­¤Ê¤¤¾ì¹ç¤Ï¡¢¿·¤·¤¤¼±Ê̻ҤòÄêµÁ¤¹¤ë¤³¤È¤Ç¿·¤·  ´û¸¤Î¥á¥Ã¥»¡¼¥¸¤Ç¤ÏÂбþ¤Ç¤­¤Ê¤¤¾ì¹ç¤Ï, ¿·¤·¤¤¼±Ê̻ҤòÄêµÁ¤¹¤ë¤³¤È¤Ç¿·¤·
 ¤¤¼ïÎà¤Î¥á¥Ã¥»¡¼¥¸¤òºîÀ®¤¹¤ë¤³¤È¤¬¤Ç¤­¤ë¡£¤³¤ÎÊýË¡¤Ï³Æ¿ô³Ø¥½¥Õ¥È¥¦¥§¥¢¤Î  ¤¤¼ïÎà¤Î¥á¥Ã¥»¡¼¥¸¤òºîÀ®¤¹¤ë¤³¤È¤¬¤Ç¤­¤ë. ¤³¤ÎÊýË¡¤Ï³Æ¿ô³Ø¥½¥Õ¥È¥¦¥§¥¢¤Î
 ¸ÇÍ­¤Îɽ¸½¤ò´Þ¤à¥á¥Ã¥»¡¼¥¸¤òºîÀ®¤·¤¿¤¤¾ì¹ç¤Ê¤É¤ËÍ­¸ú¤Ç¤¢¤ë¡£¿·¤·¤¤¼±ÊÌ»Ò  ¸ÇÍ­¤Îɽ¸½¤ò´Þ¤à¥á¥Ã¥»¡¼¥¸¤òºîÀ®¤·¤¿¤¤¾ì¹ç¤Ê¤É¤ËÍ­¸ú¤Ç¤¢¤ë. ¿·¤·¤¤¼±ÊÌ»Ò
 ¤ÎÄêµÁÊýË¡¤Ë¤Ä¤¤¤Æ¤Ï¡¢\cite{OpenXM-1999} ¤ò»²¾È¤¹¤ë¤³¤È¡£  ¤ÎÄêµÁÊýË¡¤Ë¤Ä¤¤¤Æ¤Ï, \cite{OpenXM-1999} ¤ò»²¾È¤¹¤ë¤³¤È.
   
   
 \section{OpenXM ¤Î·×»»¥â¥Ç¥ë}  \section{OpenXM ¤Î·×»»¥â¥Ç¥ë}
   
 OpenXM µ¬Ìó¤Ç¤Î·×»»¤È¤Ï¥á¥Ã¥»¡¼¥¸¤ò¸ò´¹¤¹¤ë¤³¤È¤Ç¤¢¤ë¡£¤Þ¤¿¡¢ OpenXM µ¬  OpenXM µ¬Ìó¤Ç¤Î·×»»¤È¤Ï¥á¥Ã¥»¡¼¥¸¤ò¸ò´¹¤¹¤ë¤³¤È¤Ç¤¢¤ë. ¤Þ¤¿, OpenXM µ¬
 Ìó¤Ç¤Ï¥¯¥é¥¤¥¢¥ó¥È¡¦¥µ¡¼¥Ð¥â¥Ç¥ë¤òºÎÍѤ·¤Æ¤¤¤ë¤Î¤Ç¡¢¥á¥Ã¥»¡¼¥¸¤Î¸ò´¹¤Ï¥µ¡¼  Ìó¤Ç¤Ï¥¯¥é¥¤¥¢¥ó¥È¡¦¥µ¡¼¥Ð¥â¥Ç¥ë¤òºÎÍѤ·¤Æ¤¤¤ë¤Î¤Ç, ¥á¥Ã¥»¡¼¥¸¤Î¸ò´¹¤Ï¥µ¡¼
 ¥Ð¤È¥¯¥é¥¤¥¢¥ó¥È¤Î´Ö¤Ç¹Ô¤Ê¤ï¤ì¤ë¡£¥¯¥é¥¤¥¢¥ó¥È¤«¤é¥µ¡¼¥Ð¤Ø¥á¥Ã¥»¡¼¥¸¤òÁ÷  ¥Ð¤È¥¯¥é¥¤¥¢¥ó¥È¤Î´Ö¤Ç¹Ô¤Ê¤ï¤ì¤ë.\footnote{¤³¤ì¤Î³ÈÄ¥¤Ï, ¤¤¤Þ¼ç¤ËÌîϤ
 ¤ê¡¢¥¯¥é¥¤¥¢¥ó¥È¤¬¥µ¡¼¥Ð¤«¤é¥á¥Ã¥»¡¼¥¸¤ò¼õ¤±¼è¤ë¤³¤È¤Ë¤è¤Ã¤Æ·×»»¤Î·ë²Ì¤¬  ¤¬¹Í¤¨¤Æ¤ë.  ¥µ¡¼¥ÐƱ»ÎÄÌ¿®¤Ç¤­¤Ê¤¤¤È¸úΨŪÊÂÎó·×»»¤Î¼Â¸³¤Ë¤Ï»È¤¨¤Ê¤¤.}
 ÆÀ¤é¤ì¤ë¡£¤³¤Î¥á¥Ã¥»¡¼¥¸¤Î¤ä¤ê¤È¤ê¤Ï¥¯¥é¥¤¥¢¥ó¥È¤Î¼çƳ¤Ç¹Ô¤ï¤ì¤ë¡£¤Ä¤Þ¤ê¡¢  ¥¯¥é¥¤¥¢¥ó¥È¤«¤é¥µ¡¼¥Ð¤Ø¥á¥Ã¥»¡¼¥¸¤òÁ÷
 ¥¯¥é¥¤¥¢¥ó¥È¤Ï¼«Í³¤Ë¥á¥Ã¥»¡¼¥¸¤ò¥µ¡¼¥Ð¤ËÁ÷ÉÕ¤·¤Æ¤â¤è¤¤¤¬¡¢¥µ¡¼¥Ð¤«¤é¤Ï¼«  ¤ê, ¥¯¥é¥¤¥¢¥ó¥È¤¬¥µ¡¼¥Ð¤«¤é¥á¥Ã¥»¡¼¥¸¤ò¼õ¤±¼è¤ë¤³¤È¤Ë¤è¤Ã¤Æ·×»»¤Î·ë²Ì¤¬
 È¯Åª¤Ë¥á¥Ã¥»¡¼¥¸¤¬Á÷ÉÕ¤µ¤ì¤ë¤³¤È¤Ï¤Ê¤¤¡£¤³¤Î¸¶Íý¤Ï¥µ¡¼¥Ð¤Ï¥¹¥¿¥Ã¥¯¥Þ¥·¥ó  ÆÀ¤é¤ì¤ë. ¤³¤Î¥á¥Ã¥»¡¼¥¸¤Î¤ä¤ê¤È¤ê¤Ï¥¯¥é¥¤¥¢¥ó¥È¤Î¼çƳ¤Ç¹Ô¤ï¤ì¤ë. ¤Ä¤Þ¤ê,
 ¤Ç¤¢¤ë¤³¤È¤Ç¼Â¸½¤µ¤ì¤ë¡£¥¹¥¿¥Ã¥¯¥Þ¥·¥ó¤Î¹½Â¤¤Ë¤Ä¤¤¤Æ¤Ï \ref{sec:oxsm} Àá  ¥¯¥é¥¤¥¢¥ó¥È¤Ï¼«Í³¤Ë¥á¥Ã¥»¡¼¥¸¤ò¥µ¡¼¥Ð¤ËÁ÷ÉÕ¤·¤Æ¤â¤è¤¤¤¬, ¥µ¡¼¥Ð¤«¤é¤Ï¼«
 ¤Ç½Ò¤Ù¤ë¡£  È¯Åª¤Ë¥á¥Ã¥»¡¼¥¸¤¬Á÷ÉÕ¤µ¤ì¤ë¤³¤È¤Ï¤Ê¤¤. ¤³¤Î¸¶Íý¤Ï¥µ¡¼¥Ð¤Ï¥¹¥¿¥Ã¥¯¥Þ¥·¥ó
   ¤Ç¤¢¤ë¤³¤È¤Ç¼Â¸½¤µ¤ì¤ë. ¥¹¥¿¥Ã¥¯¥Þ¥·¥ó¤Î¹½Â¤¤Ë¤Ä¤¤¤Æ¤Ï \ref{sec:oxsm} Àá
   ¤Ç½Ò¤Ù¤ë.
   
 ¥µ¡¼¥Ð¤¬¥¯¥é¥¤¥¢¥ó¥È¤«¤é¼õ¤±¼è¤Ã¤¿¥ª¥Ö¥¸¥§¥¯¥È(¤Ä¤Þ¤ê OX\_COMMAND ¤Ç¤Ê¤¤  ¥µ¡¼¥Ð¤¬¥¯¥é¥¤¥¢¥ó¥È¤«¤é¼õ¤±¼è¤Ã¤¿¥ª¥Ö¥¸¥§¥¯¥È(¤Ä¤Þ¤ê OX\_COMMAND ¤Ç¤Ê¤¤
 ¥á¥Ã¥»¡¼¥¸¤Î¥Ü¥Ç¥£)¤Ï¤¹¤Ù¤Æ¥¹¥¿¥Ã¥¯¤ËÀѤޤì¤ë¡£¥¹¥¿¥Ã¥¯¥Þ¥·¥ó¤Ø¤ÎÌ¿Îá  ¥á¥Ã¥»¡¼¥¸¤Î¥Ü¥Ç¥£)¤Ï¤¹¤Ù¤Æ¥¹¥¿¥Ã¥¯¤ËÀѤޤì¤ë. ¥¹¥¿¥Ã¥¯¥Þ¥·¥ó¤Ø¤ÎÌ¿Îá
 (OX\_COMMAND ¤Ç¼±Ê̤µ¤ì¤ë¥á¥Ã¥»¡¼¥¸¤Î¥Ü¥Ç¥£)¤ò¼õ¤±¼è¤Ã¤¿¥µ¡¼¥Ð¤ÏÌ¿Îá¤ËÂÐ  (OX\_COMMAND ¤Ç¼±Ê̤µ¤ì¤ë¥á¥Ã¥»¡¼¥¸¤Î¥Ü¥Ç¥£)¤ò¼õ¤±¼è¤Ã¤¿¥µ¡¼¥Ð¤ÏÌ¿Îá¤ËÂÐ
 ±þ¤¹¤ëÆ°ºî¤ò¹Ô¤Ê¤¦¡£¤³¤Î¤È¤­¡¢Ì¿Îá¤Ë¤è¤Ã¤Æ¤Ï¥¹¥¿¥Ã¥¯¤«¤é¥ª¥Ö¥¸¥§¥¯¥È¤ò¼è  ±þ¤¹¤ëÆ°ºî¤ò¹Ô¤Ê¤¦. ¤³¤Î¤È¤­, Ì¿Îá¤Ë¤è¤Ã¤Æ¤Ï¥¹¥¿¥Ã¥¯¤«¤é¥ª¥Ö¥¸¥§¥¯¥È¤ò¼è
 ¤ê½Ð¤¹¤³¤È¤¬¤¢¤ê¡¢¤Þ¤¿(³Æ¿ô³Ø¥·¥¹¥Æ¥à¤Ç¤Î)·×»»·ë²Ì¤ò¥¹¥¿¥Ã¥¯¤ËÀѤळ¤È¤¬  ¤ê½Ð¤¹¤³¤È¤¬¤¢¤ê, ¤Þ¤¿(³Æ¿ô³Ø¥·¥¹¥Æ¥à¤Ç¤Î)·×»»·ë²Ì¤ò¥¹¥¿¥Ã¥¯¤ËÀѤळ¤È¤¬
 ¤¢¤ë¡£¤â¤·¡¢Í¿¤¨¤é¤ì¤¿¥Ç¡¼¥¿¤¬Àµ¤·¤¯¤Ê¤¤¤Ê¤É¤ÎÍýͳ¤Ç¥¨¥é¡¼¤¬À¸¤¸¤¿¾ì¹ç¤Ë  ¤¢¤ë. ¤â¤·, Í¿¤¨¤é¤ì¤¿¥Ç¡¼¥¿¤¬Àµ¤·¤¯¤Ê¤¤¤Ê¤É¤ÎÍýͳ¤Ç¥¨¥é¡¼¤¬À¸¤¸¤¿¾ì¹ç¤Ë
 ¤Ï¥µ¡¼¥Ð¤Ï¥¨¥é¡¼¥ª¥Ö¥¸¥§¥¯¥È¤ò¥¹¥¿¥Ã¥¯¤ËÀѤࡣ·×»»·ë²Ì¤ò¥¯¥é¥¤¥¢¥ó¥È¤¬ÆÀ  ¤Ï¥µ¡¼¥Ð¤Ï¥¨¥é¡¼¥ª¥Ö¥¸¥§¥¯¥È¤ò¥¹¥¿¥Ã¥¯¤ËÀѤà. ·×»»·ë²Ì¤ò¥¯¥é¥¤¥¢¥ó¥È¤¬ÆÀ
 ¤ë¾ì¹ç¤Ë¤Ï¥¹¥¿¥Ã¥¯¥Þ¥·¥ó¤ÎÌ¿Îá SM\_popCMO ¤Þ¤¿¤Ï SM\_popString ¤ò¥µ¡¼¥Ð  ¤ë¾ì¹ç¤Ë¤Ï¥¹¥¿¥Ã¥¯¥Þ¥·¥ó¤ÎÌ¿Îá SM\_popCMO ¤Þ¤¿¤Ï SM\_popString ¤ò¥µ¡¼¥Ð
 ¤ËÁ÷¤é¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤¡£¤³¤ì¤é¤ÎÌ¿Îá¤ò¼õ¤±¼è¤Ã¤Æ¤Ï¤¸¤á¤Æ¡¢¥µ¡¼¥Ð¤«¤é¥¯¥é  ¤ËÁ÷¤é¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤. ¤³¤ì¤é¤ÎÌ¿Îá¤ò¼õ¤±¼è¤Ã¤Æ¤Ï¤¸¤á¤Æ, ¥µ¡¼¥Ð¤«¤é¥¯¥é
 ¥¤¥¢¥ó¥È¤Ø¥á¥Ã¥»¡¼¥¸¤¬Á÷¤é¤ì¤ë¡£  ¥¤¥¢¥ó¥È¤Ø¥á¥Ã¥»¡¼¥¸¤¬Á÷¤é¤ì¤ë.
   
 %{\Huge °Ê²¼¡¢½ñ¤­Ä¾¤·}  ¤Þ¤È¤á¤ë¤È, ¥¯¥é¥¤¥¢¥ó¥È¤¬¥µ¡¼¥Ð¤Ø¥á¥Ã¥»¡¼¥¸¤òÁ÷¤ê, ·×»»¤Î·ë²Ì¤òÆÀ¤ë¤È¤¤
   ¤¦¼ê½ç¤Ï°Ê²¼¤Î¤è¤¦¤Ë¤Ê¤ë.
   
 ¤Þ¤È¤á¤ë¤È¡¢¥¯¥é¥¤¥¢¥ó¥È¤¬¥µ¡¼¥Ð¤Ø¥á¥Ã¥»¡¼¥¸¤òÁ÷¤ê¡¢  
 ·×»»¤Î·ë²Ì¤òÆÀ¤ë¤È¤¤¤¦¼ê½ç¤Ï°Ê²¼¤Î¤è¤¦¤Ë¤Ê¤ë¡£  
   
 \begin{enumerate}  \begin{enumerate}
 \item  \item
 ¤Þ¤º¡¢¥¯¥é¥¤¥¢¥ó¥È¤¬¥µ¡¼¥Ð¤Ø¥ª¥Ö¥¸¥§¥¯¥È¤òÁ÷¤ë¡£¥µ¡¼¥Ð¤ÏÁ÷¤é¤ì¤Æ¤­¤¿¥ª¥Ö  ¤Þ¤º, ¥¯¥é¥¤¥¢¥ó¥È¤¬¥µ¡¼¥Ð¤Ø¥ª¥Ö¥¸¥§¥¯¥È¤òÁ÷¤ë.  ¥µ¡¼¥Ð¤ÏÁ÷¤é¤ì¤Æ¤­¤¿¥ª
 ¥¸¥§¥¯¥È¤ò¥¹¥¿¥Ã¥¯¤ËÀѤࡣ  ¥Ö¥¸¥§¥¯¥È¤ò¥¹¥¿¥Ã¥¯¤ËÀѤà.
 \item  \item
 ¥¯¥é¥¤¥¢¥ó¥È¤¬¥µ¡¼¥Ð¤Ë·×»»¤ÎÌ¿Îá¤òÁ÷¤ë¤È¡¢  ¥¯¥é¥¤¥¢¥ó¥È¤¬¥µ¡¼¥Ð¤Ë·×»»¤ÎÌ¿Îá¤òÁ÷¤ë¤È, ¥µ¡¼¥Ð¤Ï¤¢¤é¤«¤¸¤áÄê¤á¤ì¤é¤¿Æ°
 ¥µ¡¼¥Ð¤ÏɬÍפʤÀ¤±¥¹¥¿¥Ã¥¯¤«¤é¥Ç¡¼¥¿¤ò¼è¤ê½Ð¤·¡¢  ºî¤ò¹Ô¤¦.  °ìÉô¤ÎÌ¿Îá¤Ï¥¹¥¿¥Ã¥¯¤Î¾õÂÖ¤òÊѹ¹¤¹¤ë.  Î㤨¤Ð
 ¼Â¹Ô¤·¤¿·ë²Ì¤ò¥¹¥¿¥Ã¥¯¤ËÀѤࡣ  SM\_executeFunction, \\ SM\_executeStringByLocalParser ¤Ê¤É¤ÎÌ¿Îá¤Ï, ¥¹
 %¤Ã¤Æ½ñ¤¤¤Æ¤ë¤±¤É¡¢Ì¿Î᤬SM\_popCMO ¤È¤« SM\_shutdown ¤Î¾ì¹ç¤Ï?  ¥¿¥Ã¥¯¾å¤Î¥ª¥Ö¥¸¥§¥¯¥È¤«¤é·×»»¤ò¹Ô¤¦.  SM\_popCMO ¤â¤·¤¯¤Ï SM\_popString
 \item  ¤Ï, ¥¹¥¿¥Ã¥¯¤ÎºÇ¾å°Ì¤Î¥ª¥Ö¥¸¥§¥¯¥È¤ò¼è¤ê¤À¤·, ¥¯¥é¥¤¥¢¥ó¥È¤ËÁ÷¤êÊÖ¤¹.
 ºÇ¸å¤Ë SM\_popCMO ¤â¤·¤¯¤Ï SM\_popString ¤ò¥µ¡¼¥Ð¤ØÁ÷¤ë¤È¡¢  
 ¥µ¡¼¥Ð¤Ï¥¹¥¿¥Ã¥¯¤«¤é·×»»·ë²Ì¤ÎÆþ¤Ã¤Æ¤¤¤ë¥Ç¡¼¥¿¤ò¼è¤ê½Ð¤·¡¢  
 ¥¯¥é¥¤¥¢¥ó¥È¤ØÁ÷½Ð¤¹¤ë¡£  
 \end{enumerate}  \end{enumerate}
   
   
 \section{OpenXM ¥¹¥¿¥Ã¥¯¥Þ¥·¥ó}\label{sec:oxsm}  \section{OpenXM ¥¹¥¿¥Ã¥¯¥Þ¥·¥ó}\label{sec:oxsm}
   
 OpenXM µ¬Ìó¤Ç¤Ï¥µ¡¼¥Ð¤Ï¥¹¥¿¥Ã¥¯¥Þ¥·¥ó¤Ç¤¢¤ë¤ÈÄêµÁ¤·¤Æ¤¤¤ë¡£°Ê²¼¡¢OpenXM  OpenXM µ¬Ìó¤Ç¤Ï¥µ¡¼¥Ð¤Ï¥¹¥¿¥Ã¥¯¥Þ¥·¥ó¤Ç¤¢¤ë¤ÈÄêµÁ¤·¤Æ¤¤¤ë. °Ê²¼, OpenXM
 ¥¹¥¿¥Ã¥¯¥Þ¥·¥ó¤È¸Æ¤Ö¡£¤³¤ÎÀá¤Ç¤ÏOpenXM ¥¹¥¿¥Ã¥¯¥Þ¥·¥ó¤Î¹½Â¤¤Ë¤Ä¤¤¤ÆÀâÌÀ  ¥¹¥¿¥Ã¥¯¥Þ¥·¥ó¤È¸Æ¤Ö. ¤³¤ÎÀá¤Ç¤ÏOpenXM ¥¹¥¿¥Ã¥¯¥Þ¥·¥ó¤Î¹½Â¤¤Ë¤Ä¤¤¤ÆÀâÌÀ
 ¤·¤è¤¦¡£  ¤·¤è¤¦.
   
 ¤Þ¤º¡¢OpenXM µ¬Ìó¤ÏÄÌ¿®»þ¤Ë¤ä¤ê¤È¤ê¤µ¤ì¤ë¶¦Ä̤Υǡ¼¥¿·Á¼°¤Ë¤Ä¤¤¤Æ¤Ïµ¬Äê  ¤Þ¤º, OpenXM µ¬Ìó¤ÏÄÌ¿®»þ¤Ë¤ä¤ê¤È¤ê¤µ¤ì¤ë¶¦Ä̤Υǡ¼¥¿·Á¼°¤Ë¤Ä¤¤¤Æ¤Ïµ¬Äê
 ¤¹¤ë¤¬¡¢OpenXM ¥¹¥¿¥Ã¥¯¥Þ¥·¥ó¤¬¥¹¥¿¥Ã¥¯¤ËÀѤࡢ¥ª¥Ö¥¸¥§¥¯¥È¤Î¹½Â¤¤Þ¤Ç¤Ï  ¤¹¤ë¤¬, OpenXM ¥¹¥¿¥Ã¥¯¥Þ¥·¥ó¤¬¥¹¥¿¥Ã¥¯¤ËÀѤà, ¥ª¥Ö¥¸¥§¥¯¥È¤Î¹½Â¤¤Þ¤Ç¤Ï
 µ¬Äꤷ¤Ê¤¤¡£¤Ä¤Þ¤ê¡¢¥ª¥Ö¥¸¥§¥¯¥È¤Î¹½Â¤¤Ï³Æ¿ô³Ø¥·¥¹¥Æ¥à¤´¤È¤Ë°Û¤Ê¤Ã¤Æ¤¤¤ë  µ¬Äꤷ¤Ê¤¤. ¤Ä¤Þ¤ê, ¥ª¥Ö¥¸¥§¥¯¥È¤Î¹½Â¤¤Ï³Æ¿ô³Ø¥·¥¹¥Æ¥à¤´¤È¤Ë°Û¤Ê¤Ã¤Æ¤¤¤ë
 ¤È¤¤¤¦¤³¤È¤Ç¤¢¤ë¡£¤³¤Î¤³¤È¤ÏÄÌ¿®Ï©¤«¤é¥Ç¡¼¥¿¤ò¼õ¤±¼è¤Ã¤¿ºÝ¤Ë¡¢³Æ¿ô³Ø¥·¥¹  ¤È¤¤¤¦¤³¤È¤Ç¤¢¤ë. ¤³¤Î¤³¤È¤ÏÄÌ¿®Ï©¤«¤é¥Ç¡¼¥¿¤ò¼õ¤±¼è¤Ã¤¿ºÝ¤Ë, ³Æ¿ô³Ø¥·¥¹
 ¥Æ¥à¤¬¸ÇÍ­¤Î¥Ç¡¼¥¿¹½Â¤¤ËÊÑ´¹¤·¤Æ¤«¤é¥¹¥¿¥Ã¥¯¤ËÀѤळ¤È¤ò°ÕÌ£¤¹¤ë¡£¤³¤ÎÊÑ  ¥Æ¥à¤¬¸ÇÍ­¤Î¥Ç¡¼¥¿¹½Â¤¤ËÊÑ´¹¤·¤Æ¤«¤é¥¹¥¿¥Ã¥¯¤ËÀѤळ¤È¤ò°ÕÌ£¤¹¤ë. ¤³¤ÎÊÑ
 ´¹¤Ï1ÂÐ1Âбþ¤Ç¤¢¤ëɬÍפϤʤ¤¡£  ´¹¤Ï1ÂÐ1Âбþ¤Ç¤¢¤ëɬÍפϤʤ¤.
   
 ¼¡¤Ë OpenXM ¥¹¥¿¥Ã¥¯¥Þ¥·¥ó¤ÎÌ¿Îᥳ¡¼¥É¤Ë¤Ä¤¤¤ÆÀâÌÀ¤¹¤ë¡£OpenXM ¥¹¥¿¥Ã¥¯  ¼¡¤Ë OpenXM ¥¹¥¿¥Ã¥¯¥Þ¥·¥ó¤ÎÌ¿Îᥳ¡¼¥É¤Ë¤Ä¤¤¤ÆÀâÌÀ¤¹¤ë. OpenXM ¥¹¥¿¥Ã¥¯
 ¥Þ¥·¥ó¤Ë¤ª¤±¤ë¤¹¤Ù¤Æ¤ÎÌ¿Îá¤Ï4¥Ð¥¤¥È¤ÎŤµ¤ò»ý¤Ä¡£OpenXM µ¬Ìó¤Î¾¤Îµ¬Äê¤È  ¥Þ¥·¥ó¤Ë¤ª¤±¤ë¤¹¤Ù¤Æ¤ÎÌ¿Îá¤Ï4¥Ð¥¤¥È¤ÎŤµ¤ò»ý¤Ä. OpenXM µ¬Ìó¤Î¾¤Îµ¬Äê¤È
 Æ±Íͤˡ¢4¥Ð¥¤¥È¤Î¥Ç¡¼¥¿¤Ï32¥Ó¥Ã¥ÈÀ°¿ô¤È¸«¤Ê¤µ¤ì¤ë¤Î¤Ç¡¢¤³¤ÎÏÀʸ¤Ç¤â¤½¤Î  Æ±ÍͤË, 4¥Ð¥¤¥È¤Î¥Ç¡¼¥¿¤Ï32¥Ó¥Ã¥ÈÀ°¿ô¤È¸«¤Ê¤µ¤ì¤ë¤Î¤Ç, ¤³¤ÎÏÀʸ¤Ç¤â¤½¤Î
 É½µ­¤Ë¤·¤¿¤¬¤¦¡£OpenXM ¥¹¥¿¥Ã¥¯¥Þ¥·¥ó¤ËÂФ¹¤ëÌ¿Îá¤Ï¥¹¥¿¥Ã¥¯¤ËÀѤޤì¤ë¤³  É½µ­¤Ë¤·¤¿¤¬¤¦. OpenXM ¥¹¥¿¥Ã¥¯¥Þ¥·¥ó¤ËÂФ¹¤ëÌ¿Îá¤Ï¥¹¥¿¥Ã¥¯¤ËÀѤޤì¤ë¤³
 ¤È¤Ï¤Ê¤¤¡£¸½ºß¤Î¤È¤³¤í¡¢OpenXM µ¬Ìó¤Ç¤Ï°Ê²¼¤ÎÌ¿Î᤬ÄêµÁ¤µ¤ì¤Æ¤¤¤ë¡£  ¤È¤Ï¤Ê¤¤. ¸½ºß¤Î¤È¤³¤í, OpenXM µ¬Ìó¤Ç¤Ï°Ê²¼¤ÎÌ¿Î᤬ÄêµÁ¤µ¤ì¤Æ¤¤¤ë.
   
 \begin{verbatim}  \begin{verbatim}
 #define SM_popSerializedLocalObject               258  #define SM_popSerializedLocalObject               258
Line 200  OpenXM µ¬Ìó¤Ç¤Ï¥µ¡¼¥Ð¤Ï¥¹¥¿¥Ã¥¯¥Þ¥·¥ó¤Ç¤¢¤ë¤ÈÄêµÁ¤·¤Æ¤
Line 195  OpenXM µ¬Ìó¤Ç¤Ï¥µ¡¼¥Ð¤Ï¥¹¥¿¥Ã¥¯¥Þ¥·¥ó¤Ç¤¢¤ë¤ÈÄêµÁ¤·¤Æ¤
 #define SM_control_reset_connection              1030  #define SM_control_reset_connection              1030
 \end{verbatim}  \end{verbatim}
   
 %°Ê²¼¡¢¤É¤¦¤¤¤¦¤È¤­¤Ë·ë²Ì¤ò¥¹¥¿¥Ã¥¯¤ËÀѤफ¥¨¥é¡¼¤Î¾ì¹ç¤É¤¦¤¹¤ë¤«¤ÎÀâÌÀ¤¬  ¥¹¥¿¥Ã¥¯¥Þ¥·¥ó¤ËÂФ¹¤ëÌ¿Îá¤ÎÃæ¤Ë¤Ï¼Â¹Ô¤Ë¤è¤Ã¤Æ·ë²Ì¤¬Ê֤äƤ¯¤ë¤â¤Î¤¬¤¢¤ë.
 %ɬÍפǤ¢¤í¤¦¡£  ·ë²Ì¤¬Ê֤äƤ¯¤ëÌ¿Îá¤ò¼Â¹Ô¤·¤¿¾ì¹ç, ¥µ¡¼¥Ð¤Ï¤½¤Î·ë²Ì¤ò¥¹¥¿¥Ã¥¯¤ËÀѤà.
   ¤¿¤È¤¨¤Ð, Ì¿Îá SM\_executeStringByLocalParser ¤Ï¥¹¥¿¥Ã¥¯¤ËÀѤޤì¤Æ¤¤¤ë¥ª
   ¥Ö¥¸¥§¥¯¥È¤ò¥µ¡¼¥Ð¦¤Î¥í¡¼¥«¥ë¸À¸ì¤Îʸˡ¤Ë½¾¤Ã¤¿Ê¸»úÎó¤È¤ß¤Ê¤·¤Æ·×»»¤ò¹Ô
   ¤Ê¤¦¤¬, ¹Ô¤Ê¤Ã¤¿·×»»¤Î·ë²Ì¤Ï¥¹¥¿¥Ã¥¯¤ËÀѤޤì¤ë.
   
 ¥¹¥¿¥Ã¥¯¥Þ¥·¥ó¤ËÂФ¹¤ëÌ¿Îá¤ÎÃæ¤Ë¤Ï¼Â¹Ô¤Ë¤è¤Ã¤Æ·ë²Ì¤¬Ê֤äƤ¯¤ë¤â¤Î¤¬¤¢¤ë¡£  ¤Ê¤ª, Ì¿Îá¤Î¼Â¹ÔÃæ¤Ë¥¨¥é¡¼¤¬µ¯¤³¤ê, ·ë²Ì¤¬ÆÀ¤é¤ì¤Ê¤«¤Ã¤¿¾ì¹ç¤Ë¤Ï,
 ·ë²Ì¤¬Ê֤äƤ¯¤ëÌ¿Îá¤ò¼Â¹Ô¤·¤¿¾ì¹ç¡¢¥µ¡¼¥Ð¤Ï¤½¤Î·ë²Ì¤ò¥¹¥¿¥Ã¥¯¤ËÀѤࡣ  ¥¨¥é¡¼¥ª¥Ö¥¸¥§¥¯¥È¤¬¥¹¥¿¥Ã¥¯¤ËÀѤޤì¤ë.
 ¤¿¤È¤¨¤Ð¡¢ SM\_executeStringByLocalParser ¤Ï  
 ¥¹¥¿¥Ã¥¯¤ËÀѤޤì¤Æ¤¤¤ë¥ª¥Ö¥¸¥§¥¯¥È¤ò  
 ¥µ¡¼¥Ð¦¤Î¥í¡¼¥«¥ë¸À¸ì¤Îʸˡ¤Ë½¾¤Ã¤¿Ê¸»úÎó¤È¤ß¤Ê¤·¤Æ·×»»¤ò¹Ô¤Ê¤¦¤¬¡¢  
 ¹Ô¤Ê¤Ã¤¿·×»»¤Î·ë²Ì¤Ï¥í¡¼¥«¥ë¸À¸ì¤Çµ­½Ò¤·¤¿Ê¸»úÎó¤Ç¥¹¥¿¥Ã¥¯¤ËÀѤޤì¤ë¡£  
 ¤Ê¤ª¡¢Ì¿Îá¤Î¼Â¹ÔÃæ¤Ë¥¨¥é¡¼¤¬µ¯¤³¤ê¡¢·ë²Ì¤¬ÆÀ¤é¤ì¤Ê¤«¤Ã¤¿¾ì¹ç¤Ë¤Ï¡¢  
 ¥¨¥é¡¼¥ª¥Ö¥¸¥§¥¯¥È¤¬¥¹¥¿¥Ã¥¯¤ËÀѤޤì¤ë¡£  
   
   
 \section{CMO ¤Î¥Ç¡¼¥¿¹½Â¤}\label{sec:cmo}  \section{CMO ¤Î¥Ç¡¼¥¿¹½Â¤}\label{sec:cmo}
   
 OpenXM µ¬Ìó¤Ç¤Ï¡¢¿ô³ØŪ¥ª¥Ö¥¸¥§¥¯¥È¤òɽ¸½¤¹¤ëÊýË¡¤È¤·¤Æ CMO ·Á¼°(Common  OpenXM µ¬Ìó¤Ç¤Ï, ¿ô³ØŪ¥ª¥Ö¥¸¥§¥¯¥È¤òɽ¸½¤¹¤ëÊýË¡¤È¤·¤Æ CMO ·Á¼°(Common
 Mathematical Object format)¤òÄêµÁ¤·¤Æ¤¤¤ë¡£¤³¤Î CMO ·Á¼°¤Ë¤·¤¿¤¬¤Ã¤¿¥Ç¡¼  Mathematical Object format)¤òÄêµÁ¤·¤Æ¤¤¤ë. ¤³¤Î CMO ·Á¼°¤Ë¤·¤¿¤¬¤Ã¤¿¥Ç¡¼
 ¥¿¤Ï¡¢¼±Ê̻Ҥ¬ OX\_DATA ¤Ç¤¢¤ë¤è¤¦¤Ê¥á¥Ã¥»¡¼¥¸¤Î¥Ü¥Ç¥£¤Ë¤Ê¤ë¤³¤È¤òÁÛÄꤷ  ¥¿¤Ï, ¼±Ê̻Ҥ¬ OX\_DATA ¤Ç¤¢¤ë¤è¤¦¤Ê¥á¥Ã¥»¡¼¥¸¤Î¥Ü¥Ç¥£¤Ë¤Ê¤ë¤³¤È¤òÁÛÄꤷ
 ¤Æ¤¤¤ë¡£  ¤Æ¤¤¤ë.
   
 CMO ·Á¼°¤Ë¤ª¤±¤ë¥Ç¡¼¥¿¹½Â¤¤Ï¼¡¤Î¤è¤¦¤Ê¹½Â¤¤ò¤â¤Ä¡£  CMO ·Á¼°¤Ë¤ª¤±¤ë¥Ç¡¼¥¿¹½Â¤¤Ï¼¡¤Î¤è¤¦¤Ê¹½Â¤¤ò¤â¤Ä.
   \begin{center}
 \begin{tabular}{|c|c|} \hline  \begin{tabular}{|c|c|}
 ¥Ø¥Ã¥À        & \hspace{10mm} ¥Ü¥Ç¥£ \hspace{10mm} \\ \hline  \hline
   ¥Ø¥Ã¥À        & \hspace{10mm} ¥Ü¥Ç¥£ \hspace{10mm} \\
   \hline
 \end{tabular}  \end{tabular}
   \end{center}
   ¥Ø¥Ã¥À¤Ï4¥Ð¥¤¥È¤Ç¤¢¤ë. ¥Ü¥Ç¥£¤ÎŤµ¤Ï¤½¤ì¤¾¤ì¤Î¥Ç¡¼¥¿¤Ë¤è¤Ã¤Æ°Û¤Ê¤ë¤¬,
   0¤Ç¤â¤è¤¤.
   
 ¥Ø¥Ã¥À¤Ï4¥Ð¥¤¥È¤Ç¤¢¤ë¡£¥Ü¥Ç¥£¤ÎŤµ¤Ï¤½¤ì¤¾¤ì¤Î¥Ç¡¼¥¿¤Ë¤è¤Ã¤Æ°Û¤Ê¤ë¤¬¡¢  ¥á¥Ã¥»¡¼¥¸¤ÈƱÍͤ˥إåÀ¤Ï4¥Ð¥¤¥Èñ°Ì¤Ë´ÉÍý¤µ¤ì¤ë. ¤¹¤Ê¤ï¤Á, CMO ¤Ç¤Ï¥Ø¥Ã
 0¤Ç¤â¤è¤¤¡£  ¥À¤Ï°ì¤Ä¤À¤±¤Î¾ðÊó¤ò´Þ¤à. ¤³¤Î4¥Ð¥¤¥È¤Î¥Ø¥Ã¥À¤Î¤³¤È¤ò¥¿¥°¤È¤â¤¤¤¦. ¤µ¤Æ,
   CMO ¤Ç¤Ï, ¥¿¥°¤Ë¤è¤Ã¤Æ¥Ü¥Ç¥£¤ÎÏÀÍýŪ¹½Â¤¤¬·èÄꤹ¤ë. ¤¹¤Ê¤ï¤Á, ¥¿¥°¤Ï¤½¤ì
   ¤¾¤ì¤Î¥Ç¡¼¥¿¹½Â¤¤È1ÂÐ1¤ËÂбþ¤¹¤ë¼±Ê̻ҤǤ¢¤ë. ¤½¤ì¤¾¤ì¤ÎÏÀÍýŪ¹½Â¤¤Ï
   \cite{OpenXM-1999} ¤Ë¾Ü½Ò¤µ¤ì¤Æ¤¤¤ë. ¸½ºß¤Î OpenXM µ¬Ìó¤Ç¤Ï°Ê²¼¤Î CMO ¤¬
   ÄêµÁ¤µ¤ì¤Æ¤¤¤ë.
   
 ¥á¥Ã¥»¡¼¥¸¤ÈƱÍͤ˥إåÀ¤Ï4¥Ð¥¤¥Èñ°Ì¤Ë´ÉÍý¤µ¤ì¤ë¡£¤¹¤Ê¤ï¤Á¡¢CMO ¤Ç¤Ï¥Ø¥Ã  
 ¥À¤Ï°ì¤Ä¤À¤±¤Î¾ðÊó¤ò´Þ¤à¡£¤³¤Î4¥Ð¥¤¥È¤Î¥Ø¥Ã¥À¤Î¤³¤È¤ò¥¿¥°¤È¤â¤¤¤¦¡£¤µ¤Æ¡¢  
 CMO ¤Ç¤Ï¡¢¥¿¥°¤Ë¤è¤Ã¤Æ¥Ü¥Ç¥£¤ÎÏÀÍýŪ¹½Â¤¤¬·èÄꤹ¤ë¡£¤¹¤Ê¤ï¤Á¡¢¥¿¥°¤Ï¤½¤ì  
 ¤¾¤ì¤Î¥Ç¡¼¥¿¹½Â¤¤È1ÂÐ1¤ËÂбþ¤¹¤ë¼±Ê̻ҤǤ¢¤ë¡£¤½¤ì¤¾¤ì¤ÎÏÀÍýŪ¹½Â¤¤Ï  
 \cite{OpenXM-1999} ¤Ë¾Ü½Ò¤µ¤ì¤Æ¤¤¤ë¡£¸½ºß¤Î OpenXM µ¬Ìó¤Ç¤Ï°Ê²¼¤Î CMO ¤¬  
 ÄêµÁ¤µ¤ì¤Æ¤¤¤ë¡£  
   
 \begin{verbatim}  \begin{verbatim}
 #define CMO_ERROR2  0x7f000002  #define CMO_ERROR2                         0x7f000002
 #define CMO_NULL    1  #define CMO_NULL                           1
 #define CMO_INT32   2  #define CMO_INT32                          2
 #define CMO_DATUM   3  #define CMO_DATUM                          3
 #define CMO_STRING  4  #define CMO_STRING                         4
 #define CMO_MATHCAP 5  #define CMO_MATHCAP                        5
   #define CMO_ARRAY                          16
 #define CMO_START_SIGNATURE      0x7fabcd03  #define CMO_LIST                           17
 #define CMO_ARRAY                16  #define CMO_ATOM                           18
 #define CMO_LIST                 17  #define CMO_MONOMIAL32                     19
 #define CMO_ATOM                 18  #define CMO_ZZ                             20
 #define CMO_MONOMIAL32           19  #define CMO_QQ                             21
 #define CMO_ZZ                   20  #define CMO_ZERO                           22
 #define CMO_QQ                   21  #define CMO_DMS_GENERIC                    24
 #define CMO_ZERO                 22  #define CMO_DMS_OF_N_VARIABLES             25
 #define CMO_DMS_GENERIC          24  #define CMO_RING_BY_NAME                   26
 #define CMO_DMS_OF_N_VARIABLES   25  #define CMO_RECURSIVE_POLYNOMIAL           27
 #define CMO_RING_BY_NAME         26  #define CMO_LIST_R                         28
 #define CMO_RECURSIVE_POLYNOMIAL 27  #define CMO_INT32COEFF                     30
 #define CMO_LIST_R               28  #define CMO_DISTRIBUTED_POLYNOMIAL         31
   #define CMO_POLYNOMIAL_IN_ONE_VARIABLE     33
 #define CMO_INT32COEFF                 30  #define CMO_RATIONAL                       34
 #define CMO_DISTRIBUTED_POLYNOMIAL     31  
 #define CMO_POLYNOMIAL_IN_ONE_VARIABLE 33  
 #define CMO_RATIONAL                   34  
   
 #define CMO_64BIT_MACHINE_DOUBLE           40  #define CMO_64BIT_MACHINE_DOUBLE           40
 #define CMO_ARRAY_OF_64BIT_MACHINE_DOUBLE  41  #define CMO_ARRAY_OF_64BIT_MACHINE_DOUBLE  41
 #define CMO_128BIT_MACHINE_DOUBLE          42  #define CMO_128BIT_MACHINE_DOUBLE          42
 #define CMO_ARRAY_OF_128BIT_MACHINE_DOUBLE 43  #define CMO_ARRAY_OF_128BIT_MACHINE_DOUBLE 43
   #define CMO_BIGFLOAT                       50
 #define CMO_BIGFLOAT          50  #define CMO_IEEE_DOUBLE_FLOAT              51
 #define CMO_IEEE_DOUBLE_FLOAT 51  #define CMO_INDETERMINATE                  60
   #define CMO_TREE                           61
 #define CMO_INDETERMINATE 60  #define CMO_LAMBDA                         62
 #define CMO_TREE          61  
 #define CMO_LAMBDA        62  
 \end{verbatim}  \end{verbatim}
   
 ¤³¤ÎÃæ¤Ç CMO\_ERROR2, CMO\_NULL, CMO\_INT32, CMO\_DATUM, CMO\_STRING,  ¤³¤ÎÃæ¤Ç CMO\_ERROR2, CMO\_NULL, CMO\_INT32, CMO\_DATUM, CMO\_STRING,
 CMO\_MATHCAP, CMO\_LIST ¤Ç¼±Ê̤µ¤ì¤ë¥ª¥Ö¥¸¥§¥¯¥È¤ÏºÇ¤â´ðËÜŪ¤Ê¥ª¥Ö¥¸¥§  CMO\_MATHCAP, CMO\_LIST ¤Ç¼±Ê̤µ¤ì¤ë¥ª¥Ö¥¸¥§¥¯¥È¤ÏºÇ¤â´ðËÜŪ¤Ê¥ª¥Ö¥¸¥§
 ¥¯¥È¤Ç¤¢¤Ã¤Æ¡¢¤¹¤Ù¤Æ¤Î OpenXM Âбþ¥·¥¹¥Æ¥à¤Ë¼ÂÁõ¤µ¤ì¤Æ¤¤¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤¡£  ¥¯¥È¤Ç¤¢¤Ã¤Æ, ¤¹¤Ù¤Æ¤Î OpenXM Âбþ¥·¥¹¥Æ¥à¤Ë¼ÂÁõ¤µ¤ì¤Æ¤¤¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤.
   
 ¤³¤ì¤é¤Ë¤Ä¤¤¤Æ¤Î²òÀâ¤ò¹Ô¤¦Á°¤Ëµ­Ë¡¤Ë¤Ä¤¤¤Æ¡¢¾¯¤·ÀâÌÀ¤·¤Æ¤ª¤¯¡£  ¤³¤ì¤é¤Ë¤Ä¤¤¤Æ¤Î²òÀâ¤ò¹Ô¤¦Á°¤Ëµ­Ë¡¤Ë¤Ä¤¤¤Æ, ¾¯¤·ÀâÌÀ¤·¤Æ¤ª¤¯.  ¤³¤ÎÏÀʸ
 ¤³¤ÎÏÀʸ¤Ç¤Ï¡¢Âçʸ»ú¤Ç CMO\_INT32 ¤È½ñ¤¤¤¿¾ì¹ç¤Ë¤Ï¡¢¾åµ­¤ÇÄêµÁ¤·¤¿¼±ÊÌ»Ò  ¤Ç¤Ï, Âçʸ»ú¤Ç CMO\_INT32 ¤È½ñ¤¤¤¿¾ì¹ç¤Ë¤Ï, ¾åµ­¤ÇÄêµÁ¤·¤¿¼±Ê̻Ҥòɽ¤¹.
 ¤òɽ¤ï¤¹¡£¤Þ¤¿ CMO\_INT32 ¤Ç¼±Ê̤µ¤ì¤ë¥ª¥Ö¥¸¥§¥¯¥È¤Î¥¯¥é¥¹(¤¢¤ë¤¤¤Ï¥Ç¡¼  ¤Þ¤¿ CMO\_INT32 ¤Ç¼±Ê̤µ¤ì¤ë¥ª¥Ö¥¸¥§¥¯¥È¤Î¥¯¥é¥¹(¤¢¤ë¤¤¤Ï¥Ç¡¼¥¿¹½Â¤) ¤ò
 ¥¿¹½Â¤)¤ò cmo\_int32 ¤È¾®Ê¸»ú¤Çɽ¤ï¤¹¤³¤È¤Ë¤¹¤ë¡£  cmo\_int32 ¤È¾®Ê¸»ú¤Çɽ¤¹¤³¤È¤Ë¤¹¤ë.
   
 ¤µ¤Æ cmo ¤òɽ¸½¤¹¤ë¤¿¤á¤Î°ì¤Ä¤Îµ­Ë¡¤òƳÆþ¤¹¤ë¡£¤³¤Îµ­Ë¡¤Ï CMO expression  ¤µ¤Æ cmo ¤òɽ¸½¤¹¤ë¤¿¤á¤Î°ì¤Ä¤Îµ­Ë¡¤òƳÆþ¤¹¤ë. ¤³¤Îµ­Ë¡¤Ï CMO expression
 ¤È¸Æ¤Ð¤ì¤Æ¤¤¤ë¡£¤½¤ÎÀµ³Î¤Ê·Á¼°ÅªÄêµÁ¤Ï \cite{OpenXM-1999} ¤ò»²¾È¤¹¤ë¤³¤È¡£  ¤È¸Æ¤Ð¤ì¤Æ¤¤¤ë. ¤½¤ÎÀµ³Î¤Ê·Á¼°ÅªÄêµÁ¤Ï \cite{OpenXM-1999} ¤ò»²¾È¤¹¤ë¤³¤È.
   
 ¤Þ¤º CMO expssion ¤Ï Lisp É÷ɽ¸½¤Î°ì¼ï¤Ç¡¢ cmo ¤ò³ç¸Ì¤Ç°Ï¤ó¤À¥ê¥¹¥È¤È¤·  CMO expssion ¤Ï Lisp É÷ɽ¸½¤Î°ì¼ï¤Ç, cmo ¤ò³ç¸Ì¤Ç°Ï¤ó¤À¥ê¥¹¥È¤È¤·¤Æɽ¸½
 ¤Æɽ¸½¤¹¤ë¡£¤½¤ì¤¾¤ì¤ÎÍ×ÁǤϥ«¥ó¥Þ¤Ç¶èÀڤ롣  ¤¹¤ë. ¤½¤ì¤¾¤ì¤ÎÍ×ÁǤϥ«¥ó¥Þ¤Ç¶èÀÚ¤ë.  Î㤨¤Ð,
 Î㤨¤Ð¡¢  
 \begin{quote}  \begin{quote}
 (17, {\sl int32}, (CMO\_NULL), (2, {\sl int32} $n$))  (17, {\sl int32}, (CMO\_NULL), (2, {\sl int32} $n$))
 \end{quote}  \end{quote}
 ¤Ï CMO expression ¤Ç¤¢¤ë¡£¤³¤³¤Ç¡¢¾®Ê¸»ú¤Î¼ÐÂΤÇɽ¤µ¤ì¤¿``{\sl int32}''  ¤Ï CMO expression ¤Ç¤¢¤ë. ¤³¤³¤Ç, ¾®Ê¸»ú¤Î¼ÐÂΤÇɽ¤µ¤ì¤¿``{\sl int32}''
 ¤Ï 4¥Ð¥¤¥È¤ÎǤ°Õ¤Î¥Ç¡¼¥¿¤òɽ¤¹µ­¹æ¤Ç¤¢¤ê¡¢``{\sl int32} $n$'' ¤ÏƱ¤¸¤¯ 4  ¤Ï 4 ¥Ð¥¤¥È¤ÎǤ°Õ¤Î¥Ç¡¼¥¿¤òɽ¤¹µ­¹æ¤Ç¤¢¤ê, ``{\sl int32} $n$'' ¤ÏƱ¤¸¤¯
 ¥Ð¥¤¥È¤Î¥Ç¡¼¥¿¤Ç¤¢¤ë¤¬°Ê²¼¤ÎÀâÌÀ¤Ç $n$ ¤Èɽ¤¹¤³¤È¤ò¼¨¤¹¡£¤Þ¤¿¿ô»ú 17, 2  4 ¥Ð¥¤¥È¤Î¥Ç¡¼¥¿¤Ç¤¢¤ë¤¬°Ê²¼¤ÎÀâÌÀ¤Ç $n$ ¤Èɽ¤¹¤³¤È¤ò¼¨¤¹. ¤Þ¤¿¿ô»ú 17,
 ¤Ê¤É¤Ï 4¥Ð¥¤¥È¤Î¥Ç¡¼¥¿¤ÇÀ°¿ôÃͤȤ·¤Æ¤ß¤¿¤È¤­¤ÎÃͤò°ÕÌ£¤¹¤ë¡£CMO\_NULL ¤Ï  2 ¤Ê¤É¤Ï 4 ¥Ð¥¤¥È¤Î¥Ç¡¼¥¿¤ÇÀ°¿ôÃͤȤ·¤Æ¤ß¤¿¤È¤­¤ÎÃͤò°ÕÌ£¤¹¤ë. CMO\_NULL
 ¼±ÊÌ»Ò(¤¹¤Ê¤ï¤Á¿ô»ú 1 ¤ÈÅù²Á)¤Ç¤¢¤ë¡£¤³¤Îµ­Ë¡¤«¤é¾åµ­¤Î¥Ç¡¼¥¿¤Ï 20 ¥Ð¥¤  ¤Ï¼±ÊÌ»Ò(¤¹¤Ê¤ï¤Á¿ô»ú 1 ¤ÈÅù²Á)¤Ç¤¢¤ë. ¤³¤Îµ­Ë¡¤«¤é¾åµ­¤Î¥Ç¡¼¥¿¤Ï 20 ¥Ð
 ¥È¤ÎÂ礭¤µ¤Î¥Ç¡¼¥¿¤Ç¤¢¤ë¤³¤È¤¬Ê¬¤«¤ë¡£  ¥¤¥È¤ÎÂ礭¤µ¤Î¥Ç¡¼¥¿¤Ç¤¢¤ë¤³¤È¤¬Ê¬¤«¤ë.  ¤Ê¤ª, CMO expression ¤Ïñ¤Ê¤ëɽ
 ¤Ê¤ª¡¢¤³¤Î¥Ç¡¼¥¿¤Ï CMO ¤Ç¤Ï¤Ê¤¤¤³¤È¤ËÃí°Õ¤·¤Æ¤Û¤·¤¤¡£  µ­Ë¡¤Ç¤¢¤ë¤³¤È¤ËÆäËÃí°Õ¤·¤Æ¤Û¤·¤¤.
 %¤Ê¤ª¡¢ CMO expression ¤Çɽ¸½¤Ç¤­¤Æ¤¤¤Æ¤â¡¢  
 %¤½¤ì¤¬ CMO ¤Ç¤¢¤ë¤³¤È¤È¤Ï̵´Ø·¸¤Ç¤¢¤ë¡£  
   
 ¤µ¤Æ¡¢¤³¤Îµ­Ë¡¤Î¤â¤È¤Ç cmo\_int32 ¤ò¼¡¤Î¥Ç¡¼¥¿¹½Â¤¤ò»ý¤Ä¤ÈÄêµÁ¤¹¤ë¡£  ¤µ¤Æ, ¤³¤Îµ­Ë¡¤Î¤â¤È¤Ç cmo\_int32 ¤ò¼¡¤Î¥Ç¡¼¥¿¹½Â¤¤Ç¤¢¤ë¤ÈÄêµÁ¤¹¤ë.
 \begin{quote}  \begin{quote}
 cmo\_int32 := (CMO\_INT32,  {\sl int32} $a$)  cmo\_int32 := (CMO\_INT32,  {\sl int32})
 \end{quote}  \end{quote}
   Æ±ÍͤË, cmo\_null, cmo\_string, cmo\_list, cmo\_mathcap ¤Î¥·¥ó¥¿¥Ã
 %{\Huge ƱÍÍ¤Ë cmo\_string, cmo\_list ¤Ê¤É¤òÄêµÁ}  ¥¯¥¹¤Ï¼¡¤Î¤è¤¦¤ËÄêµÁ¤µ¤ì¤ë.
   
 ¤³¤ì¤Ï CMO ¤Î 32 ¥Ó¥Ã¥ÈÀ°¿ô $a$ ¤òɽ¤¹¡£  
 Â¾¤Î¥ª¥Ö¥¸¥§¥¯¥È¤âÄêµÁ¤¹¤ë¤¿¤á¤Ë¡¢  
 °Ê¸å ``{\sl string} $s$'' ¤òʸ»úÎó $s$ ¡¢  
 ``{\sl cmo} $ob$'' ¤ò CMO ¤Î $ob$ ¤È¤¹¤ë¡£  
 ¤³¤ì¤òÍѤ¤¤Æ¡¢ cmo\_string, cmo\_list ¤òÄêµÁ¤¹¤ë¡£  
   
 \begin{quote}  \begin{quote}
 cmo\_string := (CMO\_STRING, {\sl int32} $len$, {\sl string} $str$) \\  cmo\_null := (CMO\_NULL) \\
 cmo\_list := (CMO\_LIST, {\sl int32} $n$, {\sl cmo} $ob_1$,  cmo\_string := (CMO\_STRING, {\sl int32} $n$, {\sl string} $s$) \\
                 {\sl cmo} $ob_2$, $\cdots$,{\sl cmo} $ob_n$)  cmo\_list := (CMO\_LIST, {\sl int32} $m$, {\sl cmo} $c_1$, $\ldots$,
   {\sl cmo} $c_m$) \\
   cmo\_mathcap := (CMO\_MATHCAP, {\sl cmo\_list})
 \end{quote}  \end{quote}
   ¤¿¤À¤·, {\sl string}¤ÏŬÅö¤ÊŤµ¤Î¥Ð¥¤¥ÈÎó¤òɽ¤¹. $s$ ¤Î¥Ð¥¤¥ÈĹ¤Ï $n$
   ¤È°ìÃפ¹¤ë¤³¤È¤¬Í׵ᤵ¤ì¤ë.
   
 ¤³¤ì¤Ï¤½¤ì¤¾¤ìŤµ $len$ ¤Îʸ»úÎó $str$ ¤È¡¢  
 $ob_1$, $ob_2$, $\cdots$, $ob_n$ ¤«¤é¤Ê¤ëŤµ $n$ ¤Î¥ê¥¹¥È¤òɽ¤¹¡£  
   
   
 % ¤³¤³¤Ç 32 bit ¤ÎÀ°¿ô¤Îɽ¸½ÊýË¡¤Ë¤Ä¤¤¤Æ¿¨¤ì¤Æ¤ª¤¯¡£  
 % OpenXM µ¬Ìó¤Ç¤Ï¥Ð¥¤¥È¥¹¥È¥ê¡¼¥à¤Ç 32 bit ¤ÎÀ°¿ô 20 ¤ò  
 % {\tt 00 00 00 14} ¤Èɽ¤¹ÊýË¡¤È {\tt 14 00 00 00} ¤Èɽ¤¹ÊýË¡¤¬¤¢¤ë¡£  
 % ¤³¤Îɽ¸½ÊýË¡¤Î°ã¤¤¤Ï¥¯¥é¥¤¥¢¥ó¥È¤È¥µ¡¼¥Ð¤ÎºÇ½é¤ÎÀܳ»þ¤Ë  
 % ÁÐÊý¤Î¹ç°Õ¤Ç·èÄꤹ¤ë¤³¤È¤Ë¤Ê¤Ã¤Æ¤¤¤ë¡£  
 % ¤Ê¤ª¡¢¹ç°Õ¤¬¤Ê¤¤¾ì¹ç¤Ë¤ÏÁ°¼Ô¤Îɽ¸½ÊýË¡  
 % (°Ê¸å¡¢¤³¤Îɽ¸½ÊýË¡¤ò¥Í¥Ã¥È¥ï¡¼¥¯¥Ð¥¤¥È¥ª¡¼¥À¡¼¤È¸Æ¤Ö)¤ò  
 % »È¤¦¤³¤È¤Ë¤Ê¤Ã¤Æ¤¤¤ë¡£  
 % ¤Þ¤¿¡¢Éé¤Î¿ô¤òɽ¸½¤¹¤ëɬÍפ¬¤¢¤ë¤È¤­¤Ë¤Ï¡¢  
 % 2 ¤ÎÊä¿ôɽ¸½¤ò»È¤¦¤³¤È¤Ë¤Ê¤Ã¤Æ¤¤¤ë¡£  
   
 % Àè¤Û¤É¤Î¡¢ (CMO\_INT32, 123456789) ¤ò¥Í¥Ã¥È¥ï¡¼¥¯¥Ð¥¤¥È¥ª¡¼¥À¡¼¤Ç  
 % ¥Ð¥¤¥ÈÎó¤Ëľ¤¹¤È¡¢  
 % \begin{center}  
 %       {\tt 00 00 00 02 07 5b cd 15}  
 % \end{center}  
 % ¤È¤Ê¤ê¡¢  
 % (CMO\_STRING, 6, ``OpenXM'') ¤Ï  
 % \begin{center}  
 %       {\tt 00 00 00 04 00 00 00 06 4f 70 65 6e 58 4d}  
 % \end{center}  
 % ¤È¤Ê¤ë¡£  
   
 % CMO ·Á¼°¤Î¿ÇÜĹÀ°¿ô¤Ï¡¢ Gnu MP¥é¥¤¥Ö¥é¥êÅù¤ò»²¹Í¤Ë¤·¤Æ¤ª¤ê¡¢  
 % Éä¹æÉÕ¤­ÀäÂÐÃÍɽ¸½¤òÍѤ¤¤Æ¤¤¤ë¡£  
 % ¥¿¥°°Ê¹ß¤Î·Á¼°¤Ï¼¡¤Î¤è¤¦¤Ë¤Ê¤ë¡£  
   
 % \begin{tabular}{|c|c|c|c|c|} \hline  
 % $f$ & $b_0$ & $b_1$ & $\cdots$ & $b_{n-1}$ \\ \hline  
 % \end{tabular}  
   
 % ¤³¤³¤Ç¡¢ 1 ¤Ä¤ÎÏÈ¤Ï 4 ¥Ð¥¤¥È¤òɽ¤·¡¢  
 % $f$ ¤ÏÉä¹æÉÕ¤­ 32 ¥Ó¥Ã¥ÈÀ°¿ô¤ò¡¢  
 % $b_0$, $b_1$, $\cdots$, $b_{n-1}$ ¤ÏÉä¹æ¤Ê¤· 32 ¥Ó¥Ã¥ÈÀ°¿ô¤òɽ¤·¤Æ¤¤¤ë¡£  
 % ¤µ¤é¤Ë¡¢ $|f| = n$ ¤¬À®¤êΩ¤¿¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤¡£  
 % ¤³¤Î¥ª¥Ö¥¸¥§¥¯¥È¤Ï  
 % \[ \mbox{sgn}(f) \times \{ b_0 (2^{32})^0 + b_1 (2^{32})^1 + \cdots  
 %       + b_{n-1} (2^{32})^{n-1} \}     \]  
 % ¤È¤¤¤¦À°¿ô¤Ç¤¢¤ë¤ÈÄêµÁ¤µ¤ì¤Æ¤¤¤ë¡£  
 % ¤¿¤À¤·¡¢  
 % \[ \mbox{sgn}(f) = \left\{ \begin{array}{ll}  
 %         1       & f>0 \\  
 %         0       & f=0 \\  
 %         -1      & f<0 \\ \end{array} \right.  \]  
 % ¤Ç¤¢¤ë¡£  
   
 % ¤³¤³¤Ç¶ñÂÎÎã¤ò¤À¤½¤¦¡£  
 % $4294967298 = 1 \times 2^{32} + 2$ ¤ò CMO ·Á¼°¤Î  
 % ¥Í¥Ã¥È¥ï¡¼¥¯¥Ð¥¤¥È¥ª¡¼¥À¡¼¡¢Â¿ÇÜĹÀ°¿ô¤Çɽ¸½¤¹¤ë¤È¡¢  
 % \begin{center}  
 %       {\tt 00 00 00 14 00 00 00 02 00 00 00 02 00 00 00 01}  
 % \end{center}  
 % ¤È¤Ê¤ë¡£¤Þ¤¿¡¢Æ±¤¸É½¸½ÊýË¡¤Ç $-1$ ¤òɽ¸½¤¹¤ë¤È¡¢  
 % \begin{center}  
 %       {\tt 00 00 00 14 ff ff ff ff 00 00 00 01}  
 % \end{center}  
 % ¤È¤Ê¤ë¡£  
   
   
 \section{mathcap ¤Ë¤Ä¤¤¤Æ}  \section{mathcap ¤Ë¤Ä¤¤¤Æ}
   
 OpenXM µ¬Ìó¤Ç¤Ï¡¢ÄÌ¿®»þ¤ËÍѤ¤¤é¤ì¤ë¥á¥Ã¥»¡¼¥¸¤Î¼ïÎà¤ò³Æ¥½¥Õ¥È¥¦¥§¥¢¤¬À©  OpenXM µ¬Ìó¤Ç¤Ï, ÄÌ¿®»þ¤ËÍѤ¤¤é¤ì¤ë¥á¥Ã¥»¡¼¥¸¤Î¼ïÎà¤ò³Æ¥½¥Õ¥È¥¦¥§¥¢¤¬À©
 ¸Â¤¹¤ëÊýË¡¤òÍÑ°Õ¤·¤Æ¤¤¤ë¡£¤³¤ì¤Ï³Æ¥½¥Õ¥È¥¦¥§¥¢¤Î¼ÂÁõ¤Ë¤è¤Ã¤Æ¤Ï¤¹¤Ù¤Æ¤Î¥á¥Ã  ¸Â¤¹¤ëÊýË¡¤òÍÑ°Õ¤·¤Æ¤¤¤ë. ¤³¤ì¤Ï³Æ¥½¥Õ¥È¥¦¥§¥¢¤Î¼ÂÁõ¤Ë¤è¤Ã¤Æ¤Ï¤¹¤Ù¤Æ¤Î¥á¥Ã
 ¥»¡¼¥¸¤ò¥µ¥Ý¡¼¥È¤¹¤ë¤Î¤¬º¤Æñ¤Ê¾ì¹ç¤¬¤¢¤ë¤«¤é¤Ç¤¢¤ë¡£¤Þ¤¿¡¢³Æ¥½¥Õ¥È¥¦¥§¥¢  ¥»¡¼¥¸¤ò¥µ¥Ý¡¼¥È¤¹¤ë¤Î¤¬º¤Æñ¤Ê¾ì¹ç¤¬¤¢¤ë¤«¤é¤Ç¤¢¤ë. ¤Þ¤¿, ³Æ¥½¥Õ¥È¥¦¥§¥¢
 ¤Ç¥á¥Ã¥»¡¼¥¸¤Î¼ïÎà¤ò³ÈÄ¥¤·¤¿¤¤¾ì¹ç¤Ë¤âÍ­¸ú¤Ç¤¢¤ë¡£¤³¤ÎÀ©¸Â(¤¢¤ë¤¤¤Ï³ÈÄ¥)  ¤Ç¥á¥Ã¥»¡¼¥¸¤Î¼ïÎà¤ò³ÈÄ¥¤·¤¿¤¤¾ì¹ç¤Ë¤âÍ­¸ú¤Ç¤¢¤ë. ¤³¤ÎÀ©¸Â(¤¢¤ë¤¤¤Ï³ÈÄ¥)
 ¤Ï mathcap ¤È¸Æ¤Ð¤ì¤ë¥Ç¡¼¥¿¹½Â¤¤Ë¤è¤Ã¤Æ¹Ô¤ï¤ì¤ë¡£¤³¤ÎÀá¤Ç¤Ï mathcap ¤Î¥Ç¡¼  ¤Ï mathcap ¤È¸Æ¤Ð¤ì¤ë¥Ç¡¼¥¿¹½Â¤¤Ë¤è¤Ã¤Æ¹Ô¤ï¤ì¤ë. ¤³¤ÎÀá¤Ç¤Ï mathcap ¤Î¥Ç¡¼
 ¥¿¹½Â¤¤È¡¢¶ñÂÎŪ¤Ê¥á¥Ã¥»¡¼¥¸¤ÎÀ©¸Â¤Î¼ê³¤­¤Ë¤Ä¤¤¤ÆÀâÌÀ¤¹¤ë¡£  ¥¿¹½Â¤¤È, ¶ñÂÎŪ¤Ê¥á¥Ã¥»¡¼¥¸¤ÎÀ©¸Â¤Î¼ê³¤­¤Ë¤Ä¤¤¤ÆÀâÌÀ¤¹¤ë.
   
 ¤Ç¤Ï¡¢¼ê³¤­¤Ë¤Ä¤¤¤ÆÀâÌÀ¤·¤è¤¦¡£  ¤Þ¤º, ¼ê³¤­¤Ë¤Ä¤¤¤ÆÀâÌÀ¤·¤è¤¦.
   
 Âè°ì¤Ë¥µ¡¼¥Ð¤Îµ¡Ç½¤òÀ©¸Â¤¹¤ë¤Ë¤Ï¼¡¤Î¤è¤¦¤Ë¤¹¤ë¡£¥¯¥é¥¤¥¢¥ó¥È¤¬ mathcap  Âè°ì¤Ë¥µ¡¼¥Ð¤Îµ¡Ç½¤òÀ©¸Â¤¹¤ë¤Ë¤Ï¼¡¤Î¤è¤¦¤Ë¤¹¤ë. ¥¯¥é¥¤¥¢¥ó¥È¤¬ mathcap
 ¥ª¥Ö¥¸¥§¥¯¥È¤ò¥µ¡¼¥Ð¤ØÁ÷¤ë¤È¡¢¥µ¡¼¥Ð¤Ï¼õ¤±¼è¤Ã¤¿mathcap ¤ò¥¹¥¿¥Ã¥¯¤ËÀѤࡣ  ¥ª¥Ö¥¸¥§¥¯¥È¤ò¥µ¡¼¥Ð¤ØÁ÷¤ë¤È, ¥µ¡¼¥Ð¤Ï¼õ¤±¼è¤Ã¤¿mathcap ¤ò¥¹¥¿¥Ã¥¯¤ËÀѤà.
 ¼¡¤Ë¥¯¥é¥¤¥¢¥ó¥È¤¬Ì¿Îá SM\_setMathCap ¤òÁ÷¤ë¤È¡¢¥µ¡¼¥Ð¤Ï¥¹¥¿¥Ã¥¯¤ÎºÇ¾å°Ì  ¼¡¤Ë¥¯¥é¥¤¥¢¥ó¥È¤¬Ì¿Îá SM\_setMathCap ¤òÁ÷¤ë¤È, ¥µ¡¼¥Ð¤Ï¥¹¥¿¥Ã¥¯¤ÎºÇ¾å°Ì
 ¤ËÀѤޤì¤Æ¤¤¤ë mathcap ¥ª¥Ö¥¸¥§¥¯¥È¤ò¼è¤ê½Ð¤·¡¢mathcap ¤ÇÀßÄꤵ¤ì¤Æ¤¤¤Ê  ¤ËÀѤޤì¤Æ¤¤¤ë mathcap ¥ª¥Ö¥¸¥§¥¯¥È¤ò¼è¤ê½Ð¤·, mathcap ¤ÇÀßÄꤵ¤ì¤Æ¤¤¤Ê
 ¤¤¥á¥Ã¥»¡¼¥¸¤ò¥¯¥é¥¤¥¢¥ó¥È¤ØÁ÷¤é¤Ê¤¤¤è¤¦¤ËÀ©¸Â¤ò¹Ô¤¦¡£  ¤¤¥á¥Ã¥»¡¼¥¸¤ò¥¯¥é¥¤¥¢¥ó¥È¤ØÁ÷¤é¤Ê¤¤¤è¤¦¤ËÀ©¸Â¤ò¹Ô¤¦.
   
 ÂèÆó¤Ë¥¯¥é¥¤¥¢¥ó¥È¤òÀ©¸Â¤¹¤ë¤Ë¤Ï¼¡¤Î¤è¤¦¤Ë¤¹¤ë¡£¥¯¥é¥¤¥¢¥ó¥È¤¬¥µ¡¼¥Ð¤ËÌ¿  ÂèÆó¤Ë¥¯¥é¥¤¥¢¥ó¥È¤òÀ©¸Â¤¹¤ë¤Ë¤Ï¼¡¤Î¤è¤¦¤Ë¤¹¤ë. ¥¯¥é¥¤¥¢¥ó¥È¤¬¥µ¡¼¥Ð¤ËÌ¿Îá \\
 Îá SM\_mathcap ¤òÁ÷¤ë¤È¡¢¥µ¡¼¥Ð¤Ï mathcap ¥ª¥Ö¥¸¥§¥¯¥È¤ò¥¹¥¿¥Ã¥¯¤ËÀѤࡣ  SM\_mathcap ¤òÁ÷¤ë¤È, ¥µ¡¼¥Ð¤Ï mathcap ¥ª¥Ö¥¸¥§¥¯¥È¤ò¥¹¥¿¥Ã¥¯¤ËÀѤà.
 ¤µ¤é¤ËÌ¿Îá SM\_popCMO ¤òÁ÷¤ë¤È¡¢¥µ¡¼¥Ð¤Ï¥¹¥¿¥Ã¥¯¤ÎºÇ¾å°Ì¤Î¥ª¥Ö¥¸¥§¥¯¥È  ¤µ¤é¤ËÌ¿Îá SM\_popCMO ¤òÁ÷¤ë¤È, ¥µ¡¼¥Ð¤Ï¥¹¥¿¥Ã¥¯¤ÎºÇ¾å°Ì¤Î¥ª¥Ö¥¸¥§¥¯¥È
 (¤¹¤Ê¤ï¤Á mathcap ¥ª¥Ö¥¸¥§¥¯¥È)¤ò¥Ü¥Ç¥£¤È¤¹¤ë¥á¥Ã¥»¡¼¥¸¤ò¥¯¥é¥¤¥¢¥ó¥È¤Ë  (¤¹¤Ê¤ï¤Á mathcap ¥ª¥Ö¥¸¥§¥¯¥È)¤ò¥Ü¥Ç¥£¤È¤¹¤ë¥á¥Ã¥»¡¼¥¸¤ò¥¯¥é¥¤¥¢¥ó¥È¤Ë
 Á÷ÉÕ¤¹¤ë¡£¥¯¥é¥¤¥¢¥ó¥È¤Ï¤½¤Î¥ª¥Ö¥¸¥§¥¯¥È¤ò²òÀϤ·¤Æ¡¢À©¸Â¤ò¤«¤±¤ë¡£  Á÷ÉÕ¤¹¤ë. ¥¯¥é¥¤¥¢¥ó¥È¤Ï¤½¤Î¥ª¥Ö¥¸¥§¥¯¥È¤ò²òÀϤ·¤Æ, À©¸Â¤ò¤«¤±¤ë.
   
 ¼¡¤Ë mathcap ¤Î¥Ç¡¼¥¿¹½Â¤¤Ë¤Ä¤¤¤ÆÀâÌÀ¤¹¤ë¡£  ¼¡¤Ë mathcap ¤Î¥Ç¡¼¥¿¹½Â¤¤Ë¤Ä¤¤¤ÆÀâÌÀ¤¹¤ë.
 mathcap ¤Ï CMO ¤Î°ì¼ï¤Ç¤¢¤ë¤Î¤Ç¡¢¤¹¤Ç¤ËÀâÌÀ¤·¤¿¤è¤¦¤Ë \\  mathcap ¤Ï cmo ¤Î°ì¼ï¤Ç¤¢¤ë¤Î¤Ç, ¤¹¤Ç¤ËÀâÌÀ¤·¤¿¤è¤¦¤Ë
 \begin{tabular}{|c|c|} \hline  
 ¥Ø¥Ã¥À        & \hspace{10mm} ¥Ü¥Ç¥£ \hspace{10mm} \\ \hline  
 \end{tabular} \\  
 ¤Î¹½Â¤¤ò»ý¤Á¥Ø¥Ã¥À¤ÎÃÍ¤Ï 5 ¤Ç¤¢¤ë(\ref{sec:cmo} Àá¤ò»²¾È¤Î¤³¤È)¡£  
 ¥Ü¥Ç¥£¤Ï cmo\_list ¥ª¥Ö¥¸¥§¥¯¥È¤Ç¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤¡£  
   
 %\begin{quote}  
 %       cmo\_mathcap := (CMO\_MATHCAP,{\sl cmo} obj)  
 %\end{quote}  
   
 ¤µ¤Æ¡¢mathcap ¥ª¥Ö¥¸¥§¥¯¥È¤Î¥Ü¥Ç¥£¤Î cmo\_list ¥ª¥Ö¥¸¥§¥¯¥È¤Ï°Ê²¼¤Î¾ò·ï¤ò  
 Ëþ¤¿¤¹¤³¤È¤òÍ׵ᤵ¤ì¤ë¡£  
   
 ¤Þ¤º¡¢¤½¤Î cmo\_list ¥ª¥Ö¥¸¥§¥¯¥È¤Ï¾¯¤Ê¤¯¤È¤â¥ê¥¹¥ÈŤ¬ 3 °Ê¾å¤Ç¤Ê¤±¤ì¤Ð  
 ¤Ê¤é¤Ê¤¤¡£  
   
 \begin{quote}  \begin{quote}
         (CMO\_LIST, {\sl int32} $3$,  cmo\_mathcap := (CMO\_MATHCAP, {\sl cmo\_list})
                 {\sl cmo} $A$, {\sl cmo} $B$, {\sl cmo} $C$)  
 \end{quote}  \end{quote}
 %\[     \begin{tabular}{|c|c|c|} \hline  ¤Î¹½Â¤¤ò¤â¤Ä(\ref{sec:cmo} Àá¤ò»²¾È¤Î¤³¤È).
 %       $A$ & $B$ & $C$ \\ \hline  ¥Ü¥Ç¥£¤Ï cmo\_list ¥ª¥Ö¥¸¥§¥¯¥È¤Ç¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤.
 %       \end{tabular}   \]  
   
 Âè°ìÍ×ÁÇ $A$ ¤Ï¤Þ¤¿ cmo\_list ¤Ç¤¢¤ê¡¢¥ê¥¹¥ÈĹ¤Ï 4 °Ê¾å¡¢  ¤µ¤Æ, mathcap ¥ª¥Ö¥¸¥§¥¯¥È¤Î¥Ü¥Ç¥£¤Î cmo\_list ¥ª¥Ö¥¸¥§¥¯¥È¤Ï°Ê²¼¤Î¾ò·ï
 $a_1$ ¤Ï 32 ¥Ó¥Ã¥ÈÀ°¿ô¤Ç¥Ð¡¼¥¸¥ç¥ó¥Ê¥ó¥Ð¡¼¤ò¡¢  ¤òËþ¤¿¤¹¤³¤È¤òÍ׵ᤵ¤ì¤ë.  ¤Þ¤º, ¤½¤Î cmo\_list ¥ª¥Ö¥¸¥§¥¯¥È¤Ï¾¯¤Ê¤¯¤È¤â
 $a_2$, $a_3$, $a_4$ ¤Ïʸ»úÎó¤Ç  ¥ê¥¹¥ÈŤ¬ 3 °Ê¾å¤Ç¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤.
 ¤½¤ì¤¾¤ì¥·¥¹¥Æ¥à¤Î̾Á°¡¢¡¢ CPU ¤Î¼ïÎà¤òɽ¤¹¤³¤È¤Ë¤Ê¤Ã¤Æ¤¤¤ë¡£  
 \begin{quote}  \begin{quote}
         (CMO\_LIST, {\sl int32} $4$,  (CMO\_LIST, {\sl int32}, {\sl cmo} $a$, {\sl cmo} $b$, {\sl cmo} $c$, $\ldots$)
                 {\sl cmo\_int32} $a_1$, {\sl cmo\_string} $a_2$,  
                 {\sl cmo\_string} $a_3$, {\sl cmo\_string} $a_4$)  
 \end{quote}  \end{quote}
   
 ÂèÆóÍ×ÁÇ $B$ ¤Ï¼¡¤Î¤è¤¦¤Ê¥ê¥¹¥È¹½Â¤¤ò¤·¤Æ¤¤¤ë¡£  Âè°ìÍ×ÁÇ $a$ ¤Ï¤Þ¤¿ cmo\_list ¤Ç¤¢¤ê, ¥ê¥¹¥ÈĹ¤Ï 4 °Ê¾å, $a_1$ ¤Ï
 ¤³¤Î $b_1$, $b_2$, $\cdots$, $b_n$ ¤Ï¤¹¤Ù¤Æ 32 ¥Ó¥Ã¥È¤ÎÀ°¿ô¤Ç¤¢¤ë¡£  cmo\_int32 ¤Ç¥Ð¡¼¥¸¥ç¥ó¤òɽ¤¹. $a_2$, $a_3$, $a_4$ ¤Ï cmo\_string ¤Ç¤¢¤ê,
 \ref{sec:oxsm} Àá¤Ç¤ß¤¿¤è¤¦¤Ë¡¢  ¤½¤ì¤¾¤ì¿ô³Ø¥·¥¹¥Æ¥à¤Î̾Á°, ¥Ð¡¼¥¸¥ç¥ó, HOSTTYPE ¤òɽ¤¹¤³¤È¤Ë¤Ê¤Ã¤Æ¤¤¤ë.
 ¥¹¥¿¥Ã¥¯¥Þ¥·¥ó¤Ø¤ÎÌ¿Îá¤Ï¤¹¤Ù¤Æ 32 ¥Ó¥Ã¥È¤ÎÀ°¿ô¤Çɽ¤·¤Æ¤ª¤ê¡¢  
 ³Æ $b_i$ ¤ÏÍøÍѲÄǽ¤ÊÌ¿Îá¤ËÂбþ¤¹¤ë 32 ¥Ó¥Ã¥È¤ÎÀ°¿ô¤È¤Ê¤Ã¤Æ¤¤¤ë¡£  
 \begin{quote}  \begin{quote}
         (CMO\_LIST, {\sl int32} $n$,  (CMO\_LIST, {\sl int32},
                 {\sl cmo\_int32} $b_1$, {\sl cmo\_int32} $b_2$,  {\sl cmo\_int32} $a_1$, {\sl cmo\_string} $a_2$, {\sl cmo\_string}
                 $\cdots$, {\sl cmo\_int32} $b_n$)  $a_3$, {\sl cmo\_string} $a_4$, $\ldots$)
 \end{quote}  \end{quote}
   
 Âè»°Í×ÁÇ $C$ ¤Ï°Ê²¼¤Î¤è¤¦¤Ê¥ê¥¹¥È¹½Â¤¤ò¤·¤Æ¤¤¤ë¡£  ÂèÆóÍ×ÁÇ $b$ ¤â cmo\_list ¤Ç¤¢¤ê, OpenXM ¥¹¥¿¥Ã¥¯¥Þ¥·¥ó¤òÀ©¸æ¤¹¤ë¤¿¤á¤Ë
   ÍѤ¤¤é¤ì¤ë.  ³Æ $b_i$ ¤Ï cmo\_int32 ¤Ç¤¢¤ê, ¥Ü¥Ç¥£¤Ï¥¹¥¿¥Ã¥¯¥Þ¥·¥ó¤ÎÌ¿Îá
   ¥³¡¼¥É¤Ç¤¢¤ë.  \ref{sec:oxsm} Àá¤ÇÀâÌÀ¤·¤¿¤¬, ¥¹¥¿¥Ã¥¯¥Þ¥·¥ó¤Ø¤ÎÌ¿Îá¤Ï¤¹
   ¤Ù¤Æ {\sl int32} ¤Çɽ¤µ¤ì¤Æ¤¤¤¿¤³¤È¤ËÃí°Õ¤·¤è¤¦.
 \begin{quote}  \begin{quote}
   (CMO\_LIST, {\sl int32} $m$, \\  (CMO\_LIST, {\sl int32} $n$,
   \hspace{10mm} (CMO\_LIST, {\sl int32} $l_1$, {\sl cmo\_int32} $c_{11}$,  {\sl cmo\_int32} $b_1$, $\ldots$, {\sl cmo\_int32} $b_n$)
                 {\sl cmo} $c_{12}$, $\cdots$, {\sl cmo} $c_{1l_1}$) \\  
   \hspace{10mm} (CMO\_LIST, {\sl int32} $l_2$, {\sl cmo\_int32} $c_{21}$,  
                 {\sl cmo} $c_{22}$, $\cdots$, {\sl cmo} $c_{1l_2}$) \\  
   \hspace{10mm} $\vdots$ \\  
   \hspace{10mm} (CMO\_LIST, {\sl int32} $l_m$, {\sl cmo\_int32} $c_{m1}$,  
                 {\sl cmo} $c_{m2}$, $\cdots$, {\sl cmo} $c_{1l_m}$))  
 \end{quote}  \end{quote}
 %%$n$ ¤Ï OX\_COMMAND °Ê³°¤Î¼õ¤±¼è¤ì¤ë¥á¥Ã¥»¡¼¥¸¤Î¥¿¥°¤Î¼ïÎà¤Î¿ô¤ËÅù¤·¤¤¡£  
 %%Í×ÁÇ¿ô¤Ï 1 ¤Ç¤â¤â¤Á¤í¤ó¹½¤ï¤Ê¤¤¡£  Âè»°Í×ÁÇ $c$ ¤Ï°Ê²¼¤Î¤è¤¦¤Ê cmo\_list ¤Ç¤¢¤ê, ¥ª¥Ö¥¸¥§¥¯¥È¤ÎÁ÷¼õ¿®¤òÀ©¸æ
 ¤É¤Î $c_{i1}$ ¤Ë¤â 32 ¥Ó¥Ã¥È¤ÎÀ°¿ô¤¬Æþ¤Ã¤Æ¤ª¤ê¡¢  ¤¹¤ë¤¿¤á¤ËÍѤ¤¤é¤ì¤ë.  Á÷¼õ¿®¤ÎÀ©¸æ¤Ï¥á¥Ã¥»¡¼¥¸¤Î¼ïÎऴ¤È¤Ë¹Ô¤ï¤ì¤ë.
 OX\_COMMAND °Ê³°¤Î¡¢¼õ¤±¼è¤ì¤ë¥á¥Ã¥»¡¼¥¸¤Î¥¿¥°¤¬Æþ¤Ã¤Æ¤¤¤ë¡£  
 $c_{i2}$ °Ê¹ß¤Ë¤Ä¤¤¤Æ¤ÏºÇ½é¤Î $c_{i1}$ ¤ÎÃͤˤè¤Ã¤Æ¤½¤ì¤¾¤ì°Û¤Ê¤ë¡£  
 ¤³¤³¤Ç¤Ï¡¢ºÇ½é¤ÎÍ×ÁǤ¬ OX\_DATA ¤Î¾ì¹ç¤Ë¤Ä¤¤¤Æ¤Î¤ßÀâÌÀ¤¹¤ë¡£  
 ¤³¤Î $c_{i1}$ ¤¬ OX\_DATA ¤Î¾ì¹ç¡¢  
 $c_{i1}$, $c_{i2}$, $\cdots$, $c_{il_i}$ ¤òÍ×ÁǤȤ¹¤ë cmo\_list ¤Ï  
 CMO ·Á¼°¤Ë¤Ä¤¤¤Æ¤Î¾ðÊó¤òɽ¤·¤Æ¤ª¤ê¡¢ $l_i=2$ ¤È·è¤á¤é¤ì¤Æ¤¤¤ë¡£  
 $c_{i1}$ ¤Ë¤Ï¤â¤Á¤í¤ó¤Î¤³¤È OX\_DATA ¤¬Æþ¤Ã¤Æ¤ª¤ê¡¢  
 $c_{i2}$ ¤Ï°Ê²¼¤Î¿Þ¤Î¤è¤¦¤Ê cmo\_list ¤Ë¤Ê¤Ã¤Æ¤¤¤ë¡£  
 ³ÆÍ×ÁÇ¤Ï 32 ¥Ó¥Ã¥È¤ÎÀ°¿ô¤Ç¤¢¤ê¡¢  
 ¼õ¤±¼è¤ë¤³¤È¤¬²Äǽ¤Ê CMO ·Á¼°¤Î¥¿¥°¤¬Æþ¤ë¡£  
 \begin{quote}  \begin{quote}
         (CMO\_LIST, {\sl int32} $k$,  (CMO\_LIST, {\sl int32} $m$, {\sl cmo\_list} $\ell_1$, $\ldots$,
                 {\sl cmo\_int32} $c_{i21}$, {\sl cmo\_int32} $c_{i22}$,  {\sl cmo\_list} $\ell_m$)
                         $\cdots$, {\sl cmo\_int32} $c_{i2k}$)  
 \end{quote}  \end{quote}
 %\[  \overbrace{  ³Æ $\ell_i$ ¤¬À©¸æ¤Î¤¿¤á¤Î¾ðÊó¤òɽ¤¹.  ¤É¤Î $\ell_i$ ¤â°ì¤Ä°Ê¾å¤ÎÍ×ÁǤò
 %       \begin{tabular}{|c|c|c|c|c|} \hline  »ý¤Ã¤Æ¤ª¤ê, Âè°ìÍ×ÁǤÏɬ¤º cmo\_int32 ¤È¤Ê¤Ã¤Æ¤¤¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤.  ¤³¤ì
 %       $c_{i21}$ & $c_{i22}$ & $\cdots$ & $c_{i2l}$    \\ \hline  ¤ÏÀ©¸æ¤¹¤Ù¤­¥á¥Ã¥»¡¼¥¸¤Î¼±Ê̻ҤòÆþ¤ì¤ë¤¿¤á¤Ç¤¢¤ë.
 %       \end{tabular}  
 %   }^{c_{i2}}  \]  
   
 %¤Ê¤ª¡¢ mathcap ¥Ç¡¼¥¿¤ÎÃæ¤Ç¤Ï CMO ·Á¼°¤ÇÄêµÁ¤µ¤ì¤Æ¤¤¤ë  ³Æ $\ell_i$ ¤Î¹½Â¤¤Ï¥á¥Ã¥»¡¼¥¸¤Î¼ïÎà¤Ë¤è¤Ã¤Æ°Û¤Ê¤ë.  ¤³¤³¤Ç¤Ï, OX\_DATA
 %32 bit À°¿ô¡¢Ê¸»úÎ󡢥ꥹ¥È¹½Â¤¤¬»È¤ï¤ì¤Æ¤ª¤ê¡¢  ¤Î¾ì¹ç¤Ë¤Ä¤¤¤Æ¤Î¤ßÀâÌÀ¤¹¤ë.  Âè°ìÍ×ÁǤ¬ OX\_DATA ¤Î¾ì¹ç, ¥ê¥¹¥È $\ell_i$
 %mathcap ¥Ç¡¼¥¿¤Ë´Þ¤Þ¤ì¤Æ¤¤¤ëÆâÍƤòÍý²ò¤Ç¤­¤ë¤¿¤á¤Ë¤Ï  ¤Ï°Ê²¼¤Î¤è¤¦¤Ê¹½Â¤¤È¤Ê¤Ã¤Æ¤¤¤ë.  ³Æ $c_i$ ¤Ï cmo\_int32 ¤Ç¤¢¤ê, ¤½¤Î¥Ü¥Ç¥£
 %ɬÁ³Åª¤Ë¤³¤ì¤é¤âÍý²ò¤Ç¤­¤ëɬÍפ¬¤¢¤ë  ¤Ï CMO ¤Î¼±Ê̻ҤǤ¢¤ë.  $c_i$ ¤Ç»Ø¼¨¤µ¤ì¤¿ CMO ¤Î¤ß¤¬Á÷¼õ¿®¤¹¤ë¤³¤È¤òµö
 %(¤Ã¤Æ¤³¤È¤Ï CMO ·Á¼°¤Î¤È¤³¤í¤Ç¤³¤ì¤é¤ò  ¤µ¤ì¤ë.
 %ÀâÌÀ¤·¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤¤Ã¤Æ¤³¤È¤Ç¤¹)¡£  
   
 ¶ñÂÎŪ¤Ê mathcap ¤ÎÎã¤ò¤¢¤²¤è¤¦¡£  
 Ì¾Á°¤¬ ``ox\_test''¡¢¥Ð¡¼¥¸¥ç¥ó¥Ê¥ó¥Ð¡¼¤¬ 199911250 ¤Î¥µ¡¼¥Ð¤Ç¡¢  
 PC-UNIX ¾å¤ÇÆ°¤¤¤Æ¤¤¤ì¤Ð¡¢  
 $A$ ¤ÎÉôʬ¤Ï  
 \begin{quote}  \begin{quote}
 (CMO\_LIST, 4, {\sl cmo\_int32} $199911250$, {\sl cmo\_string} "ox\_test",  (CMO\_LIST, 2, (CMO\_INT32, OX\_DATA), \\
         {\sl cmo\_string} "Version=199911250",  \ \ (CMO\_LIST, {\sl int32} $k$, {\sl cmo\_int32} $c_1$,
         {\sl cmo\_string} "HOSTTYPE=i386")  $\ldots$, {\sl cmo\_int32} $c_k$))
 \end{quote}  \end{quote}
 ¤È¤Ê¤ë¡£  
 ¤µ¤é¤Ë¡¢¤³¤Î¥µ¡¼¥Ð¤Î¥¹¥¿¥Ã¥¯¥Þ¥·¥ó¤¬  ¶ñÂÎŪ¤Ê mathcap ¤ÎÎã¤ò¤¢¤²¤è¤¦.  Ì¾Á°¤¬ ``ox\_test'', ¥Ð¡¼¥¸¥ç¥ó¥Ê¥ó¥Ð¡¼
 Ì¿Îᥳ¡¼¥É 2, 3, 5, 7, 11 ÈÖ¤òÍøÍѲÄǽ  ¤¬ 199911250 ¤Î¥µ¡¼¥Ð¤Ç, Linux ¾å¤ÇÆ°¤¤¤Æ¤ª¤ê, ¤³¤Î¥µ¡¼¥Ð¤Î¥¹¥¿¥Ã¥¯¥Þ¥·
 (¼ÂºÝ¤Ë¤Ï¤³¤Î¤è¤¦¤ÊÌ¿Îᥳ¡¼¥É¤Ï¸ºß¤·¤Ê¤¤)¤Ç¤¢¤ì¤Ð¡¢ $B$ ¤ÎÉôʬ¤Ï  ¥ó¤¬Ì¿Îá SM\_popCMO, SM\_popString, SM\_mathcap,
   SM\_executeStringByLocalParser ¤òÍøÍѲÄǽ¤Ç, ¤«¤Ä ¥ª¥Ö¥¸¥§¥¯¥È¤ò
   cmo\_int32, cmo\_string, cmo\_mathcap, cmo\_list ¤Î¤ß¤ËÀ©¸Â¤·¤¿¤¤¤È¤­¤Î
   mathcap ¤Ï
 \begin{quote}  \begin{quote}
         (CMO\_LIST, {\sl int32} $5$,  (CMO\_MATHCAP, (CMO\_LIST, 3, \\
                 {\sl cmo\_int32} $2$, {\sl cmo\_int32} $3$,  $\quad$ (CMO\_LIST, 4, (CMO\_INT32, $199911250$), (CMO\_STRING, 7, ``ox\_test''), \\
                 {\sl cmo\_int32} $5$, {\sl cmo\_int32} $7$,  $\qquad$ (CMO\_STRING, 9, ``199911250''), (CMO\_STRING, 4, ``i386'')) \\
                 {\sl cmo\_int32} $11$)  $\quad$ (CMO\_LIST, $5$, (CMO\_INT32, SM\_popCMO), \\
   $\qquad$ (CMO\_INT32, SM\_popString), (CMO\_INT32, SM\_mathcap), \\
   $\qquad$ (CMO\_INT32, SM\_executeStringByLocalParser)) \\
   $\quad$ (CMO\_LIST, $1$, (CMO\_LIST, $2$, (CMO\_INT32, OX\_DATA), \\
   $\qquad$ (CMO\_LIST, $4$, (CMO\_INT32, CMO\_INT32), \\
   $\qquad\quad$ (CMO\_INT32, CMO\_STRING), (CMO\_INT32, CMO\_MATHCAP), \\
   $\qquad\quad$ (CMO\_INT32, CMO\_LIST))))))
 \end{quote}  \end{quote}
 ¤È¤Ê¤ê¡¢  ¤Ë¤Ê¤ë.
 CMO ·Á¼°¤Î 32 ¥Ó¥Ã¥ÈÀ°¿ô¡¢Ê¸»úÎó¡¢ mathcap ¡¢¥ê¥¹¥È¹½Â¤¤Î¤ß¤¬  
 ¼õ¤±¼è¤ì¤ë¤È¤­¤Ë¤Ï¡¢ $C$ ¤ÎÉôʬ¤Ï  
 \begin{quote}  
   (CMO\_LIST, {\sl int32} $1$, \\  
   \ \   (CMO\_LIST, {\sl int32} $4$,  
                 {\sl cmo\_int32} $2$, {\sl cmo\_int32} $4$,  
                 {\sl cmo\_int32} $5$, {\sl cmo\_int32} $17$))  
 \end{quote}  
 ¤È¤Ê¤ë¡£  
 %CMO\_ZZ ¤¬¤Ê¤¤¤Î¤Ç¡¢¤³¤Î¥µ¡¼¥Ð¤Ï¿ÇÜĹÀ°¿ô¤¬Á÷¤é¤ì¤Æ¤³¤Ê¤¤¤³¤È¤ò  
 %´üÂÔ¤·¤Æ¤¤¤ë¡£  
   
 %{\Huge ¤Ã¤Æ¤Ê¤ó¤Ç¤Ç¤·¤ç¤¦¤«? ¥Ç¡¼¥¿¤ÎÏÀÍý¹½Â¤¤òÃΤé¤Ê¤¤¤È¼õ¤±¼è¤ì¤Ê¤¤¤È  
 %»×¤¦¤ó¤Ç¤¹¤¬$\ldots$}  
   
 ¤Ê¤ª¡¢¤³¤Î mathcap ¤Ç¤Ï¡¢¥Ç¡¼¥¿¤ÎÏÀÍý¹½Â¤¤¬Íý²ò¤Ç¤­¤ë¤«¤É¤¦¤«  
 ¤Þ¤Ç¤Ïʬ¤«¤é¤Ê¤¤¤Î¤ÇÃí°Õ¤¹¤ëɬÍפ¬¤¢¤ë¡£  
   
   
 \section{¥»¥­¥å¥ê¥Æ¥£Âкö}  \section{¥»¥­¥å¥ê¥Æ¥£Âкö}
   
 OpenXM µ¬Ìó¤Ï TCP/IP ¤òÍѤ¤¤ÆÄÌ¿®¤ò¹Ô¤¦¤³¤È¤ò¹Íθ¤·¤Æ¤¤¤ë¡£¥Í¥Ã¥È¥ï¡¼¥¯  OpenXM µ¬Ìó¤Ï TCP/IP ¤òÍѤ¤¤ÆÄÌ¿®¤ò¹Ô¤¦¤³¤È¤ò¹Íθ¤·¤Æ¤¤¤ë. ¥Í¥Ã¥È¥ï¡¼¥¯
 ¤Ë¤è¤Ã¤ÆÀܳ¤µ¤ì¤ë¸½Âå¤Î¿¤¯¤Î¥½¥Õ¥È¥¦¥§¥¢¤ÈƱÍÍ¡¢OpenXM µ¬Ìó¤â¤Þ¤¿ÄÌ¿®  ¤Ë¤è¤Ã¤ÆÀܳ¤µ¤ì¤ë¸½Âå¤Î¿¤¯¤Î¥½¥Õ¥È¥¦¥§¥¢¤ÈƱÍÍ, OpenXM µ¬Ìó¤â¤Þ¤¿ÄÌ¿®
 »þ¤Î¥»¥­¥å¥ê¥Æ¥£¤Ë¤Ä¤¤¤ÆÃí°Õ¤·¤Æ¤¤¤ë¡£°Ê²¼¡¢¤³¤Î¤³¤È¤Ë¤Ä¤¤¤ÆÀâÌÀ¤·¤è¤¦¡£  »þ¤Î¥»¥­¥å¥ê¥Æ¥£¤Ë¤Ä¤¤¤ÆÃí°Õ¤·¤Æ¤¤¤ë. °Ê²¼, ¤³¤Î¤³¤È¤Ë¤Ä¤¤¤ÆÀâÌÀ¤·¤è¤¦.
   
 OpenXM ¤Ç¤Ï¿¯Æþ¼Ô¤Ë¹¶·â¤Îµ¡²ñ¤ò¤Ç¤­¤ë¤À¤±Í¿¤¨¤Ê¤¤¤è¤¦¤Ë¤¹¤ë¤¿¤á¡¢  Âè°ì¤Ë OpenXM ¤Ç¤Ï¿¯Æþ¼Ô¤Ë¹¶·â¤Îµ¡²ñ¤ò¤Ç¤­¤ë¤À¤±Í¿¤¨¤Ê¤¤¤è¤¦¤Ë¤¹¤ë¤¿¤á,
 Àܳ¤¬É¬Íפˤʤä¿»þ¤Î¤ßÀܳ¤òÂԤĤ褦¤Ë¤·¡¢  ¥µ¡¼¥Ð¤ÏÀܳ¤¬É¬Íפˤʤä¿»þ¤Î¤ßµ¯Æ°¤·¤Æ¤¤¤ë.  ¤·¤«¤·, ¤³¤ì¤À¤±¤Ç¤ÏÀܳ
 ¾ï¤ËÀܳ¤Ë´ØÍ¿¤¹¤ë¤È¤¤¤Ã¤¿¤³¤È¤ÏÈò¤±¤Æ¤¤¤ë¡£  ¤ò¹Ô¤Ê¤¦°ì½Ö¤Î¤¹¤­¤òÁÀ¤ï¤ì¤ë²ÄǽÀ­¤â¤¢¤ë.  ¤½¤³¤ÇÀܳ¤ò¹Ô¤Ê¤¦»þ¤Ë, Àܳ
   ¤ò¹Ô¤Ê¤¦¥Ý¡¼¥ÈÈÖ¹æ¤òËè²óÊѤ¨¤Æ¤¤¤ë.  ¤³¤¦¤¹¤ë¤³¤È¤Ç, ÆÃÄê¤Î¥Ý¡¼¥ÈÈÖ¹æ¤ò
   ÁÀ¤Ã¤ÆÀܳ¤ò¹Ô¤Ê¤¦¼ê¸ý¤òËɤ°¤³¤È¤¬¤Ç¤­¤ë.
   
 ¤·¤«¤·¡¢¤³¤ì¤À¤±¤Ç¤Ï¿¯Æþ¼Ô¤¬Àܳ¤ò¹Ô¤Ê¤¦°ì½Ö¤Î¤¹¤­¤ò  ¤µ¤é¤Ë¤â¤¦°ìÃÊ°ÂÁ´À­¤ò¹â¤á¤ë¤¿¤á¤Ë, Àܳ»þ¤Ë°ì»þ¥Ñ¥¹¥ï¡¼¥É¤ò¥¯¥é¥¤¥¢¥ó¥È
 ÁÀ¤Ã¤Æ¤¯¤ë²ÄǽÀ­¤â¤¢¤ë¡£  ¤¬ºîÀ®¤·, ¤½¤Î¥Ñ¥¹¥ï¡¼¥É¤ò»È¤Ã¤Æǧ¾Ú¤ò¹Ô¤Ê¤¦.  ¤³¤Î¥Ñ¥¹¥ï¡¼¥É¤Ï°ìö»ÈÍÑ
 ¤½¤³¤ÇÀܳ¤ò¹Ô¤Ê¤¦»þ¤Ë¡¢  ¤µ¤ì¤ì¤Ð̵¸ú¤Ë¤Ê¤ë¤Î¤Ç, ¤â¤·²¾¤Ë¤Ê¤ó¤é¤«¤Î¼êÃʤǥѥ¹¥ï¡¼¥É¤¬±Ì¤ì¤¿¤È¤·¤Æ
 Àܳ¤òÂÔ¤Ä port ÈÖ¹æ¤ò¥é¥ó¥À¥à¤Ë·è¤á¤Æ¤¤¤ë¡£  ¤â°ÂÁ´¤Ç¤¢¤ë.
 ¤³¤¦¤¹¤ë¤³¤È¤Ç¡¢ÆÃÄê¤Î port ÈÖ¹æ¤òÁÀ¤Ã¤ÆÀܳ¤ò¹Ô¤Ê¤¦  
 ½Ö´Ö¤òÂԤļê¸ý¤ò´ö¤é¤«Ëɤ°¤³¤È¤¬¤Ç¤­¤ë¡£  
   
 ¤µ¤é¤Ë¤â¤¦°ìÃÊ°ÂÁ´À­¤ò¹â¤á¤ë¤¿¤á¤Ë¡¢  ¤Ê¤ª, ¥á¥Ã¥»¡¼¥¸¼«ÂΤˤÏÆä˰Ź沽¤Ê¤É¤Î½èÃÖ¤ò¹Ô¤Ã¤Æ¤¤¤Ê¤¤¤Î¤Ç, ¤½¤Î¤Þ¤Þ
 Àܳ»þ¤Ë 1 ²ó¤À¤±»ÈÍѲÄǽ¤Ê¥Ñ¥¹¥ï¡¼¥É¤òºîÀ®¤·¡¢  ¤Ç¤Ï¥Ñ¥±¥Ã¥ÈÅðÄ°¤Ê¤É¤ò¼õ¤±¤ë²ÄǽÀ­¤¬¤¢¤ë.  ¸½ºß¤Î¼ÂÁõ¤Ç¤Ï, ɬÍפʤé¤Ð
 ¤½¤Î¥Ñ¥¹¥ï¡¼¥É¤ò»È¤Ã¤Æǧ¾Ú¤ò¹Ô¤Ê¤¦¡£  ssh ¤òÍøÍѤ·¤ÆÂбþ¤·¤Æ¤¤¤ë.
 ¤³¤Î¥Ñ¥¹¥ï¡¼¥É¤Ï°ìö»ÈÍѤµ¤ì¤ì¤Ð̵¸ú¤Ë¤¹¤ë¤Î¤Ç¡¢  
 ¤â¤·²¾¤Ë¤Ê¤ó¤é¤«¤Î¼êÃʤǥѥ¹¥ï¡¼¥É¤¬±Ì¤ì¤¿¤È¤·¤Æ¤â°ÂÁ´¤Ç¤¢¤ë¡£  
   
 ¤Ê¤ª¡¢¾åµ­¤Î port ÈÖ¹æ¤È¥Ñ¥¹¥ï¡¼¥É¤Ï°ÂÁ´¤Ê¼êÃʤÇÁ÷¤é¤ì¤Æ  
 ¤¤¤ë¤È²¾Äꤷ¤Æ¤¤¤ë¡£  
 ¤Þ¤¿¡¢Æ±°ì¤Î¥³¥ó¥Ô¥å¡¼¥¿¾å¤Ë°­°Õ¤Î¤¢¤ë¥æ¡¼¥¶¤Ï¤¤¤Ê¤¤¤È²¾Äꤷ¤Æ¤¤¤ë  
 ¤³¤È¤ËÃí°Õ¤·¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤¡£  
 ¤Ê¤¼¤Ê¤é¡¢¸½ºß¤Î¼ÂÁõ¤Ç¤Ï¥µ¡¼¥Ð¡¢¤ª¤è¤Ó¥¯¥é¥¤¥¢¥ó¥È¤ÎÆ°ºî¤·¤Æ¤¤¤ë  
 ¥³¥ó¥Ô¥å¡¼¥¿¾å¤Ç¤Ï¤³¤Î port ÈÖ¹æ¤È¥Ñ¥¹¥ï¡¼¥É¤¬¤ï¤«¤Ã¤Æ¤·¤Þ¤¦¤¿¤á¤Ç¤¢¤ë¡£  
   
 ¤Ê¤ª¡¢Àܳ¤¬³ÎΩ¤·¤¿¸å¤Î¥á¥Ã¥»¡¼¥¸¤ÎÁ÷¼õ¿®¤Ë´Ø¤·¤Æ¤Ï¡¢  \section{OpenXM °Ê³°¤Î¥×¥í¥¸¥§¥¯¥È}
 Æä˰Ź沽¤Ê¤É¤Î½èÃÖ¤ò¹Ô¤Ã¤Æ¤¤¤ë¤ï¤±¤Ç¤Ï¤Ê¤¤¡£  
 ¤â¤·É¬Íפ¬¤¢¤ì¤Ð¡¢ÄÌ¿®Ï©¤Î°Å¹æ²½¤ò¹Ô¤Ê¤¦µ¡Ç½¤¬¤¢¤ë  
 ¥½¥Õ¥È¥¦¥§¥¢ ssh ¤ò»È¤¦¤³¤È¤ò¹Í¤¨¤Æ¤¤¤ë¡£  
   
   OpenXM °Ê³°¤Ë¤â¿ô¼°½èÍý¥·¥¹¥Æ¥à´Ö¤ÎÄÌ¿®¤òÌܻؤ·¤¿¥×¥í¥¸¥§¥¯¥È¤Ï¸ºß¤¹¤ë.
   ¤³¤³¤Ç¤Ï¾¤Î¥×¥í¥¸¥§¥¯¥È¤Ë¤Ä¤¤¤Æ¤â¿¨¤ì¤Æ¤ª¤³¤¦.
   
 \section{¾¤Î¥×¥í¥¸¥§¥¯¥È}  
   
 Â¾¤Î¥×¥í¥¸¥§¥¯¥È¤Ë¤Ä¤¤¤Æ¤â¿¨¤ì¤Æ¤ª¤³¤¦¡£  
   
 \begin{itemize}  \begin{itemize}
 \item OpenMath\\  \item ESPRIT OpenMath Project
 OpenMath ¥×¥í¥¸¥§¥¯¥È¤Ï¿ô³ØŪ¤Ê¥ª¥Ö¥¸¥§¥¯¥È¤ò¥³¥ó¥Ô¥å¡¼¥¿¾å¤Çɽ¸½¤¹¤ëÊý  
 Ë¡¤òµ¬Äꤷ¤Æ¤¤¤ë¡£³Æ¥½¥Õ¥È¥¦¥§¥¢´Ö¤Ç¥ª¥Ö¥¸¥§¥¯¥È¤ò¸ò´¹¤¹¤ëºÝ¤Î¥ª¥Ö¥¸¥§¥¯  
 ¥È¤ÎÊÑ´¹¼ê½ç¤Ë¤Ä¤Æ¤âÄê¤á¤é¤ì¤Æ¤¤¤ë¡£É½¸½ÊýË¡¤Ï´ö¤Ä¤«¤ÎÃʳ¬¤ÇÄê¤á¤é¤ì¤Æ  
 ¤¤¤Æ¡¢XML ɽ¸½¤ä¥Ð¥¤¥Ê¥êɽ¸½¤Ê¤É¤¬ÍÑ°Õ¤µ¤ì¤Æ¤¤¤ë¡£¾ÜºÙ¤Ï  
   
 http://www.openmath.org/omsoc/   A.M.Cohen  http://www.openmath.org/omsoc/
   
   ¿ô³ØŪÂоݤΠSGML Ūɽµ­¤Îɸ½à²½¤òÌܻؤ·¤¿Â絬ÌÏ¤Ê¥×¥í¥¸¥§¥¯¥È. °Û¤Ê¤ë¼ï
   Îà¤Î¿ô¼°½èÍý¥·¥¹¥Æ¥à¤Î´Ö¤Ç¾ðÊó¤ò¸ò´¹¤¹¤ë¤È¤­¤Ë, OpenMath ¤ÇÄêµÁ¤µ¤ì¤¿É½
   ¸½¤òÍøÍѤ¹¤ë¤³¤È¤¬¤Ç¤­¤ë.  ¼ÂºÝ¤Î¾ðÊó¸ò´¹¤Î¼ê³¤­¤Ë¤Ï¤¤¤í¤¤¤í¤Ê¤â¤Î¤¬¹Í
   ¤¨¤é¤ì¤ë¤¬, Î㤨¤Ð MCP ¤òÍѤ¤¤¿¼ÂÁõ¤¬¤¢¤ê, GAP ¤È Axiom ¤Î´Ö¤ÇÄÌ¿®¤¬¹Ô¤ï
   ¤ì¤Æ¤¤¤ë.  OpenXM ¤Ï OpenMath µ¬Ìó¤Î phrasedictionary ¤ÈƱ¤¸¥¢¥¤¥Ç¥¢¤òÍÑ
   ¤¤¤Æ¤¤¤ë.
   
 \item NetSolve  \item NetSolve
   
 http://www.cs.utk.edu/netsolve/  http://www.cs.utk.edu/netsolve/
   
   NetSolve ¤Ï¥¯¥é¥¤¥¢¥ó¥È¡¦¥µ¡¼¥Ð·¿¤Îʬ»¶¥·¥¹¥Æ¥à¤Ç¤¢¤ê, ñ¤Ê¤ë·×»»¥·¥¹¥Æ
   ¥à°Ê¾å¤Î¤â¤Î¤òÌܻؤ·¤Æ¤¤¤ë.  ¥¯¥é¥¤¥¢¥ó¥È¤ÏɬÍפ˱þ¤¸¤Æ, ¥µ¡¼¥Ð¤ò¸Æ¤Ó½Ð
   ¤·¤Æ·×»»¤ò¤µ¤»¤ë.  NetSolve ¤ÎÆÃħ¤Ï, ¥µ¡¼¥Ð¤Î¸Æ¤Ó½Ð¤·¤Ë Agent ¤È¤¤¤¦¥½
   ¥Õ¥È¥¦¥§¥¢¤ò²ðºß¤µ¤»¤ë¤³¤È¤Ç¤¢¤ë.  Agent ¤Ï¸Æ¤Ó½Ð¤·Àè¤Ê¤É¤ò·èÄꤹ¤ë¥Ç¡¼
   ¥¿¥Ù¡¼¥¹ÅªÌò³ä¤ò²Ì¤¿¤¹.  ¤Þ¤¿ Agent ¤Ë¤è¤Ã¤ÆÉé²Ùʬ»¶¤¬²Äǽ¤Ë¤Ê¤ë.  ¸½ºß
   ¤Î NetSolve ¤Ï RPC ¤ò´ðÁäˤ·¤Æ¼ÂÁõ¤µ¤ì¤Æ¤¤¤ë.
   
 \item MP  \item MP
   
 http://symbolicNet.mcs.kent.edu/SN/areas/protocols/mp.html  http://symbolicnet.mcs.kent.edu/SN/areas/protocols/mp.html
   
 \item MCP  ²Ê³Øµ»½Ñ·×»»¤ò¹Ô¤Ê¤¦¥½¥Õ¥È¥¦¥§¥¢´Ö¤Ç¿ô³ØŪ¤Ê¥Ç¡¼¥¿¤ò¸úΨŪ¤Ë¸ò´¹¤µ¤»¤ë¤³
   ¤È¤òÌÜŪ¤È¤·¤¿¥×¥í¥È¥³¥ë¤òºîÀ®¤·¤Æ¤¤¤ë. ÌÚ¹½Â¤¤òÍѤ¤¤Æ, ´Êñ¤«¤Ä½ÀÆð¤Ê¤â
   ¤Î¤òÌܻؤ·¤Æ¤ª¤ê, ¥Ç¡¼¥¿¤Îɽ¸½ÊýË¡¤ä¸ò´¹ÊýË¡¤Ë¤è¤é¤º¤Ë¥½¥Õ¥È¥¦¥§¥¢¤òºî¤ë
   ¤³¤È¤¬¤Ç¤­¤ë¤è¤¦¤Ë¤¹¤ë¤Î¤¬ÌÜɸ¤Ç¤¢¤ë.  ¸½ºß¤¹¤Ç¤Ë, C ¸À¸ì¤ÇÍøÍѲÄǽ¤Ê¥é
   ¥¤¥Ö¥é¥ê¤¬Ä󶡤µ¤ì¤Æ¤¤¤ë.
   
 http://horse.mcs.kent.edu/~pwang/  \item MCP (Mathematical Computation Protocol)
   
   http://horse.mcs.kent.edu/\~{}pwang/
   
   ¿ô³ØŪ¤Ê·×»»¤ò¹Ô¤Ê¤¦¤¿¤á¤Î HTTP ¤Ë»÷¤¿¥×¥í¥È¥³¥ë.  ¥¯¥é¥¤¥¢¥ó¥È¡¦¥µ¡¼
   ¥Ð¥â¥Ç¥ë¤òºÎÍѤ·¤Æ¤ª¤ê, ¥Ô¥¢¥Ä¡¼¥Ô¥¢¤Î¥¹¥È¥ê¡¼¥à¥³¥Í¥¯¥·¥ç¥ó¤ò¹Ô¤Ê¤¦.
   ¿ô³ØŪ¤Ê¥ª¥Ö¥¸¥§¥¯¥È¤ò MP ¤ä MathML ¤ÇÄê¤á¤é¤ì¤¿ÊýË¡¤Çɽ¸½¤¹¤ë¤³¤È¤¬¹Í¤¨
   ¤é¤ì¤Æ¤¤¤ë.  ¤¹¤Ç¤Ë OpenMath ¤òÍѤ¤¤¿¼ÂÁõ¤¬Â¸ºß¤¹¤ë.
   ¤³¤Î¾ì¹ç MCP ¤Ë¤è¤Ã¤ÆÁ÷¿®¤µ¤ì¤ë¥Ç¡¼¥¿¤Ï, ËÜʸ¤Ë OpenMath ·Á¼°¤Ç¿ô¼°¤òµ­
   ½Ò¤·¤¿¥Æ¥­¥¹¥È¤Ç¤¢¤ë.
   
 \end{itemize}  \end{itemize}
   
   
 \section{¸½ºßÄ󶡤µ¤ì¤Æ¤¤¤ë¥½¥Õ¥È¥¦¥§¥¢}  \section{¸½ºßÄ󶡤µ¤ì¤Æ¤¤¤ë¥½¥Õ¥È¥¦¥§¥¢}
   
 ¸½ºß OpenXM µ¬Ìó¤ËÂбþ¤·¤Æ¤¤¤ë¥¯¥é¥¤¥¢¥ó¥È¤Ë¤Ïasir, sm1, Mathematica ¤¬  ¸½ºß OpenXM µ¬Ìó¤ËÂбþ¤·¤Æ¤¤¤ë¥¯¥é¥¤¥¢¥ó¥È¤Ë¤Ïasir, sm1, Mathematica ¤¬
 ¤¢¤ë¡£¤³¤ì¤é¤Î¥¯¥é¥¤¥¢¥ó¥È¤«¤é OpenXM µ¬Ìó¤ËÂбþ¤·¤¿¥µ¡¼¥Ð¤ò¸Æ¤Ó½Ð¤¹¤³¤È  ¤¢¤ë.  ¤³¤ì¤é¤Î¥¯¥é¥¤¥¢¥ó¥È¤«¤é OpenXM µ¬Ìó¤ËÂбþ¤·¤¿¥µ¡¼¥Ð¤ò¸Æ¤Ó½Ð¤¹¤³
 ¤¬¤Ç¤­¤ë¡£¸½ºß OpenXM µ¬Ìó¤ËÂбþ¤·¤Æ¤¤¤ë¥µ¡¼¥Ð¥½¥Õ¥È¥¦¥§¥¢¤Ë¤Ï¡¢asir,  ¤È¤¬¤Ç¤­¤ë.  ¤Þ¤¿ OpenXM µ¬Ìó¤ËÂбþ¤·¤Æ¤¤¤ë¥µ¡¼¥Ð¤Ë¤Ï, asir, sm1,
 sm1, gnuplot, Mathematica ¤Ê¤É¤¬¤¢¤ê¡¢¤½¤ì¤¾¤ì ox\_asir, ox\_sm1,  Mathematica, gnuplot, PHC pack ¤Ê¤É¤¬¤¢¤ê, ¤½¤ì¤¾¤ì ox\_asir, ox\_sm1,
 ox\_sm1\_gnuplot, ox\_math ¤È¤¤¤¦Ì¾Á°¤ÇÄ󶡤µ¤ì¤Æ¤¤¤ë¡£¤Þ¤¿¡¢ OpenMath  ox\_math, ox\_sm1\_gnuplot, ox\_sm1\_phc ¤È¤¤¤¦Ì¾Á°¤ÇÄ󶡤µ¤ì¤Æ¤¤¤ë.
 µ¬Ìó¤Î XML ɽ¸½¤Çɽ¸½¤µ¤ì¤¿¥ª¥Ö¥¸¥§¥¯¥È¤È CMO ·Á¼°¤Î¥ª¥Ö¥¸¥§¥¯¥È¤òÊÑ´¹¤¹  ¤µ¤é¤Ë OpenMath µ¬Ìó¤Î XML ɽ¸½¤Çɽ¸½¤µ¤ì¤¿¥ª¥Ö¥¸¥§¥¯¥È¤È CMO ·Á¼°¤Î¥ª¥Ö
 ¤ë¥½¥Õ¥È¥¦¥§¥¢¤¬ JAVA ¤Ë¤è¤Ã¤Æ¼ÂÁõ¤µ¤ì¤Æ¤ª¤ê¡¢OMproxy ¤È¤¤¤¦Ì¾Á°¤ÇÄ󶡤µ  ¥¸¥§¥¯¥È¤òÁê¸ßÊÑ´¹¤¹¤ë¥½¥Õ¥È¥¦¥§¥¢¤¬ JAVA ¤Ë¤è¤Ã¤Æ¼ÂÁõ¤µ¤ì¤Æ¤ª¤ê,
 ¤ì¤Æ¤¤¤ë¡£  OMproxy ¤È¤¤¤¦Ì¾Á°¤ÇÄ󶡤µ¤ì¤Æ¤¤¤ë.
   
 \begin{thebibliography}{99}  \begin{thebibliography}{99}
 \bibitem{Ohara-Takayama-Noro-1999}  \bibitem{Ohara-Takayama-Noro-1999}
 ¾®¸¶¸ùǤ, ¹â»³¿®µ£, ÌîϤÀµ¹Ô:  ¾®¸¶¸ùǤ, ¹â»³¿®µ£, ÌîϤÀµ¹Ô:
 {Open asir ÆþÌç}, 1999, ¿ô¼°½èÍý, Vol 7, No 2, 2--17. (ISBN4-87243-086-7, SEG ½ÐÈÇ, Tokyo).  {Open asir ÆþÌç}, 1999, ¿ô¼°½èÍý,
   Vol 7, No 2, 2--17. (ISBN4-87243-086-7, SEG ½ÐÈÇ, Tokyo).
   
 \bibitem{OpenXM-1999}  \bibitem{OpenXM-1999}
 ÌîϤÀµ¹Ô, ¹â»³¿®µ£:  ÌîϤÀµ¹Ô, ¹â»³¿®µ£:
 {Open XM ¤ÎÀ߷פȼÂÁõ --- Open message eXchange protocol for Mathematics},  {Open XM ¤ÎÀ߷פȼÂÁõ
   --- Open message eXchange protocol for Mathematics},
 1999/11/22  1999/11/22
 \end{thebibliography}  \end{thebibliography}
   

Legend:
Removed from v.1.80  
changed lines
  Added in v.1.96

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>