INFORMATION AND CONTROL 9, 364--379 (1966)

Turing Machines with Restricted Memory Access$

PATRICK C. FISCHER Department of Science, Cornell University, Tthaca, New York

Multitape Turing machines which can use their storage tapes only as counters or as pushdown stores are investigated. The memory ac- cess restrictions arc produced by regarding the machines as small (as in the formalism of Wang) and by restricting the in- struction repertoires. Relationships are given linking machines which only accept or reject inputs and machines which emit output sequences as a function of their input. It is shown that without re- strictions on computing time or amount of tape used that only six distinct classes of sets of strings (languages) are produced by the above memory access restrictions.

INTRODUCTION The theory of abstract machines has been well developed for the finite-state automaton and the (McCarthy, 1959; Schutzenberger, 1963). Recently, machines more general than finite automata and less general than Turing machines have been investi- gated. One such family of intermediate machines consists of machines which have some form of unbounded memory so that they have more potential computing ability than the finite automata, but which have their access to the unbounded memory restricted in some way so that they do not have the full computing power of a Turing machine. The two kinds of restricted unbounded storage to be considered here are the counter and the pushdown store. A counter is a memory device containing a single nonnegative . The value of a counter can be increased by one, decreased by one (if nonzero), or tested for zero by the finite-state part () of the machine. A pushdown store * A summary of the results in this paper was presented at the Fourth Annual Symposium on Switching Circuit Theory and Logical Design under the title "On Computab~ility by Certain Classes of Restricted Turing Machines" (Fischer, 1963). Preparation of this manuscript was supported by National Science Founda- tion Grant GP-2880 and by the Division of Engineering and Applied Physics, Harvard University. The author is indebted to the referee for his very careful reading of this paper and his suggestions. 364 TURING MACHINES WITFI RESTRICTED MEMORY ACCESS 365 is a stack from which information can only be retrieved on a last-in-first- out basis. (One may note that a counter may be regarded as a pushdown store with a speciM symbol at the bottom of the stack and only l's elsewhere, the number of l's being the value of the counter.) Abstract machines are sometimes regarded as devices which simply accept or reject input strings of symbols and sometimes viewed as idealized computers which take a given input and emit output as a function of the input. The former will be called aeeeptors and the latter transducers. If the action of a machine is uniquely determined by its in- ternal configuration at each time t, the machine will be called determi- nistic; if it has several alternative actions at some time t, it will be called nondeterministic. Unlike a probabilistic machine, no numerical weights are attached to the alternative choices of a nondeterministie machine. In considering a nondeterministic computation, one is interested only in whether or not there exists a possible sequence of choices of alterna- tive actions which yields the desired end result. With the variety of machines given above, one could take a given set S of strings of symbols and ask whether or not it is: (1) accepted by an aeceptor, i.e., given as input to a computation which terminates with the machine in one of a designated set of "ac- cepting" states. (2) the input to a successful computation by a deterministic trans- ducer, i.e., the input to a computation which terminates with the ma- chine in one of a designated set of "successful" states. (3) the output of a successful computation by a deterministic trans- ducer. Furthermore, the machine associated with S could be: (a) a finite-state machine (b) u machine with one counter (c) a machine with one pushdown store (d) a machine with two counters (e) a machine with one counter and one pushdown store (f) a machine with two pushdown stores (g) a machine with some combination of three or more counters and/or pushdown stores (h) an unrestricted Turing machine and it could be either deterministic or nondeterministie. As an example, S might be accepted by a nondeterministic aceeptor with two counters but not be the output of any computation by a deterministic transducer with one pushdown store. Even if one disregards the infinitely many possibilities of ease (g) 366 rlsc~Ea and observes that reasonable definitions for cases (1) and (2) will render them equivalent (see Remark 1, below), the three-dimensional classi- fication above yields a potential 28 categories of machines and the sets of strings associated with them. It will be shown, however, that all of the possibilities above define only 6 distinct classes of sets of strings. This fact helps unify a small segment of the theory of abstract machines. A by-product of the presentation of the results of this paper will be the introduction of a formalism in which all of the memory-access-restricted machines discussed may be regarded as special cases of a multitape variant of Turing machines. NOTATION Let Z be a finite alphabet containing the symbols {B, 0, 1} and ~* be the set of all finite strings of members of ~. (Variables ranging over X will be denoted by z, T, 7, • • • with or without subscripts and variables over ~* will be denoted by x, y, z, • • • .) Let p be the mapping from ~* onto Z* taking x = z1~2 "" zn-lz,~ into p(x) = znz~_l --. z2z~ (and the empty word A into itself). To extend p to sets of strings let p(A) = {p(x) I x 6 A} for all A c ~*. The common notation of set theory will also be employed. GENElZAL MULTITAPE TURING MACHINES We will use the following definition of a multitape Turing machine. Features from the approaches of Post (as given by Davis) and Wang are used (Davis, 1958; Wang, 1957). DEFINITIO~ 1. An n-tape Turing machine ~ consists of n semi-infinite tapes which contain the symbol B (blank) in all but a finite number of squares, a finite set Q of internal states with distinguished elements qr and q~, and a set of quadruples of the form (q~, S, I, q~) where (1) q, 6 Q. (2) S is an n-tuple of members of ~. (3) I is of the form M~, M~(z), MJ, M~ t (z), W~(z), W~! (z), or N with 1=<- i =< nandzC Z. (4)q~ ~ Q. If no two distinct quadruples of ~)~ begin with the same q~ and S, then the machine will be called deterministic. Otherwise, it will be nonde- terministic. Informally, the operation of an n-tape machine is as follows. The input is placed on tape 1 and the machine is started in state qx • At any time TURING MACHINES WITH RESTRICTED 1V[EMORY ACCESS 367 t, if the machine is in state q~ and the symbols being scanned on tapes 1, 2, "" , n are ~1, ~, "'" , ~ respectively, and S = <~1, ~2, "'" , ~}, then if the machine contains the quadruple (q~, S, I, qj}, it may perform operation I and enter state qj. The effect of operation I will be: (1) If I = M~, the scanning head on tape i is moved one square to the right. (2) If I = M~(z) and if the symbol on the square to the right of the square being scanned on tape i is z, then the head for tape i is moved one square to the right. If the symbol in question is not z, then no action takes place and state qj is not entered. (3) If I = W~(z), the scanning head for tape i is moved one square to the right and the symbol z is then written on the new square. (4) If I = M~', M~'(z) or W~'((~), the action in (1), (2), or (3), re- spectively, is taken, but with "right" replaced by "left" in each case. (5) If I = N, no tape shifts or writing take place. If the computation eventually reaches qr, it is called successful, and the output (if any) appears on tape 2. We now give the formal version of the foregoing description. DEFINITION 2. An instantaneous description of an n-tape machine is an (n + 1)-tuple (q, T1, T~, • .. , Tn} where q C Q and T1, T2, • .-, T~ are all strings of the form x¢ m~ y¢ with x¢, y~ C ~* and m~ a special sym- bol not in ~(1 =< i = n). Each me serves as a marker to indicate the position of the scanning head on tape i; as in Davis' convention, the leftmost symbol of y~ is being scanned. DEFINITION 3. A successful computation by an n-tape machine with input string x = wv2 "'" , ve is a sequence D (°), D (1), D (2), ... , D (t) of instantaneous descriptions D (~) ....(q(~), T~ ~), , T~)(o(') < r =

(2) T~ °) = mix = m~ ..., ~. (3) For allr, 0 -< r =< t-- 1, there is an integerb(r) such that if i # b(r) then T~ ~) = T~ ~+~). (4) For allr, 0 =

T(r+l)b(r) ~ T1T 2 *'' Tk_lTkfrgb(v)TIc+l "'" Tp. (If/~ = p, ~ is introduced and r~+~ = B.) 368 ~SCaEn

(b) (q~, S, Mb~)(~), qj) ~ ~ and the other conditions of (a) hold as well as the additional condition Tk+l = ¢.

