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). ======================================================================