Compositional analysis for equational Horn programs

  • María Alpuente
  • Moreno Falaschi
  • Germán Vidal
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 850)

Abstract

We introduce a compositional characterization of the operational semantics of equational Horn programs. Then we show that this semantics and the standard operational semantics based on (basic) narrowing coincide. We define an abstract narrower mimicking this semantics, and show how it can be used as a basis for efficient AND-compositional program analysis. As an application of our framework, we show a compositional analysis to detect the unsatisfiability of an equation set with respect to a given equational theory. We also show that our method allows us to perform computations and analysis incrementally in a Constraint Equational setting and that the test of satisfiability in this setting can be done in parallel.

Keywords

Semantic analysis compositionality equational logic programming term rewriting systems 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    M. Alpuente, M. Falaschi, and G. Levi. Incremental Constraint Satisfaction for Equational Logic Programming. Technical Report TR-20/91, Dipartimento di Informatica, Università di Pisa, 1991. To appear in Theoretical Computer Science.Google Scholar
  2. 2.
    M. Alpuente, M. Falaschi, and F. Manzo. Analyses of Unsatisfiability for Equational Logic Programming. Technical Report DSIC-II/29/92, UPV, 1992. Short version in M. Bruynooghe and M. Wirsing, editors, Proc. of PLILP'92, volume 631 of Lecture Notes in Computer Science, pages 443–457, Springer-Verlag, Berlin, 1992. To appear in the Journal of Logic Programming.Google Scholar
  3. 3.
    M. Alpuente, M. Falaschi, M.J. Ramis, and G. Vidal. Narrowing Approximations as an Optimization for Equational Logic Programs. Technical Report DSIC-II/1/93, UPV, 1993. Short version in J. Penjam and M. Bruynooghe, editors, Proc.of PLILP'93, volume 714 of Lecture Notes in Computer Science, pages 391–409, Springer-Verlag, Berlin, 1993.Google Scholar
  4. 4.
    M. Alpuente, M. Falaschi, M.J. Ramis, and G. Vidal. A Compositional Semantics for Conditional Term Rewriting Systems. In H.E. Bal, editor, Proc. Sixth IEEE Int'l Conf. on Computer Languages ICCL'94, pages 171–182. IEEE Computer Society Press, 1994.Google Scholar
  5. 5.
    M. Alpuente, M. Falaschi, and G. Vidal. Semantics-Based Compositional Analysis for Equational Horn Programs. Technical Report DSIC-II/5/93, UPV, 1993.Google Scholar
  6. 6.
    R. Bert, R. Echahed, and B.M. Østvold. Abstract Rewriting. In Proc. Third Int'l Workshop on Static Analysis WSA '93, volume 724 of Lecture Notes in Computer Science, pages 178–192. Springer-Verlag, Berlin, 1993.Google Scholar
  7. 7.
    M. Codish, M. Falaschi, and K. Marriott. Suspension Analyses for Concurrent Logic Programs. ACM Transactions on Programming Languages and Systems, 1994.Google Scholar
  8. 8.
    P. Cousot and R. Cousot. Abstract Interpretation: A Unified Lattice Model for Static Analysis of Programs by Construction or Approximation of Fixpoints. In Proc. Fourth ACM Symp. Principles of Programming Languages, pages 238–252, 1977.Google Scholar
  9. 9.
    N. Dershowitz and J.-P. Jouannaud. Rewrite systems. In J. van Leeuwen, editor, Handbook of Theoretical Computer Science, volume B: Formal Models and Semantics, pages 243–320. Elsevier, Amsterdam and The MIT Press, Cambridge, 1990.Google Scholar
  10. 10.
    N. Dershowitz and N. Lindenstrauss. An Abstract Concurrent Machine for Rewriting. In H. Kirchner and W. Wechler, editors, Proc. Second Int'l Conf. on Algebraic and Logic Programming, volume 463 of Lecture Notes in Computer Science, pages 318–331. Springer-Verlag, Berlin, 1990.Google Scholar
  11. 11.
    M. Gabbrielli and G. Levi. On the Semantics of Logic Programs. In J. Leach Albert, B. Monien, and M. Rodriguez Artalejo, editors, Automata, Languages and Programming, 18th International Colloquium, volume 510 of Lecture Notes in Computer Science, pages 1–19. Springer-Verlag, Berlin, 1991.Google Scholar
  12. 12.
    J.H. Gallier and S. Raatz. Extending SLD-resolution to equational Horn clauses using E-unification. Journal of Logic Programming, 6:3–43, 1989.Google Scholar
  13. 13.
    P. Van Hentenryck and T. Le Provost. Incremental Search in Constraint Logic Programming. New Generation Computing, 9:257–275, 1991.Google Scholar
  14. 14.
    M. Höhfeld and G. Smolka. Definite relations over constraint languages. Technical report, IBM Deutschland GmbH, Stuttgart, 1988.Google Scholar
  15. 15.
    S. Hölldobler. Foundations of Equational Logic Programming, volume 353 of Lecture Notes in Artificial Intelligence. Springer-Verlag, Berlin, 1989.Google Scholar
  16. 16.
    J.M. Hullot. Canonical Forms and Unification. In 5th Int'l Conf. on Automated Deduction, volume 87 of Lecture Notes in Computer Science, pages 318–334. Springer-Verlag, Berlin, 1980.Google Scholar
  17. 17.
    J.-M. Jacquet. Conclog: A Methodological Approach to Concurrent Logic Programming. PhD thesis, University of Namur, Belgium, 1989.Google Scholar
  18. 18.
    J. Jaffar and J.-L. Lassez. Constraint Logic Programming. In Proc. Fourteenth Annual ACM Symp. on Principles of Programming Languages, pages 111–119. ACM, 1987.Google Scholar
  19. 19.
    J. Jaffar, J.-L. Lassez, and M.J. Maher. A theory of complete logic programs with equality. Journal of Logic Programming, 3:211–223, 1984.Google Scholar
  20. 20.
    J.W. Klop. Term rewriting systems. In S. Abramsky, D. Gabbay, and T. Maibaum, editors, Handbook of Logic in Computer Science, volume I, pages 1–112. Oxford University Press, 1992.Google Scholar
  21. 21.
    H. Kuchen and W. Hans. An AND-Parallel Implementation of the Functional Logic Language Babel. In Aachener Informatik-Bericht, volume 12, pages 119–139, RWTH Aachen, 1991.Google Scholar
  22. 22.
    H. Kuchen, J.J. Moreno-Navarro, and M. Hermenegildo. Independent AND-Parallel Implementation of Narrowing. In M. Bruynooghe and M. Wirsing, editors, Proc. of PLILP'92, Leuven (Belgium), Volume 631 of Lecture Notes in Computer Science, pages 24–38. Springer-Verlag, Berlin, 1992.Google Scholar
  23. 23.
    J.-L. Lassez, M. J. Maher, and K. Marriott. Unification Revisited. In J. Minker, editor, Foundations of Deductive Databases and Logic Programming, pages 587–625. Morgan Kaufmann, Los Altos, Ca., 1988.Google Scholar
  24. 24.
    M. J. Maher. On parameterized substitutions. Technical Report RC 16042, IBM-T.J. Watson Research Center, Yorktown Heights, NY, 1990.Google Scholar
  25. 25.
    A. Middeldorp and E. Hamoen. Completeness results for basic narrowing. AAECC, 5:213–253, 1994.Google Scholar
  26. 26.
    W. Nutt, P. Réty, and G. Smolka. Basic narrowing revisited. Journal of Symbolic Computation, 7:295–317, 1989.Google Scholar
  27. 27.
    C. Palamidessi. Algebraic properties of idempotent substitutions. In M. S. Paterson, editor, Proc. of the 17th International Colloquium on Automata, Languages and Programming, volume 443 of Lecture Notes in Computer Science, pages 386–399. Springer-Verlag, Berlin, 1990.Google Scholar
  28. 28.
    U.S. Reddy. Narrowing as the Operational Semantics of Functional Languages. In Proc. Second IEEE Int'l Symp. on Logic Programming, pages 138–151. IEEE, 1985.Google Scholar
  29. 29.
    J.H. Siekmann. Unification Theory. Journal of Symbolic Computation, 7:207–274, 1989.Google Scholar

Copyright information

© Springer-Verlag 1994

Authors and Affiliations

  • María Alpuente
    • 1
  • Moreno Falaschi
    • 2
  • Germán Vidal
    • 1
  1. 1.Departamento de Sistemas Informáticos y ComputaciónUniversidad Politécnica de ValenciaValenciaSpain
  2. 2.Dipartimento di Elettronica e InformaticaUniversità di PadovaPadovaItaly

Personalised recommendations