Documentation

Complexitylib.Algebraic.LowerBound.Fusion.SumOfTerms.Rectangle

Rectangle-cover fusion bounds #

This file specializes finite-support coverage fusion to combinatorial rectangles. An allowed term is a Cartesian product contained in the target relation; addition takes unions of supports. Thus the resulting circuits are monotone sums of admissible product terms, equivalently exact rectangle covers.

A local upper bound on the size of an admissible rectangle gives a term-count lower bound. For the diagonal relation every admissible rectangle contains at most one pair, so an exact cover needs one charged term per diagonal entry.

structure Algebraic.Fusion.SumOfTerms.Rectangle.Term {L : Type u} {R : Type v} [DecidableEq L] [DecidableEq R] (target : Finset (L × R)) :
Type (max u v)

A combinatorial rectangle whose whole support lies in the target relation.

  • left : Finset L

    Left side of the rectangle.

  • right : Finset R

    Right side of the rectangle.

  • product_subset : self.left.product self.right ⊆ target

    Admissibility prevents a monotone term from producing an off-target monomial.

Instances For
    def Algebraic.Fusion.SumOfTerms.Rectangle.termSupport {L : Type u} {R : Type v} [DecidableEq L] [DecidableEq R] {target : Finset (L × R)} (term : Term target) :

    The finite monomial support contributed by one rectangle term.

    Equations
    Instances For
      @[simp]
      theorem Algebraic.Fusion.SumOfTerms.Rectangle.termSupport_monomials {L : Type u} {R : Type v} [DecidableEq L] [DecidableEq R] {target : Finset (L × R)} (term : Term target) :
      structure Algebraic.Fusion.SumOfTerms.Rectangle.Bound {L : Type u} {R : Type v} [DecidableEq L] [DecidableEq R] (target : Finset (L × R)) :

      A uniform size bound for admissible rectangles in a target relation.

      • capacity : ℕ

        Maximum cardinality of one admissible rectangle.

      • rectangle_card_le (term : Term target) : (term.left.product term.right).card ≤ self.capacity

        The local rectangle-size estimate.

      Instances For

        The witnesses covered by a rectangle inject into its Cartesian-product support.

        noncomputable def Algebraic.Fusion.SumOfTerms.Rectangle.Bound.coverageBound {L : Type u} {R : Type v} [DecidableEq L] [DecidableEq R] {target : Finset (L × R)} (bound : Bound target) :

        Rectangle-size bounds are finite-support coverage bounds.

        Equations
        Instances For
          @[simp]
          theorem Algebraic.Fusion.SumOfTerms.Rectangle.Bound.circuit_lowerBound {L : Type u} {R : Type v} [DecidableEq L] [DecidableEq R] {target : Finset (L × R)} (bound : Bound target) (positive : 0 < bound.capacity) (circuit : Circuit (SumOfTerms.signature (Term target)) 0 1) (constructs : (Coverage.problem target).Constructs circuit (SumOfTerms.interpretation termSupport)) :

          Every exact monotone rectangle cover has the expected cardinality lower bound.

          Embedding used to enumerate the diagonal relation without duplicates.

          Equations
          Instances For
            @[simp]
            theorem Algebraic.Fusion.SumOfTerms.Rectangle.mem_diagonal {I : Type u} [Fintype I] (pair : I × I) :
            pair ∈ diagonal I ↔ pair.1 = pair.2

            A rectangle contained in the diagonal has at most one pair.

            Capacity-one certificate for the finite diagonal relation.

            Equations
            Instances For

              An exact monotone sum of diagonal-contained product terms needs one term per diagonal monomial.