1 logische Programmierung Beilage 4 FFHS/Zn. Das folgende Diagramm gibt einen Überblick über die Teile eines Autos: Auto

Größe: px
Ab Seite anzeigen:

Download "1 logische Programmierung Beilage 4 FFHS/Zn. Das folgende Diagramm gibt einen Überblick über die Teile eines Autos: Auto"

Transkript

1 1 Metaprogrammierung Grundlegendes Beispiel: Das folgende Diagramm gibt einen Überblick über die Teile eines Autos: Auto Motor Getriebe Karosserie Vergaser Zylinder Kardanwelle Schaltung Boden Tür Kotflügel Zylinderkopf Schalthebel Türgriff Zylinderkopfdichtung Schalthebelknauf Die direkten Teilbeziehungen werden als Fakten abgelegt: direkt(auto,motor). direkt(auto,getriebe). direkt(auto,karosserie). direkt(motor,vergaser). direkt(motor,zylinder). direkt(getriebe,kardanwelle). direkt(getriebe,schaltung). direkt(karosserie,boden). direkt(karosserie,tuer). direkt(karosserie,kotfluegel). direkt(zylinder,zylinderkopf). direkt(schaltung,schalthebel). direkt(tuer,tuergriff). Die allgemeine Teilbeziehung wird dann als rekursive Klausel programmiert.

2 2 1. Komposition und Dekomposition von Termen, =.. Ein paar Beispiele zur Verwendung des Prädikats =.. in Anfragen:?- direkt(x,y) =.. L.?- direkt(auto,motor) =.. [K R].?- direkt(x,y) =.. [F,auto,_].?- Z =.. [direkt,x,motor].?- V(X,Y) =.. [direkt R].?- S =.. [direkt R].?- teil(a,b) =.. [F R]. 2. Variable als Literale sistered/2: sistered(x,y) ist erfüllt, wenn X und Y verschiedene, direkte Teile desselben Stückes sind. Es gibt mindestens drei Verwandschaftsarten: sistered, direkt und teil. verw_art(direkt). verw_art(teil). verw_art(sistered). Man beachte, dass in den Argumenten Prädikatsnamen stehen. verwandt/3: verwandt(v,x,y) ist erfüllt, wenn V eine Verwandtschaftsart ist, und X und Y in dieser Verwandtschaftsart V zueinander stehen. Anfragebeispiel:?- verwandt(v,motor,x).

3 3 3. Transitiver Abschluss Durch die direkten Teilbeziehungen sind auch die allgemeinen, indirekten Teilbeziehungen bestimmt. Das Bestimmen aller Teilbeziehungen kann durch ein Metaprädikat geschehen: trans_abschluss(praed,x,y):- Lit =.. [Praed,X,Y], call(lit). trans_abschluss(praed,x,y):- Lit =.. [Praed,X,Z], call(lit), trans_abschluss(praed,z,y). Das Prädikat teil1/2 lässt sich mit Hilfe des Metaprädikates trans_abschluss programmieren.

4 4 4 Dynamische Bearbeitung der Wissensbasis asserta/1 assertz/1 retract/1 retractall/1 abolish/1 abolish/2 asserta(ist_enkel(auto,schaltung)). Das Argument (es muss eine gültige Prolog-Klausel sein) wird an vorderster Stelle in die Wissensbasis eingefügt. Es ist zu beachten, dass das Prädikat ist_enkel/2 noch nicht statisch definiert sein darf (in einer Datei), sonst ergibt sich die Fehlermeldung, dass versucht wurde, ein statisches Prädikat neu zu definieren. 1 Wie asserta, aber die Klausel wird am Ende der Wissensbasis angefügt. retract(ist_enkel(x,y)). Entfernt die erste dynamische Klausel aus der Wissensbasis, die mit dem Argument von,retract unifizierbar ist. Das ist hier nur ist_enkel(auto,schaltung). Gleiche Bedeutung wie retract/1, aber es werden alle dynamischen Klauseln aus der Wissensbasis entfernt, die mit dem Argument unifizierbar sind. abolish(direkt/2). Entfernt das zweistellige Prädikat hat_kind aus der Wissensbasis, auch wenn es statisch definiert wurde. 2 abolish(direkt,2). Gleiche Wirkung wie abolish/1, aber die Syntax ist modifiziert. 1 Dies entspricht dem Standard. Ein in einer Programmdatei definiertes, statisches Prädikat (Klausel) kann mit der Direktive :- dynamic ist_enkel/2.im Quellcode dynamisch erklärt werden, sodass asserta und assertz zum Erfolg führen. Eine weitere Möglichkeit ist es, während der Laufzeit, das Prädikt dynamic(ist_enkel/2). zu verwenden. 2 Dies entspricht nicht dem Standard, sondern erweitert ihn. Im Standard können mit abolish nur dynamische Prädikate oder Klauseln gelöscht werden. Durch Setzen eines Prolog-Flags kann in SWI- Prolog der Standard betreffend abolish erzwungen werden.

