Formal Presentation of Prop and Pred Logic
Formal Presentation of Prop and Pred Logic
! Syntax
! Semantics
! Models
! Inference Rules
! Complexity
10
5
BNF Grammar Propositional Logic
Sentence → AtomicSentence | ComplexSentence
AtomicSentence → True | False | P | Q | R | ...
ComplexSentence → (Sentence )
| Sentence Connective Sentence
| ¬ Sentence
Connective → ∧|∨|⇒|⇔
11
12
6
• propositions can be interpreted as any facts you want
– e.g., P means "robins are birds", Q means "the Mike is dead",
etc.
• meaning of complex sentences is derived from the meaning
of its parts
– one method is to use a truth table
– all are easy except P => Q
• this says that if P is true, then I claim that Q is true; otherwise I make no
claim;
• P is true and Q is true, then P => Q is true
• P is true and Q is false, then P => Q is false
• P is false and Q is true, then P => Q is true
• P is false and Q is false, then P => Q is true
13
14
7
Truth Tables for Connectives in
Propositional Logic
P Q ¬P P∧Q P∨Q P⇒Q P⇔Q
False False True False False True True
False True True False True True False
True False False False True False False
True True False True True True True
15
Propositional Calculus
• properly formed statements that are either True or False
• syntax
– logical constants, True and False
– proposition symbols such as P and Q
– logical connectives: and ^, or V, equivalence <=>, implies =>
and not ~
– parentheses to indicate complex sentences
• sentences in this language are created through application
of the following rules
– True and False are each (atomic) sentences
– Propositional symbols such as P or Q are each (atomic)
sentences
– Enclosing symbols and connective in parentheses yields
(complex) sentences, e.g., (P ^ Q) 16
8
Complex Sentences in Propositional Calculus
• Combining simpler sentences with logical connectives
yields complex sentences
– conjunction
• sentence whose main connective is and: P ^ (Q V R)
– disjunction
• sentence whose main connective is or: A V (P ^ Q)
– implication (conditional)
• sentence such as (P ^ Q) => R
• the left hand side is called the premise or antecedent
• the right hand side is called the conclusion or consequent
• implications are also known as rules or if-then statements
– equivalence (biconditional)
• (P ^ Q) <=> (Q ^ P)
– negation
• the only unary connective (operates only on one sentence)
17
• e.g., ~P
Inference Rules
They are more efficient than truth tables.
• Modus ponens
• Modus tollens
• Syllogism
• Resolution
• And-elimination
• And-introduction
• Or-introduction
• Double-negation elimination
• Unit resolution
18
9
Modus ponens
• eliminates =>
(X => Y), X
______________
Y
– If it rains, then the streets will be wet.
– It is raining.
– Infer the conclusion: The streets will be wet.
(affirms the antecedent)
19
Modus tollens
(X => Y), ¬Y
_______________
¬X
– If it rains, then the streets will be wet.
– The streets are not wet.
– Infer the conclusion: It is not raining.
10
Syllogism
• chain implications to deduce a conclusion
(X => Y), (Y => Z)
_____________________
(X => Z)
21
Resolution
(X v Y), (~Y v Z)
_________________
(X v Z)
• basis for the inference mechanism in the
Prolog language and some theorem provers
22
11
Complexity issues
• truth table enumerates 2n rows of the table for any proof
involving n symbol
– it is complete
– computation time is exponential in n
• checking a set of sentences for satisfiability is NP-complete
– but there are some circumstances where the proof only involves a
small subset of the KB, so can do some of the work in polynomial
time
– if a KB is monotonic (i.e., even if we add new sentences to a KB,
all the sentences entailed by the original KB are still entailed by
the new larger KB), then you can apply an inference rule locally
(i.e., don't have to go checking the entire KB)
23
Inference Methods 1
• deduction sound
– conclusions must follow from their premises; prototype of logical
reasoning
• induction unsound
– inference from specific cases (examples) to the general
• abduction unsound
– reasoning from a true conclusion to premises that may have caused
the conclusion
• resolution sound
– find two clauses with complementary literals, and combine them
• generate and test unsound
– a tentative solution is generated and tested for validity
– often used for efficiency (trial and error) 24
12
Inference Methods 2
• default reasoning unsound
– general or common knowledge is assumed in the absence of
specific knowledge
• analogy unsound
– a conclusion is drawn based on similarities to another situation
• heuristics unsound
– rules of thumb based on experience
• intuition unsound
– typically human reasoning method (no proven theory)
• nonmonotonic reasoning unsound
– new evidence may invalidate previous knowledge
• autoepistemic unsound
25
– reasoning about your own knowledge (self knowledge)
Predicate Logic
• Additional concepts (in addition to propositional
logic)
– complex objects
• terms
– relations
• predicates
• quantifiers
– syntax
– semantics
– inference rules
– usage
26
13
Objects in Predicate Logic
• distinguishable things in the real world
– people, cars, computers, programs, ...
• frequently includes concepts
– colors, stories, light, money, love, ...
• properties
– describe specific aspects of objects
• green, round, heavy, visible,
– can be used to distinguish between objects
27
14
Syntax of Predicate Logic
• also based on sentences, but more complex
– sentences can contain terms, which represent objects
• constant symbols: A, B, C, Square
– stand for unique objects (in a specific context)
• predicate symbols: Adjacent-to, Younger-than, ...
– describes relations between objects
• function symbols: SQRT, Cosine, …
– the given object is related to exactly one other object
29
30
15
BNF Grammar Predicate Logic
Sentence → AtomicSentence
| Sentence Connective Sentence
| Quantifier Variable, ... Sentence
| ¬ Sentence | (Sentence)
AtomicSentence → Predicate(Term, …) | Term = Term
Term → Function(Term, …) | Constant | Variable
Connective → ∧|∨|⇒|⇔
Quantifier →∀|∃
Constant → A, B, C, X1 , X2, Jim, Jack
Variable → a, b, c, x1 , x2, counter, position
Predicate → Adjacent-To, Younger-Than,
Function → Sqrt, Cosine
32
16
Unification in Predicate Logic
• The process of finding substitution for variables to
make arguments match is called unification.
– a substitution is the simultaneous replacement of
variable instances by terms, providing a “binding” for
the variable
– without unification, the matching between rules would
be restricted to constants
– ~F(y) V H(a,y), F(b) (b can be substitute for y)
– unification itself is a very powerful and possibly
complex operation
• in many practical implementations, restrictions are imposed
33
34
17
Existential Quantification in Predicate Logic
35
36
18