|
|
|
Lecture 1: Overview and Background |
|
|
|
|
|
Applications: |
|
DB, PL, KR, complexity theory, verification |
|
Results in FMT often claimed to be known |
|
Sometimes people confuse them |
|
Hard to learn independently |
|
Yet intellectually beautiful |
|
In this course we will learn FMT together |
|
|
|
|
|
Powerpoint lectures in class |
|
Some proofs on the whiteboard |
|
No exams |
|
Most likely no homeworks |
|
But problems to “think about” |
|
Come to class, participate |
|
|
|
|
www.cs.washington.edu/599ds |
|
|
|
Books |
|
Leonid Libkin, Elements of Finite Model Theory main
text |
|
H.D. Ebbinghaus, J. Flum, Finite Model Theory |
|
Herbert Enderton A mathematical Introduction to
Logic |
|
Barwise et al. Model Theory (reference model
theory book; won't really use it) |
|
|
|
|
Background in Model Theory |
|
A taste of what’s different in FMT |
|
|
|
|
Universal algebra + Logic = Model Theory |
|
|
|
|
|
Note: the following slides are not
representative of the rest of the course |
|
|
|
|
|
|
|
Given: |
|
a s-structure A |
|
A formula f with free variables x1,
…, xn |
|
N constants a1, …, an 2 A |
|
Define A ² f(a1, …, an) |
|
Inductively on f |
|
|
|
|
Godel’s completeness theorem |
|
Compactness theorem |
|
Lowenheim-Skolem theorem |
|
[Godel’s incompleteness theorem] |
|
|
|
We discuss these in some detail next |
|
|
|
|
f is satisfiable
if there exists a structure A s.t. A ² f |
|
f is valid
if for all structures A, A ² f |
|
|
|
Note: f is valid iff : f is not satisfiable |
|
|
|
|
Let G be a set of formulas |
|
There exists a set of inference rules that
define G ` f [white board…] |
|
|
|
Proposition Checking G ` f is recursively
enumerable. |
|
|
|
Note: `
is a syntactic operation |
|
|
|
|
We write G ² f if: 8 A, if A ² G then A ² f |
|
|
|
Note: ² is a semantic operation |
|
|
|
|
Theorem (soundness) If G ` f then G ² f |
|
|
|
Theorem (completeness) If G ² f then G ` f |
|
|
|
|
G is
inconsistent if G ` false |
|
Otherwise it is called consistent |
|
|
|
G has a
model if there exists A s.t. A ² G |
|
Theorem (Godel’s extended theorem) G is
consistent iff it has a model |
|
|
|
This formulation is equivalent to the previous
one [why ? Note: when proving it we need certain properties of `] |
|
|
|
|
Theorem If for any finite G0 µ G, G0
is satisfiable, then G is satisfiable |
|
|
|
Proof:
[in class] |
|
|
|
|
We can prove the compactness theorem directly,
but it will be hard. |
|
|
|
The completeness theorem follows from the
compactness theorem [in class] |
|
|
|
Both are about constructing a certain model,
which almost always is infinite |
|
|
|
|
|
Suppose G has “arbitrarily large finite models” |
|
This means that 8 n, there exists a finite model
A with |A| ¸ n s.t. A ² G |
|
|
|
Then show that G has an infinite model A [in class] |
|
|
|
|
Theorem If G has a model, then G has an
enumerable model |
|
|
|
Upwards-downwards theorem: |
|
Theorem [Lowenheim-Skolem-Tarski] Let l be an
infinite cardinal. If G has a model
then it has a model of cardinality l |
|
|
|
|
CN(G) = {f | G ² f} |
|
A theory T is a set s.t. CN(T) = T |
|
T is complete
if 8 f either T ² f or T ² : f |
|
|
|
If T is finitely axiomatizable and complete then
it is decidable. |
|
Los-Vaught test: if T has no finite models and
is l-categorical then T is complete |
|
|
|
|
Dense linear orders with no endpoints [in class] |
|
|
|
(N, 0, S)
[in class] |
|
|
|
(N, 0, S, +) Pressburger Arithmetic |
|
|
|
(N, +, £) : Godel’s incompleteness theorem |
|
|
|
|
Completeness, Compactness, LS |
|
|
|
|
Example 1 |
|
Let s = {R}; a s-structure A is a graph |
|
CONN is the property that the graph is connected |
|
|
|
Theorem CONN is not expressible in FO |
|
|
|
|
Proof
Suppose CONN is expressed by f, i.e. G ² f iff G is connected |
|
|
|
Let s’=s [ {s,t}
yk = : 9 x1,
…, xk R(s,x1) Æ … Æ R(xk,t) |
|
The set G = {f} [ {y1, y2,
…} is satisfiable (by compactness) |
|
Let G be a model: G ² f but there is no path
from s to t, contradiction |
|
THIS PROOF IS INSSUFFICIENT OF US. WHY ? |
|
|
|
|
Example 2 |
|
|
|
EVEN is the property that |A| = even |
|
|
|
Theorem
If s = ; then EVEN is not in FO |
|
Proof [in class] |
|
But what do we do if s ¹ ; ? |
|