previous  next
SeparatorsOfPoints
Syntax
SeparatorsOfPoints(Points:LIST):LIST

where Points is a list of lists of coefficients representing a set of
*distinct* points in affine space.
Summary
separators for affine points
Description
This function computes separators for the points: that is, for each
point a polynomial is determined whose value is 1 at that point and 0
at all the others.  The separators yielded are reduced with respect to
the reduced Groebner basis which would be found by 'IdealOfPoints'.

NOTE:
 * the current ring must have at least as many indeterminates as the
   dimension of the space in which the points lie;
 * the base field for the space in which the points lie is taken to be
   the coefficient ring, which should be a field;
 * in the polynomials returned the first coordinate in the space is
   taken to correspond to the first indeterminate, the second to the
   second, and so on;
 * the separators are in the same order as the points (i.e. the first
   separator is the one corresponding the first point, and so on);
 * if the number of points is large, say 100 or more, the returned
   value can be very large.  To avoid possible problems when printing
   such values as a single item we recommend printing out the elements
   one at a time as in this example: 

     S:=SeparatorsOfPoints(Pts); 
     Foreach Element In S Do
       PrintLn Element;
     EndForeach;

For separators of points in projective space, see
'SeparatorsOfProjectivePoints'.  

Example

Use R ::= Q[x,y];
Points := [[1, 2], [3, 4], [5, 6]];
S := SeparatorsOfPoints(Points);  -- compute the separators
S;
[1/8y^2 - 5/4y + 3, -1/4y^2 + 2y - 3, 1/8y^2 - 3/4y + 1]
-------------------------------
[[Eval(F, P) | P In Points] | F In S];  -- verify separators
[[1, 0, 0], [0, 1, 0], [0, 0, 1]]
-------------------------------
See also: