Difference between revisions of "ApCoCoA-1:BB.BorderDivAlg"

From ApCoCoAWiki
(Created the page)
 
(Updated description)
Line 9: Line 9:
 
Applies the Border Division Algorithm w.r.t. the order ideal <tt>OO</tt> and the border prebasis
 
Applies the Border Division Algorithm w.r.t. the order ideal <tt>OO</tt> and the border prebasis
 
<tt>Prebasis</tt> to the polynomial <tt>F</tt> and returns a record with fields <tt>Quotients</tt>
 
<tt>Prebasis</tt> to the polynomial <tt>F</tt> and returns a record with fields <tt>Quotients</tt>
and <tt>Remainder</tt> sucht that <tt>Remainder</tt> is the normal <tt>OO</tt>-remainder.
+
and <tt>Remainder</tt> sucht that <tt>Remainder</tt> is the normal <tt>OO</tt>-remainder. Please
 +
note that you have to start the ApCoCoAServer in order to use this function.
  
 
As it is not immediately clear which term in the support of a given prebasis polynomial of
 
As it is not immediately clear which term in the support of a given prebasis polynomial of

Revision as of 14:14, 12 June 2008

BB.BorderDivAlg

border division algorithm

Syntax

BB.BorderDivAlg(F:POLY,OO:LIST of POLY,Prebasis:LIST of POLY):RECORD
BB.BorderDivAlg(F:POLY,OO:LIST of POLY,Prebasis:LIST of LIST of POLY):RECORD

Description

Applies the Border Division Algorithm w.r.t. the order ideal OO and the border prebasis

Prebasis to the polynomial F and returns a record with fields Quotients

and Remainder sucht that Remainder is the normal OO-remainder. Please note that you have to start the ApCoCoAServer in order to use this function.

As it is not immediately clear which term in the support of a given prebasis polynomial of

Prebasis is contained in the border of OO, the prebasis needs to be parsed

internally and a more detailed prebasis representation is computed. The internal expansion will be skipped if you already pass a more detailed prebasis description to the function which is possible by using the second function call (see example below).

Example

Use Q[x,y];
OO := [1, x, y];
Prebasis := [ x^2 + x + 1, xy + y, y^2 + x + 1 ];
F := x^3y^2 - xy^2 + x^2 + 2;
BB.BorderDivAlg(F, OO, Prebasis);

-------------------------------
Record[Quotients = [xy^2 - y^2 + 1, -y, 2], Remainder = -3x - 1]
-------------------------------

-- The paramter Prebasis is internally expanded to
-- [ [ x^2 + x + 1, x^2 ], [ xy + y, xy ], [ y^2 + x + 1, y^2] ].
-- Thus, the following call of BB.BorderDivAlg is
-- equivalent to the one above
DetailedPrebasis := [ [ x^2 + x + 1, x^2 ], [ xy + y, xy ], [ y^2 + x + 1, y^2] ];
BB.BorderDivAlg(F, OO, DetailedPrebasis);

-------------------------------
Record[Quotients = [xy^2 - y^2 + 1, -y, 2], Remainder = -3x - 1]
-------------------------------

DivAlg