Functional Plus Logic Programming with Built-In and Symbolic Constraints

In this paper we propose a lazy functional logic language, named SETA, which allows to handle multisets, built-in arithmetic constraints over the domain of real numbers, as well as various symbolic constraints over datatypes. As main theoretical results, we have proved the existence of free term models for all SETA programs and we have developed a correct and complete goal solving mechanism.

[1]  Bharat Jayaraman,et al.  Set Constructors, Finite Sets, and Logical Semantics , 1999, J. Log. Program..

[2]  Michael Hanus,et al.  The integration of functions into logic programming: a survey , 1994 .

[3]  Michael J. Maher,et al.  Constraint Logic Programming: A Survey , 1994, J. Log. Program..

[4]  Rita Loogen,et al.  A Demand Driven Computation Strategy for Lazy Narrowing , 1993, PLILP.

[5]  Michael Hanus,et al.  The Integration of Functions into Logic Programming: From Theory to Practice , 1994, J. Log. Program..

[6]  Kim Marriott Constraint multiset grammars , 1994, Proceedings of 1994 IEEE Symposium on Visual Languages.

[7]  Dirk van Dalen,et al.  Logic and structure , 1980 .

[8]  Puri Arenas,et al.  Embedding Multiset Constraints into a Lazy Functional Logic Language , 1998, PLILP/ALP.

[9]  Kim Marriott,et al.  A declarative specification and semantics for visual languages , 1991, J. Vis. Lang. Comput..

[10]  Agostino Dovier,et al.  Embedding extensional finite sets in CLP , 1993, ILPS.

[11]  Roland H. C. Yap,et al.  The CLP( R ) language and system , 1992, TOPL.

[12]  J. C. Gonz Alez-Moreno,et al.  An Approach to Declarative Programming Based on a Rewriting Logic , 2022 .

[13]  Dana S. Scott,et al.  Some Domain Theory and Denotational Semantics in Coq , 2009, TPHOLs.

[14]  Mario Rodríguez-Artalejo,et al.  A Lazy Narrowing Calculus for Functional Logic Programming with Algebraic Polymorphic Types , 1997, ILPS.

[15]  Puri Arenas,et al.  A Semantic Framework for Functional Logic Programming with Algebraic Polymorphic Types , 1997, TAPSOFT.

[16]  Pierre Deransart,et al.  Programming Languages Implementation and Logic Programming , 1989, Lecture Notes in Computer Science.

[17]  Michael Hanus,et al.  Lazy Narrowing with Simplification , 1997, Comput. Lang..

[18]  Hugh Glaser,et al.  Principles of Declarative Programming , 1998, Lecture Notes in Computer Science.

[19]  Rachid Echahed,et al.  A needed narrowing strategy , 2000, JACM.

[20]  Donald Sanella What Does the Future Hold for Theoretical Computer Science , 1997 .

[21]  Gert Smolka Logic Programming over Polymorphically Order-Sorted Types , 1989 .

[22]  Narciso Martí-Oliet,et al.  Action and Change in Rewriting Logic , 1999 .

[23]  Daniel Le Métayer,et al.  The GAMMA Model and Its Discipline of Programming , 1990, Sci. Comput. Program..

[24]  Agostino Dovier,et al.  A Language for Programming in Logic with Finite Sets , 1996, J. Log. Program..