introduction - math.berkeley.eduantonio/papers/veblen.pdf · alberto marcone and antonio...

26
THE VEBLEN FUNCTIONS FOR COMPUTABILITY THEORISTS ALBERTO MARCONE AND ANTONIO MONTALB ´ AN Abstract. We study the computability-theoretic complexity and proof-theo- retic strength of the following statements: (1) “If X is a well-ordering, then so is ε X ”, and (2) “If X is a well-ordering, then so is ϕ(α, X )”, where α is a fixed computable ordinal and ϕ represents the two-placed Veblen function. For the former statement, we show that ω iterations of the Turing jump are necessary in the proof and that the statement is equivalent to ACA + 0 over RCA 0 . To prove the latter statement we need to use ω α iterations of the Turing jump, and we show that the statement is equivalent to Π 0 ω α -CA 0 . Our proofs are purely computability-theoretic. We also give a new proof of a result of Friedman: the statement “if X is a well-ordering, then so is ϕ(X , 0)” is equivalent to ATR 0 over RCA 0 . 1. Introduction The Veblen functions on ordinals are well-known and commonly used in proof theory. Proof theorists know that these functions have an interesting and complex behavior that allows them to build ordinals that are large enough to calibrate the consistency strength of different logical systems beyond Peano Arithmetic. The goal of this paper is to investigate this behavior from a computability viewpoint. The well-known ordinal ε 0 is defined to be the first fixed point of the function α ω α , or equivalently ε 0 = sup{ω,ω ω ω ω ,... }. In 1936 Gentzen [Gen36], used transfinite induction on primitive recursive predicates along ε 0 , together with finitary methods, to give a proof of the consistency of Peano Arithmetic. This, combined with G¨odel’s Second Incompleteness Theorem, implies that Peano Arith- metic does not prove that ε 0 is a well-ordering. On the other hand, transfinite induction up to any smaller ordinal can be proved within Peano Arithmetic. This makes ε 0 the proof-theoretic ordinal of Peano Arithmetic. This result kicked off a whole area of proof theory, called ordinal analysis, where the complexity of logical systems is measured in terms of (among other things) how much transfinite induction is needed to prove their consistency. (We refer the reader to [Rat06] for an exposition of the general ideas behind ordinal analysis.) The proof-theoretic ordinal of many logical systems have been calculated. An example that is relevant to this paper is the system ACA + 0 (see Section 2.4 below), whose proof-theoretic ordinal is ϕ 2 (0) = sup{ε 0 ε0 εε 0 ,... }; the first fixed point of the epsilon function [Rat91, Thm. 3.5]. The epsilon function is the one that given γ , returns ε γ , the γ th fixed point of the function α ω α starting with γ = 0. The Veblen functions, introduced in 1908 [Veb08], are functions on ordinals that are commonly used in proof theory to obtain the proof-theoretic ordinals of predicative theories beyond Peano Arithmetic. ϕ 0 (α)= ω α . Date : last saved: July 5, 2010 Compiled: July 5, 2010. Marcone’s research was partially supported by PRIN of Italy. Montalb´an’s research was par- tially supported by NSF grant DMS-0901169. We thank the referees for their careful reading of the first draft of the paper and their many suggestions for improving the exposition. 1

Upload: others

Post on 23-Jun-2020

4 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Introduction - math.berkeley.eduantonio/papers/veblen.pdf · ALBERTO MARCONE AND ANTONIO MONTALBAN´ Abstract. We study the computability-theoretic complexity and proof-theo-retic

THE VEBLEN FUNCTIONS FOR COMPUTABILITY THEORISTS

ALBERTO MARCONE AND ANTONIO MONTALBAN

Abstract. We study the computability-theoretic complexity and proof-theo-retic strength of the following statements: (1) “If X is a well-ordering, then sois !X ”, and (2) “If X is a well-ordering, then so is "(!,X )”, where ! is a fixedcomputable ordinal and " represents the two-placed Veblen function. For theformer statement, we show that " iterations of the Turing jump are necessaryin the proof and that the statement is equivalent to ACA+

0 over RCA0. To provethe latter statement we need to use "! iterations of the Turing jump, and weshow that the statement is equivalent to !0

"! -CA0. Our proofs are purelycomputability-theoretic. We also give a new proof of a result of Friedman: thestatement “if X is a well-ordering, then so is "(X , 0)” is equivalent to ATR0

over RCA0.

1. Introduction

The Veblen functions on ordinals are well-known and commonly used in prooftheory. Proof theorists know that these functions have an interesting and complexbehavior that allows them to build ordinals that are large enough to calibrate theconsistency strength of di!erent logical systems beyond Peano Arithmetic. Thegoal of this paper is to investigate this behavior from a computability viewpoint.

The well-known ordinal !0 is defined to be the first fixed point of the function" !" #!, or equivalently !0 = sup{#,#",#""

, . . . }. In 1936 Gentzen [Gen36],used transfinite induction on primitive recursive predicates along !0, together withfinitary methods, to give a proof of the consistency of Peano Arithmetic. This,combined with Godel’s Second Incompleteness Theorem, implies that Peano Arith-metic does not prove that !0 is a well-ordering. On the other hand, transfiniteinduction up to any smaller ordinal can be proved within Peano Arithmetic. Thismakes !0 the proof-theoretic ordinal of Peano Arithmetic.

This result kicked o! a whole area of proof theory, called ordinal analysis, wherethe complexity of logical systems is measured in terms of (among other things)how much transfinite induction is needed to prove their consistency. (We refer thereader to [Rat06] for an exposition of the general ideas behind ordinal analysis.) Theproof-theoretic ordinal of many logical systems have been calculated. An examplethat is relevant to this paper is the system ACA+

0 (see Section 2.4 below), whoseproof-theoretic ordinal is $2(0) = sup{!0, !#0 , !##0 , . . . }; the first fixed point of theepsilon function [Rat91, Thm. 3.5]. The epsilon function is the one that given %,returns !$ , the %th fixed point of the function " !" #! starting with % = 0.

The Veblen functions, introduced in 1908 [Veb08], are functions on ordinalsthat are commonly used in proof theory to obtain the proof-theoretic ordinals ofpredicative theories beyond Peano Arithmetic.

• $0(") = #!.

Date: last saved: July 5, 2010Compiled: July 5, 2010.

Marcone’s research was partially supported by PRIN of Italy. Montalban’s research was par-tially supported by NSF grant DMS-0901169.We thank the referees for their careful reading of the first draft of the paper and their manysuggestions for improving the exposition.

1

Page 2: Introduction - math.berkeley.eduantonio/papers/veblen.pdf · ALBERTO MARCONE AND ANTONIO MONTALBAN´ Abstract. We study the computability-theoretic complexity and proof-theo-retic

2 ALBERTO MARCONE AND ANTONIO MONTALBAN

• $%+1(") is the "th fixed point of $% starting with " = 0.• when & is a limit ordinal, $&(") is the "th simultaneous fixed point of allthe $% for ' < &, also starting with " = 0.

Note that $1 is the epsilon function.The Feferman-Schutte ordinal "0 is defined to be the least ordinal closed under

the binary Veblen function $(',") = $%("), or equivalently

"0 = sup{$0(0),$'0(0)(0),$'$0(0)(0)(0), . . . }.

"0 is the proof-theoretic ordinal of Feferman’s Predicative Analysis [Fef64, Sch77],and of ATR0 [FMS82]1. Again, this means that the consistency of ATR0 can beproved by finitary methods together with transfinite induction up to "0, and thatATR0 proves the well-foundedness of any ordinal below "0.

Sentences stating that a certain linear ordering is well-ordered are !11. So, even

if they are strong enough to prove the consistency of some theory, they have noset-existence implications. However, a sentence stating that an operator on linearorderings preserves well-orderedness is !1

2, and hence gives rise to a natural reversemathematics question. The following theorems answer two questions of this kind.

Theorem 1.1 (Girard, [Gir87, p. 299]). Over RCA0, the statement “if X is awell-ordering then !X is also a well-ordering” is equivalent to ACA0.

Theorem 1.2 (H. Friedman, unpublished). Over RCA0, the statement “if X is awell-ordering then "(X , 0) is a well-ordering” is equivalent to ATR0.

Let F be an operator on linear orderings. We consider the statement

WOP(F) : #X (X is a well-ordering =$ F(X ) is a well-ordering).

We study the behavior of F by analyzing the computational complexity of theproof of WOP(F) as follows. The statement WOP(F) can be restated as “if F(X )has a descending sequence, then X has a descending sequence to begin with”. GivenF, the question we ask is:

Given a linear ordering X and a descending sequence in F(X ), howdi#cult is to build a descending sequence in X ?

From Hirst’s proof of Girard’s result [Hir94], we can extract the following answerfor F(X ) = !X .

Theorem 1.3. If X is a computable linear ordering, and !X has a computabledescending sequence, then 0! computes a descending sequence in X . Furthermore,there exists a computable linear ordering X with a computable descending sequencein !X such that every descending sequence in X computes 0!.

The first statement of the theorem follows from the results of Section 3, whichincludes the upper bounds of the computability-theoretic results and the “forwarddirections” of the reverse mathematics results. We include a proof of the secondstatement in Section 4, where we modify Hirst’s idea to be able to apply it on ourother results later. In doing so, we give a new definition of the Turing jump which,although computationally equivalent to the usual jump, is combinatorially easier tomanage. This allows us to define computable approximations to the Turing jump,and we can also define a computable operation on trees that produces trees whosepaths are the Turing jumps of the input tree. Furthermore, our definition of theTuring jump behaves nicely when we take iterations.

In Section 5 we use these features of our proof of Theorem 1.3. First, in Section5.1 we consider finite iterations of the Turing jump and of ordinal exponentiation.

1for the definition of ATR0 and of other subsystems of second order arithmetic mentioned inthis introduction see Section 2.4 below.

Page 3: Introduction - math.berkeley.eduantonio/papers/veblen.pdf · ALBERTO MARCONE AND ANTONIO MONTALBAN´ Abstract. We study the computability-theoretic complexity and proof-theo-retic

THE VEBLEN FUNCTIONS FOR COMPUTABILITY THEORISTS 3

(We write !"n,X # for the nth iterate of the operation !X ; see Definition 2.2.) InTheorem 5.3, we prove:

Theorem 1.4. Fix n % N. If X is a computable linear ordering, and !"n,X #

has a computable descending sequence, then 0(n) computes a descending sequencein X . Conversely, there exists a computable linear ordering X with a computabledescending sequence in !"n,X # such that the jump of every descending sequence inX computes 0(n).

From this, in Section 5.4, we obtain the following reverse mathematics result.

Theorem 1.5. Over RCA0, #nWOP(X !" !"n,X #) is equivalent to ACA!0.

The first main new result of this paper is obtained in Section 5.2 and analyzesthe complexity behind the epsilon function.

Theorem 1.6. If X is a computable linear ordering, and #X has a computable de-scending sequence, then 0(") can compute a descending sequence in X . Conversely,there is a computable linear ordering X with a computable descending sequence in#X such that the jump of every descending sequence in X computes 0(").

We prove this result in Theorems 3.4 and 5.21. Then, as a corollary of the proof,we obtain the following result in Section 5.4.

Theorem 1.7. Over RCA0, WOP(X !" #X ) is equivalent to ACA+0 .

Our proof is purely computability-theoretic and plays with the combinatoricsof the #-jump and the epsilon function. By generalizing the previous ideas, weobtain a new definition of the #-Turing jump, which we can also approximate by acomputable function on finite strings and by a computable operator on trees. Animportant property of our #-Turing jump operator is that it is essentially a fixedpoint of the jump operator: for every real Z, the #-Turing jump of Z is equal tothe #-Turing jump of the jump of Z, except for the first bit (we mean equal assequences of numbers, not only Turing equivalent). Notice the analogy with the #and ! operators.

After a draft of the proof of Theorem 1.7 was circulated, Afshari and Rathjen[AR09] gave a completely di!erent proof using only proof-theoretic methods likecut-elimination, coded #-models and Schutte deduction chains. They prove thatWOP(X !" #X ) implies the existence of countable coded #-models of ACA0 con-taining any given set, and that this in turn is equivalent to ACA+

0 . To this end theyprove a completeness-type result: given a set Z, they can either build an #-modelof ACA0 containing Z as wanted, or obtain a proof tree of ‘0=1’ in a suitable logicalsystem with formulas of rank at most #. The latter case leads to a contradictionas follows. The logical system where we get the proof tree has cut elimination,increasing the rank of the proof tree by an application of the # operator. UsingWOP(X !" #X ), X being the Kleene-Brouwer ordering on the proof tree of ‘0=1’,they obtain a well-founded cut-free proof tree of ‘0=1’.

In Section 6, we move towards studying the computable complexity of the Veblenfunctions. Given a computable ordinal ", we calibrate the complexity of WOP(X !""(",X )) with the following result, obtained by extending our definitions to #!-Turing jumps.

Theorem 1.8. Let " be a computable ordinal. If X is a computable linear or-dering, and "(",X ) has a computable descending sequence, then 0("

!) computes adescending sequence in X . Conversely, there is a computable linear ordering X suchthat "(",X ) has a computable descending sequence but every descending sequencein X computes 0("

!).

Page 4: Introduction - math.berkeley.eduantonio/papers/veblen.pdf · ALBERTO MARCONE AND ANTONIO MONTALBAN´ Abstract. We study the computability-theoretic complexity and proof-theo-retic

4 ALBERTO MARCONE AND ANTONIO MONTALBAN

This result will follow from Theorem 3.6 and Theorem 6.15. In Section 6.3, as acorollary, we get the following result.

Theorem 1.9. Let " be a computable ordinal. Over RCA0, WOP(X !" "(",X ))is equivalent to $0

