Hello,Max!Could you tell me where I can download the GBNP package ?Or can you give me a link?<br><br>在2010-04-12 14:53:55,"Max Horn" <m...@quendi.de> 写道: > >Am 12.04.2010 um 04:09 schrieb 君: > >> If there is an noncommutative associative algebra, presented as >> A=K<X|R>,where X is the generating set, R is the relations set. >> My question is: How to use GAP to find the Grobner basis for A? >> P.S.:Can GAP find the Grobner shirshov basis for A,too? >> I hope to get some help from experts. > >The GBNP package can perform Gröbner basis computations in free associative >algebras. First you'll have to install GBNP. > >load GBNP and enter the relations. Here we assume two generators a and b, and >we work over the rationals. > >gap> LoadPackage("gbnp"); >true >gap> A:=FreeAssociativeAlgebraWithOne(Rationals, "a", "b"); ><algebra-with-one over Rationals, with 2 generators> >gap> a:=A.1;;b:=A.2;;e:=One(A);; >gap> rels := [ b*a^2*b-b^2, b^2-e, (a*b)^12-e, (a*b)^8-e ];; > >You can now compute a Gröbner basis for the ideal generated by these relation: > >gap> GBR:=SGrobner(GP2NPList(rels));; >gap> PrintNPList(GBR); > a^2 - 1 > b^2 - 1 > baba - abab > >Now you can compute the dimension of A, or multiply elements in it > >gap> DimQA(GBR,2); >8 >gap> PrintNP(MulQA(GP2NP(a), GP2NP(b), GBR)); > ab >gap> PrintNP(MulQA(GP2NP(a*b), GP2NP(a*b), GBR)); > abab >gap> PrintNP(MulQA(GP2NP(a*b*a), GP2NP(a*b*a), GBR)); > 1 > >As far as I know, GBNP does not yet provide a nice interface to turn the >quotient algebra into a "proper" GAP object / algebra, but you can ask for >matrix generators as a substitute (assuming its dimension is not too big): > >gap> B := BaseQA(GBR,2,0);; >gap> mats := MatricesQA(2,B,GBR);; >gap> Q:=AlgebraWithOne(Rationals, mats); ><algebra-with-one over Rationals, with 2 generators> >gap> Dimension(Q); >8 > > > >Hope that helps, >Max
_______________________________________________ Forum mailing list Forum@mail.gap-system.org http://mail.gap-system.org/mailman/listinfo/forum