regulärer Ausdruck darf 010 nicht enthalten |
19.06.2011, 13:48 | Auf diesen Beitrag antworten » | ||||
KleenEule | regulärer Ausdruck darf 010 nicht enthalten Meine Frage: Guten Tag: Ich habe hier eine Frage zu den regulären Ausdrücken. Hier die Aufgabe: Gib reguläre Ausdrücke für die folgenden Sprachen über Sigma = {0,1} an: (a) L1 = {w | w enthält nicht das Wort 010} Meine Ideen: Unsere Idee war erst, das wir (1)(0*111*0*)*(1) nehmen. Haben aber im Endeffekt rausgefunden, dass des nicht wirklich stimmt. Kann uns da jmd weiterhelfen? |
||||
|
|||||
19.06.2011, 14:42 | Auf diesen Beitrag antworten » | ||||
zockermax | Mein Problem ist das Wort "enthält nicht". Ich habe den Reg Ex für w<>010. Bist du dir sicher, dass das "enthält nicht" heißen muss? Gruß Max |
||||
19.06.2011, 15:35 | Auf diesen Beitrag antworten » | ||||
KleenEule | Japp 100% sicher, habe die Aufgabe absichtlich direkt kopiert, damit keine fehler passieren. DAs ist aber auch das, was uns persönlich zweifeln lässt , also das "enthält nicht" |
||||
19.06.2011, 16:13 | Auf diesen Beitrag antworten » | ||||
zockermax | Also w ist doch bestimmt Element von Sigma. ->w sind alle bildbaren wörter aus Sigma. -> w enthält nicht das Wort 010. -> w sind alle Wörte Sigma bis auf das Wort 010. Also würde die L1 0010 akzeptieren. Gruß max |
||||
Anzeige | |||||
|
|||||
19.06.2011, 16:38 | Auf diesen Beitrag antworten » | ||||
zockermax | (1(1|0)*)* | (0 ( 0 (1|0)*)*) | (01(1(1|0)*)*) | ( 010 ( 1|0 )+) |
||||
19.06.2011, 21:19 | Auf diesen Beitrag antworten » | ||||
ed209 | Ich komme auf einen wesentlich kürzeren Ausdruck. Mir hilft es dazu den DEA dazu zu konstruiieren, der Ausdruck ist dann relativ einfach daraus abzulesen. Gruß ED PS: Man kann auch damit anfangen den Automaten zu finden der das Komplement der Sprache enthält. (also die Wörter die 010 enthalten), das ist intuitiver. |
||||
19.06.2011, 21:38 | Auf diesen Beitrag antworten » | ||||
zockermax | Kannst du mal bitte den kürzeren Regulären Ausdruck angeben? Außerdem schreibst du auch "Wörter die 010 enthalten", aber eigentlich akzeptiert die Sprache L1 alle Wörter außer dem Wort 010. Gruß Max |
||||
19.06.2011, 21:44 | Auf diesen Beitrag antworten » | ||||
Karlito | Hier ist die Frage wie die Aufgabe gemeint ist... Kann auch sein, dass es so gewollt ist, dass kein Infix 010 erlaubt ist... Ich glaube, wenn nur das Wort 010 nicht erlaubt ist, dann ist die Aufgabe zu trivial... VG, Karlito |
||||
19.06.2011, 21:50 | Auf diesen Beitrag antworten » | ||||
Karlito | Der Ausdruck, welcher nur das Wort 010 nich zulässt wäre (00+11+10)(0+1)* Wenn ich mich nicht verhauen habe, wäre das viel zu einfach... VG, Karlito |
||||
19.06.2011, 21:54 | Auf diesen Beitrag antworten » | ||||
ed209 |
Genau so wird es gemeint sein: Jedes Wort in dem nicht 010 enthalten ist. @zockermax: Es geht hier nicht darum die Lösung vorzusagen. Idee des Forum ist es Hinweise zum Lösungsweg zu geben, damit man es lernt, nicht die Lösung damit man den Übungszettel nicht selber machen muß. Gruß, ED |
||||
19.06.2011, 22:05 | Auf diesen Beitrag antworten » | ||||
Karlito | Der Weg des sturen Algorithmensklaven: DEA für Sprache, die 010 enthält, Konstruieren -> Komplement bilden -> Arden Lemma VG, Karlito |
||||
19.06.2011, 22:34 | Auf diesen Beitrag antworten » | ||||
zockermax | Ähhh????????????? Dein entwickelter Reg Ex (00+11+10)(0+1)*, akzeptiert aber zb nicht das Wort 1 oder das Wort 0, obwohl es in der Sprache L1 liegt. |
||||
19.06.2011, 22:39 | Auf diesen Beitrag antworten » | ||||
Karlito |
Stimmt Irgendwie mögen Fehler meine Ergebnisse (0+1+(00+11+10)(0+1)*) sollte es aber machen, oder? VG, Karlito |
||||
20.06.2011, 02:07 | Auf diesen Beitrag antworten » | ||||
KleenEule | Wie sicher bist du dir dem? Also wir haben nun noch weiter geforscht und kamen auf: 1*0*+(1*0*011)*1*0*01(10+1*) |
||||
20.06.2011, 08:22 | Auf diesen Beitrag antworten » | ||||
Karlito | Hi, sorry für das wirrwar. Wie weiter oben beschrieben, löst der Ausdruck wahrscheinlich leider nicht euer Problem. Der Ausdruck akzeptiert alle Wörter über der Sprache Sigma* ohne das Wort 010. Eure Aufgabe ist sicherlich, dass die Sprache den Infix 010 nicht enthält... Wie ed beschrieben hat, is es günstig, einen DEA zu bauen, welcher Wörter mit dem Infix 010 akzeptiert und dann das komplement zu bilden. Er meinte man kann dann den Ausdruck rel. einfach ermitteln (durch nachdenken). Als Erweiterung dessen kann man noch das Arden Lemma verwenden um den Ausdruck aus dem DEA zu "errechnen". VG, Karlito |
||||
20.06.2011, 11:22 | Auf diesen Beitrag antworten » | ||||
zockermax |
Nein! Du kannst immer no ni das Wort 0 oder das Wort 1 mit diesem Reg Ex bilden. Gruß Max |
||||
20.06.2011, 11:31 | Auf diesen Beitrag antworten » | ||||
zockermax |
Also ich will dir ja nicht zu Nahe treten, aber ich habe doch oben ganz klar gezeigt: ->w Element Sigma ->also sind w alle Wörter, die aus Sigma bildbar sind ->eingegrenzt wird w durch "w enthält nicht das Wort 010" ->w sind alle Wörter Sigma bis auf das Wort 010!!! Gruß Max |
||||
20.06.2011, 19:30 | Auf diesen Beitrag antworten » | ||||
Karlito | Hallo, 1. Verwendete ich eine andere Notation als du. In deiner Notation: (1|0|(00|10|11|)(0|1)*). So sollte erkennbar sein, dass 0 und 1 in der Sprache liegen. und 2. Die Aufgabenstellung lautet wie folgt: Gib reguläre Ausdrücke für die folgenden Sprachen über Sigma = {0,1} an: (a) L1 = {w | w enthält nicht das Wort 010} Ich gehe davon aus, dass w bereits ein Element von Sigma* ist. Somit ist es bereits ein Wort. Die Aufgabenstellung besagt, dass w 010 nicht enthalten soll. Daraus folgt für mich, dass 010 nicht Infix von w sein soll... Wäre es so wie du es sagst, dann müsste da stehen w!=010... Ich denke wir sollten uns jetzt die Diskussion stoppen und uns um etwaige weitere Fragen der Autoren kümmern. @KleenEule Ich habe mir den Ausdruck noch nicht angeschaut. Wie seid ihr darauf gekommen? VG, Karlito |
||||
20.06.2011, 22:47 | Auf diesen Beitrag antworten » | ||||
Karlito | Hallo KleenEule, euer Ausdruck ist leider falsch, da z.b. folgende Wörter nicht akzeptiert werden: 001 01 011 101 VG, Karlito |
||||
22.06.2011, 18:38 | Auf diesen Beitrag antworten » | ||||
KleenEule | Also ich habe heute die Lösung herausgefunden und auch schon absegnen lassen... es war iwas mit 1*(0*111*0)1*0* iwie so, weiß es grad aber nicht mehr auswendig ^^ wollte euch nur dran teilhaben, das wir auf jeden die lösung haben Danke das ihr geholfen habt |
||||
07.07.2011, 00:43 | Auf diesen Beitrag antworten » | ||||
ICHBINALDA | machste so digga, wenn 0 kommt gehts neune zustand wenn 1 kommt wieder neun wenn 0 kommt wieder neuen. In dem Zustand weißte du hast 010 gelesen. Dann machst einfach nix ;D Denn dann akzeptiert der Automat das wort nicht ;d |
|