Notes
Outline
Finite Model Theory
Lecture 1: Overview and Background
Motivation
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
Organization
Powerpoint lectures in class
Some proofs on the whiteboard
No exams
Most likely no homeworks
But problems to “think about”
Come to class, participate
Resources
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)
Today’s Outline
Background in Model Theory
A taste of what’s different in FMT
Classical Model Theory
Universal algebra + Logic = Model Theory
Note: the following slides are not representative of the rest of the course
First Order Logic = FO
Model or s-Structure
Interpretation
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
Classical Results
Godel’s completeness theorem
Compactness theorem
Lowenheim-Skolem theorem
[Godel’s incompleteness theorem]
We discuss these in some detail next
Satisfiability/Validity
 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
Logical Inference
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
Logical Inference
We write G ² f if: 8 A, if A ² G then A ² f
Note: ² is a semantic operation
Godel’s Completeness Result
Theorem (soundness) If G ` f then G ² f
Theorem (completeness) If G ² f then G ` f
Godel’s Completness Result
 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 `]
Compactness Theorem
Theorem If for any finite G0 µ G, G0 is satisfiable, then G is satisfiable
Proof:  [in class]
Completeness v.s. Compactness
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
Application
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]
Lowenheim-Skolem Theorem
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
Decidability
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
Some Great Theories
Dense linear orders with no endpoints [in class]
(N, 0, S)  [in class]
(N, 0, S, +) Pressburger Arithmetic
(N, +, £) : Godel’s incompleteness theorem
Summary of Classical Results
Completeness, Compactness, LS
A Taste of FMT
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
A taste of FMT
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 ?
A taste of FMT
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 ¹ ; ?