Logic and Modeling

Table of Contents

First order logic

Functions, predicates, relations

functions: take different numbers of arguments, returns a result. e.g. $mul(x,y)$, $square(x)$

predicates, relations: takes one or more arguments, is either true or false. e.g. $even(x)$, $divides(x,y)$

formulas: say things. make assertions about objects in the domain.

Quantifiers, binding

Quantifiers:

Generally bind tightly: ∀x P ∨ Q == (∀x P) ∨ Q

free variable: variable that’s not bound

sentence: a formula that has no free variables

Natural deduction rules

Universal quantificationExistential quantificationEquality
Universal introductionExistential introductionEquality rules
Universal eliminationExistential elimination

Relativization and sorts

You can use implication to relativize quantification (put it into a specific domain).

Universal quantification, e.g. “every prime number greater than two is odd”:

∀x (prime(x) ∧ x > 2 → odd(x))

Existential quantification, e.g. “some woman is strong”:

∃x (woman(x) ∧ strong(x))

Remember to use ∧ with ∃, and not →.

Models

Let F be a set of function symbols, P a set of predicate symbols.

Model M for (F, P) consists of:

Universe A can be any non-empty set.

only constraint: $F^M$ and $P^M$ have same number of arguments as F and P.

Interpreting formulas without quantifiers

Truth definition for formula Φ without quantifiers and free variables in model M by induction on the structure of Φ:

Interpretation of terms $t^M$:

Interpretation of formulas with quantifiers and free variables

to interpret free variables, you use an environment.

an environment l: var → A (look up function) interprets free variables in the domain

Interpreting terms in model with environment

terms are built from variables, constants, function symbols

Truth of formula Φ in model M with universe A with respect to environment e is defined by induction on the structure of Φ.

Interpretation $t^{M,l}$ of term t is

$ \begin{aligned} t^{M, l} = \begin{cases} l(x) &&\text{if } t = x \text{ for a variable } x \\ c^M &&\text{if } t = c \text{ for a constant } c \\ f^M (t_1^{M, l}, \ldots, t_n^{M, l}) &&\text{if } t = f(t_1, \ldots, t_n) \end{cases} \end{aligned} $

by induction on term structure.

M ⊨l ∀x HI ↔ for all a ∈ A it holds that $ M \models_{l [x \to a]} \phi $

M ⊨l ∃x Φ ↔ for some a ∈ A it holds that $ M \models_{l [x \to a]} \phi $

Semantical entailment in predicate logic

For all models M and all environments e, such that M ⊨l Φ₁ and … and M ⊨l Φn hold, it also holds that M ⊨l ψ

Logical equivalence

Formulas φ and ψ are logically equivalent (φ ≡ ψ) if for all models M and environments l, M ⊨l φ ↔ M ⊨l ψ

i.e. φ and ψ are true in precisely the same models when interpreted with the same environments.

theorem: φ ≡ ψ ↔ φ ⊨ ψ and ψ ⊨ φ

Satisfiability, validity, consistency

Let φ be a formula, and Γ be a set of formulas.

φ is satisfiable iff there is some model M and some environment l such that M ⊨l φ

φ is valid iff M ⊨l φ holds for all models M and all environments l in which φ can be checked.

Γ is consistent/satisfiable iff there is some model M and some environment l such tat M ⊨l ψ for all ψ ∈ Γ

for all formulas φ, ψ: φ ≡ ψ means that φ ↔ ψ is valid

Translating into predicate logic

Example: “Marie and Jan are clever.”

Specification and model used:

two predicates:

two constants:

model M:

Then:

∀ and →:

∃ and ∧:

Formulas with free variables express properties and relations:

Rules for quantifiers and connectives

If you move a negation around ∀, it becomes ∃, and vice versa.

It also holds that:

In general, you can’t move quantifiers through an implication.

Order of repeated ∀ or ∃ doesn’t matter. But if you have both ∃ and ∀, the order is important.

Semantics of first order logic

Interpretation: specifying the meaning of a predicate symbol.

You can find the truth value of sentences intuitively.

Completeness: if formula A is logical consequence of set of sentences Γ, then A is provable from Γ.

Soundness: if A is provable from Γ then A is true in any model of Γ