SandBoxFrobeniusAlgebra
last edited 14 years ago by Bill Page

Edit detail for SandBoxFrobeniusAlgebra revision 22 of 26

Editor: Bill Page
Time: 2011年02月17日 17:22:33 GMT-8
Note: Y-forms: deer

changed:
- Y ) ( Y
 Y ) ( Y
changed:
- i j j i
- \/ 0 0 \/
- \ / \ / \ /
- e f \ / f e
- \/ \ / \/
- \ / \ /
- \ / \ /
- \ / \ /
- 0 0
 i j j i
 \/ \/
 \ /\ /\ /
 e f \ / f e
 \/ \ / \/
 \ / \ /
 f / \ f
 \/ \/
changed:
-LS = \{ {y^f}_{fe} {y^e}_{ji} \}
-\end{equation}
-
-\begin{axiom}
-LS=contract(Y*Y,1,2)
-RS=reindex(contract(reindex(Y,[1,3,2])*reindex(Y,[1,3,2]),1,2),[2,1])
RS = \{ {y^f}_{fe} {y^e}_{ji} \}
\end{equation}
\begin{axiom}
LS:=contract(Y*Y,1,2)
RS:=reindex(contract(reindex(Y,[1,3,2])*reindex(Y,[1,3,2]),1,2),[2,1])
added:
Left and right deer::
 LD RD
 \ /\/ \/\ /
 Y /\ /\ Y
 Y ) ( Y
 \/ \/
 i j i j
 \ /\ / \ /\ /
 \ f \ / \ / f /
 \/ \/ \/ \/
 \ /\ /\ /
 e / \ / \ e
 \/ \ / \/
 \ / \ /
 f / \ f
 \/ \/
\begin{equation}
LD = \{ {y^e}_{if} {y^f}_{ej} \} \
RD = \{ {y^f}_{ie} {y^e}_{fj} \}
\end{equation}
\begin{axiom}
LD:=contract(Y*Y,1,3)
RD:=reindex(contract(reindex(Y,[1,3,2])*reindex(Y,[1,3,2]),1,3),[2,1])
test(LD=RD)
\end{axiom}

References

See also:

An n-dimensional algebra is represented by a (2,1)-tensor Y=\{ {y^k}_{ij} \ i,j,k =1,2, ... n \} viewed as an operator with two inputs i,j and one output k. For example in 2 dimensions

axiom
n:=2
Type: PositiveInteger?
axiom
T:=CartesianTensor(1,n,FRAC POLY INT)
Type: Domain
axiom
Y:T := unravel(concat concat
 [[[script(y,[[i,j],[k]])
 for i in 1..n]
 for j in 1..n]
 for k in 1..n]
 )
Type: CartesianTensor?(1,2,Fraction(Polynomial(Integer)))

Given two vectors P=\{ p^i \} and Q=\{ q^j \}

axiom
P:T := unravel([script(p,[[],[i]]) for i in 1..n])
Type: CartesianTensor?(1,2,Fraction(Polynomial(Integer)))
axiom
Q:T := unravel([script(q,[[],[i]]) for i in 1..n])
Type: CartesianTensor?(1,2,Fraction(Polynomial(Integer)))

the tensor Y operates on their tensor product to yield a vector R=\{ r_k = {y^k}_{ij} p^i q^j \}

axiom
R:=contract(contract(Y,3,product(P,Q),1),2,3)
Type: CartesianTensor?(1,2,Fraction(Polynomial(Integer)))

Pictorially:

 P Q
 Y
 R
 or more explicitly
 Pi Qj
 \/
 \
 Rk

In Axiom we may use the more convenient tensor inner product denoted by * that combines tensor product with a contraction on the last index of the first tensor and the first index of the second tensor.

axiom
R:=(Y*P)*Q
Type: CartesianTensor?(1,2,Fraction(Polynomial(Integer)))

An algebra is said to be associative if:

 Y = Y
 Y Y

Note: the right hand side of the equation above is implicitly the mirror image of the left hand side:

 i j k i j k i j k
 \ | / \/ / \ \/
 \ | / \ / \ /
 \|/ = e k - i e
 | \/ \/
 | \ /
 l l l

This requires that the following (3,1)-tensor

(associator) is zero.
axiom
YY := reindex(reindex(Y,[1,3,2])*reindex(Y,[1,3,2]),[1,4,3,2])-Y*Y; ravel(YY)
\label{eq9}\begin{array}{@{}l} \displaystyle \left[{-{{y_{1, \: 1}^{2}}\ {y_{2, \: 1}^{1}}}+{{y_{1, \: 1}^{2}}\ {y_{1, \: 2}^{1}}}}, \:{{{y_{1, \: 1}^{2}}\ {y_{2, \: 2}^{1}}}-{{y_{2, \: 1}^{1}}\ {y_{2, \: 1}^{2}}}}, \right. \ \ \displaystyle \left.\:{{{y_{1, \: 2}^{1}}\ {y_{2, \: 1}^{2}}}+{{\left(-{y_{1, \: 2}^{2}}+{y_{1, \: 1}^{1}}\right)}\ {y_{2, \: 1}^{1}}}-{{y_{1, \: 1}^{1}}\ {y_{1, \: 2}^{1}}}}, \: \right. \ \ \displaystyle \left.{-{{y_{2, \: 1}^{1}}\ {y_{2, \: 2}^{2}}}+{{\left({y_{2, \: 1}^{2}}-{y_{1, \: 1}^{1}}\right)}\ {y_{2, \: 2}^{1}}}+{{y_{2, \: 1}^{1}}^2}}, \: \right. \ \ \displaystyle \left.{-{{y_{1, \: 1}^{2}}\ {y_{2, \: 2}^{1}}}+{{y_{1, \: 2}^{1}}\ {y_{1, \: 2}^{2}}}}, \:{{\left(-{y_{2, \: 1}^{2}}+{y_{1, \: 2}^{2}}\right)}\ {y_{2, \: 2}^{1}}}, \: \right. \ \ \displaystyle \left.{{{y_{1, \: 2}^{1}}\ {y_{2, \: 2}^{2}}}+{{\left(-{y_{1, \: 2}^{2}}+{y_{1, \: 1}^{1}}\right)}\ {y_{2, \: 2}^{1}}}-{{y_{1, \: 2}^{1}}^2}}, \: \right. \ \ \displaystyle \left.{{\left({y_{2, \: 1}^{1}}-{y_{1, \: 2}^{1}}\right)}\ {y_{2, \: 2}^{1}}}, \:{-{{y_{1, \: 1}^{2}}\ {y_{2, \: 1}^{2}}}+{{y_{1, \: 1}^{2}}\ {y_{1, \: 2}^{2}}}}, \: \right. \ \ \displaystyle \left.{{{y_{1, \: 1}^{2}}\ {y_{2, \: 2}^{2}}}-{{y_{2, \: 1}^{2}}^2}+{{y_{1, \: 1}^{1}}\ {y_{2, \: 1}^{2}}}-{{y_{1, \: 1}^{2}}\ {y_{2, \: 1}^{1}}}}, \: \right. \ \ \displaystyle \left.{{{y_{1, \: 1}^{2}}\ {y_{2, \: 1}^{1}}}-{{y_{1, \: 1}^{2}}\ {y_{1, \: 2}^{1}}}}, \:{-{{y_{1, \: 1}^{2}}\ {y_{2, \: 2}^{1}}}+{{y_{2, \: 1}^{1}}\ {y_{2, \: 1}^{2}}}}, \right. \ \ \displaystyle \left.\:{-{{y_{1, \: 1}^{2}}\ {y_{2, \: 2}^{2}}}+{{y_{1, \: 2}^{2}}^2}-{{y_{1, \: 1}^{1}}\ {y_{1, \: 2}^{2}}}+{{y_{1, \: 1}^{2}}\ {y_{1, \: 2}^{1}}}}, \: \right. \ \ \displaystyle \left.{{{\left(-{y_{2, \: 1}^{2}}+{y_{1, \: 2}^{2}}\right)}\ {y_{2, \: 2}^{2}}}+{{y_{1, \: 2}^{1}}\ {y_{2, \: 1}^{2}}}-{{y_{1, \: 2}^{2}}\ {y_{2, \: 1}^{1}}}}, \: \right. \ \ \displaystyle \left.{{{y_{1, \: 1}^{2}}\ {y_{2, \: 2}^{1}}}-{{y_{1, \: 2}^{1}}\ {y_{1, \: 2}^{2}}}}, \:{{\left({y_{2, \: 1}^{2}}-{y_{1, \: 2}^{2}}\right)}\ {y_{2, \: 2}^{1}}}\right] (9)
Type: List(Fraction(Polynomial(Integer)))

The algebra Y is commutative if:

 Y = Y
 i j i j j i
 \ / = \/ - \/
 | \ /
 k k k

This requires that the following (2,1)-tensor

(commutator) is zero.
axiom
YC:=Y-reindex(Y,[1,3,2])
Type: CartesianTensor?(1,2,Fraction(Polynomial(Integer)))

A basis for the ideal defined by the coefficients of the commutator is given by:

axiom
groebner(ravel(YC))
Type: List(Polynomial(Integer))

The algebra Y is anti-commutative if:

 Y = -Y
 i j i j j i
 \ / = \/ = \/
 | \ /
 k k k

This requires that the following (2,1)-tensor

(anti-commutator) is zero.
axiom
YA:=Y+reindex(Y,[1,3,2])
Type: CartesianTensor?(1,2,Fraction(Polynomial(Integer)))

A basis for the ideal defined by the coefficients of the commutator is given by:

axiom
groebner(ravel(YA))
Type: List(Polynomial(Integer))

The Jacobi identity is:

 X
 Y = Y + Y
 Y Y Y
 i j k i j k i j k i j k
 \ | / \ / / \ \ / \ \ /
 \ | / \ / / \ \ / \ 0
 \ | / \/ / \ \/ \/ \
 \ | / \ / \ / \ \
 \|/ = e k - i e - e j
 | \/ \/ \/
 | \ / /
 l l l l

An algebra satisfies the Jacobi identity if and only if the following (3,1)-tensor

is zero.

axiom
YX := YY - reindex(contract(Y,1,Y,2),[3,1,4,2]); ravel(YX)
Type: List(Fraction(Polynomial(Integer)))

A scalar product is denoted by the (2,0)-tensor U = \{ u_{ij} \}

axiom
U:T := unravel(concat
 [[script(u,[[],[j,i]])
 for i in 1..n]
 for j in 1..n]
 )
Type: CartesianTensor?(1,2,Fraction(Polynomial(Integer)))

Definition 1

We say that the scalar product is associative if the tensor equation holds:

 Y = Y
 U U

In other words, if the (3,0)-tensor:

 i j k i j k i j k
 \ | / \/ / \ \/
 \|/ = \ / - \ /
 0 0 0

(three-point function) is zero.

axiom
YU := reindex(reindex(U,[2,1])*reindex(Y,[1,3,2]),[3,2,1])-U*Y
Type: CartesianTensor?(1,2,Fraction(Polynomial(Integer)))

Definition 2

An algebra with a non-degenerate associative scalar product is called pre-Frobenius.

We may consider the problem where multiplication Y is given, and look for all associative scalar products U = U(Y) or we may consider an scalar product U as given, and look for all algebras Y=Y(U) such that the scalar product is associative.

This problem can be solved using linear algebra.

axiom
)expose MCALCFN
MultiVariableCalculusFunctions is now explicitly exposed in frame initial K := jacobian(ravel(YU),concat(map(variables,ravel(Y)))::List Symbol);
Type: Matrix(Fraction(Polynomial(Integer)))
axiom
yy := transpose matrix [concat(map(variables,ravel(Y)))::List Symbol];
Type: Matrix(Polynomial(Integer))
axiom
K::OutputForm * yy::OutputForm = 0
Type: Equation(OutputForm?)

