IdealAndSeparatorsOfProjectivePoints -- ideal and separators for points |
Syntax |
IdealAndSeparatorsOfProjectivePoints(Points: LIST): RECORD where Points is a list of lists of coefficients representing a set of distinct points in projective space. |
Description |
points -- the points given as argument ideal -- the result of IdealOfProjectivePoints separators -- the result of SeparatorsOfProjectivePointsThus, if the result is stored in a variable with identifier X, then: X.ideal will be the ideal of the set of points, with generators forming a reduced Groebner basis for the ideal; X.separators will be a list of homogeneous polynomials whose i-th element will be non-zero (actually 1, using the given representatives for the coordinates of the points) on the i-th point and 0 on the others.
***** NOT YET IMPLEMENTED ***** X := IdealAndSeparatorsOfProjectivePoints(Pts); foreach g in gens(X.ideal) do println g; endforeach;For ideals and separators of points in affine space, see IdealAndSeparatorsOfPoints .
Example |
***** NOT YET IMPLEMENTED ***** use R ::= QQ[x,y,z]; Points := [[0,0,1],[1/2,1,1],[0,1,0]]; X := IdealAndSeparatorsOfProjectivePoints(Points); X.points; [[0, 0, 1], [1, 1, 1], [0, 1, 0]] ------------------------------- X.ideal; ideal(x*z - (1/2)*y*z, x*y - (1/2)*y*z, x^2 - (1/4)*y*z, y^2*z - y*z^2) ------------------------------- X.separators; [-2*x + z, x, -2*x + y] ------------------------------- use R ::= QQ[t,x,y,z]; Pts := GenericPoints(20); -- 20 random points in projective 3-space X := IdealAndSeparatorsOfProjectivePoints(Pts); Len(Gens(X.Ideal)); -- number of generators in the ideal 17 ------------------------------- HilbertFn(R/X.Ideal); H(0) = 1 H(1) = 4 H(2) = 10 H(t) = 20 for t >= 3 ------------------------------- F := X.Separators[3]; [Eval(F, P) | P in Pts]; [0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] ------------------------------- Res(R/X.Ideal); -- the resolution of the ideal 0 --> R^10(-6) --> R^24(-5) --> R^15(-4) --> R ------------------------------- |
See Also |