Doorsnede van reguliere talen
Neem twee reguliere talen L1, L2. We bewijzen dat hun doorsnede L = L1 ∩ L2 ook een reguliere taal is.
Idee van het bewijs
We hebben twee reguliere talen L1 en L2 en willen bewijzen dat hun doorsnede L1 ∩ L2 weer een reguliere taal is. Omdat L1 en L2 reguliere talen zijn, bestaan er eindige automaten A1 en A2 die de talen L1 en L2 accepteren, dus er geldt L(A1) = L1 en L(A2) = L2. We construeren vervolgens een eindige automaat A die de taal L1 ∩ L2 accepteert, waarmee we bewijzen dat de taal L1 ∩ L2 regulier is.
Een woord behoort tot de doorsnede van talen als het tot de taal L1 en tegelijk tot L2 behoort. Het woord moet dus door automaat A1 en tegelijk door automaat A2 worden geaccepteerd. We gebruiken precies hetzelfde idee als bij de vereniging van reguliere talen, alleen veranderen we de verzameling eindtoestanden.
Formalisering van de werkwijze
We hebben twee automaten,
We construeren een automaat A = ⟨Q, Σ, δ, q, F⟩ die de taal L(A1) ∩ L(A2) accepteert. Er geldt dat
- Q = Q1 × Q2
- Σ= Σ1 ∩ Σ2
- q = ⟨q0, p0⟩
- F = F1 × F2
Voor de overgangsfunctie δ geldt de volgende betrekking:
Voorbeeld
Neem deze automaat A1, die alle woorden accepteert die een even aantal enen bevatten:
en automaat A2, die woorden accepteert die een oneven aantal nullen bevatten:
We construeren een automaat die de doorsnede van deze talen accepteert. De verzameling toestanden van deze automaat is Q = Q1 × Q2, de begintoestand is toestand ⟨q0, p0⟩ en de eindtoestanden zijn F1 × F2:
Vervolgens maken we de overgangen af zodat δ(⟨q,p⟩, a) = ⟨δ1(q, a), δ2(p, a)⟩:
In deze automaat loopt bijvoorbeeld vanuit toestand ⟨q0, p0⟩ een overgang voor het symbool 0 naar toestand ⟨q0,p1⟩. Dat betekent dat automaat A1 vanuit toestand q0 een overgang voor het symbool 0 terug naar toestand q0 heeft. Automaat A2 heeft voor het symbool 0 weer een overgang van toestand p0 naar toestand p1.
We kunnen de automaat uitproberen. Hij zou woorden moeten accepteren als 110 of 00000 (die bevatten een even aantal enen en tegelijk een oneven aantal nullen), maar niet woorden als 11, 111, 1010.
Bronnen
Hoofdstukken: Afgeslotenheid van reguliere talen, Vereniging van reguliere talen, Doorsnede van reguliere talen, Verschil van reguliere talen, Complement van een reguliere taal, Concatenatie van reguliere talen, Afsluiting van een reguliere taal