# Skew commuting variables

I want to work in the ring QQ<x0, x1, x2> / (xi*xj = -xj*xi for i \neq j). (In particular, xi^2 \neq 0; this is not the exterior algebra.)

I seems like FreeAlgebraQuotient is the thing to use, but I am not sure how. In the documentation for FreeAlgebraQuotient, the algebras are 4-dimensional as modules over QQ. However in my application, the algebra is infinite-dimensional as a module, so I can't write down the matrices for the action of the generators.

Is there another way to obtain this ring? Thanks.

edit retag close merge delete

Sort by » oldest newest most voted

You can use our wrapper for Singular's non-commutative component Plural. In particular, you can create a G-algebra for this ring as follows:

sage: A.<x0,x1,x2> = FreeAlgebra(QQ, 3)
sage: A
Free Algebra on 3 generators (x0, x1, x2) over Rational Field
sage: R.<x0,x1,x2> = A.g_algebra({x1*x0: -x0*x1, x2*x0: -x0*x2, x2*x1: -x1*x2})
sage: R
Noncommutative Multivariate Polynomial Ring in x0, x1, x2 over Rational Field, nc-relations: {x2*x1: -x1*x2, x2*x0: -x0*x2, x1*x0: -x0*x1}
sage: x2*x1
-x1*x2
sage: x1*x2
x1*x2

more

Thanks! This is exactly what I needed!

( 2012-11-08 05:39:33 -0500 )edit

Let me know if there are any problems with the wrapper. It's not very polished at the moment, some things might not work as intended. I already have a few patches I need to push upstream, but I'd appreciate hearing bug reports and use cases.

( 2012-11-08 21:55:30 -0500 )edit