Künstliche Intelligenz Hornklauseln & Prolog

Größe: px
Ab Seite anzeigen:

Download "Künstliche Intelligenz Hornklauseln & Prolog"

Transkript

1 Künstliche Intelligenz Hornklauseln & Prolog Stephan Schwiebert WS 2007/2008 Sprachliche Informationsverarbeitung Institut für Linguistik Universität zu Köln

2 Terminologie (A B C) E Rumpf einer Klausel Kopf einer Klausel True (A) Fakt/Tatsache

3 Vorteile von Hornklauseln Einfach zu erzeugen, weil nur zwei (halbwegs intuitive) Typen von Klausel Einfach zu verketten Schnell (linear zur Größe der Wissensbasis) zu verarbeiten

4 Inferenzalgorithmus für Hornklauseln Idee: Aus den bekannten Fakten (Zielklauseln) und den Implikationen der Regeln (definite Klauseln) neue Fakten generieren und der Wissensbasis hinzufügen.

5 Beispiel (Vorwärtsverkettung)

6 UND-ODER-Graph

7 Algorithmus zur Vorwärtsverkettung

8 Vorwärts-Verkettung Prämissen von A P L Prämissen von A B L

9 Vorwärts-Verkettung

10 Vorwärts-Verkettung

11 Vorwärts-Verkettung

12 Vorwärts-Verkettung

13 Vorwärts-Verkettung

14 Vorwärts-Verkettung

15 Vorwärts-Verkettung

16 Rückwärts-Verkettung Idee: Ausgehend von der Frage (im Beispiel: Ist Q wahr?) den Wahrheitswert der betroffenen Regeln ermitteln.

17 Rückwärts-Verkettung

18 Rückwärts-Verkettung

19 Rückwärts-Verkettung

20 Rückwärts-Verkettung

21 Rückwärts-Verkettung

22 Rückwärts-Verkettung

23 Rückwärts-Verkettung

24 Rückwärts-Verkettung

25 Rückwärts-Verkettung

26 Rückwärts-Verkettung

27 Hornklauseln: Fazit Hornklauseln ermöglichen es, eine Teilmenge der Aussagenlogik so zu behandeln, dass Die Welt durch Wissen und Regeln (Implikationen) beschrieben werden kann Aus diesem Wissen neues Wissen generiert werden kann Fragen beantwortet werden können Die Komplexität der Algorithmen in P liegt

28 Prolog Die Programmiersprache Prolog ( Programming in Logic ) basiert auf Hornklauseln, und besteht (fast) ausschließlich aus Implikationen und Fakten. Idee: Statt ein Problem durch ein selbst entworfenes Programm zu lösen, wird das Problem beschrieben und löst sich selbst.

29 Beispiel: Sokrates in Prolog

30 Beispiel: Sokrates in Prolog Prolog Formel Hornformel menschlich(sokrates). m m sterblich(x) :- menschlich(x). m s m s person(emma). p p weiblich(emma). w w elternteil(emma, otto). e e mutter(x) :- weiblich(x), elternteil(x, Y). w e mu (w e) mu w e mu

31 Beispiel 2: Herakles Herakles war Mensch, aber unsterblich. Entsprechend muss die Definition von Sterblichkeit angepasst werden, z.b. so: sterblich(x) :- mensch(x), not(x=herakles).

32 Syntax von Prolog Prolog-Fakten beschreiben Eigenschaften o.ä.. Es handelt sich um Klauseln ohne Rumpf: irgendwas. menschlich(sokrates).

33 Syntax von Prolog Prolog-Fakten beschreiben Eigenschaften o.ä.. Es handelt sich um Klauseln ohne Rumpf: irgendwas. menschlich(sokrates). Prolog-Regeln sind Klauseln mit Rumpf und beschreiben Implikationen: sterblich(x) :- menschlich(x).

34 Syntax von Prolog Prolog-Regeln können mehr als ein Element im Rumpf enthalten diese werden durch Kommata per Konjunktion verbunden sterblich(x) :- menschlich(x), not(x = herakles). oder alternativ durch Semikola (Disjunktion) elternteil(x,y) :- vater(x,y); mutter(x,y).

35 Syntax von Prolog Durch Klein/Großschreibung des ersten Buchstabens wird unterschieden, ob es sich bei einem Element um ein Atom oder eine Variable handelt: % sokrates als Atom: menschlich(sokrates). % sokrates als Variable, die jeden Wert annehmen % kann: sterblich(sokrates) :- menschlich(sokrates).

36 Syntax von Prolog Jede Klausel egal ob Fakt oder Regel muss mit einem Punkt beendet werden. Achtung: (SWI-) Prolog reagiert empfindlich auf falsche Leerzeichen!

37 SWI-Prolog Ändern Sie die Einstellungen im Menu Settings- >User Init File: Entfernen Sie den Kommentar (%) in der Zeile :- set_prolog_flag(editor, pce_emacs). Zum Erstellen eines neuen Programms: Speichern Sie eine neue Datei mit Endung.pl Schreiben Sie Ihr Programm und speichern Sie die Datei.

38 SWI-Prolog Wählen Sie beim ersten Ausführen File->Consult, anschließend Ihre Datei. Bei späteren Änderungen genügt der Punkt Reload modified Files. Erscheint die Ausgabe c:/... compiled in sec, ist alles ok, andernfalls ist ein Fehler in Ihrem Programm. Rufen Sie schließlich eines Ihrer Prolog-Prädikate auf, z.b. menschlich(sokrates). oder menschlich(x).

39 Aufgabe: Stammbaum Abraham Kurt Brunhilde Hans Maria Theodor Marianne Peter Petra Gerd Uschi Paul Paula Andrea Judith Otto Silke Sebastian Torsten Kathi