(e) (q~, S, M~(~), q¢) C ~YE, q(T+l) ~-- qs , k > 1, and -tr/~(r-t-1) b(r) = TIT2 """

Tk_2mb(r)Tk--lTk "'" Tp. (d) @, S, M'b(r)(z), q~) E ~E and the other conditions of (c) hold as well as the additional condition 7.k-1 = z.

(e) @, S, Wb(~)(z), qj) C i)E, q(~+l) = q~- , and ~v(~+l)-tb(r) ~ 7"17- 2 • • . 7.kmb(~)~7.~+~ "'" 7.~. (If k = p, 7.~+~ is introduced and rp+l = ~.) ! (f) @, 8, Wb(~)(a), qj)C i)E, q(T+l) q~. k > 1, and m(~+l)

'1"17.2 """ Tk--2mb(r)O'7.k, """ 7.~o.

(g) (q~ , S, N, q~') C 9E, q(~+~) ~ q~. , and m(~-l)-tb(r) ~ .tm(~) b(r). (5) q(t) = qy. (6) T~ t) = '1r~2 "'" ~_lm~v~. If the machine is an acceptor, tape 2 is disregarded and the tapes accepted are exactly those which result in successful computations when they are placed as input on tape 1. If the machine is a transducer, its domain is the set of all input tapes which can cause successful computations to occur and its range is the set of all output tapes which appear as T(~t) (m2 being deleted) after a successful computation of t steps. The rather unnatural operations M~(z) and M~'(¢) will facilitate the proofs of some of the theorems below. Clearly, the computing power of any of the classes of machines so far mentioned is not changed by the addition of these operations, since for each quadruple of the form (q~, S, M~(~), qj} one can add a new state q'i~ to Q and replace the quad- ! ! ruple by the two quadruples (q~, S, Mi, qj~} and (qj~, S', N, qj), where S' has z in the ith position and agrees with S elsewhere. If, after moving right one square on tape i, a z is encountered, then the two machines have the same instantaneous description (total state) when state qj is entered. If the new symbol is not ~, then for neither machine can the path involving the given quadruples lead to a successful computation. Conversely, for nondeterministic machines the operations M~ and M~' may be defined in terms of M~(a) and M~'(~) since a quadruple (q~, S, M~, q~-}is equivalent to the set having a quadruple @, S, M~(~), q~) for each ~ ~ Z. By suitable modification of the definition of deterministic machine, one could extend this result to the deterministic ease, since if the first maehine is deterministic, the resulting machine is monogenic. One could also eliminate the operations N and W~!(a) in terms of the operations M~, M~ !, and W~(z). Verification is left to the reader. TURING MACHINES WITH RESTRICTED MEMORY ACCESS 369

RESTRICTED MULTITAPE TURING MACHINES WITH n _< 3 Memory-access restricted machines can now be produced from the above machines by the following definition. DEFINITION 4. (a) A machine isfinite-state if n = 2 and all operations I in its quadruples are of the form M1, Ml(z) or W2(z), z ~ ~. (b) A machine has one counter if n = 3 and all operations I are of the form M1, MI(z), W2(z), Ws(1), M3' or Ms'(~), z C Z. (e) A machine has one pushdown store if n = 3 and all operations I are of the form M1, MI(z), W2(~), W3(z), M3', M3', (z), ~ C ~. Let the terms "finite-state machine," "one-counter machine," and "one-pushdown-store machine" have the abbreviations "F-machine," "C-machine," and "P-machine," respectively. Clearly, a P-machine is also a C-machine, and a C-machine is also an F-machine. Definition 4 can be seen to be equivalent to definitions based on the more intuitive characterizations of F, C, and P-machines. An F-machine is clearly a finite-state machine since it has only one-way tapes. (How- ever, computations by F-transducers include properly all computations by "generalized sequential machines," as defined in Ginsburg, 1962). Although a P-machine does not erase tape 3 as the tape head moves to the left, any information remaining to the right of the tape head will be written over if the tape head returns to the section of tape containing the information. Such information, therefore, cannot affect the future course of a computation, and tape 3 of a P-machine behaves, in effect, as a true pushdown store. A C-machine writes ones on tape 3 as it moves to the right. The value of a counter, however, is represented by the distance of the tape head from the leftmost square of tape 3 and not by the num- ber of ones on the tape. A zero test is possible since the read-write head for tape 3 will be scanning a blank square if and only if it is scanning the left-most square of its tape. Remark 1 and Theorems 1 and 2 below hold equally well for F-ma- chines, C-machines, and P-machines. Rather than state separately the result for each kind of machine, a somewhat abbreviated form will be used. REMARK 1. For Z = F, C or P, and for a set of strings A c Z*: (1) A is the domain of a deterministic Z-transducer if and only if A is accepted by a deterministic Z-acceptor. (2) A is the domain of a nondeterministie Z-transducer if and only if A is accepted by a nondeterministic Z-acceptor. 370 FISCheR

Proof: One must take care of the fact that a transducer has available the last symbol written on tape 2 whereas an acceptor imitating a trans- ducer does not. Clearly, one can replace the state set Q of a transducer by the larger state set Q X ~ and make appropriate changes in the sets of quadruples so that the transducer's action does not depend upon the symbol being scanned on tape 2. Specifically, for each quadruple (qi, (zl, z~, z~}, I, qj} the enlarged machine will have the quadruple ((qi, zs}, (¢1, ¢3}, I, q~-}. The proof then becomes trivial since one can then merely ignore tape 2 entirely. The proof of the following theorem is a generalization of the method used by Rabin and Scott to prove the case Z = F. THEOREM 1. For Z -= F, C or P, if A c ~*, then A is accepted by a nondeterministic Z-aeceptor if and only if p( A ) is accepted by a nondeter- ministic Z-acceptor. Proof: Let 9E be a given nondeterministic acceptor. We may assume without loss of generality that no instructions of the form M~ or M~' appear in the quadruples of ~. Furthermore, if x = ~1~ "' ~p-l~ is the input to a successful computation by ~, one may assume that the terminal instantaneous description of the computation can be expressed as D (t) = (q,~, ~1~2 "" ~ml~p, m2B, m~y3}, for some y ~ ~*, since additional instructions to rewind tape 3 could be added to the machine if necessary. Let the set of states Q of ~ be {qz = q~, q2, • • • , q~-~, q~ = q~}. We construct a machine ~' with state set Q' = {qr = q~,t q~-~, / "" , ! ? q2, q~ = q~} and with the same number of quadruples as ~ according to the following correspondence. Suppose (q~, (z~, B, ~3}, I, qj} ~ ~)E for some i, j, ~1 and z~. (1) If I = M~(T~) for some T~, then (q/, (T~, B, z~), M~(z~), q~') ~ ~'. ! ! ! (2) If I = Ms (r~) for some r~, then (q~, (~, B, r~), W~(z~), q~ } ~ ~!. (3) If I = W~(r~) for some T~, then (qj', (~, B, ~}, M~'(~), q/} ~ ~'. Essentially, ~' is designed to simulate the action of ~ in reverse. First, we verify tha~ ~ is of the same type (F, C or P-machine) as ~. Clearly ~' is at most a P-machine since its instructions affecting tape 3 are of the form W~(r) or Mj(T). If 9~ is a C-machine, it will be unaffected by the deletion of all quadruples of the form (q~, (¢, B, B}, ! M~ (~-), q]), (~, 7 ~ ~), since these are instructions to decrease a counter whose value is zero. The resulting ~' will thus have no instructions for writing on tape 3 other than W~(1). Finally, if ~r~ is an F-machine, 9~ ! will have no tape 3 instructions and will also be an F-machine. Next we show that for any successful computation D ~°~, D ¢~, • • • , D (t) TURING MACItINES WITH RESTRICTED MEMORY ACCESS 371

of ~T~ there exists a successful computation b (°), b (1), ... , b (t) of ~' where for all r, 0 -< r _-< t, if D (t-r) =

(2) A is the range of a nondeterministic Z-transducer. (3) A is the domain of a nondeterministic Z-transducer. (In view of Remark 1, part 2, we may also add (4) A is accepted by a nondeterministic Z-acceptor.) Proof: (a) (1) implies (2). This is obvious, since all deterministic machines may be regarded as nondeterministic machines. (b) (2) implies (1). Given a nondeterministic machine ~ with range A we construct a deterministic machine ~' with alphabet ~' = Z [3 ~ X I1, 2, .-. , P/ where p is the maximum number of choices has for any combination (q~, S) = (qi, (~, ~, ~3)). The relationship be- tween ~)E and ~lZ' is as follows: Suppose that there are k quadruples of ~lZ beginning with @, S>, say @ , S, I1, qjl}, @ , S, I~, q j2}, ... , @ , S, I~, q~'k). Then ~Z' will have in place of the above quadruples k(p -~ 1) quadruples of the form @, S', MI((z, r}), q~r}, one for each r, 1 < r < k, and each S' which is either equal to S or <(~, u}, ~, ~> for some u, 1 < u <. p. Furthermore, fiE' will have the k quadruples (qi~,' $1,' 11 , qil }, (q~, S~', I2, qj~}, ... , are used so that the choices of ~ are now forced by the input to i)E'. One can see that for any symbol string y in the range of ~ there is an input string x', with the appropriate Ca, r>'s interspersed between members of Z, so that y is the output of a computa- tion of ~' with x' as input. On the other hand, if y is in the range of 9E' for input x' and x is the string obtained by deleting from x' all symbols which are not members of ~, then there is a computation of ~ with x as input and y as output. Thus, ~ and ~Y~' have the same range. (c) (3) implies (2). We simply take a machine 9E which has A as its domain and modify it so that it copies its input x onto the output tape instead of the output y it originally was programmed to write. Strings which are copies of strings not in the domain of 9E may be partially or wholly copied onto tape 2, but they will not be the output of a successful computation and consequently will not be in the range of the modified machine ~YE'. The construction of ~E' is very simple. The instruction M1 is assumed not to occur, and the machine's action is assumed to be independent of the symbol being scanned on tape 2 (cf. Remark 1). All quadruples of the form @, S, W~(¢), qj> are replaced by quadruples of the form @, S, N, qi}. All quadruples of the form (q~, S, MI(z), qj} are replaced TURING MACHINES WITH RESTRICTED MEMORY ACCESS 37~

by pairs of quadruples of the form , W2(0-1), q/) C ~rc'. ! (2) If I = W~(r2) for some r2, then E ~rc'. P (3) If I = Ma (r3) for some T3, then (q/, , Wa(0-a), q/) C ~'. / ! ! ~,' (4) If I = W~(,3) for some ra, then , M3 (0-3), qi > 9~Z is the result of reversing the operation of gg and then interchanging tapes 1 and 2. One can use the methods of Theorem 1 to verify that YrC' is of the same type as ~ and that if ~r~ takes input x into output y, then NZt takes input p(y) into output o(z). (The definition of satis- factory pair is modified so that if D (~-~) =

