Draft — mutable and not usable as a dependency; its citation marks the draft state.

Lax194892.PebbleReachability

Reachability between configurations of a pebble transducer is regular

concepts/Lax194892/PebbleReachability.lean · lax-194892

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.

    Concept map

    Proven claimDefinitionThis conceptRelated conceptA → B: B builds on A

    Evidence

    Each proof establishes this claim relative to its assumptions.

    In the paper

    Theorem

    Reachability between two configurations of a kk-pebble transducer is definable: there is an mso formula φ(s,t)\varphi(s, t) over configurations which holds if some run begins in ss and ends in tt (Lemma D.2.2 of Transducers). Reachability is reduced, by induction on the height, to reachability between configurations that share their lower pebbles, which is checked by a pebble automaton with one pebble more.

    Lean source view on GitHub

    1import Mathlib.Computability.DFA
    2import Lax194892.PebbleConfigurationEncoding
    3
    4/-!
    5---
    6title: Reachability between configurations of a pebble transducer is regular
    7type: theorem
    8---
    9Reachability between two configurations of a kk-pebble transducer is
    10definable: there is an mso formula φ(s,t)\varphi(s, t) over configurations which
    11holds if some run begins in ss and ends in tt (Lemma D.2.2 of
    12*Transducers*). Reachability is reduced, by induction on the height, to
    13reachability between configurations that share their lower pebbles, which is
    14checked by a pebble automaton with one pebble more.
    15
    16# Formalization notes
    17
    18The book asks for an mso formula whose two free variables range over
    19configurations. Here the pair of configurations is encoded into the input
    20string (`pairEnc`, one letter per gap) and the conclusion is that the set of
    21encodings of reachable pairs is a *regular language* — equivalently, by Büchi's
    22theorem, an mso-definable one. Since a formula is only ever evaluated on a
    23genuine structure, the language is only required to be correct on genuine
    24encodings: stacks of at most `k` gaps of the input. Stated for pebble
    25transducers rather than pebble automata, which have the same configuration
    26graph.
    27-/
    28
    29namespace Lax194892.PebbleReachability
    30
    31open Lax194892.PebbleTransducers Lax194892.PebbleConfigurationEncoding
    32
    33/-- The encodings of pairs of configurations connected by a run form a regular
    34language. -/
    35axiom exists_regular_reachLang {A B Q : Type} {k : ℕ} [Finite A] [Finite Q] (M : Pebble A B Q k) :
    36 ∃ L : Language (PairLetter A Q k), L.IsRegular ∧
    37 ∀ (q₁ q₂ : Q) (sts stt : List ℕ) (w : List A),
    38 (∀ p ∈ sts, p ≤ w.length) → (∀ p ∈ stt, p ≤ w.length) →
    39 sts.length ≤ k → stt.length ≤ k →
    40 (pairEnc q₁ q₂ sts stt w ∈ L ↔
    41 ∃ v, M.Reaches w (PebbleCfg.conf q₁ sts) v (PebbleCfg.conf q₂ stt))
    42
    43end Lax194892.PebbleReachability
    44
    Show Proof

    Formalization notes

    The book asks for an mso formula whose two free variables range over configurations. Here the pair of configurations is encoded into the input string (pairEncpairEnc, one letter per gap) and the conclusion is that the set of encodings of reachable pairs is a regular language — equivalently, by Büchi's theorem, an mso-definable one. Since a formula is only ever evaluated on a genuine structure, the language is only required to be correct on genuine encodings: stacks of at most kk gaps of the input. Stated for pebble transducers rather than pebble automata, which have the same configuration graph.

    Community review

    Discussion

    Ask a question or add context. Endorsements and structured flags are kept in the review panel above; your ORCID profile must share a public name.

    0 comments

    Loading discussion…