5 5 Praktischer Teil: 1 Komposition, Dekomposition Welche Resultate liefern die Anfragen: a) (4 + a) =.. L. b) (X \= Y)=..L. c) S =.. [datum,5,5,2001]. Vorgehen : Zuerst nachdenken, dann aufschreiben, dann erst am System überprüfen und allfällige Abweichungen erklären. 2 Verwandtschaftsart Definieren Sie die Verwandtschaftsart ist_enkel/2, und wenden Sie sie mit dem Prädikat verwandt/3 an. 3 Transitiver Abschluss Bilden Sie den transitiven Abschluss der Beziehung ist_enkel, indem Sie eine geeignete Anfrage stellen, die das Prädikat trans_abschluss verwendet. 4 Dynamische Wissensbasis Fügen Sie dynamisch einige Regeln oder Fakten zur Autowissensbasis hinzu, wenden Sie diese in Anfragen an, und löschen Sie diese dynamisch wieder. Am Schluss löschen Sie die gesamte Wissensbasis, also auch die statisch definierten Bestandteile.

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

Fragen zum Nachdenken: Wie könnte man das Fehlen eines Attribut-Wertes interpretieren?

Fragen zum Nachdenken: Wie könnte man das Fehlen eines Attribut-Wertes interpretieren? Attribut-Werte-Paare Eine Eigenschaft kann beschrieben werden durch ein Paar [a,w]. Dabei bezeichnet a das Attribut und w den konkreten Wert aus dem Wertebereich W a des Attributs. Die Eigenschaften eines

Mehr

Gliederung. Programmierparadigmen. Einführung in Prolog: Einführung in Prolog: Programmieren in Prolog. Einführung Syntax Regeln Listen Relationen

Gliederung. Programmierparadigmen. Einführung in Prolog: Einführung in Prolog: Programmieren in Prolog. Einführung Syntax Regeln Listen Relationen Gliederung Programmierparadigmen Programmieren in Prolog D. Rösner Institut für Wissens- und Sprachverarbeitung Fakultät für Informatik Otto-von-Guericke Universität Magdeburg 1 Sommer 2011, 26. April

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

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

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

Dynamische Datenbasis mit SWI-Prolog

Dynamische Datenbasis mit SWI-Prolog FH Schmalkalden Dokumentation FH Schmalkalden Fachbereich Informatik Markus Neviadomski Matrikel-Nr: 200259 +49 3683 4091 936 mn@ein-kunde.de Dynamische Datenbasis mit SWI-Prolog 2 Softwaredokumentation

Mehr

Programmierkurs Prolog, SS 1998

Programmierkurs Prolog, SS 1998 Programmierkurs Prolog SS 1998 Universität Dortmund LS VIII - Prof. K. Morik Inhalt Vergleiche von Termen Typtests auf Termen Zugriff auf den Termaufbau Zugriff auf Fakten und Regeln All-Solutions Prädikate

Mehr

Normalformen der Prädikatenlogik

Normalformen 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) Ÿ ÿ

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

Praktikum zu Einführung in die Informatik für LogWiIngs und WiMas Wintersemester 2015/16. Vorbereitende Aufgaben

Praktikum zu Einführung in die Informatik für LogWiIngs und WiMas Wintersemester 2015/16. Vorbereitende Aufgaben Praktikum zu Einführung in die Informatik für LogWiIngs und WiMas Wintersemester 2015/16 Fakultät für Informatik Lehrstuhl 14 Lars Hildebrand, Marcel Preuß, Iman Kamehkhosh, Marc Bury, Diana Howey Übungsblatt

Mehr

Diskrete Strukturen Kapitel 2: Grundlagen (Beweise)

Diskrete Strukturen Kapitel 2: Grundlagen (Beweise) WS 2014/15 Diskrete Strukturen Kapitel 2: Grundlagen (Beweise) Hans-Joachim Bungartz Lehrstuhl für wissenschaftliches Rechnen Fakultät für Informatik Technische Universität München http://www5.in.tum.de/wiki/index.php/diskrete_strukturen_-_winter_14

Mehr

Auswahl von Klauseln und Atomen in Prolog

Auswahl von Klauseln und Atomen in Prolog 5.6 Prolog... ist die bekannteste Implementierung einer LP-Sprache; wurde Anfang der 1970er von Alain Colmerauer (Marseille) und Robert Kowalski (Edinburgh) entwickelt. konkretisiert den vorgestellten

Mehr

Programmierkurs Prolog, SS 1998

Programmierkurs Prolog, SS 1998 Programmierkurs Prolog SS 1998 Universitaet Dortmund LS VIII - Prof. K. Morik Compiler Kommandos Compiler-Modes Mode-Deklarationen Debugger Erweitertes Box-Modell Tracing Interaktive Kommandos Compiler/Debugger

Mehr

Logik-Programme. Eine Tatsachenklausel ist eine einelementige positive Klausel, d.h. sie hat

Logik-Programme. Eine Tatsachenklausel ist eine einelementige positive Klausel, d.h. sie hat Logik-Programme Definition: Eine Tatsachenklausel ist eine einelementige positive Klausel, d.h. sie hat die Form {P }. Eine Prozedurklausel ist eine Klausel der Form {P, Q 1, Q 2,..., Q k } mit k 1. P

Mehr

SS2010 BAI2-LBP Gruppe 1 Team 07 Entwurf zu Aufgabe 4. R. C. Ladiges, D. Fast 10. Juni 2010

