✖

Komplement till ett reguljärt språk

Vi har ett reguljärt språk L. Vi bevisar att komplementet till språket L också är ett reguljärt språk.

Vad är ett komplement

Med komplementet till språket L menar vi alla ord som inte finns i språket L. Komplementet betecknas L'. Det vill säga, för alfabetet Σ gäller att:

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

För språket av ord som innehåller minst en symbol 1 är till exempel komplementet det språk som innehåller de ord som inte innehåller någon symbol 1 alls.

Metod

Metoden är mycket enkel. Vi har ett reguljärt språk L och en deterministisk total automat A = ⟨Q, Σ, δ, q0, F⟩ som accepterar det (varje ändlig automat kan omvandlas till en sådan). Automaten A' som accepterar L' konstruerar vi genom att byta plats på sluttillstånden och de icke-accepterande tillstånden: A' = ⟨Q, Σ, δ, q0, Q ∖ F⟩. Det är allt.

Exempel

Låt oss ta den här automaten:

Automaten som accepterar komplementet till språket skulle se ut så här:

Källor

Kapitel: Slutenhet hos reguljära språk, Union av reguljära språk, Snitt av reguljära språk, Differens av reguljära språk, Komplement till ett reguljärt språk, Konkatenering av reguljära språk, Kleenestjärnan av ett reguljärt språk