logic and knowledge base systems. outline knowledge-based systems wumpus world logic in general -...

177
Logic and Knowledge Base Systems

Upload: felix-leonard

Post on 02-Jan-2016

216 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Logic and Knowledge Base Systems

Page 2: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Outline

• Knowledge-based systems• Wumpus world• Logic in general - models and entailment• Propositional (Boolean) logic• Equivalence, validity, satisfiability• Inference rules and theorem proving

– forward chaining– backward chaining– resolution

Page 3: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

“The beginning of knowledge is the discovery of something that we do not understand.”

–Frank Herbert

Page 4: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Knowledge Pyramid

Noise

Data

Information

Knowledge

Meta-KnowledgeKnowledge

Knowledge – the integration of the information into a knowledge base to be effectively utilized

DataDataData – collected symbols and artifacts

InformationInformationInformation – the interpretation of artifacts in some context

Interpretation in ContextInterpretation in Context

Integration and UsageIntegration and Usage

Data - raw digital materialraw digital material or the “artifacts which exist as a

vehicle for conveying information”

Information - interpreted datainterpreted data “within a context set by a priori

knowledge and the current environment”

Knowledge - assigns a purposepurpose and/or action to informationto information

Page 5: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Data, information,…

• Spreadsheet holds the data

• RDBMS makes information from the data

• Processing tables to find a product, applications of appropriate formulae to solve problems.

• Wisdom requires soul.

Page 6: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Knowledge-Based Agent• Agent that uses prior or acquired

knowledge to achieve its goals– Can make more efficient decisions

– Can make informed decisions

• Knowledge Base (KB): contains a set of representations of facts about the Agent’s environment

• Each representation is called a sentence • Use some knowledge representation

language, to TELL it what to know e.g., (temperature 72F)

• ASK agent to query what to do• Agent can use inference to deduce new

facts from TELLed facts

Knowledge Base

Inference engine

Domain independent algorithms

Domain specific content

TELL

ASK

Page 7: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Knowledge and Reasoning

• Knowledge + reasoning → AI based systems → partial observable environment

• KB systems → general form of knowledge + current percepts → infer hidden aspects of current state prior to selecting actions– E.g. intention of speaker, when he says “ Ali saw the

diamond thru window and covered it” we know that “it” refers to diamond and not window

Page 8: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Knowledge and Reasoning

• KB systems → Flexibility– Accept new tasks

– Achieve competence by learning new knowledge about the environment

– Adapt to changes in environment

Page 9: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Knowledge bases

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

– Tell it what it needs to know• Then it can Ask itself what to do - answers should follow from

the KB• KB can be viewed at the knowledge level

i.e., what they know, regardless of how implemented• Or at the implementation level

– i.e., data structures in KB and algorithms that manipulate them

Page 10: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Knowledge-base System

Sys

KB

percept

ask/resulttell

Knowledge level

Logical level

Implementation level

What it knows

Knowledge implementation

How it knows

Describing a KB...

* Sentences* Knowledge Representation Language* Background Knowledge

sentences

inferenceengine

Page 11: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Three levels of A KB Agent

• Knowledge level (the most abstract)• Logical level (knowledge is of sentences)• Implementation level

• Building a knowledge base– A declarative approach - telling a KB agent what it

needs to know – A procedural approach – encoding desired behaviors

directly as program code– A learning approach - making it autonomous

Page 12: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Knowledge types

http://home.att.net/~nickols/Knowledge_in_KM.htm

Page 13: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Explicit knowledge

• Knowledge that has been articulated and, more often than not, captured in the form of text, tables, diagrams, product specifications and so on.

• E.g. the formula for finding the area of a rectangle, the formalized standards by which an insurance claim is adjudicated and the official expectations for performance set forth in written work objectives.

Page 14: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Tacit Knowledge

• Michael Polanyi (1997), the chemist-turned-philosopher who coined the term put it, "We know more than we can tell."

• Polanyi used the example of being able to recognize a person’s face but being only vaguely able to describe how that is done. Reading the reaction on a customer’s face or entering text at a high rate of speed using a word processor offer other instances of situations in which we are able to perform well but unable to articulate exactly what we know or how we put it into practice. In such cases, the knowing is in the doing

Page 15: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Implicit Knowledge

• Its existence is implied by or inferred from observable behavior or performance.

• Can often be teased out of a competent performer (task analyst, knowledge engineer)

• E.g. processing applications in an insurance company, the range of outcomes for the underwriters’ work took three basic forms: (1) they could approve the policy application, (2) they could deny it or (3) they could counter offer. Yet, not one of the underwriters articulated these as boundaries on their work at the outset of the analysis. Once these outcomes were identified, it was a comparatively simple matter to identify the criteria used to determine the response to a given application. In so doing, implicit knowledge became explicit knowledge.

Page 16: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Where Logic lies?

• Architectures with declarative representations have knowledge in a format that may be manipulated decomposed and analyzed by its reasoners. A classic example of a declarative representation is logic. Advantages of declarative knowledge are: – The ability to use knowledge in ways that the system

designer did not forsee • Architectures with procedural representations

encode how to achieve a particular result. Advantages of procedural knowledge are: – Possibly faster usage

Page 17: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Knowledge types

Page 18: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Generic knowledge-based agent

1. TELL KB what was perceivedUses a KRL to insert new sentences, representations of facts, into KB

2. ASK KB what to do.Uses logical reasoning to examine actions and select best.

Page 19: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Generic knowledge-based agent

Page 20: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Wumpus World description (PAGE)

Page 21: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Wumpus World description (PEAS)• Performance measure

– gold +1000, death -1000

– -1 per step, -10 for using the arrow

• Environment– Squares adjacent to wumpus are smelly

– Squares adjacent to pit are breezy

– Glitter iff gold is in the same square

– Shooting kills wumpus if you are facing it

– Shooting uses up the only arrow

– Grabbing picks up gold if in same square

– Releasing drops the gold in same square

• Sensors: Stench, Breeze, Glitter, Bump, Scream