SS2010 BAI2-LBP Gruppe 1 Team 07 Entwurf zu Aufgabe 4. R. C. Ladiges, D. Fast 10. Juni 2010 SS2010 BAI2-LBP Gruppe 1 Team 07 Entwurf zu Aufgabe 4 R. C. Ladiges, D. Fast 10. Juni 2010 Inhaltsverzeichnis 4 Aufgabe 4 3 4.1 Sich mit dem Programmpaket vertraut machen.................... 3 4.1.1 Aufgabenstellung.................................

Mehr

Listen. bersicht. Zweck. Listen allgemein Listen in Prolog. Programmiertechniken mit Listen. Erstellen von Prolog-Programmen mit Listen

Listen. bersicht. Zweck. Listen allgemein Listen in Prolog. Programmiertechniken mit Listen. Erstellen von Prolog-Programmen mit Listen Listen bersicht Listen allgemein Listen in Prolog Schreibweise Listen als rekursive Datenstruktur Unifikation Programmiertechniken mit Listen Zweck rekursive Suche Abbilden Erstellen von Prolog-Programmen

Mehr

Präsentation Interfaces

Präsentation Interfaces Einführung in Java Präsentation Interfaces Nozar Delassaei Marvi Inhalt 1. Erinnerung Klasse Objekte Beispiel Klasse Abstrakte Klasse Beispiel Abstrakte Klasse Mehrfachvererbung-1 Mehrfachvererbung-2 2.

Mehr

Fakten, Regeln und Anfragen

Fakten, Regeln und Anfragen Fakten, Regeln und Anfragen Prolog Grundkurs WS 99/00 Christof Rumpf rumpf@uni-duesseldorf.de 18.10.99 GK Prolog - Fakten, Regeln und Anfragen 1 Programmieren = Problemlösen Prolog ist eine deklarative

Mehr

Einführung in das Programmieren Prolog Sommersemester 2006. Teil 2: Arithmetik. Version 1.0

Einführung in das Programmieren Prolog Sommersemester 2006. Teil 2: Arithmetik. Version 1.0 Einführung in das Programmieren Prolog Sommersemester 2006 Teil 2: Arithmetik Version 1.0 Gliederung der LV Teil 1: Ein motivierendes Beispiel Teil 2: Einführung und Grundkonzepte Syntax, Regeln, Unifikation,

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

Version 1.0, Setup-Anleitung für LeViteZer Anti-Roll- Front-Aufhängung

Version 1.0, Setup-Anleitung für LeViteZer Anti-Roll- Front-Aufhängung Version 1.0, 2.8.2013 Setup-Anleitung für LeViteZer Anti-Roll- Front-Aufhängung 1 Einführung LeViteZer Anti-Roll-Front-Aufhängung MR03LVZ001 ist ein magnetisches Anti-Roll-und Federungssystem für Mini

Mehr

Logik-Grundlagen. Syntax der Prädikatenlogik

Logik-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:

Mehr

PROLOG. Tutorium zur Vorlesung Datenbanken und Wissensrepräsentation (Prof. Dr. G. Büchel)

PROLOG. Tutorium zur Vorlesung Datenbanken und Wissensrepräsentation (Prof. Dr. G. Büchel) PROLOG Tutorium zur Vorlesung Datenbanken und Wissensrepräsentation (Prof. Dr. G. Büchel) Stand: April 2010 Verfasser: Dipl.-Ing. (FH) Andreas W. Lockermann Vorwort Der Name PROLOG leitet sich aus den

Mehr

Eine kleine Makefile Einführung

Eine kleine Makefile Einführung Eine kleine Makefile Einführung Was ist ein Makefile? Ein Makefile ist eine Art Steuerungsdatei für das Programm make. Dabei handelt es sich um eine Textdatei, die in menschenlesbarer Form Regeln enthält,

Mehr

Übersicht Listen werden geführt für Listen Die wichtigste nicht-nummerische Datenstruktur Beliebige Länge Strikte Reihenfolge Wunschliste für Listen

Übersicht Listen werden geführt für Listen Die wichtigste nicht-nummerische Datenstruktur Beliebige Länge Strikte Reihenfolge Wunschliste für Listen n Einkaufslisten und Wortlisten Übersicht n Die wichtigste nicht-nummerische Datenstruktur beliebige Länge und fixe Reihenfolge n vs. n-stellige Terme Spezialnotation Klammerschreibweise nrest-strich n-unifikation

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

Basiskonzepte des Rechnerbetriebs

Basiskonzepte des Rechnerbetriebs Universität Potsdam Institut für Informatik Wintersemester 2012 2013 Basiskonzepte des Rechnerbetriebs Aufgabenblatt 2 2 Das UNIX-Dateisystem Arbeiten Sie, wenn nicht anders vermerkt, immer auf der Kommandozeile!

Mehr

Amortisierte Analysen

Amortisierte Analysen Amortisierte Analysen 26. Mai 2016 1 Einleitung Es gibt viele Datenstrukturen, bei deren Komplexitätsanalyse das Problem auftaucht, dass die Ausführung mancher Operationen Einfluss auf die Komplexität

Mehr

Frilo.Document.Designer

Frilo.Document.Designer Erstellt am 19. Februar 2011 Letzte Änderung am 10. Juni 2011 Version 4.2011.1.2 Seite 1 von 8 Inhalt 1 Erste Schritte...4 1.1 Arbeiten in der Verwaltung FCC und Erstellen eines Dokumentes...4 1.2 Erstellen