The matrix K transforms the coefficients of the tensor Y into coefficients of the tensor \Phi. We are looking for coefficients of the tensor U such that K transforms the tensor Y into \Phi=0 for any Y.

A necessary condition for the equation to have a non-trivial solution is that the matrix K be degenerate.

Theorem 1

All 2-dimensional pre-Frobenius algebras are symmetric.

Proof: Consider the determinant of the matrix K above.

axiom
Kd := factor(determinant(K)::DMP(concat map(variables,ravel(U)),FRAC INT))
Type: Factored(DistributedMultivariatePolynomial?([*002u11,*002u12,*002u21,*002u22],Fraction(Integer)))

The scalar product must also be non-degenerate

axiom
Ud:DMP(concat map(variables,ravel(U)),FRAC INT) := determinant [[U[i,j] for j in 1..n] for i in 1..n]
Type: DistributedMultivariatePolynomial?([*002u11,*002u12,*002u21,*002u22],Fraction(Integer))

therefore U must be symmetric.

axiom
nthFactor(Kd,1)
Type: DistributedMultivariatePolynomial?([*002u11,*002u12,*002u21,*002u22],Fraction(Integer))
axiom
US:T := unravel(map(x+->subst(x,U[2,1]=U[1,2]),ravel U))
Type: CartesianTensor?(1,2,Fraction(Polynomial(Integer)))

