CATEGORIES, LOGIC PROGRAMMING, RELATIONS

Workshop announcement: Newton Institute

An informal 2-day workshop was held at the Newton Institute, Cambridge, on Sept 18 (afternoon) and Sept 19, 1995. The topics of discussion include categorical foundations of Logic Programming, Categorical approaches to declarative programming and program synthesis, and foundations of relational computing.

THE IDEOLOGY and all that...

Suggestions for a categorical approach to Logic Programming go back at least to Burstall & Rydeheard's work proposing a categorical approach to unification and Asperti, Martini, Corradini and Montanari's Categorical analysis of logic programming and more recently Powers, Freyd, Finkelstein et al. Almost from their first appearance in the 1970's, Logic programming languages have refused to stay within the putative boundaries of the subject. Constraints, Control operators, expanded logics, types, integration with functions, metaprogramming, are just a few of the ways in which declarative programming has departed from simple horn-clause backchaining. Thus it would be interesting to find a sufficiently abstract--yet useful characterization of declarative programming, or of executable specification, that could form a a basis for analysis and development of such languages, and their compilers. There are also some important semantic questions: what is a good framework for analyzing, and comparing such languages? Is there a "uniform semantics"? Also, there is a growing interest in alternative semantic paradigms (beside Herbrand-base style, success-set semantics) such as operational (Levi et al..) denotational approaches (Cousot, Misra) some based on abstract interpretation (Cousot, Hermenegildo, Heintze etc...) It seems that many of these questions can be addressed using categories. Some specific research aims, such as typing of LP, integrating functional programming and LP, or partial evaluation in LP, impose particularly severe semantic demands on the developer, since pre-existing semantic frameworks (for types and logic programming) must be integrated with declarative semantics. Category theory has already played a significant role in the semantics of typed and functional programming, and seems an essential tool in any such proposed integrations.

SPEAKERS


Back to Categories and Logic Programming Page

Last modified: Tue Jan 9 08:04:52 EST 1996