Skip to main content

Encapsulating data in logic programming via categorical constraints

  • Conference paper
  • First Online:
Principles of Declarative Programming (ALP 1998, PLILP 1998)

Abstract

We define a framework for writing executable declarative specifications which incorporate categorical constraints on data, Horn Clauses and datatype specification over finite-product categories. We construct a generic extension of a base syntactic category of constraints in which arrows correspond to resolution proofs subject to the specified data constraints.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. A. Asperti and S. Martini. Projections instead of variables, a category theoretic interpretation of logic programs. In Proc. 6 th ICLP, pages 337–352. MIT Press, 1989.

    Google Scholar 

  2. R. Barbuti, M Bellia, and G. Levi. Leaf: a Language which Integrates Logic Equations and Functions. Prentice-Hall, 1984.

    Google Scholar 

  3. Michael Barr and Charles F. Wells. Category Theory for Computing Science. Prentice-Hall International, Englewood Cliffs, NJ, USA, 1990.

    Google Scholar 

  4. A. Corradini and A. Asperti. A categorical model for logic programs: Indexed monoidal categories. In Proceedings REX Workshop '92. Springer Lecture Notes in Computer Science, 1992.

    Google Scholar 

  5. Andrea Corradini and Ugo Montanari. An algebraic semantics for structured transition systems and its application to logic programs. Theoretical Computer Science, 103:51–106, 1992.

    Article  MATH  MathSciNet  Google Scholar 

  6. Roy Crole. Categories for Types. Cambridge University Press, 1993.

    Google Scholar 

  7. Mary de Marco. Dynamic Constraints and Hereditarily Harrop Programming. PhD thesis, Wesleyan University, 1999.

    Google Scholar 

  8. R. Diaconescu. Category Semantics for Equational and Constraint Logic Programming. PhD thesis, Oxford University, 1994.

    Google Scholar 

  9. Stacy E. Finkelstein, Peter Freyd, and James Lipton. Logic programming in tau categories. In Computer Science Logic '94, LNCS 933. Springer, 1995.

    Google Scholar 

  10. Stacy E. Finkelstein, Peter Freyd, and James Lipton. A new framework for declarative programming. Theoretical Computer Science, To appear. Technical report available as www.cs.wesleyan.edu/~lipton/jftp/dist96-nfdp.ps.

    Google Scholar 

  11. Peter Freyd and Andre Scedrov. Categories, Allegories. North-Holland, 1990.

    Google Scholar 

  12. Joseph Goguen and José Meseguer. Equality Types and Generic Modules for Logic Programming. Prentice-Hall, 1984.

    Google Scholar 

  13. Tatsuya Hagino. A Category Theoretic Approach to Data Types. PhD thesis, University of Edinburgh, Department of Computer Science, 1987. CST-47-87 (also published as ECS-LFCS-87-38).

    Google Scholar 

  14. Bart Jacobs and Jacob Rutten. A Tutorial on (Co)algebras and (Co)induction, volume 62, pages 222–259. 1997.

    MATH  Google Scholar 

  15. M. Martelli M. Falaschi, G. Levi and C. Palamidessi. Declarative modeling of the operational behavior of logic languages. TCS, 69(3), 1989.

    Google Scholar 

  16. Michael Makkai and Gonzalo Reyes. First Order Categorical Logic, volume 611 of Lecture Notes in Mathematics. Springer-Verlag, 1977.

    Google Scholar 

  17. R. McGrail. Modules, Monads and Control in Logic Programming. PhD thesis, Wesleyan University, 1998. To appear.

    Google Scholar 

  18. F. Orejas, E. Pino, and H. Ehrig. Algebraic methods in the compositional analysis of logic programs. In P. Ruzicka I. Privara, B. Rovan, editor, Proc. MFCS 94, volume 841 of Lecture Notes in Computer Science. Springer-Verlag, 1994.

    Google Scholar 

  19. P. Panangaden, V. Saraswat, P.J. Scott, and R.A.G. Seely. A hyperdoctrinal view of constraint systems. In Lecture Notes in Computer Science 666. Springer Verlag, 1993.

    Google Scholar 

  20. A. Poigné. Algebra categorically. In Category Theory and Computer Programming. Springer, 1986.

    Google Scholar 

  21. J. Power and Y. Kinoshita. A new foundation for logic programming. In Extensions of Logic Programming '96. Springer Verlag, 1996.

    Google Scholar 

  22. D. Pym. Functorial kripke models of the λπ-calculus. Lecture at Newton Institute Semantics Programme, Workshop on Category Theory and Logic Programming, Cambridge, September 1995, 1995.

    Google Scholar 

  23. H. Reichel. Initial Computability, Algebraic Specifications, and Partial Algebras. Oxford University Press, 1987.

    Google Scholar 

  24. D.E. Rydeheard and R.M. Burstall. A categorical unification algorithm. In Category Theory and Computer Programming, 1985.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Catuscia Palamidessi Hugh Glaser Karl Meinke

Rights and permissions

Reprints and permissions

Copyright information

© 1998 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Lipton, J., McGrail, R. (1998). Encapsulating data in logic programming via categorical constraints. In: Palamidessi, C., Glaser, H., Meinke, K. (eds) Principles of Declarative Programming. ALP PLILP 1998 1998. Lecture Notes in Computer Science, vol 1490. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0056628

Download citation

  • DOI: https://doi.org/10.1007/BFb0056628

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-65012-6

  • Online ISBN: 978-3-540-49766-0

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics