version 1.1, 2001/09/20 09:27:56 |
version 1.4, 2001/09/25 02:28:27 |
|
|
%% $OpenXM$ |
%% $OpenXM: OpenXM/doc/ascm2001p/ohp.tex,v 1.3 2001/09/25 01:17:08 takayama Exp $ |
\documentclass{slides} |
\documentclass{slides} |
%%\documentclass[12pt]{article} |
%%\documentclass[12pt]{article} |
\usepackage{color} |
\usepackage{color} |
|
|
{\color{green} Design and Implementation of OpenXM-RFC 100 and 101} |
{\color{green} Design and Implementation of OpenXM-RFC 100 and 101} |
|
|
\noindent |
\noindent |
M.Maekawa, M.Noro, K.Ohara, N.Takayama, Y.Tamura \\ |
M.Maekawa ($BA0(B $B@n(B $B!!(B $B>-(B $B=((B), \\ M.Noro ($BLn(B $BO$(B $B!!(B $B@5(B $B9T(B), \\ |
\htmladdnormallink{http://www.openxm.org}{http://www.openxm.org} |
K.Ohara ($B>.(B $B86(B $B!!(B $B8y(B $BG$(B), \\ N.Takayama ($B9b(B $B;3(B $B!!(B $B?.(B $B5#(B), \\ |
|
Y.Tamura ($BED(B $BB<(B $B!!(B $B63(B $B;N(B)\\ |
|
\htmladdnormallink{{\color{red}http://www.openxm.org}}{{\color{red}http://www.openxm.org}} |
|
|
|
|
\newpage |
\newpage |
\noindent |
\noindent |
{\color{red} 1. Architecture} \\ |
{\color{red} 1. Architecture} \\ |
Line 21 Two main applications of the project \\ |
|
Line 24 Two main applications of the project \\ |
|
\begin{enumerate} |
\begin{enumerate} |
\item Providing an environment for interactive distributed computation. |
\item Providing an environment for interactive distributed computation. |
{\color{blue} Risa/Asir} |
{\color{blue} Risa/Asir} |
|
(computer algebra system for general purpose, |
|
open source (c) Fujitsu, \\ |
|
http://www.openxm.org, \\ |
|
http://risa.cs.ehime-u.ac.jp, \\ |
|
http://www.math.kobe-u.ac.jp/Asir/asir.html) |
\item e-Bateman project |
\item e-Bateman project |
(Electronic version of higher transcendental functions of the 21st century)\\ |
(Electronic version of higher transcendental functions of the 21st century)\\ |
1st step: Generate and verify hypergeometric function identities. |
1st step: Generate and verify hypergeometric function identities. |
|
|
\noindent{\color{red} 4. Easy to try and evaluate distributed algorithms} \\ |
\noindent{\color{red} 4. Easy to try and evaluate distributed algorithms} \\ |
|
|
\noindent |
\noindent |
|
{\color{green} Example 1} \\ |
Theorem (Cantor-Zassenhaus) \\ |
Theorem (Cantor-Zassenhaus) \\ |
Let $f_1$ and $f_2$ be degree $d$ polynomials in $F_q[x]$. |
Let $f_1$ and $f_2$ be degree $d$ irreducible polynomials in $F_q[x]$. |
For a random degree $2d-1$ polynomial $g \in F_q[x]$, |
For a random degree $2d-1$ polynomial $g \in F_q[x]$, |
the chance of |
the chance of |
$$ GCD(g^{(q^d-1)/2}-1,f_1 f_2) = f_1 \,\mbox{or}\, f_2 $$ |
$$ GCD(g^{(q^d-1)/2}-1,f_1 f_2) = f_1 \,\mbox{or}\, f_2 $$ |
Line 195 def c_z(F,E,Level) |
|
Line 204 def c_z(F,E,Level) |
|
} |
} |
\end{verbatim} |
\end{verbatim} |
\newpage |
\newpage |
|
|
|
\epsfxsize=17cm |
|
\epsffile{cz.ps} |
|
|
\noindent |
\noindent |
{\color{red} 5. e-Bateman project} \\ |
{\color{blue} Performance of parallel CZ algorithm} \\ |
|
$d=1$, $k=200$ : product of $200$ linear forms. \\ |
|
$d=2$, $k=50$ : product of $50$ irreducible degree $2$ polynomials. \\ |
|
|
|
\newpage |
|
{\color{green} Example 2} \\ |
|
Shoup's algorithm to multiply polynomials. \\ |
|
{\color{green} Example 3} \\ |
|
Competitive Gr\"obner basis computation. \\ |
|
\newpage |
|
|
|
\noindent |
|
{\color{red} 5. e-Bateman project} (Electronic mathematical formula book)\\ |
First Step: \\ |
First Step: \\ |
Gauss Hypergeometric function: |
Gauss Hypergeometric function: |
$$ {\color{blue} F(a,b,c;x)} = \sum_{n=1}^\infty |
$$ {\color{blue} F(a,b,c;x)} = \sum_{n=1}^\infty |
\frac{(a)_n (b)_n}{(1)_n}{(c)_n} x^n |
\frac{(a)_n (b)_n}{(1)_n (c)_n} x^n |
$$ |
$$ |
where |
where |
$$ (a)_n = a(a+1) \cdots (a+n-1). $$ |
$$ (a)_n = a(a+1) \cdots (a+n-1). $$ |
$$ F(?,?,?;x) = \log (1+x). $$ |
{\color{green} |
|
$$ \log (1+x) = x F(1,1,2;-x) $$ |
|
$$ \arcsin x = x F(1/2,1/2,3/2;x^2) $$ |
|
} |
|
|
\noindent |
\noindent |
Appell's $F_1$: |
Appell's $F_1$: |
Line 218 Erdelyi: {\color{green} Higher Transcendental Function |
|
Line 246 Erdelyi: {\color{green} Higher Transcendental Function |
|
The solution space of the ordinary differential equation |
The solution space of the ordinary differential equation |
$$ x(1-x) \frac{d^2f}{dx^2} -\left( c-(a+b+1)x \right) \frac{df}{dx} - a b f = 0$$ |
$$ x(1-x) \frac{d^2f}{dx^2} -\left( c-(a+b+1)x \right) \frac{df}{dx} - a b f = 0$$ |
is spanned by |
is spanned by |
$$ F(a,b,c;x) , \ x^{1-c} F(a,b,c;x) $$ |
$$ F(a,b,c;x) = {\color{red}1} + O(x), \ |
|
x^{1-c} F(a,b,c;x) = {\color{red}x^{1-c}}+O(x^{2-c}))$$ |
|
|
when $c \not\in {\bf Z}$. \\ |
when $c \not\in {\bf Z}$. \\ |
{\color{blue} Formula (type B)}\\ |
{\color{blue} Formula (type B)}\\ |
\begin{eqnarray*} |
\begin{eqnarray*} |
Line 247 Implementation & partially done & NO \\ \hline |
|
Line 277 Implementation & partially done & NO \\ \hline |
|
\noindent |
\noindent |
Our ox servers |
Our ox servers |
{\tt ox\_asir}, {\tt ox\_sm1}, {\tt ox\_tigers}, {\tt ox\_gnuplot}, |
{\tt ox\_asir}, {\tt ox\_sm1}, {\tt ox\_tigers}, {\tt ox\_gnuplot}, |
{\tt ox\_mathematica}, {\tt OMproxy} {\tt ox\_m2} |
{\tt ox\_mathematica}, {\tt OMproxy} (JavaClasses), {\tt ox\_m2} |
are used to generate, verify and present formulas of type A |
are used to generate, verify and present formulas of type A |
for GKZ hypergeometric systems. |
for GKZ hypergeometric systems. |
|
|
|
\newpage |
|
\noindent |
|
{\color{green} Example 3. Competitive Gr\"obner Basis Computation} |
|
\begin{verbatim} |
|
extern Proc1,Proc2$ |
|
Proc1 = -1$ Proc2 = -1$ |
|
/* G:set of polys; V:list of variables */ |
|
/* Mod: the Ground field GF(Mod); O:type of order */ |
|
def dgr(G,V,Mod,O) |
|
{ |
|
/* invoke servers if necessary */ |
|
if ( Proc1 == -1 ) Proc1 = ox_launch(); |
|
if ( Proc2 == -1 ) Proc2 = ox_launch(); |
|
P = [Proc1,Proc2]; |
|
map(ox_reset,P); /* reset servers */ |
|
/* P0 executes Buchberger algorithm over GF(Mod) */ |
|
ox_cmo_rpc(P[0],"dp_gr_mod_main",G,V,0,Mod,O); |
|
/* P1 executes F4 algorithm over GF(Mod) */ |
|
ox_cmo_rpc(P[1],"dp_f4_mod_main",G,V,Mod,O); |
|
map(ox_push_cmd,P,262); /* 262 = OX_popCMO */ |
|
F = ox_select(P); /* wait for data */ |
|
/* F[0] is a server's id which is ready */ |
|
R = ox_get(F[0]); |
|
if ( F[0] == P[0] ) { Win = "Buchberger"; Lose = P[1]; } |
|
else { Win = "F4"; Lose = P[0]; } |
|
ox_reset(Lose); /* reset the loser */ |
|
return [Win,R]; |
|
} |
|
\end{verbatim} |
|
\newpage |
|
|
\end{document} |
\end{document} |
|
|