|
3.15 ncalgebra
Syntax:
ncalgebra( matrix_expression C, matrix_expression D )
ncalgebra( number_expression n, matrix_expression D )
ncalgebra( matrix_expression C, poly_expression p )
ncalgebra( number_expression n, poly_expression p )
Type: ring
Purpose:
- Executed in the basering
r , say, in k variables
creates the
non-commutative extension of r subject to relations
where and should be organized into two strictly upper triangular matrices C with entries
from the ground field of r
and D with polynomial entries
from r .
Remark:
- At present, we do not perform checks of leading monomial condition
and non-degeneracy conditions (see G-algebras), while setting an algebra.
Example:
| ring r1=(0,Q),(x,y,z),Dp;
minpoly=Q^4+Q^2+1;
matrix C[3][3];
matrix D[3][3];
C[1,2]=Q2;
C[1,3]=1/Q2;
C[2,3]=Q2;
D[1,2]=-Q*z;
D[1,3]=1/Q*y;
D[2,3]=-Q*x;
ncalgebra(C,D);
// it is quantum deformation U'_q(so_3),
// with q=Q^2 specialized at the 3rd root of unity
r1;
==> // characteristic : 0
==> // 1 parameter : Q
==> // minpoly : (Q4+Q2+1)
==> // number of vars : 3
==> // block 1 : ordering Dp
==> // : names x y z
==> // block 2 : ordering C
==> // noncommutative relations:
==> // yx=(Q2)*xy+(-Q)*z
==> // zx=(-Q2-1)*xz+(-Q3-Q)*y
==> // zy=(Q2)*yz+(-Q)*x
kill r1;
ring r2=0,(Xa,Xb,Xc,Ya,Yb,Yc,Ha,Hb),dp;
matrix d[8][8];
d[1,2]=-Xc; d[1,4]=-Ha; d[1,6]=Yb;
d[1,7]=2*Xa; d[1,8]=-Xa; d[2,5]=-Hb;
d[2,6]=-Ya; d[2,7]=-Xb; d[2,8]=2*Xb;
d[3,4]=Xb; d[3,5]=-Xa; d[3,6]=-Ha-Hb;
d[3,7]=Xc; d[3,8]=Xc; d[4,5]=Yc;
d[4,7]=-2*Ya; d[4,8]=Ya; d[5,7]=Yb;
d[5,8]=-2*Yb; d[6,7]=-Yc; d[6,8]=-Yc;
ncalgebra(1,d);
// it is U(sl_3)
r2;
==> // characteristic : 0
==> // number of vars : 8
==> // block 1 : ordering dp
==> // : names Xa Xb Xc Ya Yb Yc Ha Hb
==> // block 2 : ordering C
==> // noncommutative relations:
==> // XbXa=Xa*Xb-Xc
==> // YaXa=Xa*Ya-Ha
==> // YcXa=Xa*Yc+Yb
==> // HaXa=Xa*Ha+2*Xa
==> // HbXa=Xa*Hb-Xa
==> // YbXb=Xb*Yb-Hb
==> // YcXb=Xb*Yc-Ya
==> // HaXb=Xb*Ha-Xb
==> // HbXb=Xb*Hb+2*Xb
==> // YaXc=Xc*Ya+Xb
==> // YbXc=Xc*Yb-Xa
==> // YcXc=Xc*Yc-Ha-Hb
==> // HaXc=Xc*Ha+Xc
==> // HbXc=Xc*Hb+Xc
==> // YbYa=Ya*Yb+Yc
==> // HaYa=Ya*Ha-2*Ya
==> // HbYa=Ya*Hb+Ya
==> // HaYb=Yb*Ha+Yb
==> // HbYb=Yb*Hb-2*Yb
==> // HaYc=Yc*Ha-Yc
==> // HbYc=Yc*Hb-Yc
kill r2;
ring r3=0,(a,b,c,d),lp;
matrix c[4][4];
c[1,2]=1; c[1,3]=3; c[1,4]=-2;
c[2,3]=-1; c[2,4]=-3; c[3,4]=1;
ncalgebra(c,0);
// it is some quasi--commutative algebra
r3;
==> // characteristic : 0
==> // number of vars : 4
==> // block 1 : ordering lp
==> // : names a b c d
==> // block 2 : ordering C
==> // noncommutative relations:
==> // ca=3ac
==> // da=-2ad
==> // cb=-bc
==> // db=-3bd
kill r3;
ring r4=0,(t,u,v,w),dp;
ncalgebra(-1,0);
// it is anticommutative algebra
r4;
==> // characteristic : 0
==> // number of vars : 4
==> // block 1 : ordering dp
==> // : names t u v w
==> // block 2 : ordering C
==> // noncommutative relations:
==> // ut=-tu
==> // vt=-tv
==> // wt=-tw
==> // vu=-uv
==> // wu=-uw
==> // wv=-vw
kill r4;
|
|