# Completeness and Expressiveness

## Presentation on theme: "Completeness and Expressiveness"— Presentation transcript:

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 inconsistent if for each , |--.

Lemma |-- iff  {(F)} is inconsistent.
Proof: if  {(F)} is inconsistent then  {(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) xy(R(x,y)R(y,x)) xyz ((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 = xy(x=y), 3 = xyz (((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.