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

From ApCoCoAWiki
(Added ApCoCoAServer note)
Line 1: Line 1:
 
   <command>
 
   <command>
     <title>Numerical.BBasisOfPointsInIdeal</title>
+
     <title>Num.BBasisOfPointsInIdeal</title>
     <short_description>border basis of an almost vanishing sub-ideal for a set of points and ideal</short_description>
+
     <short_description>Border basis of an almost vanishing sub-ideal for a set of points and ideal.</short_description>
 
<syntax>
 
<syntax>
$numerical.BBasisOfPointsInIdeal(Points, Tau, GetO, GBasis, Delta,  NormalizeType, RREFNormalizeType, RREFUseEps, RREFType):Object
+
Num.BBasisOfPointsInIdeal(Points:MAT, Tau:RAT, GetO:BOOL, GBasis:LIST):Object
 +
Num.BBasisOfPointsInIdeal(Points:MAT, Tau:RAT, GetO:BOOL, GBasis:LIST, Delta:RAT,  NormalizeType:INT, RREFNormalizeType:INT, RREFUseEps:BOOL, RREFType:INT):Object
 
</syntax>
 
</syntax>
 
     <description>
 
     <description>
{{ApCoCoAServer}} Please also note that you will have to use an ApCoCoAServer with enabled BLAS/LAPACK support.
+
<em>Please note:</em> The function(s) explained on this page is/are using the <em>ApCoCoAServer</em>. 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 ideal using the algorithm described in the paper
+
<itemize>
<par/>
+
<item>@param <em>Points</em> The points for which a border basis is computed.</item>
  D. Heldt, M. Kreuzer, H. Poulisse: <em>Computing Approximate
 
  Vanishing Ideals</em> (Work in progress)
 
<par/>
 
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.  
 
  
Tau is a rational <formula>&gt;0</formula>,
+
<item>@param <em>Tau</em> 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. </item>
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 <formula>(0,1)</formula>. As a rule of thumb,
 
tau is the expected percentage of error on the input points.  
 
  
 +
<item>@param <em>GetO</em> A Boolean to choose the output. 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).</item>
  
GetO must be either True or False.  If it is true, the command
+
<item>@param <em>GBasis</em> A homogeneous Groebner Basis in the current ring. This basis defines the ideal we compute the approximate vanishing ideal's basis inWarning: for reasons of efficiency the function does not check the validity of GBasis.</item>
returns a list of two values: the first contains the border basis, the
 
second one a vector space basis of <formula>P/I</formula> comprising those power products
 
lying outside the leading term ideal of IIf GetO is false, the function
 
returns only the border basis (not in a list).  
 
  
GBasis must be a
+
<item>@return The return value depends on the parameter GetO: GetO=FALSE: The border basis of the given points as a list of polynomials. GetO=TRUE: 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.</item>
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 the validity of
 
GBasis.
 
  
 +
</itemize>
  
The last 5 parameters are optional.  
+
The following parameters are optional:
 +
<itemize>
 +
<item>@param <em>Delta</em> A positiv rational number. Delta 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.</item>
  
 +
<item>@param <em>NormalizeType</em> A integer of the range 1..4. The default value is 1. This parameter describes, if / how the input points are normalized. If NormalizeType equals 1, each coordinate is divided by the maximal absolut value of the matrix's corresponding column. This ensures that all point's coordinates are in [-1,1]. With NormalizeType=2 no normalization is done at all. NormalizeType=3 shifts each coordinate to [-1,1]. So it's minimum is mapped to -1 and the maximum to one, describing a unique affine mapping. The last option is NormalizeType=4. In this case, each coordinate is normalized, using the column's euclidian norm. Due to backward compatibility, the default is 1, although 3 is in most cases a better choice.</item>
  
Delta must be a positiv rational. Delta 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.
+
<item>@param <em>RREFNormalizeType</em> Describes, how in each RREF steps the columns are normalized. The options correspond to the ones for NormalizeType and the default is 1 again.</item>
  
 +
<item>@param <em>RREFUseEps</em> must be either true or false! If RREFUseEps is true, the given Delta is used within the RREF to decide if a value equals 0 or not. If this parameter is false, a replacement value for Delta is used, which is based on the matrix's norm. </item>
  
NormalizeType must be one of 1,2,3 ,4. The default value is 1. This parameter describes, if / how the input points are normalized.  
+
<item>@param <em>RREFType</em> This must be 1 or 2. If RREFType=1, the rref operates column-wise. Otherwise it works row-wise. The default is 1.</item>
If NormalizeType equals 1, each coordinate is divided by the maximal absolut value of the matrix's corresponding column. This ensures that all point's coordinates are in [-1,1].
+
</itemize>
With NormalizeType=2 no normalization is done at all.  
 
NormalizeType=3 shifts each coordinate to [-1,1]. So it's minimum is mapped to -1 and the maximum to one, describing a unique affine mapping.  
 
