Invited Talks Analogical and Inductive Inference

Algorithmic Learning Theory

Volume 872 of the series Lecture Notes in Computer Science pp 6-7


From specifications to programs: Induction in the service of synthesis

  • Nachum DershowitzAffiliated withDepartment of Computer Science, University of Illinois

* Final gross prices may vary according to local VAT.

Get Access


The deductive synthesis of programs from formal specifications can be aided by various forms of induction: Summative, or complete, induction is the deductive technique of reasoning by cases and plays an important role in creating conditionals. Recursive, or mathematical, induction is a deductive technique for reasoning about an infinite number of cases; it is used in the creation of loops, and is often necessary for establishing properties of data types. Eduction, or analogical reasoning, helps reduce the amount of work needed to generate a program, when similar programs already exist. Ampliative, or incomplete, induction is the process by which one generalizes from a finite number of instances; it can help the synthesizer guess what statement is needed and to verify the correctness of suggestions.