==> %body
==>
%body
%body
%body %body
%body %body %body
%body SINGULAR - A Computer Algebra System for Polynomial Computations Overview Objects Functionality Libraries Examples Applications Availability History Contributors Future %body

Sao Carlos, 08/02 http://www.singular.uni-kl.de
SINGULAR Examples Build. Blocks Comb. Appl. HCA Proving
Arrangements Branches Classify Coding Deformations Equidim Part Existence Finite Groups Flatness Genus Hilbert Series Membership Nonnormal Locus Normalization Primdec Puiseux Plane Curves Saturation Solving Space Curves Spectrum
%body

Sao Carlos, 08/02 http://www.singular.uni-kl.de
SINGULAR Applications Robotics Circuit Design Medicine Glass Melting %body

Sao Carlos, 08/02 http://www.singular.uni-kl.de
ring r=0,(x,y,z),ds;
ideal I=x^4-y*z^2,x*y-z^3,y^2-x^3*z;
list L=facstd(I);
L;
[1]: _[1]=xy-z3 _[2]=y2-x3z _[3]=yz2-x4 _[4]=x4+x3z+x2z2+xz3+z4 [2]: _[1]=x-z _[2]=y-z2
Again we only obtain 2 components. The 4-th generator of the first ideal shows that this component might contain up to 4 branches.

Note that factorization is incomplete because we are working over the rationals. To see that the first ideal has 4 branches , we move to an algebraic extension:

ideal J=L[1]; // the first ideal
ring s=(0,a),(x,y,z),dp;
minpoly=a4+a3+a2+a+1;
def J=imap(r,J);
LIB "primdec.lib";
J[5]=x-a*z;   // a factor of J[4]
minAssGTZ(J); // minimal associated primes
[1]: _[1]=x+(-a)*z _[2]=y _[3]=z
Note also that using the factorizing Gröbner basis algorithm is usually not sufficient to completely decompose an ideal into its components, it should be used primarily to obtain smaller problems which are then appropriate for the normalization algorithm.
<-- Branches of an isolated space curve singularity
<-- computed via Primary Decomposition
<-- computed via Normalization