Retractions: A functional paradigm for logic programming

  • M. Bellia
Session CFLP 5 Unification Of Functional And Logic Programming Languages
Part of the Lecture Notes in Computer Science book series (LNCS, volume 250)


Computable relations are expressed as set retractions. This class of functions is here discussed in a set theory which is built according to the structure of the Herbrand Universe in clausal logic. The approach provides a functional programming paradigm with almost all the features of the logic programming paradigm.


Predicative and functional languages symbolic expressions relations retractions lambda_calculus Horn clause theories Herbrand terms computable sets 


  1. Barbuti85]
    R. Barbuti, M. Bellia, G. Levi and M. Martelli, LEAF: A language which integrates logic, equations and functions. In Logic Programming: Functions, Relations and Equations, D. DeGroot and G. Lindstrom, Eds. (Prentice-Hall, 1985).Google Scholar
  2. Bellia83]
    M. Bellia, G. Levi and M. Martelli, On compiling Prolog programs on demand driven architectures. Proc. Logic Programming Workshop'83 (1983) 518–535.Google Scholar
  3. Bellia86]
    M. Bellia and G. Levi, The relation between logic and functional languages: A survey. To appear in J. Logic Programming.Google Scholar
  4. [Bellia86b]
    M. Bellia, Logic and functional programming by retractions: Operational semantics. In Derivable Working Group on Semantics, ESPRIT Project 415 (1986).Google Scholar
  5. Berkling 75]
    K. Berkling, Reduction languages for reduction machines. Proc. 2nd Int. Symp. on Computer Architectures (IEEE Comp. Society Press, 1975) 133–140.Google Scholar
  6. Berkling82]
    K. Berkling, J.A. Robinson and E.E. Sibert., A proposal for a fifth generation logic and functional programming system, based on highly parallel reduction machine architecture. Syracuse University (November 1982).Google Scholar
  7. Clarke80]
    T.J.W. Clarke, P.J.S. Gladstone, C.D. MacLean and A.C. Normal, SKIM — The S.K.I. reduction machine. Proc. Lisp 80 Conf. (1980)128–135.Google Scholar
  8. [Darlington81]
    J. Darlington and M. Reeve, ALICE: A multiprocessor reduction machine for the parallel evaluation of applicative languages. Proc. Int. Symp. Functional Programming Languages and Computer Architectures (1981) 32–62.Google Scholar
  9. [Darlington85]
    J. Darlington, A.J. Field and H. Pull, The unification of functional and logic languages. In Logic Programming: Functions, Relations and Equations Google Scholar
  10. [Dershowitz84]
    N. Dershowitz and N.A. Josephson, Logic programming by completion. Proc. 2 nd Int. Logic Programming Conf. (1984),313–320.Google Scholar
  11. [Dershowitz85]
    N. Dershowitz and D.A. Plaisted, Logic programming cum applicative programming, Proc. 1985 Symp. on Logic Programming (IEEE Comp. Society Press, 1985) 54–66.Google Scholar
  12. [[Goguen84]
    J.A. GOguen and J. Meseguer, Equality, types, modules and (why not?) generics for logic programming. J. Logic Programming 1 (1984) 179–210.Google Scholar
  13. [Hsiang83]
    J. Hsiang and N. Dershowitz, Rewrite methods for clausal and non-clausal theorem proving. Proc 10 th ICALP (1983).Google Scholar
  14. [[Kluge80]
    W.E. Kluge and H. Schlutter, An architecture for the direct execution of reduction languages. Proc. Int. Workshop High Level Computer architecture (1980).Google Scholar
  15. [Kowalski79]
    R.A. Kowalski, Algorithms=Logic+Control. C. ACM, 22 (1979) 424–436Google Scholar
  16. [Mago80]
    G.A. Mago, A cellular computer architecture for functional programming. Proc. IEEE-COMPCON 80 (IEEE Comp. Society Press, 1980) 179–187.Google Scholar
  17. [Milner72]
    R. Milner, Implementation and application of Scott's logic for computable functions. Sigplan Notices, 7 (1972) 1–6.Google Scholar
  18. [Moto-Oka82]
    T. Moto-Oka, Ed., Fifth Generation Computer Systems. North-Holland, 1982.Google Scholar
  19. [Reddy84]
    U.S. Reddy, Transformation of logic programs into functional programs. Proc. 1984 Int. Symp. on Logic Programming (IEEE Comp. Society Press, 1984)Google Scholar
  20. [Reddy85]
    U.S. Reddy, On the relationship between logic and functional languages. In Logic Programming: Functions, Relations and Equations, D. DeGroot and G. Lindstrom, Eds. (Prentice-Hall, 1985).Google Scholar
  21. [Robinson82]
    J.A. Robinson and E.E. Sibert, LOGLISP: An alternative to PROLOG. Machine Intelligence 10 (Ellis Horwood, 1982).Google Scholar
  22. [Scott76]
    D. Scott, Data types as lattices. SIAM J. on Computing, 5 (1976)522–587.Google Scholar
  23. [Shwartz75]
    J.T. Shwartz, Automatic data structure choise in a language of very high level. C. ACM, 18 (1975) 772–728.Google Scholar
  24. Subrahmanyam84]
    P.A. Subrahmanyam and J.-H. You, FUNLOG = functions + logic: A computational model integrating functional and logic programming. Proc. 1984 Int. Symp. on Logic Programming (IEEE Comp. Society Press, 1984) 144–153.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1987

Authors and Affiliations

  • M. Bellia
    • 1
  1. 1.Dipartimento di InformaticaUniversità di PisaPisaItaly

Personalised recommendations