Mehr

Installation von Inventor 11 samt ADMS unter Vista Ultimate 64-Bit

Installation von Inventor 11 samt ADMS unter Vista Ultimate 64-Bit Installation von Inventor 11 samt ADMS unter Vista Ultimate 64-Bit Version: 1.0 Datum: 07.02.2007 Erstellt: M. Epple 1. Einrichten des Installationsverzeichnis und Systemprüfungen Zuerst den kompletten

Mehr

STATA II: Daten- und Analysevorbereitung (Teil 1)

STATA II: Daten- und Analysevorbereitung (Teil 1) STATA II: Daten- und Analysevorbereitung (Teil 1) 10. November 2003 Wiederholung I K:\mo14-16 Aufgaben: 1. Stellen Sie den aktuell gültigen Pfad \data fest und wechseln Sie in das \project1 Verzeichnis

Mehr

Kurzanleitung Umschlüsselungstool

Kurzanleitung Umschlüsselungstool Eidgenössisches Departement für Verteidigung, Bevölkerungsschutz und Sport VBS Schweizer Armee Führungsunterstützungsbasis FUB Bern, 31. Oktober 2014 Kurzanleitung Umschlüsselungstool 1 Wann braucht es

Mehr

Dynamic Art. Benutzerhandbuch

Dynamic Art. Benutzerhandbuch Dynamic Art Benutzerhandbuch Dynamic Art Inhalt 1. Über das Dynamic Art-Plugin...3 2. Warum Dynamic Art verwenden?...4 3. Die Dynamic Art-Palette...5 4. Dynamic Art auf der Leinwand...6 5. Arbeiten mit

Mehr

Lösungen der Übungsaufgaben von Kapitel 4

Lösungen der Übungsaufgaben von Kapitel 4 Lösungen der Übungsaufgaben von Kapitel 4 1. Machen Sie einen Entwurf für die Oberfläche einer Applikation, mit der Sie Ihr Adressbuch verwalten wollen. Wenn Sie können, entwerfen und realisieren Sie sogar

Mehr

Stellenanzeigen anlegen und bearbeiten

Stellenanzeigen anlegen und bearbeiten Stellenanzeigen anlegen und bearbeiten Dieses Dokument beschreibt, wie Sie Stellenanzeigen anlegen und bearbeiten können. Login Melden Sie sich an der jeweiligen Website an, in dem Sie hinter die Internet-

Mehr

Mathematische Grundlagen der Computerlinguistik

Mathematische Grundlagen der Computerlinguistik Centrum für Informations- und Sprachverarbeitung (CIS) 2. Juni 2014 Table of Contents 1 2 Ähnlich wie Funktionen besitzen Relationen charakteristische Eigenschaften. Diese Eigenschaften definieren wie

Mehr

Wie beweise ich etwas? 9. Juli 2012

Wie beweise ich etwas? 9. Juli 2012 Schülerzirkel Mathematik Fakultät für Mathematik. Universität Regensburg Wie beweise ich etwas? 9. Juli 2012 1 Was ist ein Beweis? 1.1 Ein Beispiel Nimm einen Stift und ein Blatt Papier und zeichne fünf

Mehr

POP3 Konto auf IMAP Konto migrieren

POP3 Konto auf IMAP Konto migrieren POP3 Konto auf IMAP Konto migrieren Folgend wird beschrieben, wie Sie das bestehende POP3 Konto in Ihrem Mailprogramm in ein IMAP Konto migrieren. Mac Mail 1. Fügen Sie das IMAP Konto mit folgender Anleitung

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

Variablen & erweiterte Aktionen nutzen

Variablen & erweiterte Aktionen nutzen 341 In Captivate können Sie mit Hilfe von Variablen Texte & Werte speichern oder Systeminformationen ausgeben. Außerdem können Sie auf Basis von Variablen komplexere Aktionen entwickeln, wie z. B. eine

Mehr

Klassische Aussagenlogik

Klassische Aussagenlogik Eine Einführung in die Logik Schon seit Jahrhunderten beschäftigen sich Menschen mit Logik. Die alten Griechen und nach ihnen mittelalterliche Gelehrte versuchten, Listen mit Regeln zu entwickeln, welche

Mehr

Haskell, Typen, und Typberechnung. Grundlagen der Programmierung 3 A. Einige andere Programmiersprachen. Typisierung in Haskell

Haskell, Typen, und Typberechnung. Grundlagen der Programmierung 3 A. Einige andere Programmiersprachen. Typisierung in Haskell Haskell, Typen, und Typberechnung Grundlagen der Programmierung 3 A Typen, Typberechnung und Typcheck Prof. Dr. Manfred Schmidt-Schauß Ziele: Haskells Typisierung Typisierungs-Regeln Typ-Berechnung Milners

Mehr

Excel 2010 Werte aus einer Liste wählen

Excel 2010 Werte aus einer Liste wählen EX.014, Version 1.1 22.09.2016 Kurzanleitung Excel 2010 Werte aus einer Liste wählen Häufig werden in Excel-Listen Daten verwendet, die immer wieder vorkommen, wie zum Beispiel Namen von Mitarbeitenden

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

Qualitätsorientierter System Entwurf

