Documentation

LeanPool.RegtsSevenster.RS.Definitions

The statement surface, defined #

Every definition the theorems of record are phrased in, in one self-contained module: the flag model of multigraph fragments with its gluing, fragment isomorphism, composition, the connection pairing and the edge-rank hypothesis, Eulerian edge subsets, the mixed partition function (Regts–Sevenster's Definition 5), the three named statements, the symmetric monoidal category of super vector spaces, the vocabulary of Deligne's hypotheses, and Deligne's theorem, which RS/Classical/Deligne/ proves.

This module imports only the Mathlib funnel (RS/Common/MathlibDeps.lean, an import list with no content), so its meaning is determined by this file against Mathlib alone. It is the trusted surface of the comparator certification: Challenge.lean carries a copy of the sections below, against Mathlib alone, and states the theorems of record with sorry; Solution.lean proves each by the theorem of record of the same name, against the definitions here. Comparator confirms at the kernel-export level that the two sides prove identical statements about identical definitions — the definitions below. The rest of the tree imports them from here rather than restating them, so this file is the single source of what the theorems mean.

How to read it. Each section names the theory it carries; the rest of the repository builds on these declarations by import, so what is written here is, verbatim, what the theorems of record are about. The order is: the sorting sign; fragments and gluing; fragment isomorphism; composition; connection pairings and the edge-rank hypothesis; Eulerian edge subsets; the mixed partition function; the named statements; super vector spaces; the vocabulary of Deligne's hypotheses; and Deligne's theorem.

1. Inversions and the sorting sign #

The sorting sign supplies the antisymmetry of the odd-colour evaluation in Definition 5: reordering the odd colours multiplies the vertex value by the sign of the permutation, realized as (−1) to the inversion count.

def RS.inversions {α : Type} [LinearOrder α] :
List α → ℕ

The number of inversions of a list over a linear order.

Equations
Instances For
    def RS.sortSign {α : Type} [LinearOrder α] (l : List α) :

    The sorting sign of a list: (−1) to the number of inversions.

    Equations
    Instances For

      2. The flag model of multigraph fragments #

      A fragment is a finite multigraph in half-edge (flag) form: flags attach to internal vertices or to boundary labels, a fixed-point-free involution pairs flags into edges, each boundary label carries exactly one flag, and free circles are counted separately. Gluing two boundary labels either closes an edge into a free circle (when the two flags bound a common edge) or rewires the two edges end to end. These are the graphs the main theorems quantify over; ClosedFragment below is the case of no boundary labels.

      structure RS.Fragment (α : Type) :

      A fragment over the boundary-label type α: a finite multigraph in half-edge (flag) form whose dangling flags are labelled bijectively by α, together with a count of free circles.

      • Flag : Type

        The type of flags (half-edges).

      • Vertex : Type

        The type of internal vertices.

      • flagFintype : Fintype self.Flag

        Flags form a finite type with decidable equality.

      • flagDecEq : DecidableEq self.Flag
      • vertexFintype : Fintype self.Vertex

        Vertices form a finite type.

      • attach : self.Flag → self.Vertex ⊕ α

        Each flag is attached to an internal vertex or to a boundary label.

      • pairing : self.Flag → self.Flag

        The edge involution: every flag has a partner.

      • pairing_invol (f : self.Flag) : self.pairing (self.pairing f) = f

        The pairing is an involution.

      • pairing_ne (f : self.Flag) : self.pairing f ≠ f

        The pairing has no fixed points.

      • boundaryFlag : α → self.Flag

        The flag at each boundary label.

      • attach_boundaryFlag (ℓ : α) : self.attach (self.boundaryFlag ℓ) = Sum.inr ℓ

        The boundary flag of ℓ is attached to ℓ.

      • eq_boundaryFlag (ℓ : α) (f : self.Flag) : self.attach f = Sum.inr ℓ → f = self.boundaryFlag ℓ

        Any flag attached to ℓ is the boundary flag of ℓ.

      • circles : ℕ

        Free circles, counted separately.

      Instances For

        Boundary flags of distinct labels are distinct.

        theorem RS.Fragment.pairing_boundaryFlag_comm {α : Type} (W : Fragment α) {i j : α} (h : W.pairing (W.boundaryFlag i) = W.boundaryFlag j) :

        Bounding a common edge is symmetric in the two labels: if the flag at i pairs to the flag at j, then the flag at j pairs back to the flag at i.

        The closed fragment with no flags, no vertices, and a given number of free circles.

        Equations
        • One or more equations did not get rendered due to their size.
        Instances For
          def RS.Fragment.relabel {α β : Type} (W : Fragment α) (e : α ≃ β) :

          Transport a fragment along an equivalence of label types.

          Equations
          • One or more equations did not get rendered due to their size.
          Instances For
            def RS.Fragment.disjUnion {α β : Type} (W₁ : Fragment α) (W₂ : Fragment β) :
            Fragment (α ⊕ β)

            Disjoint union of fragments, over the sum of the label types.

            Equations
            • One or more equations did not get rendered due to their size.
            Instances For

              Single-pair gluing #

              @[reducible, inline]
              abbrev RS.Fragment.SurvivingLabel (α : Type) (i j : α) :

              The labels surviving a glue at {i, j}.

              Equations
              Instances For
                @[reducible, inline]
                abbrev RS.Fragment.SurvivingFlag {α : Type} (W : Fragment α) (i j : α) :

                The flags surviving a glue at {i, j}: all but the two glued boundary flags.

                Equations
                Instances For
                  theorem RS.Fragment.survivingFlag_attach_ne {α : Type} {W : Fragment α} {i j : α} (f : W.SurvivingFlag i j) :
                  W.attach ↑f ≠ Sum.inr i ∧ W.attach ↑f ≠ Sum.inr j

                  A surviving flag is never attached to a glued label.

                  def RS.Fragment.glueAttachOn {α : Type} (W : Fragment α) (i j : α) (f : W.SurvivingFlag i j) (s : W.Vertex ⊕ α) :
                  W.attach ↑f = s → W.Vertex ⊕ SurvivingLabel α i j

                  The attachment map computed at a given value of W.attach, which is supplied together with the equation identifying it. Taking the value as a parameter is what lets every proof below reason by cases on it, so glueAttach itself is never unfolded.

                  Equations
                  Instances For
                    def RS.Fragment.glueAttach {α : Type} (W : Fragment α) (i j : α) (f : W.SurvivingFlag i j) :

                    The attachment map after gluing at {i, j}: unchanged, with the label type restricted to the surviving labels.

                    Equations
                    Instances For
                      theorem RS.Fragment.glueAttachOn_spec {α : Type} (W : Fragment α) (i j : α) (f : W.SurvivingFlag i j) (s : W.Vertex ⊕ α) (h : W.attach ↑f = s) :

                      glueAttachOn returns, under the label inclusion, exactly the value of attach it was handed.

                      theorem RS.Fragment.glueAttach_spec {α : Type} (W : Fragment α) (i j : α) (f : W.SurvivingFlag i j) :

                      glueAttach agrees with attach under the label inclusion.

                      def RS.Fragment.rewire {α : Type} {W : Fragment α} {i j : α} (hopen : W.pairing (W.boundaryFlag i) ≠ W.boundaryFlag j) (f : W.SurvivingFlag i j) :

                      The rewired pairing for an open glue (the two glued flags do not bound a common edge): the far ends of the two glued edges become partners; all other flags keep their partners.

                      Equations
                      • One or more equations did not get rendered due to their size.
                      Instances For
                        theorem RS.Fragment.rewire_invol {α : Type} {W : Fragment α} {i j : α} (hij : i ≠ j) (hopen : W.pairing (W.boundaryFlag i) ≠ W.boundaryFlag j) (f : W.SurvivingFlag i j) :
                        rewire hopen (rewire hopen f) = f

                        Rewiring across an open glue is an involution: it is the glued fragment's edge pairing.

                        theorem RS.Fragment.rewire_ne {α : Type} {W : Fragment α} {i j : α} (hij : i ≠ j) (hopen : W.pairing (W.boundaryFlag i) ≠ W.boundaryFlag j) (f : W.SurvivingFlag i j) :
                        rewire hopen f ≠ f

                        And fixed-point-free, so the glued fragment is again a fragment.

                        The glued fragment #

                        def RS.Fragment.glueBoundaryFlag {α : Type} (W : Fragment α) (i j : α) (ℓ : SurvivingLabel α i j) :

                        The boundary flag of a surviving label survives the glue.

                        Equations
                        Instances For
                          theorem RS.Fragment.glueAttach_inr_iff {α : Type} {W : Fragment α} {i j : α} (f : W.SurvivingFlag i j) (ℓ : SurvivingLabel α i j) :
                          W.glueAttach i j f = Sum.inr ℓ ↔ W.attach ↑f = Sum.inr ↑ℓ

                          The glued attachment lands on a surviving label exactly when the original attachment lands on its underlying label.

                          theorem RS.Fragment.glueAttach_inl_iff {α : Type} {W : Fragment α} {i j : α} (f : W.SurvivingFlag i j) (v : W.Vertex) :
                          W.glueAttach i j f = Sum.inl v ↔ W.attach ↑f = Sum.inl v

                          The glued attachment lands on a vertex exactly when the original attachment does. With glueAttach_inr_iff this characterises glueAttach, so no proof needs to unfold it.

                          theorem RS.Fragment.exists_glueAttach_inr {α : Type} {W : Fragment α} {i j : α} (f : W.SurvivingFlag i j) {ℓ : α} (ha : W.attach ↑f = Sum.inr ℓ) :
                          ∃ (p : SurvivingLabel α i j), W.glueAttach i j f = Sum.inr p ∧ ↑p = ℓ

                          The surviving label a flag glues onto, with its equation.

                          theorem RS.Fragment.glueAttach_cases {α : Type} {W : Fragment α} {i j : α} {motive : W.Vertex ⊕ SurvivingLabel α i j → Prop} (f : W.SurvivingFlag i j) (hinl : ∀ (v : W.Vertex), W.attach ↑f = Sum.inl v → motive (Sum.inl v)) (hinr : ∀ (p : SurvivingLabel α i j), W.attach ↑f = Sum.inr ↑p → motive (Sum.inr p)) :
                          motive (W.glueAttach i j f)

                          Case analysis on glueAttach, phrased on the value of attach. This is the eliminator every proof below uses: it replaces unfolding the definition, so glueAttach is never unfolded anywhere.

                          theorem RS.Fragment.glue_attach_boundaryFlag {α : Type} (W : Fragment α) (i j : α) (ℓ : SurvivingLabel α i j) :
                          W.glueAttach i j (W.glueBoundaryFlag i j ℓ) = Sum.inr ℓ

                          The glued attachment of a surviving label's flag is that label.

                          theorem RS.Fragment.glue_eq_boundaryFlag {α : Type} (W : Fragment α) (i j : α) (ℓ : SurvivingLabel α i j) (f : W.SurvivingFlag i j) (h : W.glueAttach i j f = Sum.inr ℓ) :
                          f = W.glueBoundaryFlag i j ℓ

                          A surviving flag attached to a surviving label is that label's boundary flag.

                          def RS.Fragment.glueWith {α : Type} (W : Fragment α) (i j : α) (p : W.SurvivingFlag i j → W.SurvivingFlag i j) (hinvol : ∀ (f : W.SurvivingFlag i j), p (p f) = f) (hne : ∀ (f : W.SurvivingFlag i j), p f ≠ f) (c : ℕ) :

                          A glue at {i, j} with a prescribed pairing and circle count.

                          Flags, vertices, attachment and boundary flags of a single-pair glue are determined by W alone; only the pairing and the circle count tell the closed and open glues apart. Naming that common part gives the two glues a single shape, so any fact about a glue that does not mention its pairing is proved once.

                          Equations
                          • One or more equations did not get rendered due to their size.
                          Instances For
                            def RS.Fragment.gluePairClosed {α : Type} (W : Fragment α) (i j : α) (hclosed : W.pairing (W.boundaryFlag i) = W.boundaryFlag j) :

                            Gluing the boundary labels i ≠ j when their flags bound a common edge: the edge closes into a free circle.

                            Equations
                            Instances For
                              def RS.Fragment.gluePairOpen {α : Type} (W : Fragment α) (i j : α) (hij : i ≠ j) (hopen : W.pairing (W.boundaryFlag i) ≠ W.boundaryFlag j) :

                              Gluing the boundary labels i ≠ j when their flags bound distinct edges: the two edges are unified by rewiring.

                              Equations
                              Instances For
                                def RS.Fragment.gluePair {α : Type} (W : Fragment α) (i j : α) (hij : i ≠ j) :

                                Gluing a pair of distinct boundary labels: the two half-edges at i and j are joined. If they bound a common edge it closes into a free circle; otherwise their edges are unified end to end.

                                Equations
                                Instances For

                                  3. Isomorphism of fragments #

                                  The hypothesis class asks parameters to be isomorphism-invariant; this is the notion of isomorphism. (RS/Novel/Skein/FragmentEquiv.lean proves the equivalences form a groupoid and are congruences for the fragment operations.)

                                  structure RS.Fragment.Equiv {α : Type} (W₁ W₂ : Fragment α) :

                                  An equivalence of fragments: a pair of type equivalences on flags and vertices commuting with attachment, pairing, and boundary-flag data, preserving the circle count.

                                  Instances For

                                    4. Composition of fragments #

                                    An (s + t)-fragment and a (t + u)-fragment compose by gluing the last t labels of the first to the first t of the second, top pair first, through the single-pair gluing above; the label bookkeeping is by one-point removals of Fin indices. Composition is what the connection pairing evaluates.

                                    Removing a point #

                                    noncomputable def RS.finRemoveEquiv {n : ℕ} (a : Fin (n + 1)) :
                                    { x : Fin (n + 1) // x ≠ a } ≃ Fin n

                                    Removing one point from Fin (n + 1) leaves Fin n.

                                    Equations
                                    • One or more equations did not get rendered due to their size.
                                    Instances For
                                      def RS.sumRemoveSplitEquiv {A B : Type} (a : A) (b : B) :
                                      { x : A ⊕ B // x ≠ Sum.inl a ∧ x ≠ Sum.inr b } ≃ { x : A // x ≠ a } ⊕ { y : B // y ≠ b }

                                      Removing inl a and inr b from a sum splits into the two one-point removals.

                                      Equations
                                      • One or more equations did not get rendered due to their size.
                                      Instances For
                                        noncomputable def RS.rightRemoveEquiv (t u : ℕ) :
                                        { x : Fin (t + 1 + u) // x ≠ ⟨t, ⋯⟩ } ≃ Fin (t + u)

                                        Removing label t from Fin (t + 1 + u) leaves Fin (t + u).

                                        Equations
                                        Instances For
                                          noncomputable def RS.interfaceStepEquiv (s t u : ℕ) :
                                          { x : Fin (s + t + 1) ⊕ Fin (t + 1 + u) // x ≠ Sum.inl ⟨s + t, ⋯⟩ ∧ x ≠ Sum.inr ⟨t, ⋯⟩ } ≃ Fin (s + t) ⊕ Fin (t + u)

                                          The label re-indexing after gluing the top interface pair: removing the last label on the left and label t on the right.

                                          Equations
                                          Instances For

                                            Gluing an interface #

                                            noncomputable def RS.glueInterface (s t u : ℕ) :
                                            Fragment (Fin (s + t) ⊕ Fin (t + u)) → Fragment (Fin s ⊕ Fin u)

                                            Glue the t interface labels of a fragment over Fin (s + t) ⊕ Fin (t + u): the pairs (inl (s + k), inr k) for k < t, glued top pair first.

                                            Equations
                                            Instances For
                                              noncomputable def RS.Fragment.compose {s t u : ℕ} (F : Fragment (Fin (s + t))) (G : Fragment (Fin (t + u))) :
                                              Fragment (Fin (s + u))

                                              Composition of fragments: glue the last t labels of F to the first t labels of G, in order.

                                              Equations
                                              Instances For

                                                5. Connection pairings and the edge-rank hypothesis #

                                                The connection pairing of a parameter at arity t closes two t-fragments against each other; the edge-rank hypothesis bounds, for every t, the rank of that pairing by R ^ t, phrased as the Module.rank of the range of the curried pairing (RS/Novel/Skein/ConnectionRank.lean proves this equivalent to the finite-submatrix reading of the literature; that equivalence is a theorem about the hypothesis and is not needed to state it). EdgeRankParameter packages the hypothesis class of the forward direction: normalized at the empty graph, isomorphism-invariant, rank-bounded.

                                                @[reducible, inline]

                                                A closed fragment: no boundary labels.

                                                Equations
                                                Instances For
                                                  noncomputable def RS.pairClose {t : ℕ} (F G : Fragment (Fin t)) :

                                                  The full closure of two t-fragments: compose them as a (0 + t)- and a (t + 0)-fragment.

                                                  Equations
                                                  Instances For
                                                    noncomputable def RS.connectionPairing (f : ClosedFragment → ℂ) (t : ℕ) (F G : Fragment (Fin t)) :

                                                    The connection pairing of a parameter at arity t.

                                                    Equations
                                                    Instances For
                                                      noncomputable def RS.connectionMap (f : ClosedFragment → ℂ) (t : ℕ) :

                                                      The curried connection pairing as a linear map from the free module on t-fragments to the function space.

                                                      Equations
                                                      Instances For

                                                        The edge-rank hypothesis H2: the connection pairing at every arity has rank at most R ^ t.

                                                        Equations
                                                        Instances For

                                                          The empty closed fragment.

                                                          Equations
                                                          Instances For
                                                            structure RS.EdgeRankParameter (R : ℕ) :

                                                            The hypothesis class of the main theorem: a parameter on closed fragments, normalized on the empty graph, with exponentially bounded connection rank.

                                                            Instances For

                                                              6. Eulerian edge subsets and circuit data #

                                                              Definition 5 sums over pairing-closed flag subsets in which every vertex has even degree. A transition system is the local pairing κ of Definition 5: a second fixed-point-free involution matching participating flags at common vertices. Following an edge and then the matching generates the circuit walks; each geometric circuit of n edges appears as two walk-cycles (its two directions) when n ≥ 2 and as two walk fixed points when n = 1, so the circuit count is half the number of orbits.

                                                              structure RS.EdgeSubset {α : Type} (W : Fragment α) :

                                                              An edge subset of a fragment: a flag set closed under the edge pairing.

                                                              Instances For
                                                                noncomputable def RS.EdgeSubset.deg {α : Type} {W : Fragment α} (F : EdgeSubset W) (v : W.Vertex) :

                                                                The degree of a vertex within an edge subset: the number of participating flags attached to it.

                                                                Equations
                                                                Instances For
                                                                  def RS.EdgeSubset.Eulerian {α : Type} {W : Fragment α} (F : EdgeSubset W) :

                                                                  An edge subset is Eulerian when every vertex has even degree within it.

                                                                  Equations
                                                                  Instances For
                                                                    structure RS.EdgeSubset.TransitionSystem {α : Type} {W : Fragment α} (F : EdgeSubset W) :

                                                                    A transition system on an edge subset: a fixed-point-free involution of its flags matching flags at a common internal vertex. This is the local pairing data κ of Definition 5.

                                                                    Instances For
                                                                      def RS.EdgeSubset.TransitionSystem.walk {α : Type} {W : Fragment α} {F : EdgeSubset W} (κ : F.TransitionSystem) (f : W.Flag) :

                                                                      The walk map of a transition system: follow the edge to the partner flag, then the matching at its vertex.

                                                                      Equations
                                                                      Instances For
                                                                        theorem RS.EdgeSubset.TransitionSystem.walk_mem {α : Type} {W : Fragment α} {F : EdgeSubset W} (κ : F.TransitionSystem) {f : W.Flag} (hf : f ∈ F.flags) :
                                                                        κ.walk f ∈ F.flags

                                                                        The walk map preserves the participating flags.

                                                                        theorem RS.EdgeSubset.TransitionSystem.walk_injOn {α : Type} {W : Fragment α} {F : EdgeSubset W} (κ : F.TransitionSystem) {f g : W.Flag} (hf : f ∈ F.flags) (hg : g ∈ F.flags) (h : κ.walk f = κ.walk g) :
                                                                        f = g

                                                                        The walk map is injective on the participating flags.

                                                                        noncomputable def RS.EdgeSubset.TransitionSystem.walkPerm {α : Type} {W : Fragment α} {F : EdgeSubset W} (κ : F.TransitionSystem) :

                                                                        The walk permutation of a transition system: the walk map as a permutation of the participating flags.

                                                                        Equations
                                                                        Instances For
                                                                          noncomputable def RS.EdgeSubset.TransitionSystem.circuitCount {α : Type} {W : Fragment α} {F : EdgeSubset W} (κ : F.TransitionSystem) :

                                                                          The circuit count of a transition system: each geometric circuit of n edges carries two walk-cycles of length n when n ≥ 2 and two walk fixed points when n = 1, so the count is half the total number of orbits.

                                                                          Equations
                                                                          Instances For

                                                                            7. The mixed partition function (Definition 5) #

                                                                            A (k, 2ℓ) mixed vertex functional assigns a value to a multiset of even colours and a set of odd colours; the alternating evaluation on an ordered odd list is recovered through the sorting sign, so antisymmetry is a theorem of the evaluator rather than a condition on the data. The summand of an Eulerian subset is its circuit sign times the colouring sum of vertex values, odd colours contributing through the symplectic pairing (oddPartner, oddPartnerSign); the value of the subset is choice-free because the tree proves it independent of the transition data, and mixedPartition is the free-circle factor (k − 2ℓ)^circles times the sum over Eulerian subsets.

                                                                            def RS.MixedFunctional (k ℓ : ℕ) :

                                                                            The data of a (k, 2ℓ) mixed vertex functional: a value for each multiset of even colours and set of odd colours.

                                                                            Equations
                                                                            Instances For
                                                                              def RS.MixedFunctional.evalOdd {k ℓ : ℕ} (h : MixedFunctional k ℓ) (μ : Multiset (Fin k)) (w : List (Fin (2 * ℓ))) :

                                                                              The alternating evaluation of a mixed functional on an ordered list of odd colours: zero on repetitions, otherwise the sorting sign times the value on the underlying set.

                                                                              Equations
                                                                              Instances For
                                                                                def RS.oddPartner (ℓ : ℕ) (c : Fin (2 * ℓ)) :
                                                                                Fin (2 * ℓ)

                                                                                The odd-colour index pairing of the standard symplectic basis: the partner of colour c is c + ℓ when c < ℓ and c − ℓ otherwise.

                                                                                Equations
                                                                                Instances For
                                                                                  def RS.oddPartnerSign (ℓ : ℕ) (c : Fin (2 * ℓ)) :

                                                                                  The sign of the odd-colour pairing: g_c = −f_{c+ℓ} for c < ℓ and g_c = f_{c−ℓ} otherwise.

                                                                                  Equations
                                                                                  Instances For

                                                                                    An orientation compatible with a transition system: an in/out designation of the participating flags, flipped both by the vertex matching and by the edge pairing (so circuits are traversed consistently).

                                                                                    Instances For
                                                                                      @[instance_reducible]
                                                                                      noncomputable def RS.Fragment.flagOrder {α : Type} (W : Fragment α) :

                                                                                      An arbitrary but fixed linear order on the flags of a fragment, transported from an enumeration. Used only to enumerate vertex pairings; the evaluated summands are independent of the choice because pair blocks move by even permutations.

                                                                                      Equations
                                                                                      Instances For
                                                                                        noncomputable def RS.EdgeSubset.inFlagsAt {α : Type} {W : Fragment α} (F : EdgeSubset W) {κ : F.TransitionSystem} (o : κ.Orientation) (v : W.Vertex) :

                                                                                        The incoming participating flags at a vertex, in the fixed flag order.

                                                                                        Equations
                                                                                        Instances For
                                                                                          theorem RS.EdgeSubset.pairing_not_mem {α : Type} {W : Fragment α} (F : EdgeSubset W) {f : W.Flag} (hf : f ∉ F.flags) :
                                                                                          W.pairing f ∉ F.flags

                                                                                          The complement of an edge subset is closed under the pairing.

                                                                                          def RS.EdgeSubset.EvenColouring {α : Type} {W : Fragment α} (F : EdgeSubset W) (k : ℕ) :

                                                                                          Even colourings of the non-participating edges: pairing-constant colours on the flags outside the subset.

                                                                                          Equations
                                                                                          Instances For
                                                                                            def RS.EdgeSubset.OddColouring {α : Type} {W : Fragment α} (F : EdgeSubset W) (ℓ : ℕ) :

                                                                                            Odd colourings of the participating edges: pairing-constant colours on the flags of the subset.

                                                                                            Equations
                                                                                            Instances For
                                                                                              @[instance_reducible]
                                                                                              noncomputable instance RS.EdgeSubset.EvenColouring.instFintype {α : Type} {W : Fragment α} (F : EdgeSubset W) (k : ℕ) :

                                                                                              Even colourings are finite in number.

                                                                                              Equations
                                                                                              @[instance_reducible]
                                                                                              noncomputable instance RS.EdgeSubset.OddColouring.instFintype {α : Type} {W : Fragment α} (F : EdgeSubset W) (ℓ : ℕ) :

                                                                                              And so are odd ones, so Definition 5's sum is finite.

                                                                                              Equations
                                                                                              noncomputable def RS.EdgeSubset.evenColoursAt {α : Type} {W : Fragment α} (F : EdgeSubset W) {k : ℕ} (ψ : F.EvenColouring k) (v : W.Vertex) :

                                                                                              The even-colour multiset at a vertex: the colours of the non-participating flags attached to it.

                                                                                              Equations
                                                                                              Instances For
                                                                                                theorem RS.EdgeSubset.mem_of_mem_inFlagsAt {α : Type} {W : Fragment α} {F : EdgeSubset W} {κ : F.TransitionSystem} {o : κ.Orientation} {v : W.Vertex} {f : W.Flag} (hf : f ∈ F.inFlagsAt o v) :

                                                                                                Every in-flag at a vertex participates in the edge subset.

                                                                                                noncomputable def RS.EdgeSubset.oddPairFn {α : Type} {W : Fragment α} (F : EdgeSubset W) {ℓ : ℕ} (κ : F.TransitionSystem) (φ : F.OddColouring ℓ) (f : ↥F.flags) :
                                                                                                List (Fin (2 * ℓ))

                                                                                                The odd pair contributed by an incoming participating flag: its edge colour followed by the partner index of its matched outgoing flag's edge colour.

                                                                                                Equations
                                                                                                Instances For
                                                                                                  noncomputable def RS.EdgeSubset.oddSignFn {α : Type} {W : Fragment α} (F : EdgeSubset W) {ℓ : ℕ} (κ : F.TransitionSystem) (φ : F.OddColouring ℓ) (f : ↥F.flags) :

                                                                                                  The odd-pairing sign contributed by an incoming participating flag: the partner sign of its matched outgoing flag's colour.

                                                                                                  Equations
                                                                                                  Instances For
                                                                                                    noncomputable def RS.EdgeSubset.oddListAt {α : Type} {W : Fragment α} (F : EdgeSubset W) {ℓ : ℕ} {κ : F.TransitionSystem} (o : κ.Orientation) (φ : F.OddColouring ℓ) (v : W.Vertex) :
                                                                                                    List (Fin (2 * ℓ))

                                                                                                    The odd-colour list at a vertex: the odd pairs of the incoming flags in the fixed order.

                                                                                                    Equations
                                                                                                    Instances For
                                                                                                      noncomputable def RS.EdgeSubset.oddSignAt {α : Type} {W : Fragment α} (F : EdgeSubset W) {ℓ : ℕ} {κ : F.TransitionSystem} (o : κ.Orientation) (φ : F.OddColouring ℓ) (v : W.Vertex) :

                                                                                                      The odd-pairing sign at a vertex: the product of the partner signs of the outgoing colours.

                                                                                                      Equations
                                                                                                      Instances For
                                                                                                        noncomputable def RS.EdgeSubset.mixedSummand {α : Type} {W : Fragment α} (F : EdgeSubset W) {k ℓ : ℕ} (h : MixedFunctional k ℓ) {κ : F.TransitionSystem} (o : κ.Orientation) :

                                                                                                        The Definition 5 summand of an Eulerian edge subset with chosen transition system and orientation: the circuit sign times the colouring sum of the vertex values.

                                                                                                        Equations
                                                                                                        Instances For
                                                                                                          noncomputable def RS.EdgeSubset.mixedValue {α : Type} {W : Fragment α} (F : EdgeSubset W) {k ℓ : ℕ} (h : MixedFunctional k ℓ) :

                                                                                                          The Definition 5 value of an edge subset: the summand for a choice of transition system and orientation, zero when none exists. (Every Eulerian subset admits one; the value is independent of the choice by the Eulerian-independence input.)

                                                                                                          Equations
                                                                                                          Instances For
                                                                                                            noncomputable def RS.mixedPartition {α : Type} {k ℓ : ℕ} (h : MixedFunctional k ℓ) (W : Fragment α) :

                                                                                                            The mixed partition function (Regts–Sevenster Definition 5) of a fragment: the free-circle factor times the sum over Eulerian edge subsets of their circuit-signed colouring sums.

                                                                                                            Equations
                                                                                                            • One or more equations did not get rendered due to their size.
                                                                                                            Instances For

                                                                                                              A parameter on closed fragments is a mixed partition function when it is the Definition 5 value of some mixed functional.

                                                                                                              Equations
                                                                                                              Instances For

                                                                                                                8. The named statements #

                                                                                                                The forward direction, the separate parity bound ⌊2eR⌋, the sharp total colour bound R, and the converse with its explicit base.

                                                                                                                THE REGTS–SEVENSTER CONJECTURE. Every graph parameter with exponentially bounded edge-connection rank is a mixed partition function.

                                                                                                                Equations
                                                                                                                Instances For

                                                                                                                  A mixed partition function with explicit dimension bounds: the functional's even dimension k and odd dimension 2ℓ are both at most B.

                                                                                                                  Equations
                                                                                                                  Instances For

                                                                                                                    THE QUANTITATIVE REGTS–SEVENSTER STATEMENT: every graph parameter with edge-connection rank at most R ^ t is a mixed partition function of a (k, 2ℓ)-functional with k, 2ℓ ≤ ⌊2eR⌋.

                                                                                                                    Equations
                                                                                                                    Instances For

                                                                                                                      A mixed model with a bound on the sum of its even and odd dimensions. The named fields retain the functional and its agreement with the graph parameter as part of the witness.

                                                                                                                      • k : ℕ

                                                                                                                        The number of even colours.

                                                                                                                      • ℓ : ℕ

                                                                                                                        Half the number of odd colours.

                                                                                                                      • functional : MixedFunctional self.k self.ℓ

                                                                                                                        The vertex functional of the model.

                                                                                                                      • dimension_le : self.k + 2 * self.ℓ ≤ B

                                                                                                                        The total number of colours is bounded by B.

                                                                                                                      • partition_eq (W : ClosedFragment) : f W = mixedPartition self.functional W

                                                                                                                        The model evaluates to the given parameter on every fragment.

                                                                                                                      Instances For

                                                                                                                        A parameter admits a mixed model with at most B colours in total, counting both the even and odd components.

                                                                                                                        Equations
                                                                                                                        Instances For

                                                                                                                          The total-dimension Regts–Sevenster statement: an edge-rank base R bounds the total number of colours of a representing mixed model.

                                                                                                                          Equations
                                                                                                                          Instances For

                                                                                                                            THE CONVERSE STATEMENT: every mixed partition function is an edge-rank-bounded parameter with base max 1 (k + 2ℓ) (Regts–Sevenster, arXiv:1807.04494, Theorem 6).

                                                                                                                            Equations
                                                                                                                            Instances For

                                                                                                                              9. The symmetric monoidal category of super vector spaces #

                                                                                                                              The codomain of the fibre functor in Deligne's conclusion: finite-dimensional ℤ/2-graded complex vector spaces with grading-preserving maps, the graded tensor product, and the braiding that carries the Koszul sign — the odd⊗odd block acquires a factor of −1 under the swap (koszulEvenAux, second component). This is the longest section; its content is one structure, its category structure, and the monoidal, braided, symmetric, additive and ℂ-linear instances, together with the computation lemmas their coherence proofs run on. An auditor checking what Deligne's theorem says should read the objects, tensorObj, tensorUnit and the two Koszul blocks; the rest is coherence.

                                                                                                                              structure RS.SuperVect :

                                                                                                                              A super vector space over ℂ: a pair of finite-dimensional complex vector spaces, called the even and odd components.

                                                                                                                              Instances For
                                                                                                                                structure RS.SuperVect.Hom (V W : SuperVect) :

                                                                                                                                A morphism of super vector spaces: a pair of ℂ-linear maps preserving the grading.

                                                                                                                                Instances For
                                                                                                                                  theorem RS.SuperVect.Hom.ext {V W : SuperVect} {x y : V.Hom W} (evenMap : x.evenMap = y.evenMap) (oddMap : x.oddMap = y.oddMap) :
                                                                                                                                  x = y
                                                                                                                                  theorem RS.SuperVect.Hom.ext_iff {V W : SuperVect} {x y : V.Hom W} :

                                                                                                                                  The identity morphism on a super vector space.

                                                                                                                                  Equations
                                                                                                                                  Instances For
                                                                                                                                    def RS.SuperVect.Hom.comp {V W X : SuperVect} (g : W.Hom X) (f : V.Hom W) :
                                                                                                                                    V.Hom X

                                                                                                                                    Composition of super-vector-space morphisms.

                                                                                                                                    Equations
                                                                                                                                    Instances For
                                                                                                                                      @[instance_reducible]

                                                                                                                                      Super vector spaces and grading-preserving maps form a category.

                                                                                                                                      Equations
                                                                                                                                      theorem RS.SuperVect.hom_ext {V W : SuperVect} {f g : V ⟶ W} (he : f.evenMap = g.evenMap) (ho : f.oddMap = g.oddMap) :
                                                                                                                                      f = g

                                                                                                                                      Two morphisms agreeing in both components are equal.

                                                                                                                                      theorem RS.SuperVect.hom_ext_iff {V W : SuperVect} {f g : V ⟶ W} :
                                                                                                                                      @[instance_reducible]

                                                                                                                                      SuperVect forms a category with grading-preserving linear maps.

                                                                                                                                      Equations

                                                                                                                                      Tensor product #

                                                                                                                                      The graded tensor product of two super vector spaces. The even component is (V.even ⊗ W.even) × (V.odd ⊗ W.odd) and the odd component is (V.even ⊗ W.odd) × (V.odd ⊗ W.even).

                                                                                                                                      Equations
                                                                                                                                      • One or more equations did not get rendered due to their size.
                                                                                                                                      Instances For
                                                                                                                                        def RS.SuperVect.tensorHom {V₁ V₂ W₁ W₂ : SuperVect} (f : V₁.Hom V₂) (g : W₁.Hom W₂) :
                                                                                                                                        (V₁.tensorObj W₁).Hom (V₂.tensorObj W₂)

                                                                                                                                        The tensor product of two grading-preserving maps acts component-wise on each tensor block.

                                                                                                                                        Equations
                                                                                                                                        • One or more equations did not get rendered due to their size.
                                                                                                                                        Instances For
                                                                                                                                          @[reducible]

                                                                                                                                          The monoidal unit: ℂ in even degree, the zero module in odd degree. Marked reducible so that tensorUnit.odd reduces to PUnit during type-class synthesis.

                                                                                                                                          Equations
                                                                                                                                          • One or more equations did not get rendered due to their size.
                                                                                                                                          Instances For

                                                                                                                                            The Koszul braiding #

                                                                                                                                            Module-level even Koszul block: TensorProduct.comm on the first factor and minus TensorProduct.comm on the second. Stated over bare modules so that instances of it at compound objects have syntactically reduced types.

                                                                                                                                            Equations
                                                                                                                                            Instances For

                                                                                                                                              Module-level odd Koszul block: swaps the two summands and applies TensorProduct.comm on each (no sign).

                                                                                                                                              Equations
                                                                                                                                              • One or more equations did not get rendered due to their size.
                                                                                                                                              Instances For

                                                                                                                                                The even component of the Koszul braiding: applies TensorProduct.comm on the even⊗even block and minus TensorProduct.comm on the odd⊗odd block.

                                                                                                                                                Equations
                                                                                                                                                Instances For

                                                                                                                                                  The odd component of the Koszul braiding: swaps the two blocks and applies TensorProduct.comm on each (no sign, since even⊗odd and odd⊗even contribute (−1)^(0·1) = 1).

                                                                                                                                                  Equations
                                                                                                                                                  Instances For

                                                                                                                                                    The Koszul braiding morphism V ⊗ W → W ⊗ V in SuperVect, carrying the sign (−1)^(p·q) on the swap of homogeneous elements of parity p and q.

                                                                                                                                                    Equations
                                                                                                                                                    Instances For

                                                                                                                                                      The Koszul braiding is a self-inverse: the two applications of the sign on the odd⊗odd block cancel, and the component swaps on the odd part compose to the identity.

                                                                                                                                                      @[simp]

                                                                                                                                                      Application of the Koszul odd braiding to a pair of elements.

                                                                                                                                                      Koszul braiding as a categorical isomorphism #

                                                                                                                                                      The Koszul braiding as an isomorphism in SuperVect.

                                                                                                                                                      Equations
                                                                                                                                                      Instances For

                                                                                                                                                        Left and right unitors #

                                                                                                                                                        The left unitor isomorphism 𝟙_ ⊗ V ≅ V.

                                                                                                                                                        Equations
                                                                                                                                                        • One or more equations did not get rendered due to their size.
                                                                                                                                                        Instances For

                                                                                                                                                          The right unitor isomorphism V ⊗ 𝟙_ ≅ V.

                                                                                                                                                          Equations
                                                                                                                                                          • One or more equations did not get rendered due to their size.
                                                                                                                                                          Instances For

                                                                                                                                                            Associator #

                                                                                                                                                            def RS.SuperVect.prod4Perm (A : Type u_1) (B : Type u_2) (C : Type u_3) (D : Type u_4) [AddCommGroup A] [Module ℂ A] [AddCommGroup B] [Module ℂ B] [AddCommGroup C] [Module ℂ C] [AddCommGroup D] [Module ℂ D] :
                                                                                                                                                            ((A × B) × C × D) ≃ₗ[ℂ] (A × C) × D × B

                                                                                                                                                            Permutation of product components used in the associator: ((A × B) × (C × D)) ≃ₗ ((A × C) × (D × B)). The mapping is (a, b, c, d) ↦ (a, c, d, b). All field proofs hold by rfl because the permutation is a definitional reshuffling of product components.

                                                                                                                                                            Equations
                                                                                                                                                            • One or more equations did not get rendered due to their size.
                                                                                                                                                            Instances For
                                                                                                                                                              def RS.SuperVect.assocAux (A₁ : Type u_1) (A₂ : Type u_2) (B₁ : Type u_3) (B₂ : Type u_4) (C₁ : Type u_5) (C₂ : Type u_6) [AddCommGroup A₁] [Module ℂ A₁] [AddCommGroup A₂] [Module ℂ A₂] [AddCommGroup B₁] [Module ℂ B₁] [AddCommGroup B₂] [Module ℂ B₂] [AddCommGroup C₁] [Module ℂ C₁] [AddCommGroup C₂] [Module ℂ C₂] :

                                                                                                                                                              Module-level associator block. The construction distributes the tensor over products (via prodLeft and prodRight), reassociates each tensor block (via TensorProduct.assoc), and permutes the four summands via prod4Perm. Stated over bare modules so that instances of it at compound objects have syntactically reduced types; the even and odd components of the SuperVect associator are its instantiations with the two C-slots in the two orders.

                                                                                                                                                              Equations
                                                                                                                                                              • One or more equations did not get rendered due to their size.
                                                                                                                                                              Instances For

                                                                                                                                                                The associator isomorphism (V ⊗ W) ⊗ X ≅ V ⊗ (W ⊗ X) in SuperVect. Distributes tensor over products, reassociates each block, and permutes the summands back into the canonical grading order.

                                                                                                                                                                Equations
                                                                                                                                                                • One or more equations did not get rendered due to their size.
                                                                                                                                                                Instances For

                                                                                                                                                                  Associator computation lemmas #

                                                                                                                                                                  @[simp]
                                                                                                                                                                  theorem RS.SuperVect.prod_fst_zero {A : Type u_1} {B : Type u_2} [Zero A] [Zero B] :
                                                                                                                                                                  0.1 = 0

                                                                                                                                                                  The first component of the zero pair.

                                                                                                                                                                  @[simp]
                                                                                                                                                                  theorem RS.SuperVect.prod_snd_zero {A : Type u_1} {B : Type u_2} [Zero A] [Zero B] :
                                                                                                                                                                  0.2 = 0

                                                                                                                                                                  The second component of the zero pair.

                                                                                                                                                                  @[simp]
                                                                                                                                                                  theorem RS.SuperVect.prod_mk_zero {A : Type u_1} {B : Type u_2} [Zero A] [Zero B] :
                                                                                                                                                                  (0, 0) = 0

                                                                                                                                                                  The pair of zeros is the zero pair.

                                                                                                                                                                  @[simp]
                                                                                                                                                                  theorem RS.SuperVect.prod4Perm_apply {A : Type u_1} {B : Type u_2} {C : Type u_3} {D : Type u_4} [AddCommGroup A] [Module ℂ A] [AddCommGroup B] [Module ℂ B] [AddCommGroup C] [Module ℂ C] [AddCommGroup D] [Module ℂ D] (x : (A × B) × C × D) :
                                                                                                                                                                  (prod4Perm A B C D) x = ((x.1.1, x.2.1), x.2.2, x.1.2)

                                                                                                                                                                  prod4Perm, applied.

                                                                                                                                                                  theorem RS.SuperVect.prodRight_symm_tmul_fst {M₁ : Type u_1} {M₂ : Type u_2} {M₃ : Type u_3} [AddCommGroup M₁] [Module ℂ M₁] [AddCommGroup M₂] [Module ℂ M₂] [AddCommGroup M₃] [Module ℂ M₃] (m₁ : M₁) (m₂ : M₂) :
                                                                                                                                                                  (TensorProduct.prodRight ℂ ℂ M₁ M₂ M₃).symm (m₁ ⊗ₜ[ℂ] m₂, 0) = m₁ ⊗ₜ[ℂ] (m₂, 0)

                                                                                                                                                                  The inverse product-distribution on a first-summand pure tensor.

                                                                                                                                                                  theorem RS.SuperVect.prodRight_symm_tmul_snd {M₁ : Type u_1} {M₂ : Type u_2} {M₃ : Type u_3} [AddCommGroup M₁] [Module ℂ M₁] [AddCommGroup M₂] [Module ℂ M₂] [AddCommGroup M₃] [Module ℂ M₃] (m₁ : M₁) (m₃ : M₃) :
                                                                                                                                                                  (TensorProduct.prodRight ℂ ℂ M₁ M₂ M₃).symm (0, m₁ ⊗ₜ[ℂ] m₃) = m₁ ⊗ₜ[ℂ] (0, m₃)

                                                                                                                                                                  The inverse product-distribution on a second-summand pure tensor.

                                                                                                                                                                  @[simp]
                                                                                                                                                                  theorem RS.SuperVect.assocAux_ee {A₁ : Type u_1} {A₂ : Type u_2} {B₁ : Type u_3} {B₂ : Type u_4} {C₁ : Type u_5} {C₂ : Type u_6} [AddCommGroup A₁] [Module ℂ A₁] [AddCommGroup A₂] [Module ℂ A₂] [AddCommGroup B₁] [Module ℂ B₁] [AddCommGroup B₂] [Module ℂ B₂] [AddCommGroup C₁] [Module ℂ C₁] [AddCommGroup C₂] [Module ℂ C₂] (a : A₁) (b : B₁) (c : C₁) :
                                                                                                                                                                  (assocAux A₁ A₂ B₁ B₂ C₁ C₂) ((a ⊗ₜ[ℂ] b, 0) ⊗ₜ[ℂ] c, 0) = (a ⊗ₜ[ℂ] (b ⊗ₜ[ℂ] c, 0), 0)

                                                                                                                                                                  The associator block on a pure tensor of the A₁ ⊗ B₁ summand with C₁.

                                                                                                                                                                  @[simp]
                                                                                                                                                                  theorem RS.SuperVect.assocAux_oo {A₁ : Type u_1} {A₂ : Type u_2} {B₁ : Type u_3} {B₂ : Type u_4} {C₁ : Type u_5} {C₂ : Type u_6} [AddCommGroup A₁] [Module ℂ A₁] [AddCommGroup A₂] [Module ℂ A₂] [AddCommGroup B₁] [Module ℂ B₁] [AddCommGroup B₂] [Module ℂ B₂] [AddCommGroup C₁] [Module ℂ C₁] [AddCommGroup C₂] [Module ℂ C₂] (p : A₂) (q : B₂) (c : C₁) :
                                                                                                                                                                  (assocAux A₁ A₂ B₁ B₂ C₁ C₂) ((0, p ⊗ₜ[ℂ] q) ⊗ₜ[ℂ] c, 0) = (0, p ⊗ₜ[ℂ] (0, q ⊗ₜ[ℂ] c))

                                                                                                                                                                  The associator block on a pure tensor of the A₂ ⊗ B₂ summand with C₁.

                                                                                                                                                                  @[simp]
                                                                                                                                                                  theorem RS.SuperVect.assocAux_eo {A₁ : Type u_1} {A₂ : Type u_2} {B₁ : Type u_3} {B₂ : Type u_4} {C₁ : Type u_5} {C₂ : Type u_6} [AddCommGroup A₁] [Module ℂ A₁] [AddCommGroup A₂] [Module ℂ A₂] [AddCommGroup B₁] [Module ℂ B₁] [AddCommGroup B₂] [Module ℂ B₂] [AddCommGroup C₁] [Module ℂ C₁] [AddCommGroup C₂] [Module ℂ C₂] (a : A₁) (b : B₂) (c : C₂) :
                                                                                                                                                                  (assocAux A₁ A₂ B₁ B₂ C₁ C₂) (0, (a ⊗ₜ[ℂ] b, 0) ⊗ₜ[ℂ] c) = (a ⊗ₜ[ℂ] (0, b ⊗ₜ[ℂ] c), 0)

                                                                                                                                                                  The associator block on a pure tensor of the A₁ ⊗ B₂ summand with C₂.

                                                                                                                                                                  @[simp]
                                                                                                                                                                  theorem RS.SuperVect.assocAux_oe {A₁ : Type u_1} {A₂ : Type u_2} {B₁ : Type u_3} {B₂ : Type u_4} {C₁ : Type u_5} {C₂ : Type u_6} [AddCommGroup A₁] [Module ℂ A₁] [AddCommGroup A₂] [Module ℂ A₂] [AddCommGroup B₁] [Module ℂ B₁] [AddCommGroup B₂] [Module ℂ B₂] [AddCommGroup C₁] [Module ℂ C₁] [AddCommGroup C₂] [Module ℂ C₂] (p : A₂) (q : B₁) (c : C₂) :
                                                                                                                                                                  (assocAux A₁ A₂ B₁ B₂ C₁ C₂) (0, (0, p ⊗ₜ[ℂ] q) ⊗ₜ[ℂ] c) = (0, p ⊗ₜ[ℂ] (q ⊗ₜ[ℂ] c, 0))

                                                                                                                                                                  The associator block on a pure tensor of the A₂ ⊗ B₁ summand with C₂.

                                                                                                                                                                  @[simp]
                                                                                                                                                                  theorem RS.SuperVect.assocAux_symm_ee {A₁ : Type u_1} {A₂ : Type u_2} {B₁ : Type u_3} {B₂ : Type u_4} {C₁ : Type u_5} {C₂ : Type u_6} [AddCommGroup A₁] [Module ℂ A₁] [AddCommGroup A₂] [Module ℂ A₂] [AddCommGroup B₁] [Module ℂ B₁] [AddCommGroup B₂] [Module ℂ B₂] [AddCommGroup C₁] [Module ℂ C₁] [AddCommGroup C₂] [Module ℂ C₂] (a : A₁) (b : B₁) (c : C₁) :
                                                                                                                                                                  (assocAux A₁ A₂ B₁ B₂ C₁ C₂).symm (a ⊗ₜ[ℂ] (b ⊗ₜ[ℂ] c, 0), 0) = ((a ⊗ₜ[ℂ] b, 0) ⊗ₜ[ℂ] c, 0)

                                                                                                                                                                  The inverse associator block on a pure tensor of A₁ with the B₁ ⊗ C₁ summand.

                                                                                                                                                                  @[simp]
                                                                                                                                                                  theorem RS.SuperVect.assocAux_symm_oo {A₁ : Type u_1} {A₂ : Type u_2} {B₁ : Type u_3} {B₂ : Type u_4} {C₁ : Type u_5} {C₂ : Type u_6} [AddCommGroup A₁] [Module ℂ A₁] [AddCommGroup A₂] [Module ℂ A₂] [AddCommGroup B₁] [Module ℂ B₁] [AddCommGroup B₂] [Module ℂ B₂] [AddCommGroup C₁] [Module ℂ C₁] [AddCommGroup C₂] [Module ℂ C₂] (p : A₂) (q : B₂) (c : C₁) :
                                                                                                                                                                  (assocAux A₁ A₂ B₁ B₂ C₁ C₂).symm (0, p ⊗ₜ[ℂ] (0, q ⊗ₜ[ℂ] c)) = ((0, p ⊗ₜ[ℂ] q) ⊗ₜ[ℂ] c, 0)

                                                                                                                                                                  The inverse associator block on a pure tensor of A₂ with the B₂ ⊗ C₁ summand.

                                                                                                                                                                  @[simp]
                                                                                                                                                                  theorem RS.SuperVect.assocAux_symm_eo {A₁ : Type u_1} {A₂ : Type u_2} {B₁ : Type u_3} {B₂ : Type u_4} {C₁ : Type u_5} {C₂ : Type u_6} [AddCommGroup A₁] [Module ℂ A₁] [AddCommGroup A₂] [Module ℂ A₂] [AddCommGroup B₁] [Module ℂ B₁] [AddCommGroup B₂] [Module ℂ B₂] [AddCommGroup C₁] [Module ℂ C₁] [AddCommGroup C₂] [Module ℂ C₂] (a : A₁) (b : B₂) (c : C₂) :
                                                                                                                                                                  (assocAux A₁ A₂ B₁ B₂ C₁ C₂).symm (a ⊗ₜ[ℂ] (0, b ⊗ₜ[ℂ] c), 0) = (0, (a ⊗ₜ[ℂ] b, 0) ⊗ₜ[ℂ] c)

                                                                                                                                                                  The inverse associator block on a pure tensor of A₁ with the B₂ ⊗ C₂ summand.

                                                                                                                                                                  @[simp]
                                                                                                                                                                  theorem RS.SuperVect.assocAux_symm_oe {A₁ : Type u_1} {A₂ : Type u_2} {B₁ : Type u_3} {B₂ : Type u_4} {C₁ : Type u_5} {C₂ : Type u_6} [AddCommGroup A₁] [Module ℂ A₁] [AddCommGroup A₂] [Module ℂ A₂] [AddCommGroup B₁] [Module ℂ B₁] [AddCommGroup B₂] [Module ℂ B₂] [AddCommGroup C₁] [Module ℂ C₁] [AddCommGroup C₂] [Module ℂ C₂] (p : A₂) (q : B₁) (c : C₂) :
                                                                                                                                                                  (assocAux A₁ A₂ B₁ B₂ C₁ C₂).symm (0, p ⊗ₜ[ℂ] (q ⊗ₜ[ℂ] c, 0)) = (0, (0, p ⊗ₜ[ℂ] q) ⊗ₜ[ℂ] c)

                                                                                                                                                                  The inverse associator block on a pure tensor of A₂ with the B₁ ⊗ C₂ summand.

                                                                                                                                                                  @[simp]
                                                                                                                                                                  theorem RS.SuperVect.koszulEvenAux_fst {A : Type u_1} {B : Type u_2} {C : Type u_3} {D : Type u_4} [AddCommGroup A] [Module ℂ A] [AddCommGroup B] [Module ℂ B] [AddCommGroup C] [Module ℂ C] [AddCommGroup D] [Module ℂ D] (a : A) (b : B) :

                                                                                                                                                                  The even Koszul block on the first summand: plain commutation, no sign.

                                                                                                                                                                  @[simp]
                                                                                                                                                                  theorem RS.SuperVect.koszulEvenAux_snd {A : Type u_1} {B : Type u_2} {C : Type u_3} {D : Type u_4} [AddCommGroup A] [Module ℂ A] [AddCommGroup B] [Module ℂ B] [AddCommGroup C] [Module ℂ C] [AddCommGroup D] [Module ℂ D] (c : C) (d : D) :

                                                                                                                                                                  The Koszul sign: on the second summand — the odd⊗odd block — the even block commutes and negates.

                                                                                                                                                                  @[simp]
                                                                                                                                                                  theorem RS.SuperVect.koszulOddAux_fst {A : Type u_1} {B : Type u_2} {C : Type u_3} {D : Type u_4} [AddCommGroup A] [Module ℂ A] [AddCommGroup B] [Module ℂ B] [AddCommGroup C] [Module ℂ C] [AddCommGroup D] [Module ℂ D] (a : A) (b : B) :

                                                                                                                                                                  The odd Koszul block on the first summand: commutation into the other summand, no sign.

                                                                                                                                                                  @[simp]
                                                                                                                                                                  theorem RS.SuperVect.koszulOddAux_snd {A : Type u_1} {B : Type u_2} {C : Type u_3} {D : Type u_4} [AddCommGroup A] [Module ℂ A] [AddCommGroup B] [Module ℂ B] [AddCommGroup C] [Module ℂ C] [AddCommGroup D] [Module ℂ D] (c : C) (d : D) :

                                                                                                                                                                  The odd Koszul block on the second summand: likewise unsigned — only the odd⊗odd block carries the sign.

                                                                                                                                                                  theorem RS.SuperVect.prod_mk_neg_left {A : Type u_1} {B : Type u_2} [AddCommGroup A] [AddCommGroup B] (u : A) :
                                                                                                                                                                  (-u, 0) = -(u, 0)

                                                                                                                                                                  A left-negated pair is a negated pair.

                                                                                                                                                                  theorem RS.SuperVect.prod_mk_neg_right {A : Type u_1} {B : Type u_2} [AddCommGroup A] [AddCommGroup B] (v : B) :
                                                                                                                                                                  (0, -v) = -(0, v)

                                                                                                                                                                  A right-negated pair is a negated pair.

                                                                                                                                                                  The triangle coherence of the module-level associator block against the unit slots ℂ (even) and PUnit (odd). Both graded components of the SuperVect triangle are instantiations.

                                                                                                                                                                  theorem RS.SuperVect.koszulAux_hexagon_fwd_even (A₁ : Type u_1) (A₂ : Type u_2) (B₁ : Type u_3) (B₂ : Type u_4) (C₁ : Type u_5) (C₂ : Type u_6) [AddCommGroup A₁] [Module ℂ A₁] [AddCommGroup A₂] [Module ℂ A₂] [AddCommGroup B₁] [Module ℂ B₁] [AddCommGroup B₂] [Module ℂ B₂] [AddCommGroup C₁] [Module ℂ C₁] [AddCommGroup C₂] [Module ℂ C₂] :
                                                                                                                                                                  (↑(assocAux B₁ B₂ C₁ C₂ A₁ A₂) ∘ₗ koszulEvenAux A₁ (TensorProduct ℂ B₁ C₁ × TensorProduct ℂ B₂ C₂) A₂ (TensorProduct ℂ B₁ C₂ × TensorProduct ℂ B₂ C₁)) ∘ₗ ↑(assocAux A₁ A₂ B₁ B₂ C₁ C₂) = ((TensorProduct.map LinearMap.id (koszulEvenAux A₁ C₁ A₂ C₂)).prodMap (TensorProduct.map LinearMap.id (koszulOddAux A₁ C₂ A₂ C₁)) ∘ₗ ↑(assocAux B₁ B₂ A₁ A₂ C₁ C₂)) ∘ₗ (TensorProduct.map (koszulEvenAux A₁ B₁ A₂ B₂) LinearMap.id).prodMap (TensorProduct.map (koszulOddAux A₁ B₂ A₂ B₁) LinearMap.id)

                                                                                                                                                                  The forward hexagon for the even graded component, at the module level: braiding past a tensor product in two steps agrees with braiding past its factors.

                                                                                                                                                                  theorem RS.SuperVect.koszulAux_hexagon_fwd_odd (A₁ : Type u_1) (A₂ : Type u_2) (B₁ : Type u_3) (B₂ : Type u_4) (C₁ : Type u_5) (C₂ : Type u_6) [AddCommGroup A₁] [Module ℂ A₁] [AddCommGroup A₂] [Module ℂ A₂] [AddCommGroup B₁] [Module ℂ B₁] [AddCommGroup B₂] [Module ℂ B₂] [AddCommGroup C₁] [Module ℂ C₁] [AddCommGroup C₂] [Module ℂ C₂] :
                                                                                                                                                                  (↑(assocAux B₁ B₂ C₁ C₂ A₂ A₁) ∘ₗ koszulOddAux A₁ (TensorProduct ℂ B₁ C₂ × TensorProduct ℂ B₂ C₁) A₂ (TensorProduct ℂ B₁ C₁ × TensorProduct ℂ B₂ C₂)) ∘ₗ ↑(assocAux A₁ A₂ B₁ B₂ C₂ C₁) = ((TensorProduct.map LinearMap.id (koszulOddAux A₁ C₂ A₂ C₁)).prodMap (TensorProduct.map LinearMap.id (koszulEvenAux A₁ C₁ A₂ C₂)) ∘ₗ ↑(assocAux B₁ B₂ A₁ A₂ C₂ C₁)) ∘ₗ (TensorProduct.map (koszulEvenAux A₁ B₁ A₂ B₂) LinearMap.id).prodMap (TensorProduct.map (koszulOddAux A₁ B₂ A₂ B₁) LinearMap.id)

                                                                                                                                                                  The forward hexagon for the odd graded component.

                                                                                                                                                                  theorem RS.SuperVect.koszulAux_hexagon_rev_even (A₁ : Type u_1) (A₂ : Type u_2) (B₁ : Type u_3) (B₂ : Type u_4) (C₁ : Type u_5) (C₂ : Type u_6) [AddCommGroup A₁] [Module ℂ A₁] [AddCommGroup A₂] [Module ℂ A₂] [AddCommGroup B₁] [Module ℂ B₁] [AddCommGroup B₂] [Module ℂ B₂] [AddCommGroup C₁] [Module ℂ C₁] [AddCommGroup C₂] [Module ℂ C₂] :
                                                                                                                                                                  (↑(assocAux C₁ C₂ A₁ A₂ B₁ B₂).symm ∘ₗ koszulEvenAux (TensorProduct ℂ A₁ B₁ × TensorProduct ℂ A₂ B₂) C₁ (TensorProduct ℂ A₁ B₂ × TensorProduct ℂ A₂ B₁) C₂) ∘ₗ ↑(assocAux A₁ A₂ B₁ B₂ C₁ C₂).symm = ((TensorProduct.map (koszulEvenAux A₁ C₁ A₂ C₂) LinearMap.id).prodMap (TensorProduct.map (koszulOddAux A₁ C₂ A₂ C₁) LinearMap.id) ∘ₗ ↑(assocAux A₁ A₂ C₁ C₂ B₁ B₂).symm) ∘ₗ (TensorProduct.map LinearMap.id (koszulEvenAux B₁ C₁ B₂ C₂)).prodMap (TensorProduct.map LinearMap.id (koszulOddAux B₁ C₂ B₂ C₁))

                                                                                                                                                                  The reverse hexagon for the even graded component, phrased through the inverse associator blocks.

                                                                                                                                                                  theorem RS.SuperVect.koszulAux_hexagon_rev_odd (A₁ : Type u_1) (A₂ : Type u_2) (B₁ : Type u_3) (B₂ : Type u_4) (C₁ : Type u_5) (C₂ : Type u_6) [AddCommGroup A₁] [Module ℂ A₁] [AddCommGroup A₂] [Module ℂ A₂] [AddCommGroup B₁] [Module ℂ B₁] [AddCommGroup B₂] [Module ℂ B₂] [AddCommGroup C₁] [Module ℂ C₁] [AddCommGroup C₂] [Module ℂ C₂] :
                                                                                                                                                                  (↑(assocAux C₁ C₂ A₁ A₂ B₂ B₁).symm ∘ₗ koszulOddAux (TensorProduct ℂ A₁ B₁ × TensorProduct ℂ A₂ B₂) C₂ (TensorProduct ℂ A₁ B₂ × TensorProduct ℂ A₂ B₁) C₁) ∘ₗ ↑(assocAux A₁ A₂ B₁ B₂ C₂ C₁).symm = ((TensorProduct.map (koszulEvenAux A₁ C₁ A₂ C₂) LinearMap.id).prodMap (TensorProduct.map (koszulOddAux A₁ C₂ A₂ C₁) LinearMap.id) ∘ₗ ↑(assocAux A₁ A₂ C₁ C₂ B₂ B₁).symm) ∘ₗ (TensorProduct.map LinearMap.id (koszulOddAux B₁ C₂ B₂ C₁)).prodMap (TensorProduct.map LinearMap.id (koszulEvenAux B₁ C₁ B₂ C₂))

                                                                                                                                                                  The reverse hexagon for the odd graded component.

                                                                                                                                                                  theorem RS.SuperVect.assocAux_pentagon (A₁ : Type u_1) (A₂ : Type u_2) (B₁ : Type u_3) (B₂ : Type u_4) (C₁ : Type u_5) (C₂ : Type u_6) (D₁ : Type u_7) (D₂ : Type u_8) [AddCommGroup A₁] [Module ℂ A₁] [AddCommGroup A₂] [Module ℂ A₂] [AddCommGroup B₁] [Module ℂ B₁] [AddCommGroup B₂] [Module ℂ B₂] [AddCommGroup C₁] [Module ℂ C₁] [AddCommGroup C₂] [Module ℂ C₂] [AddCommGroup D₁] [Module ℂ D₁] [AddCommGroup D₂] [Module ℂ D₂] :
                                                                                                                                                                  ((TensorProduct.map LinearMap.id ↑(assocAux B₁ B₂ C₁ C₂ D₁ D₂)).prodMap (TensorProduct.map LinearMap.id ↑(assocAux B₁ B₂ C₁ C₂ D₂ D₁)) ∘ₗ ↑(assocAux A₁ A₂ (TensorProduct ℂ B₁ C₁ × TensorProduct ℂ B₂ C₂) (TensorProduct ℂ B₁ C₂ × TensorProduct ℂ B₂ C₁) D₁ D₂)) ∘ₗ (TensorProduct.map (↑(assocAux A₁ A₂ B₁ B₂ C₁ C₂)) LinearMap.id).prodMap (TensorProduct.map (↑(assocAux A₁ A₂ B₁ B₂ C₂ C₁)) LinearMap.id) = ↑(assocAux A₁ A₂ B₁ B₂ (TensorProduct ℂ C₁ D₁ × TensorProduct ℂ C₂ D₂) (TensorProduct ℂ C₁ D₂ × TensorProduct ℂ C₂ D₁)) ∘ₗ ↑(assocAux (TensorProduct ℂ A₁ B₁ × TensorProduct ℂ A₂ B₂) (TensorProduct ℂ A₁ B₂ × TensorProduct ℂ A₂ B₁) C₁ C₂ D₁ D₂)

                                                                                                                                                                  The pentagon coherence of the module-level associator block: both routes from a four-fold graded product to its right-nested form agree. Both graded components of the SuperVect pentagon are instantiations.

                                                                                                                                                                  Component projection lemmas #

                                                                                                                                                                  @[simp]

                                                                                                                                                                  The even component of a categorical composite.

                                                                                                                                                                  @[simp]

                                                                                                                                                                  The odd component of a categorical composite.

                                                                                                                                                                  @[simp]

                                                                                                                                                                  The even component of a categorical identity.

                                                                                                                                                                  @[simp]

                                                                                                                                                                  The odd component of a categorical identity.

                                                                                                                                                                  @[simp]
                                                                                                                                                                  theorem RS.SuperVect.tensorHom_evenMap {V₁ V₂ W₁ W₂ : SuperVect} (f : V₁.Hom V₂) (g : W₁.Hom W₂) :

                                                                                                                                                                  The even component of a tensor of morphisms: even⊗even and odd⊗odd in parallel.

                                                                                                                                                                  @[simp]
                                                                                                                                                                  theorem RS.SuperVect.tensorHom_oddMap {V₁ V₂ W₁ W₂ : SuperVect} (f : V₁.Hom V₂) (g : W₁.Hom W₂) :

                                                                                                                                                                  The odd component of a tensor of morphisms: even⊗odd and odd⊗even in parallel.

                                                                                                                                                                  @[simp]

                                                                                                                                                                  The associator's even component is the even associator equivalence.

                                                                                                                                                                  @[simp]

                                                                                                                                                                  The associator's odd component is the odd associator equivalence.

                                                                                                                                                                  @[simp]

                                                                                                                                                                  The inverse associator's even component.

                                                                                                                                                                  @[simp]

                                                                                                                                                                  The inverse associator's odd component.

                                                                                                                                                                  @[simp]

                                                                                                                                                                  The left unitor's even component: the unit's odd part is zero, so only the first summand survives.

                                                                                                                                                                  @[simp]

                                                                                                                                                                  The right unitor's odd component: here it is the second summand that survives, the unit sitting on the right.

                                                                                                                                                                  @[simp]

                                                                                                                                                                  The braiding's even component.

                                                                                                                                                                  @[simp]

                                                                                                                                                                  The braiding's odd component.

                                                                                                                                                                  Monoidal structure #

                                                                                                                                                                  @[instance_reducible]

                                                                                                                                                                  The monoidal category structure on SuperVect: graded tensor product, ℂ unit, standard associator/unitors.

                                                                                                                                                                  Equations
                                                                                                                                                                  • One or more equations did not get rendered due to their size.

                                                                                                                                                                  MonoidalCategory axioms #

                                                                                                                                                                  theorem RS.SuperVect.tensorHom_id_id (X₁ X₂ : SuperVect) :
                                                                                                                                                                  tensorHom (Hom.id X₁) (Hom.id X₂) = Hom.id (X₁.tensorObj X₂)

                                                                                                                                                                  tensorHom id id = id: the tensor of identity morphisms is the identity on the tensor product.

                                                                                                                                                                  theorem RS.SuperVect.tensorHom_comp (X₁ Y₁ Z₁ X₂ Y₂ Z₂ : SuperVect) (f₁ : X₁.Hom Y₁) (f₂ : X₂.Hom Y₂) (g₁ : Y₁.Hom Z₁) (g₂ : Y₂.Hom Z₂) :
                                                                                                                                                                  (tensorHom g₁ g₂).comp (tensorHom f₁ f₂) = tensorHom (g₁.comp f₁) (g₂.comp f₂)

                                                                                                                                                                  Composition distributes over tensor product of morphisms.

                                                                                                                                                                  Braided and symmetric structure #

                                                                                                                                                                  @[instance_reducible]

                                                                                                                                                                  SuperVect is a braided monoidal category with the Koszul braiding: swapping odd ⊗ odd elements picks up a factor of −1.

                                                                                                                                                                  Equations
                                                                                                                                                                  @[instance_reducible]

                                                                                                                                                                  SuperVect is a symmetric monoidal category: applying the Koszul braiding twice recovers the identity.

                                                                                                                                                                  Equations

                                                                                                                                                                  Additive and linear structure #

                                                                                                                                                                  @[instance_reducible]
                                                                                                                                                                  instance RS.SuperVect.instZeroHom {V W : SuperVect} :
                                                                                                                                                                  Zero (V ⟶ W)

                                                                                                                                                                  The zero morphism: zero in both components.

                                                                                                                                                                  Equations
                                                                                                                                                                  @[instance_reducible]
                                                                                                                                                                  instance RS.SuperVect.instAddHom {V W : SuperVect} :
                                                                                                                                                                  Add (V ⟶ W)

                                                                                                                                                                  Componentwise addition of morphisms.

                                                                                                                                                                  Equations
                                                                                                                                                                  @[instance_reducible]
                                                                                                                                                                  instance RS.SuperVect.instNegHom {V W : SuperVect} :
                                                                                                                                                                  Neg (V ⟶ W)

                                                                                                                                                                  Componentwise negation.

                                                                                                                                                                  Equations
                                                                                                                                                                  @[instance_reducible]
                                                                                                                                                                  instance RS.SuperVect.instSubHom {V W : SuperVect} :
                                                                                                                                                                  Sub (V ⟶ W)

                                                                                                                                                                  Componentwise subtraction.

                                                                                                                                                                  Equations
                                                                                                                                                                  @[instance_reducible]

                                                                                                                                                                  Componentwise scaling by a complex number.

                                                                                                                                                                  Equations
                                                                                                                                                                  @[instance_reducible]

                                                                                                                                                                  Componentwise natural scaling, given definitionally so that the AddCommGroup structure below has no transported nsmul field.

                                                                                                                                                                  Equations
                                                                                                                                                                  @[instance_reducible]

                                                                                                                                                                  Componentwise integer scaling, likewise definitional.

                                                                                                                                                                  Equations

                                                                                                                                                                  The components of a morphism determine it; the additive and module structures are pulled back componentwise.

                                                                                                                                                                  Equations
                                                                                                                                                                  Instances For

                                                                                                                                                                    Componentwise equality of morphisms.

                                                                                                                                                                    @[instance_reducible]

                                                                                                                                                                    Morphisms form an abelian group, pulled back along the injection into the pair of component maps.

                                                                                                                                                                    Equations
                                                                                                                                                                    @[instance_reducible]

                                                                                                                                                                    Morphisms form a ℂ-module, pulled back the same way: SuperVect is ℂ-linear.

                                                                                                                                                                    Equations
                                                                                                                                                                    @[simp]
                                                                                                                                                                    theorem RS.SuperVect.add_evenMap {V W : SuperVect} (f g : V ⟶ W) :

                                                                                                                                                                    Addition of morphisms is componentwise on the even part.

                                                                                                                                                                    @[simp]
                                                                                                                                                                    theorem RS.SuperVect.add_oddMap {V W : SuperVect} (f g : V ⟶ W) :
                                                                                                                                                                    (f + g).oddMap = f.oddMap + g.oddMap

                                                                                                                                                                    Addition of morphisms is componentwise on the odd part.

                                                                                                                                                                    @[simp]

                                                                                                                                                                    The zero morphism's even component is zero.

                                                                                                                                                                    @[simp]

                                                                                                                                                                    The zero morphism's odd component is zero.

                                                                                                                                                                    @[simp]
                                                                                                                                                                    theorem RS.SuperVect.smul_evenMap {V W : SuperVect} (c : ℂ) (f : V ⟶ W) :
                                                                                                                                                                    (c • f).evenMap = c • f.evenMap

                                                                                                                                                                    Scalar multiplication is componentwise on the even part.

                                                                                                                                                                    @[simp]
                                                                                                                                                                    theorem RS.SuperVect.smul_oddMap {V W : SuperVect} (c : ℂ) (f : V ⟶ W) :
                                                                                                                                                                    (c • f).oddMap = c • f.oddMap

                                                                                                                                                                    Scalar multiplication is componentwise on the odd part.

                                                                                                                                                                    @[instance_reducible]

                                                                                                                                                                    SuperVect is preadditive: composition is bilinear componentwise.

                                                                                                                                                                    Equations
                                                                                                                                                                    @[instance_reducible]

                                                                                                                                                                    SuperVect is ℂ-linear: composition is ℂ-bilinear componentwise.

                                                                                                                                                                    Equations

                                                                                                                                                                    10. The vocabulary of Deligne's hypotheses #

                                                                                                                                                                    Subquotients and bounded composition length, scalar unit endomorphisms, iterated and mixed tensor powers, finite ⊗-generation, and moderate growth: exactly the predicates in which the hypothesis list of Théorème 0.6 is phrased. (Their theory continues in RS/Classical/CatTheory/.)

                                                                                                                                                                    Y is a subquotient of Z: a quotient of a subobject of Z. This is the relation Deligne's tensor-generation hypothesis is stated with.

                                                                                                                                                                    Equations
                                                                                                                                                                    Instances For

                                                                                                                                                                      A retract is in particular a subquotient: a splitting makes the inclusion a mono, and the object is a quotient of itself.

                                                                                                                                                                      def RS.LengthLE {C : Type u} [CategoryTheory.Category.{v, u} C] (Y : C) (k : ℕ) :

                                                                                                                                                                      LengthLE Y k states that the subobject order of Y contains no strictly increasing chain of k + 2 subobjects; equivalently, every chain 0 = Y₀ < ⋯ < Y_ℓ = Y has ℓ ≤ k, so the composition length of Y is at most k.

                                                                                                                                                                      Equations
                                                                                                                                                                      Instances For

                                                                                                                                                                        A mixed tensor power of X: X ^ ⊗ a ⊗ (Xᘁ) ^ ⊗ b.

                                                                                                                                                                        Equations
                                                                                                                                                                        Instances For

                                                                                                                                                                          Finite tensor generation, in the sense of Deligne's hypothesis: every object is a subquotient of a finite biproduct of mixed tensor powers of X — a quotient of a subobject of such a biproduct.

                                                                                                                                                                          Equations
                                                                                                                                                                          Instances For

                                                                                                                                                                            Every object has moderate tensor-power growth, measured by composition length.

                                                                                                                                                                            Equations
                                                                                                                                                                            Instances For

                                                                                                                                                                              11. Deligne's theorem #

                                                                                                                                                                              The correspondence with the published hypotheses, item by item: essentially small — [EssentiallySmall.{v} A]; abelian ℂ-linear with ℂ-bilinear tensor — [Abelian A], [Linear ℂ A], [MonoidalPreadditive A], [MonoidalLinear ℂ A]; rigid symmetric monoidal — [MonoidalCategory A], [SymmetricCategory A], [RigidCategory A]; End 𝟙 = ℂ — HasScalarUnit A; finitely ⊗-generated — ∃ X, TensorGeneratedBy A X; moderate growth — ModerateLengthGrowth A. Exactness of the tensor product needs no separate hypothesis (rigidity makes X ⊗ − a two-sided adjoint), and [HasFiniteBiproducts A] is implied by [Abelian A], named only so the generation predicate can be stated. The conclusion is taken in fibre-functor form — weaker than Deligne's ⊗-equivalence with the representations of an affine supergroup scheme, which yields the functor by composing with the forgetful functor.

                                                                                                                                                                              Reference: Pierre Deligne, Catégories tensorielles, Moscow Math. J. 2 (2002), 227–248, Théorème 0.6 (with §0.1 for the definitions); see also Victor Ostrik, Tensor categories (after P. Deligne), arXiv:math/0401347, Thm 2.3.

                                                                                                                                                                              The conclusion of Deligne's theorem for a candidate tensor category: an exact faithful ℂ-linear symmetric monoidal functor into super vector spaces. This extends the consumed interface (DelignePackage) by the conclusions the development does not use: faithfulness, and exactness in the form of preservation of finite limits and finite colimits.

                                                                                                                                                                              Instances For

                                                                                                                                                                                Deligne's theorem (Catégories tensorielles, Théorème 0.6): every essentially small abelian ℂ-linear rigid symmetric monoidal category with ℂ-bilinear tensor product, scalar unit endomorphisms, a finite tensor generator and moderate growth of the lengths of its tensor powers admits an exact faithful ℂ-linear symmetric monoidal fibre functor to finite-dimensional super vector spaces.

                                                                                                                                                                                Equations
                                                                                                                                                                                • One or more equations did not get rendered due to their size.
                                                                                                                                                                                Instances For