Realization of a geometry-theorem proving machine
Computers & thought
Experiments with a Heuristic Compiler
Journal of the ACM (JACM)
A Machine-Oriented Logic Based on the Resolution Principle
Journal of the ACM (JACM)
Toward automatic program synthesis
Communications of the ACM
An axiomatic basis for computer programming
Communications of the ACM
Some transformations for developing recursive programs
Proceedings of the international conference on Reliable software
Mathematical Theory of Computation
Mathematical Theory of Computation
Application of theorem proving to problem solving
IJCAI'69 Proceedings of the 1st international joint conference on Artificial intelligence
PROW: a step toward automatic program writing
IJCAI'69 Proceedings of the 1st international joint conference on Artificial intelligence
Doing arithmetic with diagrams
IJCAI'73 Proceedings of the 3rd international joint conference on Artificial intelligence
A model for control structures for artificial intelligence programming languages
IJCAI'73 Proceedings of the 3rd international joint conference on Artificial intelligence
A system which automatically improves programs
IJCAI'73 Proceedings of the 3rd international joint conference on Artificial intelligence
Proving theorems about LISP functions
IJCAI'73 Proceedings of the 3rd international joint conference on Artificial intelligence
IJCAI'75 Proceedings of the 4th international joint conference on Artificial intelligence - Volume 1
Hi-index | 0.00 |
Prograin synthesis is the construction of a computer program from given specifications. An automatic program synthesis system must combine reasoning and programming ability with a good deal of knowledge about the subject matter of the program. This ability and knowledge must be manifested both procedurally (by programs) and structurally (by choice of representation). We describe some of the reasoning and programming capabilities of a projected synthesis system. Special attention is paid to the introduction of conditional tests, loops, and Instructions with side effects in the program being constructed. The ability to satisfy several interacting goals simultaneously proves to be important in many contexts. The modfication of an already existing program to solve a somewhat different problem has been found to be a powerful approach. Some of these techniques have already been implemented, some are in the course of implementation, while others seem equivalent to well-known unsolved problems in artificial Intelligence