Proof-Theoretic and Higher-Order Extensions of Logic Programming

We review the Italian contribution to proof-theoretic and higher-order extensions of logic programming; this originated from the realization that Horn clauses lacked standard abstraction mechanisms such as higher-order programming, scoping constructs and forms of information hiding. Those extensions were based on the Deduction and Computation paradigm as formulated in Miller et al's approach [51], which built logic programming around the notion of focused uniform proofs The Italian contribution has been both foundational and applicative, in terms of language extensions, implementation techniques and usage of the new features to capture various computation models. We argue that the emphasis has now moved to the theory and practice of logical frameworks, carrying with it a better understanding of the foundations of proof search.

[1]  Furio Honsell,et al.  A framework for defining logics , 1993, JACM.

[2]  Ian Stark,et al.  Free-Algebra Models for the pi-Calculus , 2005, FoSSaCS.

[3]  Dale Miller,et al.  An Overview of Linear Logic Programming , 2003 .

[4]  Frank Pfenning,et al.  Monadic concurrent linear logic programming , 2005, PPDP.

[5]  Giorgio Delzanno,et al.  Proofs as computations in linear logic , 2001, Theor. Comput. Sci..

[6]  Dale Miller,et al.  A Proposal for Modules in Lambda-Prolog , 1993, ELP.

[7]  Dov M. Gabbay,et al.  N-Prolog: An Extension of Prolog with Hypothetical Implications I , 1984, J. Log. Program..

[8]  Maurizio Gabbrielli,et al.  Concurrent and Reactive Constraint Programming , 2010, 25 Years GULP.

[9]  Frank Pfenning,et al.  Automated Deduction - CADE-21, 21st International Conference on Automated Deduction, Bremen, Germany, July 17-20, 2007, Proceedings , 2007, CADE.

[10]  Jean-Marc Andreoli,et al.  Linear objects: Logical processes with built-in inheritance , 1990, New Generation Computing.

[11]  Maria I. Sessa,et al.  1995 Joint Conference on Declarative Programming, GULP-PRODE'95, Marina di Vietri, Italy, September 11-14, 1995 , 1995, GULP-PRODE.

[12]  F. Pfenning,et al.  Automating the meta theory of deductive systems , 2000 .

[13]  Larry Wos,et al.  What Is Automated Reasoning? , 1987, J. Autom. Reason..

[14]  Iliano Cervesato,et al.  Petri Nets and Linear Logic: a Case Study for Logic Programming , 1995, GULP-PRODE.

[15]  Robert Harper,et al.  Mechanizing metatheory in a logical framework , 2007, Journal of Functional Programming.

[16]  Giorgio Delzanno,et al.  On the Relations between Disjunctive and Linear Logic Programming , 2001, APPIA-GULP-PRODE.

[17]  Frank Pfenning,et al.  Higher-order abstract syntax , 1988, PLDI '88.

[18]  Gopalan Nadathur,et al.  Uniform Proofs as a Foundation for Logic Programming , 1991, Ann. Pure Appl. Log..

[19]  Gopalan Nadathur,et al.  The Bedwyr System for Model Checking over Syntactic Expressions , 2007, CADE.

[20]  Dale Miller,et al.  Abstractions in Logic Programs , 1989 .

[21]  Alberto Momigliano,et al.  Elimination of Negation in a Logical Framework , 2000, CSL.

[22]  Dale Miller,et al.  Logic programming in a fragment of intuitionistic linear logic , 1991, [1991] Proceedings Sixth Annual IEEE Symposium on Logic in Computer Science.

[23]  Jean-Marc Andreoli,et al.  Abstract Interpretation of Linear Logic Programming , 1993, ILPS.

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

[25]  Franco Turini,et al.  A Transformational Approach to Negation in Logic Programming , 1990, J. Log. Program..

[26]  Dale Miller,et al.  A Logical Analysis of Modules in Logic Programming , 1989, J. Log. Program..

[27]  Dale Miller,et al.  A Proposal for Modules in λ Prolog : Preliminary Draft , 2002 .

[28]  Frank Pfenning,et al.  Efficient Resource Management for Linear Logic Proof Search , 1996, ELP.

[29]  Gopalan Nadathur,et al.  The Metalanguage lambda-Prolog and Its Implementation , 2001, FLOPS.

[30]  Alberto Momigliano,et al.  Induction and Co-induction in Sequent Calculus , 2003, TYPES.

[31]  Frank Pfenning,et al.  System Description: Twelf - A Meta-Logical Framework for Deductive Systems , 1999, CADE.

[32]  Alessio Guglielmi,et al.  Expressiveness of the Abstract Logic Programming Language Forum in Planning and Concurrency , 1994, GULP-PRODE.

[33]  Giorgio Delzanno,et al.  Model checking linear logic specifications , 2003, Theory and Practice of Logic Programming.

[34]  Anil Nerode,et al.  Logical Foundations of Computer Science — Tver '92 , 1992, Lecture Notes in Computer Science.

