Aufgabe 10.2 a) Übung

klaro
Mausschubser
Mausschubser
Beiträge: 51
Registriert: 16. Okt 2006 22:05
Wohnort: Offenbach am Main

Aufgabe 10.2 a) Übung

Beitrag von klaro »

Hi,

ich sitze gerade an der 10.2 a). Nachdem ich es selber nicht hinbekommen habe, hab ich in die Lösung geguckt, aber ich kann absolut nicht nachvollziehen wie man im linken Teilbaum auf vb(c,a)<-vb(b,a)<-kn(b,a) kommt. Ich hatte erst den SLD-Suchbaum gemacht, damit ich danach den deklarativen Baum bauen konnte. Nur ich komme einfach nicht zum Ende wegen den Variablenbenennungen, wie sie in der Aufgabe gegeben sind. Ich wollte das auch mit nem Prolog Interpreter auswerten lassen, aber da bekomm ich dann auch kein Ergebnis, sondern ein Out of Memory, weil die Abfrage in einer Endlosschleife landet. Wäre für Hilfe sehr dankbar. Ich konnte damals in der Besprechung leider nicht anwesend sein.

Gruß

apfel
Mausschubser
Mausschubser
Beiträge: 84
Registriert: 22. Apr 2005 08:50

Re: Aufgabe 10.2 a) Übung

Beitrag von apfel »

Hallo.
kn(b,a) ist als Fakt im Programm gegeben. Aus kn(b,a) folgt vb(b,a) wegen der zweiten Regel. Mit der dritten Regel folgt aus dem eben gewonnenen vb(b,a) und dem im Programm gegebenen kn(c,b), dass vb(c,a) gilt. Die Substitution, die beim Anwenden der dritten Regel verwendet wurde ist {A/c, B/a, C/b}, die für die zweite Regel {A/b, B/a}.

In der achten Übung haben wir gesehen, dass man mit prolog schnell in Endlos-Rekursionen gerät und was man dagegen tun kann. Aber das ist eine andere Geschichte, die uns hier nicht kümmern braucht. Wenn es um EBL geht, dann denken wir in der einfacheren Fixpunkt-Sematik die datalog verwendet.

Lorenz

Antworten

Zurück zu „Archiv“