changed:
-
An n-dimensional algebra is represented by a tensor $Y=\{ y_{ij}^k \} \ i,j,k =1,2, ... n $ viewed as an operator with two inputs 'i,j' and one output 'k'.
\begin{axiom}
n:=2
T:=CartesianTensor(1,n,EXPR INT)
Y:=unravel(concat concat
[[[script(y,[[i,j],[k]])
for i in 1..n]
for j in 1..n]
for k in 1..n]
)$T
\end{axiom}
Given two vectors 'U' and 'V'
\begin{axiom}
U:=unravel([script(u,[[],[i]]) for i in 1..n])$T
V:=unravel([script(v,[[],[i]]) for i in 1..n])$T
\end{axiom}
the tensor 'Y' operates on their tensor product
\begin{axiom}
UV:=product(U,V)
YUV:=product(Y,UV)
YUV.[1,1,1,1,2]
YUV.[1,1,1,2,1]
YUV.[1,1,2,1,1]
YUV.[1,2,1,1,1]
YUV.[2,1,1,1,1]
Y*U*V
\end{axiom}
An n-dimensional algebra is represented by a tensor
viewed as an operator with two inputs i,j and one output k.
fricas
(1) -> n:=2
fricas
T:=CartesianTensor(1,n,EXPR INT)
Type: Type
fricas
Y:=unravel(concat concat
[[[script(y,[[i,j],[k]])
for i in 1..n]
for j in 1..n]
for k in 1..n]
)$T
Type: CartesianTensor
?(1,
2,
Expression(Integer))
Given two vectors U and V
fricas
U:=unravel([script(u,[[],[i]]) for i in 1..n])$T
Type: CartesianTensor
?(1,
2,
Expression(Integer))
fricas
V:=unravel([script(v,[[],[i]]) for i in 1..n])$T
Type: CartesianTensor
?(1,
2,
Expression(Integer))
the tensor Y operates on their tensor product
fricas
UV:=product(U,V)
Type: CartesianTensor
?(1,
2,
Expression(Integer))
fricas
YUV:=product(Y,UV)
Type: CartesianTensor
?(1,
2,
Expression(Integer))
fricas
YUV.[1,1,1,1,2]
Type: Expression(Integer)
fricas
YUV.[1,1,1,2,1]
Type: Expression(Integer)
fricas
YUV.[1,1,2,1,1]
Type: Expression(Integer)
fricas
YUV.[1,2,1,1,1]
Type: Expression(Integer)
fricas
YUV.[2,1,1,1,1]
Type: Expression(Integer)
fricas
Y*U*V
Type: CartesianTensor
?(1,
2,
Expression(Integer))