CS 4633/6633 Artificial Intelligence
Artificial Intelligence
Introduction to knowledge representation,
logic and resolution theoremproving
CS 4633/6633 Artificial Intelligence
Knowledge Representation Hypothesis
A widelyheld (although controversial) view among
AI researchers is that for a system to be
“artificially intelligent,” it must contain a
component that can be understood as linguistic
(i.e., that can be expressed in some language)
such that:
– this component contains the knowledge of the
system, and
– this component drives the intelligent behavior
of the system
CS 4633/6633 Artificial Intelligence
KnowledgeBased System
Consists of:
Knowledge Base (KB):
– a set of sentences representing facts about the
world expressed in some knowledge
representation language
Inference Engine
– infers new sentences from the sentences in the
knowledge base
CS 4633/6633 Artificial Intelligence
Knowledge Representation Language
Virtually all knowledge representation
languages are based, in some way, on formal
logic (propositional logic, predicate logic,
temporal logic, etc.)
Formal logic shares with English the
advantage that it can express facts about the
world. It shares with computer programming
languages the advantage of being clear and
unambiguous.
CS 4633/6633 Artificial Intelligence
Logic
A logic is a formal language that
includes:
– Syntax = rules for describing legal
sentences
– Semantics = how sentences represent
facts in the world
– Proof theory = rules for infering sentences
from other sentences
CS 4633/6633 Artificial Intelligence
Syntax of Propositional Logic
TRUE and FALSE are sentences
The propositional variables P, Q, R, … are sentences
Parentheses around a sentence forms a sentence
Combining sentences with the following logical
connectives forms a sentence
symbol example name sentence name
∧ P ∧ Q and conjunction
∨ P ∨ Q or disjunction
¬ ¬P not negation
P
Q implies implication
⇔ P ⇔ Q is equivalent equivalence (biconditional)
CS 4633/6633 Artificial Intelligence
Semantics of propositional logic
An interpretation associates each propositional
variable with a proposition about the world. Because
propositions are either true or false, we can also
specify an interpretation by assigning the truth values
TRUE and FALSE directly to propositional variables,
regardless of which proposition each denotes.
Each logical connective is defined by a truth table
Given an interpretation of propositional variables, we
can use a truth table to compute the truth value of
any sentence under that interpretation
CS 4633/6633 Artificial Intelligence
Satisfiability, Validity, and Entailment
A sentence is satisfiable (or consistent) if it is
true under some intepretation
A sentence is valid (or a tautology) if it is true
under every possible interpretation
A sentence is inconsistent (or unsatisfiable or a
contradiction) if it is false under every possible
interpretation
Sentence P entails sentence Q, written P = Q, if Q
is true whenever P is true
In propositional logic, truth tables can be used to
test for entailment: P = Q if and only if the
sentence P=>Q is valid.
CS 4633/6633 Artificial Intelligence
Practice
Use a truth table to show that P
Q, P = Q
CS 4633/6633 Artificial Intelligence
Formal System
Formal language
Set of axioms
Set of inference rules
Proof (or derivation)
– a sequence of sentences such that every
sentence in the sequence is an axiom or can
be derived from sentences earlier in the
sequence by applying rules of inference
– the notation KB  p indicates that sentence p
can be inferred from the set of sentences KB
CS 4633/6633 Artificial Intelligence
Rules of inference in
propositional logic
Modus ponens
P
Q, P  Q
Unit resolution
P∨Q, ¬ Q  P
Resolution
P∨Q, ¬ Q∨R  P∨R
CS 4633/6633 Artificial Intelligence
Proof and Entailment
Proof is a syntactic notion. In constructing proofs,
we don’t consider the meaning of sentences.
KB  p means we can prove/derive p from KB
Entailment is a semantic notion. It depends on the
meaning we give to logical connectives by
associating them with truth tables.
KB = p means that p is entailed by KB, that is,
whenever KB is true the sentence p is true
Although we can show entailment by truth tables,
we can usually construct proofs more efficiently.
CS 4633/6633 Artificial Intelligence
Properties of a Formal System
Sound
– if KB  p, then KB = p
Complete
– if KB = p, then KB  p
Decidable
– there is an algorithm that can decide in finite
time whether any proposition is a theorem or
not
CS 4633/6633 Artificial Intelligence
Resolution Refutation
By itself, resolution is a sound rule of inference
but not complete.
However, a technique called resolution refutation
is sound and complete.
Resolution refutation is a form of proof by
contradiction. It shows that KB = p by showing
that the set of clauses KB ∪ {¬p} is unsatisfiable.
To use resolution refutation, we first convert
sentences to conjunctive normal form
CS 4633/6633 Artificial Intelligence
Conjunctive Normal Form
A literal is a propositional variable or its negation
A clause is a disjunction of literals
A sentence written as a conjunction of clauses is
said to be in conjunctive normal form
Example:(¬ P ∨ Q ∨ R) ∧ (P ∨ ¬ R ∨ ¬ S) ∧ (P ∨ ¬ Q)
Any sentence in propositional logic can be written
in conjunctive normal form (CNF)
Resolution refutation requires sentences to be in
conjunction normal form
CS 4633/6633 Artificial Intelligence
Conversion to CNF
Remove biconditional using following equivalence
P⇔ Q becomes (P
Q)∧ (Q
P)
Remove implication using following equivalence
P
Q becomes ¬ P∨Q
DeMorgan’s laws
¬(P∨Q) becomes ¬P∧ ¬Q
¬(P∧ Q) becomes ¬P ∨¬Q
Distributive laws
P∧ (Q∨R) becomes (P∧ Q)∨(P∧ R)
P∨(Q∧ R) becomes (P∨Q)∧ (P∨R)
Also, associative laws and eliminate double
negation
CS 4633/6633 Artificial Intelligence
Practice
Convert the following sentences to CNF
¬ Q
(P ∧ R)
(P ∨ ¬Q)
R
CS 4633/6633 Artificial Intelligence
Resolution Refutation
To prove KB  p,
– Convert ¬p and the clauses in KB to CNF and
combine into a single set of clauses, Γ
– Loop
»Find two clauses in Γ to which the resolution rule
applies, but has not previously been used. If can’t
be found, return “p cannot be proven.”
»Apply the resolution rule to create a new clause. If
the new clause is the empty clause (that is, a
contradiction), return “p has been proven.”
»Add the new clause to Γ.
CS 4633/6633 Artificial Intelligence
Practice
Express the following statements in
propositional logic
– If it is hot and humid, then it is raining.
– If it is humid, then it is hot.
– It is humid.
Use resolution refutation to prove the
following statement
– It is raining.
CS 4633/6633 Artificial Intelligence
Proof Tree
False
R ¬R
M
¬M ∨ R
¬H ∨ ¬M ∨ R ¬M ∨ H
CS 4633/6633 Artificial Intelligence
Comments about Resolution Refutation
Resolution refutation will terminate with the empty
clause if KB = p. It will terminate without producing
the empty clause if KB ≠ p.
Resolution is a statespace search algorithm! A state
is a set of clauses. The operator is resolution on two
clauses. A proof has a tree structure with p as the
root and clauses in the original KB as leaves.
Intelligent search strategies can find proofs efficiently.
Although inference in propositional logic is NP
complete, resolution refutation is usually more
efficient than using truth tables.
Enter the password to open this PDF file:
File name:

File size:

Title:

Author:

Subject:

Keywords:

Creation Date:

Modification Date:

Creator:

PDF Producer:

PDF Version:

Page Count:

Preparing document for printing…
0%
Comments 0
Log in to post a comment