Kleene-stjerne af et regulært sprog
Vi har et regulært sprog L. Vi viser, at Kleene-stjernen af sproget L igen er et regulært sprog.
Hvad er Kleene-stjernen af et sprog
Kleene-stjernen af sproget L betegner vi L∗. Den indeholder alle de ord, som kan sammensættes ved konkatenering af et endeligt antal ord fra sproget L. Vi kan definere Kleene-stjernen som:
hvor ∘ betegner konkatenering. Kleene-stjernen indeholder også det tomme ord, dvs. ϵ.
Formel fremgangsmåde
Vi går frem på samme måde som ved konkatenering af sprog. I stedet for at forbinde to forskellige automater forbinder vi blot én automat — fra automatens accepttilstande fører vi epsilon-overgange til automatens starttilstand. Kleene-stjernen skal dog også indeholde det tomme ord. Hvordan sørger vi for det? Vi kan gøre starttilstanden til en accepttilstand. Så ville en sådan automat acceptere det tomme ord, men den kunne også acceptere nogle andre ord. Derfor opretter vi i stedet en ny starttilstand og fører fra denne nye starttilstand en epsilon-overgang til den oprindelige starttilstand.
Vi har et regulært sprog L1 og en automat, som accepterer dette sprog:
Vi konstruerer en ikke-deterministisk automat A = ⟨Q, Σ, δ, qs, F⟩, for hvilken der gælder:
- Q = Q1 ∪ {qs}
- Σ= Σ1
- F = F1 ∪ {qs}
Overgangsfunktionen δ definerer vi således:
Eksempel
Vi ser på denne automat A1, som accepterer ordene 00 eller 11:
Kleene-stjernen af sproget L(A1) er derfor sproget af alle ord, der består af par 00 og 11, for eksempel 0000, 110011, 11110000 osv. Automaten, der ville acceptere denne Kleene-stjerne, ville vi konstruere ved at oprette en ny starttilstand qs med en epsilon-overgang til den tidligere starttilstand q0 og tilføje epsilon-overgange fra tilstandene q3 og q4 til tilstanden q0:
Vi kan kontrollere, at denne automat virkelig accepterer ordene 0000, 110011, 11110000, men for eksempel ikke ordet 1010.
Kilder
Kapitler: Lukkethed af regulære sprog, Forening af regulære sprog, Fællesmængde af regulære sprog, Differens af regulære sprog, Komplement af et regulært sprog, Konkatenering af regulære sprog, Kleene-stjerne af et regulært sprog