"!-CA0.

Exploiting the uniformity in the proof of Theorem 1.8, we also obtain a newpurely computability-theoretic proof of Friedman’s result (Theorem 1.2). Beforeour proof, Rathjen and Weiermann [RW] found a new, fully proof-theoretic proof ofFriedman’s result. They use a technique similar to the proof of Afshari and Rathjenmentioned above. Friedman’s original proof has two parts, one computability-theoretic and one proof-theoretic.

The table below shows the systems studied in this paper (with the exception ofACA!

0). The second column gives the proof-theoretic ordinal of the system, whichwere calculated by Gentzen, Rathjen, Feferman, and Schutte. The third columngives the operator F on linear orderings such that WOP(F) is equivalent to thegiven system. The last column gives references for the di!erent proofs of theseequivalences in historical order ([MM] refers to this paper).

System p.t.o. F(X ) references

ACA0 !0 !X Girard [Gir87]; Hirst [Hir94]

ACA+0 $2(0) #X [MM]; Afshari-Rathjen [AR09]

$0"! -CA0 $!+1(0) "(",X ) [MM]

ATR0 "0 "(X , 0) Friedman [FMW]; Rathjen-Weiermann [RW]; [MM]

Notice that in every case, the proof-theoretic ordinal equals

sup{F(0),F(F(0)),F(F(F(0))), . . . }.

2. Background and definitions

2.1. Veblen operators and ordinal notation. We already know what the #, !and $ functions do on ordinals. In this section we define operators !, # and ", thatwork on all linear orderings. These operators are computable, and when they areapplied to a well-ordering, they coincide with the #, ! and $ functions on ordinals.

To motivate the definition of !X we use the following observation due to Cantor[Can97]. Every ordinal below #! can be written in a unique way as a sum

#%0 + #%1 + · · ·+ #%k!1 ,

where " > '0 & '1 & · · · & 'k$1.

Definition 2.1. Given a linear ordering X , !X is defined as the set of finite strings'x0, x1, . . . , xk$1( % X<" (including the empty string) where x0 &X x1 &X · · · &Xxk$1. We think of 'x0, x1, . . . , xk$1( % !X as #x0 +#x1 + · · ·+#xk!1 . The orderingon !X is the lexicographic one: 'x0, x1, . . . , xk$1( )!X 'y0, y1, . . . , yl$1( if eitherk ) l and xi = yi for every i < k, or for the least i such that xi *= yi we havexi <X yi.

We use the following notation for the iteration of the ! operator.

Definition 2.2. Given a linear ordering X , let !"0,X # = X and !"n+1,X # = !!"n,X#.

To motivate the definition of the # operator we start with the following obser-vations. On the ordinals, the closure of the set {0} under the operations + andt !" #t, is the set of the ordinals strictly below !0. The closure of {0, !0} under thesame operations, is the set of the ordinals strictly below !1. In general, if we takethe closure of {0} + { !% : ' < " } we obtain all ordinals strictly below !!.

Definition 2.3. Let X be a linear ordering. We define #X to be the set of formalterms defined as follows:

Page 5: Introduction - math.berkeley.eduantonio/papers/veblen.pdf · ALBERTO MARCONE AND ANTONIO MONTALBAN´ Abstract. We study the computability-theoretic complexity and proof-theo-retic

THE VEBLEN FUNCTIONS FOR COMPUTABILITY THEORISTS 5

• 0 and !x, for x % X , belong to #X , and are called “constants”,• if t1, t2 % #X , then t1 + t2 % #X ,• if t % #X , then #t % #X .

Many of the terms we defined represent the same element, so we need to findnormal forms for the elements of #X . The definition of the ordering on #X is whatone should expect when X is an ordinal. We define the normal form of a term andthe relation )"X simultaneously by induction on terms.

We say that a term t = t0 + · · ·+ tk is in normal form if either t = 0 (i.e. k = 0and t0 = 0), or the following holds: (a) t0 &"X t1 &"X · · · &"X tk > 0, and (b) eachti is either a constant or of the form #si , where si is in normal form and si *= !xfor any x.

Every t % #X can be written in normal form by applying the following rules:

• + is associative,• s+ 0 = 0 + s = s,• if s <"X r, then #s + #r = #r,• ##x = !x.

Given t = t0 + · · · + tk and s = s0 + · · · + sl in normal form, we let t )"X s ifone of the following conditions apply

• t = 0,• t = !x and, for some y &X x, !y occurs in s,

• t = #t$ , s0 = !y and t! )"X !y,

• t = #t$ , s0 = #s$ and t! )"X s!,• k > 0 and t0 <"X s0,• k > 0, t0 = s0, l > 0 and t1 + · · ·+ tk )"X s1 + · · ·+ sl.

The observation we made before the definition shows how the # operator coin-cides with the !-function when X is an ordinal (this includes the case X = ,, when0 is the only constant and we obtain !0 as expected).

Definition 2.4. In analogy with Definition 2.2, for t % #X we use #"n,t# to denotethe term in #X obtained by applying the # function symbol n times to t.

Definition 2.5. If X is a linear ordering and x % X , let X !x be the linear orderingwith domain { y % X : y <X x }.

The following lemma expresses the compatibility of the ! and # operators.

Lemma 2.6. If X is a linear ordering, then for every t % #X and n % N!"n,"X!t# -= #X !#"n,t#

via a computable isomorphism. In particular, !"X!t -= #X !#t.

Proof. The proof is by induction on n. When n = 0 the identity is the requiredisomorphism. If ( : !"n,"X!t# " #X ! #"n,t# is an isomorphism, then the functionmapping the empty string to 0 and 't0, . . . , tk( to #((t0) + · · · + #((tk) witnesses!"n+1,"X!t# -= #X !#"n+1,t#. "

To define the " operator we start with the following observations. If we takethe closure of the set {0} under the operations +, t !" #t and t !" !t, we getall the ordinals up to $2(0). If we take the closure of {0} + {$2(') : ' < " } weget all the ordinals below $2("). In general, we obtain $$(") as the closure of{0} + {$$(') : ' < " } under the operations +, and t !" $)(t), for all ) < %.

Definition 2.7. Let X and Y be linear orderings. We define "(Y,X ) to be the setof formal terms defined as follows:

• 0 and $Y,x, for x % X , belong to "(Y,X ), and are called “constants”,

Page 6: Introduction - math.berkeley.eduantonio/papers/veblen.pdf · ALBERTO MARCONE AND ANTONIO MONTALBAN´ Abstract. We study the computability-theoretic complexity and proof-theo-retic

6 ALBERTO MARCONE AND ANTONIO MONTALBAN

• if t1, t2 % "(Y,X ), then t1 + t2 % "(Y,X ),• if t % "(Y,X ) and ) % Y, then $)(t) % "(Y,X ).

We define the normal form of a term and the relation )#(Y,X ) simultaneously byinduction on terms. We write )' instead of )#(Y,X ) to simplify the notation.

We say that a term t = t0 + · · · + tk is in normal form if either t = 0, or thefollowing holds: (a) t0 &' t1 &' · · · &' tk > 0, and (b) each ti is either a constantor of the form $)(si), where si is in normal form and si *= $)$(s!i) for )

! > ).Every t % "(Y,X ) can be written in normal form by applying the following rules:

• + is associative,• s+ 0 = 0 + s = s,• if $)$(s) <' $)(r), then $)$(s) + $)(r) = $)(r).• if )! > ), then $)($)$(r)) = $)$(r).• if ) % Y then $)($Y,r) = $Y,r.

The motivation for the last two items is that if )! > ), anything in the image of $)$

is a fixed point of $).Given t = t0 + · · ·+ tk and s = s0 + · · ·+ sl in normal form, we let t )' s if one

of the following conditions apply

• t = 0,• t = "Y,x and, for some y &X x, $Y,y occurs in s,

• t = $)(t!), s0 = $)$(s!) and

!"#

"$

) < )! and t! )' $)$(s!), or

) = )! and t! )' s!, or

) > )! and $)(t!) )' s!,• k > 0 and t0 <' s0,• k > 0, t0 = s0, l > 0 and t1 + · · ·+ tk )' s1 + · · ·+ sl.

2.2. Notation for strings and trees. Here we fix our notation for sequences (orstrings) of natural numbers. The Baire space NN is the set of all infinite sequencesof natural numbers. As usual, an element of NN is also called a real. If X % NN andn % N, X(n) is the (n + 1)-st element of X. N<N is the set of all finite strings ofnatural numbers. When * % N<N we use |*| to denote its length and, for i < |*|,*(i) to denote its (i + 1)-st element. We write , for the empty string (i.e. theonly string of length 0), and 'n( for the string of length 1 whose only element isn. When *, + % N<N, * . + means that * is an initial segment of + , i.e. |*| ) |+ |and *(i) = +(i) for each i < |*|. We use * / + to mean * . + and * *= + . IfX % NN we write * / X if *(i) = X(i) for each i < |*|. We use *"+ to denote theconcatenation of * and + , that is the string , such that |,| = |*|+ |+ |, ,(i) = *(i)when i < |*|, and ,(|*| + i) = +(i) when i < |+ |. If X % NN, * % N<N and t % N,X ! t is the initial segment of X of length t, while * ! t is the initial segment of * oflength t if t ) |*|, and * otherwise.

We fix an enumeration of N<N, so that each finite string is also a natural number,and hence can be an element of another string. This enumeration is such that allthe operations and relations discussed in the previous paragraph are computable.Moreover we can assume that * / + (as strings) implies * < + (as natural numbers).For an enumeration with these properties see e.g. [Sim99, §II.2].

The following operation on strings will be useful.

Definition 2.8. If * % N<N is nonempty let -(*) = '*(|*|01)(, the string of lengthone whose only entry is the last entry of *.

Definition 2.9. A tree is a set T . N<N such that * ! t % T whenever * % T andt < |*|. If T is a tree, X % NN is a path through T if X ! t % T for all t. We let [T ]be the set of all paths through T .

Page 7: Introduction - math.berkeley.eduantonio/papers/veblen.pdf · ALBERTO MARCONE AND ANTONIO MONTALBAN´ Abstract. We study the computability-theoretic complexity and proof-theo-retic

