Difference between revisions of "ApCoCoA-1:Num.SubABM"

From ApCoCoAWiki
(correct info about default value)
Line 30: Line 30:
 
<item>@param <em>Delta</em> A positive rational number which describes the computing precision. In different steps, it is crucial, if a value is 0 or not. The algorithm assumes every value in <tt>[-Delta, Delta]</tt> to be 0. The default value for <tt>Delta</tt> is 0.00000000001.</item>
 
<item>@param <em>Delta</em> A positive rational number which describes the computing precision. In different steps, it is crucial, if a value is 0 or not. The algorithm assumes every value in <tt>[-Delta, Delta]</tt> to be 0. The default value for <tt>Delta</tt> is 0.00000000001.</item>
  
<item>@param <em>NormalizeType</em> A integer of the set <tt>{1,2,3,4}</tt>. The default value is 1. This parameter describes, if and where required the input points are normalized. If <tt>NormalizeType</tt> equals 1, each coordinate of a point is divided by the maximal absolute value of all coordinates of this point. This ensures that all coordinates of the points are within <tt>[-1,1]</tt>. With <tt>NormalizeType=2</tt> no normalization is done at all. <tt>NormalizeType=3</tt> shifts each coordinate to <tt>[-1,1]</tt>, i.e. the minimal coordinate of a point is mapped to -1 and the maximal coordinate to 1, which describes a unique affine mapping. The last option is <tt>NormalizeType=4</tt>. In this case, each point is normalized by its euclidean norm. Although <tt>NormalizeType=3</tt> is in most cases a better choice, the default value is due to backward compatibility 1.</item>
+
<item>@param <em>NormalizeType</em> A integer of the set <tt>{1,2,3,4}</tt>. The default value is 2. This parameter describes, if and where required the input points are normalized. If <tt>NormalizeType</tt> equals 1, each coordinate of a point is divided by the maximal absolute value of all coordinates of this point. This ensures that all coordinates of the points are within <tt>[-1,1]</tt>. With <tt>NormalizeType=2</tt> no normalization is done at all. <tt>NormalizeType=3</tt> shifts each coordinate to <tt>[-1,1]</tt>, i.e. the minimal coordinate of a point is mapped to -1 and the maximal coordinate to 1, which describes a unique affine mapping. The last option is <tt>NormalizeType=4</tt>. In this case, each point is normalized by its euclidean norm. Although <tt>NormalizeType=3</tt> is in most cases a better choice, the default value is due to backward compatibility 1.</item>
  
 
</itemize>
 
</itemize>

Revision as of 07:58, 15 July 2009

Num.SubABM

Computes a border basis of an almost vanishing sub-ideal for a set of points and an ideal using the Num.ABM algorithm.

Syntax

Num.SubABM(Points:MAT, Tau:RAT, GBasis:LIST):Object
Num.SubABM(Points:MAT, Tau:RAT, GBasis:LIST, Delta:RAT, NormalizeType:INT):Object

Description

Please note: The function(s) explained on this page is/are using the ApCoCoAServer. You will have to start the ApCoCoAServer in order to use it/them.

This command computes a border basis of an almost vanishing sub-ideal for a set of points and an ideal using the Num.ABM algorithm.

The current ring has to be a ring over the rational numbers with a standard-degree

compatible term-ordering. Each row in the matrix Points represents one point, so the number of columns must equal the

number of indeterminates in the current ring.

  • @param Points The points for which a border basis is computed.

  • @param Tau A positive rational number describing which singular values should be treated as 0 (smaller values for tau lead to bigger errors of the polynomials evaluated at the point set). Tau should be in the interval (0,1). As a rule of thumb, Tau is the expected percentage of error on the input points.

  • @param GBasis A homogeneous Groebner Basis in the current ring. This basis defines the ideal in which we compute the basis of the approximate vanishing ideal. Warning: For reasons of efficiency the function does not check the validity of GBasis.

  • @return A list of two results. First the border basis as a list of polynomials, second the vector space basis of P/I as a list of terms.


The following parameters are optional:

  • @param Delta A positive rational number which describes the computing precision. In different steps, it is crucial, if a value is 0 or not. The algorithm assumes every value in [-Delta, Delta] to be 0. The default value for Delta is 0.00000000001.

  • @param NormalizeType A integer of the set {1,2,3,4}. The default value is 2. This parameter describes, if and where required the input points are normalized. If NormalizeType equals 1, each coordinate of a point is divided by the maximal absolute value of all coordinates of this point. This ensures that all coordinates of the points are within [-1,1]. With NormalizeType=2 no normalization is done at all. NormalizeType=3 shifts each coordinate to [-1,1], i.e. the minimal coordinate of a point is mapped to -1 and the maximal coordinate to 1, which describes a unique affine mapping. The last option is NormalizeType=4. In this case, each point is normalized by its euclidean norm. Although NormalizeType=3 is in most cases a better choice, the default value is due to backward compatibility 1.


Example

Use P::=QQ[x,y,z];

Points := Mat([[2/3,0,0],[0,1,0],[0,0,1/3]]);
R:=Num.SubABM(Points, 0.1, [1,x]);
Dec(R[1],2);
R[2];

-- CoCoAServer: computing Cpu Time = 0.015
-------------------------------
[<quotes>0.41 x +0.27 y +0.82 z -0.27  </quotes>, <quotes>0.94 z^2 -0.31 z -0.00  </quotes>, <quotes>1 yz </quotes>, <quotes>1 xz </quotes>, <quotes>0.70 y^2 -0.70 y -0.00  </quotes>, <quotes>1 xy </quotes>]
-------------------------------
[1, z, y]
-------------------------------

See also

Introduction to CoCoAServer

Num.ABM