Die Potenzmengenkonstruktion (Myhill-Konstruktion oder auch Teilmengenkonstruktion) ist ein Verfahren, das einen nichtdeterministischen endlichen Automaten (NEA) in einen äquivalenten deterministischen endlichen Automaten (DEA) umwandelt. Das Verfahren dient als konstruktiver Beweis für die Äquivalenz der beiden Automatenmodelle.
Grundidee
Die Zustände des konstruierten deterministischen Automaten DEA sind Mengen von Zuständen des nichtdeterministischen Automaten NEA. Ein Zustand von DEA kodiert dabei all diejenigen Zustände, in denen sich der äquivalente nichtdeterministische Automat NEA zu einem bestimmten Zeitpunkt befinden könnte. Ein Zustandsübergang in DEA ist deterministisch, da sein Folgezustand aus der Menge aller möglichen Folgezustände besteht, in die NEA unter einer bestimmten Eingabe gelangen kann.
Das Verfahren heißt Potenzmengenkonstruktion, weil die Zustände des konstruierten Automaten Mengen von Zuständen des Ausgangsautomaten sind und daher die konstruierte Zustandsmenge Teil der Potenzmenge der Zustandsmenge des Ausgangsautomaten ist.
Die Potenzmengenkonstruktion ergibt nicht notwendigerweise einen minimalen deterministischen endlichen Automaten.
Theoretischer Rahmen
Die Wissenschaftler Michael O. Rabin und Dana Scott wurden 1976 für ihre Arbeiten im Bereich der Automatentheorie mit dem Turing Award ausgezeichnet. Um den nach ihnen benannten Satz
Jede von einem NEA akzeptierte Sprache ist auch durch einen DEA akzeptierbar.
beweisen zu können, wird ein Algorithmus konstruiert, der jedem NEA einen äquivalenten DEA zuweist.
Konstruktion
Zu einem nichtdeterministischen Automaten
konstruiere einen äquivalenten deterministischen Automaten
folgendermaßen:
- Starte mit leeren Zustandsmengen
und
.
- Wähle den Startzustand
von
als einelementige Menge
des Startzustandes
von
. Füge
zur Menge der Zustände
hinzu.
- Für alle Zustände
, die bereits in
enthalten sind und für jedes Eingabezeichen
konstruiere einen Folgezustand
als Menge aller Zustände, die
ausgehend von einem Zustand aus
unter Eingabe von
erreichen kann.
- Füge den Zustand
zu
hinzu, falls er noch nicht in der Menge der Zustände von
enthalten ist.
- Ergänze die Übergangsfunktion
um den Übergang
.
- Wiederhole die Schritte 3. bis 5. so lange, bis sich
und
nicht mehr ändern.
- Wähle die Menge der Finalzustände
von
als diejenige Teilmenge von
, deren Zustände einen Finalzustand aus
enthalten.
Bemerkung:
kann am Ende bis zu
Zustände haben.
ist die Anzahl von Zuständen in
.
Sei
ein nichtdeterministischer endlicher Automat mit der Zustandsmenge
, dem Eingabealphabet
, der Übergangsfunktion
, dem Startzustand
und der Menge der Finalzustände
. Seien weiterhin
, so dass
und
, der
-Abschluss eines Zustands unter
,
, der
-Abschluss von
unter
,
, mit
,
, so dass
und
,
.
Daraus ergibt sich der zu
äquivalente deterministische endliche Automat
als:

Beispiele
Automat zum regulären Ausdruck 
Gegeben sei der nichtdeterministische Automat
über dem Alphabet
mit der tabellarisch gegebenen Übertragungsfunktion
:
δ |
a |
b
|
 |
 |
|
 |
 |
|
 |
 |
|
 |
 |
|
Eine graphische Darstellung des Ausgangsautomaten sieht folgendermaßen aus:
Nach obiger Konstruktion ergeben sich die Zustandsmenge
und die Übertragungsfunktion
des äquivalenten deterministischen Automaten wie folgt:
δ' |
a |
b
|
 |
 |
|
 |
 |
|
 |
 |
|
 |
 |
|
Daraus leitet sich die Menge der Finalzustände
ab, da nur
den Finalzustand
des Ausgangsautomaten enthält. Insgesamt ergibt sich der deterministische Automat
, der folgende graphische Darstellung besitzt:
Automat zum regulären Ausdruck 
Datei:Nea02.png
|
NEA für den regulären Ausdruck
|
δ' |
a |
b
|
 |
 |
|
 |
 |
|
 |
 |
|
 |
 |
|
|
DEA für den regulären Ausdruck
|
Siehe auch