A Symbolic Model Checker for tccp Programs

  • M. Alpuente
  • M. Falaschi
  • A. Villanueva
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 3475)


In this paper, we develop a symbolic representation for timed concurrent constraint (tccp) programs, which can be used for defining a lightweight model–checking algorithm for reactive systems. Our approach is based on using streams to extend Difference Decision Diagrams (DDDs) which generalize the classical Binary Decision Diagrams (BDDs) with constraints. We use streams to model the values of system variables along the time, as occurs in many other (declarative) languages. Then, we define a symbolic (finite states) model checking algorithm for tccp which mitigates the state explosion problem that is common to more conventional model checking approaches. We show how the symbolic approach to model checking for tccp improves previous approaches based on the classical Linear Time Logic (LTL) model checking algorithm.


Lightweight formal methods Model Checking Timed Concurrent Constraint Programs DDDs 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Alpuente, M., Falaschi, M., Villanueva, A.: Symbolic Representation Timed Concurrent Constraint Programs. Technical Report DSIC-II/12/04, DSIC, Technical University of Valencia (2004), Available at
  2. 2.
    Alpuente, M., Gallardo, M.M., Pimentel, E., Villanueva, A.: Abstract Model Checking of tccp programs. In: Proc. of the 2nd Workshop on Quantitative Aspects of Programming Languages (QAPL 2004). Electronic Notes in Theoretical Computer Science. Elsevier Science Publishers, Amsterdam (2004)Google Scholar
  3. 3.
    de Boer, F.S., Gabbrielli, M., Meo, M.C.: A Timed Concurrent Constraint Language. Information and Computation 161, 45–83 (2000)zbMATHCrossRefMathSciNetGoogle Scholar
  4. 4.
    de Boer, F.S., Gabbrielli, M., Meo, M.C.: A Temporal Logic for reasoning about Timed Concurrent Constraint Programs. In: Smolka, G. (ed.) Proc. of 8th International Symposium on Temporal Representation and Reasoning, pp. 227–233. IEEE Computer Society Press, Los Alamitos (2001)CrossRefGoogle Scholar
  5. 5.
    Bryant, R.E.: Graph-based algorithms for Boolean function manipulation. IEEE Transactions on Computers C-35(8), 677–691 (1986)CrossRefGoogle Scholar
  6. 6.
    Clarke, E.M., Grumberg, O., Peled, D.: Model Checking. The MIT Press, Cambridge (1999)Google Scholar
  7. 7.
    Clarke, E.M., McMillan, K.M., Campos, S., Hartonas-GarmHausen, V.: Symbolic Model Checking. In: Alur, R., Henzinger, T.A. (eds.) CAV 1996. LNCS, vol. 1102, pp. 419–422. Springer, Heidelberg (1996)Google Scholar
  8. 8.
    Falaschi, M., Policriti, A., Villanueva, A.: Modeling Timed Concurrent systems in a Temporal Concurrent Constraint language - I. In: Dovier, A., Meo, M.C., Omicini, A. (eds.) Selected papers from 2000 Joint Conference on Declarative Programming. Electronic Notes in Theoretical Computer Science, vol. 48. Elsevier Science Publishers, Amsterdam (2000)Google Scholar
  9. 9.
    Falaschi, M., Villanueva, A.: Automatic verification of timed concurrent constraint programs. Theory and Practice of Logic Programming (2004) (to appear)Google Scholar
  10. 10.
    Møller, J., Lichtenberg, J., Andersen, H.R., Hulgaard, H.: Difference Decision Diagrams. In: Flum, J., Rodríguez-Artalejo, M. (eds.) CSL 1999. LNCS, vol. 1683, pp. 111–125. Springer, Heidelberg (1999)CrossRefGoogle Scholar
  11. 11.
    Saraswat, V.A., Rinard, M., Panangaden, P.: Semantic Foundations of Concurrent Constraint Programming. In: Proc. of 18th Annual ACM Symposium on Principles of Programming Languages, pp. 333–352. ACM Press, New York (1991)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2005

Authors and Affiliations

  • M. Alpuente
    • 1
  • M. Falaschi
    • 2
  • A. Villanueva
    • 1
  1. 1.DSICTechnical University of ValenciaValenciaSpain
  2. 2.DIMIUniversity of UdineUdineItaly

Personalised recommendations