Qualitätsorientierter System Entwurf Prof. Dr. Görschwin Fey, fey@informatik.uni-bremen.de, MZH 3070 Jan Malburg M. Sc., malburg@informatik.uni-bremen.de, MZH 3050 Programmieraufgaben Qualitätsorientierter System Entwurf Die Zulassung zum

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

Vorlesung. Funktionen/Abbildungen

Vorlesung. Funktionen/Abbildungen Vorlesung Funktionen/Abbildungen 1 Grundlagen Hinweis: In dieser Vorlesung werden Funktionen und Abbildungen synonym verwendet. In der Schule wird eine Funktion häufig als eindeutige Zuordnung definiert.

Mehr

8. Logische Programmierung. Prolog Sprachkonstrukte: Fakten. Prolog Übersicht

8. 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).

Mehr

Vollständige Induktion

Vollständige Induktion Schweizer Mathematik-Olympiade smo osm Vollständige Induktion Aktualisiert: 1 Dezember 01 vers 100 Eine der wichtigsten Beweistechniken der Mathematik überhaupt ist die (vollständige) Induktion Wir nehmen

Mehr

Wissensbasierte Systeme

Wissensbasierte Systeme FH Wedel Prof. Dr. Sebastian Iwanowski WBS6 Folie 1 Wissensbasierte Systeme Sebastian Iwanowski FH Wedel Kap. 6: Wissensbasierte Diagnosemethoden im Vergleich FH Wedel Prof. Dr. Sebastian Iwanowski WBS6

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

Modul Entscheidungsunterstützung in der Logistik. Einführung in die Programmierung mit C++ Übung 1

Modul Entscheidungsunterstützung in der Logistik. Einführung in die Programmierung mit C++ Übung 1 Fakultät Verkehrswissenschaften Friedrich List, Professur für Verkehrsbetriebslehre und Logistik Modul Entscheidungsunterstützung in der Logistik Einführung in die Programmierung mit C++ Übung 1 SS 2016

Mehr

D1: Relationale Datenstrukturen (14)

D1: Relationale Datenstrukturen (14) D1: Relationale Datenstrukturen (14) Die Schüler entwickeln ein Verständnis dafür, dass zum Verwalten größerer Datenmengen die bisherigen Werkzeuge nicht ausreichen. Dabei erlernen sie die Grundbegriffe

Mehr

Strukturelle Rekursion und Induktion

Strukturelle Rekursion und Induktion Kapitel 2 Strukturelle Rekursion und Induktion Rekursion ist eine konstruktive Technik für die Beschreibung unendlicher Mengen (und damit insbesondere für die Beschreibung unendliche Funktionen). Induktion

Mehr

E-TIME ADVANCED Dokumentation zum Vorgehen bei der elektronischen Zeiterfassung. Geben Sie folgende Internetadresse ein: https://www.kellyweb.

E-TIME ADVANCED Dokumentation zum Vorgehen bei der elektronischen Zeiterfassung. Geben Sie folgende Internetadresse ein: https://www.kellyweb. E-TIME ADVANCED Dokumentation zum Vorgehen bei der elektronischen Zeiterfassung Geben Sie folgende Internetadresse ein: https://www.kellyweb.de Anmeldung und Stundeneingabe 1. Bitte geben Sie Ihre Userdaten

Mehr

Wie kommt die Kraft des Motors auf die Straße? Nicola Stein

Wie kommt die Kraft des Motors auf die Straße? Nicola Stein Wie kommt die Kraft des Motors auf die Straße? Kraftübertragung - Reifen - Räder - Antriebswellen Nicola Stein Technikreferat, Kl. 10b / 2013 Erich Kästner Gemeinschaftsschule Barsbüttel Technikreferat

Mehr

Einführung in PROLOG III Rekursion

Einführung in PROLOG III Rekursion Einführung in PROLOG III Rekursion Betrachten wir die folgende Knowledge Base: teurer(x,y):- kostet_etwas_mehr(x,y). teurer(x,y):- kostet_etwas_mehr(x,z), teurer(z,y). kostet_etwas_mehr(big_mac,pommes).

Mehr

TU5 Aussagenlogik II

TU5 Aussagenlogik II TU5 Aussagenlogik II Daniela Andrade daniela.andrade@tum.de 21.11.2016 1 / 21 Kleine Anmerkung Meine Folien basieren auf den DS Trainer von Carlos Camino, den ihr auf www.carlos-camino.de/ds findet ;)

Mehr

1. Erläutern Sie die Aufgaben von Datentypen in der imperativen Programmierung.

1. Erläutern Sie die Aufgaben von Datentypen in der imperativen Programmierung. 1. Erläutern Sie die Aufgaben von Datentypen in der imperativen Programmierung. Beschreiben Sie ferner je einen frei gewählten Datentyp aus der Gruppe der skalaren und einen aus der Gruppe der strukturierten

Mehr

Name Vorname Schuljahr 2005/2006 Datum der Durchführung Donnerstag, ORIENTIERUNGSARBEIT

Name Vorname Schuljahr 2005/2006 Datum der Durchführung Donnerstag, ORIENTIERUNGSARBEIT Sekundarschule 4. Klasse Niveau P Name Vorname Schuljahr 2005006 Datum der Durchführung Donnerstag, 17.11.05 ORIENTIERUNGSARBEIT Sekundarschule Mathematik Niveau P (M6) Lies zuerst Anleitung und Hinweise

