Last time we looked at Tarski’s inductive definition of truth formalized inside ZF set theory. Recall the setup: a first-order language *L* and a structure *S* for *L*. The domain of *S* is a set (not a proper class), which means that the relations and functions on the domain are too. The fruit of the effort was a formula in L(ZF), True(*L*,*S*,φ), which expresses “*S* is a set-based structure for *L* and φ is a sentence of *L* and *S* ⊧ φ”. (With minor changes, we get a parametrized version, True(*L*,*S*,φ,*u*). Here *u* is a finite list of elements of the domain of *S* to be assigned to the free variables in φ.)

In the first post in this series, we looked at {True_{d}}, an infinite *sequence* of formulas in L(PA); True_{d} expresses truth for formulas with parse-depth at most *d*. In this post, we’ll look at Sat_{Σn}, satisfaction for Σ_{n} formulas.

Sat_{Σn} is the “professional-grade” version of True_{d}; it’s what you’ll find in the textbooks in the bibliography, like Kaye. (I suppose “satisfaction” sounds more professional than “truth”.) Like True_{d}, it’s an infinite sequence of formulas. Like True_{d}, it limits its ambitions by complexity: parse-tree depth for True_{d}, and the number of quantifier alternations for Sat_{Σn}. So (for example) the axiom ∀*x*∀*y*∀*z*((*z=*0 ∨ ¬*x<y*) ∨ *x·z<y·z*) has depth 6, but belongs to Π_{1}. (Sat_{Πn} amounts to the negation of Sat_{Σn}, since a Π_{n} sentence is true iff its negation, a Σ_{n} sentence, is false.)

The main effort in defining Sat_{Σn} takes place at the ground level, defining Sat_{Δ0}. Surprising! And this definition shares DNA with True(*L*,*S*,φ) from ZF. Here are some analogies to conjure with:

PA : infinite sets :: ZF : proper classes

PA : finite sets :: ZF : sets.

In ZF, quantification over a set is a “bounded search”, in some sense. In PA, the same holds for quantification over a finite range.

The construction of True(*L*,*S*,φ) rested on the concept of an *instantiation tree*. We can do nearly the same thing for Δ_{0} sentences. Here’s an example, for the sentence ∃*x*<3 ∀*y*<*x* ψ(*x*,*y*):

I’ve made a different graphic choice from the diagram for the ZF case. Instead of regarding the instantiations “∀*y*<0 ψ(0,*y*)”, “∀*y*<1 ψ(1,*y*)”, and “∀*y*<2 ψ(2,*y*)” as all “living in the same node”, I’ve split them into separate nodes. This reflects a more fundamental difference: in the ZF case, all the quantifications are “bounded” by the same set, the domain of *S*. Here the bound varies from node to node.

The instantiation tree must be grown from the root down. Our Δ_{0} formula is a sentence, i.e., no free variables. Of course subformulas need not be closed. Any outermost quantifier must have a *fixed* bound—that is, a closed term for the bound, which can be evaluated. The associated quantifier node will have a bounded list of children, in which the quantified variable has acquired a fixed value. The example above is particularly simple, but something like

∀*x*<10 (¬ξ(*x*) ∨ ∃*y*<3*x *∀*w<x+y *(ζ(*x,y,w*)∧η(*x,y,w*)) )

goes much the same way. We’ll have 10 nodes under root, each a disjunction. The one with *x*=5 will have a right hand child ∃*y*<15… . One of those children has *y*=7, and is labeled ∀*w*<12 (i.e., *x+y*=5+7). Its 12 children are all conjunctions.

Truth evaluations proceed bottom up, of course, using the obvious rules. Now, can we code all this into PA? The diagrams look pretty when the bounds are all elements of ℕ, but over a nonstandard model the bounds can be nonstandard. That’s OK, provided we can code all this into a formula of PA. (And by ‘formula’, I mean an ordinary vanilla formula, not one of “nonstandard length” or anything like that.)

The short answer is, sure, no problem! PA is “basically the same as” ZF¬∞. The instantiation tree and its truth evaluation “look like” finite combinatorial objects, so of course PA can encode them. The “local behavior” aspect of the ZF case—a thousand quantifiers in the formula *don’t* bleed through to give a thousand quantifiers in True(…)—applies here too.

For the long answer, consult Kaye, Chapter 9. He begins by saying

This is the chapter that no one wanted to have to write: the material here is technical and difficult to describe clearly, yet it is very necessary for later work. I have put it off as long as possible, but cannot do so any longer.

Nineteen pages later, he gives the definition of Sat_{Δ0}. A few pages more establish its chief properties. Then in a quarter of a page, he defines the sequences Sat_{Σn} and Sat_{Πn}, building on top of Sat_{Δ0}. It’s much like True_{d}: a syntactic ∃*x* becomes semantic. Life is just a touch more complicated, because Sat_{Σn} must handle a *block* of existential quantifiers prepended to a Π_{n−1}, formula; likewise for Sat_{Πn}. But PA has mastered lists, so this is barely a hiccup.

Just a few more remarks. If you *do* decide to read Kaye’s Chapter 9, be aware he does not explicitly use parse-trees. Instead, he ‘parses’ the Gödel numbers that represent strings of symbols. You will also find data structures that you can construe as instantiation trees, although he does not make this explicit. I confess I have not had the patience to go through his treatment line by line. My sympathy for the author’s pains!

As a reward for the detailed development, Kaye can show that Sat_{Δ0} is a Δ_{1}(PA) formula, and Sat_{Σn} and Sat_{Πn} are Σ* _{n}*(PA) and Π

*(PA) formulas (respectively) for*

_{n}*n*>0. (The quantifiers “bleed through”.) A diagonal argument now shows that the Σ

*/Π*

_{n}*hierarchy is a true hierarchy: for any model*

_{n}*N*of PA, there is a relation on

*N*that is Σ

*(*

_{n}*N*) but not Π

*(*

_{n}*N*), and vice versa.

As with True_{d}, PA proves the expected equivalence for any sentence φ with the right complexity. That is, if φ belongs to Σ* _{n}*(PA), then PA⊢φ↔Sat

_{Σn}(⌜φ⌝). Likewise for the parametrized version. Note that this is a

*collection*of proofs, one for each formula φ.

That’s all for now!