THE VEBLEN FUNCTIONS FOR COMPUTABILITY THEORISTS 7

Definition 2.10. If T is a tree and * % N<N we let T* = { , % T : , . * 1 * . , }.

Definition 2.11. )KB is the usual Kleene-Brouwer ordering of N<N: if *, + % N<N,we let * )KB + if either * 2 + or there is some i such that * ! i = + ! i and*(i) < +(i).

The following is well-known (see e.g. [Sim99, Lemma V.1.3]).

Lemma 2.12. Let T . N<N be a tree: T is well-founded (i.e. [T ] = ,) if andonly if the linear ordering (T,)KB) is well-ordered. Moreover, if f : N " T is adescending sequence with respect to )KB, there exists Y % [T ] such that Y )T f !.

We will need some terminology to describe functions between partial orderings.

Definition 2.13. Let f : P " Q be a function, )P and )Q be partial orderingsof P and Q respectively, with <P and <Q the corresponding strict orderings. Wesay that f is (<P , <Q)-monotone if for every x, y % P such that x <P y we havef(x) <Q f(y).

2.3. Computability theory notation. We use standard notation from com-putability theory. In particular, for a string * % N%N, {e}*(n) denotes the outputof the eth Turing machine on input n, run with oracle *, for at most |*| steps(where |*| = 3 when * % NN). If this computation does not halt in less than |*|steps we write {e}*(n)4, otherwise we write {e}*(n)5. We write {e}*t (n)5 if thecomputation halts in less than min(|*|, t) steps.

Given X,Y . N, the predicate X = Y ! is defined as usual:

X = Y ! 6$ #e(e % X 7 {e}Y (e)5).

Definition 2.14. Given an ordinal ' (or actually any presentation of a linearordering with first element 0), we say that X = Y (%) if

X [0] = Y , #% < ' (X [$] = X [<$]!) and X = X [<%].

where X [$] = { y : '%, y( % X } and X [<$] = { '), y( : ) < % & '), y( % X }.

2.4. Subsystems of second order arithmetic. We refer the reader to [Sim99] forbackground information on subsystems of second order arithmetic. All subsystemswe consider extend RCA0 which consists of the axioms of ordered semi-ring, plus%0

1-comprehension and &0

1-induction. Adding set-existence axioms to RCA0 we obtainWKL0, ACA0, ATR0, and $1

1-CA0, completing the so-called “big five” of reversemathematics.

In this paper we are interested in ACA0, ATR0, and some theories which liebetween these two. All these theories can be presented in terms of “jump-existenceaxioms”, as follows:

ACA0: RCA0+ #Y 8X (X = Y !)ACA!

0: RCA0+ #Y #n8X (X = Y (n))ACA+

0 : RCA0+ #Y 8X (X = Y ("))$0

%-CA0: RCA0+ ' well-ordered 9 #Y 8X (X = Y (%)),

where ' is a presentation of a computable ordinal2

ATR0: RCA0+ #"(" well-ordered =$ #Y 8X (X = Y (!)))

Notice that $01-CA0 is ACA0 and $0

"-CA0 is ACA+0 . $0

%-CA0 is strictly stronger

than $0$-CA0 if and only if ' & % ·#. In fact the #-model

%!<$·"{X : X )T 0(!) }

satisfies $0!-CA0 for all " < % · #, but not $0

$·"-CA0. Each theory in the above listis strictly stronger than the preceding ones if we assume ' & #2.

2The system !0#-CA0 is sometimes denoted by (!0

1-CA0)# in the literature.

Page 8: Introduction - math.berkeley.eduantonio/papers/veblen.pdf · ALBERTO MARCONE AND ANTONIO MONTALBAN´ Abstract. We study the computability-theoretic complexity and proof-theo-retic

8 ALBERTO MARCONE AND ANTONIO MONTALBAN

ACA0 and ATR0 are well-known and widely studied: [Sim99] includes a chapterdevoted to each of them and their equivalents. (The axiomatization of ATR0 givenabove is equivalent to the usual one by [Sim99, Theorem VIII.3.15].) ACA+

0 wasintroduced in [BHS87], where it was shown that it proves Hindman’s Theorem incombinatorics (to this day it is unknown whether ACA+

0 and Hindman’s Theoremare equivalent). ACA+

0 has also been used in [Sho06] (where it is proved that ACA+0

is equivalent to statements asserting the existence of invariants for Boolean alge-bras) and in [MM09] (where ACA+

0 is used to prove a restricted version of Fraısse’sconjecture on linear orders). ACA!

0 is also featured in [MM09]. The computation ofits proof-theoretic ordinal, which turns out to be !", is due to Jager (unpublishednotes, a proof appears in [McA85], and a di!erent proof is included in [Afs08]). Thetheories $0

%-CA0 are natural generalizations of ACA+0 .

3. Forward direction

In this section we prove the “forward direction”of Theorems 1.1, 1.5, 1.7, 1.9,and 1.2. The results in this section are already known (though often written indi!erent settings) but we include them as our proofs illustrate how the iterates ofthe Turing jump relate with the epsilon and Veblen functions.

The following theorem is essentially contained in Hirst’s proof [Hir94] of theclosure of well-orderings under exponentiation in ACA0.

Theorem 3.1. If X is a Z-computable linear ordering, and !X has a Z-computabledescending sequence, then Z ! can compute a descending sequence in X .

Proof. Let (ak : k % N) be a Z-computable descending sequence in !X . We canwrite ak in the form #xk,0 · mk,0 + #xk,1 · mk,1 + · · · + #xk,lk · mk,lk where eachmk,0 % N is positive and xk,i >X xk,i+1 for all i < lk.

Using Z !, we recursively define a function f : N " X:# which is decreasing withrespect to the lexicographic ordering<X&". (We use x·m to denote 'x,m( % X:#.)Each f(n) is of the form xk,i · mk,i for some k and i ) lk. At the following step,when we define f(n + 1), either we increase k and leave i unchanged, or, if this isnot possible, we keep k unchanged and increase i by one. We will have that if f(n)is of the form xk,i ·mk,i, then xh,j ·mh,j = xk,j ·mk,j for all h > k and j < i.

Let f(0) = x0,0 ·m0,0. Assuming we already defined f(n) = xk,i ·mk,i, we needto define f(n+ 1). If there exist h > k such that xh,i ·mh,i <X&" xk,i ·mk,i, thenlet f(n+ 1) = xh,i ·mh,i for the least such h. If xh,i ·mh,i &X&" xk,i ·mk,i for allh > k then we must have i < lk (otherwise ak >!X ak+1 cannot hold) and we canlet f(n+ 1) = xk,i+1 ·mk,i+1.

It is then straightforward to obtain a f -computable, and hence Z !-computable,descending sequence in X . "

The proof above produces an index for a Z !-computable descending subsequencein X , uniformly in X and the Z-computable descending sequence in !X .

Corollary 3.2. ACA0; WOP(X !" !X ).

Proof. The previous proof can be formalized within ACA0. "Corollary 3.3. ACA!

0; #nWOP(X !" !"n,X #).

Proof. Theorem 3.1 implies that, given n, if X is a Z-computable linear ordering,and !"n,X # has a Z-computable descending sequence, then Z(n) can compute adescending sequence in X . This can be formalized within ACA!

0. "The following two theorems are new in the form they are stated. However, they

can easily be obtained from the standard proof that ACA0 proves that every ordinal

Page 9: Introduction - math.berkeley.eduantonio/papers/veblen.pdf · ALBERTO MARCONE AND ANTONIO MONTALBAN´ Abstract. We study the computability-theoretic complexity and proof-theo-retic

THE VEBLEN FUNCTIONS FOR COMPUTABILITY THEORISTS 9

below $2(0) can be proved well-founded in ACA+0 , and that every ordinal below "0

can be proved well-ordered in Predicative Analysis [Fef64, Sch77].

Theorem 3.4. If X is a Z-computable linear ordering, and #X has a Z-computabledescending sequence, then Z(") can compute a descending sequence in X .

Proof. Let (ak : k % N) be a Z-computable descending sequence in #X . If noconstant term !x appears in a0, then a0 < #"n0,0# for some n0 so that we essentiallyhave a descending sequence in !"n0,0#. Then, applying n0 times Theorem 3.1, wehave that Z(n0) computes a descending sequence in 0, a contradiction.

Thus we can let x0 be the largest x % X such that !x appears in a0. It is nothard to prove by induction on terms that !x0 ) a0 < #"n0,#x0+1# for some n0 % N.By Lemma 2.6, #X ! #"n0,#x0+1# is computably isomorphic to !"n0,"X!(#x0+1)# andwe can view the ak’s as elements of the latter. Using Theorem 3.1 n0 times, weobtain a Z(n0)-computable descending sequence in #X !(!x0 +1). Noticing that theproof of Theorem 3.1 is uniform, we can apply this process again to the sequencewe have obtained, and get an x1 <X x0 and a descending sequence in #X !(!x1 +1)computable in Z(n0+n1) for some n1 % N. Iterating this procedure we obtain aZ(")-computable descending sequence x0 >X x1 >X . . . in X . "Corollary 3.5. ACA+

0 ; WOP(X !" #X ).

Proof. The previous proof can be formalized within ACA+0 . "

Theorem 3.6. Let " be a Z-computable well-ordering. If X is a Z-computablelinear ordering, and "(",X ) has a Z-computable descending sequence, then Z("!)

can compute a descending sequence in X .

Proof. By Z-computable transfinite recursion on ", we define a computable proce-dure that given a Z-computable index for a linear ordering X and for a descendingsequence in "(",X ), it returns a Z("!)-computable index for a descending se-quence in X . Let (ak : k % N) be a computable descending sequence in "(",X ).Let x0 be the largest x % X such that the constant term $!,x appears in a0 (ifno $!,x appears in a0, just use 0 in place of $!,x0 in the argument below). It isnot hard to prove by induction on terms that $!,x0 ) a0 < $n0

%0($!,x0 + 1) for

some '0 < " and n0 % N, (where $n0% (z) is obtained by applying the $% function

symbol n0 times to z). It also not hard to show that "(",X ) ! $n0%0($!,x0 + 1) is

computably isomorphic to $n0('0,"(",X !x0)+1) (where "n0(',Z) is obtained byapplying the "(', ·)-operator on linear orderings n0 times to Z). Using the induc-

