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 the 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 (Journal of Symbolic Computation 45 (2010), 19--37).

 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 ] ```