• Actuators: Left turn, Right turn, Forward, Grab, Release, Shoot

Page 22: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Wumpus world characterization

• Deterministic?

• Accessible?

• Static?

• Discrete?

• Episodic?

Page 23: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Wumpus world characterization

• Deterministic? Yes – outcome exactly specified.

• Accessible? No – only local perception.

• Static? Yes – Wumpus and pits do not move.

• Discrete? Yes

• Episodic? (Yes) – because static.

Page 24: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Exploring a Wumpus world

A= AgentB= BreezeS= Smell/stenchP= PitW= WumpusOK = SafeV = VisitedG = Glitter

Page 25: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Exploring a Wumpus world

A= AgentB= BreezeS= SmellP= PitW= WumpusOK = SafeV = VisitedG = Glitter

Page 26: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Exploring a Wumpus world

A= AgentB= BreezeS= SmellP= PitW= WumpusOK = SafeV = VisitedG = Glitter

Page 27: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Exploring a Wumpus world

A= AgentB= BreezeS= SmellP= PitW= WumpusOK = SafeV = VisitedG = Glitter

Page 28: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Exploring a Wumpus world

A= AgentB= BreezeS= SmellP= PitW= WumpusOK = SafeV = VisitedG = Glitter

Page 29: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Exploring a Wumpus world

A= AgentB= BreezeS= SmellP= PitW= WumpusOK = SafeV = VisitedG = Glitter

Page 30: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Exploring a Wumpus world

A= AgentB= BreezeS= SmellP= PitW= WumpusOK = SafeV = VisitedG = Glitter

Page 31: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Exploring a Wumpus world

A= AgentB= BreezeS= SmellP= PitW= WumpusOK = SafeV = VisitedG = Glitter

Page 32: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Exploring the Wumpus World

1. The KB initially contains the rules of the environment.

2. (a) [1,1] The first percept is [none, none,none,none,none], Move to safe cell e.g. 2,1

3. (b) [2,1] Breeze indicates that there is a pit in [2,2] or [3,1]Return to [1,1] to try next safe cell

Page 33: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Exploring the Wumpus World

4. [1,2] Stench in cell: wumpus is in [1,3] or [2,2]YET … not in [1,1]Thus … not in [2,2] or stench would have been detected in [2,1]Thus … wumpus is in [1,3]Thus … [2,2] is safe because of lack of breeze in [1,2]Thus … pit in [3,1]

Move to next safe cell [2,2]

Page 34: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Exploring the Wumpus World

5. [2,2] Detect nothing Move to unvisited safe cell e.g. [2,3]

6. [2,3] Detect glitter , smell, breezeThus… pick up goldThus… pit in [3,3] or [2,4]

Page 35: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

KB (example)

Wumpus World

1

2

3

4

1 2 3 4

Wumpus

Pit

Gold

Gold Hunter

Stench

Breeze

Dstart

Percept = list of 5 symbols [Stench, Breeze, Glitter, Gold, Waumpus]

Page 36: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

1

2

3

4

1 2 3 4

D

KB (example)

1

2

3

4

1 2 3 4

OK

OK

Wumpus World

1st percept at [1,1] = [none, none, none, none, none]p - Pit

w - WumpusOK = can move

Gold Hunter

Page 37: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

1

2

3

4

1 2 3 4

KB (example)

1

2

3

4

1 2 3 4

OK

p - Pitw - Wumpus? = possibility

Wumpus World

p?

p?

Page 38: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

1

2

3

4

1 2 3 4

KB (example)

1

2

3

4

1 2 3 4

OK

p - Pitw - Wumpus

Wumpus World

p?

p?

Page 39: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

1

2

3

4

1 2 3 4

D

KB (example)

1

2

3

4

1 2 3 4

2nd percept at [1,2] = [Stench, none, none, none, none]p - Pit

w - Wumpus! = positive

Wumpus World

p!

OK

w!

Page 40: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

1

2

3

4

1 2 3 4

D

KB (example)

1

2

3

4

1 2 3 4

p - Pitw - Wumpus

Wumpus World

p!

OKw!

OK

Page 41: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

1

2

3

4

1 2 3 4

D

KB (example)

1

2

3

4

1 2 3 4

p - Pitw - Wumpus

Wumpus World

p!

w!

OK

p?

p?

IN EACH CASE WHERE THE AGENT DRAWS A CONCLUSION FROM THE AVAILABLE INFORMATION, THAT CONCLUSION IS GURANTEED TO BE CORECT IF THE INFORMATION IS CORRECT

Page 42: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

CPSC 533 AI - Knowledge-bases

Representation, Reasoning & Logic• Knowledge Representation Languages

• Express knowledge in a computer-tractable manner.• Are described in terms of:

– Syntax: Configurations to represent sentences.– Semantics: Determines sentences meaning. i.e., define truth of a sentence in a world

• Logic: Language with well-defined syntax and semantics.•Logics are formal languages for representing information such that conclusions can be drawn• Inferencing

x sentences x+a sentences

inference a

agent

world y facts y+d facts

Page 43: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Logic and Rule-based Systems

• Logic: an important area of mathematics– lots of attention in 19th and early 20th centuries, in an attempt to find a

mathematical language for discussing the world

– Still many specialists in the area, especially in computer science: logic as computation

• many specialized logics – propositional logic: statements evaluate to either true or false

– predicate logic: statements contain variables that denote objects

– 2nd order logic: variables may denote whole logical formulae

– temporal logic: logic over time

– nonmonotonic logic: truth of statements can change as new information is obtained

• and many others

Page 44: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Logic and AI

• Logic is an important tool in AI– basis for rule-based systems: AI systems that represent knowledge and

problem solving using if--then rules

– logic permits us to formally represent the modeling of knowledge, and the manipulation of that knowledge

– a means to mathematically model formal modes of thinking

– applications: expert systems, Prolog

• Logic is a high-level, structured representation of knowledge– Although rule-based approaches to AI have been successful in many

problems, there are many who believe that it isn’t the end-all solution for AI.

