Computable Functions A
Total Page:16
File Type:pdf, Size:1020Kb
http://dx.doi.org/10.1090/stml/019 STUDENT MATHEMATICAL LIBRARY Volume 19 Computable Functions A. Shen N. K. Vereshchagin Translated by V. N. Dubrovskii #AMS AMERICAN MATHEMATICAL SOCIETY Editorial Board Robert Devaney Carl Pomerance Daniel L. Goroff Hung-Hsi Wu David Bressoud, Chair H. K. BepemarHH, A. Illem* BMHHCJIHMME ^YHKUMM MIIHMO, 1999 Translated from the Russian by V. N. Dubrovskii 2000 Mathematics Subject Classification. Primary 03-01, 03Dxx. Library of Congress Cataloging-in-Publication Data Vereshchagin, Nikolai Konstantinovich, 1958- Computable functions / A. Shen, N.K. Vereshchagin ; translated by V.N. Dubrovskii. p. cm. — (Student mathematical library, ISSN 1520-9121 ; v. 19) Authors' names on t.p. of translation reversed from original. Includes bibliographical references and index. ISBN 0-8218-2732-4 (alk. paper) 1. Computable functions. I. Shen, A. (Alexander), 1958- II. Title. III. Se• ries. QA9.59 .V47 2003 511.3—dc21 2002038567 Copying and reprinting. Individual readers of this publication, and nonprofit libraries acting for them, are permitted to make fair use of the material, such as to copy a chapter for use in teaching or research. Permission is granted to quote brief passages from this publication in reviews, provided the customary acknowledgment of the source is given. Republication, systematic copying, or multiple reproduction of any material in this publication is permitted only under license from the American Mathematical Society. Requests for such permission should be addressed to the Acquisitions Department, American Mathematical Society, 201 Charles Street, Providence, Rhode Island 02904- 2294, USA. Requests can also be made by e-mail to reprint-permissionQams.org. © 2003 by the American Mathematical Society. All rights reserved. The American Mathematical Society retains all rights except those granted to the United States Government. Printed in the United States of America. @ The paper used in this book is acid-free and falls within the guidelines established to ensure permanence and durability. Visit the AMS home page at http://www.ams.org/ 10 9 8 7 6 5 4 3 2 1 08 07 06 05 04 03 Contents Preface vii Chapter 1. Computable Functions, Decidable and Enumerable Sets 1 §1. Computable functions 1 §2. Decidable sets 3 §3. Enumerable sets 4 §4. Enumerable and decidable sets 7 §5. Enumerability and computability 8 Chapter 2. Universal Functions and Undecidability 11 §1. Universal functions 11 §2. The diagonal construction 13 §3. Enumerable undecidable set 14 §4. Enumerable inseparable sets 16 §5. Simple sets: The Post construction 17 Chapter 3. Numberings and Operations 19 §1. Godel universal functions 19 §2. Computable sequences of computable functions 23 §3. Godel universal sets 24 IV Contents Chapter 4. Properties of Godel Numberings 27 §1. Sets of numbers 27 §2. New numbers of old functions 31 §3. Isomorphism of Godel numberings 34 §4. Enumerable properties of functions 36 Chapter 5. Fixed Point Theorem 41 §1. Fixed point and equivalence relations 41 §2. A program that prints its text 44 §3. System trick: Another proof 46 §4. Several remarks 49 Chapter 6. m-Reducibility and Properties of Enumerable Sets 55 §1. m-reducibility 55 §2. m-complete sets 57 §3. ra-completeness and effective nonenumerability 58 §4. Isomorphism of m-complete sets 62 §5. Productive sets 64 §6. Pairs of inseparable sets 67 Chapter 7. Oracle Computations 71 §1. Oracle machines 71 §2. Relative computability: Equivalent description 74 §3. Relativization 76 §4. (^-computations 79 §5. Incomparable sets 82 §6. Friedberg-Muchnik Theorem: The general scheme of construction 85 §7. Friedberg-Muchnik Theorem: Winning conditions 87 §8. Friedberg-Muchnik Theorem: The priority method 89 Chapter 8. Arithmetical Hierarchy 93 §1. Classes En and IIn 93 §2. Universal sets in En and IIn 96 §3. The jump operation 98 Contents v §4. Classification of sets in the hierarchy 103 Chapter 9. Turing Machines 107 §1. Simple computational models: What do we need them for? 107 §2. Turing machines: The definition 108 §3. Turing machines: Discussion 110 §4. The word problem 113 §5. Simulation of Turing machines 114 §6. Thue systems 118 §7. Semigroups, generators, and relations 120 Chapter 10. Arithmeticity of Computable Functions 123 §1. Programs with a finite number of variables 123 §2. Turing machines and programs 126 §3. Computable functions are arithmetical 128 §4. Tarski and GodePs Theorems 132 §5. Direct proof of Tarski and Godel's Theorems 134 §6. Arithmetical hierarchy and the number of quantifier alternations 136 Chapter 11. Recursive Functions 139 §1. Primitive recursive functions 139 §2. Examples of primitive recursive functions 140 §3. Primitive recursive sets 141 §4. Other forms of recursion 143 §5. Turing machines and primitive recursive functions 146 §6. Partial recursive functions 148 §7. Oracle computability 152 §8. Estimates of growth rate. Ackermann's function 154 Bibliography 159 Glossary 161 Index 163 This page intentionally left blank Preface This book is based on lectures for undergraduate students given by the authors at the Moscow State University Mathematics Department. (Another book by the authors, "Basic Set Theory", was published as volume 17 in this book series.) The theory of computable functions appeared in the 1930s, when no computers (in the modern sense of the word) existed. The first computers were designed in the 1940s, and one of their designers was the English mathematician Alan Turing, one of the creators of the theory of computable functions. In 1936 he described the abstract machines later called Turing machines; supposedly, the idea of a pro• gram stored in a computer's memory was inspired by the proof of the existence of a universal Turing machine. For this reason alone, the basic notions of computability theory (the general theory of algorithms) deserve the attention of mathe• maticians and programmers. But this theory also has wider cultural significance. In 1944 one of its founders, the American mathemati• cian Emil Post, wrote that in the history of discrete mathematics, the formulation of the notion of computability can play a role second in importance only to the formulation of the notion of the natural number. Perhaps, nowadays, Post's statement seems to be an exagger• ation: in the last decades it became clear that, philosophically, the vn Vlll Preface difference between feasible and unfeasible problems is no less essential than the difference between decidable and undecidable problems, and computational complexity theory took up one of the central positions in logic, mathematics, and computer science. Computational complexity is beyond the scope of this book. Our goal is restricted: we attempt to select central notions and facts from the general theory of algorithms and present them clearly, trying not to shadow simple general ideas by technical details. We do not assume any special preliminary knowledge, although we assume a certain level of mathematical culture (and do not explain, say, what a function or a real number is). We hope that the reader will enjoy this first acquaintance with the theory of algorithms. To learn more about this theory (which is the central part of mathematical logic), the reader is referred to the books listed in the Bibliography. The authors thank their teacher Vladimir Andreevich Uspensky, whose lectures, texts, and opinions, perhaps, had an even greater effect on them (and on the contents of this book) than they are aware of. We thank the staff and all the students of the Division of Math• ematical Logic and the Theory of Algorithms (Moscow State Uni• versity, Mathematics Department), as well as all participants of our lectures and seminars, and readers of the draft versions of this book. Finally, we are grateful to the American Mathematical Society and Sergei Gelfand, who organized the English translation of this book, and to Vladimir Dubrovsky, who translated it with great care. The authors will be grateful for any reports on errors and typos (e-mail: [email protected], [email protected]; address: Moscow Center of Continuous Mathematical Education, Bolshoi Vlasyevskii per. 11, Moscow, Russia 121002). N. K. Vereshchagin, A. Shen This page intentionally left blank Bibliography [1] J. Barwise (Ed.), The handbook of mathematical logic. North-Holland, Amsterdam, 1977. [2] George S. Boolos, John P. Burgess, and Richard C. Jeffrey, Com• putability and logic. Fourth edition, Cambridge Univ. Press, Cam• bridge, 2002. [3] Nigel Cut land, Computability: An introduction to recursive function theory. Cambridge Univ. Press, Cambridge, 1980. [4] Yu. L. Ershov, Theory of numberings. Nauka, Moscow, 1977. (Russian) [5] S. K. Kleene, Introduction to metamathematics. (11th Printing) North- Holland, Amsterdam, 1996. [6] A. I. Mal'tsev, Algorithms and recursive functions. Nauka, Moscow, 1965. (Russian) [7] Yu. I. Manin, Computable and incomputable. Sov. Radio, Moscow, 1980. (Russian) [8] , A course in mathematical logic. Springer-Verlag, New York, 1977. [9] M. Minsky, Computation: Finite and infinite machines. Prentice-Hall, Englewood Cliffs, NJ, 1967. [10] Piergiorgio Odifreddi, Classical resursion theory. Vols. I, II, North- Holland, Englewood Cliffs, NJ, 1989, 1999. [11] Hartley Rogers, Jr., Theory of recursive functions and effective com• putability. MIT Press, Cambridge, MA, 1987. [12] A. Shen and N. K. Vereshchagin, Basic set theory, Amer. Math. Soc, Providence, RI, 2002. 159 160 Bibliography [13] J. Shoenfield, Degrees of undecidability. North-Holland, Englewood Cliffs, NJ, 1971. [14] Michael Sipser, Introduction to the theory of computation, PWS, Boston, 1997. [15] Robert I. Soare. Recursively enumerable sets and degrees. Springer- Verlag, Berlin, 1987. [16] V. A. Uspensky, Lectures on computable functions. Fizmatgiz, Moscow, 1960. (Russian) [17] V. A. Uspensky and A. L. Semenov, Algorithms: Main ideas and ap• plications. Kluwer, Dordrecht, 1993. Glossary Wilhelm ACKERMANN, Mar. 29, 1896, Schoenebeck [Kr. Altena] (Germany) - Dec. 24, 1962, Luedenscheid (Germany) 144, 155 Alonzo CHURCH, June 14, 1903, Washington, D.C. (USA) - Aug. 11, 1995, Hudson, Ohio (USA) 150 EUCLID of Alexandria, about 325 (?) BC - about 265 (?) BC, Alexandria (now Egypt) 112, 143 Pierre de FERMAT Aug.