Mehr

Prolog-Strukturen. bersicht. Woraus besteht ein Prolog-Programm? EinfŸhren wichtiger Begriffe Verschiedene Arten von Termen Unifikation

Prolog-Strukturen. bersicht. Woraus besteht ein Prolog-Programm? EinfŸhren wichtiger Begriffe Verschiedene Arten von Termen Unifikation Prolog-Strukturen bersicht Woraus besteht ein Prolog-Programm? Fakten, Regeln und Anfragen Kommentare EinfŸhren wichtiger Begriffe Verschiedene Arten von Termen Unifikation Was ist Unifikation? Unifikation

Mehr

LISTEN. Programmierkurs Prolog p.1

LISTEN. Programmierkurs Prolog p.1 LISTEN Programmierkurs Prolog p.1 Liste Listen sind rekursive Datenstrukturen, die dazu dienen geordnete Mengen von Elementen zu beschreiben. Man kann sich Listen in Prolog als Behälter vorstellen, die

Mehr

Übung 9. Quellcode Strukturieren Rekursive Datenstrukturen Uebung 9

Übung 9. Quellcode Strukturieren Rekursive Datenstrukturen Uebung 9 Informatik I 2 Übung 9 Quellcode Strukturieren Rekursive Datenstrukturen Uebung 9 Quellcode Strukturieren Wenn alle Funktionen in einer Datei zusammengefasst sind wird es schnell unübersichtlich Mehrere

Mehr

Eigene Seiten erstellen

Eigene Seiten erstellen PhPepperShop Anleitung Datum: 3. Oktober 2013 Version: 2.1 Eigene Seiten erstellen Eigene Inhalte / CMS Glarotech GmbH Inhaltsverzeichnis Anleitung zur Erstellung von eigenen Inhalten/Links...3 1. Anmeldung

Mehr

Bisher. minimale DNF. logischen Formeln Booleschen Funktionen Schaltungen

Bisher. minimale DNF. logischen Formeln Booleschen Funktionen Schaltungen Bisher Klassische Aussagenlogik (Syntax, Semantik) semantische Äquivalenz von Formeln äquivalentes Umformen von Formeln (syntaktisch) Normalformen: NNF, DNF, CNF, kanonische DNF und CNF Ablesen kanonischer

Mehr

Verbessern Sie Ihre Webinare

Verbessern Sie Ihre Webinare Verbessern Sie Ihre Webinare Auswertung von Informationen über Ihre Teilnehmer auf edudip zur Verbesserung Ihrer Webinare Dies ist die downloadbare CSV Datei, nur für edudip. Pro Mitglieder verfügbar Heutzutage

Mehr

Beschreibung Diese Anleitung erklärt, wie Selektionsvarianten von Berichten im SAP

Beschreibung Diese Anleitung erklärt, wie Selektionsvarianten von Berichten im SAP Beschreibung Diese Anleitung erklärt, wie Selektionsvarianten von Berichten im SAP dokumentiert werden. Neu angelegte Selektionsvarianten sollten sofort dokumentiert werden; die Dokumentierung sollte aber

Mehr

Dieser Foliensatz darf frei verwendet werden unter der Bedingung, dass diese Titelfolie nicht entfernt wird.

Dieser 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,

Mehr

Konzepte der Programmiersprachen

Konzepte der Programmiersprachen Konzepte der Programmiersprachen Lehrstuhl Prof. Plödereder Eduard Wiebe Institut für Softwaretechnologie Abteilung Programmiersprachen und Übersetzerbau Sommersemester 2007 Programm-Ausführung Programmiersprachen

Mehr

UML-Basics: Einführung in Objekt- Orientierte Modellierung mit der Unified Modeling Language

UML-Basics: Einführung in Objekt- Orientierte Modellierung mit der Unified Modeling Language UML-Basics: Einführung in Objekt- Orientierte Modellierung mit der Unified Modeling Language ADV-Seminar Leiter: Ziel dieses Seminars Verständnis von Objekt-Orientierung Was sind Klassen? Was ist Vererbung?

Mehr

Leitfaden zur Einrichtung za-mail mit IMAP auf dem iphone

Leitfaden zur Einrichtung za-mail mit IMAP auf dem iphone Dieser Leitfaden zeigt die einzelnen Schritte der Konfiguration des iphones für die Abfrage von Emails bei der za-internet GmbH. Grundsätzlich gelten diese Schritte auch für andere Geräte, wie dem ipod

Mehr

Einiges zu Resolutionen anhand der Aufgaben 6 und 7

Einiges zu Resolutionen anhand der Aufgaben 6 und 7 Einiges zu Resolutionen anhand der Aufgaben 6 und 7 Es gibt eine Fülle von verschiedenen Resolutionen. Die bis jetzt behandelten möchte ich hier noch ein Mal kurz erläutern. Ferner möchte ich noch auf

Mehr

Teil 2: Einführung und Grundkonzepte

Teil 2: Einführung und Grundkonzepte Einführung in das Programmieren Prolog Sommersemester 2006 Teil 2: Einführung und Grundkonzepte Version 1.0 Gliederung der LV Teil 1: Ein motivierendes Beispiel Teil 2: Einführung und Grundkonzepte Syntax,

