up previous next

implicitization of hypersurface

ImplicitHypersurface(ParamDescr: LIST): RINGELEM
ImplicitHypersurface(ParamDescr: LIST, Algo: STRING): RINGELEM
ImplicitHypersurface(P: RING, ParamDescr: LIST): RINGELEM
ImplicitHypersurface(P: RING, ParamDescr: LIST, Algo: STRING): RINGELEM

This function returns the implicitization of the hypersurface parametrically described by the list ParamDescr . From version CoCoA-5.2.2 it works also for rational parametrization.

The algorithms are described in the JSC paper Abbott, Bigatti, Robbiano Implicitization of Hypersurfaces

If provided with a polynomial ring P , the result is in P , otherwise it is in a newly created ring.

Verbosity: 20-80-90.

NOTE: it assumes the input is a correct parametric description of a hypersurface in K^(len(ParamDescr)+1) !!

/**/ P ::= QQ[x,y,z];
/**/ use S ::= QQ[s,t];
/**/ ImplicitHypersurface(P, [s^2, s*t, t^2]);
y^2 -x*z
/**/ ImplicitHypersurface(P, [s^2, s*t, t^2], "Direct");
y^2 -x*z
/**/ ImplicitHypersurface(P, [s^2, s*t, t^2], "ElimTH");
y^2 -x*z

/**/ -- Parametrization by rational functions
/**/ K := NewFractionField(RingQQt(1));
/**/ use K;
/**/ ParamDescr := [ (1-t^2)/(1+t^2), 2*t/(1+t^2) ];
/**/ ImplicitHypersurface(ParamDescr);
x[1]^2 +x[2]^2 -1

See Also