Hi, kann jemand so nett sein und irgerndwie eine richtige Lösung für die teil-musterKlausuren die im netz sind?? ich schaffe es irgendwie nicht die Lösungen zu finden, insbesondere das F2 Teil.
kann jemand sich ein bisschen Zeit nehmen und die Lösungen geben?( nicht direkt, sondern schrittweise ).
ich würde mich freuen..
mfg.
1a)
a°b(a+b)*° ist so ein hochgestelltes plus (also mindestens eins halt..)
schrittweise:
also erst muss ein a sein
adann können a's und b's beliebig kommen
a(a+b)*aber es muss ein b drinnen sein
a(a+b)*b(a+b)*und dann hab ich das noch etwas vereinfacht auf das was da oben steht..
aaaa ist da dann mal so als beispiel nicht drinn
————————————————-
(a+b)((a+b)(a+b))*Schrittweise:
damit es immer eine ungrade anzahl von buchstaben gibt, muss mindestens ein buchstabe vorhanden sein (0 ist ja nicht ungrade), also (a+b). dahinter müssen immer 2 (beliebige) zeichen folgen also aa,ab,ba,bb und das ist eben genau (a+b)(a+b). und das kann dann beliebig oft wiederholt werden..
aabb ist da nicht drinn
1b)
[img]
http://einniemand.dyndns.org/autokaputt.gif[/img]
Z1 = {z0,z1,z2,z3}
(Sigma)1 = {a,b}
Zend = {z2}
alle lösungen ohne gewähr und jegliche schusswaffen…
Cool, danke,, das hat geholfen,, .. aber…
wieso bei der erste ein "+" ?? also
a°b(a+b)* ???
a°b(a+b)*
° ist so ein hochgestelltes plus (also mindestens eins halt..)
kann ich nicht die Sprache so definieren ? {a}{a+b}*{b}{a+b}* einfach so ?? oder muss man das unbedingt verinfachen,,..
und wie hast du das verinfacht ?? wie kommst du von a(a+b)*b(a+b)* zu a°b(a+b)* .. Gibt es irgendwo im Skript regeln wie man mit solchen ausdrücken umgehen soll ?? ( sonst habe ich die nicht gesehen ) . oder kann jemand bitte kurz die wichtigsten Regeln schreiben ?? Danke noch mals…
mfg.
nitro-kuh
kann ich nicht die Sprache so definieren ? {a}{a+b}*{b}{a+b}* einfach so ?? oder muss man das unbedingt verinfachen,,..
nein das muss man nicht vereinfachen.. die sprache ist ja so die gleiche, also wird es richtig sein. ich habe es eigentlich vereinfacht, weil dann der dfa einfacher zu bauen ist.
und wie hast du das verinfacht ?? wie kommst du von a(a+b)*b(a+b)* zu a°b(a+b)* .. Gibt es irgendwo im Skript regeln wie man mit solchen ausdrücken umgehen soll ?? ( sonst habe ich die nicht gesehen ) . oder kann jemand bitte kurz die wichtigsten Regeln schreiben ?? Danke noch mals…
wie man das formal macht weiss ich leider auch nicht. (muss noch im script weiterlesen, es steht da bestimmt..) in diesem fall konnte man es sehen - also ich habe von a(a+b)*b(a+b)* erstmal in aa*b(a+b)* vereinfacht, weil man ja sagen kann, dass das b in der mitte das erste b ist was vorkommt (eins muss ja das erste sein), also davor sowiso nur a's sind. und dann eben aa* zu a°
Zum F1-Teil: Würde gerne folgende Lösungen zur Diskussion stellen:
4a)
KNF: (R oder S) und P und nicht Q
DNF: (R und P und nicht Q) oder (S und P und nicht Q)
4b)
KNF: (Q oder nicht R) und (nicht Q und R) und nicht S
DNF: (Q und R und nicht S) oder (nicht Q und nicht R und nicht S)
5)
Hier habe ich "nicht unifizierbar" raus. Ich hab aber null Ahnung, ob ich da richtig liege. Ich hab mal versucht den Unifikationsalgorythmus (12[19]) anzuwenden, bin mir aber nicht sicher, ob ich es richtig gemacht habe. Bei mir sah das so aus:
L1 = R(x,f(y)); L2 = R(g(y,z),u); L3 = R(g(u,a), f(b))
o1 = [x/ g(y,z)] [img]
http://www.fb18.de/gfx/14.gif[/img]
L1o1 = R(g(y,z),f(y)); L2o1 = R(g(y,z),u); L3o1 = R(g(u,a), f(b))
o2 = [u/ f(y)] [img]
http://www.fb18.de/gfx/14.gif[/img]
L1o2 = R(g(y,z),f(y)); L2o2 = R(g(y,z),f(y)); L3o2 = R(g(f(y),a), f(b))
o3 = [y/ f(y)] [img]
http://www.fb18.de/gfx/13.gif[/img] !!! nicht unifizierbar, da y in f(y) vorkommt !!!
Bitte mal Bescheid sagen, wenn das alles (oder ein Teil) Quatsch ist.
Hmm also der erste rationale Ausdruck is richtig, aber beim 2ten ist es nicht notwendig, dass das wort mit einem a beginnt soweit ich die Aufgabe richtig verstanden habe
also meiner meinung nach sieht der Ausdruck so aus:
(a+b)(aa,ab,ba,bb)*
wobei man den zweiten Teil auf deine Variante im Ausdruck verkürzen kann denk ich mal
@Anonymer User:
Stimmt! Das das noch niemanden aufgefallen ist… [img]
http://www.fb18.de/gfx/7.gif[/img]
Es muss (a+b)((a+b)(a+b))* oder eben (a+b)(aa+ab+ba+bb)* heißen. Das mit dem Anfangs-A hat der Brokkoli wohl noch aus der ersten Aufgabe mitgeschleppt. [img]
http://www.fb18.de/gfx/25.gif[/img]
ups ja hab ich übersehen ;) habs geändert
beim F1 teil hab ich das gleiche wie NaZo heraus..
Mir ist gerade noch aufgefallen, dass die Lösung, die ich oben gepostet habe, nicht ganz dem Algorythmus entspricht. Das Ergebnis ist das gleiche, aber die Schritte müssen, glaube ich (!), so aussehen:
L1 = R(x,f(y)); L2 = R(g(y,z),u); L3 = R(g(u,a), f(b))
o1 = [x/ g(y,z)]
L1o1 = R(g(y,z),f(y)); L2o1 = R(g(y,z),u); L3o1 = R(g(u,a), f(b))
o2 = [u/ y]
L1o2 = R(g(y,z),f(y)); L2o2 = R(g(y,z),y); L3o2 = R(g(y,a), f(b))
o3 = [z/ a]
L1o3 = R(g(y,a),f(y)); L2o3 = R(g(y,a),y); L3o3 = R(g(y,a), f(b))
o4 = [y/ f(y)] !!! nicht unifizierbar, da y in f(y) vorkommt !!!
Jo also wenn ich den Algorithmus richtig verstanden hab ist die 2te Variante wohl die, die richtig ist.
Hab bis gerade eben noch nichtmal was von dem algo gesehen oder von Prädikatenlogik-Resolventen :(((
Irgendwie ist das alles sooooo viel :)
Ich mach 3 Kreuze morgen um 11.30