– some problems in vision, learning, adaptation, are better solved using bottom-up approaches, eg. neural nets, genetic programming

Page 45: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Logic in general

Page 46: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Types of logic

Page 47: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Semantics

• Possible worlds might be thought of as (potentially) real environments that the agent might or might not be in

• Models are mathematical abstractions. The semantics of a logic defines the truth of each sentence with respect to each possible world

• A model of a sentence is an interpretation in which the sentence evaluates to True

• E.g., TodayIsTuesday -> ClassAI is true in model {TodayIsTuesday=True, ClassAI=True}

• We say {TodayIsTuesday=True, ClassAI=True} is a model of the sentence

Page 48: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Propositional Logic• Logic for knowledge representation.• Propositional logic.• Syntax of propositional logic.• Semantics of propositional logic:

– Truth tables.Additional:

• Tautologies and Contradictions• Entailment and Proof• Modus ponens and modus tollens• Soundness and Completeness• Equivalence relations

Page 49: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

What is logic?• Logic determines whether it is justified to reason from

given assumptions to a conclusion

– note: a logician cannot determine whether it rains

– he can conclude it rains from the assumptions if I hear drips on the roof, then it rains and I hear drips on the roof

Page 50: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

A Formal Approach• Any logic comes in three parts:

• syntax: what are the well-formed formulae (wffs)?

• semantics: what do formulae mean, how do we interpret them?

• deduction: how to mechanically formulate formulae, giving us for instance, the valid ones? Or is concerned with manipulating formulae according to certain rules (Also called the proof theory)

Page 51: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Propositional Logic

• The syntax of propositional logic is made up of propositions and connectives.

Page 52: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Propositions• A statement in some language that can be evaluated to

either true or false (but it cannot be both).

Example propositions:• It is raining.• Nawaz Sharif is the Indian Prime Minister.• 5 + 5 = 10.• Karachi is the capital of Pakistan.

Not propositions:• Where are you?• Oh no!• Liverpool is not.

Page 53: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Propositions

• Of the valid propositions, each can be evaluated to either true or false.

• e.g. It is true that it is raining• e.g. It is false that Nawaz Sharif is the Indian

Minister.

• An easy way to determine whether or not a statement is a proposition is to see if you can prefix it with “it is true that” and if it subsequently still makes sense.

Page 54: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Propositions

• we represent propositions using the propositional variables p, q, r etc.

• The previous examples of propositions are all atomic. We can combine these atomic propositions to form compound propositions…

Page 55: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Connectives

• Propositions are combined through connectives. The main connectives of propositional logic are:

• Conjunction (and): Λ

• Disjunction (or): v

• Negation (not): ¬ • Implication (if..then): → • Equivalence (if and only if): ↔

Page 56: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Connectives

• Categorizing propositional connectives:-

– nullary connectives T and F;

– unary connective ¬

– binary connectives Λ, v, →, ↔

Page 57: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

A BNF grammar of sentences in propositional logic

S := <Sentence> ;<Sentence> := <AtomicSentence> |

<ComplexSentence> ;<AtomicSentence> := "TRUE" | "FALSE" | "P" | "Q" | "S" ;<ComplexSentence> := "(" <Sentence> ")" | <Sentence> <Connective> <Sentence>

|"NOT" <Sentence> ;<Connective> := "NOT" | "AND" | "OR" |

"IMPLIES" | "EQUIVALENT" ;

Page 58: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Syntax: Conventions• Compound propositions may in turn be combined to form further

propositions e.g.:• p → (p V (q Λ ¬r))• Brackets are neither propositions nor connectives but are

used to avoid “Ambiguity”.• Assumed that they are left associative. Starting from the highest to

lowest precedence we have: ¬ Λ V → ↔

Thus:p → q stands for (p → q)p V q V r stands for ((p V q) V r )p V q Λ r stands for (p V (q Λ r))p Λ q ↔ r stands for ((p Λ q) ↔ r)¬p → q stands for (¬p → q)¬(p → q) stands for ¬(p → q)

Page 59: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Negation

Example:

¬p: “It is not raining outside” (or it is false that it is raining outside)

whereas

p : “It is raining outside” (or it is true that it is raining outside).

Page 60: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Semantics: Truth Tables

• We specify the semantics of propositional logic in truth tables for each connective.

• The truth table for negation (¬) is:

p ¬p

T

F

F

T

Page 61: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Conjunction

Example:

“roses are red” and “violets are blue” as:

p Λ q

p q p Λ q

T

T

F

F

T

F

T

F

T

F

F

F

Truth Table

Page 62: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Disjunction

“it is cloudy” or “it is sunny” as:

p V q p q p V q

T

T

F

F

T

F

T

F

T

T

T

F

Note: this is known as ‘inclusive or’ as opposed to ‘exclusive or’, as we’ll see...

Truth Table

Page 63: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Exclusive Disjunction

It can express that either “I will go to Hyderabad” or “I will go to Karachi” (but not both) as:

p V q

where p : “I will go to Hyderabad” and q : “I will go to Karachi”.

p q p V q

T

T

F

F

T

F

T

F

F

T

T

F

Truth Table: XOR

Page 64: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Material Implication

• For the implication truth table, p → q is false only when p is true and q is false.

• The last two cases, where p is false, we cannot say whether q will be true, but as we cannot say it will definitely be false, then we evaluate these cases to true.

Page 65: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Implication

Example:

Using the implication connective we can express that if “you give me your mobile phone” then “I will be your best friend”, as:

p → q

where p :“you give me your mobile phone” and q:“I will be your best friend”.

p q p → q

T

T

F

F

T

F

T

F

T

F

T

T

Truth Table

Page 66: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Implication• We need to be careful with → as it may not

quite capture our intuitions about implication.• In particular (taking the previous example),

p → q is true in the following situations:– I study hard and I get rich; or– I don't study hard and I get rich; or– I don't study hard and I don't get rich.

• Note the last two situations, where the implication is true regardless of the truth of p.

• The one thing we can say is that if I've studied hard but failed to become rich then the proposition is clearly false.

