Journal Article10.1145/362566.362568
Toward automatic program synthesis
Zohar Manna,Richard Waldinger +1 more
294
TL;DR: An elementary outline of the theorem-proving approach to automatic program synthesis is given, without dwelling on technical details, and the relation between the version of the induction rule used and the form of the program constructed is explored.
read more
Abstract: An elementary outline of the theorem-proving approach to automatic program synthesis is given, without dwelling on technical details. The method is illustrated by the automatic construction of both recursive and iterative programs operating on natural numbers, lists, and trees.In order to construct a program satisfying certain specifications, a theorem induced by those specifications is proved, and the desired program is extracted from the proof. The same technique is applied to transform recursively defined functions into iterative programs, frequently with a major gain in efficiency.It is emphasized that in order to construct a program with loops or with recursion, the principle of mathematical induction must be applied. The relation between the version of the induction rule used and the form of the program constructed is explored in some detail.
read more
Chat with Paper
AI Agents for this Paper
Find similar papers on Google Scholar, PubMed and Arxiv
Write a critical review of this paper
Analyze citations of this paper to find unaddressed research gaps
Citations
•Proceedings Article
Challenge to artificial intelligence: programming problems to be solved
J. E. Sammet
- 01 Sep 1971
TL;DR: The character ist ics of programming problems which make them suitable for the application of a r t i f i c ia l intelligence techniques are given.
Contrasting translation, verification and synthesis in software and firmware engineering
Robert A. Mueller,Gearold R. Johnson +1 more
- 01 Dec 1981
TL;DR: In this article, the authors use definitions and examples to clarify translation, verification and synthesis in both software and firmware engineering, and demonstrate the significance of these concepts in software engineering and software development.
3
Program synthesis and vulnerability injection using a Grammar VAE
TL;DR: A deep neural network based on the recently developed Grammar Variational Autoencoder architecture to generate an arbitrary number of unique C functions labeled in the aforementioned manner and implements a semantic repair algorithm that transforms syntactically valid C functions into fully semantically valid C function that compile and execute.
References
A Machine-Oriented Logic Based on the Resolution Principle
TL;DR: The paper concludes with a discussion of several principles which are applicable to the design of efficient proof-procedures employing resolution as the basle logical process.
4.4K
•Book
Introduction to mathematical logic
Hans Hermes,Diana Schmidt +1 more
- 01 Jan 1973
TL;DR: This book discusses the semantics of Predicate Logic, and some of theorems of A. Robinson, Craig and Beth's treatment of Peano's Axiom System.
1K
A Basis for a Mathematical Theory of Computation
John J. McCarthy
- 01 Jan 1962
TL;DR: The chapter explores what practical results can be expected from a suitable mathematical theory and presents several descriptive formalisms with a few examples of their use and theories that enable to prove the equivalence of computations expressed in these formalisms.
Towards a Mathematical Science of Computation
TL;DR: The prospects for a mathematical science of computation is discussed and it is shown that from Newton’s law of gravitation and his laws of motion, one can deduce that the planetary orbits obey Kepler's laws.
589
A Basis for a Mathematical Theory of Computation
John J. McCarthy
- 30 Dec 1899
TL;DR: In this paper, the mathematical theory of computation is discussed and several descriptive formalisms with a few examples of their use and theories that enable to prove the equivalence of computations expressed in these formalisms are also presented.
509
Related Papers (5)
Amir Pnueli,Roni Rosner +1 more
- 03 Jan 1989
Leonardo de Moura,Nikolaj Bjørner +1 more
- 29 Mar 2008
Saurabh Srivastava,Sumit Gulwani,Jeffrey S. Foster +2 more
- 17 Jan 2010