40 Aufgabe: Stammbaum Konstruieren Sie eine Wissensbasis, die den Stammbaum wiedergibt. Gehen Sie dabei nach folgendem Schema vor: elternteil(abraham,brunhilde). elternteil(abraham,theodor). weiblich(brunhilde). weiblich(maria). maennlich(x) :- not(weiblich(x)).

41 Aufgabe: Stammbaum Erstellen Sie Regeln für folgende Beziehungen: Vater oder Mutter Sohn oder Tochter Bruder oder Schwester Geschwister Opa oder Oma Tante oder Onkel Vorfahre Nachfahre Halbgeschwister (evtl. etwas schwierig!)

Wissensrepräsentation und -verarbeitung in Logiken. bereinigt Pränex Skolem ( -Eliminierung) Klausel (Menge von Klauseln, Notation ohne Quantoren)

Wissensreprä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)

Mehr

Wissensbasierte Systeme/ Expertensysteme. Teil 2

Wissensbasierte Systeme/ Expertensysteme. Teil 2 Wissensbasierte Systeme/ Expertensysteme Teil 2 BiTS, Sommersemester 2004 Dr. Stefan Kooths KOOTHS BiTS: Wissensbasierte Systeme/Expertensysteme Teil 2 1 Gliederung 1. Einführung und Einordnung 2. Entscheidungsunterstützung(ssysteme)

Mehr

Einführung in PROLOG. Christian Stocker

Einfü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

Mehr

Prolog. Vertiefungsmodul Programmiersprachen. VM Programmiersprachen - Prolog. Florian Kleene

Prolog. Vertiefungsmodul Programmiersprachen. VM Programmiersprachen - Prolog. Florian Kleene Prolog Vertiefungsmodul Programmiersprachen VM Programmiersprachen - Prolog Florian Kleene Entstehung und Geschichte Aufbau von Prolog Programmen Fakten Regeln Anfragen Funktionsweise des Interpreters

Mehr

Nichtmonotones Schließen

Nichtmonotones Schließen Was bisher geschah Wissensrepräsentation und -verarbeitung in Zustandsübergangssystemen klassischer Aussagenlogik: Entscheidungstabellen, -bäume, -diagramme Wissensrepräsentation und -verarbeitung durch

Mehr

Binäre Suchbäume (binary search trees, kurz: bst)

Binä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.

Mehr

Tiramisu Deklarativ Aus Eigelb, Mascarpone und in Likör und Kaffee getränkten Biskuits hergestellte cremige Süßspeise

Tiramisu Deklarativ Aus Eigelb, Mascarpone und in Likör und Kaffee getränkten Biskuits hergestellte cremige Süßspeise Kapitel 3 Logik-Programmierung 3.1 Einführung Was statt Wie am Beispiel von Tiramisu Folie 145 Tiramisu Deklarativ Aus Eigelb, Mascarpone und in Likör und Kaffee getränkten Biskuits hergestellte cremige

Mehr

Was bisher geschah. Aufgaben: Diagnose, Entscheidungsunterstützung Aufbau Komponenten und Funktion

Was bisher geschah. Aufgaben: Diagnose, Entscheidungsunterstützung Aufbau Komponenten und Funktion Was bisher geschah Daten, Information, Wissen explizites und implizites Wissen Wissensrepräsentation und -verarbeitung: Wissensbasis Kontextwissen Problemdarstellung fallspezifisches Wissen repräsentiert

Mehr

5 Logische Programmierung

5 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

Mehr

Künstliche Intelligenz Maschinelles Lernen

Künstliche Intelligenz Maschinelles Lernen Künstliche Intelligenz Maschinelles Lernen Stephan Schwiebert Sommersemester 2009 Sprachliche Informationsverarbeitung Institut für Linguistik Universität zu Köln Maschinelles Lernen Überwachtes Lernen

Mehr

Prolog basiert auf Prädikatenlogik

Prolog basiert auf Prädikatenlogik Software-Technologie Software-Systeme sind sehr komplex. Im Idealfall erfolgt die Programmierung problemorientiert, während die notwendige Übertragung in ausführbare Programme automatisch erfolgt. Prolog-Philosophie:

Mehr

Modul: Familie. Thema: Meine Familie

Modul: Familie. Thema: Meine Familie Thema: Meine Familie Inhalte: - Wortschatz zum Thema Familie ; - Dialoge: Familienmitglieder verstehen, üben, selbst durchführen; - Familienstammbaum; - Auswertung des Familienstammbaums: Richtig-Falsch-Aufgaben;

Mehr

Mai 2006. Hauptseminar: Nichtrelationale Datenbanken Historisch-Kulturwissenschaftliche Informationsverarbeitung Universität zu Köln

Mai 2006. Hauptseminar: Nichtrelationale Datenbanken Historisch-Kulturwissenschaftliche Informationsverarbeitung Universität zu Köln Hauptseminar: Nichtrelationale Historisch-Kulturwissenschaftliche Informationsverarbeitung Universität zu Köln Mai 2006 Was ist eine Datenbank? Erweiterung relationaler um eine Deduktionskomponente Diese

Mehr

Semantic Web Technologies I!

Semantic Web Technologies I! www.semantic-web-grundlagen.de Semantic Web Technologies I! Lehrveranstaltung im WS11/12! Dr. Elena Simperl! DP Dr. Sebastian Rudolph! M.Sc. Anees ul Mehdi! www.semantic-web-grundlagen.de Logik Grundlagen!

Mehr

Kopf und Rest einer Liste (head and tail): Trennung durch. Listenkopf: kann mehrere Elemente umfassen

