|
|
|
last edited 15 years ago by Bill Page |
| 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/15 23:31:45 GMT-8 |
||
| Note: clean up notation | ||
changed: -YYX := YY - reindex(contract(Y,1,Y,2),[3,1,4,2]); ravel(XYY) YYX := YY - reindex(contract(Y,1,Y,2),[3,1,4,2]); ravel(YYX)
An n-dimensional algebra is represented by a (2,1)-tensor
viewed as an operator with two inputs i,j and one
output k. For example in 2 dimensions
(1) -> n:=2
| (1) |
T:=CartesianTensor(1,n, FRAC POLY INT)
| (2) |
Y:T := unravel(concat concat [[[script(y,[[k], [j, i]]) for i in 1..n] for j in 1..n] for k in 1..n] )
![]() | (3) |
Given two vectors
and
P:T := unravel([script(p,[[i]]) for i in 1..n])
| (4) |
Q:T := unravel([script(q,[[i]]) for i in 1..n])
| (5) |
the tensor
operates on their tensor product to
yield a vector
R:=contract(contract(Y,3, product(P, Q), 1), 2, 3)
![]() | (6) |
Pictorially:
Q P
2j 3i
\ /
|
1k
R
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.
R:=(Y*P)*Q
![]() | (7) |
An algebra
is commutative if the tensor
(the commutator) is zero:
Y - X
Y
XY:=Y-reindex(Y,[1, 3, 2])
![]() | (8) |
A basis for the ideal defined by the coefficients of the commutator is given by:
groebner(ravel(XY))
| (9) |
The algebra Y is anti-commutative if the tensor
(the anti-commutator) is zero:
Y + X
Y
XX:=Y+reindex(Y,[1, 3, 2])
![]() | (10) |
A basis for the ideal defined by the coefficients of the anti-commutator is given by:
groebner(ravel(XX))
| (11) |
An algebra is associative if:
Y = Y
Y Y
Note: right figure is mirror image of left!
2 3 6 2 5 6 2 3 4
\/ / \ \/ \ | /
\/ = \/ = \|/
\ / |
4 1 1
In other words an algebra is associative if and only
if the following (3,1)-tensor
is zero.
YY := reindex(reindex(Y,[1, 3, 2])*reindex(Y, [1, 3, 2]), [1, 4, 3, 2])-Y*Y; ravel(YY)
![]() | (12) |
The Jacobi identity requires the following (3,1)-tensor
to be zero:
Y - Y - X
Y Y Y
Y
2 3 6 2 5 6 2 6 3
\ / / \ \ / \ \/
\/ / \ \/ \/\
\/ - \/ - \/
\ / \
4 1 4
YYX := YY - reindex(contract(Y,1, Y, 2), [3, 1, 4, 2]); ravel(YYX)
![]() | (13) |
A scalar product is denoted by the (2,0)-tensor
U:T := unravel(concat [[script(u,[[], [j, i]]) for i in 1..n] for j in 1..n] )
| (14) |
We say that the scalar product is "associative" if the tensor equation holds:
Y = Y
U U
In other words, if the following tensor is zero
![]()
YU := reindex(reindex(U,[2, 1])*reindex(Y, [1, 3, 2]), [3, 2, 1])-U*Y
![]() | (15) |
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.
)expose MCALCFN
MultiVariableCalculusFunctions is now explicitly exposed in frame initial K := jacobian(ravel(YU),concat(map(variables, ravel(Y)))::List Symbol);
yy := transpose matrix [concat(map(variables,ravel(Y)))::List Symbol];
K::OutputForm * yy::OutputForm = 0
![]() | (16) |
The matrix K transforms the coefficients of the tensor
into coefficients of the tensor
. We are looking for
coefficients of the tensor
such that K transforms the
tensor
into
for any
.
A necessary condition for the equation to have a non-trivial
solution is that the matrix K be degenerate.
The scalar product of all 2-dimensional pre-Frobenius algebras is symmetric.
Proof: Consider the determinant of the matrix K above.
Kd:DMP(concat map(variables,ravel(U)), FRAC INT) := factor determinant(K)
![]() | (17) |
The scalar product must also be non-degenerate
Ud:DMP(concat map(variables,ravel(U)), FRAC INT) := determinant [[U[i, j] for j in 1..n] for i in 1..n]
| (18) |
therefore U must be symmetric.
nthFactor(Kd,1)
There are no exposed library operations named nthFactor but there are 3 unexposed operations with that name. Use HyperDoc Browse or issue )display op nthFactor to learn more about the available operations.
Cannot find a definition or applicable library operation named nthFactor with argument type(s) DistributedMultivariatePolynomial([u[;1,1], u[;1, 2], u[;2, 1], u[;2, 2]], Fraction(Integer)) PositiveInteger
Perhaps you should use "@" to indicate the required return type,or "$" to specify which version of the function you need.
All 2-dimensional algebras with associative scalar product are symmetric.
Proof: The basis of the null space of the symmetric
K matrix are all symmetric
YUS:T := unravel(map(x+->subst(x,U[2, 1]=U[1, 2]), ravel YU))
![]() | (19) |
KS := jacobian(ravel(YUS),concat(map(variables, ravel(Y)))::List Symbol);
NS:=nullSpace(KS)
![]() | (20) |
SS:=map((x,y)+->x=y, concat map(variables, ravel Y), entries reduce(+, [p[i]*NS.i for i in 1..#NS]))
![]() | (21) |
YS:T := unravel(map(x+->subst(x,SS), ravel Y))
![]() | (22) |
This is a 4-parameter family of 2-d pre-Frobenius algebras with a given admissible (i.e. symmetric) scalar product.
UASS:T := unravel(map(x+->subst(x,SS), ravel YUS))
![]() | (23) |
J := jacobian(ravel(YU),concat(map(variables, ravel(U)))::List Symbol);
uu := transpose matrix [concat(map(variables,ravel(U)))::List Symbol];
J::OutputForm * uu::OutputForm = 0
![]() | (24) |
The matrix J transforms the coefficients of the tensor
into coefficients of the tensor
. We are looking for
coefficients of the tensor
such that J transforms the
tensor
into
for any
.
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.
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) ];
#generators(%)
| (25) |
A 2-d algebra is pre-Frobenius if it is associative, commutative, anti-commutative or if it satisfies the Jacobi identity.
Proof
in?(JP,ideal ravel YY) -- associative
| (26) |
in?(JP,ideal ravel XY) -- commutative
| (27) |
in?(JP,ideal ravel XX) -- anti-commutative
| (28) |
in?(JP,ideal ravel YYX) -- Jacobi identity
| (29) |