✖

Complemento di un linguaggio regolare

Sia L un linguaggio regolare. Dimostreremo che il complemento del linguaggio L è ancora un linguaggio regolare.

Cos’è il complemento

Per complemento del linguaggio L intendiamo tutte le parole che non appartengono a L. Il complemento si indica con L'. Cioè, dato l’alfabeto Σ, si ha:

L′={w∈Σ∗∣w∉L}.

Ad esempio, per il linguaggio delle parole che contengono almeno un simbolo 1, il complemento è il linguaggio delle parole che non contengono nessun simbolo 1.

Procedimento

Il procedimento è molto semplice. Abbiamo un linguaggio regolare L e un automa deterministico completo A = ⟨Q, Σ, δ, q0, F⟩ che lo accetta (ogni automa a stati finiti si può trasformare in uno di questo tipo). L’automa A' che accetta L' si costruisce scambiando gli stati finali e quelli non finali: A' = ⟨Q, Σ, δ, q0, Q ∖ F⟩. Tutto qui.

Esempio

Consideriamo questo automa:

L’automa che accetta il complemento del linguaggio sarebbe fatto così:

Fonti

Capitoli: Chiusura dei linguaggi regolari, Unione di linguaggi regolari, Intersezione di linguaggi regolari, Differenza di linguaggi regolari, Complemento di un linguaggio regolare, Concatenazione di linguaggi regolari, Chiusura di Kleene di un linguaggio regolare