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

Lax132576.RationalComposition

Rational relations are closed under composition

concepts/Lax132576/RationalComposition.lean · lax-132576

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

    If RA×BR \subseteq A^* \times B^* and SB×CS \subseteq B^* \times C^* are rational relations, then so is their relational composition

    RS={(u,v)A×CuRw and wSv for some wB}R \cdot S = \{(u, v) \in A^* \times C^* \mid u\,R\,w \text{ and } w\,S\,v \text{ for some } w \in B^*\}

    (Theorem B.1.4 of Transducers). The proof is the product construction of Theorem A.1.3, after splitting transitions so that each produces at most one letter of input or output and adding empty transitions around every state, so that the two runs can be synchronised on the intermediate string.

    Lean source view on GitHub

    1import Lax132576.RationalRelations
    2
    3/-!
    4---
    5title: Rational relations are closed under composition
    6type: theorem
    7---
    8If RA×BR \subseteq A^* \times B^* and SB×CS \subseteq B^* \times C^* are rational
    9relations, then so is their relational composition
    10RS={(u,v)A×CuRw and wSv for some wB}R \cdot S = \{(u, v) \in A^* \times C^* \mid u\,R\,w \text{ and } w\,S\,v \text{ for some } w \in B^*\}
    11(Theorem B.1.4 of *Transducers*). The proof is the product construction of
    12Theorem A.1.3, after splitting transitions so that each produces at most one
    13letter of input or output and adding empty transitions around every state, so
    14that the two runs can be synchronised on the intermediate string.
    15
    16# Formalization notes
    17
    18No finiteness of the alphabets is needed: the product construction only uses
    19the finiteness of the two state spaces.
    20-/
    21
    22namespace Lax132576.RationalComposition
    23
    24open Lax132576.RationalRelations
    25
    26/-- The composition of two rational relations is rational. -/
    27axiom isRationalRel_comp {A B C : Type}
    28 {R : List A → List B → Prop} {S : List B → List C → Prop}
    29 (hR : IsRationalRel R) (hS : IsRationalRel S) :
    30 IsRationalRel (fun w v => ∃ u, R w u ∧ S u v)
    31
    32end Lax132576.RationalComposition
    33
    Show Proof

    Formalization notes

    No finiteness of the alphabets is needed: the product construction only uses the finiteness of the two state spaces.

    Used by

    none

    From Mathlib

    none

    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…