Rating:

Date added: 25.3.2015

784 393

FB2PDFEPUB

1.1. What This Book is About This book is a study of subrecursive programming systems, efficiency/program-size trade-offs between such systems, and how these systems can serve as tools in complexity theory. Section 1.1 states our basic themes, andMore1.1. What This Book is About This book is a study of subrecursive programming systems, efficiency/program-size trade-offs between such systems, and how these systems can serve as tools in complexity theory. Section 1.1 states our basic themes, and Sections 1.2 and 1.3 give a general outline of the book. Our first task is to explain what subrecursive programming systems are and why they are of interest. 1.1.1. Subrecursive Programming Systems A subrecursive programming system is, roughly, a programming language for which the result of running any given program on any given input can be completely determined algorithmically. Typical examples are: 1. the Meyer-Ritchie LOOP language [MR67, DW83], a restricted assem bly language with bounded loops as the only allowed deviation from straight-line programming- 2. multi-tape lUring Machines each explicitly clocked to halt within a time bound given by some polynomial in the length ofthe input (see [BH79, HB79])- 3. the set of seemingly unrestricted programs for which one can prove 1 termination on all inputs (see [Kre51, Kre58, Ros84])- and 4. finite state and pushdown automata from formal language theory (see [HU79]). lOr, more precisely, the collection of programs, p, ofsome particular general-purpose programming language (e.g., Lisp or Modula-2) for which there is a proof in some par ticular formal system (e.g., Peano Arithmetic) that p halts on all inputs. Subrecursive Programming Systems: Complexity & Succinctness by James S. Royer