CPSC 322 Introduction to Artificial Intelligence October 13, 2004.

Slides:



Advertisements
Similar presentations
Artificial Intelligence
Advertisements

Computer Science CPSC 322 Lecture 25 Top Down Proof Procedure (Ch 5.2.2)
Introduction to Proofs
Logic Use mathematical deduction to derive new knowledge.
Logic.
Copyright © Cengage Learning. All rights reserved.
Copyright © Cengage Learning. All rights reserved.
October 13, 2009Theory of Computation Lecture 11: A Universal Program III 1 Coding Programs by Numbers Gödel numbers are usually very large, even for small.
F22H1 Logic and Proof Week 7 Clausal Form and Resolution.
CPSC 322 Introduction to Artificial Intelligence October 6, 2004.
CPSC 322 Introduction to Artificial Intelligence September 15, 2004.
CPSC 322, Lecture 23Slide 1 Logic: TD as search, Datalog (variables) Computer Science cpsc322, Lecture 23 (Textbook Chpt 5.2 & some basic concepts from.
CPSC 322 Introduction to Artificial Intelligence October 29, 2004.
CPSC 322 Introduction to Artificial Intelligence September 27, 2004.
CPSC 322 Introduction to Artificial Intelligence September 13, 2004.
1 Introduction to Computability Theory Lecture12: Reductions Prof. Amos Israeli.
Artificial Intelligence u What are we claiming when we talk about AI? u How are Turing Machines important? u How can we determine whether a machine can.
CPSC 411, Fall 2008: Set 12 1 CPSC 411 Design and Analysis of Algorithms Set 12: Undecidability Prof. Jennifer Welch Fall 2008.
CPSC 322 Introduction to Artificial Intelligence September 20, 2004.
CPSC 322, Lecture 23Slide 1 Logic: TD as search, Datalog (variables) Computer Science cpsc322, Lecture 23 (Textbook Chpt 5.2 & some basic concepts from.
CPSC 322 Introduction to Artificial Intelligence November 10, 2004.
CSCI 5582 Fall 2006 CSCI 5582 Artificial Intelligence Lecture 9 Jim Martin.
CPSC 322, Lecture 22Slide 1 Logic: Domain Modeling /Proofs + Top-Down Proofs Computer Science cpsc322, Lecture 22 (Textbook Chpt 5.2) March, 8, 2010.
Proof by Deduction. Deductions and Formal Proofs A deduction is a sequence of logic statements, each of which is known or assumed to be true A formal.
Introduction to Proofs Goals 1.Introduce notion of proof & basic proof methods. 2.Distinguish between correct & incorrect arguments 3.Understand & construct.
CPSC 322 Introduction to Artificial Intelligence September 10, 2004.
What it is? Why is it a legitimate proof method? How to use it?
Hypothesis Testing – Introduction
Towers of Hanoi. Introduction This problem is discussed in many maths texts, And in computer science an AI as an illustration of recursion and problem.
Proof Systems KB |- Q iff there is a sequence of wffs D1,..., Dn such that Dn is Q and for each Di in the sequence: a) either Di is in KB or b) Di can.
Introduction to Proofs
Reading and Writing Mathematical Proofs
MATH 224 – Discrete Mathematics
Copyright © Cengage Learning. All rights reserved. CHAPTER 4 ELEMENTARY NUMBER THEORY AND METHODS OF PROOF ELEMENTARY NUMBER THEORY AND METHODS OF PROOF.
CPSC 322, Lecture 22Slide 1 Logic: Domain Modeling /Proofs + Top-Down Proofs Computer Science cpsc322, Lecture 22 (Textbook Chpt 5.2) Oct, 26, 2010.
1 Knowledge Based Systems (CM0377) Lecture 4 (Last modified 5th February 2001)
March 3, 2015Applied Discrete Mathematics Week 5: Mathematical Reasoning 1Arguments Just like a rule of inference, an argument consists of one or more.
Great Theoretical Ideas in Computer Science for Some.
Slide 1 Propositional Definite Clause Logic: Syntax, Semantics and Bottom-up Proofs Jim Little UBC CS 322 – CSP October 20, 2014.
How Solvable Is Intelligence? A brief introduction to AI Dr. Richard Fox Department of Computer Science Northern Kentucky University.
Course Overview and Road Map Computability and Logic.
Algebra Problems… Solutions Algebra Problems… Solutions © 2007 Herbert I. Gross Set 10 By Herbert I. Gross and Richard A. Medeiros next.
Copyright © Zeph Grunschlag, Induction Zeph Grunschlag.
Automated Reasoning Early AI explored how to automated several reasoning tasks – these were solved by what we might call weak problem solving methods as.
LECTURE 19 THE COSMOLOGICAL ARGUMENT CONTINUED. THE QUANTUM MECHANICAL OBJECTION DEPENDS UPON A PARTICULAR INTERPRETATION WE MIGHT REASONABLY SUSPEND.
Naïve Set Theory. Basic Definitions Naïve set theory is the non-axiomatic treatment of set theory. In the axiomatic treatment, which we will only allude.
CS344 : Introduction to Artificial Intelligence Pushpak Bhattacharyya CSE Dept., IIT Bombay Lecture 9- Completeness proof; introducing knowledge representation.
Computer Science CPSC 322 Lecture 22 Logical Consequences, Proof Procedures (Ch 5.2.2)
1/32 This Lecture Substitution model An example using the substitution model Designing recursive procedures Designing iterative procedures Proving that.
11 Artificial Intelligence CS 165A Thursday, October 25, 2007  Knowledge and reasoning (Ch 7) Propositional logic 1.
Logic: Proof procedures, soundness and correctness CPSC 322 – Logic 2 Textbook §5.2 March 7, 2011.
Copyright © Zeph Grunschlag, Induction Zeph Grunschlag.
Recursively Enumerable and Recursive Languages
Overview of the theory of computation Episode 3 0 Turing machines The traditional concepts of computability, decidability and recursive enumerability.
Foundations of Discrete Mathematics Chapter 1 By Dr. Dalia M. Gil, Ph.D.
Section 1.7. Section Summary Mathematical Proofs Forms of Theorems Direct Proofs Indirect Proofs Proof of the Contrapositive Proof by Contradiction.
Mathematical Induction What it is? Why is it a legitimate proof method? How to use it?
Chapter 7. Propositional and Predicate Logic
Introduction to Logic for Artificial Intelligence Lecture 2
Axiomatic Number Theory and Gödel’s Incompleteness Theorems
Propositional Definite Clause Logic: Syntax, Semantics, R&R and Proofs
Knowledge Representation
Hypothesis Testing – Introduction
CPSC 322 Introduction to Artificial Intelligence
Back to “Serious” Topics…
Logic: Domain Modeling /Proofs + Computer Science cpsc322, Lecture 22
Chapter 7. Propositional and Predicate Logic
CPSC 322 Introduction to Artificial Intelligence
This Lecture Substitution model
Representations & Reasoning Systems (RRS) (2.2)
Presentation transcript:

