=================================================================== RCS file: /home/cvs/OpenXM/doc/Attic/genkou19991125.tex,v retrieving revision 1.93 retrieving revision 1.94 diff -u -p -r1.93 -r1.94 --- OpenXM/doc/Attic/genkou19991125.tex 1999/12/25 17:56:56 1.93 +++ OpenXM/doc/Attic/genkou19991125.tex 1999/12/26 03:55:35 1.94 @@ -1,10 +1,10 @@ \documentclass{jarticle} -%% $OpenXM: OpenXM/doc/genkou19991125.tex,v 1.92 1999/12/25 17:05:28 tam Exp $ +%% $OpenXM: OpenXM/doc/genkou19991125.tex,v 1.93 1999/12/25 17:56:56 tam Exp $ \usepackage{jssac} -\title{OpenXM ¤Î¸½¾õ¤Ë¤Ä¤¤¤Æ} +\title{OpenXM ¥×¥í¥¸¥§¥¯¥È¤Î¸½¾õ¤Ë¤Ä¤¤¤Æ} \author{±ü ë ¡¡ ¹Ô ±û\affil{¿À¸ÍÂç³ØÂç³Ø±¡¼«Á³²Ê³Ø¸¦µæ²Ê} \mail{okutani@math.sci.kobe-u.ac.jp} \and ¾® ¸¶ ¡¡ ¸ù Ǥ\affil{¶âÂôÂç³ØÍý³ØÉô} @@ -56,20 +56,20 @@ OpenXM µ¬Ìó¤Ç¤ÏÄÌ¿®¤ÎÊýË¡¤Ë´ö¤é¤«¤Î¼«Í³ÅÙ¤¬¤¢¤ë¤¬, ¸½º OpenXM µ¬Ìó¤Çµ¬Äꤵ¤ì¤Æ¤¤¤ë¥á¥Ã¥»¡¼¥¸¤Ï¥Ð¥¤¥È¥¹¥È¥ê¡¼¥à¤È¤Ê¤Ã¤Æ¤ª¤ê, ¼¡ ¤Î¤è¤¦¤Ê¹½Â¤¤Ë¤Ê¤Ã¤Æ¤¤¤ë. - +\begin{center} \begin{tabular}{|c|c|} \hline ¥Ø¥Ã¥À & \hspace{10mm} ¥Ü¥Ç¥£ \hspace{10mm} \\ \hline \end{tabular} - +\end{center} ¥Ø¥Ã¥À¤ÎŤµ¤Ï 8 ¥Ð¥¤¥È¤Ç¤¢¤ë¤ÈÄê¤á¤é¤ì¤Æ¤¤¤ë. ¥Ü¥Ç¥£¤ÎŤµ¤Ï¥á¥Ã¥»¡¼¥¸ ¤´¤È¤Ë°Û¤Ê¤Ã¤Æ¤¤¤ë¤¬, Ťµ¤Ï $0$ ¤Ç¤â¤è¤¤. ¥Ø¥Ã¥À¤Ï¼¡¤ÎÆó¤Ä¤Î¾ðÊó¤ò»ý¤Ã¤Æ¤¤¤ë. \begin{enumerate} \item -Á°È¾¤Î 4 ¥Ð¥¤¥È. ¥á¥Ã¥»¡¼¥¸¤Î¼ïÎà¤òɽ¤ï¤¹¼±Ê̻ҤǤ¢¤ê, ¥¿¥°¤È¸Æ¤Ð¤ì¤ë. +Á°È¾¤Î 4 ¥Ð¥¤¥È. ¥á¥Ã¥»¡¼¥¸¤Î¼ïÎà¤òɽ¤¹¼±Ê̻ҤǤ¢¤ê, ¥¿¥°¤È¸Æ¤Ð¤ì¤ë. \item ¸åȾ¤Î 4 ¥Ð¥¤¥È. ¥á¥Ã¥»¡¼¥¸¤Ë¤Ä¤±¤é¤ì¤¿Ä̤·ÈÖ¹æ¤Ç¤¢¤ë. \end{enumerate} @@ -210,11 +210,13 @@ Mathematical Object format)¤òÄêµÁ¤·¤Æ¤¤¤ë. ¤³¤Î CMO ·Á ¤Æ¤¤¤ë. CMO ·Á¼°¤Ë¤ª¤±¤ë¥Ç¡¼¥¿¹½Â¤¤Ï¼¡¤Î¤è¤¦¤Ê¹½Â¤¤ò¤â¤Ä. - -\begin{tabular}{|c|c|} \hline -¥Ø¥Ã¥À & \hspace{10mm} ¥Ü¥Ç¥£ \hspace{10mm} \\ \hline +\begin{center} +\begin{tabular}{|c|c|} +\hline +¥Ø¥Ã¥À & \hspace{10mm} ¥Ü¥Ç¥£ \hspace{10mm} \\ +\hline \end{tabular} - +\end{center} ¥Ø¥Ã¥À¤Ï4¥Ð¥¤¥È¤Ç¤¢¤ë. ¥Ü¥Ç¥£¤ÎŤµ¤Ï¤½¤ì¤¾¤ì¤Î¥Ç¡¼¥¿¤Ë¤è¤Ã¤Æ°Û¤Ê¤ë¤¬, 0¤Ç¤â¤è¤¤. @@ -226,70 +228,63 @@ CMO ¤Ç¤Ï, ¥¿¥°¤Ë¤è¤Ã¤Æ¥Ü¥Ç¥£¤ÎÏÀÍýŪ¹½Â¤¤¬·èÄꤹ¤ë. ¤¹ ÄêµÁ¤µ¤ì¤Æ¤¤¤ë. \begin{verbatim} -#define CMO_ERROR2 0x7f000002 -#define CMO_NULL 1 -#define CMO_INT32 2 -#define CMO_DATUM 3 -#define CMO_STRING 4 -#define CMO_MATHCAP 5 - -#define CMO_START_SIGNATURE 0x7fabcd03 -#define CMO_ARRAY 16 -#define CMO_LIST 17 -#define CMO_ATOM 18 -#define CMO_MONOMIAL32 19 -#define CMO_ZZ 20 -#define CMO_QQ 21 -#define CMO_ZERO 22 -#define CMO_DMS_GENERIC 24 -#define CMO_DMS_OF_N_VARIABLES 25 -#define CMO_RING_BY_NAME 26 -#define CMO_RECURSIVE_POLYNOMIAL 27 -#define CMO_LIST_R 28 - -#define CMO_INT32COEFF 30 -#define CMO_DISTRIBUTED_POLYNOMIAL 31 -#define CMO_POLYNOMIAL_IN_ONE_VARIABLE 33 -#define CMO_RATIONAL 34 - +#define CMO_ERROR2 0x7f000002 +#define CMO_NULL 1 +#define CMO_INT32 2 +#define CMO_DATUM 3 +#define CMO_STRING 4 +#define CMO_MATHCAP 5 +#define CMO_ARRAY 16 +#define CMO_LIST 17 +#define CMO_ATOM 18 +#define CMO_MONOMIAL32 19 +#define CMO_ZZ 20 +#define CMO_QQ 21 +#define CMO_ZERO 22 +#define CMO_DMS_GENERIC 24 +#define CMO_DMS_OF_N_VARIABLES 25 +#define CMO_RING_BY_NAME 26 +#define CMO_RECURSIVE_POLYNOMIAL 27 +#define CMO_LIST_R 28 +#define CMO_INT32COEFF 30 +#define CMO_DISTRIBUTED_POLYNOMIAL 31 +#define CMO_POLYNOMIAL_IN_ONE_VARIABLE 33 +#define CMO_RATIONAL 34 #define CMO_64BIT_MACHINE_DOUBLE 40 #define CMO_ARRAY_OF_64BIT_MACHINE_DOUBLE 41 #define CMO_128BIT_MACHINE_DOUBLE 42 #define CMO_ARRAY_OF_128BIT_MACHINE_DOUBLE 43 - -#define CMO_BIGFLOAT 50 -#define CMO_IEEE_DOUBLE_FLOAT 51 - -#define CMO_INDETERMINATE 60 -#define CMO_TREE 61 -#define CMO_LAMBDA 62 +#define CMO_BIGFLOAT 50 +#define CMO_IEEE_DOUBLE_FLOAT 51 +#define CMO_INDETERMINATE 60 +#define CMO_TREE 61 +#define CMO_LAMBDA 62 \end{verbatim} ¤³¤ÎÃæ¤Ç CMO\_ERROR2, CMO\_NULL, CMO\_INT32, CMO\_DATUM, CMO\_STRING, CMO\_MATHCAP, CMO\_LIST ¤Ç¼±Ê̤µ¤ì¤ë¥ª¥Ö¥¸¥§¥¯¥È¤ÏºÇ¤â´ðËÜŪ¤Ê¥ª¥Ö¥¸¥§ ¥¯¥È¤Ç¤¢¤Ã¤Æ, ¤¹¤Ù¤Æ¤Î OpenXM Âбþ¥·¥¹¥Æ¥à¤Ë¼ÂÁõ¤µ¤ì¤Æ¤¤¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤. -¤³¤ì¤é¤Ë¤Ä¤¤¤Æ¤Î²òÀâ¤ò¹Ô¤¦Á°¤Ëµ­Ë¡¤Ë¤Ä¤¤¤Æ, ¾¯¤·ÀâÌÀ¤·¤Æ¤ª¤¯. -¤³¤ÎÏÀʸ¤Ç¤Ï, Âçʸ»ú¤Ç CMO\_INT32 ¤È½ñ¤¤¤¿¾ì¹ç¤Ë¤Ï, ¾åµ­¤ÇÄêµÁ¤·¤¿¼±ÊÌ»Ò -¤òɽ¤ï¤¹. ¤Þ¤¿ CMO\_INT32 ¤Ç¼±Ê̤µ¤ì¤ë¥ª¥Ö¥¸¥§¥¯¥È¤Î¥¯¥é¥¹(¤¢¤ë¤¤¤Ï¥Ç¡¼ -¥¿¹½Â¤)¤ò cmo\_int32 ¤È¾®Ê¸»ú¤Çɽ¤ï¤¹¤³¤È¤Ë¤¹¤ë. +¤³¤ì¤é¤Ë¤Ä¤¤¤Æ¤Î²òÀâ¤ò¹Ô¤¦Á°¤Ëµ­Ë¡¤Ë¤Ä¤¤¤Æ, ¾¯¤·ÀâÌÀ¤·¤Æ¤ª¤¯. ¤³¤ÎÏÀʸ +¤Ç¤Ï, Âçʸ»ú¤Ç CMO\_INT32 ¤È½ñ¤¤¤¿¾ì¹ç¤Ë¤Ï, ¾åµ­¤ÇÄêµÁ¤·¤¿¼±Ê̻Ҥòɽ¤¹. +¤Þ¤¿ CMO\_INT32 ¤Ç¼±Ê̤µ¤ì¤ë¥ª¥Ö¥¸¥§¥¯¥È¤Î¥¯¥é¥¹(¤¢¤ë¤¤¤Ï¥Ç¡¼¥¿¹½Â¤) ¤ò +cmo\_int32 ¤È¾®Ê¸»ú¤Çɽ¤¹¤³¤È¤Ë¤¹¤ë. ¤µ¤Æ cmo ¤òɽ¸½¤¹¤ë¤¿¤á¤Î°ì¤Ä¤Îµ­Ë¡¤òƳÆþ¤¹¤ë. ¤³¤Îµ­Ë¡¤Ï CMO expression ¤È¸Æ¤Ð¤ì¤Æ¤¤¤ë. ¤½¤ÎÀµ³Î¤Ê·Á¼°ÅªÄêµÁ¤Ï \cite{OpenXM-1999} ¤ò»²¾È¤¹¤ë¤³¤È. -¤Þ¤º CMO expssion ¤Ï Lisp É÷ɽ¸½¤Î°ì¼ï¤Ç, cmo ¤ò³ç¸Ì¤Ç°Ï¤ó¤À¥ê¥¹¥È¤È¤· -¤Æɽ¸½¤¹¤ë. ¤½¤ì¤¾¤ì¤ÎÍ×ÁǤϥ«¥ó¥Þ¤Ç¶èÀÚ¤ë. -Î㤨¤Ð, +CMO expssion ¤Ï Lisp É÷ɽ¸½¤Î°ì¼ï¤Ç, cmo ¤ò³ç¸Ì¤Ç°Ï¤ó¤À¥ê¥¹¥È¤È¤·¤Æɽ¸½ +¤¹¤ë. ¤½¤ì¤¾¤ì¤ÎÍ×ÁǤϥ«¥ó¥Þ¤Ç¶èÀÚ¤ë. Î㤨¤Ð, \begin{quote} (17, {\sl int32}, (CMO\_NULL), (2, {\sl int32} $n$)) \end{quote} ¤Ï CMO expression ¤Ç¤¢¤ë. ¤³¤³¤Ç, ¾®Ê¸»ú¤Î¼ÐÂΤÇɽ¤µ¤ì¤¿``{\sl int32}'' -¤Ï 4¥Ð¥¤¥È¤ÎǤ°Õ¤Î¥Ç¡¼¥¿¤òɽ¤¹µ­¹æ¤Ç¤¢¤ê, ``{\sl int32} $n$'' ¤ÏƱ¤¸¤¯ 4 -¥Ð¥¤¥È¤Î¥Ç¡¼¥¿¤Ç¤¢¤ë¤¬°Ê²¼¤ÎÀâÌÀ¤Ç $n$ ¤Èɽ¤¹¤³¤È¤ò¼¨¤¹. ¤Þ¤¿¿ô»ú 17, 2 -¤Ê¤É¤Ï 4¥Ð¥¤¥È¤Î¥Ç¡¼¥¿¤ÇÀ°¿ôÃͤȤ·¤Æ¤ß¤¿¤È¤­¤ÎÃͤò°ÕÌ£¤¹¤ë. CMO\_NULL ¤Ï -¼±ÊÌ»Ò(¤¹¤Ê¤ï¤Á¿ô»ú 1 ¤ÈÅù²Á)¤Ç¤¢¤ë. ¤³¤Îµ­Ë¡¤«¤é¾åµ­¤Î¥Ç¡¼¥¿¤Ï 20 ¥Ð¥¤ -¥È¤ÎÂ礭¤µ¤Î¥Ç¡¼¥¿¤Ç¤¢¤ë¤³¤È¤¬Ê¬¤«¤ë. ¤Ê¤ª, CMO expression ¤Ïñ¤Ê¤ëɽµ­ -Ë¡¤Ç¤¢¤ë¤³¤È¤ËÆäËÃí°Õ¤·¤Æ¤Û¤·¤¤. +¤Ï 4 ¥Ð¥¤¥È¤ÎǤ°Õ¤Î¥Ç¡¼¥¿¤òɽ¤¹µ­¹æ¤Ç¤¢¤ê, ``{\sl int32} $n$'' ¤ÏƱ¤¸¤¯ +4 ¥Ð¥¤¥È¤Î¥Ç¡¼¥¿¤Ç¤¢¤ë¤¬°Ê²¼¤ÎÀâÌÀ¤Ç $n$ ¤Èɽ¤¹¤³¤È¤ò¼¨¤¹. ¤Þ¤¿¿ô»ú 17, +2 ¤Ê¤É¤Ï 4 ¥Ð¥¤¥È¤Î¥Ç¡¼¥¿¤ÇÀ°¿ôÃͤȤ·¤Æ¤ß¤¿¤È¤­¤ÎÃͤò°ÕÌ£¤¹¤ë. CMO\_NULL +¤Ï¼±ÊÌ»Ò(¤¹¤Ê¤ï¤Á¿ô»ú 1 ¤ÈÅù²Á)¤Ç¤¢¤ë. ¤³¤Îµ­Ë¡¤«¤é¾åµ­¤Î¥Ç¡¼¥¿¤Ï 20 ¥Ð +¥¤¥È¤ÎÂ礭¤µ¤Î¥Ç¡¼¥¿¤Ç¤¢¤ë¤³¤È¤¬Ê¬¤«¤ë. ¤Ê¤ª, CMO expression ¤Ïñ¤Ê¤ëɽ +µ­Ë¡¤Ç¤¢¤ë¤³¤È¤ËÆäËÃí°Õ¤·¤Æ¤Û¤·¤¤. ¤µ¤Æ, ¤³¤Îµ­Ë¡¤Î¤â¤È¤Ç cmo\_int32 ¤ò¼¡¤Î¥Ç¡¼¥¿¹½Â¤¤Ç¤¢¤ë¤ÈÄêµÁ¤¹¤ë. \begin{quote} @@ -316,7 +311,7 @@ OpenXM µ¬Ìó¤Ç¤Ï, ÄÌ¿®»þ¤ËÍѤ¤¤é¤ì¤ë¥á¥Ã¥»¡¼¥¸¤Î¼ïÎà¤ò³ ¤Ï mathcap ¤È¸Æ¤Ð¤ì¤ë¥Ç¡¼¥¿¹½Â¤¤Ë¤è¤Ã¤Æ¹Ô¤ï¤ì¤ë. ¤³¤ÎÀá¤Ç¤Ï mathcap ¤Î¥Ç¡¼ ¥¿¹½Â¤¤È, ¶ñÂÎŪ¤Ê¥á¥Ã¥»¡¼¥¸¤ÎÀ©¸Â¤Î¼ê³¤­¤Ë¤Ä¤¤¤ÆÀâÌÀ¤¹¤ë. -¤Ç¤Ï, ¼ê³¤­¤Ë¤Ä¤¤¤ÆÀâÌÀ¤·¤è¤¦. +¤Þ¤º, ¼ê³¤­¤Ë¤Ä¤¤¤ÆÀâÌÀ¤·¤è¤¦. Âè°ì¤Ë¥µ¡¼¥Ð¤Îµ¡Ç½¤òÀ©¸Â¤¹¤ë¤Ë¤Ï¼¡¤Î¤è¤¦¤Ë¤¹¤ë. ¥¯¥é¥¤¥¢¥ó¥È¤¬ mathcap ¥ª¥Ö¥¸¥§¥¯¥È¤ò¥µ¡¼¥Ð¤ØÁ÷¤ë¤È, ¥µ¡¼¥Ð¤Ï¼õ¤±¼è¤Ã¤¿mathcap ¤ò¥¹¥¿¥Ã¥¯¤ËÀѤà. @@ -347,66 +342,60 @@ cmo\_mathcap := (CMO\_MATHCAP, {\sl cmo\_list}) Âè°ìÍ×ÁÇ $a$ ¤Ï¤Þ¤¿ cmo\_list ¤Ç¤¢¤ê, ¥ê¥¹¥ÈĹ¤Ï 4 °Ê¾å, $a_1$ ¤Ï cmo\_int32 ¤Ç¥Ð¡¼¥¸¥ç¥ó¤òɽ¤¹. $a_2$, $a_3$, $a_4$ ¤Ï cmo\_string ¤Ç¤¢¤ê, -¤½¤ì¤¾¤ì¥·¥¹¥Æ¥à¤Î̾Á°, ¥Ð¡¼¥¸¥ç¥ó, HOSTTYPE ¤òɽ¤¹¤³¤È¤Ë¤Ê¤Ã¤Æ¤¤¤ë. +¤½¤ì¤¾¤ì¿ô³Ø¥·¥¹¥Æ¥à¤Î̾Á°, ¥Ð¡¼¥¸¥ç¥ó, HOSTTYPE ¤òɽ¤¹¤³¤È¤Ë¤Ê¤Ã¤Æ¤¤¤ë. \begin{quote} (CMO\_LIST, {\sl int32}, {\sl cmo\_int32} $a_1$, {\sl cmo\_string} $a_2$, {\sl cmo\_string} $a_3$, {\sl cmo\_string} $a_4$, $\ldots$) \end{quote} -ÂèÆóÍ×ÁÇ $b$ ¤ÎÉôʬ¤Ï¼¡¤Î¤è¤¦¤Ê¥ê¥¹¥È¹½Â¤¤ò¤·¤Æ¤¤¤ë. -¤³¤Î $b_1$, $b_2$, $\ldots$, $b_n$ ¤Ï¤¹¤Ù¤Æ cmo\_int32 ¤Ç¤¢¤ë. -\ref{sec:oxsm} Àá¤ÇÀâÌÀ¤·¤¿¤¬, -¥¹¥¿¥Ã¥¯¥Þ¥·¥ó¤Ø¤ÎÌ¿Îá¤Ï¤¹¤Ù¤Æ {\sl int32} ¤Çɽ¤µ¤ì¤Æ¤¤¤¿¤³¤È¤ËÃí°Õ¤·¤è -¤¦. ³Æ $b_i$ ¤ÏÍøÍѲÄǽ¤ÊÌ¿Îá¤ò¥Ü¥Ç¥£¤È¤·¤¿ cmo\_int32 ¤È¤Ê¤Ã¤Æ¤¤¤ë. +ÂèÆóÍ×ÁÇ $b$ ¤â cmo\_list ¤Ç¤¢¤ê, OpenXM ¥¹¥¿¥Ã¥¯¥Þ¥·¥ó¤òÀ©¸æ¤¹¤ë¤¿¤á¤Ë +ÍѤ¤¤é¤ì¤ë. ³Æ $b_i$ ¤Ï cmo\_int32 ¤Ç¤¢¤ê, ¥Ü¥Ç¥£¤Ï¥¹¥¿¥Ã¥¯¥Þ¥·¥ó¤ÎÌ¿Îá +¥³¡¼¥É¤Ç¤¢¤ë. \ref{sec:oxsm} Àá¤ÇÀâÌÀ¤·¤¿¤¬, ¥¹¥¿¥Ã¥¯¥Þ¥·¥ó¤Ø¤ÎÌ¿Îá¤Ï¤¹ +¤Ù¤Æ {\sl int32} ¤Çɽ¤µ¤ì¤Æ¤¤¤¿¤³¤È¤ËÃí°Õ¤·¤è¤¦. \begin{quote} (CMO\_LIST, {\sl int32} $n$, - {\sl cmo\_int32} $b_1$, {\sl cmo\_int32} $b_2$, - $\ldots$, {\sl cmo\_int32} $b_n$) +{\sl cmo\_int32} $b_1$, $\ldots$, {\sl cmo\_int32} $b_n$) \end{quote} -Âè»°Í×ÁÇ $c$ ¤Ï°Ê²¼¤Î¤è¤¦¤Ê¥ê¥¹¥È¹½Â¤¤ò¤·¤Æ¤¤¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤. +Âè»°Í×ÁÇ $c$ ¤Ï°Ê²¼¤Î¤è¤¦¤Ê cmo\_list ¤Ç¤¢¤ê, ¥ª¥Ö¥¸¥§¥¯¥È¤ÎÁ÷¼õ¿®¤òÀ©¸æ +¤¹¤ë¤¿¤á¤ËÍѤ¤¤é¤ì¤ë. Á÷¼õ¿®¤ÎÀ©¸æ¤Ï¥á¥Ã¥»¡¼¥¸¤Î¼ïÎऴ¤È¤Ë¹Ô¤ï¤ì¤ë. \begin{quote} -(CMO\_LIST, {\sl int32} $m$, - {\sl cmo\_list} $list_1$, {\sl cmo\_list} $list_2$, - $\ldots$, {\sl cmo\_list} $list_m$) +(CMO\_LIST, {\sl int32} $m$, {\sl cmo\_list} $\ell_1$, $\ldots$, +{\sl cmo\_list} $\ell_m$) \end{quote} +³Æ $\ell_i$ ¤¬À©¸æ¤Î¤¿¤á¤Î¾ðÊó¤òɽ¤¹. ¤É¤Î $\ell_i$ ¤â°ì¤Ä°Ê¾å¤ÎÍ×ÁǤò +»ý¤Ã¤Æ¤ª¤ê, Âè°ìÍ×ÁǤÏɬ¤º cmo\_int32 ¤È¤Ê¤Ã¤Æ¤¤¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤. ¤³¤ì +¤ÏÀ©¸æ¤¹¤Ù¤­¥á¥Ã¥»¡¼¥¸¤Î¼±Ê̻ҤòÆþ¤ì¤ë¤¿¤á¤Ç¤¢¤ë. -¤É¤Î $list_i$ ¤â 1 ¤Ä°Ê¾å¤ÎÍ×ÁǤò»ý¤Ã¤Æ¤ª¤ê, -1 ÈÖÌܤÎÍ×ÁǤÏɬ¤º cmo\_int32 ¤È¤Ê¤Ã¤Æ¤¤¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤. -¤³¤ì¤Ï¼õ¤±¼è¤ì¤ë¥ª¥Ö¥¸¥§¥¯¥È¤Î¥á¥Ã¥»¡¼¥¸¤Î¼±Ê̻Ҥò -Æþ¤ì¤ë¤¿¤á¤Ç¤¢¤ë. -¤³¤³¤Ç¤Ï, OX\_DATA ¤Î¾ì¹ç¤Ë¤Ä¤¤¤Æ¤Î¤ßÀâÌÀ¤¹¤ë. - -1 ÈÖÌܤÎÍ×ÁǤ¬ OX\_DATA ¤Î¾ì¹ç, -¥ê¥¹¥È $list_i$ ¤Ï°Ê²¼¤Î¤è¤¦¤Ê¹½Â¤¤È¤Ê¤Ã¤Æ¤¤¤ë. -³Æ $c_{ij}$ ¤Ï cmo\_int32 ¤Ç¤¢¤ê, -¼õ¤±¼è¤ë¤³¤È¤¬²Äǽ¤Ê CMO ·Á¼°¤Î¥¿¥°¤È¤Ê¤ë. +³Æ $\ell_i$ ¤Î¹½Â¤¤Ï¥á¥Ã¥»¡¼¥¸¤Î¼ïÎà¤Ë¤è¤Ã¤Æ°Û¤Ê¤ë. ¤³¤³¤Ç¤Ï, OX\_DATA +¤Î¾ì¹ç¤Ë¤Ä¤¤¤Æ¤Î¤ßÀâÌÀ¤¹¤ë. Âè°ìÍ×ÁǤ¬ OX\_DATA ¤Î¾ì¹ç, ¥ê¥¹¥È $\ell_i$ +¤Ï°Ê²¼¤Î¤è¤¦¤Ê¹½Â¤¤È¤Ê¤Ã¤Æ¤¤¤ë. ³Æ $c_i$ ¤Ï cmo\_int32 ¤Ç¤¢¤ê, ¤½¤Î¥Ü¥Ç¥£ +¤Ï CMO ¤Î¼±Ê̻ҤǤ¢¤ë. $c_i$ ¤Ç»Ø¼¨¤µ¤ì¤¿ CMO ¤Î¤ß¤¬Á÷¼õ¿®¤¹¤ë¤³¤È¤òµö +¤µ¤ì¤ë. \begin{quote} (CMO\_LIST, 2, (CMO\_INT32, OX\_DATA), \\ -\ \ (CMO\_LIST, {\sl int32} $k$, - {\sl cmo\_int32} $c_{i1}$, {\sl cmo\_int32} $c_{i2}$, - $\ldots$, {\sl cmo\_int32} $c_{ik}$)) +\ \ (CMO\_LIST, {\sl int32} $k$, {\sl cmo\_int32} $c_1$, +$\ldots$, {\sl cmo\_int32} $c_k$)) \end{quote} ¶ñÂÎŪ¤Ê mathcap ¤ÎÎã¤ò¤¢¤²¤è¤¦. ̾Á°¤¬ ``ox\_test'', ¥Ð¡¼¥¸¥ç¥ó¥Ê¥ó¥Ð¡¼ -¤¬ 199911250 ¤Î¥µ¡¼¥Ð¤Ç, PC-UNIX ¾å¤ÇÆ°¤¤¤Æ¤ª¤ê, -¤³¤Î¥µ¡¼¥Ð¤Î¥¹¥¿¥Ã¥¯¥Þ¥·¥ó¤¬Ì¿Îá SM\_popCMO, SM\_popString, -SM\_mathcap, SM\_executeStringByLocalParser ¤òÍøÍѲÄǽ, -¤«¤Ä cmo\_int32, cmo\_string, cmo\_mathcap, cmo\_list ¤Î¤ß¤ËÀ©¸Â¤·¤¿¤¤ -¤È¤­¤Î mathcap ¤Ï +¤¬ 199911250 ¤Î¥µ¡¼¥Ð¤Ç, Linux ¾å¤ÇÆ°¤¤¤Æ¤ª¤ê, ¤³¤Î¥µ¡¼¥Ð¤Î¥¹¥¿¥Ã¥¯¥Þ¥· +¥ó¤¬Ì¿Îá SM\_popCMO, SM\_popString, SM\_mathcap, +SM\_executeStringByLocalParser ¤òÍøÍѲÄǽ¤Ç, ¤«¤Ä ¥ª¥Ö¥¸¥§¥¯¥È¤ò +cmo\_int32, cmo\_string, cmo\_mathcap, cmo\_list ¤Î¤ß¤ËÀ©¸Â¤·¤¿¤¤¤È¤­¤Î +mathcap ¤Ï \begin{quote} (CMO\_LIST, 3, \\ -\ \ (CMO\_LIST, 4, (CMO\_INT32, $199911250$), (CMO\_STRING, 7, "ox\_test"), \\ -\ \ \ \ (CMO\_STRING, 9, "199911250"), (CMO\_STRING, 4, "i386")) \\ -\ \ (CMO\_LIST, $5$, (CMO\_INT32, SM\_popCMO), \\ -\ \ \ \ (CMO\_INT32, SM\_popString), (CMO\_INT32, SM\_mathcap), \\ -\ \ \ \ (CMO\_INT32, SM\_executeStringByLocalParser)) \\ -\ \ (CMO\_LIST, $1$, \\ -\ \ \ \ (CMO\_LIST, $2$, (CMO\_INT32, OX\_DATA), \\ -\ \ \ \ \ \ (CMO\_LIST, $4$, (CMO\_INT32, CMO\_INT32), \\ -\ \ \ \ \ \ \ \ (CMO\_INT32, CMO\_STRING), (CMO\_INT32, CMO\_MATHCAP), \\ -\ \ \ \ \ \ \ \ (CMO\_INT32, CMO\_LIST))))) +$\quad$ (CMO\_LIST, 4, (CMO\_INT32, $199911250$), (CMO\_STRING, 7, ``ox\_test''), \\ +$\qquad$ (CMO\_STRING, 9, ``199911250''), (CMO\_STRING, 4, ``i386'')) \\ +$\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} ¤Ë¤Ê¤ë. @@ -433,9 +422,10 @@ OpenXM µ¬Ìó¤Ï TCP/IP ¤òÍѤ¤¤ÆÄÌ¿®¤ò¹Ô¤¦¤³¤È¤ò¹Íθ¤·¤Æ¤ ssh ¤òÍøÍѤ·¤ÆÂбþ¤·¤Æ¤¤¤ë. -\section{¾¤Î¥×¥í¥¸¥§¥¯¥È} +\section{OpenXM °Ê³°¤Î¥×¥í¥¸¥§¥¯¥È} -¾¤Î¥×¥í¥¸¥§¥¯¥È¤Ë¤Ä¤¤¤Æ¤â¿¨¤ì¤Æ¤ª¤³¤¦. +OpenXM °Ê³°¤Ë¤â¿ô¼°½èÍý¥·¥¹¥Æ¥à´Ö¤ÎÄÌ¿®¤òÌܻؤ·¤¿¥×¥í¥¸¥§¥¯¥È¤Ï¸ºß¤¹¤ë. +¤³¤³¤Ç¤Ï¾¤Î¥×¥í¥¸¥§¥¯¥È¤Ë¤Ä¤¤¤Æ¤â¿¨¤ì¤Æ¤ª¤³¤¦. \begin{itemize} \item ESPRIT OpenMath Project @@ -445,10 +435,11 @@ http://www.openmath.org/omsoc/ ¿ô³ØŪÂоݤΠSGML Ūɽµ­¤Îɸ½à²½¤òÌܻؤ·¤¿Â絬ÌÏ¤Ê¥×¥í¥¸¥§¥¯¥È. °Û¤Ê¤ë¼ï Îà¤Î¿ô¼°½èÍý¥·¥¹¥Æ¥à¤Î´Ö¤Ç¾ðÊó¤ò¸ò´¹¤¹¤ë¤È¤­¤Ë, OpenMath ¤ÇÄêµÁ¤µ¤ì¤¿É½ ¸½¤òÍøÍѤ¹¤ë¤³¤È¤¬¤Ç¤­¤ë. ¼ÂºÝ¤Î¾ðÊó¸ò´¹¤Î¼ê³¤­¤Ë¤Ï¤¤¤í¤¤¤í¤Ê¤â¤Î¤¬¹Í -¤¨¤é¤ì¤ë¤¬, Î㤨¤Ð MCP (Mathematical Computation Protocol) ¤Ê¤ë¼ê³¤­¤¬ -¹Í°Æ¤µ¤ì¤Æ¤¤¤ë. MCP ¤Ë¤è¤Ã¤ÆÁ÷¿®¤µ¤ì¤ë¥Ç¡¼¥¿¤Ï, ËÜʸ¤Ë OpenMath ·Á¼°¤Ç -¿ô¼°¤òµ­½Ò¤·¤¿¥Æ¥­¥¹¥È¤Ç, ¤¤¤µ¤µ¤«¥á¥¤¥ë¤Ë»÷¤Æ¤¤¤Ê¤¯¤â¤Ê¤¤. ¼ÂºÝ¤Ë¤³¤Î -ÊýË¡¤Ç GAP ¤È Axiom ¤Î´Ö¤ÇÄÌ¿®¤¬¹Ô¤ï¤ì¤Æ¤¤¤ë. +¤¨¤é¤ì¤ë¤¬, Î㤨¤Ð MCP (Mathematical Computation Protocol) ¤Ë¤è¤Ã¤ÆÄÌ¿® +¤ò¹Ô¤¦¤³¤È¤¬¤Ç¤­¤ë. +MCP ¤Ë¤è¤Ã¤ÆÁ÷¿®¤µ¤ì¤ë¥Ç¡¼¥¿¤Ï, ËÜʸ¤Ë OpenMath ·Á¼°¤Ç¿ô¼°¤òµ­½Ò¤·¤¿¥Æ¥­ +¥¹¥È¤Ç, ¤¤¤µ¤µ¤«¥á¥¤¥ë¤Ë»÷¤Æ¤¤¤Ê¤¯¤â¤Ê¤¤. +¼ÂºÝ¤Ë¤³¤ÎÊýË¡¤Ç GAP ¤È Axiom ¤Î´Ö¤ÇÄÌ¿®¤¬¹Ô¤ï¤ì¤Æ¤¤¤ë. \item NetSolve @@ -463,40 +454,35 @@ NetSolve ¤Ï¥¯¥é¥¤¥¢¥ó¥È¡¦¥µ¡¼¥Ð·¿¤Îʬ»¶¥·¥¹¥Æ¥à¤Ç¤¢¤ê, \item MP -http://symbolicNet.mcs.kent.edu/SN/areas/protocols/mp.html +http://symbolicnet.mcs.kent.edu/SN/areas/protocols/mp.html -²Ê³Øµ»½Ñ·×»»¤ò¹Ô¤Ê¤¦¥½¥Õ¥È¥¦¥§¥¢´Ö¤Ç¿ô³ØŪ¤Ê¥Ç¡¼¥¿¤ò¸úΨŪ¤Ë¸ò´¹ -¤µ¤»¤ë¤³¤È¤òÌÜŪ¤È¤·¤¿¥×¥í¥È¥³¥ë¤òºîÀ®¤·¤Æ¤¤¤ë. ÌÚ¹½Â¤¤òÍѤ¤¤Æ -´Êñ, ¤«¤Ä½ÀÆð¤Ê¤â¤Î¤òÌܻؤ·¤Æ¤ª¤ê, ¥Ç¡¼¥¿¤Îɽ¸½ÊýË¡¤ä¸ò´¹ÊýË¡¤Ë -Éé¤ï¤º¤Ë¥½¥Õ¥È¥¦¥§¥¢¤òºî¤ë¤³¤È¤¬¤Ç¤­¤ë¤è¤¦¤Ë¤·¤è¤¦¤È¤·¤Æ¤¤¤ë. -¸½ºß¤¹¤Ç¤Ë, C ¸À¸ì¤ÇÍøÍѲÄǽ¤Ê¥é¥¤¥Ö¥é¥ê¤¬Ä󶡤µ¤ì¤Æ¤¤¤ë. +²Ê³Øµ»½Ñ·×»»¤ò¹Ô¤Ê¤¦¥½¥Õ¥È¥¦¥§¥¢´Ö¤Ç¿ô³ØŪ¤Ê¥Ç¡¼¥¿¤ò¸úΨŪ¤Ë¸ò´¹¤µ¤»¤ë¤³ +¤È¤òÌÜŪ¤È¤·¤¿¥×¥í¥È¥³¥ë¤òºîÀ®¤·¤Æ¤¤¤ë. ÌÚ¹½Â¤¤òÍѤ¤¤Æ, ´Êñ¤«¤Ä½ÀÆð¤Ê¤â +¤Î¤òÌܻؤ·¤Æ¤ª¤ê, ¥Ç¡¼¥¿¤Îɽ¸½ÊýË¡¤ä¸ò´¹ÊýË¡¤Ë¤è¤é¤º¤Ë¥½¥Õ¥È¥¦¥§¥¢¤òºî¤ë +¤³¤È¤¬¤Ç¤­¤ë¤è¤¦¤Ë¤¹¤ë¤Î¤¬ÌÜɸ¤Ç¤¢¤ë. ¸½ºß¤¹¤Ç¤Ë, C ¸À¸ì¤ÇÍøÍѲÄǽ¤Ê¥é +¥¤¥Ö¥é¥ê¤¬Ä󶡤µ¤ì¤Æ¤¤¤ë. \item MCP http://horse.mcs.kent.edu/\~{}pwang/ -¿ô³ØŪ¤Ê·×»»¤ò¹Ô¤Ê¤¦¤¿¤á¤Î HTTP ¥¹¥¿¥¤¥ë¤Î¥×¥í¥È¥³¥ë. -¥¯¥é¥¤¥¢¥ó¥È¡¦¥µ¡¼¥Ð¥â¥Ç¥ë¤òºÎÍѤ·¤Æ¤ª¤ê, -¥Ô¥¢¥Ä¡¼¥Ô¥¢¤Î¥¹¥È¥ê¡¼¥à¥³¥Í¥¯¥·¥ç¥ó¤ò¹Ô¤Ê¤¦. -¿ô³ØŪ¤Ê¥ª¥Ö¥¸¥§¥¯¥È¤ò MP ¤ä MathML ¤ÇÄê¤á¤é¤ì¤¿ÊýË¡¤Ç -ɽ¸½¤¹¤ë¤³¤È¤¬¹Í¤¨¤é¤ì¤Æ¤¤¤ë. -¤¹¤Ç¤Ë OpenMath ¤òÍѤ¤¤¿¼ÂÁõ¤¬Â¸ºß¤¹¤ë. - - +¿ô³ØŪ¤Ê·×»»¤ò¹Ô¤Ê¤¦¤¿¤á¤Î HTTP ¥¹¥¿¥¤¥ë¤Î¥×¥í¥È¥³¥ë. ¥¯¥é¥¤¥¢¥ó¥È¡¦¥µ¡¼ +¥Ð¥â¥Ç¥ë¤òºÎÍѤ·¤Æ¤ª¤ê, ¥Ô¥¢¥Ä¡¼¥Ô¥¢¤Î¥¹¥È¥ê¡¼¥à¥³¥Í¥¯¥·¥ç¥ó¤ò¹Ô¤Ê¤¦. +¿ô³ØŪ¤Ê¥ª¥Ö¥¸¥§¥¯¥È¤ò MP ¤ä MathML ¤ÇÄê¤á¤é¤ì¤¿ÊýË¡¤Çɽ¸½¤¹¤ë¤³¤È¤¬¹Í¤¨ +¤é¤ì¤Æ¤¤¤ë. ¤¹¤Ç¤Ë OpenMath ¤òÍѤ¤¤¿¼ÂÁõ¤¬Â¸ºß¤¹¤ë. \end{itemize} \section{¸½ºßÄ󶡤µ¤ì¤Æ¤¤¤ë¥½¥Õ¥È¥¦¥§¥¢} -¸½ºß OpenXM µ¬Ìó¤ËÂбþ¤·¤Æ¤¤¤ë¥¯¥é¥¤¥¢¥ó¥È¤Ë¤Ïasir, sm1, Mathematica ¤¬¤¢¤ë. -¤³¤ì¤é¤Î¥¯¥é¥¤¥¢¥ó¥È¤«¤é OpenXM µ¬Ìó¤ËÂбþ¤·¤¿¥µ¡¼¥Ð¤ò¸Æ¤Ó½Ð¤¹¤³¤È -¤¬¤Ç¤­¤ë. ¸½ºß OpenXM µ¬Ìó¤ËÂбþ¤·¤Æ¤¤¤ë¥µ¡¼¥Ð¥½¥Õ¥È¥¦¥§¥¢¤Ë¤Ï, asir, -sm1, gnuplot, Mathematica, PHC pack ¤Ê¤É¤¬¤¢¤ê, -¤½¤ì¤¾¤ì ox\_asir, ox\_sm1, ox\_sm1\_gnuplot, ox\_math, ox\_sm1\_phc -¤È¤¤¤¦Ì¾Á°¤ÇÄ󶡤µ¤ì¤Æ¤¤¤ë. ¤Þ¤¿, OpenMath -µ¬Ìó¤Î XML ɽ¸½¤Çɽ¸½¤µ¤ì¤¿¥ª¥Ö¥¸¥§¥¯¥È¤È CMO ·Á¼°¤Î¥ª¥Ö¥¸¥§¥¯¥È¤òÊÑ´¹¤¹ -¤ë¥½¥Õ¥È¥¦¥§¥¢¤¬ JAVA ¤Ë¤è¤Ã¤Æ¼ÂÁõ¤µ¤ì¤Æ¤ª¤ê, OMproxy ¤È¤¤¤¦Ì¾Á°¤ÇÄ󶡤µ -¤ì¤Æ¤¤¤ë. +¸½ºß OpenXM µ¬Ìó¤ËÂбþ¤·¤Æ¤¤¤ë¥¯¥é¥¤¥¢¥ó¥È¤Ë¤Ïasir, sm1, Mathematica ¤¬ +¤¢¤ë. ¤³¤ì¤é¤Î¥¯¥é¥¤¥¢¥ó¥È¤«¤é OpenXM µ¬Ìó¤ËÂбþ¤·¤¿¥µ¡¼¥Ð¤ò¸Æ¤Ó½Ð¤¹¤³ +¤È¤¬¤Ç¤­¤ë. ¤Þ¤¿ OpenXM µ¬Ìó¤ËÂбþ¤·¤Æ¤¤¤ë¥µ¡¼¥Ð¤Ë¤Ï, asir, sm1, +Mathematica, gnuplot, PHC pack ¤Ê¤É¤¬¤¢¤ê, ¤½¤ì¤¾¤ì ox\_asir, ox\_sm1, +ox\_math, ox\_sm1\_gnuplot, ox\_sm1\_phc ¤È¤¤¤¦Ì¾Á°¤ÇÄ󶡤µ¤ì¤Æ¤¤¤ë. +¤µ¤é¤Ë OpenMath µ¬Ìó¤Î XML ɽ¸½¤Çɽ¸½¤µ¤ì¤¿¥ª¥Ö¥¸¥§¥¯¥È¤È CMO ·Á¼°¤Î¥ª¥Ö +¥¸¥§¥¯¥È¤òÁê¸ßÊÑ´¹¤¹¤ë¥½¥Õ¥È¥¦¥§¥¢¤¬ JAVA ¤Ë¤è¤Ã¤Æ¼ÂÁõ¤µ¤ì¤Æ¤ª¤ê, +OMproxy ¤È¤¤¤¦Ì¾Á°¤ÇÄ󶡤µ¤ì¤Æ¤¤¤ë. \begin{thebibliography}{99} \bibitem{Ohara-Takayama-Noro-1999}