[35]  Evelina Lamma,et al.  Modularity in Logic Programming , 1994, J. Log. Program..

[36]  Frank Pfenning,et al.  A Linear Logical Framework , 2002, Inf. Comput..

[37]  Thomas Ehrhard,et al.  Linear logic in computer science , 2004 .

[38]  David Walker,et al.  Specifying Properties of Concurrent Computations in CLF , 2008, Electron. Notes Theor. Comput. Sci..

[39]  Amy P. Felty,et al.  Implementing tactics and tacticals in a higher-order logic programming language , 1993, Journal of Automated Reasoning.

[40]  Giorgio Delzanno,et al.  Static Analysis, Abstract Interpretation and Verification in (Constraint Logic) Programming , 2010, 25 Years GULP.

[41]  Patrick J. Hayes,et al.  Computation and Deduction , 1973, MFCS.

[42]  Giorgio Delzanno,et al.  An effective fixpoint semantics for linear logic programs , 2002, Theory Pract. Log. Program..

[43]  Jean-Marc Andreoli,et al.  LO and behold! Concurrent structured processes , 1990, OOPSLA/ECOOP '90.

[44]  JEAN-MARC ANDREOLI,et al.  Logic Programming with Focusing Proofs in Linear Logic , 1992, J. Log. Comput..

[45]  Frank Pfenning,et al.  A Logical Characterization of Forward and Backward Chaining in the Inverse Method , 2007, Journal of Automated Reasoning.

[46]  Alberto Momigliano,et al.  Multi-level Meta-reasoning with Higher-Order Abstract Syntax , 2003, FoSSaCS.

[47]  Iliano Cervesato,et al.  Proof-Theoretic Foundation of Compilation in Logic Programming , 1998, IJCSLP.

[48]  David Walker,et al.  A Concurrent Logical Framework: The Propositional Fragment , 2003, TYPES.

[49]  Alan Robinson,et al.  Handbook of automated reasoning , 2001 .

[50]  Lars-Henrik Eriksson,et al.  Extensions of Logic Programming , 1993, Lecture Notes in Computer Science.

[51]  Andrew Gacek The Abella Interactive Theorem Prover (System Description) , 2008, IJCAR.

[52]  Remo Pareschi,et al.  Type-driven natural language analysis , 1988 .

[53]  Jaime G. Carbonell,et al.  Automated Deduction — CADE-16 , 2002, Lecture Notes in Computer Science.

[54]  Piergiorgio Odifreddi,et al.  Logic and computer science , 1990 .

[55]  Frank Pfenning,et al.  Efficient resource management for linear logic proof search , 1996, Theor. Comput. Sci..

[56]  Laura Giordano,et al.  A Modal Extension of Logic Programming: Modularity, Beliefs and Hypothetical Reasoning , 1998, J. Log. Comput..

[57]  Frank Pfenning,et al.  Logical Frameworks , 2001, Handbook of Automated Reasoning.

[58]  Gopalan Nadathur,et al.  Correspondences between classical, intuitionistic and uniform provability , 1998, Theor. Comput. Sci..

[59]  Michele Bugliesi,et al.  Object calculi in linear logic , 2000, J. Log. Comput..

[60]  Frank Pfenning,et al.  A Linear Spine Calculus , 2003, J. Log. Comput..

[61]  D.M. Gabbay,et al.  N-Prolog: An Extension of Prolog with Hypothetical Implication II - Logical Foundations, and Negation as Failure , 1985, J. Log. Program..

[62]  Laura Giordano,et al.  Combining Negation as Failure and Embedded Implications in Logic Programs , 1998, J. Log. Program..

[63]  Dale Miller,et al.  Forum: A Multiple-Conclusion Specification Logic , 1996, Theor. Comput. Sci..

[64]  Francesca Arcelli Fontana,et al.  Implementing Higher-Order Term-Rewriting for Program Transformation in lambdaProlog , 1995, GULP-PRODE.

[65]  Chuck Liang,et al.  Focusing and polarization in linear, intuitionistic, and classical logics , 2009, Theor. Comput. Sci..

[66]  Gaetano Aurelio Lanzarone,et al.  A Metalogic Programming Language , 1989, ICLP.

[67]  Maribel Fernández,et al.  Curry-Style Types for Nominal Terms , 2006, TYPES.

[68]  Alex K. Simpson,et al.  Computational Adequacy in an Elementary Topos , 1998, CSL.

[69]  Alberto Momigliano Minimal Negation and Hereditary Harrop Formulae , 1992, LFCS.

[70]  Dale Miller,et al.  Lexical Scoping as Universal Quantification , 1989, ICLP.

[71]  Jawahar Chirimar,et al.  Proof theoretic approach to specification languages , 1995 .

[72]  Annalisa Bossi,et al.  Theoretical Foundations and Semantics of Logic Programming , 2010, 25 Years GULP.

[73]  Frank Pfenning,et al.  Linear higher-order pre-unification , 1997, Proceedings of Twelfth Annual IEEE Symposium on Logic in Computer Science.