Lax314295.MSOFreeVariables
Formulas with free variables define regular languages of annotated strings
concepts/Lax314295/MSOFreeVariables.lean · lax-314295
No public endorsements yet.
Loading review…
Sign in with ORCIDConcept map
In the paper
- page 119 of the paper of lax-157538, Transducers
Theorem
Let be an mso formula over whose free variables are among the first-order variables and the set variables . Then the language over of the annotated strings such that is regular (Lemma C.4.2 of Transducers). The proof is an induction on the formula, with a nondeterministic automaton guessing the value of a quantified variable.
Lean source view on GitHub
| 1 | import Lax314295.MSOLogic |
| 2 | |
| 3 | /-! |
| 4 | --- |
| 5 | title: Formulas with free variables define regular languages of annotated strings |
| 6 | type: theorem |
| 7 | --- |
| 8 | Let be an mso formula over whose free variables are among the |
| 9 | first-order variables and the set variables |
| 10 | . Then the language over of the |
| 11 | annotated strings |
| 12 | such that |
| 13 | is regular |
| 14 | (Lemma C.4.2 of *Transducers*). The proof is an induction on the formula, with |
| 15 | a nondeterministic automaton guessing the value of a quantified variable. |
| 16 | |
| 17 | # Formalization notes |
| 18 | |
| 19 | The free variables are among `0, …, k-1` and `0, …, l-1`; the language is that |
| 20 | of the annotations `annotate k l w fo so` of valuations by positions and sets |
| 21 | of positions of `w` under which `w` satisfies `φ`. The alphabet is assumed |
| 22 | finite. |
| 23 | -/ |
| 24 | |
| 25 | namespace Lax314295.MSOFreeVariables |
| 26 | |
| 27 | open Lax314295.MSOLogic |
| 28 | |
| 29 | /-- The annotated strings satisfying a formula form a regular language. -/ |
| 30 | axiom isRegular_annotated {A : Type} [Finite A] (φ : MSO A) (k l : ℕ) |
| 31 | (hfo : φ.freeFO ⊆ {i | i < k}) (hso : φ.freeSO ⊆ {j | j < l}) : |
| 32 | Language.IsRegular |
| 33 | {u : List (A × (Fin k → Bool) × (Fin l → Bool)) | |
| 34 | ∃ (w : List A) (fo : Fin k → ℕ) (so : Fin l → Set ℕ), |
| 35 | (∀ i, fo i < w.length) ∧ (∀ j, so j ⊆ {p | p < w.length}) ∧ |
| 36 | u = annotate k l w fo so ∧ MSO.Sat w (extFO k fo) (extSO l so) φ} |
| 37 | |
| 38 | end Lax314295.MSOFreeVariables |
| 39 |
Formalization notes
The free variables are among and ; the language is that of the annotations of valuations by positions and sets of positions of under which satisfies . The alphabet is assumed finite.
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