Extending Model Checker for Real-time Verification of Statecharts

스테이트차트의 실시간 검증을 위한 모델체커의 확장

  • Published : 2004.06.01

Abstract

This paper presents a method for real-time verification of Statecharts. Statecharts has been widely used for real-time reactive systems, and supports two time models: synchronous and asynchronous. However, existing real-time verification methods for them are incompatible with the asynchronous time model or increase state space by introducing new variables to the target models. We solved these problems by extending existing model checking algorithms. The extended algorithms can be used with both time models of Statecharts because they consider time increasing transitions only. In addition, they do not increase target state space since they count those transitions internally without additional variables. We extended an existing model checker, NuSMV, based on the proposed algorithms and conducted some experiments to show their advantage.

본 연구는 스테이트차트의 실시간 검증을 위한 알고리즘을 제안한다. 스테이트차트는 실시간 반응형 시스템의 명세에 많이 사용되고 있으며 동기적과 비동기적인 두개의 시간모델을 지원한다. 그러나 기존의 스테이트차트에 대한 실시간 검증 방법은 비동기적 시간 모델과 호환되지 않거나, 변수를 모델에 추가함으로써 모텔의 상태 공간을 증가시키는 단점이 있었다. 우리는 기존의 모델 체킹 알고리즘을 확장하여 이러한 문제점을 해결하였다. 확장된 알고리즘은 시간을 증가시키는 전이만을 고려하기 때문에 스테이트차트의 두 가지 시간 모델에 모두 사용할 수 있으며, 시간의 계산이 알고리즘 내부적으로 이루어지기 때문에 모델에 변수를 추가할 필요가 없어 상태공간을 증가시키지 않는다. 본 연구는 이러한 알고리즘을 토대로 기존의 모델 체커인 NuSMV를 확장하였으며, 사례 연구를 통하여 그 유용성을 확인하였다.

Keywords

References

  1. D Harel. Statecharts: A visual formalism for complex systems. Science of Computer Programming, 8:231-274, 1987 https://doi.org/10.1016/0167-6423(87)90035-9
  2. S.V. Campos and E. Clarke. Real-Time Symbolic Model Checking for Discrete Time Models. In T. Rus and C. Rattray, editors, Theories and Experiences for Real-Time System Development. World Scientific Press, AMAST Series in Computing, 1994
  3. S. Campos, E. Clarke, W. Marrero, M. Minea, and H. Hiraishi. Computing quantitative characteristics of finite-state real-time systems. In Proceedings of the Real-Time Systems Symposium. IEEE Computer Society Press, December 1994 https://doi.org/10.1109/REAL.1994.342709
  4. S. Campos, E. Clarke, and M.Minea. The verus tool: A quantitative approach to the formal verification of real-time systems. In O. Grumberg, editor, Proc. 9th International Conference on Computer Aided Verifiauion (CAV'97), volume 1254, pages 452-455. Springer Verlag, 1997
  5. E. Allen Emerson, A.K. Mok, A.P. Sistla, and Jai Srinivasan. Quantitative temporal reasoning. In Lecture Notes in Computer Science, volume 531, pages 136-145, 1990 https://doi.org/10.1007/BFb0023727
  6. Udo Brockmeyer and Gunnar Wittich. Tamagotchis need not die-verification of STATEMATE designs. Tools and Algorithms for the Construction and Analysis of Systems(TACAS'98), 1998 https://doi.org/10.1007/BFb0054174
  7. Udo Brockmeyer and Gunnar Wittich. Real-time verification of STATEMATE designs. In Lecture Notes in Computer Science, pages 537-541, 1998 https://doi.org/10.1007/BFb0028777
  8. Pnueli A. A temporal logic of programs. Theoretical Computer Science, 13:45-60, 1981 https://doi.org/10.1016/0304-3975(81)90110-9
  9. David Harel and Amnon Naamad. The STATEMATE semantics of statecharts. ACM Transactions on Software Engineering and Methodology, 5(4):293-333, 1996 https://doi.org/10.1145/235321.235322
  10. Sergio Vale Aguiar Campos, Edmund M. Clarke, Wilfredo R. Marrero, and Marius Minea. Verus: A tool for quantitative analysis of finite-state real-time systems. In Workshop on Languages, Compilers and Tools for Real-Time Systems, pages 70-78, 1995 https://doi.org/10.1145/216636.216661
  11. Alessandro Cimatti, Edmund M. Clarke, Fausto Giunchiglia, and Marco Roveri. NUSMV: A new symbolic model checker. International Journal on Software Tools for Technology Transfer, 2(4): 410-425, 2000 https://doi.org/10.1007/s100090050046
  12. Sergio Campos, Marcia Teixeira, Marius Minea, Edmund Calrke, and Andreas Kuehlmann. Model checking semi-continuous time models using bdds. In Proceedings of the International Workshop on Symbolic Model Checking, 1999
  13. H.J, Bang. Extending SMV for Real-time Verification of Statecbarts. Master's thesis, Korea Advanced Institute of Science and Technology, 2003
  14. K. McMillan. Symbolic Model Checking. Kluwer, 1993
  15. William Chan, Richard J. Anderson, Paul Beame, Steve Burns, Francesmary Modugno, David Notkin, and Jon Damon Reese. Model checking large software specifications. Software Engineering, 24(7):498-520, 1998 https://doi.org/10.1109/32.708566
  16. N. Leveson, M. Heimdahl, H.Hildreth, and J.Reese. Requirements specification for process-control systems. IEEE Transactions on Software Engineering, 20(9), 1994 https://doi.org/10.1109/32.317428
  17. E.M. Clarke, E.A. Emerson, and A.P. Sistla. Automatic verification of finite-state concurrent systems using temporal logic specifications. ACM Transactions on Programming Languages and Systems, 8(2):244-263, 1986 https://doi.org/10.1145/5397.5399
  18. E.M. Clarke, O. Grumberg, and D.A. Peled. Model Checking. The MIT Press, 1999
  19. R. Alur, C. Courcoubetis, and D. Dill. Modelchecking for real-time systems. In Proceedings of the 5th Symposium on Logic in Computer Science, pages 414-425, Philadelphia, 1990
  20. G. Holzmann. The model checker SPIN. IEEE Transactions on Software Engineering, 35(5):279-295, 1997 https://doi.org/10.1109/32.588521
  21. J.R. Burch, E.M. Clarke, K.L. McMillan, D.L. Dill, and L.J. Hwang. Symbolic Model Checking: 10 20 States and Beyond. In Proceedings of the Fifth Annual IEEE Symposium on Logic in Computer Science, pages 1-33, Washington, D.C., 1990. IEEE Computer Society Press https://doi.org/10.1109/LICS.1990.113767