Page 67: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Equivalence OR Bi-implication

Example:

Can express: “Asim will get a first class degree” iff “his average is higher than 70%”, as:

p ↔ q

where p: “Asim will get a first class degree” and q:“his average is higher than 70%”.

p q p ↔ q

T

T

F

F

T

F

T

F

T

F

F

T

Truth Table

Page 68: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Compound Statements: Example• e.g.: ¬(p Λ ¬ q), p Λ q ↔ r

This table is derived by a number of steps:

p q

T

T

F

F

T

F

T

F

¬q (p Λ ¬q) ¬(p Λ ¬q)

F

T

F

T

F

T

F

F

T

F

T

T

Page 69: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Tautologies and Contradictions• For the truth tables of some formulae we find only Ts in

the last column. Such formulae are called “tautologies” (or valid formulae).

• Conversely, the truth tables of other formulae contain only Fs in the last column. Such formulae are called “contradictions” (or unsatisfiable formulae).

• Negation of a tautology is a contradiction, and vice versa.

• A formula that is neither a tautology nor a contradiction (i.e. contains both Fs and Ts in the last column) is known as a contingency (or a satisfiable formula).

Page 70: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Tautology Example

The truth table for: p → (p V q), is a tautology, as shown below.

p q

T

T

F

F

T

F

T

F

(p V q)

TT

TF

p → (p V q)

T

T

T

T

Page 71: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Contradiction Example

The truth table for: (p V q) Λ (¬p Λ ¬q), is a contradiction, as shown below.

p q

T

T

F

F

T

F

T

F

T

T

TF

(p V q) ¬p ¬q

F

F

T

T

F

T

F

T

¬p Λ ¬q

F

F

FT

(p V q) Λ (¬p Λ ¬q)

F

F

F

F

Page 72: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Contingency Example

The truth table for: (p Λ q) → ¬p , is a contingency, as shown below.

p q

T

T

F

F

T

F

T

F

(p Λ q)

T

F

F

F

¬p

F

F

TT

(p Λ q) → ¬p

F

T

TT

Page 73: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Assignments and Models

• Each line of a truth table represents a different possibility called an assignment of the truth values to the propositions.

• An assignment which makes the expression true is said to be a model for the expression.

• An assignment which makes the expression false is said to be a counter-example.

Page 74: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Argument and Proof in Propositional Logic

• An argument is a relationship between a set of propositions called premises and another proposition called the conclusion.

• Proof is intended to show deductively that an argument is sound (or valid). – An argument is sound iff it cannot be the case that its premises are

true and its conclusion is false.• An argument that is not sound is called a fallacy

• In addition to using truth tables, other forms of proof can be used, such as derivation rules (or proof rules).

Page 75: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Entailment and Proof

• To clarify the difference between entailment and proof:

• Entailment: if we have a set of formulae which are true, then as a logical consequence of this, some particular formula must also be true.

• Proof: a formula is provable (derivable) in some logical system if there are rules of inference that allow the formula to be derived by performing some operations on the formulae.

• Entailment is concerned with the semantics of formulae, proof is concerned with syntax only.

Page 76: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Entailment

Example: {¬q, p q} ╞ ¬p

means that ¬p is true, iff both ¬q and p q are true. Thus, the premises entail the conclusion. p q

T

T

F

F

T

F

T

F

F

F

T

T

F

T

F

T

T

F

T

T

(p q)¬p ¬q

Truth Table

Page 77: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Entailment

• Lines 1, 2 and 3 all have false truth assignments so we disregard them.

• This means that we are left with one assignment, where all assignments for the formula are true. – i.e. ¬q is true, p q is true and ¬p is true.

• Therefore, ¬p is entailed by {¬q, p q} , or more formally: {¬q, p q} ╞ ¬p

Page 78: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Modus Ponens

• (Latin term means) Affirming the antecedent • One particularly important derivation rule is

modus ponens, as shown on the previous slide.

• This takes the following form:p → q, p ╞ q

• Essentially, this argument states that given the premise p → q, and the premise p then we must conclude q.

Page 79: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Modus Ponens Example

• An example argument of the form modus ponens:

Premises: - If it is raining then ground is wet (p → q),- It is raining (p),

Conclusion:- Therefore, the ground is wet (q).

Page 80: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Modus Tollens

• Denying the consequent• Another important derivation rule is modus tollens

(also known as the contraposition) have the following form:

p → q, ¬q ╞ ¬p

• Example:

Premises: - If it is raining then the ground is wet (p → q),- The ground is not wet (¬q)

Conclusion:- Therefore, it is not raining (¬p).

Page 81: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Soundness and Completeness• Two important properties to consider in

inference systems are soundness and completeness.

• A “logic is sound”, with respect to its semantics, if only true formulae are derivable under the inference rules, from premises which themselves are all true. (i.e. the inference rules are correct)

• A “logic is complete” if all the true formulae are provable from the rules of the logic. (i.e. no other rules are required)

Page 82: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Equivalences• It is worth noting that there are a number of equivalences

between the logical connectives.

Thus: p q is equivalent to ¬p V qp Λ q is equivalent to ¬(¬p V ¬q)p V q is equivalent to ¬p q

• The symbol we use to denote equivalence is: ≡

e.g. p q ≡ ¬p V q etc.

Page 83: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Equivalencesp q p → q

T

T

F

F

T

F

T

F

T

F

T

T

p q ¬p ¬p V q

T

T

F

F

T

F

T

F

F

F

T

T

T

F

T

T

•We can check

to see if these

statements are equivalent

by examining

the appropriate

truth tables

Page 84: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Logical equivalence• To manipulate logical sentences we need some rewrite

rules.• Two sentences are logically equivalent iff they are true in

same models: α ≡ ß iff α╞ β and β╞ α

You need to know these !

Page 85: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Entailment

• Entailment means that one thing follows from another:

KB ╞ α• Knowledge base KB entails sentence α if and

only if α is true in all worlds where KB is true

– E.g., the KB containing “the Giants won” and “the Reds won” entails “Either the Giants won or the Reds won”

