Lax132576.PrimesOfRational
Rational functions decompose into prime rational functions
concepts/Lax132576/PrimesOfRational.lean · lax-132576
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 49 of the paper of lax-157538, Transducers
Theorem
Every rational function is a composition of prime rational functions — prime Mealy machines, their right-to-left variants, string homomorphisms and the separator function (Theorem B.2.6 of Transducers, the implication ⇒). By Eilenberg's theorem the function is computed by a bimachine; one appends the separator, labels every position with the state of the prefix automaton (a Mealy machine, decomposed by the Krohn–Rhodes theorem) and with the state of the suffix automaton (a right-to-left Mealy machine, the state being stored one position to the right, which is what the separator is for), and a homomorphism produces the output of every gap.
Lean source view on GitHub
| 1 | import Lax132576.RationalFunctions |
| 2 | import Lax132576.PrimeRationalFunctions |
| 3 | |
| 4 | /-! |
| 5 | --- |
| 6 | title: Rational functions decompose into prime rational functions |
| 7 | type: theorem |
| 8 | --- |
| 9 | Every rational function is a composition of prime rational functions — prime |
| 10 | Mealy machines, their right-to-left variants, string homomorphisms and the |
| 11 | separator function (Theorem B.2.6 of *Transducers*, the |
| 12 | implication ⇒). By Eilenberg's theorem the function is computed by a |
| 13 | bimachine; one appends the separator, labels every position with the state of |
| 14 | the prefix automaton (a Mealy machine, decomposed by the Krohn–Rhodes theorem) |
| 15 | and with the state of the suffix automaton (a right-to-left Mealy machine, the |
| 16 | state being stored one position to the right, which is what the separator is |
| 17 | for), and a homomorphism produces the output of every gap. |
| 18 | |
| 19 | # Formalization notes |
| 20 | |
| 21 | The conclusion is membership in `CompClosure PrimeRationalFam`. Both alphabets |
| 22 | are assumed finite, as the Krohn–Rhodes decomposition of the two automata |
| 23 | needs. |
| 24 | -/ |
| 25 | |
| 26 | namespace Lax132576.PrimesOfRational |
| 27 | |
| 28 | open Lax765601.CompositionClosure Lax132576.RationalFunctions Lax132576.PrimeRationalFunctions |
| 29 | |
| 30 | /-- A rational function is a composition of prime rational functions. -/ |
| 31 | axiom compClosure_primeRational_of_isRationalFun {A B : Type} [Finite A] [Finite B] |
| 32 | {f : List A → List B} (hf : IsRationalFun f) : CompClosure PrimeRationalFam A B f |
| 33 | |
| 34 | end Lax132576.PrimesOfRational |
| 35 |
Formalization notes
The conclusion is membership in . Both alphabets are assumed finite, as the Krohn–Rhodes decomposition of the two automata needs.
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