Logic Program Synthesis in a Higher-Order Setting

We describe a system for the synthesis of logic programs from specifications based on higher-order logical descriptions of appropriate refinement operations. The system has been implemented within the proof planning system λClam. The generality of the approach is such that its extension to allow synthesis of higher-order logic programs was straightforward. Some illustrative examples are given. The approach is extensible to further classes of synthesis.

[1]  Kung-Kiu Lau,et al.  Top-down Synthesis of Recursive Logic Procedures from First-order Logic Specifications , 1990, ICLP.

[2]  Ian Green,et al.  System Description: Proof Planning in Higher-Order Logic with Lambda-Clam , 1998, CADE.

[3]  H. C. Kraan Proof planning for logic program synthesis , 1994 .

[4]  Alan Bundy,et al.  Logic Program Synthesis via Proof Planning , 1992, LOPSTR.

[5]  Bharat Jayaraman,et al.  From Context-Free to Definite-Clause Grammars: A Type-Theoretic Approach , 1997, J. Log. Program..

[6]  Alan Bundy,et al.  A framework for program development based on schematic proof , 1993, Proceedings of 1993 IEEE 7th International Workshop on Software Specification and Design.

[7]  Yves Deville,et al.  Logic Program Synthesis from Incomplete Specifications , 1993, J. Symb. Comput..

[8]  Dale A. Miller,et al.  AN OVERVIEW OF PROLOG , 1988 .

[9]  Frank van Harmelen,et al.  Rippling: A Heuristic for Guiding Inductive Proofs , 1993, Artif. Intell..

[10]  Pierre Flener,et al.  A unified view of programming schemas and proof methods , 1999 .

[11]  A. Bundy,et al.  Turning eureka steps into calculations in automatic program synthesis , 1990 .

[12]  Alan Bundy,et al.  Middle-Out Reasoning for Logic Program Synthesis , 1993, ICLP.

[13]  Jon Whittle,et al.  An integration of deductive retrieval into deductive synthesis , 1999, 14th IEEE International Conference on Automated Software Engineering.

[14]  Timothy S. Gegg-Harrison Representing Logic Program Schemata in lambda-Prolog , 1995, ICLP.

[15]  D. Gabbay,et al.  Negation as inconsistency .I , 1986 .

[16]  Dale Miller,et al.  A Logic Programming Language with Lambda-Abstraction, Function Variables, and Simple Unification , 1991, J. Log. Comput..

[17]  Amy P. Felty,et al.  A Logic Programming Approach to Implementing Higher-Order Term Rewriting , 1991, ELP.

[18]  Claude Kirchner,et al.  Automated Deduction — CADE-15 , 1998, Lecture Notes in Computer Science.

[19]  Kung-Kiu Lau,et al.  Synthesis of a Family of Recursive Sorting Procedures , 1991, ISLP.

[20]  Norbert E. Fuchs,et al.  An Opportunistic Approach for Logic Program Analysis and Optimisation Using Enhanced Schema-Based Transformations , 1995, LOPSTR.

[21]  Kung-Kiu Lau,et al.  Forms of Logic Specifications: A Preliminary Study , 1996, LOPSTR.

[22]  Dale Miller,et al.  Uses of Higher-Order Unification for Implementing Program Transformers , 1988, ICLP/SLP.