– E.g., x+y = 4 entails 4 = x+y– Entailment is a relationship between sentences (i.e.,

syntax) that is based on semantics

Page 86: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Logical entailment

KB iff KB is

valid

Page 87: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Models

• Models are formally structured worlds with respect to which truth can be evaluated.

• m is a model of a sentence if is true in m

• M() is the set of all models of

Page 88: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Models• Logicians typically think in terms of models, which are formally

structured worlds with respect to which truth can be evaluated

• We say m is a model of a sentence α if α is true in m

• M(α) is the set of all models of α

• Then KB ╞ α iff M(KB) M(α)

Page 89: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Entailment in the wumpus world

Situation after detecting nothing in [1,1], moving right, breeze in [2,1]

Consider possible models for KB assuming only pits

3 Boolean choices 8 possible models

Page 90: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Wumpus models

Page 91: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Wumpus models

• KB = wumpus-world rules + observations

Page 92: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Wumpus models

• KB = wumpus-world rules + observations• α1 = "[1,2] is safe", KB ╞ α1, proved by model checking

Page 93: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Wumpus models

• KB = wumpus-world rules + observations

Page 94: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Wumpus models

• KB = wumpus-world rules + observations• α2 = "[2,2] is safe", KB ╞ α2

Page 95: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Inference

• KB ├i α = sentence α can be derived from KB by procedure i

• Soundness: i is sound if whenever KB ├i α, it is also true that KB╞ α

• Completeness: i is complete if whenever KB╞ α, it is also true that KB ├i α

Page 96: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Syntax semanticsSentences Sentences

Entails

Facts FactsFollows

Semantics

Semantics

Representation

World

“KB entails ” KB sentence

“ is derived from KB by i” KB i An inference procedure that generate only entailed sentences is called sound (truth-preserving)Proof = record of operation of sound inference procedureProof theory specifies the sound inference steps for a logic.An inference procedure is complete if it can find a proof for any entailed sentence.

Page 97: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Syntax semantics

Page 98: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

• A proof system PS is a set of inference rules.• A proof is a sequence of sentences where each

sentence can be inferred from a previous sentence using one of the inference rules.

• A ├ PS B means that there exists a proof starting with A (which might be a set of sentences), ending with B, using the proof system PS.

Page 99: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Propositional logic: SemanticsEach model specifies true/false for each proposition symbol

E.g. P1,2 P2,2 P3,1

false true false

With these symbols, 8 possible models, can be enumerated automatically.

Rules for evaluating truth with respect to a model m:S is true iff S is false S1 S2 is true iff S1 is true and S2 is trueS1 S2 is true iff S1is true or S2 is trueS1 S2 is true iff S1 is false or S2 is true i.e., is false iff S1 is true and S2 is falseS1 S2 is true iff S1S2 is true andS2S1 is true

Simple recursive process evaluates an arbitrary sentence, e.g.,

P1,2 (P2,2 P3,1) = true (true false) = true true = true

Page 100: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

A simple knowledge base: Wumpus world sentences

Let Pi,j be true if there is a pit in [i, j].

Let Bi,j be true if there is a breeze in [i, j].

α: Is P2,2 entailed?

R1: P1,1

R4: B1,1

R5: B2,1

• "Pits cause breezes in adjacent squares"R2: B1,1 (P1,2 P2,1)

R3: B2,1 (P1,1 P2,2 P3,1)

(Question: what if instead of ? )

( R1 ^ R2 ^ R3 ^ R4 ^ R5 ) is the State of the Wumpus World

Page 101: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic
Page 102: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Truth tables for inference

KB is true if R1 through R5 are true, which is true in just 3 of 128 rows. In all

3 rows, P1,2 is false, so there is no pit in [1,2]. On the other hand, there might

(or might not) be a pit in [2,2]. Why not sure?All True means “Yes”; All False means “No”; Contingent means “Un-known”

Page 103: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic
Page 104: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Inference Examples

• KB is true when the rules hold—only for three rows in the table– The three rows are models of KB

• Consider the value of P1,2 for these 3 rows– P1,2 is false in all rows

(the rows are models of α1 = P1,2)– Thus, there is no pit in room [1,2]

• Consider the value of P2,2 for these 3 rows– P2,2 false in one row, true for 2 rows– Thus, there may be a pit in room [2,2]

Page 105: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Inference by enumeration• Depth-first enumeration (listing) of all models is sound and complete.

• For n symbols, time complexity is O(2n), space complexity is O(n)• PL-True = Evaluate a propositional logical sentence in a model • TT-Entails = Say if a statement is entailed by a KB • Extend = Copy the s and extend it by setting var to val; return

copy

Page 106: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Inference by enumeration

Page 107: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Inference by enumeration• Idea: Verify that for every model that KB is true, a is also true

by generating truth table and checking KB and a for all symbols

• TT-ENTAILS?(KB, a) returns true if KB entails a. Essentially enumerates at truth table checking that when KB is true a is true

• TT-CHECK-ALL(KB, a, symbols, []) returns true if KB is false in model or if KB is true and a is true in the model. Recall checking that KB entails a, when KB is false a can be true or false, only must be true when KB is true.

• PL-TRUE?(KB, model) returns true if KB is true in the model • PL-TRUE?(a, model) returns true if a is true in the model • EXTEND(P, true, model) returns a model with symbol P = true

added.• EXTEND(P, false, model) returns a model with symbol P =

false added.

Page 108: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Inference rules

• Logical inference is used to create new sentences that logically follow from a given set of predicate calculus sentences (KB).

• An inference rule is sound if every sentence X produced by an inference rule operating on a KB logically follows from the KB.

• An inference rule is complete if it is able to produce every expression that logically follows from (is entailed by) the KB.

Page 109: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Inference RulesSome patterns of reasoning are so common that instead of creating a truth table each time we see them, we can just establish their truth once, then reuse the pattern in any situation.

Page 110: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Soundness of the resolution inference rule

