Documentation

LeanPool.HardSphereNBC.NBCMatroid

The NBC cancellation is first proved at the level of a finite matroid. The graphic specialization only needs the standard cycle-matroid interface: spanning edge sets are the connected subgraphs and circuits are graph cycles. Keeping this layer independent makes the cancellation proof auditable and avoids hiding it behind a library theorem.

noncomputable def HsVirial.matroidGround {α : Type u_1} [Fintype α] (M : Matroid α) :

The ground set of a matroid on a finite ambient type, as a finite set.

Equations
Instances For
    theorem HsVirial.mem_matroidGround {α : Type u_1} [Fintype α] (M : Matroid α) (e : α) :
    def HsVirial.IsNBCandidate {α : Type u_1} [DecidableEq α] [LinearOrder α] (M : Matroid α) (A : Finset α) (e : α) :

    An element completing a circuit whose other elements lie in the specified set.

    Equations
    Instances For
      noncomputable def HsVirial.nbcCandidates {α : Type u_1} [Fintype α] [DecidableEq α] [LinearOrder α] (M : Matroid α) (A : Finset α) :

      The possible circuit-completing elements used by the cancellation involution.

      Equations
      Instances For
        def HsVirial.IsNBCBad {α : Type u_1} [Fintype α] [DecidableEq α] [LinearOrder α] (M : Matroid α) (A : Finset α) :

        The set has at least one broken-circuit witness.

        Equations
        Instances For
          theorem HsVirial.nbcCandidate_mem_ground {α : Type u_1} [Fintype α] [DecidableEq α] [LinearOrder α] {M : Matroid α} {A : Finset α} {e : α} (h : IsNBCandidate M A e) :
          theorem HsVirial.mem_nbcCandidates {α : Type u_1} [Fintype α] [DecidableEq α] [LinearOrder α] {M : Matroid α} {A : Finset α} {e : α} :
          noncomputable def HsVirial.leastNBCandidate {α : Type u_1} [Fintype α] [DecidableEq α] [LinearOrder α] (M : Matroid α) (A : Finset α) (h : IsNBCBad M A) :
          α

          The least circuit-completing element, chosen to define the cancellation pairing.

          Equations
          Instances For
            theorem HsVirial.leastNBCandidate_mem {α : Type u_1} [Fintype α] [DecidableEq α] [LinearOrder α] {M : Matroid α} {A : Finset α} (h : IsNBCBad M A) :
            theorem HsVirial.leastNBCandidate_isCandidate {α : Type u_1} [Fintype α] [DecidableEq α] [LinearOrder α] {M : Matroid α} {A : Finset α} (h : IsNBCBad M A) :
            theorem HsVirial.leastNBCandidate_le {α : Type u_1} [Fintype α] [DecidableEq α] [LinearOrder α] {M : Matroid α} {A : Finset α} (h : IsNBCBad M A) {e : α} (he : IsNBCandidate M A e) :
            def HsVirial.toggleEdge {α : Type u_1} [DecidableEq α] (A : Finset α) (e : α) :

            Remove an element if present and insert it otherwise.

            Equations
            Instances For
              theorem HsVirial.toggleEdge_toggleEdge {α : Type u_1} [DecidableEq α] (A : Finset α) (e : α) :
              theorem HsVirial.toggleEdge_ne {α : Type u_1} [DecidableEq α] (A : Finset α) (e : α) :
              theorem HsVirial.card_toggleEdge {α : Type u_1} [DecidableEq α] (A : Finset α) (e : α) :
              (toggleEdge A e).card = if e ∈ A then A.card - 1 else A.card + 1
              theorem HsVirial.candidate_toggleEdge {α : Type u_1} [DecidableEq α] [LinearOrder α] {M : Matroid α} {A : Finset α} {e : α} (h : IsNBCandidate M A e) :
              theorem HsVirial.candidate_smaller_toggle_iff {α : Type u_1} [DecidableEq α] [LinearOrder α] {M : Matroid α} {A : Finset α} {e f : α} (hfe : f < e) :

              The alternating sign determined by a natural-number cardinality.

              Equations
              Instances For
                noncomputable def HsVirial.spanningSubsets {α : Type u_1} [Fintype α] (M : Matroid α) :

                Enumerate the spanning subsets of the matroid ground set.

                Equations
                Instances For
                  noncomputable def HsVirial.badSpanningSubsets {α : Type u_1} [Fintype α] [DecidableEq α] [LinearOrder α] (M : Matroid α) :

                  Enumerate spanning subsets with a broken-circuit witness.

                  Equations
                  Instances For
                    noncomputable def HsVirial.baseSubsets {α : Type u_1} [Fintype α] (M : Matroid α) :

                    Enumerate the bases of the matroid.

                    Equations
                    Instances For
                      theorem HsVirial.mem_spanningSubsets {α : Type u_1} [Fintype α] {M : Matroid α} {A : Finset α} (hA : A ∈ spanningSubsets M) :
                      M.Spanning ↑A
                      theorem HsVirial.mem_badSpanningSubsets {α : Type u_1} [Fintype α] [DecidableEq α] [LinearOrder α] {M : Matroid α} {A : Finset α} (hA : A ∈ badSpanningSubsets M) :
                      M.Spanning ↑A ∧ IsNBCBad M A
                      theorem HsVirial.spanning_toggleEdge {α : Type u_1} [DecidableEq α] [LinearOrder α] {M : Matroid α} {A : Finset α} {e : α} (hA : M.Spanning ↑A) (he : IsNBCandidate M A e) :
                      M.Spanning ↑(toggleEdge A e)
                      theorem HsVirial.spanning_not_nbcBad_isIndependent {α : Type u_1} [Fintype α] [DecidableEq α] [LinearOrder α] {M : Matroid α} {A : Finset α} (hA : A ∈ spanningSubsets M) (hbad : ¬IsNBCBad M A) :
                      M.Indep ↑A
                      noncomputable def HsVirial.nbcBaseSubsets {α : Type u_1} [Fintype α] [DecidableEq α] [LinearOrder α] (M : Matroid α) :

                      Enumerate spanning sets with no broken circuit, which are the surviving bases.

                      Equations
                      Instances For
                        theorem HsVirial.nbcBase_isBase {α : Type u_1} [Fintype α] [DecidableEq α] [LinearOrder α] {M : Matroid α} {A : Finset α} (hA : A ∈ nbcBaseSubsets M) :
                        M.IsBase ↑A
                        noncomputable def HsVirial.signedSpanningSum {α : Type u_1} [Fintype α] (M : Matroid α) :

                        The sum of cardinality-parity signs over all spanning subsets.

                        Equations
                        Instances For
                          noncomputable def HsVirial.signedNBCSum {α : Type u_1} [Fintype α] [DecidableEq α] [LinearOrder α] (M : Matroid α) :

                          The sum of cardinality-parity signs over the surviving no-broken-circuit sets.

                          Equations
                          Instances For