Difference between revisions of "Package sagbi/SB.SAGBITimeout"
From ApCoCoAWiki
Andraschko (talk | contribs) m (Andraschko moved page User:Andraschko/SB.SAGBITimeout to Package sagbi/SB.SAGBITimeout without leaving a redirect) |
Andraschko (talk | contribs) (examples and see) |
||
(One intermediate revision by the same user not shown) | |||
Line 16: | Line 16: | ||
<example> | <example> | ||
− | Use QQ[x | + | Use QQ[x,y,z]; |
− | S := SB.SAGBITimeout([x | + | S := SB.SAGBITimeout([x^2 -z^2, x*y +z^2, y^2 -2*z^2],3); |
indent(S); | indent(S); | ||
− | ---- | + | -- [ |
− | + | -- y^2 -2*z^2, | |
− | + | -- x*y +z^2, | |
− | x | + | -- x^2 -z^2, |
− | x | + | -- x^2*z^2 +x*y*z^2 +(1/2)*y^2*z^2 +(-1/2)*z^4 |
− | x | + | -- ] |
− | ] | ||
</example> | </example> | ||
<example> | <example> | ||
Use QQ[x,y]; | Use QQ[x,y]; | ||
− | SB.SAGBITimeout([x+y,x*y,x*y^2],10); -- K[x+y,xy,xy^2] | + | SB.SAGBITimeout([x+y,x*y,x*y^2],10); -- K[x+y,xy,xy^2] does not have a finite SAGBI basis |
----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ||
--> ERROR: Timeout after 10.161 seconds. | --> ERROR: Timeout after 10.161 seconds. | ||
Line 38: | Line 37: | ||
</example> | </example> | ||
</description> | </description> | ||
− | < | + | <seealso> |
− | < | + | <see>Package sagbi/SB.SAGBI</see> |
+ | <see>Package sagbi/SB.TruncSAGBI</see> | ||
+ | <see>Package sagbi/SB.IsSAGBIOf</see> | ||
+ | <see>Package sagbi/SB.GetSAGBI</see> | ||
+ | <see>Package sagbi/SB.GetTruncSAGBI</see> | ||
+ | </seealso> | ||
<types> | <types> | ||
<type>sagbi</type> | <type>sagbi</type> | ||
Line 47: | Line 51: | ||
<key>sb.sagbi</key> | <key>sb.sagbi</key> | ||
<key>sagbi.sagbi</key> | <key>sagbi.sagbi</key> | ||
− | <wiki-category> | + | <wiki-category>Package_sagbi</wiki-category> |
</command> | </command> |
Latest revision as of 18:13, 27 October 2020
This article is about a function from ApCoCoA-2. |
SB.SAGBITimeout
Same as SAGBI, but stops after a given time and throws an error if the computation isn't finished yet.
Syntax
SB.SAGBITimeout(G:LIST of POLY,t:RAT):LIST of POLY
Description
This function computes a SAGBI basis and throws an error if the computation isn't finished after t seconds. If the computation terminates within t seconds, a reduced SAGBI basis of the subalgebra generated by the set G is returned.
@param G A list of polynomials which generates a subalgebra.
@param t A rational number specifying the time limit.
@return A list of polynomials which form a finite SAGBI-basis of the subalgebra generated by G.
Example
Use QQ[x,y,z]; S := SB.SAGBITimeout([x^2 -z^2, x*y +z^2, y^2 -2*z^2],3); indent(S); -- [ -- y^2 -2*z^2, -- x*y +z^2, -- x^2 -z^2, -- x^2*z^2 +x*y*z^2 +(1/2)*y^2*z^2 +(-1/2)*z^4 -- ]
Example
Use QQ[x,y]; SB.SAGBITimeout([x+y,x*y,x*y^2],10); -- K[x+y,xy,xy^2] does not have a finite SAGBI basis ----------------------------------------------------------------------------- --> ERROR: Timeout after 10.161 seconds. --> WHERE: at line 618 (column 2) of sagbi.cpkg5 --> error("Timeout after " + DecimalStr(t1-t0) + " seconds.") --> ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
See also
Package sagbi/SB.GetTruncSAGBI