A logical basis for object oriented programming

  • E. Laenens
  • D. Vermeir
Selected Papers
Part of the Lecture Notes in Computer Science book series (LNCS, volume 478)

Abstract

We develop the proof theory and semantics of a logic, called ordered logic (OL), which models the most important aspects of object oriented programming languages, such as object identity, multiple inheritance and defaults. The logic is based on a partially ordered structure of logical theories, which play the role of objects. The proof theory takes into account the precedence structure between rules as implied by the partial order.

OL is nonmonotonic under the natural model-theoretic semantics. However, there is an intuitive preference relation between models such that there is a unique "best" (minimal) model M if and only if all sentences in M can be proven. For "choice" theories that have several minimal models, there is a backtracking procedure that generates all such models as fixpoints. These theories can also be characterized syntactically.

We show that "classical" logic programs with negation by failure are a special case of 2-object ordered theories. Applications of results in ordered logic then yield a proof procedure for theories with well-founded models and a syntactical characterization of theories that have stable models (which are exactly the OL minimal models).

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Bel75a.
    N. D. Belnap, “A Useful four-valued logic,” in Modern uses of multi-valued logic, pp. 8–37, D. Reidel Publ. Co., 1975.Google Scholar
  2. Bun86a.
    O.P. Buneman and M.P. Atkinson, “Inheritance and Persistence in Database Programming Languages,” Proceedings of the ACM Sigmod International Conference on Management of Data, pp. 4–15, 1986.Google Scholar
  3. Car84a.
    L. Cardelli, “A Semantics of Multiple Inheritance,” in Lecture Notes in Computer Science, vol. 173, pp. 51–67, Springer, 1984.Google Scholar
  4. Che89a.
    W. Chen and D. S. Warren, “C-Logic of Complex Objects,” in Proc. of the Eight Symposium on Principles of Database Systems, pp. 369–378, 1989.Google Scholar
  5. Gabona.
    D. Gabbay, A. Hunter, E. Laenens, and D. Vermeir, Hierarchical logic for perspectives, In preparation.Google Scholar
  6. Gee89a.
    P. Geerts and D. Vermeir, Sceptical vs. credulous reasoning in ordered logic, 1989. in preparationGoogle Scholar
  7. Gel88a.
    M. Gelfond and V. Lifschitz, “The Stable Model Semantics for Logic Programming,” in Proc. of the Intl. Conf. on Logic Programming, pp. 1071–1079, 1988.Google Scholar
  8. Kif89a.
    M. Kifer and J. Wu, “A Logic for Object-Oriented Logic Programming,” in Proc. of the Eight Symposium on Principles of Database Systems, pp. 379–393, 1989.Google Scholar
  9. Lae89b.
    E. Laenens, Private communication, 1989.Google Scholar
  10. Lae89c.
    E. Laenens, P. Geerts, and D. Vermeir, Autoepistemic reasoning and ordered logic, 1989. In preparationGoogle Scholar
  11. Lae89a.
    E. Laenens, D. Vermeir, and B. Verdonk, “LOCO, a logic-based language for complex objects,” in Proceedings of the Esprit conference, pp. 604–616, 1989.Google Scholar
  12. Lae90a.
    E. Laenens, D. Vermeir, and D. Sacca, “Extending logic programming,” in Proceedings of the SIGMOD conference, pp. 184–193, 1990.Google Scholar
  13. Lae90b.
    E. Laenens and D. Vermeir, “A Fixpoint Semantics of Ordered Logic,” Journal of Logic and Computation, to appear, 1990.Google Scholar
  14. Lec89a.
    C. Lecluse and P. Richard, “Modeling Complex Structures in Object-Oriented Databases,” in Proc. of the Symposium on Principles Of Database Systems, pp. 360–368, 1989.Google Scholar
  15. Mai86a.
    D. Maier, “A logic for Objects,” in Proc. of the Workshop on Foundations of Deductive Databases and Logic Programming, pp. 6–26, 1986.Google Scholar
  16. Mey88a.
    B. Meyer, “Eiffel: A Language and Environment for Software,” The Journal of Systems and Software, vol. 8, pp. 199–246, 1988.Google Scholar
  17. Moo85a.
    R.C. Moore, “Semantical considerations on nonmonotonic logic,” Artificial Intelligence, vol. 25, pp. 75–94, 1985. Also in ‘Readings in nonmonotonic reasoning', M.L. GinsbergGoogle Scholar
  18. Nut86a.
    D. Nute, LDR: a logic for defeasible reasoning, 1986. ACMC Research Report 01-0013Google Scholar
  19. Nut88a.
    D. Nute, “Defeasible reasoning and decision support systems,” Decision support systems, vol. 4, pp. 97–110, 1988.Google Scholar
  20. Prz88a.
    T. C. Przymusinski, “Perfect Model Semantics,” in Proc. of the Intl. Conf. on Logic Programming, 1988.Google Scholar
  21. Tou84a.
    D.S. Touretzky, “Implicit ordering of defaults in inheritance systems,” in Proceedings 5th National Conference on Artificial Intelligence (AAAI), pp. 322–325, Austin, TX, 1984. Also in ‘Readings in nonmonotonic reasoning', M.L. GinsbergGoogle Scholar
  22. Van88a.
    A. Van Gelder, K. Ross, and J. S. Schlipf, “Unfounded Sets and Well-Founded Semantics for General Logic Programs,” in Proc. of the Symposium on Principles of Database Systems, pp. 221–230, 1988.Google Scholar
  23. Ver89a.
    D. Vermeir, D. Nute, and P. Geerts, “A defeasible logic for multi-expert systems,” in Proc. of the Intl. Symposium on Computational Intelligence 89, Elsevier Publ. Co., 1989.Google Scholar
  24. Ver89b.
    D. Vermeir, D. Nute, and P. Geerts, “A logic for defeasible perspectives,” in Proc. of the 1988 Tubingen Workshop on Semantic Networks and Nonmonotonic Reasoning, Vol. 1, pp. 1–27, SNS-Bericht 89–48, 1989.Google Scholar
  25. Ver89c.
    D. Vermeir, E. Laenens, B. Verdonk, and A. Cuyt, “A Logic for Objects and Inheritance,” in Proc. of the Advanced Database Symposium, Kyoto, pp. 55–60, Information Processing Society of Japan, 1989.Google Scholar
  26. Ver90a.
    D. Vermeir, D. Nute, and P. Geerts, “Modeling Defeasible Reasoning with Multiple Agents,” in Proc. of the HICSS, Vol. III, pp. 534–543, 1990.Google Scholar

Copyright information

© Springer-Verlag 1991

Authors and Affiliations

  • E. Laenens
    • 1
  • D. Vermeir
    • 2
    • 3
  1. 1.Origin/International — MiddlewareEindhovenThe Netherlands
  2. 2.Dept of Math. and Computer ScienceUniversity of AntwerpUIA
  3. 3.Universiteitsplein 1WilrijkBelgium

Personalised recommendations