Prolog: Resolution, Unification, & Cuts

Size: px
Start display at page:

Download "Prolog: Resolution, Unification, & Cuts"

Transcription

1 CS 152: Programming Language Paradigms Prolog: Resolution, Unification, & Cuts Prof. Tom Austin San José State University

2 References for Prolog "Learn Prolog Now", SWI-Prolog website (contains manual and tutorials), "NLP with Prolog in the IBM Watson System", natural-language-processing-with-prolog-inthe-ibm-watson-system/

3 Review: Facts likes(batman, gotham). likes(batman, justice). likes(ras_al_ghul, justice). likes(ras_al_ghul, revenge).

4 Review: Queries & Variables What do Batman and Ra's al Ghul both like? X is a variable comma is "and"?- likes(batman,x), likes(ras_al_ghul,x).

5 How does Prolog resolve queries? Through 2 processes: Resolution Unification

6 Resolution & Unification Resolution: The process of matching facts & rules to perform inferencing infer: derive logical conclusions from the rules. If a subgoal matches the head of another rule, we can replace it with the body of the matching rule. Unification: Instantiation of variables via pattern matching

7 Query: likes(batman, X), likes(ras_al_ghul, X). Knowledge Base: likes(batman, gotham). likes(batman, justice). likes(ras_al_ghul, justice). likes(ras_al_ghul, revenge).

8 Query: likes(batman, X), likes(ras_al_ghul, X). Finds match for first sub-query; sets a marker Knowledge Base: likes(batman, gotham). likes(batman, justice). likes(ras_al_ghul, justice). likes(ras_al_ghul, revenge).

9 Query: likes(batman, gotham), likes(ras_al_ghul, gotham). Knowledge Base: likes(batman, gotham). likes(batman, justice). likes(ras_al_ghul, justice). likes(ras_al_ghul, revenge). X is bound to gotham

10 Query: No match found: fails and backtracks likes(batman, gotham), likes(ras_al_ghul, gotham). Knowledge to marker Base: likes(batman, gotham). likes(batman, justice). likes(ras_al_ghul, justice). likes(ras_al_ghul, revenge).

11 Query: likes(batman, X), likes(ras_al_ghul, X). Finds another match for first sub-query Knowledge Base: likes(batman, gotham). likes(batman, justice). likes(ras_al_ghul, justice). likes(ras_al_ghul, revenge).

12 Query: likes(batman, justice), likes(ras_al_ghul, justice). Knowledge Base: likes(batman, gotham). likes(batman, justice). likes(ras_al_ghul, justice). likes(ras_al_ghul, revenge). X is bound to justice

13 Query: likes(batman, justice), likes(ras_al_ghul, justice). Knowledge Base: likes(batman, gotham). likes(batman, justice). Match found, and the result is returned likes(ras_al_ghul, justice). likes(ras_al_ghul, revenge).

14 More facts: villain(joker). villain(penguin). villain(catwoman). villain(scarecrow). kills_people(joker). kills_people(penguin). power(scarecrow, fear). romantic_interest(catwoman). romantic_interest(talia).

15 Rules Queries scary(v) :- villain(v), "Head" of the rule kills_people(v). scary(v) :- villain(v), power(v,_).

16 Who is scary? (in-class)

17 Math in Prolog

18 Arithmetic in Prolog heists(joker, 97). heists(penguin, 18). heists(catwoman, 31). heists(scarecrow, 42). combined_heists(x, Y, Total) :- heists(x,xn), heists(y,yn), Total = XN + YN.

19 ?- combined_heists(catwoman, scarecrow, T). T =

20 Using "is" operator combined_heists(x, Y, Total) :- heists(x,xn), heists(y,yn), Total is XN + YN....?- combined_heists(catwoman, scarecrow, T). T = 73.

21 The Cut Operator "Learn Prolog Now" section 10.2

22 The Cut Operator Motivation: Prolog may needlessly backtrack We wish to stop the backtracking to optimize our code.

23 max example (no cuts) max(x,y,y):- X =< Y. max(x,y,x):- X > Y.

24 Using max?- max(2,3,m). M = 3 ; false. Why continue the search??- max(2,1,m). M = 2 ; false.

25 Two types of cuts (!) A green cut improves performance or memory usage Does not alter results A red cut controls resolution to prevent future matches changes the results is considered "bad form"

26 max example (no cuts) max(x,y,y):- X =< Y. max(x,y,x):- X > Y. If true, no need to keep searching

27 max example, with green cut max(x,y,y):- X =< Y,!. max(x,y,x):- X > Y.

28 Red Cut Example Batman is enemies with all villains, unless the villain is also a romantic interest.

29 Red Cut Example enemy(batman, X) :- romantic_interest(x),!, fail. No backtracking once we make it here. enemy(batman, X) :- villain(x).

30 Red Cut Example bad_breakup(batman, talia). bad_breakup(batman, poison_ivy). enemy(batman, X) :- romantic_interest(x),!, bad_breakup(batman, X). enemy(batman, X) :- villain(x).