tion hypothesis n0 times, we obtain a Z("%0 ·n0)-computable descending sequence in"(",X !x0) + 1. Then, we apply this process again to the sequence we have ob-tained, and get x1 <X x0 and a descending sequence in "(",X !x1)+1 computable

in Z("%0 ·n0+"%1 ·n1) for some '1 < " and n1 % N. Iterating this procedure we obtaina Z("!) descending sequence x0 >X x1 >X . . . in X . "Corollary 3.7. Let " be a computable ordinal. Then $0

"!-CA0; WOP(X !"$(",X )).

Proof. The previous proof can be formalized within $0"! -CA0 for a fixed computable

". "Corollary 3.8. ATR0; WOP(X !" "(X , 0)).

Proof. Let " be a well-ordering and assume, towards a contradiction, that thereexists a descending sequence in "(", 0). Let Z be a real such that both " and thedescending sequence are Z-computable. By Theorem 3.6 Z("!) (which exists inATR0) computes a descending sequence in 0, which is absurd. "

Page 10: Introduction - math.berkeley.eduantonio/papers/veblen.pdf · ALBERTO MARCONE AND ANTONIO MONTALBAN´ Abstract. We study the computability-theoretic complexity and proof-theo-retic

10 ALBERTO MARCONE AND ANTONIO MONTALBAN

4. Ordinal exponentiation and the Turing Jump

In this section we give a proof of the second part of Theorem 1.3. Our proof is aslight modification of Hirst’s proof, and prepares the ground for the generalizationsin the following sections.

We start by defining a modification of the Turing jump operator with nicercombinatorial properties. We will then define two computable approximations tothis jump operator, one from strings to strings, and the other one from trees totrees.

Definition 4.1. Given Z % NN, we define the sequence of Z-true stages as follows:

tn = max{tn$1 + 1, µt({n}Zt (n)5)},

starting with t$1 = 1 (so that tn & n+2). If there is no t such that {n}Zt (n)5, thenthe above definition gives tn = tn$1 + 1. So, tn is a stage where Z can correctlyguess Z ! !n + 1 because #m ) n(m % Z ! 6$ {m}Z!tn(m)5). With this in mind,we define the Jump operator to be the function J : NN " NN such that for everyZ % NN and n % N,

J (Z)(n) = Z ! tn,or equivalently

J (Z) = 'Z ! t0, Z ! t1, Z ! t2, Z ! t3, . . .(Here is a sample of this definition:

t0 t1 t2 t3

Z = !Z(0), Z(1)! "# $J (Z)(0)

, Z(2), Z(3), Z(4), Z(5)

! "# $J (Z)(1)

, Z(6)

! "# $J (Z)(2)

, Z(7), Z(8), Z(9), Z(10), Z(11)

! "# $J (Z)(3)

, Z(12), · · ·"

Of course, J (Z) <T Z ! for every Z as n % Z ! 6$ {n}J (Z)(n)(n)5. So, froma computability viewpoint, there is no essential di!erence between J (Z) and theusual Z !.

Definition 4.2. The Jump function is the mapping J : N<N " N<N defined asfollows. For * % N<N, define tn = max{tn$1 + 1, µt({n}*!t(n)5)}, starting witht$1 = 1 (so that tn & n+ 2). Again, if there is no t such that {n}*!t(n)5, then theabove definition gives tn = tn$1 + 1. Let J(*) = '* ! t0,* ! t1, . . . ,* ! tk$1( where kis least such that tk > |*|.

Given + % J(N<N), we let K(+) be the last entry of + when + *= ,, and K(,) = ,.

Remark 4.3. Since we can computably decide whether {n}*!t(n)5, the Jump func-tion is computable. The computability of K is obvious.

The following Lemma lists the key properties of J and K. We will refer to theseproperties as (P1), . . . , (P6).

Lemma 4.4. For every *, + ! % N<N and + % J(N<N),

(P1) J(*) = , if and only if |*| ) 1.(P2) K(J(*)) = * when |*| & 2.(P3) J(K(+)) = + .(P4) If * *= *! and at least one has length & 2, then J(*) *= J(*!).(P5) |J(*)| < |*| and |K(+)| > |+ | except when + = ,.(P6) If + ! / + then + ! % J(N<N) and K(+ !) / K(+).

Page 11: Introduction - math.berkeley.eduantonio/papers/veblen.pdf · ALBERTO MARCONE AND ANTONIO MONTALBAN´ Abstract. We study the computability-theoretic complexity and proof-theo-retic

THE VEBLEN FUNCTIONS FOR COMPUTABILITY THEORISTS 11

Proof. (P1) is obvious from the definition.(P2) follows from the fact that, when |*| & 2, tk$1 = |*| (using the notation of

Definition 4.2). In fact tk$1 ) |*| by definition of k, and if tk$1 < |*| then we haveeither {k}*!tk(k)5 (and hence tk ) |*|) or tk = tk$1+1 ) |*|, against the definitionof k.

(P3) follows from (P2) and K(,) = ,.(P4) follows immediately from (P1) and (P2).The first part of (P5) follows from tn & n+2. The second part is a consequence

of the first, (P1) and (P2).(P6) is obvious when + ! = ,, using the second part of (P5). Otherwise we have

+ ! = '* ! t0,* ! t1, . . . ,* ! tj( for some j < k 0 1, so that K(+ !) = * ! tj / * ! tk$1 =K(+). It is easy to check that + ! = J(* ! tj). "

The following Lemma explains how the Jump function approximates the Jumpoperator.

Lemma 4.5. Given Y, Z % NN, the following are equivalent:

(1) Y = J (Z);(2) for every n there exists *n / Z with |*n| > n such that Y !n = J(*n).

Proof. Suppose first that Y = J (Z). When n = 0 let *n = Z ! 1, which works by(P1). When n > 0 let *n = K(Y !n) = K(Y !n) = J (Z)(n0 1) / Z. If {0}Z(0)5then Y (0) / Z is such that {0}Y (0)(0)5 and Y (0) . *n so that also {0}*n(0)5 andJ(*n)(0) = Y (0). If {0}Z(0)4 then Y (0) = Z ! 2 = *n ! 2 = J(*n)(0). This isthe base step of an induction that, using the same argument, shows that Y (i) =J(*n)(i) for every i < n. Thus Y !n . J(*n). By (P6), we have Y !n % J(N<N)and we can apply (P3) and (P5) to obtain Y !n = J(*n) and |*n| > n.

Now assume that (2) holds, and suppose towards a contradiction that Y *= J (Z).Let n be least such that Y (n 0 1) *= J (Z)(n 0 1). If *n / Z is such that Y !n =J(*n) we have J(*n)(n01) *= J (Z)(n01). This can occur only if {n01}*n(n01)4and {n 0 1}Z(n 0 1)5, which implies n! > |*n|, where n! = |J (Z)(n 0 1)|. Noticethat for any m > n! we have J(Z ! m)(n 0 1) = J (Z)(n 0 1) and hence J(Z !m)(n 0 1) *= Y (n 0 1). This contradicts the existence of *n$ / Z with |*n$ | > n!

such that Y !n! = J(*n$). "

The following corollary is obtained by iterating the Lemma.

Corollary 4.6. For every m > 0, given Y, Z % NN, the following are equivalent:

(1) Y = Jm(Z);(2) for every n there exists *n / Z with |*n| & n+m such that Y !n = Jm(*n).

The Jump function leads to the definition of the Jump Tree.

Definition 4.7. Given a tree T . N<N we define the Jump Tree of T to be

J T (T ) = { J(*) : * % T }.

The following lemmas summarize the main properties of the Jump Tree.

Lemma 4.8. For every tree T , J T (T ) is a tree computable in T .

Proof. J T (T ) is a tree because if + / J(*) for * % T , then + = J(K(+)) (by (P6)and (P3)) and K(+) % T (since by (P6), (P2) and (P1), K(+) / K(J(*)) . *).

J T (T ) is computable in T because + % J T (T ) if and only if + = J(K(+))(which is equivalent to + % J(N<N) by (P3)) and K(+) % T . "

Lemma 4.9. For every tree T , [J T (T )] = {J (Z) : Z % [T ] }.

Page 12: Introduction - math.berkeley.eduantonio/papers/veblen.pdf · ALBERTO MARCONE AND ANTONIO MONTALBAN´ Abstract. We study the computability-theoretic complexity and proof-theo-retic

12 ALBERTO MARCONE AND ANTONIO MONTALBAN

Proof. First let Z % [T ]. Since by Lemma 4.5 for every n % N, J (Z)!n = J(*) forsome * / Z, so J (Z)!n % J T (T ). This implies {J (Z) : Z % [T ] } . [J T (T )].

To prove the other inclusion, fix Y % [J T (T )], notice that Y (n) / Y (n + 1) %N<N for every n, and let Z =

%n'N Y (n) % NN. Observe that, again by Lemma

4.5, Y = J (Z) and Z % [T ]. "

We can now define the Z-computable linear ordering of theorem 1.3: let XZ ='J T (TZ),)KB( where TZ = {Z !n : n % N }. Note that XZ is indeed a linearordering and, by Lemma 4.8, it is Z-computable. Since Z is the unique pathin TZ , by Lemma 4.9 J (Z) is the unique path in J T (TZ). Moreover, for every+ = J(*) % J T (TZ) we have that either + / J (Z) or there is some i such that+ ! i = J (Z)! i and +(i) *= J (Z)(i). This can only happen if {i}*(i)4 and {i}Z(i)5,so that +(i) / J (Z)(i). By our assumption on the coding of strings, we have+(i) < J (Z)(i) and hence + <KB J (Z)! |+ |.

Let '+n(n'N be an infinite <KB-descending sequence in J T (TZ). If +n */ J (Z)for some n then +m <KB +n <KB J (Z) ! |+m| for all m > n, which by Lemma 2.12implies the existence of a path in J T (TZ) di!erent from J (Z), a contradiction.Therefore any infinite descending sequence in XZ consists only of initial segmentsof J (Z) and hence computes J (Z) <T Z !.

We still need to prove the existence of a Z-computable descending sequence in!XZ . To this end we use of the following function.

Definition 4.10. Let T be a tree and order J T (T ) by )KB. Define h : T "!JT (T ) by

h(*) =

&

''()

i<|J(*)|{i}&(i)(

#J(*)!i

*

++,+ #J(*) · 2

for * *= , and h(,) = #) · 3.

The sum above is written in )KB-decreasing order, so that indeed h(*) %!JT (T ).

Since J is computable, h is computable as well.The proof below should help the reader understand the motivation for the defi-

nition above.

Lemma 4.11. h is (=, <!JT (T ))-monotone.

Proof. Suppose ,,* % T are such that , = *; we want to show that h(,) <!JT (T )

h(*).If * = , then #) occurs with multiplicity 3 in J(*) and with multiplicity at most

2 in J(,). Since , is the )KB-maximum element in N<N(and hence also in J T (T )),this implies h(,) <!JT (T ) h(*).

If * *= , then J(*) *= J(,) by (P4). Since * / ,, if {i}+(i)4 then {i}*(i)4 as well.Thus there are two possibilities. If for all i < |J(*)|, {i}*(i)4 whenever {i}+(i)4then J(*) / J(,) and the first di!erence between h(*) and h(,) is the coe#cientof #J(*), which in h(*) is 2 and in h(,) is either 1 or 0 (depending on whether{|J(*)|}+(|J(*)|)4 or not). In any case, h(,) <!JT (T ) h(*). If instead for somei < |J(*)|, {i}*(i)4 and {i}+(i)5 let i0 be the least such i. Then the first di!erencebetween h(*) and h(,) occurs at #J(*!i0), which appears in h(*) but not in h(,).Again, we have h(,) <!JT (T ) h(*). "

We can now finish o! the proof of the second part of Theorem 1.3. The sequence'h(Z !n)(n'N is Z-computable and strictly decreasing in !XZ by Lemma 4.11.

Page 13: Introduction - math.berkeley.eduantonio/papers/veblen.pdf · ALBERTO MARCONE AND ANTONIO MONTALBAN´ Abstract. We study the computability-theoretic complexity and proof-theo-retic

THE VEBLEN FUNCTIONS FOR COMPUTABILITY THEORISTS 13

Obviously our proof yields the following generalization of the second part ofTheorem 1.3.

Theorem 4.12. For every real Z there exists a Z-computable linear ordering Xwith a Z-computable descending sequence in !X such that every descending se-quence in X computes Z !.

5. The ! function and the #-Jump

In this section we extend the construction of Section 4. To iterate the construc-tion, even only a finite number of times, requires generalizing the definition of h.Then we tackle the issue of extending the definition at limit ordinals by consideringthe #-Jump.

5.1. Finite iterations of exponentiation and Turing Jump. We start bydefining a version of the function h used in the previous section that we can it-erate.

Definition 5.1. Let X be a linear ordering, T a tree and

g : J T (T ) " Xa function. Define

hg : T " !X

by

hg(*) =

&

''()

