Lax709149.RegularOfTerm
Regular terms define regular functions
concepts/Lax709149/RegularOfTerm.lean · lax-709149
No public endorsements yet.
Loading review…
Sign in with ORCIDConcept map
Evidence
Each proof establishes this claim relative to its assumptions.
In the paper
- page 141 of the paper of lax-157538, Transducers
Theorem
Every type-to-type function defined by a regular term is regular under string representation (Theorem C.5.4 of Transducers, the implication from terms to regular functions). The proof is an induction on the term: every atomic term is computed, on representations, by a rational or a regular string-to-string function — reading a representation with a bracket counter capped at the height of the type — and the four combinators preserve regularity under representation, composition by Theorem C.1.1, pairing and co-pairing through the closure properties of Lemma C.2.10, and map through map lifting.
Lean source view on GitHub
| 1 | import Lax709149.RegularUnderRepresentation |
| 2 | import Lax709149.RegularTerms |
| 3 | |
| 4 | /-! |
| 5 | --- |
| 6 | title: Regular terms define regular functions |
| 7 | type: theorem |
| 8 | --- |
| 9 | Every type-to-type function defined by a regular term is regular under string |
| 10 | representation (Theorem C.5.4 of *Transducers*, the implication from terms to |
| 11 | regular functions). The proof is an induction on the term: every atomic term |
| 12 | is computed, on representations, by a rational or a regular string-to-string |
| 13 | function — reading a representation with a bracket counter capped at the height |
| 14 | of the type — and the four combinators preserve regularity under representation, |
| 15 | composition by Theorem C.1.1, pairing and co-pairing through the closure |
| 16 | properties of Lemma C.2.10, and map through map lifting. |
| 17 | |
| 18 | # Formalization notes |
| 19 | |
| 20 | The converse implication of Theorem C.5.4, that every function regular under |
| 21 | string representation is defined by a regular term, is not formalised, and no |
| 22 | statement of the archive asserts it; this half is stated on its own. |
| 23 | -/ |
| 24 | |
| 25 | namespace Lax709149.RegularOfTerm |
| 26 | |
| 27 | open Lax709149.Types Lax709149.RegularUnderRepresentation Lax709149.RegularTerms |
| 28 | |
| 29 | /-- A function defined by a regular term is regular under string representation. -/ |
| 30 | axiom isRegularUnderRepr_of_isRegularTermFun {A B : Ty} {f : A.Elt → B.Elt} |
| 31 | (hf : IsRegularTermFun f) : IsRegularUnderRepr f |
| 32 | |
| 33 | end Lax709149.RegularOfTerm |
| 34 |
Formalization notes
The converse implication of Theorem C.5.4, that every function regular under string representation is defined by a regular term, is not formalised, and no statement of the archive asserts it; this half is stated on its own.
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