Langlib

Langlib.Classes.Indexed.Inclusion.StrictContextSensitive

Strict inclusion of indexed languages in context-sensitive languages #

Every recursively enumerable language over a finite alphabet is an erasing homomorphic image of a context-sensitive language. Apply this construction to the unary halting language. Its padded cover uses the binary alphabet Option Unit and is context-sensitive. It cannot be indexed: indexed languages are closed under arbitrary homomorphisms, so erasing the padding would make the halting language indexed, hence context-sensitive and therefore recursive.

The resulting binary witness proves IndexedCS. Injective terminal relabelling and reflection transport the witness to every finite alphabet with at least two symbols.

Main declarations #

There is a context-sensitive language over the binary alphabet Option Unit whose padding-erasing image is the unary halting language.

A binary context-sensitive language whose padding erases to the unary halting language.

Equations
Instances For

    The binary strictness witness is context-sensitive.

    Erasing the distinguished padding symbol from the binary witness gives the unary halting language.

    The binary context-sensitive witness is not indexed.

    theorem Indexed_subclass_CS_and_exists_strict :
    (∀ (T : Type) (L : Language T), is_Indexed Lis_CS L) ∃ (T : Type) (L : Language T), is_CS L ¬is_Indexed L

    Indexed languages are included in context-sensitive languages over every alphabet, and the inclusion is strict over at least one alphabet.

    For every finite alphabet with at least two symbols, indexed languages form a strict subclass of the context-sensitive languages.