✖

Komplementet til et regulært språk

Vi har et regulært språk L. Vi skal bevise at komplementet til språket L igjen er et regulært språk.

Hva komplementet er

Med komplementet til språket L mener vi alle ord som ikke er i språket L. Komplementet betegner vi L'. For alfabetet Σ gjelder altså at:

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

For språket av ord som inneholder minst ett symbol 1, ville komplementet for eksempel være språket som inneholder ordene som ikke inneholder noe symbol 1 i det hele tatt.

Framgangsmåte

Framgangsmåten er veldig enkel. Vi har et regulært språk L og en deterministisk total automat A = ⟨Q, Σ, δ, q0, F⟩ som aksepterer det (hver endelig automat kan omformes til en slik). Automaten A' som aksepterer L', konstruerer vi ved å bytte om sluttilstandene og tilstandene som ikke er sluttilstander: A' = ⟨Q, Σ, δ, q0, Q ∖ F⟩. Det er alt.

Eksempel

La oss ha denne automaten:

Automaten som aksepterer komplementet til språket, ville sett slik ut:

Kilder

Kapitler: Lukkethet av regulære språk, Union av regulære språk, Snitt av regulære språk, Differanse av regulære språk, Komplementet til et regulært språk, Konkatenering av regulære språk, Kleene-stjernen til et regulært språk