Mehr

Datenbanken Unit 4: Das Relationale Modell & Datenintegrität

Datenbanken Unit 4: Das Relationale Modell & Datenintegrität Datenbanken Unit 4: Das Relationale Modell & Datenintegrität 15. III. 2016 Outline 1 Organisatorisches 2 SQL 3 Relationale Algebra Notation 4 Datenintegrität Organisatorisches Erster Zwischentest: nach

Mehr

CARM-Server. Users Guide. Version 4.65. APIS Informationstechnologien GmbH

CARM-Server. Users Guide. Version 4.65. APIS Informationstechnologien GmbH CARM-Server Version 4.65 Users Guide APIS Informationstechnologien GmbH Einleitung... 1 Zugriff mit APIS IQ-Software... 1 Zugang konfigurieren... 1 Das CARM-Server-Menü... 1 Administration... 1 Remote-Konfiguration...

Mehr

Outlook 2000 Thema - Archivierung

Outlook 2000 Thema - Archivierung interne Schulungsunterlagen Outlook 2000 Thema - Inhaltsverzeichnis 1. Allgemein... 3 2. Grundeinstellungen für die Auto in Outlook... 3 3. Auto für die Postfach-Ordner einstellen... 4 4. Manuelles Archivieren

Mehr

CamDisc svr 4s, CamDisc svr 10s, CamServer 2: http://www.heitel.com/de/service/upgrades/firmware/camdisc-svr-s-camserver-2/

CamDisc svr 4s, CamDisc svr 10s, CamServer 2: http://www.heitel.com/de/service/upgrades/firmware/camdisc-svr-s-camserver-2/ Technische Produktinformation Nr. 07.01 zu Produkt/Version, CamDisc svr 4s, CamDisc svr 10s, CamDisc svr 4, CamDisc svr 10, CamTel svr 4, CamTel svr 10, CamMobile 4, CamMobile 10 Datum Mai 2007 Thema Firmware-Update

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

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

Foreign Keys. MySQL 4, 5. Kapitel 16: Fremdschlüssel. Marcel Noe

Foreign Keys. MySQL 4, 5. Kapitel 16: Fremdschlüssel. Marcel Noe MySQL 4, 5 Kapitel 16: Fremdschlüssel Gliederung 1 Gliederung 1 Fremdschlüssel sichern die Referenzielle Integrität voneinander abhängiger Tabellen. Um Fremdschlüssel definieren zu können, müssen Sie die

Mehr

Fahr n, fahr n, fahr n auf der Autobahn

Fahr n, fahr n, fahr n auf der Autobahn 32 Experimentieren mit Musik THEMA Tempo, Tempo Fahr n, fahr n, fahr n auf der Autobahn Eine kleine Unterrichtseinheit von ca. drei Stunden, in der ein Auto verklanglicht und verschiedene Tempi ausprobiert

Mehr

Wie erreiche ich was?

Wie erreiche ich was? Wie erreiche ich was? Projekt: Bezeichnung: CRM Customer Relationship Management Hauptmenü - Newsletter Version: 4.11. Datum: 23. Juli 2014 Kurzbeschreibung: Mit diesem Leitfaden erhalten Sie eine Anleitung

Mehr

Algorithmen & Datenstrukturen Lösungen zu Blatt 9 HS 16

Algorithmen & Datenstrukturen Lösungen zu Blatt 9 HS 16 Eidgenössische Technische Hochschule Zürich Ecole polytechnique fédérale de Zurich Politecnico federale di Zurigo Federal Institute of Technology at Zurich Departement Informatik 24. November 2016 Markus

Mehr

zu große Programme (Bildschirmseite!) zerlegen in (weitgehend) unabhängige Einheiten: Unterprogramme

zu große Programme (Bildschirmseite!) zerlegen in (weitgehend) unabhängige Einheiten: Unterprogramme Bisher Datentypen: einfach Zahlen, Wahrheitswerte, Zeichenketten zusammengesetzt Arrays (Felder) zur Verwaltung mehrerer zusammengehörender Daten desselben Datentypes eindimensional, mehrdimensional, Array-Grenzen

Mehr

Playlist Editor 2. Kurzanleitung

Playlist Editor 2. Kurzanleitung Playlist Editor 2 1 Inhaltsverzeichnis 1. HINWEIS ZUM URHEBERRECHT 3 1.1. VORSICHT BEIM ÜBERTRAGEN VON MP3 DATEIEN 3 2. PLAYLIST EDITOR 2 - ÜBERTRAGEN VON DATEIEN 4 2.1. NOTWENDIGE AUSRÜSTUNG 4 2.2. ERSTELLEN

Mehr

Algorithmen für OBDD s. 1. Reduziere 2. Boole sche Operationen

Algorithmen für OBDD s. 1. Reduziere 2. Boole sche Operationen Algorithmen für OBDD s 1. Reduziere 2. Boole sche Operationen 1 1. Reduziere siehe auch M.Huth und M.Ryan: Logic in Computer Science - Modelling and Reasoning about Systems, Cambridge Univ.Press, 2000

Mehr

Xesar. Die vielfältige Sicherheitslösung

Xesar. Die vielfältige Sicherheitslösung Xesar Die vielfältige Sicherheitslösung Xesar Die professionelle Lösung Alles über Xesar ganz einfach erklärt. für Ihr Unternehmen Xesar Sicher und flexibel Xesar ist das vielseitige elektronische Schließsystem

