Langlib

Langlib.Classes.Indexed.Closure.Injection

Indexed languages under injective terminal maps #

This file proves that indexed languages are both preserved and reflected by injective terminal maps.

Main declarations #

def IndexedGrammar.mapTerminals {T₁ T₂ : Type} (f : T₁T₂) (g : IndexedGrammar T₁) :
Equations
  • One or more equations did not get rendered due to their size.
Instances For
    theorem IndexedGrammar.language_mapTerminals {T₁ T₂ : Type} [Nonempty T₁] {f : T₁T₂} (hf : Function.Injective f) (g : IndexedGrammar T₁) :

    Mapping an indexed grammar along an injective terminal map maps its language exactly.

    theorem Indexed_of_map_injective_Indexed {T₁ T₂ : Type} [Nonempty T₁] {f : T₁T₂} (hf : Function.Injective f) (L : Language T₁) :

    Indexedness is preserved by an injective terminal map.

    theorem Indexed_of_map_injective_Indexed_rev {T₁ T₂ : Type} [Nonempty T₁] {f : T₁T₂} (hf : Function.Injective f) (L : Language T₁) (hL : is_Indexed ((Language.map f) L)) :

    Indexedness is reflected along an injective terminal map.