border basis of an almost vanishing sub-ideal for a set of points and ideal
$numerical.BBasisOfPointsInIdeal(Points, Epsilon, GetO, GBasis):Object
This command computes a border basis of an almost vanishing sub-ideal for a set of points and ideal using the algorithm described in the paper
D. Heldt, M. Kreuzer, H. Poulisse: Computing Approximate Vanishing Ideals (Work in progress)
The current ring has to be a ring over the rationals with a standard-degree compatible term-ordering. The matrix Points contains the points: each point is a row in the matrix, so the number of columns must equal the number of indeterminates in the current ring. Epsilon is a rational >0, describing which singular values should be treated as 0 (smaller values for epsilon lead to bigger errors of the polynomials evaluated at the point set). Epsilon should be in the interval (0,1). As a rule of thumb, Epsilon is the expected percentage of error on the input points. GetO must be either True or False. If it is true, the command returns a list of two values: the first contains the border basis, the second one a vector space basis of P/I comprising those power products lying outside the leading term ideal of I. If GetO is false, the function returns only the border basis (not in a list). GBasis must be a homogeneous Groebner Basis in the current ring. This basis defines the ideal we compute the approximate vanishing ideal's basis in. Warning: for reasons of efficiency the function does not check that the validity of GBasis.
Points := Mat([[2,0,0],[0,3,0],[0,0,1]]); $numerical.BBasisOfPointsInIdeal(Points, 0.001, False,[z,y]); ------------------------------- [z^2 - z, 1/3yz, 1/2xz, 1/9y^2 - 9007199254740991/27021597764222976y, 1/6xy] -------------------------------