i<|J(*)|{i}&(i)(

#g(J(*)!i)

*

++,+ #g(J(*)) · 2

for * *= , and hg(,) = #g()) · 3.

Note that when g is the identity, then hg = h of the previous section. Also, hg

is g-computable.

Lemma 5.2. If g is (=, <X )-monotone, then hg is (=, <!X )-monotone.

Proof. Notice that g (=, <X )-monotone implies that the sum in the definition ofhg(*) is written in decreasing order. The proof is the same as the one for Lemma4.11. "

We can now prove the analogue of Theorem 1.3 for iterations of the exponential(recall the notation !"n,X # introduced in Definition 2.2).

Theorem 5.3. For every n % N and Z % NN, there is a Z-computable linearordering Xn

Z such that the jump of every descending sequence in XnZ computes Z(n),

but there is a Z-computable descending sequence in !"n,XnZ #.

Proof. Letting again TZ = {Z !n : n % N }, we define a sequence 'Ti(i%n of trees asfollows: let T0 = TZ and Ti+1 = J T (Ti) for every i < n. By induction on i, usingLemmas 4.8 and 4.9, we have that each Ti is a Z-computable tree and that the onlypath through Ti is J i(Z) (i.e. the result of applying i times J starting with Z).We let Xn

Z = 'Tn,)KB(, which is a Z-computable linear ordering. By Lemma 2.12if f is a descending sequence in Xn

Z then J n(Z) )T f !. Since Z(n) <T J n(Z), thefirst property of Xn

Z is proved.To show that there is a Z-computable descending sequence in !"n,Xn

Z # we defineby recursion on m ) n functions gm : Tn$m " !"m,Xn

Z #. Let g0 : Tn " XnZ be the

identity function (Tn is indeed the domain of XnZ ). We define gm+1 : Tn$m$1 "

!"m+1,XnZ # by gm+1 = hgm as in Definition 5.1. By induction on m ) n, using

Page 14: Introduction - math.berkeley.eduantonio/papers/veblen.pdf · ALBERTO MARCONE AND ANTONIO MONTALBAN´ Abstract. We study the computability-theoretic complexity and proof-theo-retic

14 ALBERTO MARCONE AND ANTONIO MONTALBAN

J "(Z) =

!$

Y

......

J 4(Z)(0) = Y (3) ! · · ·...

J 3(Z)(0) = Y (2) ! K(Y (3))

J!!

! · · · · · · · · · ! J 2(Z)

J 2(Z)(0) = Y (1) ! K(Y (2))

J""

! K2(Y (3))

J""

! · · · · · · ! J (Z)

J##

J (Z)(0) = Y (0) ! K(Y (1))

J""

! K2(Y (2))

J""

! K3(Y (3))

J""

! · · · ! Z

J##

%

K"(Y !1) !

!

K"(Y !2) !

!

K"(Y !3) !

!

K"(Y !4) !

!

· · · ! K"(Y )

!

Figure 1. Assuming Y = J "(Z).

Lemma 5.2, it is immediate that each gm is (=, <!"m,Tn#)-monotone and com-putable. Hence the sequence 'gn(Z ! j)(j'N in !"n,Xn

Z # is Z-computable and de-scending. "5.2. The #-Jump. Now we define the iteration of the Jump operator at the firstlimit ordinal #. Again, our definition is slightly di!erent than the usual one so thatit has nicer combinatorial properties. The di!erence being that instead of pastingall the J i(Z) together as columns, we will take only the first value of each. Later wewill show that this is enough. We will also define two computable approximationsto this #-jump operator, one from strings to strings, and the other one from treesto trees, and a computable inverse function.

Definition 5.4. We define the #-Jump operator to be the function J " : NN " NN

such that for every Z % NN

J "(Z) = 'J (Z)(0), J 2(Z)(0), J 3(Z)(0), . . .(,or, in other words, J "(Z)(n) = J n+1(Z)(0).

Notice that J "(J (Z)) equals J "(Z) with the first element removed. Beforeshowing that J "(Z) <T Z(") it is convenient to define the inverse of J ".

Definition 5.5. Given Y % J "(NN) we define

K"(Y ) =-

n

Kn(Y (n)).

We need to show that the union above makes sense. Assume Y = J "(Z). Itmight help to look at Figure 1. Notice that for each n, Y (n) / J n(Z) because foreveryX, J (X)(0) / X and Y (n) = J (J n(Z))(0). We also know that if * / J (X),then K(*) / X, so that Kn(Y (n)) / Z. It follows that

%n K

n(Y (n)) . Z.Applying (P5) n times we get that |Kn(Y (n))| > n, and therefore the union abovedoes actually produce Z. We have just proved the following lemma.

Lemma 5.6. For every Z % NN, K"(J "(Z)) = Z.

Lemma 5.7. For every Z % NN, J "(Z) <T Z(").

