Documentation

TauCeti.KnotTheory.Khovanov.Resolution.Cube

The Khovanov cube of resolutions of a planar code #

The vertices of the cube of resolutions of a PD-code D with n crossings are the subsets S ⊆ Fin n, where S is the set of crossings given the B-smoothing; the corresponding native state TauCeti.PDCode.cubeState S is false exactly on S. The edge from S to S ∪ {a} changes the smoothing at the crossing a. When D is planar, every such edge merges two circles or splits one, so it carries the saddle map TauCeti.PDCode.resolutionEdgeMap between the resolved-circle tensors, of quantum degree -1, and every square face of saddle maps commutes.

Shifting the vertex S by its height |S|, the vertex V(S)⟨|S|⟩ in quantum degree j is the homogeneous piece of degree j - |S| of the circle tensor of S. Along each edge the height grows by one, which compensates the quantum degree -1 of the saddle map, so for each quantum degree j the degree-j pieces form a commutative cube of R-modules, TauCeti.PDCode.resolutionCube. Its signed totalization is the degree-j component of the unnormalized Khovanov complex, Bar-Natan's bracket ⟦D⟧, whose term in cochain degree r is ⊕[|S| = r] V(S)⟨r⟩. The family of these cochain complexes, indexed by the quantum degree, is TauCeti.PDCode.khovanovBracket. The normalized Khovanov complex of an oriented code with n₊ positive and n₋ negative crossings is obtained from it by lowering the cochain degree by n₋ and raising the quantum degree by n₊ - 2n₋.

Main definitions #

All in the namespace TauCeti.PDCode:

Main results #

References #

The states of the vertices #

def TauCeti.PDCode.cubeState {n : ℕ} (S : Finset (Fin n)) :
Fin n → Bool

The state of the vertex S of the cube of resolutions: it selects the B-smoothing (false) exactly at the crossings of S, and the A-smoothing (true) at the others.

