Ich schließe unter booleschen Operationen mit der MyHill-Nerode-Charakterisierung. Ich habe es noch nie so gesehen. Eine rechte Kongruenz sättigt eine Sprache wenn
oder äquivalent, wenn eine Vereinigung von Kongruenzklassen ist. Wir gebrauchen:∼Lu∼v⇒(u∈L↔v∈L)
L
Satz: (MyHill-Nerode) Eine Sprache ist genau dann regulär, wenn es eine Rechtskongruenz des endlichen Index gibt, die sättigt .L
Nehmen wir nun an, wir haben reguläre Sprachen und bezeichnen einige richtige Kongruenzen des endlichen Index, die sie sättigen. Dann ist
eine rechte Kongruenz (der Schnittpunkt von beiden) und verfeinert beide. Außerdem haben wir
Wir haben also eine endliche Anzahl von Äquivalenzklassen. Dies ergibt auch, dass der Schnittpunkt der Äquivalenzklassen und entweder leer ist oder ein gemeinsames Element und daher der ÄquivalenzklasseL1,L2⊆X∗∼L1,∼L2u∼v:⇔u∼L1v∧u∼L2v
[u]∼=[u]∼L1∩[u]∼L2.
[u]∼L1[v]∼L2w[w]∼. Dies ergibt, dass entweder leer ist oder als Vereinigung der Äquivalenzklasse für . Nach dem obigen Satz ist regulär.L1∩L2∼L1∩L2
Für es eine Vereinigung von Äquivalenzklassen für und , die selbst Vereinigungen von Äquivalenzklassen für , daher ist es auch regulär. Und zur Ergänzung folgt dies als die Äquivalenzklassenpartition , daher eine richtige Kongruenz, die für funktioniertL1∪L2∼1∼2∼X∗L1 funktioniert auch für X∗∖L1. □
Zusätzliche Kommentare: In Ihrer Frage haben Sie auch die kanonische Nerode-Rechtskongruenz erwähnt
u≡Lv:⇔(∀w∈X∗:uw∈L↔vw∈L)
mit L⊆X∗. Dies ist die gröbste Sättigung der rechten KongruenzL. Nun könnte es natürlich sein zu fragen, ob wir die richtige Nerode-Kongruenz von konstruieren könnenL1∩L2 oder L1∪L2 leicht aus denen für L1,L2oder wenn die resultierende Schnittpunktkongruenz als eine richtige Nerode-Kongruenz auftritt. Vielleicht finden wir so einfache Formeln wie
u≡L1∩L2v⇔u≡L1v∧u≡L2v.
Aber das oben Genannte gilt nicht. Und meines Wissens gibt es keine einfache Beziehung. Zum Beispiel überlegenL1=(aa)∗ und L2=a(aa)+, dann haben wir
L1∩L2=∅,L1∪L2=X∗∖{a}.
Jetzt ≡L1∩≡L2 hat mindestens vier Kongruenzklassen, wie es verfeinert ≡L2Das hat genau vier Kongruenzklassen. Aber∅ hat genau eine Klasse und X∗∖{a} hat drei (könnte alle leicht mit minimalen vollständigen Automaten gesehen werden).
EDIT (2019.08.18).
Die Spiegel- und Suffixoperation beziehen sich auf die linke Kongruenz
u≡Lv⇔∀w∈X∗:wu∈L↔wv∈L.
Wenn ≡L hat einen endlichen Index, ähnlich wie für die Präfixoperation und die Rechtskongruenz, ≡suffix(L)hat endlichen Index. Und
u≡Lv iff mirror(u)≡mirror(L)mirror(v);; und da ist die Spiegeloperation eine Bijektion aufX∗ die letzte Gleichung gibt das ≡mirror(L) hat endlichen Index iff ≡L hat einen endlichen Index (beachten Sie, dass die linke Kongruenz den gleichen Index hat wie die rechte Kongruenz für die gespiegelten Wörter, aber im Allgemeinen eine rechte Kongruenz für mirror(L) könnte exponentiell viel mehr Klassen haben, wie durch Standardkonstruktionen aus der Automatentheorie gezeigt wird).
Diese Operationen werden also behandelt, wenn wir zeigen können, dass beide Kongruenzen gleichzeitig einen endlichen Index haben oder nicht. Schauen wir uns dazu die syntaktische Kongruenz an
u≡S(L)v⇔∀x,y∈X∗:xuy∈L⇔xvy∈L.
Diese Kongruenz verfeinert beide obigen Kongruenzen. Wenn sie also endlich ist, sind auch beide obigen Kongruenzen endlich. Es istu≡S(L)v iff für alle w∈X∗ wir haben [wu]≡L=[wv]≡LDaher haben wir eine gut definierte und injektive Karte aus dem ≡S(L)-Äquivalenzklassen zu den Transformationen auf {[w]≡L:w∈X∗}und wenn letzteres eine endliche Menge ist, ist auch die Menge dieser Transformationen endlich, was dies impliziert ≡S(L)ist von endlichem Index. Insgesamt haben wir das also≡L hat endlichen Index wenn ≡L hat endlichen Index, das Gegenteil ist ähnlich impliziert.