Advertisement

Abstract

We present an algebraic theory for a fragment of predicate logic. The fragment has disjunction, existential quantification and equality. It is not an algebraic theory in the classical sense, but rather within a new framework that we call ‘parameterized algebraic theories’.

We demonstrate the relevance of this algebraic presentation to computer science by identifying a programming language in which every type carries a model of the algebraic theory. The result is a simple functional logic programming language.

We provide a syntax-free representation theorem which places terms in bijection with sieves, a concept from category theory.

We study presentation-invariance for general parameterized algebraic theories by providing a theory of clones. We show that parameterized algebraic theories characterize a class of enriched monads.

Keywords

Logic Program Logic Programming Function Symbol Algebraic Theory Predicate Logic 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

References

  1. 1.
    Aczel, P.: A general Church-Rosser theorem (1978)Google Scholar
  2. 2.
    Adámek, J., Borceux, F., Lack, S., Rosický, J.: A classification of accessible categories. J. Pure Appl. Algebra 175(1-3), 7–30 (2002)MathSciNetzbMATHCrossRefGoogle Scholar
  3. 3.
    Adámek, J., Rosický, J.: On sifted colimits and generalized varieties. Theory Appl. Categ. 8(3), 33–53 (2001)MathSciNetzbMATHGoogle Scholar
  4. 4.
    Adams, R.: Lambda-free logical frameworks. Ann. Pure Appl. Logic (to appear)Google Scholar
  5. 5.
    Altenkirch, T., Chapman, J., Uustalu, T.: Monads Need Not Be Endofunctors. In: Ong, L. (ed.) FOSSACS 2010. LNCS, vol. 6014, pp. 297–311. Springer, Heidelberg (2010)CrossRefGoogle Scholar
  6. 6.
    Amato, G., Lipton, J., McGrail, R.: On the algebraic structure of declarative programming languages. Theor. Comput. Sci. 410(46), 4626–4671 (2009)MathSciNetzbMATHCrossRefGoogle Scholar
  7. 7.
    Antoy, S., Hanus, M.: Functional logic programming. C. ACM 53(4), 74–85 (2010)MathSciNetGoogle Scholar
  8. 8.
    Asperti, A., Martini, S.: Projections instead of variables: A category theoretic interpretation of logic programs. In: Proc. ICLP 1989 (1989)Google Scholar
  9. 9.
    Bauer, A., Pretnar, M.: Programming with algebraic effects and handlers. arXiv:1203.1539v1Google Scholar
  10. 10.
    Berger, C., Melliès, P.-A., Weber, M.: Monads with arities and their associated theories. J. Pure Appl. Algebra 216(8-9), 2029–2048 (2012)MathSciNetzbMATHCrossRefGoogle Scholar
  11. 11.
    Braßel, B., Fischer, S., Hanus, M., Reck, F.: Transforming Functional Logic Programs into Monadic Functional Programs. In: Mariño, J. (ed.) WFLP 2010. LNCS, vol. 6559, pp. 30–47. Springer, Heidelberg (2011)CrossRefGoogle Scholar
  12. 12.
    Bronsard, F., Reddy, U.S.: Axiomatization of a Functional Logic Language. In: Kirchner, H., Wechler, W. (eds.) ALP 1990. LNCS, vol. 463, pp. 101–116. Springer, Heidelberg (1990)CrossRefGoogle Scholar
  13. 13.
    Clouston, R.A., Pitts, A.M.: Nominal equational logic. In: Computation, Meaning, and Logic. Elsevier (2007)Google Scholar
  14. 14.
    Cohn, P.M.: Universal algebra, 2nd edn. D Reidel (1981)Google Scholar
  15. 15.
    Curien, P.-L.: Operads, clones and distributive laws. In: Operads and Universal Algebra. World Scientific (2012)Google Scholar
  16. 16.
    Finkelstein, S.E., Freyd, P.J., Lipton, J.: Logic Programming in Tau Categories. In: Pacholski, L., Tiuryn, J. (eds.) CSL 1994. LNCS, vol. 933, pp. 249–263. Springer, Heidelberg (1995)CrossRefGoogle Scholar
  17. 17.
    Fiore, M., Plotkin, G., Turi, D.: Abstract syntax and variable binding. In: Proc. LICS 1999 (1999)Google Scholar
  18. 18.
    Fiore, M., Hur, C.-K.: Second-Order Equational Logic (Extended Abstract). In: Dawar, A., Veith, H. (eds.) CSL 2010. LNCS, vol. 6247, pp. 320–335. Springer, Heidelberg (2010)CrossRefGoogle Scholar
  19. 19.
    Fiore, M., Mahmoud, O.: Second-Order Algebraic Theories. In: Hliněný, P., Kučera, A. (eds.) MFCS 2010. LNCS, vol. 6281, pp. 368–380. Springer, Heidelberg (2010)CrossRefGoogle Scholar
  20. 20.
    Gabbay, M.J., Mathijssen, A.: One and a halfth order logic. J. Logic Comput. 18 (2008)Google Scholar
  21. 21.
    Jagadeesan, R., Panangaden, P., Pingali, K.: A fully abstract semantics for a functional language with logic variables. In: LICS 1989 (1989)Google Scholar
  22. 22.
    Johann, P., Simpson, A., Voigtländer, J.: A generic operational metatheory for algebraic effects. In: LICS 2010 (2010)Google Scholar
  23. 23.
    Johnstone, P.T.: Sketches of an Elephant. OUP (2002)Google Scholar
  24. 24.
    Kammar, O., Plotkin, G.D.: Algebraic foundations for effect-dependent optimisations. In: Proc. POPL 2012 (2012)Google Scholar
  25. 25.
    Kelly, G.M., Power, A.J.: Adjunctions whose counits are coequalisers. J. Pure Appl. Algebra 89, 163–179 (1993)MathSciNetzbMATHCrossRefGoogle Scholar
  26. 26.
    Kinoshita, Y., Power, A.J.: A fibrational Semantics for Logic Programs. In: Herre, H., Dyckhoff, R., Schroeder-Heister, P. (eds.) ELP 1996. LNCS, vol. 1050, pp. 177–191. Springer, Heidelberg (1996)CrossRefGoogle Scholar
  27. 27.
    Komendantskaya, E., Power, J.: Coalgebraic Semantics for Derivations in Logic Programming. In: Corradini, A., Klin, B., Cîrstea, C. (eds.) CALCO 2011. LNCS, vol. 6859, pp. 268–282. Springer, Heidelberg (2011)CrossRefGoogle Scholar
  28. 28.
    Kurz, A., Petrişan, D.: Presenting functors on many-sorted varieties and applications. Inform. Comput. 208(12), 1421–1446 (2010)MathSciNetzbMATHCrossRefGoogle Scholar
  29. 29.
    Lack, S., Rosický, J.: Notions of Lawvere theory. Appl. Categ. Structures 19(1) (2011)Google Scholar
  30. 30.
    Melliès, P.-A.: Segal condition meets computational effects. In: Proc. LICS 2010 (2010)Google Scholar
  31. 31.
    Møgelberg, R.E., Staton, S.: Linearly-Used State in Models of Call-by-Value. In: Corradini, A., Klin, B., Cîrstea, C. (eds.) CALCO 2011. LNCS, vol. 6859, pp. 298–313. Springer, Heidelberg (2011)CrossRefGoogle Scholar
  32. 32.
    Moggi, E.: Notions of computation and monads. Inform. Comput. 93(1) (1991)Google Scholar
  33. 33.
    Moreno-Navarro, J.J., Rodríguez-Artalejo, M.: Logic programming with functions and predicates. J. Log. Program 12(3&4), 191–223 (1992)zbMATHCrossRefGoogle Scholar
  34. 34.
    Plotkin, G.: Some Varieties of Equational Logic. In: Futatsugi, K., Jouannaud, J.-P., Meseguer, J. (eds.) Goguen Festschrift. LNCS, vol. 4060, pp. 150–156. Springer, Heidelberg (2006)Google Scholar
  35. 35.
    Plotkin, G., Power, J.: Notions of Computation Determine Monads. In: Nielsen, M., Engberg, U. (eds.) FOSSACS 2002. LNCS, vol. 2303, pp. 342–356. Springer, Heidelberg (2002)CrossRefGoogle Scholar
  36. 36.
    Plotkin, G.D., Power, J.: Algebraic operations and generic effects. Appl. Categ. Structures 11(1), 69–94 (2003)MathSciNetzbMATHCrossRefGoogle Scholar
  37. 37.
    Plotkin, G., Pretnar, M.: Handlers of Algebraic Effects. In: Castagna, G. (ed.) ESOP 2009. LNCS, vol. 5502, pp. 80–94. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  38. 38.
    Reddy, U.S.: Functional Logic Languages, Part I. In: Fasel, J.H., Keller, R.M. (eds.) Graph Reduction 1986. LNCS, vol. 279, pp. 401–425. Springer, Heidelberg (1987)CrossRefGoogle Scholar
  39. 39.
    Saraswat, V.A., Rinard, M.C., Panangaden, P.: Semantic foundations of concurrent constraint programming. In: Proc. POPL 1991, pp. 333–352 (1991)Google Scholar
  40. 40.
    Schrijvers, T., Stuckey, P.J., Wadler, P.: Monadic constraint programming. J. Funct. Program. 19(6) (2009)Google Scholar
  41. 41.
    Staton, S.: Relating Coalgebraic Notions of Bisimulation. In: Kurz, A., Lenisa, M., Tarlecki, A. (eds.) CALCO 2009. LNCS, vol. 5728, pp. 191–205. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  42. 42.
    Velebil, J., Kurz, A.: Equational presentations of functors and monads. Math. Struct. in Comp. Science 21 (2011)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2013

Authors and Affiliations

  • Sam Staton
    • 1
  1. 1.Computer LaboratoryUniversity of CambridgeUK

Personalised recommendations