Dear GAP Forum and Alper,
You can construct quotients of polynomial rings in the following way
in GAP:

... GAP, Version 4.7.5 of 24-May-2014 (free software, GPL) ...

gap> R := PolynomialRing(Rationals,["a"]);
gap> a := IndeterminatesOfPolynomialRing(R)[1];
gap> I := Ideal(R, [a*a + 1]);
<two-sided ideal in Rationals[a], (1 generators)>
gap> S := R/I;
<ring Rationals,(1),(a)>

Note that I am using version 4.7.5, since in some of the earlier versions,
the latter command gave an error message.

You can also  construct non-commutative polynomial rings as follows:

gap> R := FreeAlgebraWithOne(Rationals, 2);
<algebra-with-one over Rationals, with 2 generators>
gap> gens := GeneratorsOfAlgebra(R);
[ (1)*<identity ...>, (1)*x.1, (1)*x.2 ]
gap> x1 := gens[2];
gap> x2 := gens[3];
gap> I := Ideal(R, [x1^2, x1*x2 + x2*x1, x2^2]);
<two-sided ideal in <algebra-with-one over Rationals, with 2 generators>, (3 generators)>
gap> S := R/I;
<algebra-with-one over Rationals, with 2 generators>

A third way of constructing finite dimensional algebras is to use the
undeposited package QPA, which you find at

and see

for further information.  With this package you can construct and do
computations for finite dimensional quotients of path algebras. In particular
construct modules/representations, homomorphisms over these and do
some homological algebra over these algebras.

gap> Q := Quiver(1, [[1,1,"a"], [1,1,"b"]]);
<quiver with 1 vertices and 2 arrows>
gap> KQ := PathAlgebra(Rationals, Q);
<Rationals[<quiver with 1 vertices and 2 arrows>]>
gap> AssignGeneratorVariables(KQ);
#I  Assigned the global variables [ v1, a, b ]
gap> relations := [ a*a, a*b + 2*b*a, b*b];
[ (1)*a^2, (1)*a*b+(2)*b*a, (1)*b^2 ]
gap> A := KQ/relations; # the quantum plane
<Rationals[<quiver with 1 vertices and 2 arrows>]/
<two-sided ideal in <Rationals[<quiver with 1 vertices and 2 arrows>]>,
  (3 generators)>>

Best regards, Oeyvind Solberg.

Forum mailing list

Reply via email to