9 - Duke University
Download
Report
Transcript 9 - Duke University
Computability and Complexity
9-1
Logic Reminder (Cnt’d)
Computability and Complexity
Andrei Bulatov
Computability and Complexity
• Propositional logic
• Conjunctive normal forms
• Predicates, functions and quantifiers
• Terms
• Formulas
9-2
Computability and Complexity
Models (First Order Semantics)
Let be a vocabulary. A model appropriate to is a pair M=(U,)
consisting of
• the universe of M, a non-empty set U
• the interpretation, a function that assigns
- to each predicate symbol P a concrete predicate P M on U
M
- to each function symbol f a concrete function f on U
• the equality predicate symbol is always assigned the equality
predicate on U
9-3
Computability and Complexity
Meaning of terms
Let t be a term and let T be an assignment of variables in t with
values from U
• if t is a variable, say, t = X, then t T is defined to be X T
• if t f (t1 ,, tk ) then t T is defined to be f M (t1T , , t T )
k
9-4
Computability and Complexity
A model M and a variable assignment T satisfy a formula
(written M, T |= ) if
• if P(t1 ,, tk ) is an atomic formula, then M,T |= if
P M (t1T , , t kT ) 1
• if = then M,T |= if M,T |
• if 1 2 then M,T |= if M , T | 1 and M , T | 2
• if 1 2 then M,T |= if M , T | 1 or M , T | 2
• if = X then M,T |= if, for every u U,
T X u |
where T X u is the assignment that is identical to T,
except that T X u( X ) u
• if = X then M,T |= if, there exists u U such that
T X u |
9-5
Computability and Complexity
Examples
A model of the vocabulary of graph theory is a pair G=(U,E), where
U is a set and E is a binary relation, that is a graph
A model of the vocabulary of number theory
U = N, the predicate and function symbols have their usual sense
U = Z, the predicate and function symbols have their usual sense
U = Q, the predicate and function symbols have their usual sense
U = R, the predicate and function symbols have their usual sense
U = C, the predicate and function symbols have their usual sense
U = {0,…,n-1}, the predicate symbols have their usual sense, the
function symbols are interpreted by operations modulo n
9-6
Computability and Complexity
9-7
Types of First Order Formulas
A formula is said to be valid if M,T for any model M and assignment T
A formula is said to be satisfiable if M,T for some M and T
A formula is said to be unsatisfiable if M,T for no M and T
valid
unsatisfiable
satisfiable
Formulas and are said to be equivalent, , if they have the
same satisfying models and assignments
Computability and Complexity
Valid Formulas
Boolean tautologies
X Y ( E ( X ,Y ) E ( X ,Y ))
Equality
X ( X 1 X 1)
( X X 2 Y ) (( Z X X 2 ) ( Z Y ))
Quantifiers
P(1, X ) (Y P(Y , X ))
(Y P(Y , X )) P(1, X )
9-8
Computability and Complexity
Models and Theories
Let be a vocabulary.
For a sentence (set of sentences) , Mod() denotes the class of all
models satisfying
For a model (set of models) M, Th(M) denotes the set all sentences
satisfied by M (each model from M)
It is called the elementary theory of M
If Th(Mod(1 ,, k )) then is called a valid consequence of
1 ,, k written 1 ,, k |
9-9
Computability and Complexity
Examples
(X ( X X X )) | (X ( X X X X ))
(X Y (( X Y ) (( E ( X , Y ) E (Y , X )))) |
((X 1 X 2 X n (( X 1 X 2 ) ( X 1 X 3 ) ( X n1 X n )))
(Y1 Y2 Yn ((Y1 Y2 ) (Y1 Y3 ) (Yn1 Yn )
E (Y1 , Y2 ) E (Yn1 , Yn ))))
Let be a first order description of a computer chip,
states that a deadlock never occurs
is the question “Can the chip be deadlocked?”
9-10
Computability and Complexity
Proof Systems
A proof system consists of
•
a set axioms 1 , 2 ,
•
a collection of proof rules
1 , 2 ,, k |
A proof is a sequence of formulas 1 , 2 , , where every formula is
Either an axiom or obtained from preceding formulas using a rule
A theorem is any formula occurring in a proof
9-11
Computability and Complexity
Propositional Logic
Axioms:
the main tautologies
Proof rules:
• substitution
Let and be propositional formulas and let | X denote
the formula obtained from by replacing every occurrence of
X with .
Then | | X is a proof rule
• modus ponens
, |
Theorems:
the tautologies
9-12
Computability and Complexity
9-13
Predicate Calculus
Let be a vocabulary with plenty of predicate and function symbols
Axioms:
AX0 Any Boolean tautology
AX1 Any expression of the following forms:
AX1a: t=t
AX1b: (t1 t '1 tk t 'k ) ( f (t1 ,, tk ) f (t '1 ,, t 'k ))
AX1c: (t1 t '1 tk t 'k ) ( P(t1 ,, tk ) P(t '1 ,, t 'k ))
AX2: Any expression of the form (X ) |X t
AX3: Any expression of the form X , with X not free in
AX4: Any expression of the form (X ( ) ((X ) (X))
Proof rules:
Theorems:
modus ponens
valid first order formulas
Computability and Complexity
Gödel’s Completeness Theorem
Theorem
Let be a set of formulas and a formula.
Then if and only if
9-14
Computability and Complexity
9-15
Resolution
Axioms:
a set of disjunctions of atomic formulas
(a set of clauses)
Proof rules:
• resolution
(P ), (P )
, R ( )
C (X C), D (X D)
C, D R (C D)
(( ) is called the resolvent of and )
Computability and Complexity
Satisfiability
Satisfiability
Instance: A conjunctive normal form .
Question: Is satisfiable?
k-Satisfiability
Instance: A conjunctive normal form every clause of which
contains exactly k literals.
Question: Is satisfiable?
9-16
Computability and Complexity
9-17
Theorem
A Satisfiability instance, , is unsatisfiable if and
only if R
Example:
(1)
(2)
(3)
(4)
(5)
X Y , X Z , Y Z , X Z , X Y
Proof:
X Z,
Y Z ,
X Y , X Y , X Z ,
X X X , X Y ,
X X X,