CPSC 322 Introduction to Artificial Intelligence October 13, 2004

Problem 1a 1a. (10 points) Let's see how well you really understand this interpretation stuff. You know of course from your reading and from lecture that once you've completely and thoroughly specified your intended interpretation for your chosen domain, you then write, as definite clauses, those statements that are true in your intended interpretation. Those clauses are called axioms. It seems reasonable then that given only a set of axioms (i.e., definite clauses) that make up the facts of a knowledge base, you should be able to work backwards from that information and completely and thoroughly specify the intended interpretation. Well actually, you'll need a little more information that what's contained in the axioms. Read on. Here's a set of axioms in definite clause form: cries(stanley). crushes_hat(ollie,stanley). crushes_hat(stanley,ollie). Assume that stanley and ollie are the only constants, and that Stanley' and Ollie' are the only individuals worth worrying about in the chosen domain. Assume that stanley maps onto Stanley' and ollie maps onto Ollie'. Assume also that cries and crushes_hat are the only predicates. (And of course assume that the axioms are correct, no mistakes were made, and the axioms represent the only true statements in the interpretation.) In the space below, give the complete specification for the intended interpretation that gives rise to the axioms above. You can use the words pi and phi or their symbolic equivalents,  and 

Problem 1a D = {Stanley’, Ollie’}  (stanley) = Stanley’  (ollie) = Ollie’  (cries)(Stanley’) = True  (crushes_hat)(Stanley’,Ollie’) = True  (crushes_hat)(Ollie’,Stanley’) = True  (cries)(Ollie’) = False  (crushes_hat)(Stanley’,Stanley’) = False  (crushes_hat)(Ollie’,Ollie’) = False

Problem 1b 1b. (10 points): Given the facts and assumptions of Problem 1a, how many different interpretations are possible? Show enough math to convince me that you didn't just pull a number out of the air. (Hint: the number of interpretations possible is not nearly as large as the number of interpretations for the similar problem in homework assignment 1.)

Problem 1b D = {Stanley’, Ollie’}  (stanley) = Stanley’ or Ollie’2  (ollie) = Ollie’ or Stanley’2  (cries)(Stanley’) = True or False2  (crushes_hat)(Stanley’,Ollie’) = True or False2  (crushes_hat)(Ollie’,Stanley’) = True or False2  (cries)(Ollie’) = False or True2  (crushes_hat)(Stanley’,Stanley’) = False or True2  (crushes_hat)(Ollie’,Ollie’) = False or True2 2 8 = 256