Instances For
    theorem TauCeti.PDCode.cubeState_apply {n : ℕ} (S : Finset (Fin n)) (i : Fin n) :
    cubeState S i = decide (i ∉ S)

    The defining formula of the state of a vertex.

    @[simp]
    theorem TauCeti.PDCode.cubeState_map_apply {n m : ℕ} (e : Fin n ≃ Fin m) (S : Finset (Fin n)) (i : Fin n) :

    The state of the vertex S.map e of a cube indexed by Fin m, read along a bijection e : Fin n ≃ Fin m, is the state of the vertex S.

    @[simp]
    theorem TauCeti.PDCode.cubeState_eq_false_iff {n : ℕ} {S : Finset (Fin n)} {i : Fin n} :

    The state of the vertex S selects the B-smoothing exactly at the crossings of S.

    @[simp]
    theorem TauCeti.PDCode.cubeState_eq_true_iff {n : ℕ} {S : Finset (Fin n)} {i : Fin n} :
    cubeState S i = true ↔ i ∉ S

    The state of the vertex S selects the A-smoothing exactly away from S.

    @[simp]
    theorem TauCeti.PDCode.cubeState_compl {n : ℕ} (S : Finset (Fin n)) (i : Fin n) :

    The state of the complementary vertex Sᶜ is the complementary state: it exchanges the A- and B-smoothings at every crossing.

    theorem TauCeti.PDCode.filter_cubeState_eq_false {n : ℕ} (S : Finset (Fin n)) :
    {i : Fin n | cubeState S i = false} = S

    The set of B-smoothings of the state of the vertex S is S.

    @[simp]

    A cube vertex S has normalized cochain degree |S| - n₋.

    @[simp]

    A cube vertex S has quantum shift |S| + n₊ - 2n₋.

    The vertex S is recovered from its state.

    The vertices of the cube correspond bijectively to the states: the state s is the state of the vertex formed by its B-smoothings.

    theorem TauCeti.PDCode.cubeState_eq_of_covBy {n : ℕ} {S T : Finset (Fin n)} (h : S ⋖ T) {a : Fin n} (haS : a ∉ S) (haT : a ∈ T) (j : Fin n) (hj : j ≠ a) :

    Along an edge S ⋖ T of the cube, the states of S and T agree away from the added crossing a ∈ T \ S.

    theorem TauCeti.PDCode.cubeState_ne_of_notMem_of_mem {n : ℕ} {S T : Finset (Fin n)} {a : Fin n} (haS : a ∉ S) (haT : a ∈ T) :

    Along an edge S ⋖ T of the cube, the states of S and T differ at the added crossing a ∈ T \ S.

    The cube of resolutions #

    noncomputable def TauCeti.PDCode.resolutionCube {n : ℕ} (D : PDCode n) (hD : D.IsPlanar) (R : Type u) [CommRing R] (j : ℤ) :

    The Khovanov cube of resolutions of a planar code D, in quantum degree j. Its vertex S is the homogeneous piece of degree j - |S| of the circle tensor of the resolution cubeState S, the degree-j piece of V(S)⟨|S|⟩, and along the edge from S to S ∪ {a} it acts by the saddle map at the crossing a, merging two circles or splitting one.

    Instances For
      theorem TauCeti.PDCode.resolutionCube_obj {n : ℕ} (D : PDCode n) (hD : D.IsPlanar) (R : Type u) [CommRing R] (j : ℤ) (S : Finset (Fin n)) :

      The vertex S of the degree-j cube of resolutions is the piece of degree j - |S| of the circle tensor of the resolution of S.

      noncomputable def TauCeti.PDCode.resolutionCubeι {n : ℕ} (D : PDCode n) (hD : D.IsPlanar) (R : Type u) [CommRing R] (j : ℤ) (S : Finset (Fin n)) :

      The inclusion of the vertex S of the degree-j cube of resolutions into the circle tensor of the resolution of S.

      Instances For
        theorem TauCeti.PDCode.resolutionCubeι_injective {n : ℕ} (D : PDCode n) (hD : D.IsPlanar) (R : Type u) [CommRing R] (j : ℤ) (S : Finset (Fin n)) :

        The inclusion of a vertex of the cube of resolutions is injective.

        @[simp]

        The image of the vertex S of the degree-j cube of resolutions is the piece of degree j - |S| of the circle tensor of the resolution of S.

        noncomputable def TauCeti.PDCode.resolutionCubeVertexEquiv {n : ℕ} (D : PDCode n) (hD : D.IsPlanar) (R : Type u) [CommRing R] (j : ℤ) (S : Finset (Fin n)) :

        The vertex S of the degree-j cube of resolutions as a linear equivalence with the piece of degree j - |S| of the circle tensor of the resolution of S. This is the identification resolutionCube_obj, available where the definition of the cube is not unfolded.

        Instances For
          @[simp]
          theorem TauCeti.PDCode.coe_resolutionCubeVertexEquiv {n : ℕ} (D : PDCode n) (hD : D.IsPlanar) (R : Type u) [CommRing R] (j : ℤ) (S : Finset (Fin n)) (x : ↑((D.resolutionCube hD R j).obj S)) :

          Under resolutionCubeVertexEquiv, an element of a vertex lies over its image under the inclusion resolutionCubeι.

          noncomputable def TauCeti.PDCode.resolutionCubeObjCongr {n : ℕ} (D : PDCode n) (hD : D.IsPlanar) (R : Type u) [CommRing R] (j : ℤ) {m : ℕ} {D' : PDCode m} (hD' : D'.IsPlanar) {j' : ℤ} {S : Finset (Fin n)} {S' : Finset (Fin m)} (e : D.ResolvedCircle (cubeState S) ≃ D'.ResolvedCircle (cubeState S')) (h : j - ↑S.card = j' - ↑S'.card) :
          ↑((D.resolutionCube hD R j).obj S) ≃ₗ[R] ↑((D'.resolutionCube hD' R j').obj S')

          Reindexing the circle tensors along a bijection e of resolved circles, as a linear equivalence from the vertex S of the degree-j cube of resolutions of D to the vertex S' of the degree-j' cube of resolutions of D', whose pieces have the same degree j - |S| = j' - |S'|. It is characterized by TauCeti.PDCode.resolutionCubeι_resolutionCubeObjCongr.

          Instances For
            theorem TauCeti.PDCode.resolutionCubeι_resolutionCubeObjCongr {n : ℕ} (D : PDCode n) (hD : D.IsPlanar) (R : Type u) [CommRing R] (j : ℤ) {m : ℕ} {D' : PDCode m} (hD' : D'.IsPlanar) {j' : ℤ} {S : Finset (Fin n)} {S' : Finset (Fin m)} (e : D.ResolvedCircle (cubeState S) ≃ D'.ResolvedCircle (cubeState S')) (h : j - ↑S.card = j' - ↑S'.card) (x : ↑((D.resolutionCube hD R j).obj S)) :
            (ModuleCat.Hom.hom (D'.resolutionCubeι hD' R j' S')) ((D.resolutionCubeObjCongr hD R j hD' e h) x) = (PiTensorProduct.reindex R (fun (x : D.ResolvedCircle (cubeState S)) => DualNumber R) e) ((ModuleCat.Hom.hom (D.resolutionCubeι hD R j S)) x)

            TauCeti.PDCode.resolutionCubeObjCongr reindexes the circle tensor along the bijection of resolved circles.

            Along the edge from S to S ∪ {a}, the cube of resolutions acts by the saddle map TauCeti.PDCode.resolutionEdgeMap at the crossing a: it merges the two circles through a or splits the circle through a.

            Along the edge from S to S ∪ {a}, the cube of resolutions acts by the saddle map TauCeti.PDCode.resolutionEdgeMap at the crossing a: it merges the two circles through a or splits the circle through a.

            theorem TauCeti.PDCode.resolutionCube_map_homOfLE_comp_resolutionCubeι {n : ℕ} (D : PDCode n) (hD : D.IsPlanar) (R : Type u) [CommRing R] (j : ℤ) {S T : Finset (Fin n)} {a : Fin n} (hT : insert a S = T) (hST : S ⊆ T) (hst : ∀ (i : Fin n), i ≠ a → cubeState S i = cubeState T i) (hc : cubeState S a ≠ cubeState T a) (h : (D.circlesAt (cubeState S) a).card = 2 ∨ (D.circlesAt (cubeState T) a).card = 2) :

            Along an edge S ⋖ T of the cube, the cube of resolutions acts by the saddle map at the crossing added along the edge. This restates resolutionCube_map_homOfLE_insert_comp_resolutionCubeι for a target which is only propositionally insert a S.

            The unnormalized Khovanov complex #

            The unnormalized Khovanov complex of a planar code D, Bar-Natan's bracket ⟦D⟧, as a family of cochain complexes indexed by the quantum degree. Its degree-j component is the signed totalization of the degree-j cube of resolutions: in cochain degree r it is the biproduct of the degree-j pieces of V(S)⟨r⟩ over the subsets S with |S| = r, and its differential is the sum of the saddle maps along the edges from S to S ∪ {a}, with sign (-1) to the number of crossings of S below a.

            Instances For
              theorem TauCeti.PDCode.khovanovBracket_apply {n : ℕ} (D : PDCode n) (hD : D.IsPlanar) (R : Type u) [CommRing R] (j : ℤ) :

              The degree-j component of the unnormalized Khovanov complex is the signed totalization of the degree-j cube of resolutions.