Logic: Lecture 5, 18 August 2015
--------------------------------
FOL syntax
----------
First order language L
Sets R,F,C of relation, function, constant symbols
Each symbol in R and F has an "arity"
Variables: Var = [v1,v2,...}
Terms
"Names" of elements
c in C, x in Var are terms
f(t1,...,tn) is a term
Closed terms: no variables
Atomic formulas
r(t1,...,tn)
t1 = t2
Formulas of L
Atomic formulas
~phi, phi or psi
Ex phi
Notation
Ax phi is ~Ex ~phi
FOL semantics
-------------
L-structures and interpretations
L-structure M = (S,i)
S is a set
i maps R, F, C to relations, functions, constants over S
Intepretation I = (M,sigma)
sigma : Var -> S assignment to variables
Notation about assignments
sigma' = sigma[x1 |-> v1, ... , xn |-> vn]
sigma' is sigma updated with new values for {x1,..,xn}
I = (M,sigma)
I[x1 |-> v1, ... , xn |-> vn] = (M,sigma[x1 |-> v1, ... , xn |-> vn])
Interpretation of terms in I = (M,sigma)
I(c) = i(c)
I(x) = sigma(x)
I(f(t1,..,tn)) = i(f)(I(t1),...,I(tn))
Satisfaction relation
I |= phi
I |= t1 = t2 if I(t1) = I(t2)
I |= r(t1,..,tm) if (I(t1),...,I(tm)) is in i(r)
I |= ~phi if not(I |= phi)
I |= phi or psi if I |= phi or I |= psi
I |= Ex phi if there is a in S such that I[x|->a] |= phi
Check that
I |= Ax phi if for every a in S, I[x|->a] |= phi
Free and bound variables
x is bound if it is within the scope of a quantifier
x is free if it is not bound
Define FV(phi) inductively.
Note that the two sets are not complementary. For instance, in
(x or Ex x), x is both bound and free. We can always rename
bound variables to avoid this --- e.g. (x or Ey y).
======================================================================