ApCoCoA-1:SB.SubalgebraPoly
From ApCoCoAWiki
Revision as of 08:41, 7 October 2020 by AndraschkoBot (talk | contribs) (fixed links to namespace ApCoCoA)
SB.SubalgebraPoly
Computes a subalgebra polynomial from a subalgebra representation.
Syntax
SB.SubalgebraPoly(Gens:LIST of POLY, SARepr:LIST of LIST of INT):POLY
Description
This function computes from a given representation of a polynomial as a list of logarithms (see also SB.NFS) the polynomial in the current subalgebra, which is generated by the polynomials of the list Gens. Example: Let Gens=[g_1,g_2,g_3] be the list of subalgebra generators, let S=K[y_1,y_2,y_3] be the current subalgebra and SARepr=[[0,2,3,-1],[2,3,1,4]] the given representation. Then the polynomial
-1*(y_2)^2(y_3)^3 + 4*(y_1)^2(y_2)^3(y_3)
in the ring S will be returned.
@param Gens A list of polynomials, which are the generators of the current subalgebra.
@param SARepr A list of lists with integers as entries.
@return A polynomial in the current subalgebra.
Example
Use R::=QQ[x,y], DegLex; F:=x^4+x^3y+x^2y^2+y^4; G:=[x^2-y^2,x^2y,x^2y^2-y^4,x^2y^4,y^6x^2y^6-y^8]; L:=SB.NFS(G,F,TRUE); L; SB.SubalgebraPoly(G,L[2]); ------------------------------------------------------- -- output: [x^3y + 3x^2y^2, [[2, 0, 0, 0, 0, 1]]] ------------------------------- SARing :: y[1]^2 ------------------------------- -- Done. -------------------------------
Example
Use R::=QQ[x,y], DegLex; F:=x^3+x^2y; G:=[x+y,xy]; L:=SB.NFS(G,F,TRUE); L; SB.SubalgebraPoly(G,L[2]); ------------------------------------------------------- -- output: [-xy^2 - y^3, [[3, 0, 1], [1, 1, -2]]] ------------------------------- SARing :: y[1]^3 - 2y[1]y[2] ------------------------------- -- Done. -------------------------------
Example
Use R::=QQ[x,y], DegLex; F:=x^4y^2+x^2y^4; G:=[x^2-1,y^2-1]; L:=SB.NFS(G,F,TRUE); L; SB.SubalgebraPoly(G,L[2]); ------------------------------------------------------- -- output: [0, [[2, 1, 1], [1, 2, 1], [2, 0, 1], [1, 1, 4], [0, 2, 1], [1, 0, 3], [0, 1, 3], [0, 0, 2]]] ------------------------------- SARing :: y[1]^2y[2] + y[1]y[2]^2 + y[1]^2 + 4y[1]y[2] + y[2]^2 + 3y[1] + 3y[2] + 2 ------------------------------- -- Done. -------------------------------