Kopf und Rest einer Liste (head and tail): Trennung durch. Listenkopf: kann mehrere Elemente umfassen Prolog Syntax Liste, Variable [ Term Liste ] Listenelemente: Trennung durch Komma [1, pferd, klaus] Kopf und Rest einer Liste (head and tail): Trennung durch [K R] = [1, pferd, klaus] (K = 1, R = [pferd,

Mehr

Terme stehen für Namen von Objekten des Diskursbereichs (Subjekte, Objekte des natürlichsprachlichen Satzes)

Terme stehen für Namen von Objekten des Diskursbereichs (Subjekte, Objekte des natürlichsprachlichen Satzes) Prädikatenlogik Man kann den natürlichsprachlichen Satz Die Sonne scheint. in der Prädikatenlogik beispielsweise als logisches Atom scheint(sonne) darstellen. In der Sprache der Prädikatenlogik werden

Mehr

Beschreibungslogiken. Daniel Schradick 1schradi@informatik.uni-hamburg.de

Beschreibungslogiken. Daniel Schradick 1schradi@informatik.uni-hamburg.de Beschreibungslogiken Daniel Schradick 1schradi@informatik.uni-hamburg.de Was sind Beschreibungslogiken? Definition: Formalisms that represent knowledge of some problem domain (the world ) by first defining

Mehr

Künstliche Intelligenz Unsicherheit. Stephan Schwiebert WS 2009/2010 Sprachliche Informationsverarbeitung Institut für Linguistik Universität zu Köln

Künstliche Intelligenz Unsicherheit. Stephan Schwiebert WS 2009/2010 Sprachliche Informationsverarbeitung Institut für Linguistik Universität zu Köln Künstliche Intelligenz Unsicherheit Stephan Schwiebert WS 2009/2010 Sprachliche Informationsverarbeitung Institut für Linguistik Universität zu Köln Rückblick Agent in der Wumpuswelt konnte Entscheidungen

Mehr

Formeln. Signatur. aussagenlogische Formeln: Aussagenlogische Signatur

Formeln. Signatur. aussagenlogische Formeln: Aussagenlogische Signatur Signatur Formeln Am Beispiel der Aussagenlogik erklären wir schrittweise wichtige Elemente eines logischen Systems. Zunächst benötigt ein logisches System ein Vokabular, d.h. eine Menge von Namen, die

Mehr

Datenstruktur zum Speichern einer endlichen Menge M von Zahlen. Genauer:

Datenstruktur zum Speichern einer endlichen Menge M von Zahlen. Genauer: 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.

Mehr

Erfüllbarkeit und Allgemeingültigkeit

Erfüllbarkeit und Allgemeingültigkeit Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.3 Aussagenlogik Erfüllbarkeit 44 Erfüllbarkeit und Allgemeingültigkeit Def.: eine Formel ϕ heißt erfüllbar, wennesein I gibt, so dass I = ϕ

Mehr

Einführung in Prolog. Literatur

Einführung in Prolog. Literatur Einführung in Prolog Literatur Clocksin/Mellish Programming in Prolog Skript aus dem Kurs Max Hadersbeck Skript aus dem Kurs Hans Leiss Bratko Prolog Programming for Artificial Intelligence Prolog Lexikon

Mehr

Fixpunktsemantik logischer Programme Pascal Hitzler Juli 1997 Kurzuberblick im Rahmen der Vorlesung Einfuhrung in Prolog von T. Cornell im Sommersemester 1997 an der Universitat Tubingen. Beweise sind

Mehr

Entwurf von Algorithmen - Kontrollstrukturen

Entwurf von Algorithmen - Kontrollstrukturen Entwurf von Algorithmen - Kontrollstrukturen Eine wichtige Phase in der Entwicklung von Computerprogrammen ist der Entwurf von Algorithmen. Dieser Arbeitsschritt vor dem Schreiben des Programmes in einer

Mehr

Einführung in die Informatik: Programmierung und Software-Entwicklung, WS 11/12. Kapitel 1. Einführung und Grundbegriffe

Einführung in die Informatik: Programmierung und Software-Entwicklung, WS 11/12. Kapitel 1. Einführung und Grundbegriffe 1 Kapitel 1 2 Ziele Begriffsbildungen: Informatik, Algorithmus, Programm, Compiler, Einordnung von Java Ein einfaches Java-Programm erstellen, übersetzen und ausführen Java-Programme dokumentieren 3 Informatik

Mehr

Erste Schritte in SWI-Prolog

Erste Schritte in SWI-Prolog Die nachfolgenden Abschnitte sollen ein erster Einstieg in den Umgang mit Prolog sein, der sich explizit auf die in unserer Veranstaltung 'Prolog für Linguisten' verwendete Programmversion (SWI-Prolog

Mehr

Einführung in die Programmierung, WS 14/15 Übungsleiter: Sebastian Ebers <ebers@itm.uni-luebeck.de> Aufgabenblatt 2

Einführung in die Programmierung, WS 14/15 Übungsleiter: Sebastian Ebers <ebers@itm.uni-luebeck.de> Aufgabenblatt 2 Übung zur Vorlesung Einführung in die Programmierung, WS 14/15 Übungsleiter: Sebastian Ebers Aufgabenblatt 2 Abgabe: 17.11.2014, vor der Vorlesung / Großübung (10:00 Uhr, AM

Mehr

Prolog = Programmierung in Logik (Roussell, Colmerauer, 1973/74)

Prolog = Programmierung in Logik (Roussell, Colmerauer, 1973/74) Logikprogrammierung Historie: Philosophie / Mathematik Künstliche Intelligenz Praktische Programmiersprache: Prolog = Programmierung in Logik (Roussell, Colmerauer, 1973/74) Grundidee: Ein Programm ist

Mehr

Zusammenhänge präzisieren im Modell

Zusammenhänge präzisieren im Modell Zusammenhänge präzisieren im Modell Dr. Roland Poellinger Munich Center for Mathematical Philosophy Begriffsfeld Logik 1 Mathematik und Logik Die Mathematik basiert auf logisch gültigen Folgerungsschritten

Mehr

Prolog 1. Kapitel: Fakten, Regeln und Anfragen

Prolog 1. Kapitel: Fakten, Regeln und Anfragen Allgemeines Prolog 1. Kapitel: Fakten, Regeln und Anfragen Dozentin: Wiebke Petersen Kursgrundlage: Learn Prolog Now (Blackburn, Bos, Striegnitz) Prolog (aus dem franz. Programming en Logique) ist eine

Mehr

Steinerbäume. Seminarausarbeitung Hochschule Aalen Fakultät für Elektronik und Informatik Studiengang Informatik Schwerpunkt Software Engineering

Steinerbäume. Seminarausarbeitung Hochschule Aalen Fakultät für Elektronik und Informatik Studiengang Informatik Schwerpunkt Software Engineering Steinerbäume Seminarausarbeitung Hochschule Aalen Fakultät für Elektronik und Informatik Studiengang Informatik Schwerpunkt Software Engineering Verfasser Flamur Kastrati Betreuer Prof. Dr. habil. Thomas

Mehr

7. Formale Sprachen und Grammatiken

7. Formale Sprachen und Grammatiken 7. Formale Sprachen und Grammatiken Computer verwenden zur Verarbeitung von Daten und Informationen künstliche, formale Sprachen (Maschinenspr., Assemblerspachen, Programmierspr., Datenbankspr., Wissensrepräsentationsspr.,...)

Mehr

SWP Logische Programme

SWP Logische Programme SWP Logische Programme Alexander Felfernig, Stephan Gspandl Institut für Softwaretechnologie {alexander.felfernig,sgspandl}@ist.tugraz.at Institute for Software Technology Inhalt Motivation Logische Programme

Mehr

Binäre Bäume Darstellung und Traversierung

Binäre Bäume Darstellung und Traversierung Binäre Bäume Darstellung und Traversierung Name Frank Bollwig Matrikel-Nr. 2770085 E-Mail fb641378@inf.tu-dresden.de Datum 15. November 2001 0. Vorbemerkungen... 3 1. Terminologie binärer Bäume... 4 2.

Mehr

I. Aussagenlogik. Aussagenlogik untersucht Verknüpfungen wie "und", "oder", "nicht", "wenn... dann" zwischen atomaren und komplexen Sätzen.

I. Aussagenlogik. Aussagenlogik untersucht Verknüpfungen wie und, oder, nicht, wenn... dann zwischen atomaren und komplexen Sätzen. I. Aussagenlogik 2.1 Syntax Aussagenlogik untersucht Verknüpfungen wie "und", "oder", "nicht", "wenn... dann" zwischen atomaren und komplexen Sätzen. Sätze selbst sind entweder wahr oder falsch. Ansonsten

Mehr

Wissensbasierte Systeme

Wissensbasierte Systeme WBS4 Slide 1 Wissensbasierte Systeme Vorlesung 4 vom 03.11.2004 Sebastian Iwanowski FH Wedel WBS4 Slide 2 Wissensbasierte Systeme 1. Motivation 2. Prinzipien und Anwendungen 3. Logische Grundlagen 4. Suchstrategien

Mehr

Satzbedeutung. Ludwig Wittgenstein. Satzbedeutung. Satzbedeutung

Satzbedeutung. Ludwig Wittgenstein. Satzbedeutung. Satzbedeutung Was bisher geschah Semantik III Gerrit Kentner Semantik I lexikalische Semantik Ambiguitäten Sinnrelationen (vertikal und horizontal) Wortfelder / semantische Merkmale Semantik II Intension und Extension

Mehr

Theoretische Informatik

Theoretische Informatik Theoretische Informatik - das Quiz zur Vorlesung Teil I - Grundzüge der Logik In der Logik geht es um... (A) die Formen korrekten Folgerns (B) die Unterscheidung von wahr und falsch (C) das Finden von

Mehr

Prädikate zum Testen und Manipulieren der Struktur der Terme; Mehr meta-logische Prädikate z.b. zum Testen des Zustands der Ableitung;

Prädikate zum Testen und Manipulieren der Struktur der Terme; Mehr meta-logische Prädikate z.b. zum Testen des Zustands der Ableitung; Mehr Prolog Prolog bietet mehr an, z.b.: Prädikate zum Testen und Manipulieren der Struktur der Terme; Mehr meta-logische Prädikate z.b. zum Testen des Zustands der Ableitung; Mehr extra-logische Prädikate,

Mehr

Theoretische Grundlagen des Software Engineering

Theoretische Grundlagen des Software Engineering Theoretische Grundlagen des Software Engineering 9: Prädikatenlogik schulz@eprover.org Rückblick 2 Rückblick: Vor- und Nachteile von Aussagenlogik Aussagenlogik ist deklarativ: Syntaxelemente entsprechen

Mehr

Softwareentwicklung Allgemeines und prozedurale Konstrukte

Softwareentwicklung Allgemeines und prozedurale Konstrukte Mag. iur. Dr. techn. Michael Sonntag Softwareentwicklung Allgemeines und prozedurale Konstrukte E-Mail: sonntag@fim.uni-linz.ac.at http://www.fim.uni-linz.ac.at/staff/sonntag.htm Institut für Informationsverarbeitung

Mehr

Zeichnen von Graphen. graph drawing

Zeichnen von Graphen. graph drawing Zeichnen von Graphen graph drawing WS 2006 / 2007 Gruppe: D_rot_Ala0607 Christian Becker 11042315 Eugen Plischke 11042351 Vadim Filippov 11042026 Gegeben sei ein Graph G = (V; E) Problemstellung V E =

Mehr

WS 2009/10. Diskrete Strukturen

WS 2009/10. Diskrete Strukturen WS 2009/10 Diskrete Strukturen Prof. Dr. J. Esparza Lehrstuhl für Grundlagen der Softwarezuverlässigkeit und theoretische Informatik Fakultät für Informatik Technische Universität München http://www7.in.tum.de/um/courses/ds/ws0910

Mehr

Logische und funktionale Programmierung

Logische und funktionale Programmierung Logische und funktionale Programmierung Vorlesung 1: Einführung in Prolog Babeş-Bolyai Universität, Department für Informatik, Cluj-Napoca csacarea@cs.ubbcluj.ro 1. Oktober 2015 1/54 ORGANISATORISCHES

Mehr

V_Sim - software to calculate inbreeding coefficients

V_Sim - software to calculate inbreeding coefficients V_Sim - software to calculate inbreeding coefficients Ein Programm zur Berechnung von Inzuchtkoeffizienten und Abstammungskoeffizienten. Von Holger Krause Zweck des Programms Der Verwandtschaft-Simulator

Mehr

Grundlagen der Theoretischen Informatik - Sommersemester 2012. Übungsblatt 1: Lösungsvorschläge

Grundlagen der Theoretischen Informatik - Sommersemester 2012. Übungsblatt 1: Lösungsvorschläge Lehrstuhl für Softwaretechnik und Programmiersprachen Professor Dr. Michael Leuschel Grundlagen der Theoretischen Informatik - Sommersemester 2012 Übungsblatt 1: Lösungsvorschläge Disclaimer: Bei Folgendem

Mehr

6.1 Syntax und Semantik von Constraint-Logikprogrammen

6.1 Syntax und Semantik von Constraint-Logikprogrammen Kapitel 6 Logikprogrammierung mit Constraints Nachdem wir nun sowohl die reine Logikprogrammierung als auch ihre Implementierung in der Sprache Prolog betrachtet haben, wollen wir uns zum Schluss mit einer

Mehr

WS 2009/10. Diskrete Strukturen

WS 2009/10. Diskrete Strukturen WS 29/ Diskrete Strukturen Prof. Dr. J. Esparza Lehrstuhl für Grundlagen der Softwarezuverlässigkeit und theoretische Informatik Fakultät für Informatik Technische Universität München http://www7.in.tum.de/um/courses/ds/ws9

Mehr

Logische Programmierung

Logische Programmierung Logische Programmierung B-82 Deklaratives Programmieren in Prädikatenlogik: Problem beschreiben statt Algorithmus implementieren (idealisiert). Grundlagen: Relationen bzw. Prädikate (statt Funktionen);

Mehr

1. Formulieren Sie den Algorithmus <Bedienung eines Getränkeautomaten> nach den oben genannten Kriterien.

1. Formulieren Sie den Algorithmus <Bedienung eines Getränkeautomaten> nach den oben genannten Kriterien. Java 1 Einführung Grundlegende Übungsaufgaben Arbeitsauftrag 1.1 1. Formulieren Sie den Algorithmus nach den oben genannten Kriterien. Beispiel: Bedienung eines Getränkeautomaten

Mehr

KOLLEKTEN: 31.1. PFARREI 7.2. KERZENOPFER 14.2. PFARREI

KOLLEKTEN: 31.1. PFARREI 7.2. KERZENOPFER 14.2. PFARREI Gottesdienstordnung für den Pfarrverband Reichenkirchen/Maria Thalheim Pfarrbüro: 85447 Reichenkirchen, Hauptstr. 9 - Tel. 08762/411 - Fax.: 08762/3087 E-Mail: St-Michael.Reichenkirchen@erzbistum-muenchen.de

Mehr

Anleitung. SIP Einrichtung mit einer Fritz!Box 7390

Anleitung. SIP Einrichtung mit einer Fritz!Box 7390 Anleitung SIP Einrichtung mit einer Fritz!Box 7390 SIP Einrichtung mit einer Fritz!Box 7390 2 1. Starten Sie den Internet Browser Ihres PCs (i.d.r. Internet Explorer oder Mozilla Firefox) und geben Sie

Mehr

Einführung in die Fuzzy Logic

Einführung in die Fuzzy Logic Einführung in die Fuzzy Logic Entwickelt von L. Zadeh in den 60er Jahren Benutzt unscharfe (fuzzy) Begriffe und linguistische Variablen Im Gegensatz zur Booleschen Logik {0,} wird das ganze Intervall [0,]

Mehr

Program = Logic + Control

Program = Logic + Control Program = Logic + Control Prozedurale/imperative Sprachen: Abläufe formulieren Computer führt aus von-neumann-maschine Idee von deklarativen/logischen/funktionalen Programmiersprachen: Zusammenhänge formulieren

Mehr

Haskell zur Constraint-Programmierung HaL8

Haskell zur Constraint-Programmierung HaL8 Haskell zur Constraint-Programmierung HaL8 Alexander Bau 2. Mai 2013 Wir benutzen eine Teilmenge von Haskell zur Spezifikation von Constraint- Systemen über Haskell-Datentypen. Ein Constraint-Compiler

Mehr

Genogramm erstellen Anleitung und Leitfaden

Genogramm erstellen Anleitung und Leitfaden Genogramm erstellen Anleitung und Leitfaden www.ergebnisorientiertes-coaching.de Inhalt WAS IST EIN GENOGRAMM? 3 WIE VIEL GENOGRAMM BRAUCHT EINE AUFSTELLUNG? 3 WER GEHÖRT ALLES IN DAS GENOGRAMM? 4 WELCHE

Mehr

der einzelnen Aussagen den Wahrheitswert der zusammengesetzten Aussage falsch falsch falsch falsch wahr falsch wahr falsch falsch wahr wahr wahr

der einzelnen Aussagen den Wahrheitswert der zusammengesetzten Aussage falsch falsch falsch falsch wahr falsch wahr falsch falsch wahr wahr wahr Kapitel 2 Grundbegriffe der Logik 2.1 Aussagen und deren Verknüpfungen Eine Aussage wie 4711 ist durch 3 teilbar oder 2 ist eine Primzahl, die nur wahr oder falsch sein kann, heißt logische Aussage. Ein

Mehr

syntax.tex Eine Übersicht

syntax.tex Eine Übersicht syntax.tex Eine Übersicht Bernd Worsch 7. Juli 1997 Inhaltsverzeichnis 1 Einleitung 1 2 Bevor es funktioniert... 1 3 Grundelemente von syntax.tex 1 4 Strukturelemente von syntax.tex 3 5 Setzen von Syntaxdiagrammen

Mehr

Dossier: Rechnungen und Lieferscheine in Word

Dossier: Rechnungen und Lieferscheine in Word www.sekretaerinnen-service.de Dossier: Rechnungen und Lieferscheine in Word Es muss nicht immer Excel sein Wenn Sie eine Vorlage für eine Rechnung oder einen Lieferschein erstellen möchten, brauchen Sie

Mehr

NATIONAL SPORT SCHOOL ST CLARE COLLEGE

NATIONAL SPORT SCHOOL ST CLARE COLLEGE NATIONAL SPORT SCHOOL ST CLARE COLLEGE Mark HALF-YEARLY EXAMINATION 2014/15 FORM 1 GERMAN WRITTEN PAPER TIME: 1 hr 30 mins FAMILIENNAME VORNAME KLASSE SCHULE Gesamtergebnis GESAMTPUNKTZAHL: SPRECHEN, HÖREN,

Mehr

Methoden der KI in der Biomedizin Logische Agenten 1

Methoden der KI in der Biomedizin Logische Agenten 1 Methoden der KI in der Biomedizin Logische Agenten 1 Karl D. Fritscher Organisatorisches Voraussetzungen: Lehrstoff zu den Themengebieten: a. Einführung in die KI, Expertensysteme b. Problemlösung durch

Mehr

UI-Testing mit Microsoft Test Manager (MTM) Philip Gossweiler / 2013-04-18

UI-Testing mit Microsoft Test Manager (MTM) Philip Gossweiler / 2013-04-18 UI-Testing mit Microsoft Test Manager (MTM) Philip Gossweiler / 2013-04-18 Software Testing Automatisiert Manuell 100% 70% 1 Überwiegender Teil der Testing Tools fokusiert auf automatisiertes Testen Microsoft

Mehr

Wer erbt eigentlich was?

Wer erbt eigentlich was? Wer erbt eigentlich was? Die sogenannte gesetzliche Erbfolge kurz erklärt Jeder weiß es, jedem ist es bewusst: Sterben müssen wir alle. Und doch wird oft die Frage an mich herangetragen, wer denn nun eigentlich

Mehr

Inhalt. SWP Logische Programme. Motivation. Formalisierung. Wissensbasis. Bsp (Bibel)Verwandtschaften. Motivation Sprache LP

Inhalt. SWP Logische Programme. Motivation. Formalisierung. Wissensbasis. Bsp (Bibel)Verwandtschaften. Motivation Sprache LP Inhalt SWP Logische Programme Franz Wotawa Institut für Softwaretechnologie wotawa@ist.tugraz.at Motivation Sprache LP Resolution Unifikation Datenbanken und logische Programme Semantik 2 Motivation Bsp

Mehr

1 Vom Problem zum Programm

1 Vom Problem zum Programm 1 Vom Problem zum Programm Ein Problem besteht darin, aus einer gegebenen Menge von Informationen eine weitere (bisher unbekannte) Information zu bestimmen. 1 Vom Problem zum Programm Ein Algorithmus ist

Mehr

Grundbegriffe der Informatik

Grundbegriffe der Informatik Grundbegriffe der Informatik Einheit 3: Alphabete (und Relationen, Funktionen, Aussagenlogik) Thomas Worsch Universität Karlsruhe, Fakultät für Informatik Oktober 2008 1/18 Überblick Alphabete ASCII Unicode

Mehr

Klausurteilnehmer. Wichtige Hinweise. Note: Klausur Informatik Programmierung, 17.09.2012 Seite 1 von 8 HS OWL, FB 7, Malte Wattenberg.

Klausurteilnehmer. Wichtige Hinweise. Note: Klausur Informatik Programmierung, 17.09.2012 Seite 1 von 8 HS OWL, FB 7, Malte Wattenberg. Klausur Informatik Programmierung, 17.09.2012 Seite 1 von 8 Klausurteilnehmer Name: Matrikelnummer: Wichtige Hinweise Es sind keinerlei Hilfsmittel zugelassen auch keine Taschenrechner! Die Klausur dauert

Mehr

2. Lernen von Entscheidungsbäumen

2. Lernen von Entscheidungsbäumen 2. Lernen von Entscheidungsbäumen Entscheidungsbäume 2. Lernen von Entscheidungsbäumen Gegeben sei eine Menge von Objekten, die durch Attribut/Wert- Paare beschrieben sind. Jedes Objekt kann einer Klasse

Mehr

Grundlagen der Informationverarbeitung

Grundlagen der Informationverarbeitung Grundlagen der Informationverarbeitung Information wird im Computer binär repräsentiert. Die binär dargestellten Daten sollen im Computer verarbeitet werden, d.h. es müssen Rechnerschaltungen existieren,

Mehr

Grundlagen der Informatik. Prof. Dr. Stefan Enderle NTA Isny

Grundlagen der Informatik. Prof. Dr. Stefan Enderle NTA Isny Grundlagen der Informatik Prof. Dr. Stefan Enderle NTA Isny 2 Datenstrukturen 2.1 Einführung Syntax: Definition einer formalen Grammatik, um Regeln einer formalen Sprache (Programmiersprache) festzulegen.

Mehr

Übungsaufgaben zur Vorlesung Modellbasierte Softwareentwicklung Wintersemester 2014/2015 Übungsblatt 8

Übungsaufgaben zur Vorlesung Modellbasierte Softwareentwicklung Wintersemester 2014/2015 Übungsblatt 8 Prof. Dr. Wilhelm Schäfer Paderborn, 8. Dezember 2014 Christian Brenner Tristan Wittgen Besprechung der Aufgaben: 15. - 18. Dezember 2014 Übungsaufgaben zur Vorlesung Modellbasierte Softwareentwicklung

Mehr

Theorie der Informatik

Theorie der Informatik Theorie der Informatik 6. Formale Sprachen und Grammatiken Malte Helmert Gabriele Röger Universität Basel 17. März 2014 Einführung Beispiel: Aussagenlogische Formeln Aus dem Logikteil: Definition (Syntax

Mehr

1 MAKROS AUFZEICHNEN. 1.1 Einführung

1 MAKROS AUFZEICHNEN. 1.1 Einführung Makro Aufzeichnen Makro + VBA 2010 effektiv 1 MAKROS AUFZEICHNEN 1.1 Einführung Sie können Excel sehr einfach automatisieren, indem Sie ein Makro aufzeichnen. Ähnlich wie bei einem Kassettenrecorder werden

Mehr

Theoretische Grundlagen des Software Engineering

Theoretische Grundlagen des Software Engineering Theoretische Grundlagen des Software Engineering 7: Einführung Aussagenlogik schulz@eprover.org Logisches Schließen 2 gold +1000, 1 per step, Beispiel: Jage den Wumpus Performance measure death 1000 10

Mehr

Schritte 3. international. Diktat und Nacherzählung

Schritte 3. international. Diktat und Nacherzählung 1 Diktat und Nacherzählung Diktieren Sie erst den Text. Teilen Sie dann die Kopiervorlage an die Teilnehmer/innen aus. Die Teilnehmer/innen erzählen die Geschichte aus Ivankas Sicht nach. Vor einer Woche

Mehr

Dokumentation FileZilla. Servermanager

Dokumentation FileZilla. Servermanager Servermanager Mit dem Servermanager können Sie Ihre Serverzugangsdaten verwalten und so mit nur zwei Klicks zwischen Ihren Accounts wechseln. Um einen neuen Account einzurichten klicken Sie auf Datei >>

Mehr

5. Aussagenlogik und Schaltalgebra

5. Aussagenlogik und Schaltalgebra 5. Aussagenlogik und Schaltalgebra Aussageformen und Aussagenlogik Boolesche Terme und Boolesche Funktionen Boolesche Algebra Schaltalgebra Schaltnetze und Schaltwerke R. Der 1 Aussagen Information oft

Mehr

PIWIN 1 Übung Blatt 5

PIWIN 1 Übung Blatt 5 Fakultät für Informatik Wintersemester 2008 André Gronemeier, LS 2, OH 14 Raum 307, andre.gronemeier@cs.uni-dortmund.de PIWIN 1 Übung Blatt 5 Ausgabedatum: 19.12.2008 Übungen: 12.1.2009-22.1.2009 Abgabe:

Mehr

an Hand eines Beispiels Konsole

an Hand eines Beispiels Konsole Versionskontrolle an Hand eines Beispiels Konsole 1 / 14 PAUL SCHEREMET Inhaltsverzeichnis Einleitung 3 Das Repository anlegen (init) 4 Das erste Modul importieren (import) 5 Module auschecken (checkout

Mehr

Logikprogrammierung. gehalten von Prof Dr. Jürgen Giesl im Sommersemester 2006 an der RWTH Aachen

Logikprogrammierung. gehalten von Prof Dr. Jürgen Giesl im Sommersemester 2006 an der RWTH Aachen Logikprogrammierung gehalten von Prof Dr. Jürgen Giesl im Sommersemester 2006 an der RWTH Aachen eine studentische Mitschrift von Florian Heller florian@heller-web.net Diese Mitschrift erhebt keinen Anspruch

Mehr

DOWNLOAD. Miteinander leben. Ethik 2. Klasse. Arbeitsblätter für einen handlungsorientierten. Winfried Röser. Downloadauszug aus dem Originaltitel:

DOWNLOAD. Miteinander leben. Ethik 2. Klasse. Arbeitsblätter für einen handlungsorientierten. Winfried Röser. Downloadauszug aus dem Originaltitel: DOWNLOAD Winfried Röser Miteinander leben Arbeitsblätter für einen handlungsorientierten Ethikunterricht Winfried Röser Ethik 2. Klasse Bergedorfer Kopiervorlagen Downloadauszug aus dem Originaltitel:

Mehr

Reasoner for the Semantic Web

Reasoner for the Semantic Web Reasoner for the Semantic Web KAON & KAON2 Seminar A.I. Tools Erik Endres 18.1.2007 Übersicht Reasoner KAON1 KAON2 & Protégé Reasoner Ontologien machen Daten für Maschinen verarbeitbar. Reasoner setzen

Mehr

Modellierungsmethoden in der Informatik

Modellierungsmethoden in der Informatik Modellierungsmethoden in der Informatik Probeklausur WS 2007/08 UNIVERSITÄT D U I S B U R G E S S E N Disclaimer Die Aufgaben sind lediglich Beispiele Sie decken nicht den ganzen klausurrelevanten Stoff

Mehr

Klausur für Studiengänge INF und IST

Klausur für Studiengänge INF und IST Familienname: Matrikelnummer: Studiengang: (bitte ankreuzen) INF IST MED Vorname: Email-Adresse: Immatrikulationsjahr: Klausur für Studiengänge INF und IST sowie Leistungsschein für Studiengang Medieninformatik

Mehr

Das Filmlexikon-Wiki. Zitierstil. Das Wiki zur Lehrveranstaltung ist unter dem Link https://wiki.univie.ac.at/display/filex/startseite auffindbar.

Das Filmlexikon-Wiki. Zitierstil. Das Wiki zur Lehrveranstaltung ist unter dem Link https://wiki.univie.ac.at/display/filex/startseite auffindbar. Das Filmlexikon-Wiki Das Wiki zur Lehrveranstaltung ist unter dem Link https://wiki.univie.ac.at/display/filex/startseite auffindbar. Um darin Lesen oder Schreiben zu können ist eine Anmeldung mit ihrem

Mehr

4. 4. Algorithmen und Datenstrukturen in deskriptiven Programmiersprachen

4. 4. Algorithmen und Datenstrukturen in deskriptiven Programmiersprachen Kapitel Kapitel 4 Deskriptive Programmierung SS 2008 4. 4. Algorithmen und Datenstrukturen in in deskriptiven Programmiersprachen Deskriptive Programmierung 1 Sprachverarbeitung in in Prolog Prolog Prolog

Mehr

Programmbeweise mit Z

Programmbeweise mit Z 0/40 Programmbeweise mit Z Andreas Zeller Lehrstuhl Softwaretechnik Universität des Saarlandes, Saarbrücken Das Schema-Kalkül 1/40 Z besteht aus zwei Sprachen: der Sprache der gewöhnlichen Mathematik und

Mehr

Datenverwaltung mit MS Excel INHALTSVERZEICHNIS

Datenverwaltung mit MS Excel INHALTSVERZEICHNIS INHALTSVERZEICHNIS Datenmatrix... 4 Datenmatrix (DB-Bereich) Aufbau:... 4 Erfassung / Bearbeitung / Löschung:... 4 Neu... 4 Löschen:... 4 Wiederherstellen:... 4 Vorherigen suchen / Weitersuchen:... 4 Kriterien:...

Mehr

Constraint Solving & CLP(FD) 15. Dezember 2015

Constraint Solving & CLP(FD) 15. Dezember 2015 Constraint Solving & 15. Dezember 2015 Was bisher geschah Generate-Test Generieren eines Lösungskandidaten Prüfen ob valide Lösung Backtracking für weitere Lösungen Was jetzt geschieht Test-Generate Aufsetzen

Mehr

Prolog Die logische Programmiersprache. Prolog

Prolog Die logische Programmiersprache. Prolog Die logische Programmiersprache Prolog Ausarbeitung von Michael Knötig Für das Programmiersprachen Seminar im SS2004 Bei Prof. Claudia Leopold und Michael Süß Universität Kassel Inhaltsverzeichnis Vorwort...2

Mehr

3.Inferenzsysteme 3.4 Logische Programme und Antwortmengensemantik

3.Inferenzsysteme 3.4 Logische Programme und Antwortmengensemantik Darstellung, Verarbeitung und Erwerb von Wissen 3.Inferenzsysteme 3.4 Logische Programme und Antwortmengensemantik DVEW WS 2004/05 c Gabriele Kern-Isberner 1 Stratifizierte Programme (Whlg.) Sei P ein

Mehr

MySQL Queries on "Nmap Results"

MySQL Queries on Nmap Results MySQL Queries on "Nmap Results" SQL Abfragen auf Nmap Ergebnisse Ivan Bütler 31. August 2009 Wer den Portscanner "NMAP" häufig benutzt weiss, dass die Auswertung von grossen Scans mit vielen C- oder sogar

Mehr

Beispiel. Bsp.: Betrachte Schlussweise in: (3) folgt aus (1) und (2), siehe z.b. Resolutionsregel. was ist mit folgender Schlußweise:

Beispiel. Bsp.: Betrachte Schlussweise in: (3) folgt aus (1) und (2), siehe z.b. Resolutionsregel. was ist mit folgender Schlußweise: Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 5.4 Prädikatenlogik mit Gleichheit Resolution 192 Beispiel Bsp.: Betrachte Schlussweise in: 1 Wenn es regnet, dann wird die Straße nass. R N

Mehr

Technische Praxis der Computersysteme I 3. Vorlesung

Technische Praxis der Computersysteme I 3. Vorlesung Technische Praxis der Computersysteme I 3. Vorlesung Bernhard Lamel Universität Wien, Fakultät für Mathematik WS 2007 Outline 1 Grundlegende Informationen 2 Umgang mit Textdateien 3 Schleifen und Kontrollstrukturen

Mehr

Answer Set Programming

Answer Set Programming Answer Set Programming mit Answer Set Prolog (A-Prolog) Wangler Thomas Logikprogrammierung Institut für Computerlinguistik Universität Heidelberg Inhaltsverzeichnis Inhaltsverzeichnis Inhaltsverzeichnis

Mehr

Übersicht und Dokumentation der Reset- Funktionen der IO CONNECT

Übersicht und Dokumentation der Reset- Funktionen der IO CONNECT Übersicht und Dokumentation der Reset- Funktionen der IO CONNECT Exposee In diesem Dokument erhalten Sie Informationen über die Verwendung der Reset-Funktionen. FORSIS GmbH;Tobias Gläser B.Eng. www.forsis.de

Mehr

Informatik II Bäume. Beispiele. G. Zachmann Clausthal University, Germany zach@in.tu-clausthal.de. Stammbaum. Stammbaum. Stammbaum

Informatik II Bäume. Beispiele. G. Zachmann Clausthal University, Germany zach@in.tu-clausthal.de. Stammbaum. Stammbaum. Stammbaum lausthal Beispiele Stammbaum Informatik II. Zachmann lausthal University, ermany zach@in.tu-clausthal.de. Zachmann Informatik - SS 06 Stammbaum Stammbaum / Parse tree, Rekursionsbaum Parse tree, Rekursionsbaum

Mehr

Einführung in Automation Studio

Einführung in Automation Studio Einführung in Automation Studio Übungsziel: Der links abgebildete Stromlaufplan soll mit einer SPS realisiert werden und mit Automation Studio programmiert werden. Es soll ein Softwareobjekt Logik_1 in

Mehr