While this submission is a draft, it cannot be used by other submissions.

Invariance of formulas and inductions under pebble games

Lax945089.PebbleInvariance · concepts/Lax945089/PebbleInvariance.lean · lax-945089

proven

Loading review…

Sign in with ORCID

Community review

Flags

Each flag is tied to a public ORCID identity and explains why this concept may be incorrect.

No flags have been submitted.

    Community review

    Flag this concept

    State precisely what appears incorrect. This explanation will be public under your ORCID name.

    No source line selected.

    Natural Language Statement

    Theorem

    A first-order formula that fits in kk variables, its free variables and its quantifier depth together, cannot separate two tuples related by the kk-pebble equivalence generated by agreement on atomic types. On bare sets with at least kk elements each, two kk-tuples with the same equalities between coordinates are kk-pebble equivalent, whatever the two sizes: kk pebbles cannot count past kk. And an inflationary induction with variable budget kk takes the same value on two structures that have kk-pebble equivalent tuples.

    Concept map
    27 concepts
    100%
    Proven claimDefinitionThis conceptRelated conceptA → B: B builds on A
    Evidence

    This concept declares 3 statements. Each proof establishes one of them relative to its assumptions.

    2 ifpHolds_equivK₂ proven

    3 realize_equivK₂ proven

    Lean source view on GitHub

    1import Mathlib.ModelTheory.Order
    2import Mathlib.Order.Defs.LinearOrder
    3import Lax904597.Problems
    4import Lax904597.Interpretations
    5import Lax904597.Relativized
    6import Lax904597.SecondOrder
    7import Lax904597.Classes
    8import Lax485149.Problems
    9import Lax485149.FirstOrderDefinability
    10import Lax485149.TransitiveClosure
    11import Lax485149.DeterministicTransitiveClosure
    12import Lax485149.ClassNL
    13import Lax485149.ClassL
    14import Lax535992.InflationaryFixedPoint
    15import Lax535992.ClassPTIME
    16import Lax134656.PartialFixedPoint
    17import Lax895169.ArithmeticLogic
    18import Lax945089.OrderFreeFirstOrder
    19import Lax945089.EhrenfeuchtGames
    20import Lax945089.PebbleGames
    21import Lax945089.Even
    22import Lax945089.Parity
    23import Lax945089.TransitiveClosureReductions
    24
    25/-!
    26---
    27title: Invariance of formulas and inductions under pebble games
    28type: theorem
    29---
    30A first-order formula that fits in kk variables, its free variables and
    31its quantifier depth together, cannot separate two tuples related by the
    32kk-pebble equivalence generated by agreement on atomic types. On bare
    33sets with at least kk elements each, two kk-tuples with the same
    34equalities between coordinates are kk-pebble equivalent, whatever the two
    35sizes: kk pebbles cannot count past kk. And an inflationary induction
    36with variable budget kk takes the same value on two structures that have
    37kk-pebble equivalent tuples.
    38-/
    39
    40namespace Lax945089.PebbleInvariance
    41
    42open FirstOrder FirstOrder.Language
    43open Lax904597.Problems Lax904597.Interpretations Lax904597.Relativized Lax904597.SecondOrder
    44open Lax904597.Classes
    45open Lax485149.Problems Lax485149.FirstOrderDefinability Lax485149.TransitiveClosure
    46open Lax485149.DeterministicTransitiveClosure Lax485149.ClassNL Lax485149.ClassL
    47open Lax535992.InflationaryFixedPoint Lax535992.ClassPTIME
    48open Lax134656.PartialFixedPoint Lax895169.ArithmeticLogic
    49open Lax945089.OrderFreeFirstOrder Lax945089.EhrenfeuchtGames Lax945089.PebbleGames
    50open Lax945089.Even Lax945089.Parity
    51open Lax945089.TransitiveClosureReductions
    52
    53/-- A formula within `k` variables cannot separate `k`-pebble equivalent tuples. -/
    54axiom realize_equivK₂ :
    55 ∀ {L : Language.{0, 0}} {M N : Type} {k : ℕ} [L.IsRelational] [L.Structure M] [L.Structure N]
    56 [Finite M] [Finite N] {S : Set ((n : ℕ) × L.Relations n)} {α : Type} [Fintype α] {n : ℕ}
    57 (φ : L.BoundedFormula α n) (g : α → Fin k) (h : Fin n → Fin k), Function.Injective h →
    58 (∀ (i : α) (j : Fin n), g i ≠ h j) →
    59 (Finset.image g Finset.univ ∪ Finset.image h Finset.univ).card + qdepth φ ≤ k →
    60 RelsIn S φ → ∀ (v : Fin k → M) (w : Fin k → N), EquivK₂ (atomicAgreeOn₂ S M N k) v w →
    61 ((φ.Realize (fun i => v (g i)) fun j => v (h j)) ↔
    62 φ.Realize (fun i => w (g i)) fun j => w (h j))
    63
    64/-- On bare sets, tuples with the same equalities are `k`-pebble equivalent. -/
    65axiom equivK₂_bare :
    66 ∀ {M N : Type} {k : ℕ} [Language.empty.Structure M] [Language.empty.Structure N] [Finite M]
    67 [Finite N]
    68 {S : Set ((n : ℕ) × Language.empty.Relations n)}, k ≤ Nat.card M → k ≤ Nat.card N →
    69 ∀ {v : Fin k → M} {w : Fin k → N}, (∀ (p q : Fin k), v p = v q ↔ w p = w q) →
    70 EquivK₂ (atomicAgreeOn₂ S M N k) v w
    71
    72/-- An inflationary induction cannot separate two structures with `k`-pebble
    73equivalent tuples. -/
    74axiom ifpHolds_equivK₂ :
    75 ∀ {L : Language.{0, 0}} {M N : Type} {k : ℕ} {S : Set ((n : ℕ) × L.Relations n)}
    76 [L.Structure M] [L.Structure N] [L.IsRelational] [Finite M] [Finite N] (d : StepDef L),
    77 StepDef.VarBound d k → StepDef.UsesRels d S → qdepth d.out ≤ k →
    78 ∀ {v : Fin k → M} {w : Fin k → N}, EquivK₂ (atomicAgreeOn₂ S M N k) v w →
    79 (d.IFPHolds M ↔ d.IFPHolds N)
    80
    81end Lax945089.PebbleInvariance
    82
    Show ProofShow ProofShow Proof

    Discussion

    Ask a question or add context. Endorsements and structured flags are kept in the review panel above.

    Loading discussion…