# Singular

##### 7.7.16.0. IsSCA
Procedure from library `nctools.lib` (see nctools_lib).

Usage:
IsSCA();

Return:
int

Purpose:
returns 1 if basering is a super-commutative algebra and 0 otherwise

Example:
 ```LIB "nctools.lib"; ///////////////////////////////////////////////////////////////////// ring R = 0,(x(1..4)),dp; // commutative if(IsSCA()) { "Alternating variables: [", AltVarStart(), ",", AltVarEnd(), "]."; } else { "Not a super-commutative algebra!!!"; } ==> Not a super-commutative algebra!!! kill R; ///////////////////////////////////////////////////////////////////// ring R = 0,(x(1..4)),dp; def S = nc_algebra(1, 0); setring S; S; // still commutative! ==> // 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: if(IsSCA()) { "Alternating variables: [", AltVarStart(), ",", AltVarEnd(), "]."; } else { "Not a super-commutative algebra!!!"; } ==> Not a super-commutative algebra!!! kill R, S; ///////////////////////////////////////////////////////////////////// ring R = 0,(x(1..4)),dp; list CurrRing = ringlist(R); def ER = ring(CurrRing); setring ER; // R; matrix E = UpOneMatrix(nvars(R)); int i, j; int b = 2; int e = 3; for ( i = b; i < e; i++ ) { for ( j = i+1; j <= e; j++ ) { E[i, j] = -1; } } def S = nc_algebra(E,0); setring S; S; ==> // 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(3)x(2)=-x(2)*x(3) if(IsSCA()) { "Alternating variables: [", AltVarStart(), ",", AltVarEnd(), "]."; } else { "Not a super-commutative algebra!!!"; } ==> Not a super-commutative algebra!!! kill R, ER, S; ///////////////////////////////////////////////////////////////////// ring R = 0,(x(1..4)),dp; def ER = superCommutative(2); // (b = 2, 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(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 if(IsSCA()) { "This is a SCA! Alternating variables: [", AltVarStart(), ",", AltVarEnd(), "]."; } ==> This is a SCA! Alternating variables: [ 2 , 4 ]. else { "Not a super-commutative algebra!!!"; } kill R, ER; ```