Proof. We already know that Z(n) <T J n(Z) uniformly in n and hence thatZ(") =

.n'N Z(n) <T

.n'N J n(Z). It immediately follows that J "(Z) )T Z(").

Page 15: Introduction - math.berkeley.eduantonio/papers/veblen.pdf · ALBERTO MARCONE AND ANTONIO MONTALBAN´ Abstract. We study the computability-theoretic complexity and proof-theo-retic

THE VEBLEN FUNCTIONS FOR COMPUTABILITY THEORISTS 15

For the other direction we need to uniformly compute all the reals J n(Z) fromJ "(Z). We do this as follows. Given Y % NN, let Y $n be Y with its first n ele-ments removed. Then, J "(J n(Z)) = J "(Z)$n. By the lemma above we get thatJ n(Z) = K"(J "(Z)$n), which we can compute uniformly from J "(Z). "

As in section 4, where we computably approximated the jump operator, wewill now approximate the #-Jump operator with a computable operation on finitestrings.

Definition 5.8. The #-Jump function is the map J" : N<N " N<N defined asfollows. Given * % N<N, let

J"(*) = 'J(*)(0), J2(*)(0), . . . , Jn$1(*)(0)(,where n is the least such that Jn(*) = , (there is always such an n, because, by(P5), |J i(*)| )| *|0 i for i ) |*|). Note that then, by (P1), |Jn$1(*)| = 1.

J" is computable (because J is computable) and we will now define its com-putable partial inverse K".

Definition 5.9. Given + % J"(N<N), let K"(+) = K |, |(-(+)) (recall that -(+) ='+(|+ |0 1|)() when + *= ,, and K"(,) = ,.

The following properties are the analogues of those of Lemma 4.4 for the #-Jumpfunction and its inverse. We will refer to them as (P"1), . . . , (P"7).

Lemma 5.10. For *,*!, + ! % N<N, + % J"(N<N),

(P"1) J"(*) = , if and only if |*| ) 1.(P"2) K"(J"(*)) = * for |*| & 2.(P"3) J"(K"(+)) = + .(P"4) If * *= *! and at least one has length & 2, then J"(*) *= J"(*!).(P"5) |J"(*)| < |*| and |K"(+)| > |+ | except when + = ,.(P"6) If + ! / + then + ! % J"(N<N) and K"(+ !) / K"(+).(P"7) If J"(*!) . J"(*) then, for every m, Jm(*!) . Jm(*).

Proof. (P"1) follows from (P1) and the fact that J"(*) = , is equivalent to J(*) =,.

To prove (P"2) let |J"(*)| = n > 0. Then -(J"(*)) = 'Jn(*)(0)( = Jn(*)because |Jn(*)| = 1 as noticed in the definition of J". Thus K"(J"(*)) =Kn(Jn(*)) = * by (P2).

(P"3) follows from (P"2) and K(,) = ,. (P"4) follows immediately from (P"1)and (P"2). The first part of (P"5) is immediate because by (P5) we have J |*|(*) =,. The second part of (P"5) is a consequence of the first, (P"1) and (P"2).

For (P"6) look at Figure 2. (P"6) is obvious when + ! = ,, using the second partof (P"5). Otherwise, let * be such that + = J"(*). The idea is to define *! / * asin the picture and then show that + ! = J"(*!). Notice that |*| > |+ | & 2 by (P"5),and that * = K"(+) by (P"2). Notice also that

-(+ !) = '+(|+ !|0 1)( = 'J |, $|(*)(0)( / J |, $|(*)

because |+ !| < |+ | and hence |J |, $|(*)| > 1. Let *! = K |, $|(-(+ !)). Using (P6)|+ !| times we know that *! / * and J |, $|(*!) = -(+ !). Now, we need to show thatJ"(*!) = + !. First notice that |J"(*!)| = |+ !| because |J |, $|(*!)| = |-(+ !)| = 1. Byinduction on i ) |+ !| we can show, using (P6) and (P2), that

(5.1) J |, $|$i(*!) = Ki(-(+ !)) / Ki(J |, $|(*)) = J |, $|$i(*).

Now for j < |+ !|, J"(*!)(j) = Jj+1(*!)(0) = Jj+1(*)(0) = +(j) = + !(j).For (P"7) let + ! = J"(*!). Then, if i = |+ !| 0 m, equation (5.1) shows that

Jm(*!) . Jm(*). "

Page 16: Introduction - math.berkeley.eduantonio/papers/veblen.pdf · ALBERTO MARCONE AND ANTONIO MONTALBAN´ Abstract. We study the computability-theoretic complexity and proof-theo-retic

16 ALBERTO MARCONE AND ANTONIO MONTALBAN

# =

!

J "($)

!

$ $

#

#(|# |$ 1) = J |& |($)(0) !#(|# |$ 1)" = J |& |($)

J

##

......

. . .

J$$

#(|# "|$ 1) = J |& $|($)(0) !#(|# "|$ 1)" = J |& $|($") !

K %%

· · · ! J |& $|($)

J&&

......

. . .

K %%

. . .

J&&

#(0) = J($)(0) J($")

K ''

! · · ·! J($)

J((

% %

$" ! · · ·! $

J))

Figure 2. Assuming + = J"(*) and + ! / + .

As we did in Section 4, we now explain how the #-Jump function approximatesthe #-Jump operator.

Lemma 5.11. Given Y, Z % NN, the following are equivalent:

(1) Y = J "(Z);(2) for every n there exists *n / Z with |*n| > n such that Y !n = J"(*n).

Proof. First assume Y = J "(Z). When n = 0 let *0 = Z ! 1, which works by(P"1). When n > 0 let *n = K"(Y ! n). We recommend the reader to look atFigure 1 again. By (P"3) we have Y !n = J"(*n). Since *n = Kn('Y (n 0 1)() =Kn$1(Y (n0 1)), *n is one of the strings occurring in the definition of K"(Y ) andhence *n / K"(Y ) = Z by Lemma 5.6. We get that |*n| > n by (P5) applied ntimes to *n = Kn('Y (n0 1)().

Suppose now that (2) holds. By (P"7), we get that for all m and n, Jm(*n) .Jm(*n+1). Using Corollary 4.6, it is straightforward to show that for all m < n,%

n Jm(*n) = Jm(Z) and hence Jm(*n)(0) = Jm(Z)(0). It follows that for every

m and n > m

J "(Z)(m) = Jm+1(Z)(0) = Jm+1(*n)(0) = J"(*n)(m) = Y (m). "Again as in Section 4, the #-Jump function leads to the definition of the #-Jump

Tree.

Definition 5.12. Given a tree T . N<N the #-Jump Tree of T is

J T "(T ) = { J"(*) : * % T }.Lemma 5.13. For every tree T , J T "(T ) is a tree computable in T .

Proof. The proof is identical to the proof of Lemma 4.8, using Lemma 5.10 in placeof Lemma 4.4. "Lemma 5.14. For every tree T , [J T "(T )] = {J "(Z) : Z % [T ] }.Proof. To prove {J "(Z) : Z % [T ] } . [J T "(T )] we can argue as in the proof ofLemma 4.9, using Lemma 5.11 in place of Lemma 4.5.

To prove the other inclusion, fix Y % [J T "(T )]. For each n, let *n = K"(Y !n) % T . Since J"(*n) = Y !n by (P"3), we have *n / *n+1 for each n by (P"6).Let Z =

%n'N *n % [T ]. Then, by Lemma 5.11 we get Y = J "(Z). "

Page 17: Introduction - math.berkeley.eduantonio/papers/veblen.pdf · ALBERTO MARCONE AND ANTONIO MONTALBAN´ Abstract. We study the computability-theoretic complexity and proof-theo-retic

THE VEBLEN FUNCTIONS FOR COMPUTABILITY THEORISTS 17

5.3. #-Jumps versus the epsilon function. Our goal now is to generalize Def-inition 5.1 with an operator that uses # rather than !. We thus wish to define anoperator h" that, given an order preserving function g : J T "(T ) " X (where X isa linear order), returns an order preserving function h"

g : T " #X . To do so we williterate the h operator of Definition 5.1 along the elements of J T "(T ).

Let us give the rough motivation behind the definition of the operator h" below.Suppose we are given an order preserving function g : J T "(T ) " X . For each i, wewould like to define a monotone function fi : J T i(T ) " #X such that fi = hfi+1 ,where hfi+1 is as in Definition 5.1. Notice that the range of this function is correct,using the fact that !"X is computably isomorphic to #X . However, we do not havea place to start as to define such fi we would need fi+1, and this recursion goesthe wrong way. Note that if + = J"(*) % J T "(T ), then '+(i)( % J T i(T ), and wecould use g to define fi at least on the strings of length 1, of the form '+(i)(. (Thisis not exactly what we are going to do, but it should help picture the construction.)The good news is that to calculate fi$1 = hfi on strings of length at most 2, weonly need to know the values of fi on strings of length at most 1. Inductively, thiswould allow us to calculate f0 : T " X on strings of length at most i. Since thiswould work for all i, we get f0 defined on all T . We now give the precise definition.

First, we need to iterate the Jump Tree operator along any finite string.

Definition 5.15. If T is a tree we define

J T ", (T ) = { J |, |+1(*) : * % T 9 + . J"(*) }.

Notice that J T ", (T ) . J T |, |+1(T ) and that J T "

, (T ) is empty when + /%J T "(T ). The following Lemma provides an alternative way of defining J T "

, (T )by an inductive definition.

Lemma 5.16. Given a tree T . N<N,

J T ") (T ) = J T (T )

J T ",!"c#(T ) = J T (J T "

, (T )"c#).

(T"c# was defined in 2.10 as { , % T : 'c( . , 1 , = , }.)

Proof. Straightforward induction on |+ |. "

The next Lemma links J T ", (T ) to J T "(T ).

Lemma 5.17. Given a tree T . N<N, + % N<N, and c % N,

+"'c( % J T "(T ) 6$ 'c( % J T ", (T ).

Proof. This follows immediately from the definitions of J T "(T ) and J T ", (T ). "

Definition 5.18. Let X be a linear ordering and g : J T "(T ) " X be a function.We define simultaneously for each + % J T "(T ) a function

f, : J T ", (T ) " #X

by recursion on |*|:

f, (*) =

/!g(,) if * = ,;hf'!"&(0)#

(*) if * *= ,.

Here hf'!"&(0)#is defined according to Definition 5.1. We then define

h"g = hf% : T " #X .

Page 18: Introduction - math.berkeley.eduantonio/papers/veblen.pdf · ALBERTO MARCONE AND ANTONIO MONTALBAN´ Abstract. We study the computability-theoretic complexity and proof-theo-retic

18 ALBERTO MARCONE AND ANTONIO MONTALBAN

Remark 5.19. First of all notice that we are really doing a recursion on |*|. Infact, to compute hf'!"&(0)#

(*) when * *= , we use f,!"*(0)# on strings of the form

J(*)! i, which have length ) |J(*)| < |*| by (P5).Let us notice the functions have the right domains and ranges. The proof is done

simultaneously for all + % J T "(T ) by induction on |*|. Take * % J T ", (T ) with

|*| = n. Suppose that for all + ! % J T "(T ) and all *! % J T ", $(T ) with |*!| < n we

have that f, $(*!) is defined and f, $(*!) % #X .If * = ,, then f, (*) = !g(,) % #X . Suppose * *= , and let + ! = +"'*(0)(. Then

f, (*) = hf'$ (*). When computing hf'$ (*), we only apply f, $ to strings of theform J(*)! i. These strings have length less than n and, by Lemma 4.8, belong toJ T (J T "

, (T )"*(0)#) = J T ", $(T ) (by Lemma 5.16). By the induction hypothesis we

have that f, $ is defined on these strings and takes values in #X . Therefore, hf'$ (*) isdefined and hf'$ (*) % !"X . Using that !"X = #X , we get that f, : J T "

, (T ) " #X .Finally, since f) : J T (T ) " #X , we get that h"

g : T " #X .

Lemma 5.20. If g : J T "(T ) " X is (=, <X )-monotone, then h"g : T " #X is

(=, <"X )-monotone.

Proof. First, we note that by Lemma 5.2, it su#ces to show that f) is (=, <"X )-monotone. We will actually show that for every + % J T "(T ), f, is (=, <"X )-monotone.

The proof is again done simultaneously for all + % J T "(T ) by induction on thelength of the strings. Suppose that on strings of length less than n, for every + !,f, $ is (=, <"X )-monotone. Let *! / * % J T "

, (T ) with |*| = n. Let + ! = +"'*(0)(.Consider first the case when *! = ,. Then f, (*!) = !g(,) while f, (*) is a finite sum

of terms of the form #f'$ (J(*)!i). By the induction hypothesis, the exponent of eachsuch term is less than or equal to f, $(,) = !g(, $) <"X !g(,). So, the whole sum isless than !g(,) = f, (*!). Suppose now that *! *= ,. Since the proof of Lemma 5.2(based on the proof of Lemma 4.11) uses the monotonicity of f, $ only for stringsshorter then * (by (P5)), we get that hf'$ (*

!) >"X hf'$ (*). "Theorem 5.21. For every Z % NN, there is a Z-computable linear ordering Xsuch that the jump of every descending sequence in X computes Z("), but there isa Z-computable descending sequence in #X .

Proof. Let X = 'J T "(TZ),)KB( where again TZ = {Z !n : n % N }. By Lemma5.13, X is Z-computable. By Lemma 5.14, J "(Z) is the unique path in J T "(TZ).Therefore, by Lemma 2.12, the jump of every descending sequence in X computesJ "(Z) <T Z(").

Let g be the identity on X , which is obviously (=, <X )-monotone. By Lemma5.20, h"

g is (=, <"X )-monotone. Since h"g is computable, {h"

g (Z !n) : n % N } is aZ-computable descending sequence in #X . "5.4. Reverse mathematics results. In this section, we work in the weak sys-tem RCA0. Therefore, we do not have an operation that given Z % N<N, returnsJ (Z), let alone J "(Z). However, the predicates with two variables Z and Y thatsay Y = J (Z) and Y = J "(Z) are arithmetic as witnessed by Lemmas 4.5 and5.11. Notice that if condition (2) of Lemma 4.5 holds, then RCA0 can recover thesequence of ti’s in the definition of J (Z) and show that J (Z) is as defined in 4.1.Furthermore, RCA0 can show that J (Z) <T Z ! and hence that ACA0 is equivalent toRCA0+#Z8Y (Y = J (Z)), and ACA!

0 is equivalent to RCA0+#Z#n8Y (Y = J n(Z)).Also, if condition (2) of Lemma 5.11 holds, then as in the proof of that lemma,

in RCA0 we can uniformly build Jm(Z) as%

n Jm(*n), and show that J "(Z) is

as defined in Definition 5.8. Furthermore, we can prove Lemma 5.7 in RCA0: ifY = J "(Z), then Y can compute Z("), and if X = Z("), then X can compute

Page 19: Introduction - math.berkeley.eduantonio/papers/veblen.pdf · ALBERTO MARCONE AND ANTONIO MONTALBAN´ Abstract. We study the computability-theoretic complexity and proof-theo-retic

THE VEBLEN FUNCTIONS FOR COMPUTABILITY THEORISTS 19

a real Y such that Y = J "(Z). Therefore, we get that ACA+0 is equivalent to

RCA0+#Z8Y (Y = J "(Z)).We already know, from Girard’s result Theorem 1.1 that over RCA0, the state-

ment “if X is a well-ordering then !X is a well-ordering” is equivalent to ACA0.We now start climbing up the ladder.

Theorem 5.22. Over RCA0, #nWOP(X !" !"n,X #) is equivalent to ACA!0.

Proof. We showed, in Corollary 3.3, that ACA!0; #nWOP(X !" !"n,X #).

Suppose now that #nWOP(X !" !"n,X #) holds. Consider Z % NN and n % #; wewant to show that J n(Z) exists. By Girard’s theorem we can assume ACA0. LetXn

Z = 'Tn,)KB(, where Tn = J T n(TZ) as in the proof of Theorem 5.3. The proofthat there is a Z-computable descending sequence in !"n,Xn

Z # is finitary and goesthrough in RCA0. So, by WOP(X !" !"n,X #) we get a descending sequence in Xn

Z .By Lemma 2.12, using ACA0, we get Yn % [Tn]. For each i ) n, let Yi = Kn$i(Yn).Lemma 4.9 shows that for each i, Yi % [Ti] and Yi = J (Yi$1). Since Z is the onlypath through TZ , we get that Y0 = Z, and so Yn = J n(Z). "

Theorem 5.23. Over RCA0, WOP(X !" #X ) is equivalent to ACA+0 .

Proof. We already showed that ACA+0 proves WOP(X !" #X ) in Corollary 3.5.

Assume RCA0+WOP(X !" #X ). Let Z % NN; we want to show that there existsY with Y = J "(Z). Build X = 'J T "(TZ),)KB( as in Theorem 5.21. The proofthat #X has a Z-computable descending sequence is completely finitary and can becarried out in RCA0. By WOP(X !" #X ), we get that X has a descending sequence.Since we have ACA0 we can use this descending sequence to get a path Y throughJ T "(TZ). Now, the proof of Lemma 5.14 translates into a proof in RCA0 thatY is J " of some path through TZ . Since Z is the only path through TZ , we getY = J "(Z) as wanted. "

6. General Case

In this section we define the #!-Jump operator, the #!-Jump function, and the#!-Jump Tree, for all computable ordinals ". The constructions of Sections 4 and5, where we considered " = 0 and " = 1 respectively, are thus the simplest casesof what we will be doing here.

The whole construction is by transfinite recursion, and the base case was coveredin Section 4. If " > 0 is a computable ordinal, we assume that we have a fixed non-decreasing computable sequence of ordinals {"i : i % N } such that " = supi'N("i+1). (So, if " = %+1, we can take "i = % for all i.) Notice that we have

0i'N #!i =

#!. In defining the #!-Jump operator, the #!-Jump function, and the #!-JumpTree we make use the #!i -Jump operator, the #!i -Jump function, and the #!i -Jump Tree for each i.

6.1. The iteration of the jump. Our presentation here is di!erent from the oneof previous sections, where we defined the operator first. Here we start from the#!-Jump function, prove its basic properties, then use it to define the #!-JumpTree, and eventually introduce the #!-Jump operator.

Let " > 0 be a computable ordinal and {"i : i % N } be its canonical sequence asdescribed above. To simplify the notation in the definition of the #!-Jump function,assume we already defined J"!i and K"!i for all i, and let J"!

n : N<N " N<N andK"!

n : N<N " N<N be defined recursively by

J"!

0 = id; J"!

n+1 = J"!n > J"!

n ;

K"!

0 = id; K"!

n+1 = K"!

n >K"!n.

Page 20: Introduction - math.berkeley.eduantonio/papers/veblen.pdf · ALBERTO MARCONE AND ANTONIO MONTALBAN´ Abstract. We study the computability-theoretic complexity and proof-theo-retic

20 ALBERTO MARCONE AND ANTONIO MONTALBAN

In other words:

J"!

n = J"!n!1 > J"!n!2 > · · · > J"!0,

K"!

n = K"!0 >K"!1 > · · · >K"!n!1.

Definition 6.1. The #!-Jump function is the map J"!

: N<N " N<N defined by

J"!

(*) = 'J"!

1 (*)(0), J"!

2 (*)(0), . . . , J"!

n$1(*)(0)(,

where n is least such that J"!

n (*) = ,. In this case, since J"!

n (*) = J"!n!1 (J"!

n$1(*)),by (P"!

1) below applied to "n$1, we have |J"!

n$1(*)| = 1.Given + % J"!

(N<N), let

K"!

(+) = K"!

|, | (-(+)).

In particular K"!

(,) = ,, since K"!

0 is the identity function.

Since for " = 1 we have "i = 0 for every i, the definitions we just gave matchexactly Definitions 5.8 and 5.9, where we introduced J" and K". We will notmention again this explicitly, but the reader should keep in mind that the case" = 1 of Section 5 is the blueprint for the work of this section.

Notice that, by transfinite induction, J"!

and K"!

are computable.The following properties generalize those of Lemmas 4.4 and 5.10. We will refer

to them, as usual, as (P"!

1), . . . , (P"!

7).

Lemma 6.2. For *, + ! % N<N, + % J"!

(N<N),

(P"!

1) J"!

(*) = , if and only if |*| ) 1.(P"!

2) K"!

(J"!

(*)) = * for |*| & 2.(P"!

3) J"!

(K"!

(+)) = + .(P"!

4) If * *= *! and at least one has length & 2, then J"!

(*) *= J"!

(*!).(P"!

5) |J"!

(*)| < |*| and |K"!

(+)| > |+ | except when + = ,.(P"!

6) If + ! / + then + ! % J"!

(N<N) and K"!

(+ !) / K"!

(+).(P"!

7) If J"!

(*!) . J"!

(*) and " > 0 then for every m, J"!

m (*!) . J"!

m (*).

Proof. The proof is by transfinite induction on ". The case " = 0 is Lemma 4.4.Since J"!

(*) = , if and only if J"!0 (*) = ,, (P"!

1) follows from the sameproperty for "0.

To prove (P"!

2) let |J"!

(*)| = n 0 1 > 0. Then -(J"!

(*)) = 'J"!

n$1(*)(0)( =J"!

n$1(*) because |J"!

n$1(*)| = 1 as noticed above. SinceK"!

(J"!

(*)) = K"!

n$1(J"!

n$1(*)),K"!

(J"!

(*)) = * follows from (P"!

2) for "n$2,"n$3, . . . ,"0.As in the proof of the case " = 1 in Lemma 5.10, (P"!

3), (P"!

4) and (P"!

5)follow from the properties we already proved.

The proof of (P"!

6) is also basically the same as the proof of (P"6). We rec-ommend the reader to have Figure 3 in mind while reading the proof. The non-trivial case is when + ! *= ,. Let * be such that + = J"!

(*). The idea is todefine *! / * as in the picture and then show that + ! = J"!

(*!). Notice that|*| > |+ | & 2 by (P"!

5), and that * = K"!

(+) by (P"!

2). Notice also that-(+ !) = '+(|+ !|0 1)( = 'J"!

|, $|(*)(0)( / J"!

|, $|(*), where the strict inclusion is because

|+ !| < |+ | and hence |J"!

|, $|(*)| > 1. By induction on i ) |+ !| we can show, using

(P"!

6) and (P"!

2) for "|, $|$1, . . . ,"1,"0, that

(K"!|'$|!i > · · · >K"

!|'$|!1)(-(+ !)) / (K"

!|'$|!i > · · · >K"!|'$|!1

)(J"!

|, $|(*))

= J"!

|, $|$i(*)

Page 21: Introduction - math.berkeley.eduantonio/papers/veblen.pdf · ALBERTO MARCONE AND ANTONIO MONTALBAN´ Abstract. We study the computability-theoretic complexity and proof-theo-retic

THE VEBLEN FUNCTIONS FOR COMPUTABILITY THEORISTS 21

# =

!

J "!($)

!

$ $

#

#(|# |$ 1) = J"!

|& | ($)(0) !#(|# |$ 1)" = J"!

|& | ($)J"

!|'|##

......

. . .

J"!|'|!1&&

#(|# "|$ 1) = J"!

|& $|($)(0) !#(|# "|$ 1)" = J"!

|& $|($") !

K"!|'$|!1 **

· · · ! J"!

|& $|($)

J"!|'$|&&

......

. . .

K"!1 %%

. . .

J"!|'$|!1&&

#(0) = J"!

1 ($)(0) J"!

1 ($")

K"!0 ++

! · · · ! J"!

1 ($)

J"!1&&

% %

$" ! · · ·! $

J"!0$$

Figure 3. Assuming + = J"!

(*) and + ! / + .

and (K"!|'$|!i > · · · >K"

!|'$|!1)(-(+ !)) % J"!

|, $|$i(N<N). In particular, when i = |+ !|,if we set *! = K"!

|, $|(-(+!)), we obtain *! / *. Furthermore, by (P"!

2) applied to"0, . . . ,"|, $|$i$1, we also get

(6.1) J"!

|, $|$i(*!) = (K"

!|'$|!i > · · · >K"!|'$|!1

)(-(+ !)) / J"!

|, $|$i(*).

Therefore, for every j < |+ !|

J"!

(*!)(j) = J"!

j+1(*!)(0) = J"!

j+1(*)(0) = +(j) = + !(j).

Since J"!

|, $|$1(*!) = -(+ !) which has length 1, we get that J"!

(*!) has length |+ !| aswanted.

For (P"!

7) let + ! = J"!

(*!). Then, if i = |+ !| 0 m, equation 6.1 shows thatJ"!

m (*!) . J"!

m (*). "We can now introduce the #!-Jump Tree and prove its computability.

Definition 6.3. Given a tree T . N<N the #!-Jump Tree of T is

J T "!

(T ) = { J"!

(*) : * % T }.

Lemma 6.4. For every tree T , J T "!

(T ) is a tree computable in T .

Proof. The proof is again the same as the one of Lemma 4.8, using Lemma 6.2 inplace of Lemma 4.4. "

We now define the #!-Jump operator J "!

: NN " NN by transfinite induction:the base case is the Jump operator J (Definition 4.1). Given " we assume thatJ "!n

has been defined for all n. To simplify the notation let us define J "!

n recur-sively by J "!

0 = id, J "!

n+1 = J "!n > J "!

n , so that

J "!

n = J "!n!1 > J "!n!2 > · · · > J "!0.

Definition 6.5. Given the computable ordinal " we define the #!-Jump operatorJ "!

: NN " NN and its inverse K"!

by

J "!

(Z)(n) = J "!

n+1(Z)(0) and K"!

(Y ) =-

n

K"!

(Y !n).

Page 22: Introduction - math.berkeley.eduantonio/papers/veblen.pdf · ALBERTO MARCONE AND ANTONIO MONTALBAN´ Abstract. We study the computability-theoretic complexity and proof-theo-retic

22 ALBERTO MARCONE AND ANTONIO MONTALBAN

We first show that K"!

is indeed the inverse of J "!

.

Lemma 6.6. If Y = J "!

(Z) then Z = K"!

(Y ).

Proof. The proof of the lemma is by transfinite induction. Let {"i : i % N } be thefixed canonical sequence fo ". Recall from the definition of K"!

that K"!

(Y !n) =K"!

n ('Y (n 0 1)(). Since 'Y (n 0 1)( = 'J "!

n (Z)(0)( . J "!

n (Z), by the inductionhypothesis applied to "n$1, . . . ,"0, we get that K"!

n ('Y (n 0 1)() . Z. So Z 2K"!

(Y ). By (P"!

5) applied to "0, . . . ,"n$1 we get that |K"!

n ('Y (n0 1)()| > n+1and hence Z = K"!

(Y ). "

Lemma 6.7. For every Z % NN and computable ordinal ", J "!

(Z) <T Z("!).

Proof. This is again proved by transfinite induction. Assuming that J "!i (Z) <T

Z("!i ) for every i, and uniformly in i, we immediately obtain J "!

n (Z) <T Z(%n),where 'n =

0n$1i=0 #!i , for every n. Since 'n < #!, J "!

(Z) )T Z("!) is immediate.For the other reduction we need to uniformly compute J "!

n (Z) from J "!

(Z).The same way we compute Z from J "!

(Z) applying K"!

, we can compute J "!

n (Z)by forgetting about "0, . . . ,"n$1. In other words, by the same proof as Lemma 6.6we can show that for every m

J "!

m (Z) =-

n>m

K"!m(K"!m+1

(. . . (K"!n!1('Y (n0 1)()) . . . ))

using K"!m >K"!m+1 > · · · >K"!n!1 instead of K"!

n . "

We can now prove that J"!

approximates J "!

, extending Lemma 5.11.

Lemma 6.8. Given Y, Z % NN, the following are equivalent:

(1) Y = J "!

(Z);(2) for every n there exists *n / Z with |*n| > n such that Y !n = J"!

(*n).

Proof. We first prove (1) =$ (2). When n = 0 let *0 = Z ! 1, which works by(P"!

1). Let *n = K"!

(Y !n). Then *n . K"!

(Y ) = Z, and Y !n = J"!

(*n). Weget that |*n| > n by applying (P"!

5) n times to *n = K"!

n ('Y (n0 1)().The proof of (2) =$ (1) is similar to the proof of Lemma 5.11 but uses

transfinite induction. By (P"!

7), for all m and n, J"!

m (*n) . J"!

m (*n+1), andhence we can consider

%n J

"!

m (*n) % NN. Then, by the induction hypothesis,%n J

"!

m (*n) = J "!

m (Z), and hence J"!

m (*n)(0) = J "!

m (Z)(0) for all m < n. Itfollows that for every m and n > m

J "!

(Z)(m) = J "!

m+1(Z)(0) = J"!

m+1(*n)(0) = J"!

(*n)(m) = Y (m). "

We are now able to show the intended connection between the #!-Jump Treeand the #!-Jump operator.

Lemma 6.9. For every tree T , [J T "!

(T )] = {J "!

(Z) : Z % [T ] }.

Proof. To prove {J "!

(Z) : Z % [T ] } . [J T "!

(T )] we can argue as in the proof ofLemma 4.9, using Lemma 6.8 in place of Lemma 4.5.

To prove the other inclusion, fix Y % [J T "!

(T )]. Arguing as in the proof ofLemma 5.14, we first let *n = K"!

(Y !n) % T . Let Z = K"!

(Y ) =%

n'N *n % [T ].

We get that Y = J "!

(Z) from Lemma 6.8. "

Page 23: Introduction - math.berkeley.eduantonio/papers/veblen.pdf · ALBERTO MARCONE AND ANTONIO MONTALBAN´ Abstract. We study the computability-theoretic complexity and proof-theo-retic

THE VEBLEN FUNCTIONS FOR COMPUTABILITY THEORISTS 23

6.2. Jumps versus Veblen. First, we need to iterate the Jump Tree operatoralong a finite string.

Definition 6.10. If T is a tree and + % J T "!

(T ) we define

J T "!

, (T ) = { J"!

|, |+1(*) : * % T 9 + . J"!

(*) }.

Lemma 6.11. For + % J T "!

(T ),

J T "!

) (T ) = J T "!0(T )

J T "!

,!"c#(T ) = J T "!|'|+1

(J T "!

, (T )"c#).

(T"c# was defined in 2.10.)

Proof. Straightforward induction on |+ |. "Lemma 6.12. Given a tree T . N<N, + % N<N, and c % N

+"'c( % J T "!

(T ) 6$ 'c( % J T "!

, (T ).

Proof. Follows from the definitions of J T "!

(T ) and J T "!

, (T ). "We now generalize the construction of Definition 5.18, by defining an operator

that converts a function with domain J T "!

(T ) and values in X into a functionwith domain T and values in "(",X ). We will show in Lemma 6.14 that thisoperator preserves monotonicity.

Definition 6.13. By transfinite recursion, we build, for each computable ordinal", an operator h"!

such that given a linear ordering X and a function

g : J T "!

(T ) " X ,

it returnsh"!

g : T " "(",X ).

For " = 0, we let h"!

= h of Definition 5.1. For " > 0 we first define simultane-ously for each + % J T "!

(T ) a function

f, : J T "!

, (T ) " "(",X )

by recursion on |*|:

f, (*) =

!"#

"$

$!,g(,) if * = ,;

h"!n

f'$ (*) if * *= ,, where + ! = +"'*(0)( and n = |+ !|.

We then defineh"!

g = h"!0

f%: T " "(",X ).

Lemma 6.14. If g : J T "!

(T ) " X is total and (=, <X )-monotone, then h"!

g : T ""(",X ) is also total and (=, <#(!,X ))-monotone. Moreover, h"!

g is computable ing.

Proof. We say that a partial function e on a tree T is (n, T,X )-good if e is definedon all strings of length less than or equal to n, it takes values in X , and is (=, <X )-monotone on strings of length less than or equal to n.

By transfinite induction on " we will show that for every n % N and every(n,J T "!

(T ),X )-good partial function g, we have that h"!

g is (n + 1, T,"(",X ))-good.

For " = 0, this follows from the proof of Lemma 5.2: recall that hg(*) is a finitesum of terms of the form #g(J(*)!i), and |J(*)| < |*| by (P5). Thus to compute

Page 24: Introduction - math.berkeley.eduantonio/papers/veblen.pdf · ALBERTO MARCONE AND ANTONIO MONTALBAN´ Abstract. We study the computability-theoretic complexity and proof-theo-retic

24 ALBERTO MARCONE AND ANTONIO MONTALBAN

and compare hg on strings of length ) n + 1, we need only g to be defined and(=, <X )-monotone on strings of length ) n.

Now fix " > 0 and suppose that g is (n,J T "!

(T ),X )-good. Since h"!

g = h"!0

f%,

by the induction hypothesis it is enough to show that f) is (n,J T "!

) (T ),"(",X ))-good. Notice that if f) takes values in"(",X ), then h"!

g takes values in"("0,"(",X )) ="(",X ) (by Definition 2.7). We will prove by induction on m ) n that for every+ % J T "!

(T ) of length n0m, f, is (m,J T "!

, (T ),"(",X ))-good. When m = 0, allwe need to observe is that f, (,) = $!,g(,) % "(",X ), and g(+) is defined because

|+ | = n. Consider now + % J T "!

(T ) of length n0 (m+ 1). If * = ,, then f, (,) iscorrectly defined as in the case m = 0. For * % J T "!

, (T ) with 0 < |*| ) m + 1,let + ! = +"'*(0)(. We first need to check that f, (*) = h"!n!m

f'$ (*) is defined.

By the subsidiary induction hypothesis f, $ is (m,J T "!

, $ (T ),"(",X ))-good. ByLemma 6.11, J T "!

, $ (T ) = J T "!n!m(J T "!

, (T )"*(0)#). By the transfinite induction

hypothesis (since "n$m < ") h"!n!m

f'$ is (m + 1,J T "!

, (T )"*(0)#,"(",X ))-good.Therefore f, (*) is defined. Now we need to show f, is (=, <#(!,X ))-monotone

on strings of length less than or equal to m + 1. Take *! / * % J T "!

, (T )with |*| ) m + 1. Again let + ! = +"'*(0)(. By the transfinite induction hy-pothesis, we know that h"!n!m

f'$ is (m + 1,J T "!

, (T ),"(",X ))-good. Furthermoref, $ is (=, <#(!,X ))-monotone and takes values in "(",X ) ! ($!,g(, $) + 1), because

f, $(,) = $!,g(, $). Therefore h"!n!m

f'$ takes values below $!n!m($!,g(, $) +1). When*! = ,, f, (*!) = $!,g(,) > $!n!m($!,g(, $) + 1) > f, (*). When *! *= ,, we use the

monotonicity of h"!n!m

f'$ . "

Theorem 6.15. For every computable ordinal " and Z % NN, there exists a Z-computable linear ordering X such that the jump of every descending sequence inX computes Z("!), but there is a Z-computable descending sequence in "(",X ).

Proof. Let X = 'J T "!

(TZ),)KB( where TZ is the tree {Z !n : n % N }. By Lemma6.4, X is Z-computable. By Lemma 6.9, J "!

(Z) is the unique path in J T "!

(TZ).Therefore, by Lemma 2.12, the jump of every descending sequence in X computesJ "!

(Z) and hence, by Lemma 6.7, computes Z("!).Let g be the identity on X , which is (=, <X )-monotone. By Lemma 6.14, h!

g is (=, <#(!,X ))-monotone and computable. Thus {h!

g (Z !n) : n % N } is a Z-computabledescending sequence in "(",X ). "6.3. Reverse mathematics results. In this section, we work in the weak systemRCA0. Therefore, again, we do not have an operation that given Z % NN, returnsJ "!

(Z) but the predicate with three variables Z, Y and " that says Y = J "!

(Z) isarithmetic as witnessed by Lemma 6.8. Notice that if if we have that condition (2) ofLemma 6.8 holds, then RCA0 can recover all the J "!

m (Z) and show that J "!

(Z) isas defined in Definition 6.5. We can then prove Lemma 6.7 in RCA0: if Y = J "!

(Z),then Y can compute Z("!), and Z("!) can compute a real Y such that Y = J "!

(Z).Therefore, we get that $0

"! -CA0 is equivalent to RCA0+#Z8Y (Y = J "!

(Z)) andthat ATR0 is equivalent to RCA0+#"#Z8Y (Y = J "!

(Z)).

Theorem 6.16. Let " be a computable ordinal. Over RCA0, WOP(X !" "(",X ))is equivalent to $0

