Abstract
A proof of ∀x∃yϕ(x,y) can serve as a description of an algorithm which satisfies the specification given by ϕ. A variety of techniques from proof theory may be used to execute such a proof — that is, to take the proof and a value for x, and compute a value for y such that ϕ(x,y) holds. Proofs differ from ordinary programs in that they formalize information about algorithms beyond what is needed for the simple execution of the algorithm. This paper concerns (I) the uses of this additional information in the automatic transformation of algorithms, and in particular, in the adaptation of algorithms to special situations, and (2) efficient methods for executing and transforming proofs. A system for manipulating proofs has been implemented. Results of experiments on the specialization of a bin-packing algorithm are described.
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.
Preview
Unable to display preview. Download preview PDF.
References
Bates, J.L. A logic for correct program development, PhD Thesis, Dept. of Computer Science, Cornell University, August 1979
Beckeman, L., Haraldsson, A., Oskarsson, O., and Sandewall, E. [1976], A partial evaluator and its use as a programming tool, Artificial Intelligence Journal 7 pp. 319–357
Bishop, E.[1970], Mathematics as a numerical language, Intuitionism and proof theory, Proceedings of the summer conference at Buffalo N.Y., 1968, A. Kino, J. Myhill, R.E. Vesley eds., North Holland, Amsterdam pp 53–71
Constable, R.L.[1971], Constructive mathematics and automatic program writers, IFIP Congress 1971
de Brujin, N.G.[1970], The mathematical language AUTOMATH, its usage, and some of its extensions, Lecture Notes in Mathematics, vol. 125, Springer Verlag, pp. 29–61
Doyle, J.[1978], Truth maintenance systems for problem solving, M.I.T. AI lab technical report AI-TR-419, January 1978
Ershov A.P.[1977], On the essense of compilation, IFIP Working Conference on Formal Description of Programming Concepts, Saint Andrews, New Brunswick, vol. 1., pp. 1.1–1.28
Gentzen, G.[1969], The collected papers of Gerhard Gentzen, (M.E. Szabo ed.), North-Holland, Amsterdam
Goad C.A.[1980], Computational uses of the manipulation of formal proofs, PhD Thesis, Stanford University, in preparation
Godel, K.[1958], Ueber eine bisher noch nicht benutzte Erweiterung des finiten Standpunktes, Dialectica 12, pp. 280–287
Goto S.,[1979], Program Synthesis from Natural Deduction Proofs, International Joint Conference on Artificial Intelligence, Tokyo
Green, C.C.,[1969], Application of theorem proving to problem solving, Proceedings of the International Joint Conference on Artificial Intelligence, Washington DC, pp 219–239
Hewitt, C.[1971], Procedural embedding of knowledge in planner, Proceedings of the International Joint Conference on Artificial Intelligence, London
Howard, W.A.[1980], The formulae-as-types notion of construction, in Festschrift on the occasion of H.B. Curry's 80th birthday, Academic Press, New York, San Francisco, London, to appear
Kleene S.C.[1945], On the interpretation of intuitionistic number theory, Journal of Symbolic Logic 10,pp. 109–124
Kowalski, R.[1974], Predicate logic as a programming language, Proc. of the IFIP Congress 1974, pp 569–574
Kreisel, G.[1959], Interpretation of analysis by means of constructive functionals of finite type, in Constructivity in Mathematics, North-Holland, Amsterdam, pp. 101–128
Kreisel, G.[1975], Some uses of proof theory for finding computer programs, Colloque International de Logique, Clermont-Ferrand (July 1975), Colloques Internationaux du Centre National de la Researche Scientifique, No. 249, pp. 123–134
Kreisel, G.[1977], From foundations to science: justifying and unwinding proofs, Recueil Des Travaux de L'Institut Mathematique, Belgrade, Nouvelle Serie 1977, Vol. 2, pp. 63–72
London, P.E.[1978], Dependency networks as a representation for modeling in general problem solvers. PhD thesis. U Maryland Department of Computer Science Technical Report 698
Manna, Z. and Waldinger, R.[1979], A deductive approach to program synthesis, Fourth Workshop on Automatic Deduction, Austin Texas, pp 129–139
Miglioli, P., and Ornaghi, M., A logically justified computing model, Fundamenta Informaticae, to appear
Prawitz, D.[1965], Natural deduction, Almquist and Wksell, Stockholm
Scott, D.[1970], Constructive Validity, Lecture Notes in Mathematics, vol. 125, Springer Verlag, pp. 237–275
Sussman G.J., and Steele, G.L.,[1975], SCHEME, an interpreter for extended lambda calculus, MIT AI Memo 349
Tait, W.W.[1975], A realizability interpretation of the theory of species, Logic Colloquium Proceedings, 1972–1973, A. Dold, B. Eckmann eds., Lecture Notes in Mathematics vol. 453, Springer Verlag, pp. 240–251
Takasu S.[1978], Proofs and programs, Proceedings of the Third IBM Symposium on the Mathematical Foundations of Computer Science — Mathematical Logic and Computer Science, Kansai
Troelstra A.S.[1973], Intuitionistic formal systems, in Metamathematical Investigation of Intuitionistic Arithmetic and Analysis, A.S. Troelstra, ed., Lecture Notes in Mathematics vol. 344, Springer Verlag, pp. 1–96
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1980 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Goad, C.A. (1980). Proofs as descriptions of computation. In: Bibel, W., Kowalski, R. (eds) 5th Conference on Automated Deduction Les Arcs, France, July 8–11, 1980. CADE 1980. Lecture Notes in Computer Science, vol 87. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-10009-1_4
Download citation
DOI: https://doi.org/10.1007/3-540-10009-1_4
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-10009-6
Online ISBN: 978-3-540-38140-2
eBook Packages: Springer Book Archive