The last option is NormalizeType=4. In this case, each coordinate is normalized, using the column's euclidian norm.
 
Due to backward compatibility, the default is 1, although 3 is in most cases a better choice.
 
 
 
 
 
RREFNormalizeType describes, how in each RREF steps the columns are normalized. The options correspond to the ones for NormalizeType and the default is 1 again.
 
 
 
 
 
RREFUseEps must be either true or false! If RREFUseEps is true, the given Delta is used within the RREF to decide if a value equals 0 or not. If this parameter is false,
 
a replacement value for Delta is used, which is based on the matrix's norm.
 
  
 +
This command computes a border basis of an almost vanishing sub-ideal for a set of points and ideal.
 +
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.
  
The last parameter is RREFType. This must be 1 or 2. If RREFType=1, the rref operates column-wise. Otherwise it works row-wise. The default is 1.
 
 
<example>
 
<example>
 
Points := Mat([[2,0,0],[0,3,0],[0,0,1]]);
 
Points := Mat([[2,0,0],[0,3,0],[0,0,1]]);
$numerical.BBasisOfPointsInIdeal(Points, 0.001, False,[z,y]);
+
Num.BBasisOfPointsInIdeal(Points, 0.001, False,[z,y]);
 
-------------------------------
 
-------------------------------
 
[z^2 - z, 1/3yz, 1/2xz, 1/9y^2 - 9007199254740991/27021597764222976y, 1/6xy]
 
[z^2 - z, 1/3yz, 1/2xz, 1/9y^2 - 9007199254740991/27021597764222976y, 1/6xy]
Line 81: Line 62:
 
       <type>cocoaserver</type>
 
       <type>cocoaserver</type>
 
     </types>
 
     </types>
     <key>heldt</key>
+
     <key>bbasisofpointsinideal</key>
     <key>numerical.bbasisofpointsinideal</key>
+
     <key>num.bbasisofpointsinideal</key>
 
     <wiki-category>Package_Numerical</wiki-category>
 
     <wiki-category>Package_Numerical</wiki-category>
 
   </command>
 
   </command>

Revision as of 14:30, 20 April 2009

Num.BBasisOfPointsInIdeal

Border basis of an almost vanishing sub-ideal for a set of points and ideal.

Syntax

Num.BBasisOfPointsInIdeal(Points:MAT, Tau:RAT, GetO:BOOL, GBasis:LIST):Object
Num.BBasisOfPointsInIdeal(Points:MAT, Tau:RAT, GetO:BOOL, GBasis:LIST, Delta:RAT,  NormalizeType:INT, RREFNormalizeType:INT, RREFUseEps:BOOL, RREFType: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.

  • @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 GetO A Boolean to choose the output. 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).

  • @param GBasis 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 the validity of GBasis.

  • @return The return value depends on the parameter GetO: GetO=FALSE: The border basis of the given points as a list of polynomials. GetO=TRUE: 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 positiv rational number. Delta 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 range 1..4. The default value is 1. This parameter describes, if / how the input points are normalized. If NormalizeType equals 1, each coordinate is divided by the maximal absolut value of the matrix's corresponding column. This ensures that all point's coordinates are in [-1,1]. With NormalizeType=2 no normalization is done at all. NormalizeType=3 shifts each coordinate to [-1,1]. So it's minimum is mapped to -1 and the maximum to one, describing a unique affine mapping. The last option is NormalizeType=4. In this case, each coordinate is normalized, using the column's euclidian norm. Due to backward compatibility, the default is 1, although 3 is in most cases a better choice.

  • @param RREFNormalizeType Describes, how in each RREF steps the columns are normalized. The options correspond to the ones for NormalizeType and the default is 1 again.

  • @param RREFUseEps must be either true or false! If RREFUseEps is true, the given Delta is used within the RREF to decide if a value equals 0 or not. If this parameter is false, a replacement value for Delta is used, which is based on the matrix's norm.

  • @param RREFType This must be 1 or 2. If RREFType=1, the rref operates column-wise. Otherwise it works row-wise. The default is 1.

This command computes a border basis of an almost vanishing sub-ideal for a set of points and ideal. 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.

Example

Points := Mat([[2,0,0],[0,3,0],[0,0,1]]);
Num.BBasisOfPointsInIdeal(Points, 0.001, False,[z,y]);
-------------------------------
[z^2 - z, 1/3yz, 1/2xz, 1/9y^2 - 9007199254740991/27021597764222976y, 1/6xy]
-------------------------------

See also

Introduction to CoCoAServer

Numerical.GBasisOfPoints

Numerical.BBasisOfPoints

Numerical.HBasisOfPoints

Numerical.GBasisOfPointsInIdeal

Numerical.HBasisOfPointsInIdeal

Numerical.FirstVanishingRelations

Numerical.FirstVanishingRelationsInIdeal