(1) (2) e e e' (3) e e' e' (4) e' (5) e ¢ e' (6) e' ¢ e. Proof: The set-theoretic inclusions are all obvious. That the inclusions in (2) and (3) are proper will follow from the results in (5) and (6). (i) The well-known set of strings of the form 0~i0 ~ is clearly in C (under the convention permitting end symbols) and is known not to be in 7. (4) Members of @' are recursive sets since all context-free languages are reeursive sets. Thus, any reeursivdy enumerable, nonrecursive set is in a - ~'. (5) Let D denote the set of all strings of the form xrp(x), where r does not occur in x. It is a trivial excercise to construct a deterministic P-accepter for A. On the other hand, one can show that any one-counter accepter is equivalent to a one-counter accepter such that, for some fixed k, no more than k is added to the counter before another input symbol is read. (A detailed proof of this assertion will be omitted. One proceeds by showing that loops which affect the counter and which may be traversed arbitrarily many times before another input is read can be eliminated by increasing the number of states of the machine. The additional information conveyed by the additional states is of the form, for example, "the value of the counter of the simulated machine is congruent to 1, 3, 4 or 7 plus the value of the counter of the new machine (mod 30).") Now if a one-eounter machine has n states, after reading p input symbols, the number of possible total states of the machine will be bounded by nkp. However, the number of possible inputs grows ex- ponentially so long as, is over an alphabet with at least two symbols. Thus, for some r, 2 ~ > nkr and there are at least two distinct strings, x and x', of length r, which leave the machine in the same total state if given as input. But then xrp(x) and x'rp(x) are both either accepted or rejected, a contradiction. (6) Let E be the set of all strings of the form 0~1m0~1% E is known not to be context-free, thus E ~ (p' (Chomsky, 1963). Furthermore, P { (P, else E C (P c (P'. Now/? is the union of the following three sets, each of which is clearly in e': (1) ~* -- 0.0".1.1"-0-0".1.1" (in~Y); (2) the set of all 0~lb0~l d such that a ~ c (in e) ; 376 FISCHS~R

(3) The set of all 0~1b0~1~ such that b ~ d (in C). Thus /~ C C' since e~ is closed under union.

MACHINES WITH n = 4 TAPES In this section we shall consider the following 4-tape machines: two-counter (C2) machines, one-counter one-pushdown (PC) machines, and two-pushdown (P2) machines. Minsky has shown that two-counter machines (without input and output tapes) are universal in the sense that for each Turing machine ~ there is a deterministic two-counter machine g~' such that for all x and y, if ~ takes x into y, then ~r~' takes f(x) into f(y). The same encoding function f works for all Turing ma- chines (Minsky, 1961). Using the formalism of this paper we can give a somewhat more straightforward proof of Minsky's result, and we can eliminate the necessity for the encoding function f. The result proceeds via several easy and rather well-known lemmas below. DEFINITION 5. Assume a two-counter machine is in a configuration in which the value of one counter is a nonnegative integer n and the other counter is zero. Then the machine is said to realize a function f(n) if it enters for the first time a designated state while one counter is zero and the other counter has value f(n). L~MMA 1 (Minsky). For any fixed bound k there exists a two-counter machine which can realize all of the following functions: (a) fl(n) = n -4- m, for any m <= k. (b) f2(n) = m.n, for any m <= k. (c) fs(n) = In~m] (integral part of the quotient) for any m <= k. When In~m] is realized, the remainder upon dividing n by m is also avail- able to the internal memory of the machine. The proof is obvious. LEMMA 2 (McCarthy, 1959). Two pushdown stores can be used to imitate the operation of a Turing machine storage tape. Proof: If, in the instantaneous description

LE~MA 3. Two counters can be used to imitate the operation of a single pushdown store. Proof: Let So, $I, • • • , S~_1 be the symbols in 2. If T, in the instan- taneous description of the pushdown-store machine is equal to S~S¢~_I • .. ShmsS~oz, for some z3 C Z*, then at the appropriate point in its computation the two-counter machine will have one counter containing n = i~k p + ip_lk p-1 + ... + ilk + i0 and the other counter zero. To reflect the storage of a new symbol &. in the list (i.e., the execution of W~( S~) ) the two-counter machine realizes the function f( n ) = kn + i, To simulate the deletion of S~0 from the list (the operation MJ) the machine realizes the function f'(n) = [n/k]. LEM~'~L~ 4. Two counters can be used to imitate any finite number of counters. Proof: We prove this for n = 4; the generalization is obvious. If the counters in a four-counter machine contain a, b, c, and d, respectively, the two-counter machine will have one counter zero and the other counter with value n = 2~365c7d. To reflect an increase or decrease in any of the four counters, one needs only multiply or divide n by the appro- priate prime. To test a, b, c, or d for zero, one makes a trial division by the appropriate prime and restores n afterwards. THEOREM 4. If A C ~*, then for Z = C2, PC, or P~ , the following are equivalent: (1) A is recursively enumerable (i.e., A C 5). (2) A is the domain of deterministic Z-transducer. (3) A is the range of a deterministic Z-transducer. (4) A is the domain of a nondeterministic Z-transducer. (5) A is the range of a nondeterministic Z-transducer. (6) A is accepted by a deterministic Z-acceptor. (7) A is accepted by a nondeterministic Z-acceptor. Proof: Via the lemmas, one can construct a deterministic two-counter transducer which uses two counters to simulate four counters, which, in turn, simulate two pushdown stores and thus a Turing machine tape. If the instantaneous description of the Turing machine is represented as (q, T~, T2, T~} and T3 = S~_~ • • • S~_~maS~oS~~ • • • S~ , the instantaneous description of the two-counter machine at some point will be (q', T/, T~', Ta', Tj) where T~' = T1 ; T2' = T2 ; either T/ or T4' = m~B1 ~ (i = 3 or 4) and the other = Bl~-~m~,l i j' (i' = 4 or 3) for some j and j' > 0. The integer n will contain the encoding of the contents of tape 3 of the Turing machine as described in the lemmas above. 378 FISCHER

Since it is well-known that the above seven statements are equivalent for general Turing machines, one obtains immediately their equivalence for C~-machines. The theorem then follows for PC and P2-machines since they are clearly at least as powerful as C2-machines. Theorem 4 shows that if one places no restrictions on computation time or total amount of tape used, then one very quickly obtuins general computability and therefore cannot obtain an infinite hierarchy of com- putational complexity classes determined solely by the number of available counters, pushdown-stores, etc. Thus, while restrictions on memory access lead to six distinct classes of some intrinsic interest, other attributes of a computation should also be considered if one is to further the development of a meaningful theory of computational complexity. Several instances of such work are cited in a survey paper by the author (Fischer, 1965).

RECEIVED: August 23, 1965

ACKNOWLEDGMENT The author is indebted to J. Evey for many of the ideas contained herein. He has worl~ed closely with the author in this area and, in particular, is responsible for the results constituting parts (b) and (c) of Theorem 2 and for the main con- struction in part (d) of that theorem. REFERENCES CHOOSEY, N., (1962), Context-free grammars and pushdown storage. Quart. Prog. Rept. No. 65, pp. 187-194. (Research Laboratory of Electronics, M.I.T.). CHO~SXY, N., (1963), "Formal properties of grammars." In Handbook of Mathe- matical Psychology. ¥o1.2, pp. 323-418. Wiley, New York. DAvis, M., (1958), "Computability and Unsolvability." McGraw-Hill, New York. EVEr, J., (1963), "The Theory and Applications of Pushdown-Store Machines." Doctoral thesis, Report NSF-10, Harvard University. FISCHER, P. C., (1963), On computability by certain classes of restricted Turing machines. Proc. Fourth Ann. Syrup. Switching Circuit Theory and Logical Design, Chicago, pp. 23-32. FlscH~.n, P. C., (1965), On formalisms for Turing machines. J. Assoc. Comp. Mach. 12, 570-580. FrscHEn, P. C., (1965), Multi-tape and infinite-state automata, A survey. Commun. Assoc. Comp. Mach. 8, 799-805. GINSn~RG, S., (1962), "An Introduction to Mathematical Machine Theory." Addison-Wesley, Reading, Massachusetts. GINSBUnG,S., AND G~EIBAC~,S., (1965), "Deterministic Context-Free Languages." Systems Development Corp. Document TW-728/014/00. Inform. Control, to appear. TURING ~¢IACHINES WITH RESTRICTED MEMORY ACCESS 379

HAINES, L., (1965), "Generation and Recognition of FormaI Languages." Doc- toral thesis, Massachusetts Institute of Technology. MINSK¥, M. L., (1961), Recursive unsolvability of Post's problem of "tag" and other topics in theory of Turing machines. Ann. Math. 74,437-454. NIcCA~T~V, J., (1959), l~ecursive functions of symbolic expressions and their computation by machine (The LISP Programming System). Quart. Progr. Rept. No. 53, Research Laboratory of Electronics, M.I.T., RABIN, M. O., ANn SCOTT, D., (1959), Finite automata and their decision problems. IBM J. Res. Develop. 3, 115-125. SCHUTZENBERGER, M. P., (1963), On context-free languages and pushdowa autom- ata. Inform. Control 6, 217-255. WANG, It, (1957), A variant to Turing's theory of computability. J. Avsoc. Comp. Mach. 4, 63-92.