login  home  contents  what's new  discussion  bug reports help  links  subscribe  changes  refresh  edit

# Edit detail for SandBoxFrobeniusAlgebra revision 6 of 26

 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 Editor: Bill Page Time: 2011/02/11 21:15:23 GMT-8 Note: take 2

changed:
-An n-dimensional algebra is represented by a tensor $Y=\{ {y^k}_{ji} \} \ i,j,k =1,2, ... n$ viewed as an operator with two inputs 'i,j' and one output 'k'.
An n-dimensional algebra is represented by a tensor $Y=\{ {y_k}^{ji} \} \ i,j,k =1,2, ... n$ viewed as an operator with two inputs 'i,j' and one output 'k'.

changed:
-  [[[script(y,[[i,j],[k]])
[[[script(y,[[k],[j,i]])

Ui:=unravel([script(u,[[i]]) for i in 1..n])$T Vj:=unravel([script(v,[[i]]) for i in 1..n])$T


An n-dimensional algebra is represented by a tensor viewed as an operator with two inputs i,j and one output k.

axiom
n:=2
 (1)
Type: PositiveInteger?
axiom
T:=CartesianTensor(1,n,EXPR INT)
 (2)
Type: Domain
axiom
Yijk:=unravel(concat concat
[[[script(y,[[i,j],[k]])
for k in 1..n]
for j in 1..n]
for i in 1..n]
)$T  (3) Type: CartesianTensor?(1,2,Expression(Integer)) axiom reindex(Yijk,[3,1,2])  (4) Type: CartesianTensor?(1,2,Expression(Integer)) axiom Yijk[1,1,2]  (5) Type: Expression(Integer) axiom Yijk[1,2,1]  (6) Type: Expression(Integer) axiom Yijk[2,1,1]  (7) Type: Expression(Integer) Given two vectors U and V axiom Ui:=unravel([script(u,[[],[i]]) for i in 1..n])$T
 (8)
Type: CartesianTensor?(1,2,Expression(Integer))
axiom
Vj:=unravel([script(v,[[],[i]]) for i in
1..n])$T  (9) Type: CartesianTensor?(1,2,Expression(Integer)) the tensor Y operates on their tensor product to yield a vector W axiom UVij:=product(Ui,Vj)  (10) Type: CartesianTensor?(1,2,Expression(Integer)) axiom UVij[1,2]  (11) Type: Expression(Integer) axiom UVij[2,1]  (12) Type: Expression(Integer) axiom YUV:=product(Yijk,UVij)  (13) Type: CartesianTensor?(1,2,Expression(Integer)) axiom YUV[1,1,1,1,2]  (14) Type: Expression(Integer) axiom YUV[1,1,1,2,1]  (15) Type: Expression(Integer) axiom YUV[1,1,2,1,1]  (16) Type: Expression(Integer) axiom YUV[1,2,1,1,1]  (17) Type: Expression(Integer) axiom YUV[2,1,1,1,1]  (18) Type: Expression(Integer) axiom contract(contract(YUV,1,4),1,3)  (19) Type: CartesianTensor?(1,2,Expression(Integer)) axiom contract(contract(Yijk,1,UVij,1),1,3)  (20) Type: CartesianTensor?(1,2,Expression(Integer)) axiom Wk:=(reindex(Yijk,[3,2,1])*Ui)*Vj  (21) Type: CartesianTensor?(1,2,Expression(Integer)) Take 2 An n-dimensional algebra is represented by a tensor viewed as an operator with two inputs i,j and one output k. axiom Ykji:=unravel(concat concat [[[script(y,[[k],[j,i]]) for i in 1..n] for j in 1..n] for k in 1..n] )$T
 (22)
Type: CartesianTensor?(1,2,Expression(Integer))

axiom
Ui:=unravel([script(u,[[i]]) for i in 1..n])$T  (23) Type: CartesianTensor?(1,2,Expression(Integer)) axiom Vj:=unravel([script(v,[[i]]) for i in 1..n])$T
 (24)
Type: CartesianTensor?(1,2,Expression(Integer))
axiom
contract(contract(Ykji,3,product(Ui,Vj),1),2,3)
 (25)
Type: CartesianTensor?(1,2,Expression(Integer))
axiom
Wk:=(Ykji*Ui)*Vj
 (26)
Type: CartesianTensor?(1,2,Expression(Integer))