Theorem 2

All 2-dimensional algebras with associative scalar product are commutative.

Proof: The basis of the null space of the symmetric K matrix are all symmetric

axiom
YUS:T := reindex(reindex(US,[2,1])*reindex(Y,[1,3,2]),[3,2,1])-US*Y
Type: CartesianTensor?(1,2,Fraction(Polynomial(Integer)))
axiom
KS := jacobian(ravel(YUS),concat(map(variables,ravel(Y)))::List Symbol);
Type: Matrix(Fraction(Polynomial(Integer)))
axiom
NS:=nullSpace(KS)
Type: List(Vector(Fraction(Polynomial(Integer))))
axiom
SS:=map((x,y)+->x=y,concat map(variables,ravel Y),
 entries reduce(+,[p[i]*NS.i for i in 1..#NS]))
Type: List(Equation(Fraction(Polynomial(Integer))))
axiom
YS:T := unravel(map(x+->subst(x,SS),ravel Y))
Type: CartesianTensor?(1,2,Fraction(Polynomial(Integer)))

This defines a 4-parameter family of 2-d pre-Frobenius algebras

axiom
test(unravel(map(x+->subst(x,SS),ravel YUS))$T=0*YU)
Type: Boolean

Alternatively we may consider

axiom
J := jacobian(ravel(YU),concat(map(variables,ravel(U)))::List Symbol);
Type: Matrix(Fraction(Polynomial(Integer)))
axiom
uu := transpose matrix [concat(map(variables,ravel(U)))::List Symbol];
Type: Matrix(Polynomial(Integer))
axiom
J::OutputForm * uu::OutputForm = 0
Type: Equation(OutputForm?)

The matrix J transforms the coefficients of the tensor U into coefficients of the tensor \Phi. We are looking for coefficients of the tensor Y such that J transforms the tensor U into \Phi=0 for any U.

A necessary condition for the equation to have a non-trivial solution is that all 70 of the 4x4 sub-matrices of J are degenerate. To this end we can form the polynomial ideal of the determinants of these sub-matrices.

axiom
JP:=ideal concat concat concat
 [[[[ determinant(
 matrix([row(J,i1),row(J,i2),row(J,i3),row(J,i4)]))
 for i4 in (i3+1)..maxRowIndex(J) ] 
 for i3 in (i2+1)..(maxRowIndex(J)-1) ]
 for i2 in (i1+1)..(maxRowIndex(J)-2) ]
 for i1 in minRowIndex(J)..(maxRowIndex(J)-3) ];
Type: PolynomialIdeals?(Fraction(Integer),IndexedExponents?(Symbol),Symbol,Polynomial(Fraction(Integer)))
axiom
#generators(%)
Type: PositiveInteger?

Theorem 3

If a 2-d algebra is associative, commutative, anti-commutative or if it satisfies the Jacobi identity then it is a pre-Frobenius algebra.

Proof

axiom
in?(JP,ideal ravel YY) -- associative
Type: Boolean
axiom
in?(JP,ideal ravel YC) -- commutative
Type: Boolean
axiom
in?(JP,ideal ravel YA) -- anti-commutative
Type: Boolean
axiom
in?(JP,ideal ravel YX) -- Jacobi identity
Type: Boolean

Y-forms

Left snail and right snail:

 LS RS
 Y A A Y
 Y ) ( Y
 U U
 i j j i
 \/ \/
 \ /\ /\ /
 e f \ / f e
 \/ \ / \/
 \ / \ /
 f / \ f
 \/ \/

axiom
LS:=contract(Y*Y,1,2)
Type: CartesianTensor?(1,2,Fraction(Polynomial(Integer)))
axiom
RS:=reindex(contract(reindex(Y,[1,3,2])*reindex(Y,[1,3,2]),1,2),[2,1])
Type: CartesianTensor?(1,2,Fraction(Polynomial(Integer)))
axiom
test(LS=RS)
Type: Boolean

Left and right deer:

 LD RD
 \ /\/ \/\ /
 Y /\ /\ Y
 Y ) ( Y
 \/ \/
 i j i j
 \ /\ / \ /\ /
 \ f \ / \ / f /
 \/ \/ \/ \/
 \ /\ /\ /
 e / \ / \ e
 \/ \ / \/
 \ / \ /
 f / \ f
 \/ \/

axiom
LD:=contract(Y*Y,1,3)
Type: CartesianTensor?(1,2,Fraction(Polynomial(Integer)))
axiom
RD:=reindex(contract(reindex(Y,[1,3,2])*reindex(Y,[1,3,2]),1,3),[2,1])
Type: CartesianTensor?(1,2,Fraction(Polynomial(Integer)))
axiom
test(LD=RD)
Type: Boolean

AltStyle によって変換されたページ (->オリジナル) /