Documentation

InfinitaryLogic.Lomega1omega.QuantifierOccurrence

Signed quantifier occurrence (issue #15, budget gate 1) #

QuantifierClass.lean answers "is every quantifier of this sign admissible?"; Feferman's separator budgets need the dual, positive question: "does a quantifier of this sign occur?".

Defining occurrence as ¬ IsUniversal / ¬ IsExistential would work extensionally but makes every budget calculation a double-negation exercise. So occurrence is given its own signed recursion, with exact constructor equations, and the two are then related by an exact bridge:

universalSigned s φ ↔ ¬ hasQuantSigned (!s) φ
IsUniversal φ ↔ ¬ HasExistential φ      IsExistential φ ↔ ¬ HasUniversal φ

The sign discipline is the same as in QuantifierClass.lean and Polarity.lean: an antecedent flips, iSup/iInf preserve and are not quantifiers, and all is a universal occurrence at the positive sign only. Nothing here mentions interpolation; the set-level versions at the end are what the separator budgets are stated against.

@[reducible, inline]

A universal quantifier occurs in φ.

Equations
Instances For
    @[reducible, inline]

    An existential quantifier occurs in φ.

    Equations
    Instances For

      Constructor equations #

      @[simp]
      theorem FirstOrder.Language.BoundedFormulaω.hasQuantSigned_equal {L : Language} {α : Type} {n : } (s : Bool) (t₁ t₂ : L.Term (α Fin n)) :
      ¬hasQuantSigned s (equal t₁ t₂)
      @[simp]
      theorem FirstOrder.Language.BoundedFormulaω.hasQuantSigned_rel {L : Language} {α : Type} {n l : } (s : Bool) (R : L.Relations l) (ts : Fin lL.Term (α Fin n)) :
      @[simp]
      theorem FirstOrder.Language.BoundedFormulaω.hasQuantSigned_iSup {L : Language} {α : Type} {n : } (s : Bool) (φs : L.BoundedFormulaω α n) :
      hasQuantSigned s (iSup φs) ∃ (i : ), hasQuantSigned s (φs i)
      @[simp]
      theorem FirstOrder.Language.BoundedFormulaω.hasQuantSigned_iInf {L : Language} {α : Type} {n : } (s : Bool) (φs : L.BoundedFormulaω α n) :
      hasQuantSigned s (iInf φs) ∃ (i : ), hasQuantSigned s (φs i)
      @[simp]

      Negation exchanges the two occurrence notions.

      The exact bridge to the quantifier classes #

      The bridge. Being of a class is exactly the absence of an occurrence of the opposite sign.

      Stability under the variable operations #

      theorem FirstOrder.Language.BoundedFormulaω.hasQuantSigned_relabel {L : Language} {α β : Type} {n : } (s : Bool) (g : αβ Fin n) {k : } (φ : L.BoundedFormulaω α k) :
      theorem FirstOrder.Language.BoundedFormulaω.hasQuantSigned_subst {L : Language} {α β : Type} (s : Bool) {n : } (φ : L.BoundedFormulaω α n) (tf : αL.Term β) :

      Set-level occurrence: the budget sources #

      A quantifier of sign s occurs somewhere in the set — the source of a separator budget.

      Equations
      Instances For
        @[reducible, inline]

        A universal quantifier occurs somewhere in T.

        Equations
        Instances For
          @[reducible, inline]

          An existential quantifier occurs somewhere in T.

          Equations
          Instances For

            Non-growth: inserting a sentence whose s-occurrences are already licensed does not enlarge the budget. This is the shape every consistency-property branch step needs.