version 1.5, 2000/01/11 05:35:48 |
version 1.6, 2000/01/15 02:24:18 |
|
|
% $OpenXM: OpenXM/doc/issac2000/design-outline.tex,v 1.4 2000/01/07 07:52:26 ohara Exp $ |
% $OpenXM: OpenXM/doc/issac2000/design-outline.tex,v 1.5 2000/01/11 05:35:48 noro Exp $ |
|
|
\section{Design Outline} |
\section{Design Outline} |
|
|
Line 10 Data integration concerns with the exchange of data be |
|
Line 10 Data integration concerns with the exchange of data be |
|
softwares or same softwares. |
softwares or same softwares. |
OpenMath \cite{OpenMath} and MP (Multi Protocol) \cite{GKW} are, |
OpenMath \cite{OpenMath} and MP (Multi Protocol) \cite{GKW} are, |
for example, general purpose mathematical data protocols. |
for example, general purpose mathematical data protocols. |
They provide a standard way to express mathematical objects. |
They provide standard ways to express mathematical objects. |
For example, |
For example, |
\begin{verbatim} |
\begin{verbatim} |
<OMOBJ> <OMI> 123 </OMI> </OMOBJ> |
<OMOBJ> <OMI> 123 </OMI> </OMOBJ> |
Line 19 means the (OpenMath) integer $123$ in OpenMath/XML exp |
|
Line 19 means the (OpenMath) integer $123$ in OpenMath/XML exp |
|
|
|
Control integration concerns with the establishment and management of |
Control integration concerns with the establishment and management of |
inter-software communications. |
inter-software communications. |
Control involves, for example, a way to ask computation to other processes |
Control involves, for example, a way to ask computations to other processes |
and a method to interrupt computations on servers from a client. |
and a method to interrupt computations on servers from a client. |
RPC, HTTP, MPI, PVM are regarded as a general purpose control protocols or |
RPC, HTTP, MPI, PVM are regarded as a general purpose control protocols or |
infrastructures. |
infrastructures. |
Line 29 by Wang \cite{iamc} is such a protocol specialized to |
|
Line 29 by Wang \cite{iamc} is such a protocol specialized to |
|
Although, data and control are orthogonal to each other, |
Although, data and control are orthogonal to each other, |
real world requires both. |
real world requires both. |
NetSolve \cite{netsolve}, OpenMath$+$MCP, MP$+$MCP \cite{iamc}, |
NetSolve \cite{netsolve}, OpenMath$+$MCP, MP$+$MCP \cite{iamc}, |
and MathLink of Mathematica provide both data and control integration. |
and MathLink \cite{mathlink} provide both data and control integration. |
These are currently studied ways of data and control integration. |
|
Each integration method has their own special features due to their |
Each integration method has their own special features due to their |
own design goals and design motivations. |
own design goals and design motivations. |
OpenXM is a project aiming to integrate data, control and user interfaces |
OpenXM (Open message eXchange protocol for Mathematics) |
from a different emphasis of a set of design goals with other projects. |
is a project aiming to integrate data, control and user interfaces |
|
with itw own set of design goals. |
To explain our design outline, we start with a list of |
To explain our design outline, we start with a list of |
our motivations. |
our motivations. |
\begin{enumerate} |
\begin{enumerate} |
\item Noro, who is one of the authors of OpenXM, has developed a general |
\item Noro has developed a general |
purpose computer algebra system Risa/Asir \cite{asir}. |
purpose computer algebra system Risa/Asir \cite{asir}. |
A set of functions for interactive distributed computations were introduced |
A set of functions for interactive distributed computations were introduced |
in Risa/Asir version 950831 released in 1995. |
in Risa/Asir version 950831 released in 1995. |
The model of computation was RPC (remote procedure call) |
The model of computation was RPC (remote procedure call) |
and it had its own serialization method for objects. |
and it had its own serialization method for objects. |
A robust interruption method was provided by having two communication channels |
A robust interruption method was provided by having two communication channels |
like ftp, which implements the simple network management protocol. |
like ftp. |
As an application of this robust and interactive distributed computation |
As an application of this robust and interactive distributed computation |
system, speed-up was achieved for a huge Gr\"obner basis computation |
system, speed-up was achieved for a huge Gr\"obner basis computation |
to determine all odd order replicable functions |
to determine all odd order replicable functions |
by Noro and McKay \cite{noro-mckay}. |
by Noro and McKay \cite{noro-mckay}. |
However, the protocol was closed in Asir and we thought that we should |
However, the protocol was closed in Asir and we thought that we should |
design an open protocol. |
design an open protocol. |
\item Takayama, who is also one of the authors of OpenXM, has developed |
\item Takayama has developed |
a special purpose computer algebra system Kan/sm1 \cite{kan}, |
a special purpose computer algebra system Kan/sm1 \cite{kan}, |
which is a Gr\"obner engine for the ring of differential operators $D$ and |
which is a Gr\"obner engine for the ring of differential operators $D$ and |
a package for computational algebraic geometry via D-module computations. |
a package for computational algebraic geometry via D-module computations. |
Line 82 softwares or users who need these systems only occasio |
|
Line 82 softwares or users who need these systems only occasio |
|
a unified system will be more convenient. |
a unified system will be more convenient. |
For example, if we can call and use mathematical softwares |
For example, if we can call and use mathematical softwares |
like CoCoa, GAP, Macaulay2, Porta, Singular, Snapea, $\ldots$ |
like CoCoa, GAP, Macaulay2, Porta, Singular, Snapea, $\ldots$ |
from Asir, Axiom, Maple, muPAD, Mathematica, and so on, |
from Aldor, Asir, Axiom, Maple, Magma, muPAD, Mathematica, and so on, |
it will be wonderful in research and education |
it will be wonderful in research and education |
of mathematics. This is an unification of user interfaces of mathematical |
of mathematics. This is an unification of user interfaces of mathematical |
softwares. |
softwares. |
Line 131 the Asir client to the OX sm1 server: |
|
Line 131 the Asir client to the OX sm1 server: |
|
The current system, OpenXM on TCP/IP, |
The current system, OpenXM on TCP/IP, |
uses client-server model and the TCP/IP is used for interprocess |
uses client-server model and the TCP/IP is used for interprocess |
communications. |
communications. |
A prototype OpenXM system on MPI \cite{MPI} already exists for Risa/Asir and |
The OpenXM on MPI \cite{MPI} is currently running on Risa/Asir |
a general OpenXM on MPI is a work in progress. |
as we will see Section \ref{section:homog}. |
However, we focus only on the system based on TCP/IP in this paper. |
However, we focus only on the system based on TCP/IP in this paper. |
|
|
|
|
|
|
|
|