Higher-order Logic

Higher-order Logic - Exercises (4)
Georg Seitz
Matrikelnummer: 0426015
Exercise 28:
Formulate normal form conversion rules also for relational variables. Bring ∃z(∀x∀P P (x, z) →
∀y∃QQ(z, y)) into prenex normal form.
The conversion rules are completely analogous to the ones for function variables, i.e.:
∀~x∀P φ =⇒ ∀P ∀~xφ,
∃~x∃P φ =⇒ ∃P ∃~xφ,
∀~x∃P φ[~x, P ] =⇒ ∃Q∀~xφ[~x, Q~x ],
∃~x∀P φ[~x, P ] =⇒ ∀Q∃~xφ[~x, Q~x ],
where Q is a fresh relation symbol and Q~x (~y ) =df Q(~x, ~y ).
The given formula is transformed into prenex normal form by
∃z(∀x∀P P (x, z) → ∀y∃QQ(z, y))
∃z, x∃P (P (x, z) → ∀y∃QQ(z, y))
∃z, x∃P ∀y∃Q(P (x, z) → Q(z, y))
∃z, x∃P, R∀y(P (x, z) → R(y, z, y))
∃P, R∃z, x∀y(P (x, z) → R(y, z, y))
∃P, R∀f ∃z, x(P (x, z) → Q(f (z, x), z, f (z, x))).
Actually, in this case we would not have to introduce the new relation variable R in order to
“push” the ∀y to the right, because y already appears as an argument to Q.
Exercise 29:
Show that ∃~x∀f φ[~x, f ] and ∀g∃~xφ[~x, g~x ] are logically equivalent.
Clearly ∃~x∀f φ[~x, f ] is logically equivalent to ¬∀~x∃f ¬φ[~x, f ]. Due to Exercise 30 this formula
is logically equivalent to the formula ¬∃g∀~x¬φ[~x, g~x ], which in turn is logically equivalent to
∀g∃~xφ[~x, g~x ].
Exercise 30:
Show that ∀~x∃f φ[~x, f ] and ∃g∀~xφ[~x, g~x ] are logically equivalent.
In the following we write ~x for x1 , . . . , xn and use the abbreviation η(~x) := (η(x1 ), . . . , η(xn )) ∈
An (where A is the domain of the considered structure). Furthermore, if a valuation η at most
differs from another valuation η 0 regarding the values of ~x and f , we write η 0 ∼~x,f η.
• Suppose that S, η |= ∀~x∃f φ[~x, f ]. Then it holds that for each ~a ∈ An there exists a
valuation η~a ∼~x,f η with η~a (~x) = ~a such that S, η~a |= φ[~x, f ]. For each ~a ∈ An we choose
1
such a valuation η~a and set f~a := η~a (f ). We then define the function g0 : ~a, ~b 7→ f~a (~b).
Now, for arbitrary but fixed ~a ∈ An , consider the valuation η 00 ∼~x,g η with η 00 (~x) = ~a and
η 00 (g) = g0 . Then, since valS,η00 (φ[~x, g~x ]) = valS,η~a (φ[~x, f ]) by construction, it holds that
S, η 00 |= φ[~x, g~x ]. Since ~a was arbitrary, it follows that S, η |= ∃g∀~xφ[~x, g~x ].
• Suppose that S, η |= ∃g∀~xφ[~x, g~x ]. Then there exists a function g0 such that for arbitrary
~a ∈ An the relation S, η~a |= φ[~x, g~x ] holds, where η~a ∼~x,g η with η~a (g) = g0 and η~a (~x) = ~a.
For arbitrary but fixed ~a ∈ An we define the function f~a : ~b 7→ g0 (~a, ~b) and consider
the valuation η 0 ∼~x,f η with η 0 (~x) = ~a and η 0 (f ) = f~a . Then, since valS,η0 (φ[~x, f ]) =
valS,η~a (φ[~x, g~x ]) by construction, it holds that S, η 0 |= φ[~x, f ]. Since ~a was arbitrary, we
thus see that S, η |= ∀~x∃f φ[~x, f ].
Exercise 31:
Show that ∀~x∃yφ[~x, y] and ∃f ∀~xφ[~x, f (~x)] as well as ∃~x∀yφ[~x, y] and ∀f ∃~xφ[~x, f (~x)] are logically
equivalent.
We identify each domain element a with the 0-ary function () 7→ a. We can then regard object
variables as 0-ary function variables. The proofs of exercises 29 and 30 then also apply in this
case (just replace f by y and g~x by f (~x)).
Exercise 32:
Explain footnote 36 of Leivant, HOL.
If the vocabulary V contains a constant symbol c, first order quantifiers can be replaced by
function quantifiers since the formulas ∀xφ[x] and ∀f φ[f (c)] as well as ∃xφ[x] and ∃f φ[f (c)] are
equivalent:
Suppose that S, η |= ∀xφ[x], then clearly S, η |= ∀f φ[f (c)]. On the other hand, if the relation
S, η |= ∀f φ[f (c)] holds then we also have S, η |= ∀xφ[x] because if η(f ) runs through all possible
functions on the domain of S, then η(f )(cS ) runs through all domain elements (regardless of
the interpretation of c). The equivalency of ∃xφ[x] and ∃f φ[f (c)] is proved analogously.
Exercise 33:
Summarizing previous claims, explain why every second order formula is equivalent to a Π1m or to a Σ1m -formula.
Each second order formula can be transformed into a logically equivalent prenex formula.
Then, iteratively using the rules which allow to move second order quantifiers in front of first
order quantifiers (see Exercises 28-30), one gets an equivalent formula of one of the forms
∀~
α1 ∃α~2 . . . Qα~m ψ or ∃~
α1 ∀α~2 . . . Qα~m ψ, where Q ∈ {∀, ∃}, each αi is a vector of second order
variables and ψ is a formula in prenex form which contains only first order quantifiers. If ψ
starts with a ∀ quantifier, one can then iteratively apply the rule
∀~x∃yφ[~x, y] =⇒ ∃f ∀~xφ[~x, f (~x)]
(see Exercise 31) in order to remove all first order ∃ quantifiers in ψ. On the other hand, if ψ
starts with an ∃ quantifier, one can iteratively apply the rule
∃~x∀yφ[~x, y] =⇒ ∀f ∃~xφ[~x, f (~x)]
2
in order to remove all first order ∀ quantifiers in ψ. Then, one finally gets one of the forms
α1 ∀α~2 . . . Qα~m Q̄~x, where Q̄ is the dual of Q, each αi is a vector of second
∀~
α1 ∃α~2 . . . Qα~m Q̄~x or ∃~
order variables and ~x is a vector of object variables.
Exercise 36:
Present informal descriptions and examples for the following types: (ι), (ι2 , ι2 ), ((ι)), ((ι), ι),
(ι, o).
We always assume that ι denotes the type of elements of a domain A.
• (ι) is the type of the subsets of A. Example: The set of prime numbers in A = ω is of
type (ι).
• (ι2 , ι2 ) denotes the type of binary relations between binary relations on A. Example: For
A = R the graph Af := {(a, f (a)) | a ∈ R} of each function f on R is of type ι2 , and the
relation R(Af , Ag ) ⇔ “f is differentiable and f 0 = g” is of type (ι2 , ι2 ).
• ((ι)) is the type of sets of subsets of A. Example: The set of all open sets in A = R.
• ((ι), ι) is the type of relations between subsets of A and elements of A. Example for an
ordered domain A: The relation R(M, a) ⇔ “a is an upper bound of M ”.
• (ι, o) is the type of a relation between elements of A and truth values. Example: If A is
a set of propositional variables, then each truth assignment is of type (ι, o).
Exercise 37:
Show that ∃S(∀x(S(x) ↔ φ) ∧ Q(S)) is equivalent to ∀S(∀x(S(x) ↔ φ) → Q(S)), where S
doesn’t occur free in φ.
In order to prove this, we first note that the relation S, η |= ∀x(S(x) ↔ φ) holds iff
η(S) = {a | S, ηa |= φ, where ηa ∼x η with ηa (x) = a} =: S0 .
• Suppose that S, η |= ∃S(∀x(S(x) ↔ φ) ∧ Q(S)). Then there exists η 0 ∼S η such that
S, η 0 |= ∀x(S(x) ↔ φ) ∧ Q(S), i.e., η 0 (S) = S0 and S0 ∈ η 0 (Q) = η(Q). Then it also holds
that S, η 0 |= ∀x(S(x) ↔ φ) → Q(S). Furthermore, for each η 00 ∼S η with η 0 (S) 6= S0 we
have S, η 00 6|= ∀x(S(x) ↔ φ), and hence S, η 00 |= ∀x(S(x) ↔ φ) → Q(S). It thus holds that
S, η |= ∀S(∀x(S(x) ↔ φ) → Q(S)).
• Now suppose that the relation S, η |= ∀S(∀x(S(x) ↔ φ) → Q(S)) holds. Then the choice
of η 0 ∼S η with η 0 (S) = S0 shows that S0 ∈ η 0 (Q) = η(Q). Hence S, η 0 |= ∀x(S(x) ↔
φ) ∧ Q(S), and thus the relation S, η |= ∃S(∀x(S(x) ↔ φ) ∧ Q(S)) holds.
3