Kap. 5 Erweiterung der Relationenalgebra für Deduktive Datenbanken
|
|
- Rosa Kramer
- vor 6 Jahren
- Abrufe
Transkript
1 Kap. 5 Erweiterung der Relationenalgebra für Deduktive Datenbanken Ziel dieses kurzen Kapitels: Verbindung herstellen zwischen Logiksprachen und Relationenalgebra. Umgehen mit (rekursiven) Regeln zusätzlich zu Fakten. Zulassen von Gleichungen in Relationenalgebra Auflösen solcher Gleichungen = Berechnung von Fixpunkten Wir wissen aus IS-G über die Grenzen von Algebra und SQL: z.b. sind Erreichbarkeitsprobleme in Graphen nicht ausdrückbar. Wie immer ist die explizite Programmierung in ESQL eine Abhilfe. Dies wird zur Motivation und Übung dringend empfohlen. Deduktive DB Einführung und Problemstellung In (nichtdeduktiven) DBS werden Informationen ausschließlich extensional - in Form von Daten (Fakten) - repräsentiert. In deduktiven Datenbanken können Informationen zusätzlich auch intensional - in Form von Regeln - repräsentiert werden. Mit Hilfe der Regeln können aus den Fakten weitere Informationen hergeleitet werden Beispiel Flüge Flugverbindungen FlugNr Abflugort Zielort... Abflugort Zielort SR58 Zürich Chicago Zürich Chicago AA371 Chicago Phoenix Zürich Dallas DA77 Phoenix Flagstaff Zürich Phoenix AA70 Zürich Dallas Zürich Flagstaff AA351 Dallas Phoenix UA111 Chicago Dallas Deduktive DB-2 1
2 Beispiel mit intensionaler Repräsentation der Flugverbindungen: in "Pseudo-SQL" (rekursive Sichtdefinition): CREATE VIEW Flugverbindungen (Abflugort, Zielort) AS SELECT Abflugort, Zielort FROM Flüge UNION SELECT V.Abflugort, F.Zielort FROM Flugverbindungen V, Flüge F WHERE V.Zielort = F.Abflugort Achtung: Solche rekursiven Views sind im Standard- SQL nicht möglich! als Menge von (Prolog-artigen) Regeln: Flugverbindungen (a,z) :- Flugverbindungen (a,z) :- Flüge (a,z) Flüge (o,z), Flugverbindungen (a,o) als relationenalgebraische Gleichung: (.A := Abflugsort.Z := Zielort ) V := F π [V.A, F.Z] (σ [V.Z=F.A] (F V)) Deduktive DB Datalog - Hintergrundinformation Gegeben sei eine endliche Menge von Prädikaten (Prädikatsymbolen). Eine Hornklausel über dieser Prädikatenmenge ist eine logische Formel der Form X 1,..., X n : P 1 (Z 11, Z 12,..., Z 1k1 )... P m (Z m1, Z m2,..., Z mkm ) P 0 (Z 01, Z 02,..., Z 0k0 ) mit k i -stelligen Prädikaten P i, Variablen X 1,..., X n und Konstanten oder Variablen Z ij, so dass Z ij entweder eine Konstante ist oder eine der Variablen X 1,..., X n. Die Formel P 0 (Z 01, Z 02,..., Z 0k0 ) wird als "Kopf" (engl.: head) der Hornklausel bezeichnet, die Formel P 1 (Z 11, Z 12,..., Z 1k1 )... P m (Z m1, Z m2,..., Z mkm ) als "Rumpf" (engl.: body). Ein Datalog-Programm zu gegebener endlicher Menge von Prädikaten besteht aus - einer Menge von Fakten der Form P i (V 1, V 2,..., V k ) mit einem k-stelligen Prädikat P i und Konstanten V 1,..., V k und - einer Menge von Regeln in Form von Hornklauseln über den geg. Prädikaten. Deduktive DB-4 2
3 Datalog Begriffe Ein Datalog-Programm mit Negation besteht aus - einer Menge von Fakten wie in einem einfachen Datalog-Programm und - einer Menge von Regeln in Form von Klauseln vom selben Typ wie bei einem einfachen Datalog-Programm, bei denen jedoch Prädikate im Rumpf negiert sein können. Eine Anfrage (Ziel; engl: goal) für ein Datalog-Programm ist ein Ausdruck der Form P(Z 1,..., Z k ) mit einem k-stelligen Prädikat P und Konstanten oder Variablen Z 1,..., Z k, so daß mindestens eines der Z j eine (freie) Variable ist. Eine rekursive Regel heißt linear, wenn das Kopfprädikat genau einmal unter den Rumpfprädikaten auftaucht und keines der anderen Rumpfprädikate als Kopfprädikat einer anderen rekursiven Regel auftritt. Ein Datalog-Programm heißt linear, wenn es nur lineare rekursive oder nichtrekursive Regeln hat. Deduktive DB-5 Beispiel: Adam Abigail Jonny Bonnie Bob Bill Jill Clyde Claire Cerise Charly Cecilia Fakten Mann (Adam), Mann (Jonny), Mann (Bob), Mann (Bill), Mann (Clyde),Mann (Charly) Frau (Abigail), Frau (Bonnie), Frau (Jill), Frau (Claire), Frau (Cerise), Frau (Cecilia) Ehepaar (Adam, Abigail), Ehepaar (Jonny, Bonnie), Ehepaar (Bill, Jill) Elternteil (Adam, Bonnie), Elternteil (Adam, Bob), Elternteil (Adam, Bill), Elternteil (Abigail, Bonnie), Elternteil (Abigail, Bob), Elternteil (Abigail, Bill), Elternteil (Jonny, Clyde), Elternteil (Jonny, Claire), Elternteil (Bonnie, Clyde), Elternteil (Bonnie, Claire), Elternteil (Bill, Cerise), Elternteil (Bill, Charly), Elternteil (Bill, Cecilia), Elternteil (Jill, Cerise), Elternteil (Jill, Charly), Elternteil (Jill, Cecilia) SelbeGeneration (Adam, Abigail) SpieltMit (Clyde, Charly) Deduktive DB-6 3
4 Regeln Elternteil (X, Y) Vorfahren (X, Y) Elternteil (X, Y) Vorfahren (Y, Z) Vorfahren (X, Z) Elternteil (X, Y) Mann (X) Vater (X, Y) Elternteil (X, Y) Frau (X) Mutter (X, Y) Elternteil (X, Y) Elternteil (X, Z) Y Z Geschwister (Y, Z) Elternteil (X, Y) Elternteil (U, W) Geschwister (X, U) Frau (W) Cousine (W, Y)) Elternteil (X, Y) Elternteil (U, W) SelbeGeneration (X, U) SelbeGeneration (Y, W) Geschwister (X, Y) SpieltMit (X, Y) SpieltMit (Clyde, Y) SpieltMit (Claire, Y) TRUE SpieltMit (Cecilia, Y) (leerer Rumpf) Elternteil (X, Y) Verwandt (X, Y) Geschwister (X, Y) Verwandt (X, Y) Verwandt (X, Y) Verwandt (Y, X) Verwandt (X, Y) Verwandt (Y, Z) Verwandt (X, Z) (nichtlinear) Mann (X) NOT Ehepaar (X, Y) Ledig (X) (mit Negation) Frau (Y) NOT Ehepaar (X,Y) Ledig (Y) (mit Negation) Beispiele für Anfragen Ledig (X) Cousine (X, Clyde) SelbeGeneration (Clyde, X) Deduktive DB-7 Vergleich mit Relationenalgebra an Beispielen Mann MN Adam Jonny Bob... Frau FN Abigail Bonnie Jill... Ehepaar MN FN Adam Abigail Jonny Bonnie Bob Jill Elternteil E K Adam Bonnie Adam Bob Abigail Bonnie... Vater(MN,K) := π[mn,k] ( σ[mn=e] ( Elternteil Mann ) ) Geschwister(K1,K2) := π[k1,k2] ( σ[k1 K2] ( Elternteil[E,K1] Elternteil[E,K2] ) ) Deduktive DB-8 4
5 Vergleich von Datalog-Anfragen und Regeln mit SQL (a) Datalog-Anfragen parent(x, Laura ) (b) Datalog-Regeln (nicht-rekursiv) father(x) age(x,n) NOT married(x) N<25 jusifa(x,n) parent(g,p) parent(p,c) grandparent(g,c) SELECT p.parent FROM parent p WHERE p.child= Laura CREATE VIEW jusifa (Name, Age) AS SELECT f.name,a.age FROM father f,age a WHERE f.name=a.name AND NOT EXISTS (SELECT * FROM married m WHERE m.name=f.name) AND a.age<25 CREATE VIEW grandparent(grpar,child) AS SELECT p1.parent,p2.child FROM parent p1,parent p2 WHERE p1.child=p2.parent Deduktive DB-9 Vergleich Datalog mit Relationenalgebra Sätze: 1) Die Menge der Anfragen, die sich mit (rekursivem) Datalog mit Negation ausdrücken lassen, ist eine echte Obermenge der Menge von Anfragen, die sich mit der Relationenalgebra ausdrücken lassen. 2) Nichtrekursives (sicheres) Datalog mit Negation ist äquivalent zur Relationenalgebra 3) Nichtrekursives Datalog ohne Negation ist äquivalent zur Relationenalgebra ohne Differenz. (ohne Beweise, siehe dazu z.b. Ullman) Deduktive DB-10 5
6 Gegenüberstellung Relationenalgebra=Nichtrekursives Datalog mit Negation Datalog mit Negation Datalog ohne Negation RA ohne Differenz = Nichtrekursives Datalog ohne Negation Deduktive DB Gleichungen in Relationenalgebra und Berechnung von Fixpunkten...am Beispiel der transitiven Hülle eines Graphen Seien A(X,Y) und B(X,Y) binäre Relationen. Der Kompositionsoperator zwischen A und B ist wie folgt definiert: A Β = π[a.x, B.Y] ( σ [ A.Y = B.X]( A B)) Damit lautet die Fixpunktgleichung für die transitive Hülle eines Graphen G H = (H G) G Wie in der numerischen Mathematik ("Typ x=f(x)") lösen wir diese Gleichung iterativ: (a) Naive Iteration H 0 := {}; i := 0; repeat H i+1 := (H i G) G until H i+1 = H i Problem: H i+1 enthält jeweils H i unnötigerweise, daher besser... Deduktive DB-12 6
7 (b) Delta-Iteration (semi-naive Iteration) Setze für i=1,2,... : H i := H i-1 i dann ist H i+1 := ((H i-1 i ) G) G = ((H i-1 G) ( i G)) G = (H i-1 G) G ( i G) = H i ( i G) i+1 := i G Delta-Iteration: H 0 := {}; 1 := G; i := 1; repeat H i := H i-1 i i+1 := i G until i+1 = 0 Deduktive DB-13 Beispiel: Flüge: Relation G, Flugverbindungen: Relation H Dieses Beispiel bezieht sich auf Folie Nr. 2, wobei Z = Zürich, C = Chicago etc. Naive Auswertung: i Hi 0 {(Z,C), (C,P), (P,F), (Z,D), (D,P), (C,D)} 1 {(Z,C), (C,P), (P,F), (Z,D), (D,P), (C,D), (Z,P), (C,F), (D,F)} 2 {(Z,C), (C,P), (P,F), (Z,D), (D,P), (C,D), (Z,P), (C,F), (D,F), (Z,F)} 3 {(Z,C), (C,P), (P,F), (Z,D), (D,P), (C,D), (Z,P), (C,F), (D,F), (Z,F)} Semi-naive Auswertung: i Hi i+1 0 { } {(Z,C), (C,P), (P,F), (Z,D), (D,P), (C,D)} 1 {(Z,C), (C,P), (P,F), (Z,D), (D,P), (C,D)} {(Z,P), (C,F), (D,F), (Z, D), (C, P)} 2 {(Z,C), (C,P), (P,F), (Z,D), (D,P), (C,D), (Z,P), (C, F), (D, F)} {(Z, F), (Z, P), (C, F)} 3 {(Z,C), (C,P), (P,F), (Z,D), (D,P), (C,D), (Z,P), (C, F), (D, F), (Z, F)} {(Z, F)} 4 {(Z,C), (C,P), (P,F), (Z,D), (D,P), (C,D), (Z,P), (C, F), (D, F), (Z, F)} { } Deduktive DB-14 7
Kapitel 6: Logikorientierte Anfragesprachen
Kapitel 6: Logikorientierte Anfragesprachen 6.1 Grundlagen aus der Logik 6.1.1 Aussagenlogik 6.1.2 Prädikatenlogik 1. Ordnung 6.2 Domain-Relationenkalkül (DRK) 6.3 Tupel-Relationenkalkül (TRK) 6.4 Mächtigkeit
MehrSpezifikation in Datalog:
Spezifikation in Datalog: darf_hinzufügen (X,W) :- editiert (Z,W), hat_mitglied (Z,X). darf_löschen (X,E) :- besitzt (X,E). darf_modifizieren (X,E) :- besitzt (X,E). darf_modifizieren (X,E) :- besitzt
MehrWissensrepräsentation und -verarbeitung in Logiken. bereinigt Pränex Skolem ( -Eliminierung) Klausel (Menge von Klauseln, Notation ohne Quantoren)
Was bisher geschah Wissensrepräsentation und -verarbeitung in Logiken klassische Aussagenlogik klassische Prädikatenlogik: Wiederholung Syntax, Semantik Normalformen: bereinigt Pränex Skolem ( -Eliminierung)
MehrDatalog. Moritz Kaufmann 1. Juni Technische Universität München
Datalog Moritz Kaufmann 1. Juni 2015 Technische Universität München Datalog Grundlagen Zusammenfassung 1. Faktenbasis (EDB = extensionale Datenbasis) 2. + logische Herleitungsregeln Ableitung neuer Fakten
MehrKapitel 3: Logik als Anfragesprache
Kapitel 3: Logik als Anfragesprache Logik als Anfragesprache Motivation (1) Kennenlernen einer weiteren Anfragesprache für das relationale Datenmodell, aber Unterschied hinsichtlich Ausdrucksmächtigkeit.,
MehrGrundlagen von Datenbanken
Grundlagen von Datenbanken SS 2010 4. Prolog als Datenbanksprache Prof. Dr. Stefan Böttcher Universität Paderborn Grundlagen von Datenbanken - SS 2010 - Prof. Dr. Stefan Böttcher 4. Prolog als Datenbanksprache
MehrDBS ::: SERIE 5. Join Right Semi- Join Left Semi-Join Projektion Selektion Fremdschlüssel. Kreuzprodukt
DBS ::: SERIE 5 Die Relation produkt enthält Hersteller, Modellnummer und Produktgattung (pc, laptop oder drucker aller Produkte. Die Modellnummer ist (der Einfachheit halber eindeutig für alle Hersteller
Mehr5 Logische Programmierung
5 Logische Programmierung Logik wird als Programmiersprache benutzt Der logische Ansatz zu Programmierung ist (sowie der funktionale) deklarativ; Programme können mit Hilfe zweier abstrakten, maschinen-unabhängigen
MehrGrundlagen der Künstlichen Intelligenz
Grundlagen der Künstlichen Intelligenz 28. Aussagenlogik: DPLL-Algorithmus Malte Helmert Universität Basel 2. Mai 2014 Aussagenlogik: Überblick Kapitelüberblick Aussagenlogik: 26. Grundlagen 27. Logisches
MehrReihenfolge von Klauseln
Reihenfolge von Klauseln Bei der Programmierung in Prolog steht grundsätzlich die Repräsentation logischer Zusammenhänge im Vordergrund. Nichtsdestotrotz ist es unvermeidbar, die Mechanismen der Abarbeitung
MehrKomplexität. Matthias Sax. 9. Juli Humboldt-Universität zu Berlin. Institut für Informatik
Komplexität Matthias Sax Humboldt-Universität zu Berlin Institut für Informatik 9. Juli 2007 Matthias Sax Komplexität 1 / 21 1 Problemstellung 2 Polynomiale Fälle Ungleichheit Anfragen in der Logik der
MehrAnfragesprachen mit Rekursion Datalog
Beispiel: Frankfurter U-Bahn-Netz Hier vereinfacht: Eine Relation U-Bahn-Netz mit Attributen Linie, Halt, nächsterhalt 7.1 7.2 Statische Analyse 7.3 U-Bahn-Netz Linie Halt nächsterhalt U4 Bockenheimer
MehrAusdrucksstärke von monadischem Datalog auf Bäumen
Ausdrucksstärke von monadischem Datalog auf Bäumen RWTH Aachen Seminar über Automaten für XML (WS 2005/06) 06. Dezember 2005 Druckversion Worum es geht... Aufgabe: Selektieren von Knoten in Bäumen Anfragesprache:
MehrLogik für Informatiker
Logik für Informatiker im Wintersemester 2012/13 Inhaltsverzeichnis Vorwort v 1 Aussagenlogik 1 1.1 Grundbegriffe der Aussagenlogik............... 1 1.2 Äquivalenz und Normalformen................ 34 1.3
MehrKurseinheit 1 Einführung und mathematische Grundlagen Aussagenlogik
Kurseinheit 1 Einführung und mathematische Grundlagen Aussagenlogik Fragen Seite Punkte 1. Was ist die Mathematische Logik? 3 2 2. Was sind die Aussagenlogik und die Prädikatenlogik? 5 4 3. Was sind Formeln,
MehrGrundlagen der Theoretischen Informatik
FH Wedel Prof. Dr. Sebastian Iwanowski GTI22 Folie 1 Grundlagen der Theoretischen Informatik Sebastian Iwanowski FH Wedel Kap. 2: Logik, Teil 2.2: Prädikatenlogik FH Wedel Prof. Dr. Sebastian Iwanowski
MehrTU München, Fakultät für Informatik Lehrstuhl III: Datenbanksysteme Prof. Alfons Kemper, Ph.D.
TU München, Fakultät für Informatik Lehrstuhl III: Datenbanksysteme Prof. Alfons Kemper, Ph.D. Übung zur Vorlesung Einführung in die Informatik 2 für Ingenieure (MSE) Alexander van Renen (renen@in.tum.de)
MehrGrundlagen der Kognitiven Informatik
Grundlagen der Kognitiven Informatik Resolutionskalkül und Prolog Ute Schmid Kognitive Systeme, Angewandte Informatik, Universität Bamberg letzte Änderung: 14. Dezember 2010 U. Schmid (CogSys) KogInf-Resolution
MehrÜbungen zu Einführung in die Lineare Algebra und Geometrie
Übungen zu Einführung in die Lineare Algebra und Geometrie Andreas Cap Wintersemester 2014/15 Kapitel 1: Einleitung (1) Für a, b Z diskutiere analog zur Vorlesung das Lösungsverhalten der Gleichung ax
Mehr2 Mengen, Relationen, Funktionen
Grundlagen der Mathematik für Informatiker Grundlagen der Mathematik für Informatiker Mengen, Relationen, Funktionen. Mengen Definition. [Georg Cantor 895] Eine Menge ist eine Zusammenfassung bestimmter,
MehrGrundlagen der Mathematik
Grundlagen der Mathematik Übungsaufgaben zu Kapitel 1 Einführung 1.1.1 Für reelle Zahlen a und b gilt (a+b) (a-b) = a 2 -b 2. Was ist die Voraussetzung? Wie lautet die Behauptung? Beweisen Sie die Behauptung.
Mehr15ab 21bc 9b = 3b 5a 7c 3
4 4.1 Einführung Haben alle Summanden einer algebraischen Summe einen gemeinsamen Faktor, so kann man diesen gemeinsamen Faktor ausklammern. Die Summe wird dadurch in ein Produkt umgewandelt. Tipp: Kontrolle
MehrEinleitung Projektion Selektion Join Mengenop. Vollst.keit. Einleitung Projektion. Selektion Join. Vollst.keit. Einleitung Projektion Selektion Join
Parsen der Anfrage (SQL) Transformation in eine Standardform (Relationenalgebra) Logische Optimierung Transformation in alternative Zugriffspläne, Physische Optimierung Ausführung des gewählten Zugriffsplans
MehrKünstliche Intelligenz Hornklauseln & Prolog
Künstliche Intelligenz Hornklauseln & Prolog Stephan Schwiebert WS 2007/2008 Sprachliche Informationsverarbeitung Institut für Linguistik Universität zu Köln Terminologie (A B C) E Rumpf einer Klausel
MehrGROUP BY, HAVING und Sichten
GROUP BY, HAVING und Sichten Tutorübungen 09/33 zu Grundlagen: Datenbanken (WS 14/15) Michael Schwarz Technische Universität München 11.11 / 12.11.2014 1/12 GROUP BY HAVING Sichten Eine Tabelle studenten
MehrEinführung in die Informatik 2
Einführung in die Informatik 2 Mathematische Grundbegriffe Sven Kosub AG Algorithmik/Theorie komplexer Systeme Universität Konstanz E 202 Sven.Kosub@uni-konstanz.de Sprechstunde: Freitag, 12:30-14:00 Uhr,
MehrDataLog. Datenbank-Programmiersprache für deduktive Datenbanken. Proseminar Programmierparadigmen und Sprachen. Nico Braunisch
DataLog Datenbank-Programmiersprache für deduktive Datenbanken Proseminar Programmierparadigmen und Sprachen Nico Braunisch Inhalt DataLog Motivation Definition Entstehung Syntyx & Semantik Bedeutung CodeQuest
MehrIntelligente Datenbanken
Intelligente Datenbanken Prof. Dr. Rainer Manthey Dipl.Inform. Andreas Behrend Dipl.Inform. Oliver Speidel Seminar WS 02/03 Institut für Informatik III Universität Bonn 1 1. Organisatorisches Kenntnisse
MehrMagic Sets. Kontrollkomponente SIP. Sideways Information Passing Strategy (SIP-Strategy)
Sideways Information Passing Strategy (SIP-Strategy) Magic Sets (informal) Für eine Regel eines Programms stellt eine SIP- Strategie eine Entscheidung hinsichtlich der Auswertungsreihenfolge der Prädikate
MehrDieser Foliensatz darf frei verwendet werden unter der Bedingung, dass diese Titelfolie nicht entfernt wird.
Thomas Studer Relationale Datenbanken: Von den theoretischen Grundlagen zu Anwendungen mit PostgreSQL Springer, 2016 ISBN 978-3-662-46570-7 Dieser Foliensatz darf frei verwendet werden unter der Bedingung,
MehrKapitel 2: Grundlagen von Anfragesprachen
2. Grundlagen von Anfragesprachen Seite 1 Kapitel 2: Grundlagen von Anfragesprachen Sprachparadigmen Relationenalgebra Relationenkalkül später SQL 2. Grundlagen von Anfragesprachen 2.1. Relationenalgebra
MehrKonjunktive Anfragen II
Azyklische Anfragen Vorlesung Datenbanktheorie Vorlesung vom Mittwoch, 21. Juni 2006 Nicole Schweikardt Humboldt-Universität zu Berlin Sommersemester 2006 Letzte Vorlesung: effiziente Auswertung von azyklischen
MehrDatenbanktheorie. Teil D: Anfragen mit Rekursion 12: Datalog I: Semantik. Sommersemester Thomas Schwentick. Version von: 29.
Datenbanktheorie Sommersemester 2012 - Thomas Schwentick Teil D: Anfragen mit Rekursion 12: Datalog I: Semantik Version von: 29. Mai 2012 (16:09) Inhalt 12.1 Einleitung 12.2 Datalog ohne Negation 12.3
Mehrd.h. zu Definitions-Stelle eindeutiger Funktionswert x X! y Y : (x,y) f umgekehrt: (x 1,y), (x 2,y) f ist o.k. X Y f(x) = y
Kapitel 7 Normalformen und DB-Entwurf Kap. 7.1 Normalformen Theorie Funktionale Abhängigkeit: f X Y f als Relation, d.h. Menge von Paaren {(x,y)} x: Definitions-Stelle, y: Funktionswert f ist Funktion
MehrKünstliche Intelligenz Logische Agenten & Resolution
Künstliche Intelligenz Logische Agenten & Resolution Stephan Schwiebert WS 2009/2010 Sprachliche Informationsverarbeitung Institut für Linguistik Universität zu Köln Inferenz-Algorithmus Wie könnte ein
Mehr1. Grundkonzepte der logischen Programmierung 2. Syntax von Prolog 3. Rechnen in Prolog. IV.1 Grundkonzepte der logischen Programmierung - 1 -
1. Grundkonzepte der logischen Programmierung 2. Syntax von Prolog 3. Rechnen in Prolog IV.1 Grundkonzepte der logischen Programmierung - 1 - Übersicht Imperative Sprachen Deklarative Sprachen Folge von
MehrGrundlagen der Theoretischen Informatik
Grundlagen der Theoretischen Informatik Sommersemester 2015 23.04.2015 Viorica Sofronie-Stokkermans e-mail: sofronie@uni-koblenz.de 1 Bis jetzt 1. Terminologie 2. Endliche Automaten und reguläre Sprachen
MehrLogik-Grundlagen. Syntax der Prädikatenlogik
Logik-Grundlagen X 1 :...: X k : ( A 1 A 2... A m B 1 B 2... B n ) Logische und funktionale Programmierung - Universität Potsdam - M. Thomas - Prädikatenlogik III.1 Syntax der Prädikatenlogik Prädikat:
MehrProlog als Datenbanksprache - Idee
Prolog als Datenbanksprache - Idee student Mnr Vorname Name Semester student( 1000, Anna, Arm, ti2 ). student( 1001, ita, eich, ti2 ). student( 1002, Peter, eich, ti2 ). student( 1003, Peter, Petersen,
MehrBinäre Suchbäume (binary search trees, kurz: bst)
Binäre Suchbäume (binary search trees, kurz: bst) Datenstruktur zum Speichern einer endlichen Menge M von Zahlen. Genauer: Binärbaum T mit n := M Knoten Jeder Knoten v von T ist mit einer Zahl m v M markiert.
MehrLogische und funktionale Programmierung
Logische und funktionale Programmierung Vorlesung 2: Prädikatenkalkül erster Stufe Babeş-Bolyai Universität, Department für Informatik, Cluj-Napoca csacarea@cs.ubbcluj.ro 14. Oktober 2016 1/38 DIE INTERPRETATION
MehrProlog 3. Kapitel: Rekursion
Zusammenfassung: Kapitel 2 Prolog 3. Kapitel: Rekursion Wir haben gelernt wie komplexe Strukturen durch Matching in Prolog aufgebaut werden können und wie die Beweisführung in Prolog funktioniert. Dozentin:
MehrTU München, Fakultät für Informatik Lehrstuhl III: Datenbanksysteme Prof. Alfons Kemper, Ph.D.
TU München, Fakultät für Informatik Lehrstuhl III: Datenbanksysteme Prof. Alfons Kemper, Ph.D. Blatt Nr. 8 Hausaufgabe 1 Übung zur Vorlesung Grundlagen: Datenbanken im WS13/14 Henrik Mühe (muehe@in.tum.de)
MehrUniversität Augsburg, Institut für Informatik WS 2005/2006 Prof. Dr. Werner Kießling 21. Nov M. Endres, A. Huhn, P. Preisinger Lösungsblatt 4
Universität Augsburg, Institut für Informatik WS 2005/2006 Prof. Dr. Werner Kießling 21. Nov. 2005 M. Endres, A. Huhn, P. Preisinger Lösungsblatt 4 Datenbanksysteme I Aufgabe 1: Relationale Vollständigkeit
MehrMusterlösung 11.Übung Mathematische Logik
Lehr- und Forschungsgebiet Mathematische Grundlagen der Informatik RWTH Aachen Prof. Dr. E. Grädel, F. Reinhardt SS 2015 Aufgabe 2 Musterlösung 11.Übung Mathematische Logik Geben Sie für die folgenden
MehrSQL 2. Ziele. Fortgeschrittene SQL-Konstrukte. Aggregatfunktionen revisited. Subqueries. Korrelierte Subqueries
SQL 2 Lehr- und Forschungseinheit Datenbanken und Informationssysteme 1 Ziele Fortgeschrittene SQL-Konstrukte groupby having union / intersect / except Aggregatfunktionen revisited Subqueries Korrelierte
MehrProlog 3. Kapitel: Rekursion
Prolog 3. Kapitel: Rekursion Dozentin: Wiebke Petersen Kursgrundlage: Learn Prolog Now (Blackburn, Bos, Striegnitz) Petersen Prolog: Kapitel 3 1 Zusammenfassung: Kapitel 2 Wir haben gelernt wie komplexe
Mehr8. Logische Programmierung. Prolog Sprachkonstrukte: Fakten. Prolog Übersicht
8. Logische Programmierung GPS-8-1 Übersicht zur logischen Programmierung GPS-8-2 Themen dieses Kapitels: Deklaratives Programmieren: Problem beschreiben statt Algorithmus implementieren (idealisiert).
MehrVorsemesterkurs Informatik
Vorsemesterkurs Informatik Vorsemesterkurs Informatik Mario Holldack WS2015/16 30. September 2015 Vorsemesterkurs Informatik 1 Einleitung 2 Aussagenlogik 3 Mengen Vorsemesterkurs Informatik > Einleitung
MehrDatenbanktheorie. Literatur: Abiteboul, S., R. Hull und V. Vianu, Foundations of Databases, Addison-Wesley 1995.
FGIS SS 2009 1. Datenbanktheorie 1. Datenbanktheorie 1 Enthaltensein-Problem konjunktiver Anfragen 2 Minimierung und Chase 3 Auswertung von Verbundausdrücken Literatur: Abiteboul, S., R. Hull und V. Vianu,
MehrObjektrelationale, erweiterbare Datenbanken WS 04/05
Eidgenössische Technische Hochschule Zürich Swiss Federal Institute of Technology Zurich Institut für Informationssysteme Dr.C.Türker Objektrelationale, erweiterbare Datenbanken WS 0405 Übung 8 Aufgabe
MehrFormale Methoden 1. Gerhard Jäger 7. November Uni Bielefeld, WS 2007/2008 1/18
1/18 Formale Methoden 1 Gerhard Jäger Gerhard.Jaeger@uni-bielefeld.de Uni Bielefeld, WS 2007/2008 7. November 2007 2/18 Geordnete Paare Mengen sind ungeordnet: {a, b} = {b, a} für viele Anwendungen braucht
MehrEigenschaften der Resolution für PL1 Formeln
Eigenschaften der Resolution für PL1 Formeln Widerlegungsvollständigkeit (ohne Beweis): Sofern man Resolution auf eine widersprüchliche Klauselmenge anwendet, so existiert eine endliche Folge von Resolutionsschritten,
MehrExpertensysteme Sprachverarbeitung Symbolische Informationsverarbeitung Graphentheoretische Probleme Planungsprobleme Rapid Prototyping...
Logische Programmierung Programm Menge von Formeln (Klauseln) Berechnung Beweis einer Formel (eines Ziels/Goals) mit Hilfe des Programms 17 Anwendungen Expertensysteme Sprachverarbeitung Symbolische Informationsverarbeitung
MehrTeil 1: Ein motivierendes Beispiel
Einführung in das Programmieren Prolog Sommersemester 2006 Teil 1: Ein motivierendes Beispiel Version 1.0 Gliederung der LV Teil 1: Ein motivierendes Beispiel Teil 2: Einführung und Grundkonzepte Syntax,
MehrAussagenlogik Prädikatenlogik erster Stufe. Logik. Logik
Grundzeichen Aussagenlogik Aussagenvariablen P, Q, R,... Junktoren nicht und oder Runde Klammern (, ) Formeln Aussagenlogik Formeln sind spezielle Zeichenreihen aus Grundzeichen, und zwar 1 Jede Aussagenvariable
Mehr2.5 Relationale Algebra
2.5 Relationale Algebra 2.5.1 Überblick Codd-vollständige relationale Sprachen Relationale Algebra Abfragen werden durch exakte Angabe der auf den Relationen durchzuführenden Operationen formuliert Relationenkalküle
MehrAussagenlogik. Übersicht: 1 Teil 1: Syntax und Semantik. 2 Teil 2: Modellierung und Beweise. Aussagenlogik H. Kleine Büning 1/25
Aussagenlogik Übersicht: 1 Teil 1: Syntax und Semantik 2 Teil 2: Modellierung und Beweise Aussagenlogik H. Kleine Büning 1/25 Einführendes Beispiel Falls Lisa Peter trifft, dann trifft Lisa auch Gregor.
MehrSyntax der Prädikatenlogik: Komplexe Formeln
Syntax der Prädikatenlogik: Komplexe Formeln Σ = P, F eine prädikatenlogische Signatur Var eine Menge von Variablen Definition: Menge For Σ der Formeln über Σ Logik für Informatiker, SS 06 p.10 Syntax
MehrTU München, Fakultät für Informatik Lehrstuhl III: Datenbanksysteme Prof. Alfons Kemper, Ph.D.
TU München, Fakultät für Informatik Lehrstuhl III: Datenbanksysteme Prof. Alfons Kemper, Ph.D. Blatt Nr. 7 Übung zur Vorlesung Grundlagen: Datenbanken im WS13/14 Henrik Mühe (muehe@in.tum.de) http://www-db.in.tum.de/teaching/ws1314/dbsys/exercises/
MehrDeduktive Datenbanken
Deduktive Datenbanken SS 2003 Prof. Dr. Rainer Manthey Institut für Informatik III Universität Bonn Deduktive Datenbanken 1 "Deductive databases in a nutshell" Deduktion (von lat. "deducere": wegführen,
MehrResolutionskalkül. wird t als eine Menge K t von Klauseln geschrieben, welche die einzelnen Maxterme repräsentieren:
Resolutionskalkül Ein Kalkül ist eine Kollektion von syntaktischen Umformungsregeln, die unter gegebenen Voraussetzungen aus bereits vorhandenen Formeln neue Formeln erzeugen. Der Resolutionskalkül besteht
MehrWiederholung VU Datenmodellierung
Wiederholung VU Datenmodellierung VU Datenbanksysteme Reinhard Pichler Arbeitsbereich Datenbanken und Artificial Intelligence Institut für Informationssysteme Technische Universität Wien Wintersemester
MehrSFW-Block (1) SFW-Block (2)
Tupetabee Wert Attribute SFW-Bock (1 Grundgerüst einer SQL-Anfrage: SFW-Bock SELECT FROM [WHERE [GROUP BY [HAVING Projektionsiste Tabeenausdruck Prädikat] Attributiste] Gruppenprädikat] Was ist das Ergebnis
MehrGrundlagen der Theoretischen Informatik / Einführung in die Theoretische Informatik I
Vorlesung Grundlagen der Theoretischen Informatik / Einführung in die Theoretische Informatik I Bernhard Beckert Institut für Informatik Sommersemester 2007 B. Beckert Grundlagen d. Theoretischen Informatik:
MehrAussagenlogik. Übersicht: 1 Teil 1: Syntax und Semantik. 2 Teil 2: Modellierung und Beweise. Aussagenlogik H. Kleine Büning 1/37
Aussagenlogik Übersicht: 1 Teil 1: Syntax und Semantik 2 Teil 2: Modellierung und Beweise Aussagenlogik H. Kleine Büning 1/37 Modellierungsaufgabe Es gibt drei Tauben und zwei Löcher. Jede Taube soll in
MehrWelche Kunden haben die gleiche Ware bestellt? select distinct a1.name, a2.name from Auftrag a1, Auftrag a2 where a1.ware = a2.ware.
*HVFKDFKWHOWH$QIUDJHQ In einer SQL-Anweisung können in der where-klausel, from-klausel, select-klausel wieder SQL-Anweisungen auftreten. Man spricht dann auch von einer geschachtelten Anfrage oder Unteranfrage.
MehrÜbersicht. Prädikatenlogik höherer Stufe. Syntax der Prädikatenlogik 1. Stufe (mit Gleichheit)
Übersicht I Künstliche Intelligenz II Problemlösen III Wissen und Schlussfolgern 7. Logische Agenten 8. Prädikatenlogik 1. Stufe 9. Schließen in der Prädikatenlogik 1. Stufe 10. Wissensrepräsentation IV
MehrDaniel Warner SQL. Das Praxisbuch. Mit 119 Abbildungen. Franzis
Daniel Warner SQL Das Praxisbuch Mit 119 Abbildungen Franzis Inhaltsverzeichnis Teil I - Einleitung 15 1 Einleitung 17 1.1 Zum Aufbau des Buchs 17 1.2 Hinweise zur Buch-CD 18 1.3 Typografische Konventionen
Mehrdefinieren eine Aussage A als einen Satz, der entweder wahr (w) oder falsch (f) (also insbesondere nicht beides zugleich) ist 1. Beispiel 1.1.
22 Kapitel 1 Aussagen und Mengen 1.1 Aussagen Wir definieren eine Aussage A als einen Satz, der entweder wahr w) oder falsch f) also insbesondere nicht beides zugleich) ist 1. Beispiel 1.1. 2 ist eine
MehrTutorium: Diskrete Mathematik
Tutorium: Diskrete Mathematik Vorbereitung der Bonusklausur am 24.11.2016 (Teil 2) 23. November 2016 Steven Köhler mathe@stevenkoehler.de mathe.stevenkoehler.de 2 c 2016 Steven Köhler 23. November 2016
MehrAbschnitt 3: Mathematische Grundlagen
Abschnitt 3: Mathematische Grundlagen 3. Mathematische Grundlagen 3.1 3.2 Induktion und Rekursion 3.3 Boolsche Algebra Peer Kröger (LMU München) Einführung in die Programmierung WS 14/15 48 / 155 Überblick
MehrÜbungen zu Einführung in die Lineare Algebra und Geometrie
Übungen zu Einführung in die Lineare Algebra und Geometrie Andreas Cap Sommersemester 2010 Kapitel 1: Einleitung (1) Für a, b Z diskutiere analog zur Vorlesung das Lösungsverhalten der Gleichung ax = b
MehrGrundlagen von Datenbanken SS 2010
Grundlagen von Datenbanken SS 2010 6. Tupelkalkül und relationale Vollständigkeit Prof. Dr. Stefan Böttcher Universität Paderborn mit Material von Prof. Dr. Gregor Engels Grundlagen von Datenbanken - SS
MehrDatenbanken - Wiederholung
Datenbanken - Wiederholung Norbert Fuhr Einführung Einführung Welches sind typische Probleme bei der Informationsverarbeitung ohne DBMS? Welche Abstraktionsebenen unterscheidet man bei einem DBMS? Was
MehrEinführung in die mathematische Logik
Prof. Dr. H. Brenner Osnabrück SS 2014 Einführung in die mathematische Logik Vorlesung 23 Der erste Gödelsche Unvollständigkeitssatz Wir haben gesehen, dass die Unentscheidbarkeit des Halteproblems über
MehrNormalformen der Prädikatenlogik
Normalformen der Prädikatenlogik prädikatenlogische Ausdrücke können in äquivalente Ausdrücke umgeformt werden Beispiel "X (mensch(x) Æ sterblich(x)) "X (ÿ mensch(x) sterblich(x)) "X (ÿ (mensch(x) Ÿ ÿ
MehrEin Beispiel: Tabelle DICHTER
Datenbanken Eine Datenbank ist eine Sammlung von Daten, die aus der Sicht des Benutzers zusammen gehören. Ein Datenbankverwaltungssystem (DBMS) ist ein informatisches System zur Verwaltung einer Datenbank.
MehrThema 10 Gewöhnliche Differentialgleichungen
Thema 10 Gewöhnliche Differentialgleichungen Viele Naturgesetze stellen eine Beziehung zwischen einer physikalischen Größe und ihren Ableitungen (etwa als Funktion der Zeit dar: 1. ẍ = g (freier Fall;
MehrBibliografische Informationen digitalisiert durch http://d-nb.info/995021198
Auf einen Blick 1 Einleitung 15 2 Datenbankentwurf 23 3 Datenbankdefinition 43 4 Datensätze einfügen (INSERT INTO) 95 5 Daten abfragen (SELECT) 99 6 Daten aus mehreren Tabellen abfragen (JOIN) 143 7 Unterabfragen
MehrDeklarative Semantik
7. Deklarative Semantik 7-1 Deklarative Semantik Bisher: Prolog als Programmiersprache. Operationale Semantik : Wie wird ein Programm ausgeführt? Welche Antworten werden berechnet? Jetzt: Prolog als logischer
MehrRelationen und DAGs, starker Zusammenhang
Relationen und DAGs, starker Zusammenhang Anmerkung: Sei D = (V, E). Dann ist A V V eine Relation auf V. Sei andererseits R S S eine Relation auf S. Dann definiert D = (S, R) einen DAG. D.h. DAGs sind
MehrTerme und Formeln Grundoperationen
Terme und Formeln Grundoperationen Die Vollständige Anleitung zur Algebra vom Mathematiker Leonhard Euler (*1707 in Basel, 1783 in Petersburg) prägte den Unterricht und die Lehrmittel für lange Zeit. Euler
MehrEinführung in PROLOG. Christian Stocker
Einführung in PROLOG Christian Stocker Inhalt Was ist PROLOG? Der PROLOG- Interpreter Welcher Interpreter? SWI-Prolog Syntax Einführung Fakten, Regeln, Anfragen Operatoren Rekursion Listen Cut Funktionsweise
MehrInformatik A. Prof. Dr. Norbert Fuhr auf Basis des Skripts von Prof. Dr. Wolfram Luther und der Folien von Peter Fankhauser
Informatik A Prof. Dr. Norbert Fuhr fuhr@uni-duisburg.de auf Basis des Skripts von Prof. Dr. Wolfram Luther und der Folien von Peter Fankhauser 1 Teil I Logik 2 Geschichte R. Descartes (17. Jhdt): klassische
MehrTU München, Fakultät für Informatik Lehrstuhl III: Datenbanksysteme Prof. Alfons Kemper, Ph.D.
TU München, Fakultät für Informatik Lehrstuhl III: Datenbanksysteme Prof. Alfons Kemper, Ph.D. Blatt Nr. 05 Übung zur Vorlesung Grundlagen: Datenbanken im W15/16 Harald Lang, Linnea Passing (gdb@in.tum.de
MehrVorlesung Informationssysteme
Saarbrücken, 11.06.2015 Information Systems Group Vorlesung Informationssysteme Vertiefung Kapitel 6: SQL und Verschachtelte Anfragen Erik Buchmann (buchmann@cs.uni-saarland.de) Foto: M. Strauch Aus den
MehrFormale Sprachen und Automaten
Mengen Eine Menge ist eine Gruppe von Elementen, die eine Einheit bilden (siehe z.b. Halmos 1976). Formale Sprachen und Automaten Mathematisches Rüstzeug Mengen können verschiedene Typen von Elementen
MehrGrundlagen von Datenbanken
Grundlagen von Datenbanken SS 2010 5. Bereichskalkül (=Domänenkalkül) Agenda: Prof. Dr. Stefan Böttcher Universität Paderborn mit Material von Prof. Dr. Gregor Engels Grundlagen von Datenbanken - SS 2010
MehrBeschreibungslogik Kapitel 7: ABoxen und Anfragebeantwortung
Beschreibungslogik Kapitel 7: ABoxen und Anfragebeantwortung Sommersemester 2017 Thomas Schneider AG Theorie der künstlichen Intelligenz (TdKI) http://tinyurl.com/ss17-bl Beschreibungslogik SoSe 2017 7
MehrDatenbanktheorie. Teil A: Einleitung 1: Grundbegriffe. Sommersemester Thomas Schwentick. Version von: 4. April 2012 (11:50)
Datenbanktheorie Sommersemester 2012 - Thomas Schwentick Teil A: Einleitung 1: Grundbegriffe Version von: 4. April 2012 (11:50) Inhalt 1.1 Das relationale Datenmodell 1.2 Anfragen an relationale Datenbanken
MehrBinary Decision Diagrams (Einführung)
Binary Decision Diagrams (Einführung) Binary Decision Diagrams (BDDs) sind bestimmte Graphen, die als Datenstruktur für die kompakte Darstellung von booleschen Funktionen benutzt werden. BDDs wurden von
MehrDas SQL-Schlüsselwort ALL entspricht dem Allquantor der Prädikatenlogik
Beispielaufgaben Informationssysteme erstellt von Fabian Rump zur IS Vorlesung 2009/10 1 Multiple Choice Aussage richtig falsch Eine SQL-Abfrage beginnt immer mit dem Schlüsselwort SELECT Eine Datenbank
MehrMathematische Strukturen
Mathematische Strukturen Lineare Algebra I Kapitel 3 16. April 2013 Kartesisches Produkt Das kartesische Produkt (benannt nach René Descartes) von n Mengen M 1,..., M n ist M 1 M n := {(x 1,..., x n )
MehrTU München, Fakultät für Informatik Lehrstuhl III: Datenbanksysteme Prof. Alfons Kemper, Ph.D.
TU München, Fakultät für Informatik Lehrstuhl III: Datenbanksysteme Prof. Alfons Kemper, Ph.D. Blatt Nr. 06 Übung zur Vorlesung Grundlagen: Datenbanken im WS16/17 Harald Lang, Linnea Passing (gdb@in.tum.de
MehrGruppe A Bitte tragen Sie SOFORT und LESERLICH Namen und Matrikelnr. ein, und legen Sie Ihren Studentenausweis bereit.
Gruppe A Bitte tragen Sie SOFORT und LESERLICH Namen und Matrikelnr. ein, und legen Sie Ihren Studentenausweis bereit. PRÜFUNG AUS DATENMODELLIERUNG (184.685) GRUPPE A MUSTERLÖSUNG 06.05.2014 Matrikelnr.
MehrLineare Algebra I. - 1.Vorlesung - Prof. Dr. Daniel Roggenkamp & Falko Gauß. Monday 12 September 16
Lineare Algebra I - 1.Vorlesung - Prof. Dr. Daniel Roggenkamp & Falko Gauß 1. Mengen und Abbildungen: Mengen gehören zu den Grundlegendsten Objekten in der Mathematik Kurze Einführung in die (naive) Mengelehre
MehrFormale Grundlagen der Informatik 1 Kapitel 16 Normalformen und Hornformeln
Formale Grundlagen der Informatik 1 Kapitel 16 Normalformen und Frank Heitmann heitmann@informatik.uni-hamburg.de 9. Juni 2015 Frank Heitmann heitmann@informatik.uni-hamburg.de 1/36 Ersetzbarkeitstheorem
MehrAussagenlogische Kalküle
Aussagenlogische Kalküle Ziel: mit Hilfe von schematischen Regeln sollen alle aus einer Formel logisch folgerbaren Formeln durch (prinzipiell syntaktische) Umformungen abgeleitet werden können. Derartige
Mehr