Skip to main content

Proving the Equivalence of CLP Programs

  • Conference paper
  • First Online:
Book cover Logic Programming (ICLP 2002)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 2401))

Included in the following conference series:

Abstract

This paper presents two proof systems for the equivalence of programs. The language concerned is CLP to which the universal quantifier is added (CLP∀). Both systems are based on first order classical logic.

The first uses an induction rule and allows one to prove that the set of finite successes of a program is included in another program’s corresponding set. The second uses a coinduction rule for proving the inclusion of the sets of infinite successes which contain the finite successes.

Finally we show that the proof systems are equivalent under some natural conditions.

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

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Aczel, P.: An Introduction to Inductive Definitions. Barwise K., Ed.. Handbook of Mathematical Logic. North Holland, 1977.

    Google Scholar 

  2. Barras, B. et al.: The Coq Proof Assistant. Reference Manual. http://coq.inria.fr/doc/main.html.

  3. Church, A.: A Formulation of the Simple Theory of Types. Journal of Symbolic Logic, 5:56–68, 1940.

    Article  MATH  MathSciNet  Google Scholar 

  4. Craciunescu, S.: Preuves de Programmes Logiques par Induction et Coinduction (Proofs of Logic Programs by Induction and Coinduction). In Actes de 10e Journees Francophones de Programmation en Logique et de Programmation par Contraintes, (JFPLC’2001), Paris, France.

    Google Scholar 

  5. de Boer, F. S., Gabbrielli, M., Marchiori, E., Palamidessi, C: Proving Concurrent Constraint Programs Correct. ACM-TOPLAS 19(5):685–725, 1997.

    Google Scholar 

  6. de Boer, F. S., Palamidessi, C.: A process algebra for concurrent constraint programming. In Proc. Joint Int’l Conf. and Symp. on Logic Programming, pages 463–477, The MIT Press, 1992.

    Google Scholar 

  7. Fages, F., Ruet, P., Soliman, S.: Linear concurrent constraint programming: operational and phase semantics. Information and Computation no. 164, 2001.

    Google Scholar 

  8. Gordon, J. C., Melham, T. F. (eds.): Introduction to HOL. Cambridge University Press 1993 ISBN 0-521-441897.

    Google Scholar 

  9. Jaffar, J., Lassez, J.-L. Constraint Logic Programming. Proceedings of Principles of Programming Languages, 1987, Munich, 111–119.

    Google Scholar 

  10. Kaufmann, M., Manolios, P., Moore, J. S.: Computer-Aided Reasoning: An Approach Kluwer Academic Publishers, June, 2000. (ISBN 0-7923-7744-3).

    Google Scholar 

  11. Maher, M. J.: Adding Constraints to Logic-based Formalisms, in: The Logic Programming Paradigm: a 25 Years Perspective, K. R. Apt, V. Marek, M. Truszczynski and D. S. Warren (Eds.), Springer-Verlag, Artificial Intelligence Series, 313–331, 1999.

    Google Scholar 

  12. McDowell, R., Miller, D.: Cut-Elimination for a Logic with Definitions and Induction. Theoretical Computer Science, 232: 91–119, 2000.

    Article  MATH  MathSciNet  Google Scholar 

  13. Paulson, L. C.: The Isabelle reference manual. Technical Report 283, University of Cambridge, Computer Laboratory, 1993. ftp://ftp.cl.cam.ac.uk/ml/ref.dvi.gz.

  14. Saraswat, V., Rinard, M.: Concurrent constraint programming. ACM Symposium on Principles of Programming Languages 1990, San Francisco.

    Google Scholar 

  15. Stark, R. F.: The theoretical foundations of LPTP (a logic program theorem prover). Journal of Logic Programming, 36(3):241–269, 1998.

    Article  MathSciNet  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2002 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Craciunescu, S. (2002). Proving the Equivalence of CLP Programs. In: Stuckey, P.J. (eds) Logic Programming. ICLP 2002. Lecture Notes in Computer Science, vol 2401. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-45619-8_20

Download citation

  • DOI: https://doi.org/10.1007/3-540-45619-8_20

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-43930-1

  • Online ISBN: 978-3-540-45619-3

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics