packages feed

egison-3.7.13: sample/math/geometry/ThurstonManifold3.egi

(define $N 3)

(define $J
  (generate-tensor
    (match-lambda [integer integer]
      {[[$i ,(+ i N)] 1]
       [[$i ,(- i N)] -1]
       [[_ _] 0]})
    {(* 2 N) (* 2 N)}))

J

(define $δ
  (generate-tensor
    (match-lambda [integer integer]
      {[[$n ,n] 1]
       [[_ _] 0]})
    {(* 2 N) (* 2 N)}))

δ

(define $g δ)

g

(define $T_a_b_c~d
  (+ (* -1 (. J_b_c J_a~d))
     (. J_a_c J_b~d)
     (* 2 (. J_a_b J_c~d))))

(define $S'
  (with-symbols {i j k}
    (let {[[$es $os] (even-and-odd-permutations (* 2 N))]}
      (- (sum (map (lambda [$σ] (foldl . 1 (map (lambda [$k] T_(σ (- (* 2 k) 1))_(σ (* 2 k))_[a_(modulo k N)]~[a_(- k 1)]) (between 1 N)))) es))
         (sum (map (lambda [$σ] (foldl . 1 (map (lambda [$k] T_(σ (- (* 2 k) 1))_(σ (* 2 k))_[a_(modulo k N)]~[a_(- k 1)]) (between 1 N)))) os))))))

S'