Advertisement

Anti-chain based algorithms for timed/probabilistic refinement checking

  • Ting Wang
  • Tieming Chen
  • Yang Liu
  • Ye Wang
Research Paper
  • 25 Downloads

Abstract

Refinement checking answers the question on whether an implementation model is a refinement of a specification model, which is of great value for system verification. Some refinement relationships, e.g., trace refinement and failures/divergence refinement, have been recognized for different verification purposes. In general, refinement checking algorithms often rely on subset construction, which incurs in the state space explosion problem. Recently the anti-chain based approach has been suggested for trace refinement checking, and the results show a significant improvement. In this paper, we investigate the problems of applying the anti-chain approach to timed refinement checking (a timed implementation vs. a timed or untimed specification) and probabilistic refinement checking (a probabilistic implementation vs. a non-probabilistic specification), and show that the state space can be reduced considerably by employing the anti-chain approach. All the algorithms have been integrated into the model checking tool PAT, and the experiments have been conducted to show the efficiency of the application of anti-chains.

Keywords

model checking refinement anti-chain timed automata markov decision process 

Notes

Acknowledgements

This work was supported by National Natural Science Foundation of China (Grant Nos. 61602412, 61103044, U1509214, 61402406) and Natural Science Foundation of Zhejiang Province of China (Grant No. LY16F020035).

