added:
The algebra 'Y' is commutative if the following tensor
(the commutator) is zero
\begin{axiom}
K:=Y-reindex(Y,[1,3,2])
\end{axiom}
A basis for the ideal defined by the coefficients of the
commutator is given by:
\begin{axiom}
C:=groebner(ravel(K))
\end{axiom}
An algebra is associative if::
Y I = I Y
Y Y
Note: right figure is mirror image of left!
1 2 5 1 4 5
\/ / \ \/
\/ = \/
\ /
6 3
In other words an algebra is associative if and only
if the following (3,1)-tensor
$A=\{ {a_s}^{kji} = {y_s}^{kr} {y_r}^{ji} - {y_s}^{ri} {y_r}^{kj} \}$
is zero.
\begin{axiom}
A := Y*Y - reindex(Y,[1,3,2])*reindex(Y,[1,3,2]); ravel(A)
\end{axiom}
An n-dimensional algebra is represented by a (1,2)-tensor
Y=\{ {y_k}^{ji} \} \ i,j,k =1,2, ... n
viewed as an operator with two inputs i,j and one
output k. For example in 2 dimensions
)library DEXPR
DistributedExpression is now explicitly exposed in frame initial DistributedExpression will be automatically loaded when needed from /var/zope2/var/LatexWiki/DEXPR.NRLIB/DEXPR n:=2
T:=CartesianTensor(1,n, DEXPR INT)
Y:=unravel(concat concat [[[script(y,[[k], [j, i]]) for i in 1..n] for j in 1..n] for k in 1..n] )$T
Given two vectors U=\{ u_i \} and V=\{ v_j \}
U:=unravel([script(u,[[i]]) for i in 1..n])$T
V:=unravel([script(v,[[i]]) for i in 1..n])$T
the tensor Y operates on their tensor product to
yield a vector W=\{ w_k = {y_k}^{ji} u_i v_j \}
W:=contract(contract(Y,3, product(U, V), 1), 2, 3)
or in a more convenient notation:
W:=(Y*U)*V
The algebra Y is commutative if the following tensor
(the commutator) is zero
K:=Y-reindex(Y,[1, 3, 2])
A basis for the ideal defined by the coefficients of the commutator is given by:
C:=groebner(ravel(K))
An algebra is associative if:
Y I = I Y Y Y Note: right figure is mirror image of left! 1 2 5 1 4 5 \/ / \ \/ \/ = \/ \ / 6 3
In other words an algebra is associative if and only if the following (3,1)-tensor A=\{ {a_s}^{kji} = {y_s}^{kr} {y_r}^{ji} - {y_s}^{ri} {y_r}^{kj} \} is zero.
A := Y*Y - reindex(Y,[1, 3, 2])*reindex(Y, [1, 3, 2]); ravel(A)