180 likes | 319 Views
Completeness and Expressiveness. Consistency: a syntactic definition, related to the proof system. A set of formulas is consistent if there is no formula such that |-- and |--( F). Equivalent definition: |-/- F . Equivalently: is in consistent if for each , |--. Lemma.
E N D
Consistency: a syntactic definition, related to the proof system. • A set of formulas is consistent if there is no formula such that |-- and |--(F). • Equivalent definition: |-/-F. • Equivalently: is inconsistent if for each , |--.
Lemma • |-- iff {(F)} is inconsistent. • Proof: if {(F)} is inconsistentthen {(F)} |--. Also, {} |--.(why?)Therefore, by “proof by cases”, |--.Conversely, if |-- then from {(F)} we can prove F (using MP), thus it is inconsistent. • Consequence: |-/- iff {(F)} consistent.
Claim (without proof) • Our first order logic proof system is sound and complete. • That is: |-- if and only if |== • (What is the meaning of |==?)
Therefore: • |-- if and only if there is some finite 0 such that 0|-- (why?) • Thus: |== if and only if there is some finite 0 such that 0|== (why?)
More connections • |== iff {(F)} is unsatisfiable(why?) • Thus: {(F)} is unsatisfiable iff |== iff |-- iff {(F)} is inconsistent. • If is consistent then either {(F)} or {} is consistent.Proof: if both are inconsistent, then we can prove from either {(F)} or {}. Hence, we can prove using “proof by cases”, from . Contradiction.
More connections • In a similar way: {} is unsatisfiable iff |==(F) iff |--(F) iff {} is inconsistent. • Assuming soundness and completeness: is inconsistent iff |--F iff |==F iff is not satisfiable. • Thus: given soundness and completeness of the proof system: consistency = satisfiability!
Suppose we proved that is consistent is satisfiable • We want to prove from this “completeness”, i.e., |== |--. • Proof:By contraposition! • |-/- implies {(F)} is consistent, implies {(F)} is satisfiable, implies|=/=
Suppose we proved is satisfiable is consistent • |-- {(F)} inconsistent {(F)} unsatisfiable |== • = Soundness!!!
In short: consider the two sentences: • A set of first order formulas is satisfiable iff it is consistent. • The proof system we gave is sound and complete. …are two manifestations of the same thing!!!
We will not show completeness here! • One principle is the construction of a maximal consistent structure, as in propositional logic (add a formula or its negation). • But there is another problem: what is the interpretation of terms? • Solution: initially we interpret a(b(c),d)as the string “a(b(c),d)”. • What happens if we have xR(x)(actually ((R(x)F)F)?We invent new constant cx and add R(Cx) to the set of formulas. • What happens when we have t1=t2? We actually need to interpret a(b(c),d) as the equivalence class of terms according to “=“ that includes a(b(c),d)(denoted [a(b(c),d)]). • And we need to show that we maintain a consistent structure after adding all that …
We can learn important things from completeness. • |-- iff there is a finite subset 0,0|--. • Thus, |== iff there is a finite subset 0, 0|==. • |--F i.e., is inconsistent iff there is a finite subset of that is inconsistent. • is consistent iff every finite subset of it is consistent! --- compactness theorem.
We can express some classes of structures (why not sets?) • xR(x,x) • xy(R(x,y)R(y,x)) • xyz ((R(x,y)/\R(y,z))R(x,z)) We can write this using one formula! This defines the structures with R being an equivalence relation!
Provability • Suppose we have a class of structures C and we want to prove something about this class. • Suppose we can write a set of formulas such that a structure S is in that class iff S satisfies all the formulas in (with having no free variables). • Then every property of the structures in C satisfies that |==. • Proof: every structure that satisfies all the formulas in is in C and there are supposed to satisfy . • Since we have completeness, |==, thus having allows us to prove .
A class of structures defines using an infinite set of elements • Let i be a sentence that says that we have at least i elements:2 = xy(x=y), 3 = xyz (((x=y)/\(y=z))/\(x=z))…etc. • Call these collection of sentences .
Some inexpressiveness of first order logic • We want to say that we have a finite number of elements in our domain. • Suppose (for the contradiction) that we say exactly that using . • Now, take and any subset of . It is satisfiable (by a structure with at least as many element as the highest index in the subset. • Thus, every subset of is also satisfiable. • By compactness, is also satisfiable – but it has an infinite model!!! Contradiction.
Having an algorithm for doing the proof? • If |== then by completeness |--. • We can enumerate all the possible proofs from . Say, each time to the i th step. Given enough memeory and time, if there is a proof, it would come out(recursive enumerable). • On the other hand, one can write a set of formulas describing the behavior of a model equivalent to Turing machines, and a formula describing termination. Therefore, proving |-- is not decidable.
The big picture • For some classes of structures C we can find a set of first order formulas that are satisfied exactly by structures in C. • For some other structures C, there cannot be such a set of formulas (even an infinite set). Inexpressiveness of FOL. • In case we can find the set of formulas and is a property of C, then we can use our (complete) proof system to prove |--. This will imply that is a property of C. • But while the proof exists, we do not have a decision procedure that will check whether |-- and there is no limit on the amount of time and space needed for reaching such a proof when it exists.