"!-CA0.

Proof. We already showed that $0"! -CA0; WOP(X !" $(",X )) in Corollary 3.7.

The proof of the other direction is just the formalization of Theorem 6.15 exactlyas we did in Theorem 5.23. "

We now give a new, purely computability-theoretic, proof of Friedman’s theorem.

Page 25: Introduction - math.berkeley.eduantonio/papers/veblen.pdf · ALBERTO MARCONE AND ANTONIO MONTALBAN´ Abstract. We study the computability-theoretic complexity and proof-theo-retic

THE VEBLEN FUNCTIONS FOR COMPUTABILITY THEORISTS 25

Theorem 6.17. Over RCA0, WOP(X !" "(X , 0)) is equivalent to ATR0.

Proof. We already showed that ATR0 proves WOP(X !" "(X , 0)) in Corollary 3.8.For the reversal, we argue within RCA0. Let " be any ordinal. Notice that

relative to the presentation of ", all the constructions of this section can be doneas if " were any computable ordinal. Therefore, by the previous theorem it isenough to show that WOP(X !" "(",X )) holds. Let X be a well-ordering. Wenow claim that "(",X ) embeds in "(" + X , 0), which would imply that "(",X )is well-ordered too as needed to show WOP(X !" "(",X )).

Define f : "(",X ) " "("+X , 0) by induction on the terms of "(",X ), setting

• f(0) = 0,• f($!,x) = $!+x(0),• f(t1 + t2) = f(t1) + f(t2),• f($a(t)) = $a(f(t)).

The proof that f is an embedding is by induction on terms. Consider t, s %"(",X ). We want to show that t )#(!,X ) s 6$ f(t) )#(!+X ,0) f(s). Byinduction hypothesis, assume this is true for pairs of terms shorter than t + s.Suppose that t ) s. Using the induction hypothesis, it is not hard to show thatf(t) ) f(s). Suppose now that t *) s. Then, none of the conditions of Definition2.7 hold. If t = 0, t = t1 + t2, or t = $a(t1), then we can apply the inductionhypothesis again and get that none of the conditions of Definition 2.7 hold for f(t)and f(s) either and hence f(t) *) f(s). The case t = $!,x is the only one thatdeserves attention. In this case we have that for no y & x, $!,y appears in s. Itthen follows that f(s) % "(" + X !x, 0). Since f(t) = $!+x(0) is greater than allthe elements of "("+ X !x, 0) we get f(t) *) f(s) a wanted. "

References

[Afs08] Bahareh Afshari. Relative computability and the proof-theoretic strength of some theo-ries. PhD thesis, University of Leeds, 2008.

[AR09] Bahareh Afshari and Michael Rathjen. Reverse mathematics and well-ordering princi-ples: A pilot study. Ann. Pure Appl. Logic, 160(3):231–237, 2009.

[BHS87] Andreas R. Blass, Je"ry L. Hirst, and Stephen G. Simpson. Logical analysis of sometheorems of combinatorics and topological dynamics. In Stephen G. Simpson, editor,Logic and combinatorics, pages 125–156. American Mathematical Society, Providence,R.I., 1987.

[Can97] Georg Cantor. Beitrage zur Begrundung der transfiniten Mengenlehre. Math. Ann.,49(2):207–246, 1897.

[Fef64] Solomon Feferman. Systems of predicative analysis. J. Symbolic Logic, 29:1–30, 1964.[FMS82] Harvey Friedman, Kenneth McAloon, and Stephen G. Simpson. A finite combinatorial

principle which is equivalent to the 1-consistency of predicative analysis. In GeorgeMetakides, editor, Patras Logic Symposion, pages 197–230. North-Holland, Amsterdam,1982.

[FMW] Harvey Friedman, Antonio Montalban, and Andreas Weiermann. A characterization ofATR0 in terms of a Kruskal-like tree theorem. unpublished draft.

[Gen36] Gerhard Gentzen. Die Widerspruchsfreiheit der reinen Zahlentheorie. Math. Ann.,112(1):493–565, 1936.

[Gir87] Jean-Yves Girard. Proof theory and logical complexity. Bibliopolis, Naples, 1987.[Hir94] Je"ry L. Hirst. Reverse mathematics and ordinal exponentiation. Ann. Pure Appl. Logic,

66(1):1–18, 1994.[McA85] Kenneth McAloon. Paris-Harrington incompleteness and progressions of theories. In Anil

Nerode and Richard A. Shore, editors, Proceedings of the AMS-ASL summer instituteheld in Ithaca, N.Y., June 28–July 16, 1982, volume 42 of Proceedings of Symposiain Pure Mathematics, pages 447–460. American Mathematical Society, Providence, RI,1985.

[MM09] Alberto Marcone and Antonio Montalban. On Fraısse’s conjecture for linear orders offinite Hausdor" rank. Ann. Pure Appl. Logic, 160(3):355–367, 2009.

[Rat91] Michael Rathjen. The role of parameters in bar rule and bar induction. J. SymbolicLogic, 56(2):715–730, 1991.

Page 26: Introduction - math.berkeley.eduantonio/papers/veblen.pdf · ALBERTO MARCONE AND ANTONIO MONTALBAN´ Abstract. We study the computability-theoretic complexity and proof-theo-retic

26 ALBERTO MARCONE AND ANTONIO MONTALBAN

[Rat06] Michael Rathjen. The art of ordinal analysis. In International Congress of Mathemati-cians. Vol. II, pages 45–69. Eur. Math. Soc., Zurich, 2006.

[RW] Michael Rathjen and Andreas Weiermann. Reverse mathematics and well-ordering prin-ciples. to appear in “Computability in Context: Computation and Logic in the RealWorld”, S.B. Cooper and A. Sorbi (eds.), Imperial College Press.

[Sch77] Kurt Schutte. Proof theory. Springer-Verlag, Berlin, 1977. Translated from the revisedGerman edition by J. N. Crossley, Grundlehren der Mathematischen Wissenschaften,Band 225.

[Sho06] Richard A. Shore. Invariants, Boolean algebras and ACA+0 . Trans. Amer. Math. Soc.,

358(3):989–1014, 2006.[Sim99] Stephen G. Simpson. Subsystems of second order arithmetic. Springer, 1999.[Veb08] Oswald Veblen. Continuous increasing functions of finite and transfinite ordinals. Trans.

Amer. Math. Soc., 9(3):280–292, 1908.

Dipartimento di Matematica e Informatica, Universita di Udine, 33100 Udine, ItalyE-mail address: [email protected]

Department of Mathematics, University of Chicago, Chicago, IL 60637, USAE-mail address: [email protected]