Linear languages are not closed under concatenation #
A corollary of the linear pumping lemma: the witness
{0ⁿ1ⁿ2ᵐ3ᵐ} is the concatenation of the two linear languages {0ⁿ1ⁿ} and
{2ᵐ3ᵐ}, yet it is itself not linear. Hence the class of linear languages is not
closed under concatenation (unlike the context-free languages). As with the strict
inclusion, this transports to any alphabet with at least 4 elements.
Main results #
exists_Linear_concat_not_Linear— two linear languages whose concatenation is not linear.Linear_not_closedUnderConcatenation—Linearis not closed under concatenation over alphabets with at least 4 elements.
The two linear factors concatenate to the relabelled witness language.
{aⁿbⁿ} (the first factor over T) is linear.
{cᵐdᵐ} (the second factor over T) is linear.
The class of linear languages is not closed under concatenation over any alphabet with at least 4 elements.
theorem
Linear_not_closedUnderConcatenation_of_card
{T : Type}
[Fintype T]
(hT : 4 ≤ Fintype.card T)
:
The class of linear languages is not closed under concatenation over any finite alphabet with at least 4 elements.