ApCoCoA-1:SB.IsSagbi

From ApCoCoAWiki
This article is about a function from ApCoCoA-1. If you are looking for the ApCoCoA-2 version of it, see Package sagbi/SB.Interreduced.

SB.IsSagbi

Checks if a set of polynomials is a SAGBI-basis.

Syntax

SB.IsSagbi(G:LIST of POLY):BOOL

Description

This function checks if the given list of polynomials G is a SAGBI-basis, i.e. if the conditions of a SAGBI-basis are fulfilled. Then the corresponding boolean value will be returned.

  • @param G A list of polynomials.

  • @return The corresponding boolean value.

Example

Use R::=QQ[x,y];

G:=[x-y,x+y];
SB.IsSagbi(G);
SB.Sagbi(G);

-------------------------------------------------------
-- output:

FALSE
-------------------------------

-- The result is correct, because a SAGBI-basis of G is the following:
[
  x - y,
  x + y,
  y]
-------------------------------
-- Done.
-------------------------------

Example

Use R::=QQ[x[1..6]];

Generators:=[-x[4] - x[6], -x[1], x[2]^2 + x[3]^2, 
    -4x[4]^2 - 5/2x[5]^2 + 2x[4]x[6] - 4x[6]^2, 
    -2x[2]x[3]x[4] + x[2]^2x[5] - x[3]^2x[5] + 2x[2]x[3]x[6], 
    -x[2]^2x[4] + x[3]^2x[4] - 2x[2]x[3]x[5] + x[2]^2x[6] - x[3]^2x[6]];

SB.IsSagbi(Generators);

-- Computation of a SAGBI-basis
Basis:=SB.Sagbi(Generators);
SB.IsSagbi(Basis);

-------------------------------------------------------
-- output:

FALSE
-------------------------------

-- Of course the test passes now because the computed SAGBI-basis is
-- indeed a SAGBI-basis.
TRUE
-------------------------------
-- Done.
-------------------------------

See also

SB.Sagbi

SB.IsSagbiOf