# Package sagbi/SB.SAGBITimeout

From ApCoCoAWiki

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