## reduce-algebra-developers

 [Reduce-algebra-developers] Matrices with noncommuting elements From: - 2010-01-04 14:02:40 ```Greetings, I need to write some reduce code to perform coalgebra/bialgebra calculations. I would like to be able to construct abstract (tensor) products such as Delta(A)_{n+1}=A_n*A+B_n*C in which * is a tensor product, A_n and B_n are unspecified non-commuting operators and A and C are 2x2 matrices. In practice A_n, B_n, ... depend on parameters. In particular I need to be able to do algebra with these, for example (A_n* A)(B_n*C)=(A_n B_n)*(AC) in which * is again a tensor procuct, and AC is the matrix product of A and C. I have tried various things, all of which fail or cause stack overflows. Do you have any suggestions? For example matrix An,Bn,Cn,Dn; A2:=mat((c,0),(0,b)); B2:=mat((0,0),(sqrt(ab),0)); C2:=mat((0,sqrt(ab)),(0,0)); D2:=mat((a,0),(0,0)); matrix up,down; up:=mat((1,0),(0,0)); down:=mat((0,0),(1,0)); operator An,Bn,Cn,Dn; noncom An,Bn,Cn,Dn; matrix M; load_package linalg; % coproducts in lowest dim'l rep DeltaA:=kronecker_product(A2,A2)+kronecker_product(B2,C2); DeltaB:=kronecker_product(A2,B2)+kronecker_product(B2,D2); % this fails operator dA; dA:=An*A2; for all i let for all j let dA(i)*dA(j)=(An(i)*An(j))*(A2*A2); dA(1)*dA(2)*up; Any suggestions would be welcome. Regards, Jeff Schmidt ```