Mehr

Anleitung OpenCms 9. Das Organigramm

Anleitung OpenCms 9. Das Organigramm Anleitung OpenCms 9 Das Organigramm Inhalt 1. Funktionserklärung des in OpenCms integrierten Organigramms anhand der Organisationsstruktur des Erzbistums Köln...3 2. Einbinden eines Organigramms in Ihre

Mehr

Anmelden Geben Sie Ihre Zugangsdaten ein. Die Zugangsdaten erhalten Sie vom Webmaster, wenn Sie den Autorenvertrag unterschrieben haben.

Anmelden Geben Sie Ihre Zugangsdaten ein. Die Zugangsdaten erhalten Sie vom Webmaster, wenn Sie den Autorenvertrag unterschrieben haben. Anleitung zur Bearbeitung der Immenröder Homepage Begriffe Unter einem Beitrag versteht man einen Block Information, so wie er auf der Startseite der Homepage zu sehen ist. Der Beitrag wird als Vorschau

Mehr

Prof. Dr. sc. Hans-Dieter Burkhard Vorlesung Winter-Semester 2003/04. Wissensrepräsentation: Resolution (im PK1)

Prof. Dr. sc. Hans-Dieter Burkhard Vorlesung Winter-Semester 2003/04. Wissensrepräsentation: Resolution (im PK1) Einführung in die KI Prof. Dr. sc. Hans-Dieter Burkhard Vorlesung Wissensrepräsentation: Resolution (im PK1) 2. Resolution Vorbild für Formalismus : exakt, präzise, (theoretisch) beherrscht Aufbau: Zeichen

Mehr

Untersuchen Sie, inwiefern sich die folgenden Funktionen für die Verwendung als Hashfunktion eignen. Begründen Sie Ihre Antwort.

Untersuchen Sie, inwiefern sich die folgenden Funktionen für die Verwendung als Hashfunktion eignen. Begründen Sie Ihre Antwort. Prof. aa Dr. Ir. Joost-Pieter Katoen Christian Dehnert, Friedrich Gretz, Benjamin Kaminski, Thomas Ströder Tutoraufgabe 1 (Güte von Hashfunktionen): Untersuchen Sie, inwiefern sich die folgenden Funktionen

Mehr

Technische Oberschule Stuttgart

Technische Oberschule Stuttgart Aufnahmeprüfung Physik 2010 Seite 1 von 9 Zu bearbeiten sind 4 der 6 Aufgaben innerhalb von 60 Minuten. Aufgabe 1 (Mechanik): Ein Bauer pflügt seinen Acker, dabei braucht der Traktor für eine Strecke von

Mehr

Einführung in PROLOG IV Listen

Einführung in PROLOG IV Listen Einführung in PROLOG IV Listen Beispiele für Listen in PROLOG: 1. [mia, vincent, jules, yolanda] 2. [mia, robber(honey_bunny), X, 2, mia] 3. [] 4. [mia, [vincent, jules], [butch, girlfriend(butch)]] 5.

Mehr

Übungen zu Logik und Künstliche Intelligenz Blatt 8

Übungen zu Logik und Künstliche Intelligenz Blatt 8 Heilbronn, den 14.5.2010 Prof. Dr. V. Stahl WS 10/11 Übungen zu Logik und Künstliche Intelligenz Blatt 8 Aufgabe 1. Überlegen Sie, wie man folgende Relationen R grafisch darstellen könnte und entscheiden

Mehr

Effiziente Algorithmen

Effiziente Algorithmen Effiziente Algorithmen Aufgabe 5 Gruppe E Martin Schliefnig, 0160919 Christoph Holper, 9927191 Ulrike Ritzinger, 0125779 1. Problemstellung Gegeben ist eine Datei, die eine Million reelle Zahlen enthält.

Mehr

Testskripten Beispiele für System- und Akzeptanztests

Testskripten Beispiele für System- und Akzeptanztests Testskripten Beispiele für System- und Akzeptanztests Dokument-Information Dokument-ID: BA-TSKR Version: 1.0, gültig ab: 01.05.2010 Ersetzt Version: Autor(en): Isabelle Neuburg Geltungsbereich: Entwicklung

Mehr

1 Systemvoraussetzungen (minimal)

1 Systemvoraussetzungen (minimal) Metrohm AG CH-9101 Herisau Switzerland Phone +41 71 353 85 85 Fax +41 71 353 89 01 info@metrohm.com www.metrohm.com Installation 1 Systemvoraussetzungen (minimal) Betriebssystem RAM Speicherplatz Schnittstelle

Mehr

Protokoll. Höhere Technische Bundeslehranstalt Fischergasse 30 A-4600 Wels. Titel der Übung: Routing und RAS

Protokoll. Höhere Technische Bundeslehranstalt Fischergasse 30 A-4600 Wels. Titel der Übung: Routing und RAS Protokoll Nr. 10 Höhere Technische Bundeslehranstalt Fischergasse 30 A-4600 Wels Protokoll Abteilung IT Übungs Nr.: 10 Titel der Übung: Routing und RAS Katalog Nr.: 3 Verfasser: Christian Bartl Jahrgang:

Mehr