Page 111: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Suppose my knowledge base consists of the facts S T (P R)S TRAnd I need to prove P is entailed. I can use the rules of inference to do this..

S T (P R) , S , T And-IntroductionS T (P R) , S T Double Negation Elimination S T (P R) , (S T) Modus ponens(P R) And-Elimination P Double Negation Elimination P

So the rules of inference allow us to (sometimes) bypass having to build truth tables.

Page 112: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Example: Proof

Page 113: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Prove?

Page 114: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Proving things• The last sentence is the theorem (also called goal or query)

that we want to prove.• Example for the “weather problem”:

1 Hu Premise “It is humid”

2 HuHo Premise “If it is humid, it is hot”

3 Ho Modus Ponens(1,2) “It is hot”

4 (HoHu)R Premise “If it’s hot & humid, it’s raining”

5 HoHu And Introduction(1,2) “It is hot and humid”

6 R Modus Ponens(4,5) “It is raining”

Page 115: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Inference Rules for propositional logicInference Rules for propositional logic

Modus Ponens or Implication-Elimination: (From an implication

and the premise of the implication, you can infer the conclusion.)

And-Elimination: (From a conjunction, you can infer any of the

conjuncts.)

And-Introduction: (From a list of sentences, you can infer their

conjunction.)

Or-Introduction: (From a sentence, you can infer its disjunction

with anything else at all.)

Double-Negation Elimination: (From a doubly negated sentence,

you can infer a positive sentence.)

Unit Resolution: (From a disjunction, if one of the disjuncts is

false, then you can infer the other one is true.)

Figure 6.13 Seven inference for propositional logic. The unit resolution rule is a special case of the resolution rule, which in turn is a special case of the full resolution rule for first-order logic discussed in Chapter 9.

=> ,

i

1 2 … n

1 2 … n

1, 2, …, n

1 2 … n

i

,

,

=>

=> , =>

Resolution: (This is the most difficult. Because cannot be both true and

false, one of the other disjucts must be true in one of the premises. Or

equivalently, implication is transitive.)or equivalently

Page 116: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Assign: Q.1Syntax. Say whether each of the following is a sentence of Propositional Logic.

Page 117: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Assign: Q.2

• Translation. Consider a propositional language with three propositional constants –

• purple, mushroom, poisonous – each indicating the property suggested by its spelling.

• Using these propositional constants, encode the following English sentences as sentences in Propositional Logic.

(a) If a mushroom is purple, it is poisonous.(b) A mushroom is poisonous only if it is purple.(c) A mushroom is not poisonous unless it is purple.(d) A mushroom is poisonous if and only if it is

purple.

Page 118: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Assign: Q.3Validity, Satisfiability, Unsatisfiability. For each of the following sentences, Indicate whether it is valid, satisfiable, or unsatisfiable..

Page 119: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Assign Q4

(a). Represent each of these sentences in propositional logic.

– If I take Parallel Processing, I cannot take AI.– I must take either Urdu or Hindi but not both.– I must take at least two of ce306, ce313, and ce320.(b) .For each of the following well-formed formulae, use

truth tables to show whether it is valid, satisfiable, or unsatisfiable (for definitions read Notes on page 2 of this document)

• (P -> Q) ^ (P -> ¬Q)• (P -> Q) ^ (P -> R) ^ (¬Q ^ ¬ R) ^ P• (P -> Q) v (Q ->P)• ((P -> Q) ->(Q ->R)) <-> (P ->R)

Page 120: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

©Let P and Q be proposition symbols. Which of the following are models of ¬P _ Q ) ¬P ^ Q? (for model definition read notes on page 2 of this document)

– P = false, Q = false– P = false, Q = true– P = true, Q = false– P = true, Q = true

Page 121: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Assign: Q.5

• Given the following, can you prove that the unicorn is mythical? How about magical? Horned?– If the unicorn is mythical, then it is

immortal, but if it is not mythical, then it is a mortal mammal. If the unicorn is either immortal or a mammal, then it is horned. The unicorn is magical if it is horned.

Page 122: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Assign: Q.6

• Prove