31 Avoiding red cut bad_breakup(batman, talia). bad_breakup(batman, poison_ivy). enemy(batman, X) :- villain(x), \+ romantic_interest(x). enemy(batman, X) :- villain(x), bad_breakup(batman,x).

32 Lab For the rest of the class, continue with the lab from last class.

Brief Introduction to Prolog

Brief Introduction to Prolog Brief to Prolog Joana Côrte-Real jcr@dcc.fc.up.pt CRACS & INESC TEC Faculty of Sciences University of Porto University of Aizu 5th December 2014 1 / 27 Overview 1 to Prolog Prolog Syntax Tutorial 1 2 Lists

More information

Prolog and Logic Programming. CS152 Chris Pollett Dec. 3, 2008.

Prolog and Logic Programming. CS152 Chris Pollett Dec. 3, 2008. Prolog and Logic Programming CS152 Chris Pollett Dec. 3, 2008. Outline Logic and Logic Programs Horn Clauses Resolution and Unification Prolog Introduction So far this semester we have considered three

More information

Foundations of Logic Programming

Foundations of Logic Programming Foundations of Logic Programming Deductive Logic e.g. of use: Gypsy specifications and proofs About deductive logic (Gödel, 1931) Interesting systems (with a finite number of axioms) are necessarily either:

More information

Logic (3A) Young W. Lim 12/5/13

Logic (3A) Young W. Lim 12/5/13 Copyright (c) 2013. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software

More information

Logical reasoning - Can we formalise our thought processes?

Logical reasoning - Can we formalise our thought processes? Logical reasoning - Can we formalise our thought processes? Why study (mathematical) logic? Logic: the science or method of reasoning Logical: able to reason correctly Human reasoning poorly understood,

More information

Lecture Notes on Logic Programming

Lecture Notes on Logic Programming Lecture Notes on Logic Programming 15-317: Constructive Logic Frank Pfenning Lecture 13 October 13, 2009 1 Computation vs Deduction Logic programming is a particular way to approach programming Other paradigms

More information

Propositional Reasoning

