up previous next
TmpNBM

Numerical Border Basis of ideal of points

Syntax
 TmpNBM(P: RING, Pts: MAT, Toler: MAT): RECORD[QuotientBasis: LIST, BBasis: LIST, AlmostVanishing: LIST, StableBBasisFound: BOOL]

Description
Thanks to John Abbott and Maria-Laura Torrente.

This function checks that the current ring is suitable: see below for details.

This function returns a record containing a factor-closed set of power-products QuotientBasis and a list of almost vanishing polynomials. If the cardinality of the QuotientBasis is equal to the number of points, it is in fact a quotient basis of the ideal of points, and in this case a border basis founded on it is also returned.

The first argument is a list of points in k-dimensional space, and the second argument is list of k positive tolerances (one for each dimension). So that the answer can be represented, the current ring must have at least k indeterminates; the term ordering is ignored as it plays no role in determining the border basis.

For a full description of the algorithms we refer to the paper C.Fassino Almost Vanishing Polynomials for Sets of Limited Precision Points (arXiv:0807.3412).

Example
/**/ P ::= QQ[x,y];
/**/ Eps := [0.1, 0.1];
/**/ Points := [[10, 0], [-10, 0], [0, 10], [0, -10], [7, 7], [-7, -7]];
/**/ indent(TmpNBM(P, mat(Points), RowMat(Eps)));
record[
  AlmostVanishing := [x^2 +(2/49)*x*y +y^2 -100,
                      x*y^2 +(49/51)*y^3 +(-4900/51)*y, y^4 +51*x*y -100*y^2],
  BBasis := [x^2 +(2/49)*x*y +y^2 -100, x*y^2 +(49/51)*y^3 +(-4900/51)*y,
             x^2*y +(49/51)*y^3 +(-4900/51)*y, y^4 +51*x*y -100*y^2, x*y^3 -49*x*y],
  QuotientBasis := [1, y, x, y^2, x*y, y^3],
  StableBBasisFound := true
]

See Also