Documentation

LeanPool.BrillNoetherGraphs.Utilities.Subdivision.AffineDecisionCoverData

Affine wall-decision cover certificates #

AffineCover.CoverTree proves a union of cones by choosing a violated row from every cone. Highly overlapping cone families can make that proof enormous. This file supplies the dual passive certificate: branch on one integral affine wall and its exact strict complement, stop as soon as one advertised cone is literally contained in the active rows, and close infeasible sign chambers by a Farkas certificate.

The checker is deliberately small. Generated search code is untrusted; only the Boolean replay and the theorem below enter the proof.

Passive, emitter-friendly wall decision data.

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

      Validity of a decision tree relative to the affine constraints active at this node.

      Equations
      Instances For

        Check active affine constraints at each decision-tree node using Boolean arithmetic.

        Equations
        Instances For

          Mathematical validity of wall-decision data at the displayed base rows.

          Equations
          Instances For

            Executable exact replay of wall-decision data.

            Equations
            Instances For
              @[simp]
              theorem Utilities.Certificate.AffineCover.DecisionTreeData.check_branch {m : ℕ} (form : AffineForm m) (holds fails : DecisionTreeData m) (active : List (AffineForm m)) (cones : List (List (AffineForm m))) :
              (branch form holds fails).check active cones = (holds.check (active ++ [form]) cones && fails.check (active ++ [form.violation]) cones)

              Public one-step reduction rule, allowing large generated trees to cache checked subtrees in separate modules instead of reducing the whole tree in one kernel invocation.

              @[simp]
              theorem Utilities.Certificate.AffineCover.DecisionTreeData.check_eq_true_iff {m : ℕ} (data : DecisionTreeData m) (base : List (AffineForm m)) (cones : List (List (AffineForm m))) :
              data.check base cones = true ↔ data.Valid base cones
              theorem Utilities.Certificate.AffineCover.DecisionTreeData.covers_of_check_eq_true {m : ℕ} (data : DecisionTreeData m) (base : List (AffineForm m)) (cones : List (List (AffineForm m))) (hCheck : data.check base cones = true) :
              Covers base cones

              Accepted wall-decision data proves that the advertised cones cover the base region at every integral point.

              theorem Utilities.Certificate.AffineCover.DecisionTreeData.exists_index_of_check_eq_true {m : ℕ} (data : DecisionTreeData m) (base : List (AffineForm m)) (cones : List (List (AffineForm m))) (hCheck : data.check base cones = true) (point : Fin m → ℤ) (hBase : FormsHold base point) :
              ∃ cone < cones.length, FormsHold (CoverTree.coneAt cones cone) point

              Indexed form of covers_of_check_eq_true, for consumers whose semantic payload is stored in a list parallel to the advertised cones.