##### 7.5.20.0. superCommutative
Procedure from library `nctools.lib` (see nctools_lib).

Usage:
superCommutative([b,[e, [Q]]]);

Return:
qring

Purpose:
create a super-commutative algebra (as a GR-algebra) over a basering,

Note:
activate this qring with the "setring" command.

Note:
if b==e then the resulting ring is commutative.
By default, `b=1, e=nvars(basering), Q=0`.

Theory:
given a basering, this procedure introduces the anti-commutative relations
var(j)var(i)=-var(i)var(j) for all e>=j>i>=b and creates the quotient
of the anti-commutative algebra modulo the two-sided ideal, generated by
x(b)^2, ..., x(e)^2[ + Q]

Display:
If `printlevel` > 1, warning debug messages will be printed

Example:
 ```LIB "nctools.lib"; ring R = 0,(x(1..4)),dp; // global! def ER = superCommutative(); // the same as Exterior (b = 1, e = N) setring ER; ER; ==> // coefficients: QQ ==> // number of vars : 4 ==> // block 1 : ordering dp ==> // : names x(1) x(2) x(3) x(4) ==> // block 2 : ordering C ==> // noncommutative relations: ==> // x(2)x(1)=-x(1)*x(2) ==> // x(3)x(1)=-x(1)*x(3) ==> // x(4)x(1)=-x(1)*x(4) ==> // x(3)x(2)=-x(2)*x(3) ==> // x(4)x(2)=-x(2)*x(4) ==> // x(4)x(3)=-x(3)*x(4) ==> // quotient ring from ideal ==> _[1]=x(4)^2 ==> _[2]=x(3)^2 ==> _[3]=x(2)^2 ==> _[4]=x(1)^2 "Alternating variables: [", AltVarStart(), ",", AltVarEnd(), "]."; ==> Alternating variables: [ 1 , 4 ]. kill R; kill ER; ring R = 0,(x(1..4)),(lp(1), dp(3)); // global! def ER = superCommutative(2); // b = 2, e = N setring ER; ER; ==> // coefficients: QQ ==> // number of vars : 4 ==> // block 1 : ordering lp ==> // : names x(1) ==> // block 2 : ordering dp ==> // : names x(2) x(3) x(4) ==> // block 3 : ordering C ==> // noncommutative relations: ==> // x(3)x(2)=-x(2)*x(3) ==> // x(4)x(2)=-x(2)*x(4) ==> // x(4)x(3)=-x(3)*x(4) ==> // quotient ring from ideal ==> _[1]=x(4)^2 ==> _[2]=x(3)^2 ==> _[3]=x(2)^2 "Alternating variables: [", AltVarStart(), ",", AltVarEnd(), "]."; ==> Alternating variables: [ 2 , 4 ]. kill R; kill ER; ring R = 0,(x, y, z),(ds(1), dp(2)); // mixed! def ER = superCommutative(2,3); // b = 2, e = 3 setring ER; ER; ==> // coefficients: QQ ==> // number of vars : 3 ==> // block 1 : ordering ds ==> // : names x ==> // block 2 : ordering dp ==> // : names y z ==> // block 3 : ordering C ==> // noncommutative relations: ==> // zy=-yz ==> // quotient ring from ideal ==> _[1]=y2 ==> _[2]=z2 "Alternating variables: [", AltVarStart(), ",", AltVarEnd(), "]."; ==> Alternating variables: [ 2 , 3 ]. x + 1 + z + y; // ordering on variables: y > z > 1 > x ==> y+z+1+x std(x - x*x*x); ==> _[1]=x std(ideal(x - x*x*x, x*x*z + y, z + y*x*x)); ==> _[1]=y+x2z ==> _[2]=z+x2y ==> _[3]=x kill R; kill ER; ring R = 0,(x, y, z),(ds(1), dp(2)); // mixed! def ER = superCommutative(2, 3, ideal(x - x*x, x*x*z + y, z + y*x*x )); // b = 2, e = 3 setring ER; ER; ==> // coefficients: QQ ==> // number of vars : 3 ==> // block 1 : ordering ds ==> // : names x ==> // block 2 : ordering dp ==> // : names y z ==> // block 3 : ordering C ==> // noncommutative relations: ==> // zy=-yz ==> // quotient ring from ideal ==> _[1]=y+x2z ==> _[2]=z+x2y ==> _[3]=x ==> _[4]=y2 ==> _[5]=z2 "Alternating variables: [", AltVarStart(), ",", AltVarEnd(), "]."; ==> Alternating variables: [ 2 , 3 ]. ```

User manual for Singular version 4.3.2, 2023, generated by texi2html.