References

  1. 1.
    Roscoe A W. Model-Checking CSP. Upper Saddle River: Prentice-Hall, 1994Google Scholar
  2. 2.
    Baier C, Katoen J P. Principles of Model Checking. Cambridge: The MIT Press, 2008zbMATHGoogle Scholar
  3. 3.
    Li W, Li N. A formal semantics for program debugging. Sci China Inf Sci, 2012, 55: 133–148MathSciNetCrossRefzbMATHGoogle Scholar
  4. 4.
    Li H, Luo J, Li W. A formal semantics for debugging synchronous message passing-based concurrent programs. Sci China Inf Sci, 2014, 57: 128101zbMATHGoogle Scholar
  5. 5.
    Che X P, Maag S. Testing protocols in internet of things by a formal passive technique. Sci China Inf Sci, 2014, 57: 032101CrossRefGoogle Scholar
  6. 6.
    Hoare C A R. Communicating sequential processes. In: The Origin of Concurrent Programming. Berlin: Springer, 1985. 413–443Google Scholar
  7. 7.
    Roscoe A W. On the expressive power of CSP refinement. Form Asp Comput, 2005, 17: 93–112CrossRefzbMATHGoogle Scholar
  8. 8.
    Sun J, Song S, Liu Y. Model checking hierarchical probabilistic systems. In: Proceedings of the 12th International Conference on Formal Engineering Methods (ICFEM), Shanghai, 2010. 388–403Google Scholar
  9. 9.
    Abdulla P A, Ouaknine J, Quaas K, et al. Zone-based universality analysis for single-clock timed automata. In: Proceedings of International Conference on Fundamentals of Software Engineering (FSE), Luxembourg, 2007. 98–112zbMATHGoogle Scholar
  10. 10.
    Baier C, Bertrand N, Bouyer P, et al. When are timed automata determinizable? In: Proceedings of International Colloquium on Automata, Languages, and Programming (ICALP), Rhodes, 2009. 43–54zbMATHGoogle Scholar
  11. 11.
    Ouaknine J, Worrell J. On the language inclusion problem for timed automata: closing a decidability gap. In: Proceedings of the 19th Annual IEEE Symposium on Logic in Computer Science (LICS), Turku, 2004. 54–63Google Scholar
  12. 12.
    Wulf M D, Doyen L, Henzinger T A, et al. Antichains: a new algorithm for checking universality of finite automata. In: Proceedings of the 18th International Conference on Computer Aided Verification (CAV), Seattle, 2006. 17–30zbMATHGoogle Scholar
  13. 13.
    Bengtsson J, Yi W. Timed automata: semantics, algorithms and tools. In: Lectures on Concurrency and Petri Nets. Berlin: Springer, 2004. 87–124CrossRefGoogle Scholar
  14. 14.
    Wang T, Sun J, Liu Y, et al. Are timed automata bad for a specification language? Language inclusion checking for timed automata. In: Proceedings of the 20th International Conference on Tools and Algorithms for the Construction and Analysis of Systems (TACAS), Grenoble, 2014. 310–325Google Scholar
  15. 15.
    Liu Y, Sun J, Dong J S. Developing model checkers using PAT. In: Proceedings of the 8th International Symposium on Automated Technology for Verification and Analysis (ATVA), Singapore, 2010. 371–377Google Scholar
  16. 16.
    Abdulla P A, Chen Y F, Holk L, et al. When simulation meets antichains. In: Proceedings of the 16th International Conference on Tools and Algorithms for the Construction and Analysis of Systems (TACAS), Paphos, 2010. 158–174Google Scholar
  17. 17.
    Henzinger T A, Nicollin X, Sifakis J, et al. Symbolic model checking for real-time systems. J Inform Comput, 1994, 111: 193–244MathSciNetCrossRefzbMATHGoogle Scholar
  18. 18.
    Bouyer P. Forward analysis of updatable timed automata. Form Meth Syst Des, 2004, 24: 281–320MathSciNetCrossRefzbMATHGoogle Scholar
  19. 19.
    Rokicki T G. Representing and modeling digital circuits. Dissertation for Ph.D. Degree. San Francisco: Stanford University, 1993Google Scholar
  20. 20.
    Tripakis S. Checking timed buchi automata emptiness on simulation graphs. ACM Trans Comput Logic, 2009, 10: 1–19MathSciNetCrossRefzbMATHGoogle Scholar
  21. 21.
    Behrmann G, Bouyer P, Larsen K G, et al. Lower and upper bounds in zonebased abstractions of timed automata. Int J Softw Tools Technol Trans, 2004, 8: 204–215CrossRefzbMATHGoogle Scholar
  22. 22.
    Puterman M L. Markov Decision Processes: Discrete Stochastic Dynamic Programming. Hoboken: John Wiley and Sons, 1994CrossRefzbMATHGoogle Scholar
  23. 23.
    Vereijken J J. Fischer’s Protocol in Timed Process Algebra. Technical Report. 1994Google Scholar
  24. 24.
    Lynch N, Shavit N. Timing-based mutual exclusion. In: Proceedings of Real-Time Systems Symposium (RTSS), Phoenix, 1992. 2–11Google Scholar
  25. 25.
    Behrmann G, David R, Larsen K G. A tutorial on uppaal. In: Formal Methods for the Design of Real-Time Systems. Berlin: Springer, 2004. 200–236zbMATHGoogle Scholar
  26. 26.
    Daws C, Tripakis S. Model checking of real-time reachability properties using abstractions. In: Proceedings of the 4th International Conference on Tools and Algorithms for the Construction and Analysis of Systems (TACAS), Lisbon, 1998. 313–329Google Scholar
  27. 27.
    Duflot M, Fribourg L, Herault T, et al. Probabilistic model checking of the CSMA/CD protocol using PRISM and APMC. Electron Notes Theor Comput Sci, 2005, 128: 195–214CrossRefzbMATHGoogle Scholar
  28. 28.
    Gruhn V, Laue R. Patterns for timed property specifications. Electron Notes Theor Comput Sci, 2006, 153: 117–133CrossRefGoogle Scholar
  29. 29.
    Treiber R K. Systems Programming: Coping with Parallelism. Technical Report, IBM Almaden Research Center. 1986Google Scholar
  30. 30.
    Attiya H, Welch J. Distributed Computing: Fundamentals, Simulations, and Advanced Topics. 2nd ed. Oxford: The Oxford University Press, 2004CrossRefzbMATHGoogle Scholar
  31. 31.
    Doyen L, Raskin J F. Antichains for the automata-based approach to model checking. Logical Meth Comput Sci, 2009, 5: 1–20MathSciNetCrossRefzbMATHGoogle Scholar
  32. 32.
    Wulf M D, Doyen L, Maquet N, et al. Antichains: alternative algorithms for LTL satisfiability and model-checking. In: Proceedings of the 14th International Conference on Tools and Algorithms for the Construction and Analysis of Systems (TACAS), Budapest, 2008. 63–77zbMATHGoogle Scholar
  33. 33.
    Bouajjani A, Habermehl P, Holk L, et al. Antichain-based universality and inclusion testing over nondeterministic finite tree automata. In: Proceedings of the 13th International Conference on Implementation and Application of Automata (CIAA), San Francisco, 2008. 57–67zbMATHGoogle Scholar
  34. 34.
    Filiot E, Jin N, Raskin J F. An antichain algorithm for LTL realizability. In: Proceedings of the 21st International Conference on Computer Aided Verification (CAV), Grenoble, 2009. 263–277zbMATHGoogle Scholar
  35. 35.
    Alur R, Dill D L. A theory of timed automata. Theory Comput Sci, 1994, 126: 183–235MathSciNetCrossRefzbMATHGoogle Scholar
  36. 36.
    Suman P V, Pandya P K, Krishna S N, et al. Timed automata with integer resets: language inclusion and expressiveness. In: Proceedings of the 6th International Conference on Formal Modeling and Analysis of Timed Systems (FORMATS), Saint-Malo, 2008. 78–92zbMATHGoogle Scholar
  37. 37.
    Alur R, Fix L, Henzinger T A. Event-clock automata: a determinizable class of timed automata. Theor Comput Sci, 1999, 211: 253–273MathSciNetCrossRefzbMATHGoogle Scholar
  38. 38.
    Larsen K G, Petterson P, Wang Y. UPPAAL in a nutshell. J Softw Tools Technol Trans, 1997, 1: 134–152CrossRefzbMATHGoogle Scholar
  39. 39.
    Yovine S. Kronos: a verification tool for real-time systems. J Softw Tools Technol Trans, 1997, 1: 123–133CrossRefzbMATHGoogle Scholar

Copyright information

© Science China Press and Springer-Verlag GmbH Germany, part of Springer Nature 2017

Authors and Affiliations

  1. 1.College of Computer Science and TechnologyZhejiang University of TechnologyHangzhouChina
  2. 2.School of Computer EngineeringNanyang Technological UniversitySingaporeSingapore
  3. 3.School of Computer and Information EngineeringZhejiang Gongshang UniversityHangzhouChina

Personalised recommendations