Confused about FreeAlgebra quotients
I think I'm misunderstanding how quotients of free algebras work. I tried to make a free algebra on two generators x, y and mod out by xy = yx, so you get a polynomial algebra -- but that's not what happened.
sage: R.<x,y> = FreeAlgebra(QQ)
sage: I = R*[x*y-y*x]*R
sage: Q.<a,b> = R.quo(I)
sage: a*b is b*a
False
sage: Q.is_commutative()
False
Relatedly, the documentation for free_module_quotient gives an example (constructing the quaternions as a free quotient):
sage: n = 2
sage: A = FreeAlgebra(QQ,n,'x')
sage: F = A.monoid()
sage: i, j = F.gens()
sage: mons = [ F(1), i, j, i*j ]
sage: r = len(mons)
sage: M = MatrixSpace(QQ,r)
sage: mats = [M([0,1,0,0, -1,0,0,0, 0,0,0,-1, 0,0,1,0]), M([0,0,1,0, 0,0,0,1, -1,0,0,0, 0,-1,0,0]) ]
sage: H2.<i,j> = A.quotient(mons,mats)
but I'm confused exactly how the matrices in the penultimate line describe the (multiplication) action? I.e. if I have some relation, say x^2 = 0, that I want to mod out by, how do I accomplish that using matrices?
small remark: you should not use "is" for testing equality as it does something else