[894057] | 1 | LIB "tst.lib"; tst_init(); |
---|
| 2 | LIB "nctools.lib"; |
---|
| 3 | // ------- first example: C, D are matrices -------- |
---|
| 4 | ring r1 = (0,Q),(x,y,z),Dp; |
---|
| 5 | minpoly = rootofUnity(6); |
---|
| 6 | matrix C[3][3]; |
---|
| 7 | matrix D[3][3]; |
---|
| 8 | C[1,2]=Q2; C[1,3]=1/Q2; C[2,3]=Q2; |
---|
| 9 | D[1,2]=-Q*z; D[1,3]=1/Q*y; D[2,3]=-Q*x; |
---|
| 10 | def S=nc_algebra(C,D); |
---|
| 11 | // this algebra is a quantum deformation U'_q(so_3), |
---|
| 12 | // where Q is a 6th root of unity |
---|
| 13 | setring S;S; |
---|
| 14 | kill r1,S; |
---|
| 15 | // ----- second example: number n=1, D is a matrix |
---|
| 16 | ring r2=0,(Xa,Xb,Xc,Ya,Yb,Yc,Ha,Hb),dp; |
---|
| 17 | matrix d[8][8]; |
---|
| 18 | d[1,2]=-Xc; d[1,4]=-Ha; d[1,6]=Yb; d[1,7]=2*Xa; |
---|
| 19 | d[1,8]=-Xa; d[2,5]=-Hb; d[2,6]=-Ya; d[2,7]=-Xb; |
---|
| 20 | d[2,8]=2*Xb; d[3,4]=Xb; d[3,5]=-Xa; d[3,6]=-Ha-Hb; |
---|
| 21 | d[3,7]=Xc; d[3,8]=Xc; d[4,5]=Yc; d[4,7]=-2*Ya; |
---|
| 22 | d[4,8]=Ya; d[5,7]=Yb; d[5,8]=-2*Yb; |
---|
| 23 | d[6,7]=-Yc; d[6,8]=-Yc; |
---|
| 24 | def S=nc_algebra(1,d); // this algebra is U(sl_3) |
---|
| 25 | setring S;S; |
---|
| 26 | kill r2,S; |
---|
| 27 | // ---- third example: C is a matrix, p=0 is a poly |
---|
| 28 | ring r3=0,(a,b,c,d),lp; |
---|
| 29 | matrix c[4][4]; |
---|
| 30 | c[1,2]=1; c[1,3]=3; c[1,4]=-2; |
---|
| 31 | c[2,3]=-1; c[2,4]=-3; c[3,4]=1; |
---|
| 32 | def S=nc_algebra(c,0); // it is a quasi--commutative algebra |
---|
| 33 | setring S;S; |
---|
| 34 | kill r3,S; |
---|
| 35 | // -- fourth example : number n = -1, poly p = 3w |
---|
| 36 | ring r4=0,(u,v,w),dp; |
---|
| 37 | def S=nc_algebra(-1,3w); |
---|
| 38 | setring S;S; |
---|
| 39 | kill r4,S; |
---|
| 40 | tst_status(1);$ |
---|