CBBAAC },,{

Page 123: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Back to Wumpus World• KB = ( R1 ^ R2 ^ R3 ^ R4 ^ R5 )• Prove P2,1

Apply Bi-conditional Elim

R6: (B1,1 => (P1,2 V P2,1 )) ^ ( (P1,2 V P2,1 ) => B1,1 )Apply And Elim

R7: ( (P1,2 V P2,1 ) => B1,1 )Contrapositive

R8: ( B1,1 => (P1,2 V P2,1 ))

Apply Modus Ponens with R4 ( B1,1 )

R9: (P1,2 V P2,1 )Apply De Morgans

R10: P1,2 ^ P2,1

Page 124: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Hard and Monotonic

Note: Inference in propositional logic is NP-Complete

Searching for proofs in worst-case is no better than enumerating models.

Monotonicity of Logic: Set of entailed/derived sentences can only increase as information is added to the KB; means

Monotonicity: When we add new sentences to KB, all the sentences entailed by the original KB are still entailed.

Page 125: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Resolution

• Resolution inference rule (for CNF):

l1 … lk, m1 … mn

l1 … li-1 li+1 … lk m1 … mj-1 mj+1 ... mn

where li and mj are complementary literals.

E.g., P1,3 P2,2, P2,2

P1,3

• Resolution is sound and complete for propositional logic

Page 126: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Resolution ExampleAddR11: B1,2 R12: B1,2 (P1,1 P2,2 P1,3)(see the board for proof)From Logic Rules we can derive:

R13: P2,,2 R14: P1,3

Biconditional elim. To R3 and Modus Ponens to R5

R15: P1,1 P2,2 P3,1

Apply Resolution Rule using R13 and R15

R16: P1,1 P3,1

Apply Resolution Rule using R1 and R16

R17: P3,1

Page 127: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

ResolutionSoundness of resolution inference rule:

(l1 … li-1 li+1 … lk) li

mj (m1 … mj-1 mj+1 ...

mn)

(l1 … li-1 li+1 … lk) (m1 … mj-1 mj+1 ... mn)

Page 128: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Conjunctive Normal Form (CNF)

Conjunctive Normal Form (CNF) conjunction of disjunctions of literals clauses

E.g., (A B) (B C D)

Page 129: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Conversion to CNF: General Procedure

Example: B1,1 (P1,2 P2,1)

1. Eliminate , replacing α β with (α β)(β α).(B1,1 (P1,2 P2,1)) ((P1,2 P2,1) B1,1)

2. Eliminate , replacing α β with α β.(B1,1 P1,2 P2,1) ((P1,2 P2,1) B1,1)

3. Move inwards using de Morgan's rules and (often, but not here) double-negation:(B1,1 P1,2 P2,1) ((P1,2 P2,1) B1,1)

4. Apply distributivity law ( over ) and flatten:(B1,1 P1,2 P2,1) (P1,2 B1,1) (P2,1 B1,1)

Page 130: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Resolution algorithm

• Proof by contradiction, i.e., show KBα unsatisfiable

Page 131: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Resolution example

• KB = (B1,1 (P1,2 P2,1)) B1,1 α = P1,2

Page 132: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Forward and backward chaining• Horn Form (restricted)

KB = conjunction of Horn clauses– Horn clause =

• proposition symbol; or• (conjunction of symbols) symbol

– E.g., C ( B A) (C D B)• Modus Ponens (for Horn Form): complete for Horn

KBsα1, … ,αn, α1 … αn β

β

• Can be used with forward chaining or backward chaining.

• These algorithms are very natural and run in linear time

Page 133: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic
Page 134: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

The party example

• If Alex goes, then Beki goes: A B

• If Chris goes, then Alex goes: C A

• Beki does not go: not B

• Chris goes: C

• Query: Is it possible to satisfy all these conditions?

– Should I go to the party?

Page 135: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Example of proof by Refutation • Assume the claim is false and prove inconsistency:

– Example: can we prove that Chris will not come to the party?

• Prove by generating the desired goal.• Prove by refutation: add the negation of the goal

and prove no model• Proof:

• Refutation:

AC

BBA

,

CinferAACfrom

AinferBBAfrom

,

,

)( CACBBA

AC

Page 136: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic
Page 137: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic
Page 138: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic
Page 139: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic
Page 140: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Horn sentences

• A Horn sentence or Horn clause has the form:P1 P2 P3 ... Pn Q

or alternativelyP1 P2 P3 ... Pn Q

where Ps and Q are non-negated atoms• To get a proof for Horn sentences, apply Modus

Ponens repeatedly until nothing can be done• We will use the Horn clause form later

(P Q) = (P Q)

Page 141: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Propositional logic is a weak language

• Hard to identify “individuals” (e.g., Mary, 3)• Can’t directly talk about properties of individuals or relations

between individuals (e.g., “Bill is tall”)• Generalizations, patterns, regularities can’t easily be

represented (e.g., “all triangles have 3 sides”)

Page 142: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

The “Hunt the Wumpus” agent• Some atomic propositions:

S12 = There is a stench in cell (1,2)B34 = There is a breeze in cell (3,4)W22 = The Wumpus is in cell (2,2)V11 = We have visited cell (1,1)OK11 = Cell (1,1) is safe.etc

• Some rules:(R1) S11 W11 W12 W21(R2) S21 W11 W21 W22 W31(R3) S12 W11 W12 W22 W13(R4) S12 W13 W12 W22 W11etc

• Note that the lack of variables requires us to give similar rules for each cell

Page 143: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

After the third move

• We can prove that the Wumpus is in (1,3) using the four rules given.

• See R&N section 7.5

Page 144: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Proving W13• Apply MP with S11 and R1:

W11 W12 W21 • Apply And-Elimination to this, yielding 3 sentences:

W11, W12, W21 • Apply MP to ~S21 and R2, then apply And-elimination:

W22, W21, W31 • Apply MP to S12 and R4 to obtain:

W13 W12 W22 W11• Apply Unit resolution on (W13 W12 W22 W11) and W11:

W13 W12 W22• Apply Unit Resolution with (W13 W12 W22) and W22:

W13 W12• Apply UR with (W13 W12) and W12:

W13• QED

Page 145: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Problems with the propositional Wumpus hunter

• Lack of variables prevents stating more general rules–We need a set of similar rules for each cell

• Change of the KB over time is difficult to represent–Standard technique is to index facts with the time

when they’re true–This means we have a separate KB for every time

point

Page 146: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Summary• The process of deriving new sentences from old one is called inference.

– Sound inference processes derives true conclusions given true premises– Complete inference processes derive all true conclusions from a set of

premises

• A valid sentence is true in all worlds under all interpretations

• If an implication sentence can be shown to be valid, then—given its premise—its consequent can be derived

• Different logics make different commitments about what the world is made of and what kind of beliefs we can have regarding the facts– Logics are useful for the commitments they do not make because lack of

commitment gives the knowledge base engineer more freedom

• Propositional logic commits only to the existence of facts that may or may not be the case in the world being represented– It has a simple syntax and simple semantics. It suffices to illustrate the

process of inference– Propositional logic quickly becomes impractical, even for very small worlds

Page 147: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Horn cluases

• A Horn clause is a disjunction of literals of which at most one is positive– An example: (!L1,1 v !Breeze V B1,1)– An Horn sentence can be written in the form

P1^P2^…^Pn=>Q, where Pi and Q are nonnegated atoms

– Deciding entailment with Horn clauses can be done in linear time in size of KB

– Inference with Horn clauses can be done thru forward and backward chaining

• Forward chaining is data driven• Backward chaining works backwards from the query, goal-

directed reasoning

Page 148: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Forward chaining

• Idea: fire any rule whose premises are satisfied in the KB,– add its conclusion to the KB, until query is found

• Forward chaining is sound and complete for Horn KB

AND gate

OR gate

Page 149: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Forward chaining example

“AND” gate

“OR” Gate

Page 150: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Forward chaining example

Page 151: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Forward chaining example

Page 152: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Forward chaining example

Page 153: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Forward chaining example

Page 154: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Forward chaining example

Page 155: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Forward chaining example

Page 156: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Backward chaining

Idea: work backwards from the query q• check if q is known already, or• prove by BC all premises of some rule concluding q• Hence BC maintains a stack of sub-goals that need to be

proved to get to q.

Avoid loops: check if new sub-goal is already on the goal stack

Avoid repeated work: check if new sub-goal1. has already been proved true, or2. has already failed

Page 157: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Backward chaining example

Page 158: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Backward chaining example

Page 159: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Backward chaining example

Page 160: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Backward chaining example

we need P to proveL and L to prove P.

Page 161: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Backward chaining example

Page 162: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Backward chaining example

Page 163: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Backward chaining example

Page 164: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Backward chaining example

Page 165: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Backward chaining example

Page 166: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Backward chaining example

Page 167: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Forward vs. backward chaining

• FC is data-driven, automatic, unconscious processing,– e.g., object recognition, routine decisions

• May do lots of work that is irrelevant to the goal

• BC is goal-driven, appropriate for problem-solving,– e.g., Where are my keys? How do I get into a PhD program?

• Complexity of BC can be much less than linear in size of KB

Page 168: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Conversion to CNF

B1,1 (P1,2 P2,1)

• Eliminate , replacing ß with ( ß)(ß ).• (B1,1 (P1,2 P2,1)) ((P1,2 P2,1) B1,1)

• Eliminate , replacing ß with ß.– (B1,1 P1,2 P2,1) ((P1,2 P2,1) B1,1)

• Move inwards using de Morgan's rules and double-negation:– (B1,1 P1,2 P2,1) ((P1,2 P2,1) B1,1)

• Apply distributive law ( over ) and flatten:– (B1,1 P1,2 P2,1) (P1,2 B1,1) (P2,1 B1,1)

Page 169: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

AN AGENT FOR THE WUMPUS WORLD

On each turn, the agent's percepts are converted into sentences and entered into the knowledge base, along with some valid sentences that are entailed by the percept sentences. Let us assume that the symbol

Page 170: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

The agent needs to know this for each square in the world, but here we just show sentences for three relevant squares, labeling each sentence with a rule number:

Another useful fact is that if there is a stench in [1,2], then there must be a wumpus in [1,2] or in one or more of the neighboring squares. This fact can be represented by the sentence

Page 171: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Given these sentences, we will now show how an agent can mechanically conclude W~,s. All the agent has to do is construct the truth table for KB ~ W,,3 to show that this sentence is valid. There are 12 propositional symbols,° so

the truth table will have 2'2 = 4096 rows, and every row in which the sentence KB is true also has Wt,3 true. Rather than show a114096 rows, we use inference rules instead, but it is important to recognize that we could have done it in one (long) step just by following the truth-table algorithm.

First, we will show that the wumpus is not in one of the other squares, and then conclude by elimination that it must be in [1,3]:

1. Applying Modus Ponens with ~5~,~ and the sentence labeled R~, we obtain

2. Applying And-Elimination to this, we obtain the three separate sentences

Page 172: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic
Page 173: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Inference-based agents in the wumpus world

A wumpus-world agent using propositional logic:

P1,1 (no pit in square [1,1])

W1,1 (no Wumpus in square [1,1])

Bx,y (Px,y+1 Px,y-1 Px+1,y Px-1,y) (Breeze next to Pit)

Sx,y (Wx,y+1 Wx,y-1 Wx+1,y Wx-1,y) (stench next to Wumpus)

W1,1 W1,2 … W4,4 (at least 1 Wumpus)

W1,1 W1,2 (at most 1 Wumpus)

W1,1 W8,9 …

64 distinct proposition symbols, 155 sentences

Page 174: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

• KB contains "physics" sentences for every single square

• For every time t and every location [x,y],

Lx,y FacingRightt Forwardt Lx+1,y

• Rapid proliferation of clauses.

First order logic is designed to deal with this through the

introduction of variables.

Expressiveness limitation of propositional logic

t+1t

position (x,y) at time t of the agent.

Page 175: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Pros and cons of propositional logic

Propositional logic is declarative Propositional logic allows partial/disjunctive/negated information

– (unlike most data structures and databases) Propositional logic is compositional:

– meaning of B1,1 P1,2 is derived from meaning of B1,1 and of P1,2

Meaning in propositional logic is context-independent– (unlike natural language, where meaning depends on context)

Propositional logic has very limited expressive power– (unlike natural language)– E.g., cannot say "pits cause breezes in adjacent squares“

• except by writing one sentence for each square

––

Page 176: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Propositional logic is too weak a representational language

- Too many propositions to handle, and truth table has 2n rows. E.g. in the wumpus world, the simple rule “don’t go forward if the wumpus is in front of you” requires 64 rules ( 16 squares x 4 orientations for agent)

- Hard to deal with change. Propositions might be true at times but not at others. Need a proposition Pi

t for each time step because one should not always forget what held in the past (e.g. where the agent came from)

- don’t know # time steps- need time-dependent versions of rules

- Hard to identify “individuals”, e.g. Mary, 3

- Cannot directly talk about properties of individuals or relations between individuals, e.g. Tall(bill)

- Generalizations, patterns cannot easily be represented “all triangles have 3 sides.”

Page 177: Logic and Knowledge Base Systems. Outline Knowledge-based systems Wumpus world Logic in general - models and entailment Propositional (Boolean) logic

Summary• Logical agents apply inference to a knowledge base to derive new

information and make decisions• Basic concepts of logic:

– syntax: formal structure of sentences– semantics: truth of sentences wrt models– entailment: necessary truth of one sentence given another– inference: deriving sentences from other sentences– soundness: derivations produce only entailed sentences– completeness: derivations can produce all entailed sentences

• Wumpus world requires the ability to represent partial and negated information, reason by cases, etc.

• Resolution is complete for propositional logicForward, backward chaining are linear-time, complete for Horn clauses

• Propositional logic lacks expressive power