ApCoCoA-1:BB.BorderDivAlg: Difference between revisions
Example section update. |
m insert version info |
||
(11 intermediate revisions by 5 users not shown) | |||
Line 1: | Line 1: | ||
{{Version|1}} | |||
<command> | <command> | ||
<title>BB.BorderDivAlg</title> | |||
<short_description>Applies the border division algorithm.</short_description> | |||
<syntax> | <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 POLY):RECORD | ||
BB.BorderDivAlg(F:POLY,OO:LIST of POLY,Prebasis:LIST of LIST of POLY):RECORD | BB.BorderDivAlg(F:POLY,OO:LIST of POLY,Prebasis:LIST of LIST of POLY):RECORD | ||
</syntax> | </syntax> | ||
<description> | |||
<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. | |||
<par/> | |||
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. | ||
<par/> | |||
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 | ||
<tt>Prebasis</tt> is contained in the border of <tt>OO</tt> (remember that a term ordering is | <tt>Prebasis</tt> is contained in the border of <tt>OO</tt> (remember that a term ordering is | ||
Line 23: | Line 24: | ||
<item>@param <em>F</em> The Border Division Algorithm will be applied to this polynomial.</item> | <item>@param <em>F</em> The Border Division Algorithm will be applied to this polynomial.</item> | ||
<item>@param <em>OO</em> A list of terms representing an order ideal.</item> | <item>@param <em>OO</em> A list of terms representing an order ideal.</item> | ||
<item>@param <em>Prebasis</em> A list of polynomials representing a OO-border prebasis. Please see examples below for a detailed explanation of the format of this parameter.</item> | <item>@param <em>Prebasis</em> A list of polynomials representing a <tt>OO</tt>-border prebasis. Please see examples below for a detailed explanation of the format of this parameter.</item> | ||
<item>@return The result of the Border | <item>@return The result of the Border Division Algorithm will be stored in a record containing two fields <tt>Quotients</tt> and <tt>Remainder</tt>, both of type POLY.</item> | ||
</itemize> | </itemize> | ||
Line 50: | Line 51: | ||
------------------------------- | ------------------------------- | ||
</example> | </example> | ||
</description> | |||
<types> | <types> | ||
<type>polynomial</type> | |||
<type>borderbasis</type> | |||
<type>apcocoaserver</type> | |||
</types> | |||
</types> | <see>CoCoA:DivAlg</see> | ||
<key>BorderDivAlg</key> | |||
<key>BB.BorderDivAlg</key> | |||
<key>borderbasis.BorderDivAlg</key> | |||
<wiki-category>ApCoCoA-1:Package_borderbasis</wiki-category> | |||
</command> | </command> |
Latest revision as of 09:39, 7 October 2020
This article is about a function from ApCoCoA-1. |
BB.BorderDivAlg
Applies the 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
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.
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.
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 (remember that a term ordering is
used automatically), 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).
@param F The Border Division Algorithm will be applied to this polynomial.
@param OO A list of terms representing an order ideal.
@param Prebasis A list of polynomials representing a OO-border prebasis. Please see examples below for a detailed explanation of the format of this parameter.
@return The result of the Border Division Algorithm will be stored in a record containing two fields Quotients and Remainder, both of type POLY.
Example
Use QQ[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] -------------------------------
Example
-- 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] -------------------------------