Ritchie Dissertation
Ritchie Dissertation
‘SYNOPSIS
The major purpose of this thesis is to show that when the
Language in which computations are described is restricted suitably,
there can be an effective relationship between the complexity of a
progran and that of the computation it describes. We give two
examples.
‘The first exanple is that of Loop programs. A Icop program is
a finite sequence of instructions for manipulating noz-negative, un-
ounded integers stored in registers; the instructions allow incre-
menting registers by unity, setting registers to zero, and moving
the contents of registers. The only control instructions consist of
Toops; there is a kind of Loop for each number n>1. A Loop with
n= L causes the execution of a portion of the program to be repeated
a predetermined number of times equal to the current contents of a
register. Loops may be nested, one inside another, to any fixed depth;
‘out Loops with n> 1 are defined so as to make a Loop of type n+ 1
equivalent to @ varisble depth of nesting of Loops of type n.
Bach Loop program is assigned an ordin
al @, where O6, ty majorizes
fy:
of [15,16] and in general is a modification of the function Wy used
te definition of f, for finite ordinals & is the same as the f,
by Robbin [25] for mich the sane purposes. The major results on Loop
prograns can be stated as follows: for each Loop progran P assigned
ordinal a there is a number gf’p effectively derived 2rom P such that
Pwith inputs x)..0m, requires no more than £P)(naxtay ».--9%,))
steps to halt (Theoren (3.6)). The notation #(P) means f,, composed
with itself p times. There are some programs P assigned ordinal a
which do in fact require 2{P)(x) steps to halt when given input x
(meoren (4.7). A precise definition of the number of steps used
by @ program is a by-product of a formalization of Losp prograns pre-
sented in §2.
Further results on Loop programs, and much of the rest of the
thesis, use heavily the notion of computation-time closure. A set
of functions is computation-tine closed when both of the following
are true: if a function f is in the set, a motion b is in the set
where b bounds the tine required to compute f one Turing machines
if b is in the set and b bounds the time required to compute fon a
Turing machi
2, f is in the set.
S2If {, is the class of functions computable by prograns assigned
an ordinal less than or equal to a, each {, for a> 2 is computation-
time closed. This allows us to show the following: each class {, for
@ > 2 is closed under Limited recursion (Theorem (6.8)); each class
£ for a> 2 can be characterized in arithmetic terms, without refer-
ence to Turing machines or Loop programs (Theorem (6.5))3 if a pro-
gram P assigned ordinal & requires only 2) steps as a function of
its inputs where 6 2 (Theoren (2.5))3
42 fe Ry f(x,1-++)%,) can be computed by a Turing mehine in
of)
CP) maces )+++)%,)) steps for some p which is effectively found from
the recursion equations defining f (Theorem (2.1))s fy,q € Ry (Theorem
(8.3). These facts alone show: for o> 2, Sy4q = Ry (Theorem (10.1)).
93The sane kind of techniques are applied to the hierarchies of
Axt [2], Grzegorezyk [9] and Robbin [25]. All of these hierarchies
are shown to be identical to a portion of the fy and Ry hierarchies,
and thus to each other. Specifically, if @, aYou might also like