2017-02-26 5 views
0

Vielen Dank für jede Hilfe im Voraus!Kreuzung von zwei Regex

Ich nehme einen Automatenkurs in der Schule und für das Leben von mir kann nicht die Kreuzung von zwei Regexs erarbeiten. Ich habe online und hier gesucht, um zu finden, dass ich NFAs für beide Sprachen schaffen kann, Kompliment sie einzeln dann Union (ise) - unsicher auf Englisch hier.

Anschließend beglückwünsche ich die Vereinigung, um die nachfolgende DFA zu finden und die Regex von dieser zu finden, die die Kreuzung regex wäre. Es ist jedoch die Berechnung all dieser Dinge, mit denen ich mich abmühen muss.

Ich habe eine Frage unten, wo ich die Ausdrücke geändert habe, um nicht einfach eine Lernprogrammfrage zu stellen. Beide sind über das gleiche Alphabet: {a,b,c,d}.

Lassen R1 = (a(a+d))* und R2 = ((a+b)+a+(a+d))*

ich die Sprachen erweitert haben, um zu versuchen und sie besser zu verstehen.

Gedanken: R1 enthält das leere Wort (epsilon) und Wörter mit einer Länge von 2 und 4 R2 enthält das leere Wort und Wörtern der Länge 3

Die anschließende Kreuzung Sprache durch 6 teilbar sein muss?

Ich weiß wirklich nicht, wie ich von hier fortfahren soll. Bitte kann mir jemand helfen, ein NFA zu erstellen, wenn dies der beste Ansatz wäre. Ich habe Online-NFA-Generatoren benutzt, mache aber immer wieder Fehler, wenn ich auf die Antworten der Universitäten zurückblicke. Nebenbei bemerkt, wie würden Sie beweisen, dass die von Ihnen berechnete Regex korrekt ist?

Vielen Dank!

+0

Ist das nicht R1 entspricht '(a (a + d)) *'? Es ist auch "Ergänzung". – melpomene

+0

Ahh, guter Punkt. Ich werde die endgültige Anzeige jetzt entfernen. Vielen Dank. – user62622

+0

Ich habe gerade festgestellt, dass ich deine Notation nicht verstehe. Was bedeutet '+'? – melpomene

Antwort

0

Es gibt eine einfache DFA für R1:

DFA for R1

R2 = (a | b | d) * als @melpomene in seinem Kommentar gesagt, die jedes Wort mit den Buchstaben bedeuten, a, b oder d so ein DFA für R2 ist offensichtlich:

eDFA for R2

Der Schnittpunkt ist R1 (als R2 ist jeder Körper mit a, b oder d)

W e können diese DFA vervollständigen diese wie:

DFA for intersection

Verwandte Themen