Abstract
A programming approach to computability and complexity theory yields proofs of central results that are sometimes more natural than the classical ones; and some new results as well. These notes contain some high points from the recent book [14], emphasising what is different or novel with respect to more traditional treatments. Topics include:
-
Kleene’s s-m-n theorem applied to compiling and compiler generation.
-
Proof that constant time factors do matter: for a natural computation model, problems solvable in linear time have a proper hierarchy, ordered by coefficient values. (In contrast to the “linear speedup” property of Turing machines.)
-
Results on which problems possess optimal algorithms, including Levin’s Search theorem (for the first time in book form).
-
Characterisations in programming terms of a wide range of complexity classes. These are intrinsic: without externally imposed space or time computation bounds.
-
Boolean program problems complete for PTIME, NPTIME, PSPACE.
This research was partially supported by the Danish Natural Science Research Council (DART project), and the Esprit Atlantique project.
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
Andersen, N. and Jones, N. D., Generalizing Cook’s construction to imperative stack programs, Lecture Notes in Computer Science 812, pp. 1–18, Springer-Verlag, 1994.
Cook, S. A., Linear-time simulation of deterministic two-way pushdown automata, Information Processing (IFIP) 71, C.V. Freiman, (ed.), North-Holland, pp. 75–80, 1971.
Cook, S. A., Characterizations of pushdown machines in terms of time-bounded computers. Journal of the ACM 18 (1971), 4–18.
Cook, S. A., The complexity of theorem-proving procedures, Proceedings Third Symposium on the Theory of Computing, pp. 151–158, ACM Press, 1971
Ben-Amram, A. and Jones, N. D. A precise version of a time hierarchy theorem. Fundamenta Informaticae, vol. 38, pp. 1–15. 1999.
Girard, J.-Y. and Lafont, Y. and Taylor, P. Proofs and Types, volume 7 of Cambridge Tracts in Theoretical Computer Science Cambridge University Press, 1989.
Goerdt, A. Characterizing complexity classes by general recursive definitions in higher types. Information and Computation 101 (1992), 201–218.
Goerdt, A. Characterizing complexity classes by higher type primitive recursive definitions. Theoretical Computer Science 101 (1992), 45–66.
Goerdt, A. and Seidl, H. Characterizing complexity classes by higher type primitive recursive definitions, Part II. Proceedings 6th International Meeting for Young Computer Scientists, Lecture Notes in Computer Science 464 (1990), 148–158.
Hutton, G. A tutorial on the universality and expressiveness of fold. Journal of Functional Programming 1 (1):1–17 (1953).
Jones, N. D., Space-bounded reducibility among combinatorial problems, Journal of Computer and System Science, vol. 11, pp. 68–85, 1975.
Jones, N. D., The Expressive Power of Higher-order Types or, Life without CONS, Journal of Functional Programming accepted for publication, 2000.
Jones, N. D., A note on linear-time simulation of deterministic two-way pushdown automata, Information Processing Letters vol. 6, pp. 110–112, 1977.
Jones, N. D., Constant time factors do matter. In Steven Homer, editor, STOC ’93. Symposium on Theory of Computing, pages 602–611. ACM Press, 1993.
Jones, N. D., Computability and Complexity from a Programming Perspective. The MIT Press, 1997.
Jones, N. D. and Gomard, C. and Sestoft, P. Partial Evaluation and Automatic Program Generation. Prentice-Hall International, 1993.
Jones, N. D., Logspace and Ptime characterized by programming languages. Theoretical Computer Science, 1998.
Jones, N. D., and Muchnick, S. Even simple programs are hard to analyze. Journal of the Association for Computing Machinery, 24(2):338–350, 1977.
Jones, N. D., and Muchnick, S. Complexity of finite memory programs with recursion. Journal of the Association for Computing Machinery, 25(2):312–321, 1978.
Kfoury, A. J. and Moll, R. N. and Arbib, M. A. A Programming Approach to Computability. Texts and monographs in Computer Science. Springer-Verlag, 1982.
Voda, P. Subrecursion as Basis for a Feasible Programming language. In Steven Homer, editor, Logic in Comp. Science September 94. Lecture Notes in Computer Science 933, Springer Verlag 1995.
Voda, P. A simple ordinal recursive normalization of Gödel’s T. Computer Science Logic, Lecture Notes in Computer Science 1414 (1997), 491–509.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2002 Springer Science+Business Media Dordrecht
About this chapter
Cite this chapter
Jones, N.D. (2002). Computability and Complexity from a Programming Perspective. In: Schwichtenberg, H., Steinbrüggen, R. (eds) Proof and System-Reliability. NATO Science Series, vol 62. Springer, Dordrecht. https://doi.org/10.1007/978-94-010-0413-8_4
Download citation
DOI: https://doi.org/10.1007/978-94-010-0413-8_4
Publisher Name: Springer, Dordrecht
Print ISBN: 978-1-4020-0608-1
Online ISBN: 978-94-010-0413-8
eBook Packages: Springer Book Archive