Rational functions are computed by unambiguous automata
Lax132576.UnambiguousOfRational · concepts/Lax132576/UnambiguousOfRational.lean · lax-132576
No public endorsements yet.
Loading review…
Sign in with ORCIDNatural Language Statement
Theorem
Every rational function is computed by an unambiguous nondeterministic automaton with output, one with exactly one accepting run per input string: the implication (1) ⇒ (2) of Theorem B.2.3 of Transducers (Eilenberg). It is a consequence of the uniformisation lemma (Lemma B.2.5): the graph of a function is a total rational relation, so it contains an unambiguous rational relation, which must be the graph itself.
Concept map
In the paper
- page 45 of the paper of lax-157538, Transducers
Lean source view on GitHub
| 1 | import Lax132576.RationalFunctions |
| 2 | |
| 3 | /-! |
| 4 | --- |
| 5 | title: Rational functions are computed by unambiguous automata |
| 6 | type: theorem |
| 7 | --- |
| 8 | Every rational function is computed by an unambiguous nondeterministic |
| 9 | automaton with output, one with exactly one accepting run per input string: |
| 10 | the implication (1) ⇒ (2) of Theorem B.2.3 of *Transducers* (Eilenberg). It is |
| 11 | a consequence of the uniformisation lemma (Lemma B.2.5): the graph of a |
| 12 | function is a total rational relation, so it contains an unambiguous rational |
| 13 | relation, which must be the graph itself. |
| 14 | |
| 15 | # Formalization notes |
| 16 | |
| 17 | The conclusion is `IsUnambiguousRel` for the graph `fun w v => v = f w`. Both |
| 18 | alphabets are assumed finite, as the uniformisation construction needs. |
| 19 | -/ |
| 20 | |
| 21 | namespace Lax132576.UnambiguousOfRational |
| 22 | |
| 23 | open Lax132576.RationalRelations Lax132576.RationalFunctions |
| 24 | |
| 25 | /-- The graph of a rational function is computed by an unambiguous automaton with |
| 26 | output. -/ |
| 27 | axiom isUnambiguousRel_of_isRationalFun {A B : Type} [Finite A] [Finite B] |
| 28 | {f : List A → List B} (hf : IsRationalFun f) : IsUnambiguousRel (fun w v => v = f w) |
| 29 | |
| 30 | end Lax132576.UnambiguousOfRational |
| 31 |
Formalization notes
The conclusion is for the graph . Both alphabets are assumed finite, as the uniformisation construction needs.
Discussion
Ask a question or add context. Endorsements and structured flags are kept in the review panel above.
0 comments