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

Lax916827.SSTOfRegular

Every regular function is computed by a streaming string transducer

concepts/Lax916827/SSTOfRegular.lean · lax-916827

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

    Every regular function is computed by a streaming string transducer (Theorem C.3.2 of Transducers, the implication from regular to sst). Streaming string transducers are closed under post-composition with every prime regular function — a rational function through the Krohn–Rhodes decomposition of its Mealy machines, map reverse and map duplicate by keeping the register contents as tuples indexed by the separators inside them — and the identity is an sst.

    Lean source view on GitHub

    1import Lax916827.RegularFunctions
    2import Lax916827.StreamingStringTransducers
    3
    4/-!
    5---
    6title: Every regular function is computed by a streaming string transducer
    7type: theorem
    8---
    9Every regular function is computed by a streaming string transducer (Theorem
    10C.3.2 of *Transducers*, the implication from regular to sst). Streaming string
    11transducers are closed under post-composition with every prime regular
    12function — a rational function through the Krohn–Rhodes decomposition of its
    13Mealy machines, map reverse and map duplicate by keeping the register contents
    14as tuples indexed by the separators inside them — and the identity is an sst.
    15
    16# Formalization notes
    17
    18Both alphabets are assumed finite, as in the book.
    19-/
    20
    21namespace Lax916827.SSTOfRegular
    22
    23open Lax916827.RegularFunctions Lax916827.StreamingStringTransducers
    24
    25/-- A regular function is computed by a streaming string transducer. -/
    26axiom isSST_of_isRegularFun {A B : Type} [Finite A] [Finite B] {f : List A → List B}
    27 (hf : IsRegularFun f) : IsSST f
    28
    29end Lax916827.SSTOfRegular
    30
    Show Proof

    Formalization notes

    Both alphabets are assumed finite, as in the book.

    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…