A Temporal Logic for Specification of Dynamic Systems and Its Verification

동적 시스템 명세를 위한 시제논리언어와 그 검증

  • Cho, Seung-Mo ;
  • Kim, Hyung-ho (Dept. of Computer Science, Korea Advanced Institute of Science and Technology) ;
  • Cha, Sung-Deok (Dept. of Computer Science, Korea Advanced Institute of Science and Technology) ;
  • Bae, Doo-Hwan (Dept. of Computer Science, Korea Advanced Institute of Science and Technology)
  • 조승모 (한국과학기술원 첨단정보기술연구센터) ;
  • 김형호 (한국과학기술원 전산학과) ;
  • 차성덕 (한국과학기술원 전산학과) ;
  • 배두환 (한국과학기술원 전산학과)
  • Published : 2002.08.01

Abstract

Many modern complex systems, including most object-oriented systems, have dynamic characteristics that their components are dynamical]y configured during run-time. However, few analysis techniques are available that consider the dynamic nature of systems explicitly. We propose a specification and analysis method for these dynamic systems. We design a new temporal logic, called HDTL, to specify the properties of dynamically evolving systems, and tune up the tableau method for this logic. HDTL incorporates variables and quantifiers that enable the automatic analysis. Using HDTL and the analysis method, we can specify the correctness requirements of systems and check whether the system actually agree with the requirements or not. An experiment shows that HDTL is suitable for specifying dynamic properties and the analysis technique works well.

대부분의 객체지향 시스템을 비롯한, 복잡한 시스템들은 그 구성요소들이 시스템의 수행시간 중에 변하는 동적인 특성을 가지고 있다. 하지만 대부분의 기존 분석기법들은 이러한 측면을 무시하고 있다. 이 논문에서는 이러한 동적 시스템을 명세하고 분석하기 위한 기법을 제안하고자 한다. 이를 위해, 동적 시스템의 명세를 기술하기 위한 새로운 시제논리인 HDTL을 제안하고, 기존의 시제논리를 위한 분석기법을 수정하여 새로운 tableau 기법을 제안하였다. HDTL은 변수와 한정자를 사용하여 동적 시스템의 자동적 분석을 가능하게 하였다. 이 기법을 사용하여 우리는 시스템의 요구사항 명세를 기술하고, 시스템의 수행이 그 명세를 만족하는지를 살펴 볼 수 있다 실험을 통해 HDTL과 분석기법의 적용성을 보였다

Keywords

References

  1. M.G Hinchey and J.P. Bowen(eds.), Applications of Formal Methods, Prentice Hall International Series in Computer Science, 1995
  2. Zohar Manna and Amir Pnueli, The temporal logic of reactive and concurrent systems - Specifications, Springer-Verlag, 1992
  3. D. Harel, 'On Visual Formalisms,' Communications of ACM, pp.514-530, May 1988 https://doi.org/10.1145/42411.42414
  4. J. Peterson, Petri-net theory and the modeling of systems, Prentice Hall, 1985
  5. C. A. R. Hoare, Communicating sequential processes, Prentice Hall, 1985
  6. A. Emerson, 'Temporal and Model Logic,' Handbook of Theoretical Computer Science, Chap 16, edited by J. Van Leeuwen, Elesevier Science Publishers, 1990
  7. J. Bohn, W. Damn, O. Grumberg, H. Hungar, K. Laster, 'First-Order-CTL model checking,' FSTTCS98, LNCS 1530, 1998
  8. Rajeev Alur and Thomas A. Henzinger, 'A Really Temporal Logic,' The Journal of ACM, Vol 41, pp. 181-204, 1994 https://doi.org/10.1145/174644.174651
  9. C. A. R. Hoare, 'An Axiomatic basis for computer programming,' Communications of ACM, vol. 13, no. 10, Oct. 1969 https://doi.org/10.1145/363235.363259
  10. A . Pnueli, 'The temporal logic of programs,' In Proc. 18th IEEE Symposium on Foundation of Computer Science, 1977
  11. Laura K. Dillon and Y. S. Ramakrishna, 'Generating Oracles from Your Favorite Temporal Logic Specifications,' Proc. 4th ACM SIGSOFT Symp. Foundations of Software Engineering, San Francisco, pp. 106-117, October 1996 https://doi.org/10.1145/239098.239116
  12. R. Gerth, D. Peled, M. Y. Vardi, and P. Wolper, 'Simple On-The-Fly Automatic Verification of Linear Temporal Logic,' Pro. of Symposium on Protocol Specification, Testing, and Verification(PSTV95), pp. 3-18, June 1995
  13. L. Lamport, 'Proving the correctness of Multi Process Programs,' IEEE Transactions on Software Engineering, vol. 3, no. 2, Nov. 1977 https://doi.org/10.1109/TSE.1977.229904
  14. B. Alpern and F. B. Schneider, 'Defining liveness,' Information Processing Letters, vol. 21, pp. 181-185, 1985 https://doi.org/10.1016/0020-0190(85)90056-0
  15. A. P. Sistla, 'Safety, liveness and fairness in temporal logic,' Formal Aspect of Computing, vol. 6, pp. 495-511, 1994 https://doi.org/10.1007/BF01211865
  16. 'SEC DTV 소프트웨어의 통합 테스팅 자동화 도구개발, 연구결과 보고서', 한국과학기술원 전자전산학과 소프트웨어 공학연구실, 2000
  17. L. C. Paulson, ML for the Working Programmer, Cambridge University Press, 1996
  18. Moonjoo Kim, Mahesh Viswanathan, Hanene Ben-Abdallah, Sampath Kannan, Insup Lee and Oleg Sokolsky, 'Formally Specified Monitoring of Temporal Properties', Proc. of European Conference on Real-Time Systems, York. UK, June 9-11, 1999 https://doi.org/10.1109/EMRTS.1999.777457
  19. Java Platform Debugger Architecture, http://java.sun.com/j2se/1.3/docs/guide/jpda/index.html