Abstract
In the last section, we examined some reasonable models of computation. These models were found to be equivalent in the sense that they captured the same class of “computable” functions. Now we proceed to define our “generic” programming system syntactically. Prom our experience of coding each RAM program as a single natural number, we can use the natural numbers to serve as names for our programs. This will also make it easier to describe functions that take programs as arguments and produce programs as output. We will see that any way of effectively presenting the computable functions (via a list of all RAM programs, for example) will induce some structure in the way the programs appear. This structure will be evidenced by certain functional relationships among the various programs. Our generic programming system will be characterized by the specific relationships that hold for the system. The specific relationships are akin to control structures in that they specify how to modify and combine some programs to produce other programs. We will then discuss solvability (and partial solvability) of several fundamental problems. As a notational simplification, the use of pairing functions will be implicit, so we will write f(x, y) instead of the more formal f(<x,y>). Since we will have several occasions to give proofs by contradiction, we will note the arrival at a contradiction by the symbol (⇒⇒).
Keywords
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsPreview
Unable to display preview. Download preview PDF.
References
J. Case, Periodicity in Generations of Automata, Mathematical Systems Theory, Vol. 8, 1974, pp. 15–32.
J. Case, Infinitary Self-Reference in Learning Theory, Journal of Experimental and Theoretical Artificial Intelligence, Vol. 8, 1994, pp. 3–16.
S. Kleene, On Notation for Ordinal Numbers, Journal of Symbolic Logic, Vol. 3, 1938, pp. 150–155.
E. Post, Recursively Enumerable Sets of Positive Integers and their Decision Problems, Bulletin of the American Mathematical Society, Vol. 50, 1944, pp. 284–316.
H. Rice, On Completely Recursively Enumerable Classes and Their Key Arrays, Journal of Symbolic Logic, Vol. 22, 1956, pp. 304–308.
G. Riccardi, The Independence of Control Structures in Abstract Programming Systems, Journal of Computer and Systems Sciences, Vol. 22, 1981, pp. 107–143.
H. Rogers, Jr., Gödel Numberings of Partial Recursive Functions, Journal of Symbolic Logic, Vol. 23, 1958, pp. 331–341.
H. Rogers, Jr., Theory of Recursive Functions and Effective Computability, McGraw Hill, New York, 1967.
J. Royer, A Connotational Theory of Program Structure, Lecture Notes in Computer Science 273, Springer Verlag, New York, 1987.
R. Smullyan, Theory of Formal Systems, Annals of Mathematical Studies, No. 47, Princeton University Press, Princeton, 1961.
R. Soare, Recursively Enumerable Sets and Degrees, Springer Verlag, New York, 1987.
A. Turing, On Computable Numbers, with an Application to the Entscheidungsproblem, Proceedings of the London Mathematical Society, Vol. 42, 1936, pp. 230–265.
Author information
Authors and Affiliations
Rights and permissions
Copyright information
© 1994 Springer Science+Business Media New York
About this chapter
Cite this chapter
Smith, C.H. (1994). Basic Recursive Function Theory. In: A Recursive Introduction to the Theory of Computation. Graduate Texts in Computer Science. Springer, New York, NY. https://doi.org/10.1007/978-1-4419-8501-9_3
Download citation
DOI: https://doi.org/10.1007/978-1-4419-8501-9_3
Publisher Name: Springer, New York, NY
Print ISBN: 978-1-4612-6420-0
Online ISBN: 978-1-4419-8501-9
eBook Packages: Springer Book Archive