Universität Karlsruhe (TH) Institut für Programmstrukturen und Datenorganisation (IPD) Informatik I WS 2003/04 Dozent: Prof. Dr.rer.nat. G. Goos Übungsleiter: Tom Gelhausen http://www.infoeins.de [email protected] [email protected] Übungsblatt 7 - (44T / 16P) Prädikatenlogik und Prolog Ausgabe: 28.11.2003 Abgabe: 05.12.2003 13:30 Uhr Einwurf im Keller des Informatik-Hauptbaus (Geb. 50.34) Hinweis: Benutzen Sie zum Lösen der Übungsaufgaben Ihren gesunden Menschenverstand! 1. Prädikatenlogik (21T) 1.1 Frei und gebunden (5T) Gegeben seien folgende Formeln über die Prädikate {G, H, P, R} mit den Variablen {x, y} und der Konstanten {a}: D = (ීx: (G(x) ດ H(y)))ൺ ((ීy: G(x))ດ(ීx: H(x))) E =ූx: ීy: (P(x)ຓP(y) ດP(a)) F =ූx: (((ීy: R(y, y))ൺR(x, y))ຓ (R(x, y)ൺR(x,y))) Geben Sie für jedes Vorkommen einer Variablen in D, E bzw. F an, ob, und wenn, wodurch diese gebunden sind. 1.2 Terme und Formeln (4T) Geben Sie alle in der folgenden Formel G auftretenden Terme und Formeln im Sinne der Prädikatenlogik an. Ergänzen Sie vorher jedoch die Klammerung so, dass sich eine geschlossene Formel ergibt! G = ීxූy: (A(x, y)ർA(x, y))ຓ (ූz: B(x)ൺC(x, B(z))) 1.3 Skolemform (12T) Bringen Sie die folgenden Formeln in Skolemnormalform (Q ist nullstelliges Prädikatensymbol) a. b. c. d. (ීx: A(x) ຓීx: B(x)) ൺීx: (A(x) ຓB(x)) (ූx: P(x)) ർ Q ීx: (P(x) ൺ ූy: (K(y) ൺ M(x, y))) ීy: (ීx: ීy: P(x, y) ൺූx: R(x, y)) 1/3 2. Anwendungen (12T) 2.1 Umgangssprache (7T) Verwenden Sie für folgende Aufgaben keine Abkürzungen und achten Sue auf korrekte sowie eindeutige Klammerung! a. Stellen Sie das Cauchysche Konvergenzkriterium als prädikatenlogischen Ausdruck dar. (3T) Hinweis: Verwenden Sie die Definition aus ihrer HM bzw. Analysis-Vorlesung! b. Stellen Sie folgenden Zusammenhang als prädikatenlogischen Ausdruck dar: Für alle Studenten der Uni Karlsruhe gilt: wenn es einen Papierflieger gibt, der den Übungsleiter trifft, dann lachen sie. (1T) c. Über dem Universum ത der natürlichen Zahlen gelte die Beziehung P(x, y), wenn gilt x teilt y. Definieren Sie mit Hilfe der Prädikatenlogik (3T): - eine Primzahl - eine gerade Zahl - das kleinste gemeinsame Vielfache zweier Zahlen Hinweis: Sie dürfen weitere Prädikate verwenden. 2.2 Monoid (5T) Formulieren Sie die Eigenschaften eines Monoids in Prädikatenlogik. Beschreiben Sie dabei die verwendeten Prädikate kurz. Hinweise: - Es reichen 2 unterschiedliche Prädikate - Prädikate wie ist_distributiv(x) sind nicht erlaubt - „=“, „+“, … sind nicht Bestandteil der Prädikatenlogik 3. Prolog (5T / 10P) 3.1 Unifikation (5T) Prüfen Sie, ob die folgenden Terme unifizierbar sind. Geben Sie jeweils den allgemeinsten Unifikator an, sofern dieser existiert. a. P(f(y), w, g(z)) und P(u, u, v) b. P(f(y), w, g(z)) und P(v, u, v) c. besitzt(x, viel(geld)) und besitzt(daniel, y) (2T) (2T) (1T) Hierbei sind u, v, w, x, y, z Variablen und f, g, P, besitzt, viel, geld, daniel Funktionszeichen. 2/3 3.2 Verwandtschaftsbeziehungen (4P) Formulieren Sie folgende Prädikate. Verwenden Sie dazu die im Vergleich zum letzten Blatt erweiterte Datei „personen.pl“ von der Informatik-Homepage. a. ein Prädikat verwandt(Person1, Person2). Hierbei sollen auch beliebig weit entfernte Urahnen berücksichtigt werden. Über die verheiratet()-Fakten eingeheiratete Personen müssen nicht berücksichtigt werden, sondern nur leibliche Vorfahren. b. ein Prädikat gleiche_generation(V1, V2) mit der Bedeutung: „V1 und V2 sind Vorfahren derselben Vorfahren-Generation (z.B. beide sind Großeltern)“. 3.4 Färbeproblem (6P) Das unten abgebildete Rechteck besteht aus fünf Feldern. Lassen sich diese Felder so mit den Farben rot, gelb und blau einfärben, dass keine gleichfarbigen Felder aneinander grenzen ? Schreiben Sie ein Programm, welches dies überprüft und alle möglichen Färbungen ausgibt. 4. Der Planet Ogg (6T/6P) a. In einer dunklen Nacht (2T/2P) Gegeben sei die Aufgabe 3.2 a von Blatt 6: In einer dunklen Nacht traf ein Besucher von der Erde einen Bewohner von Ogg und fragte ihn: „Bist du rot?“ Der Bewohner bejahte dies. Dann fragte ihn der Besucher, von welcher Hemisphäre er käme. Der Bewohner antwortete: „Ich verweigere die Antwort!“ und ging weg. Von welcher Hemisphäre kommt er? a. Geben Sie einen prädikatenlogischen Ausdruck an, der das Rätsel widerspiegelt. b. Schreiben Sie ein Prolog Programm, das für Sie die Lösung des Rätsels berechnet. b. Zwei Bewohner von Ogg (4T/4P) Gegeben sei die Aufgabe 3.2 b von Blatt 6: Zwei Bewohner namens Ark und Bark machten folgende Aussagen: Ark: Bark: Ark: Bark: Bark ist ein Nordler. Ark ist ein Südler. Bark ist rot. Ark ist grün. Welche Farbe hat Ark und woher stammt er? Und Bark? a. Geben Sie einen prädikatenlogischen Ausdruck an, der das Rätsel widerspiegelt. b. Schreiben Sie ein Prolog Programm, das für Sie die Lösung des Rätsels berechnet. 3/3