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

Edit detail for Snake Relation revision 1 of 11

1 2 3 4 5 6 7 8 9 10 11
Editor: Bill Page
Time: 2011/04/21 20:39:17 GMT-7
Note: dimension

changed:
-
Non-degeneracy of the pairing

Ref:

- http://mat.uab.es/~kock/TQFT.html

  Frobenius algebras and 2D topological quantum field theories

  Section 2.3.11, page 112.

  *Joachim Kock*

We need the Axiom LinearOperator library.
\begin{axiom}
)library MONAL PROP LIN
\end{axiom}

Use the following macros for convenient notation
\begin{axiom}
-- summation
macro Σ(x,i,n)==reduce(+,[x for i in n])
-- list
macro Ξ(f,i,n)==[f for i in n]
-- subscript
macro sb == subscript
\end{axiom}

𝐋 is the domain of 4-dimensional linear operators
\begin{axiom}
dim:=2
macro ℒ == List
macro ℚ == Expression Integer
𝐋 := LinearOperator(dim, OVAR [], ℚ)
𝐞:ℒ 𝐋      := basisVectors()
𝐝:ℒ 𝐋      := basisForms()
I:𝐋:=[1]   -- identity for composition
X:𝐋:=[2,1] -- twist
\end{axiom}

A scalar product (pairing) is denoted by
\begin{axiom}
U:=Σ(Σ(script('u,[[],[i,j]])*𝐝.i*𝐝.j, i,1..dim), j,1..dim)
Um:=matrix Ξ(Ξ((𝐞.i*𝐞.j)/U, i,1..dim), j,1..dim)
\end{axiom}

Co-pairing

Solve the "snake relation" as a system of linear equations.
\begin{axiom}
Ω:𝐋:=Σ(Σ(script('u,[[i,j]])*𝐞.i*𝐞.j, i,1..dim), j,1..dim)
d1:=(I*Ω)/(U*I);
d2:=(Ω*I)/(I*U);
equate(f,g)==map((x,y)+->(x=y),ravel f, ravel g);
eq1:=equate(d1,I);
eq2:=equate(d2,I);
snake:=solve(concat(eq1,eq2),concat Ξ(Ξ(script('u,[[i,j]]), i,1..dim), j,1..dim));
if #snake ~= 1 then error "no solution"
Ω:=eval(Ω,snake(1))
matrix Ξ(Ξ(Ω/(𝐝.i*𝐝.j), i,1..dim), j,1..dim)
-- compare
inverse map(retract,Um)
\end{axiom}

Check "dimension": It depends on parameters!
\begin{axiom}

d:𝐋:=
    (   Ω    )  /
    (   U    )

test
    (  I Ω   )  /
    (   U I  )  =  I

test
    (   Ω I  )  /
    (  I U   )  =  I

\end{axiom}


Non-degeneracy of the pairing

Ref:

We need the Axiom LinearOperator? library.

fricas
(1) -> )library MONAL PROP LIN
)library cannot find the file LIN. Monoidal is now explicitly exposed in frame initial Monoidal will be automatically loaded when needed from /var/aw/var/LatexWiki/MONAL.NRLIB/MONAL Prop is now explicitly exposed in frame initial Prop will be automatically loaded when needed from /var/aw/var/LatexWiki/PROP.NRLIB/PROP

Use the following macros for convenient notation

fricas
-- summation
macro Σ(x,i,n)==reduce(+,[x for i in n])
Type: Void
fricas
-- list
macro Ξ(f,i,n)==[f for i in n]
Type: Void
fricas
-- subscript
macro sb == subscript
Type: Void

𝐋 is the domain of 4-dimensional linear operators

fricas
dim:=2

\label{eq1}2(1)
Type: PositiveInteger?
fricas
macro ℒ == List
Type: Void
fricas
macro ℚ == Expression Integer
Type: Void
fricas
𝐋 := LinearOperator(dim, OVAR [], ℚ)
There are no library operations named LinearOperator Use HyperDoc Browse or issue )what op LinearOperator to learn if there is any operation containing " LinearOperator " in its name.
Cannot find a definition or applicable library operation named LinearOperator with argument type(s) PositiveInteger Type Type
Perhaps you should use "@" to indicate the required return type, or "$" to specify which version of the function you need.

A scalar product (pairing) is denoted by

fricas
U:=Σ(Σ(script('u,[[],[i,j]])*𝐝.i*𝐝.j, i,1..dim), j,1..dim)
There are no library operations named 𝐝 Use HyperDoc Browse or issue )what op 𝐝 to learn if there is any operation containing " 𝐝 " in its name. Cannot find a definition or applicable library operation named 𝐝 with argument type(s) PositiveInteger
Perhaps you should use "@" to indicate the required return type, or "$" to specify which version of the function you need. FriCAS will attempt to step through and interpret the code. There are no library operations named 𝐝 Use HyperDoc Browse or issue )what op 𝐝 to learn if there is any operation containing " 𝐝 " in its name.
Cannot find a definition or applicable library operation named 𝐝 with argument type(s) PositiveInteger
Perhaps you should use "@" to indicate the required return type, or "$" to specify which version of the function you need.

Co-pairing

Solve the "snake relation" as a system of linear equations.

fricas
Ω:𝐋:=Σ(Σ(script('u,[[i,j]])*𝐞.i*𝐞.j, i,1..dim), j,1..dim)
𝐋 is not a valid type.

Check "dimension": It depends on parameters!

fricas
d:𝐋:=
    (   Ω    )  /
    (   U    )
𝐋 is not a valid type.