Function: algcentralproj
Section: algebras
C-Name: alg_centralproj
Prototype: GGD0,L,
Help: algcentralproj(al,z,{maps=0}): projections of the algebra al on the
 orthogonal central idempotents z[i].
Doc: Given a table algebra \var{al} output by \tet{algtableinit} and a
 \typ{VEC} $\var{z}=[z_1,\dots,z_n]$ of orthogonal central idempotents,
 returns a \typ{VEC} $[al_1,\dots,al_n]$ of algebras such that
 $al_i = z_i\, al$. If $\var{maps}=1$, each $al_i$ is a \typ{VEC}
 $[quo,proj,lift]$ where \var{quo} is the quotient algebra, \var{proj} is a
 \typ{MAT} representing the projection onto this quotient and \var{lift} is a
 \typ{MAT} representing a lift.

 A simple example: $\F_2\times \F_4$, generated by~$1=(1,1)$, $e=(1,0)$
 and~$x$ such that~$x^2+x+1=0$. We have~$e^2=e$, $x^2=x+1$ and~$ex=0$.
 \bprog
 ? mt = [matid(3), [0,0,0; 1,1,0; 0,0,0], [0,0,1; 0,0,0; 1,0,1]];
 ? A = algtableinit(mt,2);
 ? e = [0,1,0]~;
 ? e2 = algsub(A,[1,0,0]~,e);
 ? [a,a2] = algcentralproj(A,[e,e2]);
 ? algdim(a)
 %6 = 1
 ? algdim(a2)
 %7 = 2
 @eprog