Propositional Reasoning Propositional Reasoning CS 440 / ECE 448 Introduction to Artificial Intelligence Instructor: Eyal Amir Grad TAs: Wen Pu, Yonatan Bisk Undergrad TAs: Sam Johnson, Nikhil Johri Spring 2010 Intro to AI (CS

More information

Advanced Topics in LP and FP

Advanced Topics in LP and FP Lecture 3: Logic Programming in Prolog Outline 1 2 3 The control of execution Logic Programming Declarative programming style: Emphasis on What is the solution? instead of How to find the solution? Symbolic

More information

Lecture Notes on Logic Programming

Lecture Notes on Logic Programming Lecture Notes on Logic Programming 15-317: Constructive Logic Frank Pfenning Lecture 13 October 2, 2015 1 Computation vs Deduction The previous lectures explored a connection between logic and computation

More information

Self-assessment due: Monday 3/18/2019 at 11:59pm (submit via Gradescope)

Self-assessment due: Monday 3/18/2019 at 11:59pm (submit via Gradescope) CS 188 Spring 2019 Introduction to Artificial Intelligence Written HW 6 Sol. Self-assessment due: Monday 3/18/2019 at 11:59pm (submit via Gradescope) Instructions for self-assessment: Take your original

More information

Knowledge base (KB) = set of sentences in a formal language Declarative approach to building an agent (or other system):

Knowledge base (KB) = set of sentences in a formal language Declarative approach to building an agent (or other system): Logic Knowledge-based agents Inference engine Knowledge base Domain-independent algorithms Domain-specific content Knowledge base (KB) = set of sentences in a formal language Declarative approach to building

More information

Resolution and Refutation

Resolution and Refutation Resolution and Refutation York University Department of Computer Science and Engineering York University- CSE 3401- V. Movahedi 04_Resolution 1 Propositional Logic Resolution Refutation Predicate Logic

More information

NICTA Advanced Course. Theorem Proving Principles, Techniques, Applications

NICTA Advanced Course. Theorem Proving Principles, Techniques, Applications NICTA Advanced Course Theorem Proving Principles, Techniques, Applications λ 1 CONTENT Intro & motivation, getting started with Isabelle Foundations & Principles Lambda Calculus Higher Order Logic, natural

More information

Chapter 7 R&N ICS 271 Fall 2017 Kalev Kask

Chapter 7 R&N ICS 271 Fall 2017 Kalev Kask Set 6: Knowledge Representation: The Propositional Calculus Chapter 7 R&N ICS 271 Fall 2017 Kalev Kask Outline Representing knowledge using logic Agent that reason logically A knowledge based agent Representing

More information

Top-Down Execution CS240B Notes

Top-Down Execution CS240B Notes Top-Down Execution CS240B Notes Notes based on Section 9.4 of Advanced Database Systems Morgan Kaufmann, 1997 C. Zaniolo, March 2002 p.1/22 Top-Down Execution of Datalog A strict bottom-up execution strategy

More information

Logic (3A) Young W. Lim 11/2/13

Logic (3A) Young W. Lim 11/2/13 Copyright (c) 2013. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software

More information

Logic (3A) Young W. Lim 10/31/13

Logic (3A) Young W. Lim 10/31/13 Copyright (c) 2013. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software

More information

TDDD08 Tutorial 1. Who? From? When? 6 september Victor Lagerkvist (& Wªodek Drabent)

TDDD08 Tutorial 1. Who? From? When? 6 september Victor Lagerkvist (& Wªodek Drabent) TDDD08 Tutorial 1 Who? From? Victor Lagerkvist (& Wªodek Drabent) Theoretical Computer Science Laboratory, Linköpings Universitet, Sweden When? 6 september 2015 1 / 18 Preparations Before you start with

More information

Prolog. Resolution (for beginners?) Resolution (cont.) Resolution (cont.) Unification. Resolution (still cont.) Resolution & Unification

Prolog. Resolution (for beginners?) Resolution (cont.) Resolution (cont.) Unification. Resolution (still cont.) Resolution & Unification Resolution & Unification Prolog Computer Science Resolution (for beginners?) Resolution is a theorem proving method developed by Robinson based on representing logical formulas as clauses Clauses are build

More information

COMP219: Artificial Intelligence. Lecture 20: Propositional Reasoning

COMP219: Artificial Intelligence. Lecture 20: Propositional Reasoning COMP219: Artificial Intelligence Lecture 20: Propositional Reasoning 1 Overview Last time Logic for KR in general; Propositional Logic; Natural Deduction Today Entailment, satisfiability and validity Normal

More information

Logic (3A) Young W. Lim 10/29/13

Logic (3A) Young W. Lim 10/29/13 Copyright (c) 2013. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software

More information

Logic Programming. Prolog : 3

Logic Programming. Prolog : 3 Logic Programming Prolog : 3 Review We don't write normal functions in Prolog. Instead we relate the input and the output e.g. factorial: factorial(0, 1). factorial(n, V) : N > 0, N1 is N 1, factorial(n1,

More information

Lecture 15: MCMC Sanjeev Arora Elad Hazan. COS 402 Machine Learning and Artificial Intelligence Fall 2016

Lecture 15: MCMC Sanjeev Arora Elad Hazan. COS 402 Machine Learning and Artificial Intelligence Fall 2016 Lecture 15: MCMC Sanjeev Arora Elad Hazan COS 402 Machine Learning and Artificial Intelligence Fall 2016 Course progress Learning from examples Definition + fundamental theorem of statistical learning,

More information

Logical agents. Chapter 7. Chapter 7 1

Logical agents. Chapter 7. Chapter 7 1 Logical agents Chapter 7 Chapter 7 1 Outline Knowledge-based agents Logic in general models and entailment Propositional (oolean) logic Equivalence, validity, satisfiability Inference rules and theorem

More information

Unification and occur check. The programming language Prolog

Unification and occur check. The programming language Prolog Resolution and Logic Programming Ground resolution Unification and occur check General Resolution Logic Programming SLD-resolution The programming language Prolog Syntax Arithmetic Lists Slide 1 Motivation

More information

Artificial Intelligence

Artificial Intelligence Artificial Intelligence Propositional Logic Marc Toussaint University of Stuttgart Winter 2016/17 (slides based on Stuart Russell s AI course) Motivation: Most students will have learnt about propositional

More information

ITEC Prolog Programming

ITEC Prolog Programming 1 ITEC 198 - Prolog Programming Dr. Maung M. Htay Department of Information Technology 1/18/16 Text Prolog Programming for Artificial Intelligence by Ivan Bratko Third Edition, Addison Wesley 2 References

More information

Logic. Knowledge Representation & Reasoning Mechanisms. Logic. Propositional Logic Predicate Logic (predicate Calculus) Automated Reasoning

Logic. Knowledge Representation & Reasoning Mechanisms. Logic. Propositional Logic Predicate Logic (predicate Calculus) Automated Reasoning Logic Knowledge Representation & Reasoning Mechanisms Logic Logic as KR Propositional Logic Predicate Logic (predicate Calculus) Automated Reasoning Logical inferences Resolution and Theorem-proving Logic

More information

A Short Introduction to Hoare Logic

A Short Introduction to Hoare Logic A Short Introduction to Hoare Logic Supratik Chakraborty I.I.T. Bombay June 23, 2008 Supratik Chakraborty (I.I.T. Bombay) A Short Introduction to Hoare Logic June 23, 2008 1 / 34 Motivation Assertion checking

More information

CS 380: ARTIFICIAL INTELLIGENCE

CS 380: ARTIFICIAL INTELLIGENCE CS 380: RTIFICIL INTELLIGENCE PREDICTE LOGICS 11/8/2013 Santiago Ontañón santi@cs.drexel.edu https://www.cs.drexel.edu/~santi/teaching/2013/cs380/intro.html Summary of last day: Logical gents: The can

More information

Logic: Bottom-up & Top-down proof procedures

Logic: Bottom-up & Top-down proof procedures Logic: Bottom-up & Top-down proof procedures Alan Mackworth UBC CS 322 Logic 3 March 4, 2013 P & M Textbook 5.2 Lecture Overview Recap: Soundness, Completeness, Bottom-up proof procedure Bottom-up Proof

More information

Logic Programming Techniques for Reasoning with Probabilistic Ontologies

Logic Programming Techniques for Reasoning with Probabilistic Ontologies Logic Programming Techniques for Reasoning with Probabilistic Ontologies Riccardo Zese, Elena Bellodi, Evelina Lamma and Fabrizio Riguzzi University of Ferrara, Italy riccardo.zese@unife.it Zese, Bellodi,

More information

Artificial Intelligence Chapter 7: Logical Agents

Artificial Intelligence Chapter 7: Logical Agents Artificial Intelligence Chapter 7: Logical Agents Michael Scherger Department of Computer Science Kent State University February 20, 2006 AI: Chapter 7: Logical Agents 1 Contents Knowledge Based Agents

More information

CS 380: ARTIFICIAL INTELLIGENCE PREDICATE LOGICS. Santiago Ontañón

CS 380: ARTIFICIAL INTELLIGENCE PREDICATE LOGICS. Santiago Ontañón CS 380: RTIFICIL INTELLIGENCE PREDICTE LOGICS Santiago Ontañón so367@drexeledu Summary of last day: Logical gents: The can reason from the knowledge they have They can make deductions from their perceptions,

More information

Logic: Top-down proof procedure and Datalog

Logic: Top-down proof procedure and Datalog Logic: Top-down proof procedure and Datalog CPSC 322 Logic 4 Textbook 5.2 March 11, 2011 Lecture Overview Recap: Bottom-up proof procedure is sound and complete Top-down Proof Procedure Datalog 2 Logical

More information

Section 5 2: Solving a System of Equations by Substitution

Section 5 2: Solving a System of Equations by Substitution Section 5 2: Solving a System of Equations by Substitution 1. Look for an equation that has been solved for a single variable. 2. Substitute the value of that variable from into in place of that variable.

More information

Announcements. Project 1 underway... Second midterm Friday. discuss ideas with TAs check out wiki

Announcements. Project 1 underway... Second midterm Friday. discuss ideas with TAs check out wiki Announcements Project 1 underway... discuss ideas with TAs check out wiki Second midterm Friday You may bring on one letter-sized sheet of paper with anything written or drawn or... anywhere on it. It

More information

ILP = Logic, CS, ML Stop counting, start reasoning

ILP = Logic, CS, ML Stop counting, start reasoning ILP = Logic, CS, ML Stop counting, start reasoning Gilles Richard AOC team The story so far Several actors K. Brouwer K. Godel J. Herbrand A. Colmerauer R. Kowalski S. Muggleton L. Brouwer (1881-1966)

More information

Advanced Topics in LP and FP

Advanced Topics in LP and FP Lecture 1: Prolog and Summary of this lecture 1 Introduction to Prolog 2 3 Truth value evaluation 4 Prolog Logic programming language Introduction to Prolog Introduced in the 1970s Program = collection

More information

Inf2D 13: Resolution-Based Inference

Inf2D 13: Resolution-Based Inference School of Informatics, University of Edinburgh 13/02/18 Slide Credits: Jacques Fleuriot, Michael Rovatsos, Michael Herrmann Last lecture: Forward and backward chaining Backward chaining: If Goal is known

More information

Revised by Hankui Zhuo, March 21, Logical agents. Chapter 7. Chapter 7 1

Revised by Hankui Zhuo, March 21, Logical agents. Chapter 7. Chapter 7 1 Revised by Hankui Zhuo, March, 08 Logical agents Chapter 7 Chapter 7 Outline Wumpus world Logic in general models and entailment Propositional (oolean) logic Equivalence, validity, satisfiability Inference

More information

AI Programming CS S-09 Knowledge Representation

AI Programming CS S-09 Knowledge Representation AI Programming CS662-2013S-09 Knowledge Representation David Galles Department of Computer Science University of San Francisco 09-0: Overview So far, we ve talked about search, which is a means of considering

More information

CS:4420 Artificial Intelligence

CS:4420 Artificial Intelligence CS:4420 Artificial Intelligence Spring 2018 Propositional Logic Cesare Tinelli The University of Iowa Copyright 2004 18, Cesare Tinelli and Stuart Russell a a These notes were originally developed by Stuart

More information

Proof: If (a, a, b) is a Pythagorean triple, 2a 2 = b 2 b / a = 2, which is impossible.

Proof: If (a, a, b) is a Pythagorean triple, 2a 2 = b 2 b / a = 2, which is impossible. CS103 Handout 07 Fall 2013 October 2, 2013 Guide to Proofs Thanks to Michael Kim for writing some of the proofs used in this handout. What makes a proof a good proof? It's hard to answer this question

More information

Accumulators More on Arithmetic and Recursion

Accumulators More on Arithmetic and Recursion Accumulators More on Arithmetic and Recursion Shakil M. Khan adapted from Gunnar Gotshalks listlen ( L, N ) L is a list of length N if... listlen ( [], 0 ). listlen ( [ H T ], N ) :- listlen ( T, N1 ),

More information

Learning cover context-free grammars from structural data

Learning cover context-free grammars from structural data Learning cover context-free grammars from structural data Mircea Marin Gabriel Istrate West University of Timişoara, Romania 11th International Colloquium on Theoretical Aspects of Computing ICTAC 2014

More information

COMP9414: Artificial Intelligence Propositional Logic: Automated Reasoning

COMP9414: Artificial Intelligence Propositional Logic: Automated Reasoning COMP9414, Monday 26 March, 2012 Propositional Logic 2 COMP9414: Artificial Intelligence Propositional Logic: Automated Reasoning Overview Proof systems (including soundness and completeness) Normal Forms

More information

Semantics and Inference for Probabilistic Ontologies

Semantics and Inference for Probabilistic Ontologies Semantics and Inference for Probabilistic Ontologies Fabrizio Riguzzi, Elena Bellodi, Evelina Lamma, and Riccardo Zese ENDIF University of Ferrara, Italy, email: {fabrizio.riguzzi, elena.bellodi, evelina.lamma}@unife.it,

More information

Foundations of Artificial Intelligence

Foundations of Artificial Intelligence Foundations of Artificial Intelligence 31. Propositional Logic: DPLL Algorithm Malte Helmert and Gabriele Röger University of Basel April 24, 2017 Propositional Logic: Overview Chapter overview: propositional

More information

Logic: Resolution Proofs; Datalog

Logic: Resolution Proofs; Datalog Logic: ; Datalog CPSC 322 Logic 5 Textbook 5.2; 12.2 Logic: ; Datalog CPSC 322 Logic 5, Slide 1 Lecture Overview 1 Recap 2 Logic: ; Datalog CPSC 322 Logic 5, Slide 2 Proofs A proof is a mechanically derivable

More information

Inference in First-Order Predicate Calculus

Inference in First-Order Predicate Calculus Inference in First-Order Predicate Calculus Deepak Kumar November 2017 Knowledge Engineering in FOPC Identify the task Assemble relevant knowledge Decide on a vocabulary of predicates, functions, and constants

More information

Chapter 6. Negation: Procedural Interpretation

Chapter 6. Negation: Procedural Interpretation Chapter 6 1 Outline Motivate negation with two examples Extended programs and queries The computation mechanism: SLDNF-derivations Allowed programs and queries Negation in Prolog [Apt and Bol, 1994] Krzysztof

More information

Logic Programming. Adrian Crăciun. November 22, 2013

Logic Programming. Adrian Crăciun. November 22, 2013 Logic Programming Adrian Crăciun November 22, 2013 1 Contents I An Introduction to Prolog 5 1 Introduction 5 1.1 Traditional programming paradigms................ 5 1.2 Logic programming..........................

More information

University of Aberdeen, Computing Science CS2013 Predicate Logic 4 Kees van Deemter

University of Aberdeen, Computing Science CS2013 Predicate Logic 4 Kees van Deemter University of Aberdeen, Computing Science CS2013 Predicate Logic 4 Kees van Deemter 01/11/16 Kees van Deemter 1 First-Order Predicate Logic (FOPL) Lecture 4 Making numerical statements: >0, 1,>2,1,2

More information

CS2742 midterm test 2 study sheet. Boolean circuits: Predicate logic:

CS2742 midterm test 2 study sheet. Boolean circuits: Predicate logic: x NOT ~x x y AND x /\ y x y OR x \/ y Figure 1: Types of gates in a digital circuit. CS2742 midterm test 2 study sheet Boolean circuits: Boolean circuits is a generalization of Boolean formulas in which

More information

Proof Methods for Propositional Logic

Proof Methods for Propositional Logic Proof Methods for Propositional Logic Logical equivalence Two sentences are logically equivalent iff they are true in the same models: α ß iff α β and β α Russell and Norvig Chapter 7 CS440 Fall 2015 1

More information

n logical not (negation) n logical or (disjunction) n logical and (conjunction) n logical exclusive or n logical implication (conditional)

n logical not (negation) n logical or (disjunction) n logical and (conjunction) n logical exclusive or n logical implication (conditional) Discrete Math Review Discrete Math Review (Rosen, Chapter 1.1 1.6) TOPICS Propositional Logic Logical Operators Truth Tables Implication Logical Equivalence Inference Rules What you should know about propositional

More information

MAT 171. August 22, S1.4 Equations of Lines and Modeling. Section 1.4 Equations of Lines and Modeling

MAT 171. August 22, S1.4 Equations of Lines and Modeling. Section 1.4 Equations of Lines and Modeling MAT 171 WebAdvisor: http://reg.cfcc.edu Dr. Claude Moore, CFCC Session 1 introduces the Course, CourseCompass, and Chapter 1: Graphs, Functions, and Models. This session is available in CourseCompass.

More information

Chapter 16. Logic Programming. Topics. Logic Programming. Logic Programming Paradigm

Chapter 16. Logic Programming. Topics. Logic Programming. Logic Programming Paradigm Topics Chapter 16 Logic Programming Introduction Predicate Propositions Clausal Form Horn 2 Logic Programming Paradigm AKA Declarative Paradigm The programmer Declares the goal of the computation (specification

More information

Integrating ASP and CLP solvers: Computing Answer Sets from Partially Ground Programs

Integrating ASP and CLP solvers: Computing Answer Sets from Partially Ground Programs 1 Integrating ASP and CLP solvers: Computing Answer Sets from Partially Ground Programs Proposal Defense Veena S. Mellarkod 2 Planning Example Ram is at his office and has a dentist appointment in one

More information

Artificial Intelligence Chapter 9: Inference in First-Order Logic

Artificial Intelligence Chapter 9: Inference in First-Order Logic Artificial Intelligence Chapter 9: Inference in First-Order Logic Andreas Zell After the Textbook: Artificial Intelligence, A Modern Approach by Stuart Russell and Peter Norvig (3 rd Edition) 9 Inference

More information

Machine Learning and Logic: Fast and Slow Thinking

Machine Learning and Logic: Fast and Slow Thinking Machine Learning and Logic: Fast and Slow Thinking Moshe Y. Vardi Rice University Is Computer Science Fundamentally Changing? Formal Science vs Data Science We are at peak hype about machine learning and

More information

Complexity Theory. Knowledge Representation and Reasoning. November 2, 2005

Complexity Theory. Knowledge Representation and Reasoning. November 2, 2005 Complexity Theory Knowledge Representation and Reasoning November 2, 2005 (Knowledge Representation and Reasoning) Complexity Theory November 2, 2005 1 / 22 Outline Motivation Reminder: Basic Notions Algorithms

More information

Inference in first-order logic

Inference in first-order logic CS 2710 Foundations of AI Lecture 15 Inference in first-order logic Milos Hauskrecht milos@cs.pitt.edu 5329 Sennott Square Logical inference in FOL Logical inference problem: Given a knowledge base KB

More information

Relationships Among Semantics. If a program + EDB has a stratiæed or perfect. èlocally stratiæedè model, then that is the unique. stable model.

Relationships Among Semantics. If a program + EDB has a stratiæed or perfect. èlocally stratiæedè model, then that is the unique. stable model. Relationships Among Semantics If a program + EDB has a stratied or perfect èlocally stratiedè model, then that is the unique stable model. A program + EDB can have a unique stable model even if there is

More information

Artificial Intelligence

Artificial Intelligence Artificial Intelligence Propositional Logic Marc Toussaint University of Stuttgart Winter 2015/16 (slides based on Stuart Russell s AI course) Outline Knowledge-based agents Wumpus world Logic in general

More information

Propositional inference, propositional agents

Propositional inference, propositional agents ropositional inference, propositional agents Chapter 7.5 7.7 Chapter 7.5 7.7 1 Outline Inference rules and theorem proving forward chaining backward chaining resolution Efficient model checking algorithms

More information

QUADRATIC PROGRAMMING?

QUADRATIC PROGRAMMING? QUADRATIC PROGRAMMING? WILLIAM Y. SIT Department of Mathematics, The City College of The City University of New York, New York, NY 10031, USA E-mail: wyscc@cunyvm.cuny.edu This is a talk on how to program

More information

EE562 ARTIFICIAL INTELLIGENCE FOR ENGINEERS

EE562 ARTIFICIAL INTELLIGENCE FOR ENGINEERS EE562 ARTIFICIAL INTELLIGENCE FOR ENGINEERS Lecture 10, 5/9/2005 University of Washington, Department of Electrical Engineering Spring 2005 Instructor: Professor Jeff A. Bilmes Logical Agents Chapter 7

More information

The Assignment Axiom (Hoare)

The Assignment Axiom (Hoare) The Assignment Axiom (Hoare) Syntax: V := E Semantics: value of V in final state is value of E in initial state Example: X:=X+ (adds one to the value of the variable X) The Assignment Axiom {Q[E/V ]} V

More information

Logic Programming: Prolog

Logic Programming: Prolog Logic Programming: Prolog Course: CS40002 Instructor: Dr. Pallab Dasgupta Department of Computer Science & Engineering Indian Institute of Technology Kharagpur Basics The notion of instantiation likes(

More information

Intelligent Agents. Pınar Yolum Utrecht University

Intelligent Agents. Pınar Yolum Utrecht University Intelligent Agents Pınar Yolum p.yolum@uu.nl Utrecht University Logical Agents (Based mostly on the course slides from http://aima.cs.berkeley.edu/) Outline Knowledge-based agents Wumpus world Logic in

More information

CSCE 222 Discrete Structures for Computing. Proofs. Dr. Hyunyoung Lee. !!!!! Based on slides by Andreas Klappenecker

CSCE 222 Discrete Structures for Computing. Proofs. Dr. Hyunyoung Lee. !!!!! Based on slides by Andreas Klappenecker CSCE 222 Discrete Structures for Computing Proofs Dr. Hyunyoung Lee Based on slides by Andreas Klappenecker 1 What is a Proof? A proof is a sequence of statements, each of which is either assumed, or follows

More information

Self-reproducing programs. And Introduction to logic. COS 116, Spring 2012 Adam Finkelstein

Self-reproducing programs. And Introduction to logic. COS 116, Spring 2012 Adam Finkelstein Self-reproducing programs. And Introduction to logic. COS 6, Spring 22 Adam Finkelstein Midterm One week from today in class Mar 5 Covers lectures, labs, homework, readings to date Old midterms will be

More information

An Early (1971) Conversation. Logic Programming (PLP 11.3) Horn Clauses Introduction to Prolog: Resolution, Unification.

An Early (1971) Conversation. Logic Programming (PLP 11.3) Horn Clauses Introduction to Prolog: Resolution, Unification. Logic Programming (PLP 11.3) Horn Clauses Introduction to Prolog: Resolution, Unification Carlos Varela Rennselaer Polytechnic Institute November 9, 2006 C. Varela 1 An Early (1971) Conversation Cats kill

More information

proposi/onal logic, first- order logic CS 4100/5100 Founda/ons of AI

proposi/onal logic, first- order logic CS 4100/5100 Founda/ons of AI proposi/onal logic, first- order logic CS 4100/5100 Founda/ons of AI Announcements Assignment 1 out Due September 27 th, 6pm Piazza Blackboard Reading Responses PROPOSITIONAL LOGIC Knowledge- Based Agents

More information

Module Contact: Dr Pierre Chardaire, CMP Copyright of the University of East Anglia Version 1

Module Contact: Dr Pierre Chardaire, CMP Copyright of the University of East Anglia Version 1 UNIVERSITY OF EAST ANGLIA School of Computing Sciences Main Series PG Examination 2012-13 ARTIFICIAL INTELLIGENCE AND ALGORITHMICS CMPSMA24 Time allowed: 3 hours Answer THREE questions. Notes are not permitted

More information

Logical agents. Chapter 7. Chapter 7 1

Logical agents. Chapter 7. Chapter 7 1 Logical agents Chapter 7 Chapter 7 Outline Knowledge-based agents Wumpus world Logic in general models and entailment Propositional (Boolean) logic Equivalence, validity, satisfiability Inference rules

More information

Hoare Logic and Model Checking

Hoare Logic and Model Checking Hoare Logic and Model Checking Kasper Svendsen University of Cambridge CST Part II 2016/17 Acknowledgement: slides heavily based on previous versions by Mike Gordon and Alan Mycroft Introduction In the

More information

EECE 301 Signals & Systems

EECE 301 Signals & Systems EECE 30 Signals & Systems Prof. Mark Fowler Note Set #22 D-T Systems: DT Systems & Difference Equations / D-T System Models So far we ve seen how to use the FT to analyze circuits Use phasors and standard

More information

Advanced DB CHAPTER 5 DATALOG

Advanced DB CHAPTER 5 DATALOG Advanced DB CHAPTER 5 DATALOG Datalog Basic Structure Syntax of Datalog Rules Semantics of Nonrecursive Datalog Safety Relational Operations in Datalog Recursion in Datalog The Power of Recursion A More

More information

From Greek philosophers to circuits: An introduction to boolean logic. COS 116, Spring 2011 Sanjeev Arora

From Greek philosophers to circuits: An introduction to boolean logic. COS 116, Spring 2011 Sanjeev Arora From Greek philosophers to circuits: An introduction to boolean logic. COS 116, Spring 2011 Sanjeev Arora Midterm One week from today in class Mar 10 Covers lectures, labs, homework, readings to date You

More information

Logic Programming Theory Lecture 7: The Closed World Assumption

Logic Programming Theory Lecture 7: The Closed World Assumption Logic Programming Theory Lecture 7: The Closed World Assumption Alex Simpson School of Informatics 8th November 2012 Negation as failure: problem 1 Prolog s treatment of negation as failure is a procedural

More information

Quiz 1, Mon CS 2050, Intro Discrete Math for Computer Science

Quiz 1, Mon CS 2050, Intro Discrete Math for Computer Science Quiz 1, Mon 09-6-11 CS 050, Intro Discrete Math for Computer Science This quiz has 10 pages (including this cover page) and 5 Problems: Problems 1,, 3 and 4 are mandatory ( pages each.) Problem 5 is optional,

More information

Coding to show Newton s laws

Coding to show Newton s laws Coding to show Newton s laws * A CoSpaces Edu Pro license plan is needed for this lesson. Lesson complexity: Intermediate Grades: Grade 7 and up Subjects : STEM, Physics, Computer science Created by :

More information

Logical Agents. Chapter 7

Logical Agents. Chapter 7 Logical Agents Chapter 7 Outline Knowledge-based agents Wumpus world Logic in general - models and entailment Propositional (Boolean) logic Equivalence, validity, satisfiability Inference rules and theorem

More information

Principles of Knowledge Representation and Reasoning

Principles of Knowledge Representation and Reasoning Principles of Knowledge Representation and Reasoning Complexity Theory Bernhard Nebel, Malte Helmert and Stefan Wölfl Albert-Ludwigs-Universität Freiburg April 29, 2008 Nebel, Helmert, Wölfl (Uni Freiburg)

More information

Warm-Up Problem. Is the following true or false? 1/35

Warm-Up Problem. Is the following true or false? 1/35 Warm-Up Problem Is the following true or false? 1/35 Propositional Logic: Resolution Carmen Bruni Lecture 6 Based on work by J Buss, A Gao, L Kari, A Lubiw, B Bonakdarpour, D Maftuleac, C Roberts, R Trefler,

More information

TDT4136 Logic and Reasoning Systems

TDT4136 Logic and Reasoning Systems TDT436 Logic and Reasoning Systems Chapter 7 - Logic gents Lester Solbakken solbakke@idi.ntnu.no Norwegian University of Science and Technology 06.09.0 Lester Solbakken TDT436 Logic and Reasoning Systems

More information

CSCI-2200 FOUNDATIONS OF COMPUTER SCIENCE

CSCI-2200 FOUNDATIONS OF COMPUTER SCIENCE 1 CSCI-2200 FOUNDATIONS OF COMPUTER SCIENCE Spring 2015 February 5, 2015 2 Announcements Homework 1 is due now. Homework 2 will be posted on the web site today. It is due Thursday, Feb. 12 at 10am in class.

More information

CAIM: Cerca i Anàlisi d Informació Massiva

CAIM: Cerca i Anàlisi d Informació Massiva 1 / 21 CAIM: Cerca i Anàlisi d Informació Massiva FIB, Grau en Enginyeria Informàtica Slides by Marta Arias, José Balcázar, Ricard Gavaldá Department of Computer Science, UPC Fall 2016 http://www.cs.upc.edu/~caim

More information

Inference in first-order logic

Inference in first-order logic CS 57 Introduction to AI Lecture 5 Inference in first-order logic Milos Hauskrecht milos@cs.pitt.edu 5329 Sennott Square Logical inference in FOL Logical inference problem: Given a knowledge base KB (a

More information

CS 7180: Behavioral Modeling and Decision- making in AI

CS 7180: Behavioral Modeling and Decision- making in AI CS 7180: Behavioral Modeling and Decision- making in AI Review of Propositional Logic Prof. Amy Sliva September 7, 2012 Outline General properties of logics Syntax, semantics, entailment, inference, and

More information

Computational Logic Constraint Logic Programming

Computational Logic Constraint Logic Programming Computational Logic Constraint Logic Programming 1 Constraints Born within AI: e.g. house design Constraints used as problem representation: The man in yellow does not have green eyes The murderer knows

More information

Manual of Logical Style

Manual of Logical Style Manual of Logical Style Dr. Holmes January 9, 2015 Contents 1 Introduction 2 2 Conjunction 3 2.1 Proving a conjunction...................... 3 2.2 Using a conjunction........................ 3 3 Implication

More information

Announcements August 31

Announcements August 31 Announcements August 31 Homeworks 1.1 and 1.2 are due Friday. The first quiz is on Friday, during recitation. Quizzes mostly test your understanding of the homework. There will generally be a quiz every

More information

Propositional Logic: Bottom-Up Proofs

Propositional Logic: Bottom-Up Proofs Propositional Logic: Bottom-Up Proofs CPSC 322 Logic 3 Textbook 5.2 Propositional Logic: Bottom-Up Proofs CPSC 322 Logic 3, Slide 1 Lecture Overview 1 Recap 2 Bottom-Up Proofs 3 Soundness of Bottom-Up

More information

Proof Translation Study March 2000

Proof Translation Study March 2000 Proof Translation Study March 2000 Thank you for taking part in the latest Nuprl Proof Translation Study. This study is part of a research project to build a system that translates formal, computer-generated

More information

1 Propositional Logic

1 Propositional Logic CS 2800, Logic and Computation Propositional Logic Lectures Pete Manolios Version: 384 Spring 2011 1 Propositional Logic The study of logic was initiated by the ancient Greeks, who were concerned with

More information

Comparison of Bayesian and Frequentist Inference

Comparison of Bayesian and Frequentist Inference Comparison of Bayesian and Frequentist Inference 18.05 Spring 2014 First discuss last class 19 board question, January 1, 2017 1 /10 Compare Bayesian inference Uses priors Logically impeccable Probabilities

More information