The roles of knowledge and deduction in program synthesis

  • Authors:
  • David R. Barstow

  • Affiliations:
  • Department of Computer Science, Yale University, New Haven, CT

  • Venue:
  • IJCAI'79 Proceedings of the 6th international joint conference on Artificial intelligence - Volume 1
  • Year:
  • 1979

Quantified Score

Hi-index 0.00

Visualization

Abstract

In the earliest attempts to apply artificial intelligence techniques to program synthesis, deduction (that is, the use of a general purpose mechanism such as a theorem prover) played a central role. Some recent systems have relied almost exclusively on knowledge about programming in particular domains, with no significant role for deduction. Even in such knowledge-based systems, however, there seems to be an important role for deduction in testing the applicability conditions of specific programming rules. This auxiliary role for deduction can be seen clearly in a hypothetical synthesis of a breadth-first enumeration algorithm. The hypothetical synthesis also demonstrates the utility of detailed programming knowledge for dealing with non-algorithmic specifications.