Problem 2 2. (20 points): Let's say for the sake of argument that we all believe that, someday, a reasoning and representation system like the ones we've been working with in class could be intelligent. (Well, it would be a lot more complex than the ones we've been working with, but it would employ the same principles.) This belief is based on a handful of assumptions. In the space below, explain just two of those assumptions. (Note: this isn't about the textbook's simplifying assumptions like "The environment is static" that are relaxed or eliminated completely later in the book.) Once you've given those two assumptions, discuss the implications for artificial intelligence efforts if those assumptions ultimately turn out to be false.

AI assumes that what the brain does may be thought of at some level as some form of computation The assumption above is probably valid A physical symbol system has the necessary and sufficient means for intelligent behavior (The Physical Symbol System Hypothesis) These assumptions may not be valid Any symbol manipulation can be carried out on a Turing machine. (The Church-Turing Thesis)

Alternatives to symbols Number crunching (e.g., language processing entirely by statistical analysis) Distributed intelligence Lots of tiny “computers” of limited ability working in concert (e.g., ants in a colony, neurons in a brain)

Problem 3 3. (20 points): Here's a graphical representation of a really small maze: And here are the corresponding facts in CILOG: nowall(r11,r12). nowall(r12,r13). nowall(r11,r21). nowall(r12,r22). nowall(r21,r31). nowall(r13,r23). nowall(r31,r32). nowall(r23,r33). Now let's add a couple of rules: path(X,Y) <- path(X,Z) & path(Z,Y). path(X,Y) <- nowall(X,Y). Prove the following theorem is true (i.e., show that the theorem can be derived from the given knowledge base): path(r11,r32).

Problem 3 nowall(r11,r12). nowall(r12,r13). nowall(r11,r21). nowall(r12,r22). nowall(r21,r31). nowall(r13,r23). nowall(r31,r32). nowall(r23,r33). path(X,Y) <- path(X,Z) & path(Z,Y). path(X,Y) <- nowall(X,Y). Prove the following theorem is true (i.e., show that the theorem can be derived from the given knowledge base): yes <- path(r11,r32). <- path(r11,Z) & path(Z,r32). <- nowall(r11,Z) & path(Z,r32). <- nowall(r11,r21) & path(r21,r32). <- path(r21,r32). <- path(r21,Z) & path(Z,r32). <- nowall(r21,Z) & path(Z,r32). <- nowall(r21,r31) & path(r31,r32). <- path(r31,r32). <- nowall(r31,r32). <-.

Problem 4 4. (20 points): Using CILOG, write a relation list_equal(L1,L2) that is true if the list L1 is identical to list L2. The relation is false otherwise. Sample behavior follows: cilog: ask list_equal([],[]). Answer: list_equal([], []). [ok,more,how,help]: ok. cilog: ask list_equal(a,a). No. list_equal(a, a) doesn't follow from the knowledge base. cilog: ask list_equal([a,b,c],[a,b,c]). Answer: list_equal([a, b, c], [a, b, c]). [ok,more,how,help]: ok. cilog: ask list_equal([a,b,c,d],X). Answer: list_equal([a, b, c, d], [a, b, c, d]). [ok,more,how,help]: more. No more answers. cilog: ask list_equal([a,b],[a,b,c]). No. list_equal([a, b], [a, b, c]) doesn't follow from the knowledge base. cilog:

Problem 4 The most frequent correct answer: list_equal([H|T1],[H|T2]) <- list_equal(T1,T2). list_equal([],[]). Other possibilities: list_equal([H|T],[H|T]). list_equal([],[]). list_equal(L1,L2) <- append(L1,[],L2). append([], A, A). append([A|B], C, [A|D]) <- append(B, C, D).

Problem 5 5. (20 points). Assume the following relation written in CILOG: glork([H1|[H2|T2]],[H1|T3]) <- glork(T2,T3). glork([],[]). Show what happens when CILOG is presented with the following query: ask glork([a,b,c,d,e,f],X). Give the result, and explain how glork works. glork([a,b,c,d,e,f],[a,c,e]). glork proves that the second list is the list composed of the first, third, fifth, etc., elements of the first list (assuming that the first list has an even number of elements). It does this by comparing the first element of the first list to the first element of the second list. If they’re the same, the proof procedure recursively calls itself with new arguments: the new first list is the original first list without its first two elements, and the new second list is the original second list without its first element. Thus, the second, fourth, sixth, etc. elements of the first list are ignored or discarded. The base case is when the two lists are empty.