Äquivalenzproblem

aus Wikipedia, der freien Enzyklopädie
Wechseln zu: Navigation, Suche

Als Äquivalenzproblem bezeichnet man in der Theoretischen Informatik das Problem, zu entscheiden, ob zwei formale Definitionen von zwei Sprachen L_1 und L_2 äquivalent sind, also L_1 = L_2 gilt.

So können die Sprachen durch Grammatiken, oder Automaten oder auch ganz anders definiert sein.

Das Äquivalenzproblem ist für reguläre Grammatiken entscheidbar, für kontextfreie nicht. Offenbar ist es sinnvoll, nach der Komplexität des Äquivalenzproblems zu fragen, wenn das Problem entscheidbar ist. In diesem Fall kann diese Komplexität ganz erheblich von der vorgegebenen Art, wie die Sprache definiert wird, abhängen.

Für reguläre Sprachen ist das Äquivalenzproblem wegen der Entscheidbarkeit des Leerheitsproblems und der Abschlusseigenschaften entscheidbar, da L_1 = L_2 genau dann, wenn ( L_1 \cap \bar{L_2}) \cup (L_2 \cap \bar{L_1} ) = \empty.

Liegen die Sprachen L_1 und L_2 schon in Form von DEAs vor, so kann man das Äquivalenzproblem auch entscheiden, indem man von beiden DEAs jeweils die Minimalautomaten bildet und diese dann auf Isomorphie überprüft. Ist das der Fall, so sind die beiden Sprachen L_1 und L_2 ebenfalls äquivalent.

[Bearbeiten] Siehe auch

[Bearbeiten] Literatur

  •  Marco Almeida, Nelma Moreira und Rogério Reis: Testing the Equivalence of Regular Languages. In: 11th International Workshop on Descriptional Complexity of Formal Systems (DCFS 2009) EPTCS 3. 2009, S. 47-57, doi:10.4204/EPTCS.3.4 (PDF).
Meine Werkzeuge
Namensräume

Varianten
Aktionen
Navigation
Mitmachen
Drucken/exportieren
Werkzeuge