=================================================================== RCS file: /home/cvs/OpenXM/doc/issac2000/heterotic-network.tex,v retrieving revision 1.1 retrieving revision 1.2 diff -u -p -r1.1 -r1.2 --- OpenXM/doc/issac2000/heterotic-network.tex 1999/12/23 10:25:08 1.1 +++ OpenXM/doc/issac2000/heterotic-network.tex 2000/01/02 07:32:11 1.2 @@ -1 +1,100 @@ -% $OpenXM$ +% $OpenXM: OpenXM/doc/issac2000/heterotic-network.tex,v 1.1 1999/12/23 10:25:08 takayama Exp $ + +\subsection{Heterotic Network} (Takayama) + +\def\pd#1{ \partial_{#1} } +\subsubsection{Annihilating ideal} + +Let $D = {\bf Q} \langle x_1, \ldots, x_n , \pd{1}, \ldots, \pd{n} \rangle$ +be the ring of differential operators. +For a given polynomial +$ f \in {\bf Q}[x_1, \ldots, x_n] $, +the annihilating ideal of $f^{-1}$ is defined as +$$ {\rm Ann}\, f^{-1} = \{ \ell \in D \,|\, + \ell \bullet f^{-1} = 0 \}. +$$ +Here, $\bullet$ denotes the action of $D$ to functions. +The annihilating ideal can be regarded as the maximal differential +equations for the function $f^{-1}$. +An algorithm to determine generators of the annihilating ideal +was given by Oaku in 1995 (see, e.g., \cite[page ??]{sst-book}). +His algorithm reduces the problem to computations of Gr\"obner bases +in $D$ and to find the maximal integral root of a polynomial. +An implementation of this algorithm (the function {\tt annfs}) +on kan/sm1 \cite{kan}, which is a Gr\"obner engine for $D$, +calls ox\_asir to factorize polynomials to find the integral +roots. +For example, the following is the sm1 session to find the annihilating +ideal for $f = x^3 - y^2 z^2$. +\begin{verbatim} +sm1>[(x^3-y^2 z^2) (x,y,z)] annfs :: +Starting ox_asir server. +Byte order for control process is network byte order. +Byte order for engine process is network byte order. +[[-y*Dy+z*Dz, 2*x*Dx+3*y*Dy+6, -2*y*z^2*Dx-3*x^2*Dy, + -2*y^2*z*Dx-3*x^2*Dz, -2*z^3*Dx*Dz-3*x^2*Dy^2-2*z^2*Dx], + [-1,-139968*s^7-1119744*s^6-3802464*s^5-7107264*s^4 + -7898796*s^3-5220720*s^2-1900500*s-294000]] +\end{verbatim} +The last polynomial is factored as +$-12(s+1)(3s+5)(3s+4)(6*s+5)(6*s+7)$ +and the minimal integral root is $-1$ +as shown in the output. + +\subsubsection{Primary ideal decomposition and +a stratification of singularity} +Let ${\cal D} = {\cal O}\langle \pd{1}, \ldots, \pd{n} \rangle$ +be the sheaf of algebraic differential operators on ${\bf C}^n$. +For a given polynomial +$f \in {\bf Q}[x_1, \ldots, x_n]$, +minimal degree non-zero polynomial $b_a(s)$ such that +$ b_a(s) f^s \in {\cal D}_{a} \bullet f^{s+1} $ +is called the local $b$-function of $f^s$ at +$x=a$. +Here, ${\cal D}_a$ denotes the germ of the sheaf ${\cal D}$ at +$x=a$. +The polynomial $b_a(s)$ depends on $a$ and ${\bf C}^n$ is +stratified into a finite algebraic sets such that +$b_a(s)$ is a constant with respect to $a$ on each +algebraic set. +An algorithm to determine the stratification +was given by Oaku in 1997 \cite{oaku-advance}. +His algorithm reduces the problem to computations of Gr\"obner bases +in $D$ and primary ideal decompositions. +An implementation of this algorithm +uses sm1 for Gr\"obner basis computation in $D$ and +ox\_asir for primary ideal decomposition and Gr\"obner basis computation +in the ring of polynomials. + +\subsubsection{A Course on Solving Algebraic Equations} + +Risa/asir \cite{asir} is a general computer algebra system +which is good at Gr\"obner basis computations for zero dimensional ideal +with ${\bf Q}$ coefficients. +However, it is not good at graphical presentations and +numerical methods. +We used Risa/asir with ox\_sm1\_phc (based on PHC pack by Verschelde \cite{phc} +for the polyhedral homotopy method) and +ox\_sm1\_gnuplot (GNUPLOT) servers +to teach a course on solving algebraic equations. +This course used the text book \cite{CLO} which focuses +on the Gr\"obner basis method and the polyhedral homotopy method +to solve systems of algebraic equations. +Risa/asir has a user language like C and we could teach a course +with a unified environment +controlled by asir user language. +\begin{verbatim} +[257] phc([x^2+y^2-4,x*y-1]); +The detailed output is in the file tmp.output.* +The answer is in the variable Phc. +0 +[260] Phc ; +[[[-0.517638,0],[-1.93185,0]], +[[1.93185,0],[0.517638,0]], +[[-1.93185,0],[-0.517638,0]], +[[0.517638,0],[1.93185,0]]] +[261] +\end{verbatim} + + +