Skip to main content

Toupie: A constraint language for model checking

  • Conference paper
  • First Online:
Constraint Programming: Basics and Trends (TCS School 1994)

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

Included in the following conference series:

Abstract

Constraint logic programming (CLP) has demonstrated its ability to handle difficult problems coming from operation research. We think that this approach is relevant to perform program analyses too. However, program analysis often requires solvers for second order constraints, i.e. mainly fixpoint equations, that are not available in CLP languages. In this paper, we present, the language Toupie that is designed to solve such constraints. Toupie uses an extension of Bryant's binary decision diagrams to encode relations which makes it possible to handle relations with huge numbers of elements.

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

Access this chapter

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. A. Arnold and D. Niwiński. Fixed point characterization of weak monadic second order logic definable sets of trees. In M. Nivat and A. Podelski, editors, Tree Automata and Languages. Elsevier Science Publishers, 1992.

    Google Scholar 

  2. [BCM+90] J.R. Burch, E.M. Clarke, K.L. McMillan, D.L. Dill, and L.J. Hwang. Symbolic Model Checking: 1020 States and Beyond. IEEE transactions on computers, 1990.

    Google Scholar 

  3. A. Bouali. Etudes et mises en œuvre d'outils de vérification basée sur la bisimulation. PhD thesis, Université Paris VII, 03 1993. in french.

    Google Scholar 

  4. S. Brlek and A. Rauzy. Synchronization of Constrained Transition Systems. In Proceedings of the First International Symposium on Parallel Symbolic Computation (PASCO'94), Linz, Ostreich, 1994. World Scientific Publishing.

    Google Scholar 

  5. K. Brace, R. Rudell, and R. Bryant. Efficient Implementation of a BDD Package. In Proceedings of the 27th ACM/IEEE Design Automation Conference. IEEE 0738, 1990.

    Google Scholar 

  6. R. Bryant. Graph Based Algorithms for Boolean Fonction Manipulation. IEEE Transactions on Computers, 35:677–691, 8 1986.

    Google Scholar 

  7. O. Coudert, C. Berthet, and J-C. Madre. Verification of Synchronous Sequential Machines Based on Symbolic Execution. In J. Sifakis, editor, Automatic Verification Methods for Finite State Systems, volume 407. LNCS, 1989.

    Google Scholar 

  8. M-M. Corsini, B. Le Charlier, K. Musumbu, and A. Rauzy. Efficient Abstract Interpretation of Prolog Programs by means of Constraint Solving over Finite Domains (extended abstract). In Proceedings of the 5th Int. Symposium on Programming Language Implementation and Logic Programming, PLILP'93, Estonie, 1993.

    Google Scholar 

  9. M-M. Corsini, A. Griffault, and A. Rauzy. Yet another Application for Toupie: Verification of Mutual Exclusion Algorithms. In proceedings of Logic Programming and Automated Reasonning, LPAR'93, volume 698. LNAI, 1993.

    Google Scholar 

  10. R. Enders, T. Filkorn, and D. Taubner. Generating BDDs for Symbolic Model Checking in CCS. Journal of Distributed Computing, 6:155–164, 6 1993.

    Google Scholar 

  11. N. Halbwachs. Delay Analysis in Synchronous Programs. In in Proceedings of the 5th international conference on Computer Aided Verification CAV'93, volume 697 of LNCS. Springer Verlag, June 1993.

    Google Scholar 

  12. P. Van Hentenryck. Constraint Satisfaction in Logic Programming. Logic Programming Series. MIT Press, 1989.

    Google Scholar 

  13. M. Henessy and R. Milner. Algebraic laws for non-determinism and concurrency. J. Assoc. Comput. Mach., 32:137–161, 1985.

    Google Scholar 

  14. R. Milner. Communication and Concurrency. Prentice Hall, New York, 1989.

    Google Scholar 

  15. D. Park. Fixpoint Induction and Proofs of Program Properties. Machine Intelligence, 5, 1970.

    Google Scholar 

  16. A. Rauzy. Aulne Version 0.2: User's Guide. Technical Report ??, LaBRI-URA CNRS 1304-Université Bordeaux I, 1994.

    Google Scholar 

  17. A. Rauzy. Toupie Version 0.25: User's Manual. Technical Report 959–94, LaBRI-URA CNRS 1304-Université Bordeaux I, 1994.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Andreas Podelski

Rights and permissions

Reprints and permissions

Copyright information

© 1995 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Rauzy, A. (1995). Toupie: A constraint language for model checking. In: Podelski, A. (eds) Constraint Programming: Basics and Trends. TCS School 1994. Lecture Notes in Computer Science, vol 910. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-59155-9_11

Download citation

  • DOI: https://doi.org/10.1007/3-540-59155-9_11

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-59155-9

  • Online ISBN: 978-3-540-49200-9

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics