Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

I know now that we can do the following:

sage: A = A = FreeAlgebra(QQbar, 3, "a")
sage: F = A.monoid()
sage: M = MatrixSpace(QQbar,4)
sage: x, y, xy = F.gens()
sage: mons = [F(1), x, y, xy]
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,
....:         0, 0, 0, 0,
....:         0, 0, 0, 0]),
....:     M([ 0, 0, 0, 1,
....:         0, 0, 1, 0,
....:         0, 0, 0, 0,
....:         0, 0, 0, 0 ])
....:     ]
sage: H.<x,y,xy> = FreeAlgebraQuotient(A,mons,mats); H
Free algebra quotient on 3 generators ('x', 'y', 'xy') and dimension 4 over Algebraic Field

And we can verify

sage: x^2
1
sage: y^2
0
sage: x*y
xy
sage: y*x
-xy

Note: We cannot take tensor products, but that is not what I originally asked for, so.

I know now that we can do the following:

sage: A = A = FreeAlgebra(QQbar, 3, "a")
sage: F = A.monoid()
sage: M = MatrixSpace(QQbar,4)
sage: x, y, xy = F.gens()
sage: mons = [F(1), x, y, xy]
sage: mats = [
....: [ 
....:        M([ 0, 1, 0, 0,
....:         1, 0, 0, 0,
....:         0, 0, 0, -1,
....:       0,   1, 0, 0, 0,   0, 0, 0, -1,   0, 0, -1, 0 ]),
....: ]),    
....:        M([ 0, 0, 1, 0,
....:         0, 0, 0, 1,
....:         0, 0, 0, 0,
....:         0, 0, 0, 0]),
....: 0,   0, 0, 0, 1,   0, 0, 0, 0,   0, 0, 0, 0]),    
....:        M([ 0, 0, 0, 1,
....:         0, 0, 1, 0,
....:         0, 0, 0, 0,
....:       1,   0, 0, 1, 0,   0, 0, 0, 0,   0, 0, 0, 0 ])
....:  ]
sage: H.<x,y,xy> = FreeAlgebraQuotient(A,mons,mats); H
Free algebra quotient on 3 generators ('x', 'y', 'xy') and dimension 4 over Algebraic Field

And we can verify

sage: x^2
1
sage: y^2
0
sage: x*y
xy
sage: y*x
-xy

Note: We cannot take tensor products, but that is not what I originally asked for, so.

I know now that we can do the following:

sage: A = A = FreeAlgebra(QQbar, 3, "a")
sage: F = A.monoid()
sage: M = MatrixSpace(QQbar,4)
sage: x, y, xy = F.gens()
sage: mons = [F(1), x, y, xy]
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,   0, 0, 0, 0,   0, 0, 0, 0]),    
....:        M([ 0, 0, 0, 1,   0, 0, 1, 0,   0, 0, 0, 0,   0, 0, 0, 0 ])
....: ]
sage: H.<x,y,xy> = FreeAlgebraQuotient(A,mons,mats); H
Free algebra quotient on 3 generators ('x', 'y', 'xy') and dimension 4 over Algebraic Field

And we can verify

sage: x^2
1
sage: y^2
0
sage: x*y
xy
sage: y*x
-xy

Note: We cannot take tensor products, but that is not what I originally asked for, so.