Browse > Article

Simplification of State Invariant with Mixed Reachability Analysis  

권기현 (경기대학교 정보과학부)
Abstract
State invariant is a property that holds in every reachable state. It can be used not only in understanding and analyzing complex software systems, but it can also be used for system verifications such as checking safety, liveness, and consistency. For these reasons, there are many vital researches for deriving state invariant from finite state machine models. In previous works every reachable state is to be considered to generate state invariant. Thus it is likely to be too complex for the user to understand. This paper seeks to answer the question `how to simplify state invariant\ulcorner`. Since the complexity of state invariant is strongly dependent upon the size of states to be considered, so the smaller the set of states to be considered is, the shorter the length of state invariant is. For doing so, we let the user focus on some interested scopes rather than a whole state space in a model. Computation Tree Logic(CTL) is used to specify scopes in which he/she is interested. Given a scope in CTL, mixed reachability analysis is used to find out a set of states inside it. Obviously, a set of states calculated in this way is a subset of every reachable state. Therefore, we give a weaker, but comprehensible, state invariant.
Keywords
State invariant; Temporal logic formula; Fixed-point computations; Reachability analysis; Property specifications;
Citations & Related Records
연도 인용수 순위
  • Reference
1 R.E. Bryant, Graph-Based Algorithms for Boolean Function Manipulation, IEEE Transactions on Computer, Vol. 35, No.8, pp.677-691, 1986
2 D.Harel, A. Naamad, The STATMATE semantics of statecharts, ACM' Transactions on Software Engineering and Methodology, Vol.5, No.4, pp.293-333, 1996   DOI
3 E.M. Clarke, O. Grumberg, D. Peled, Model Checking, MIT Press, 1999
4 M.B. Dwyer, G.S. Avrunin, J.C. Corbett, Property specification patterns for finite-state verification, In Proceedings of the Workshop on Formal Methods in Software Practice, 1998   DOI
5 L. K. Dillon, et.al., A graphical interval logic for specifying concurrent systems, ACM Transactions on Software Engineering and Methodology, Vol.3, No.2, pp.131-165, 1994   DOI
6 Y.W. Park, et.al., Static analysis to identify invariants in RSML specifications, In Proceedings of Formal Techniques in Real-Time and Fault-Tolerant '98, LNCS 1486, Springer, 1998   DOI   ScienceOn
7 S. Bensalem, Y. Lakhnech, H. Saidi, Powerful techniques for the automatic generation of invariants, Proceedings of CAV' 96, LNCS 1102, pp. 323-335, 1996
8 C. Heitmeyer, et.al., Using abstraction and model checking to detect safety violations in requirements specifications, IEEE Transactions on Software Engineering, Vol.24, No.11, 1998   DOI   ScienceOn
9 W. Chan, Temporal Logic Queries, In Proceedings of CAV 2000, LNCS 1855, Springer, 2000
10 S. Bensalem, Y. Lakhnech, Automatic generation of invariants, Formal Methods in System Design, Vol.15, No.1, pp.75-92, 1999   DOI   ScienceOn
11 R. Jeffords, C. Heitmeyer, Automatic generation of state invariants from requirements specifications, In Proceedings of ACM SIGSOFT Symposium on Foundations of Software Engineering, 1998   DOI
12 Z. Manna, et.al., STeP: The Stanford temporal prover, Technical Report STAN-CS-TR-94-1518, Computer Science Department, Stanford University, 1994
13 E.M. Clarke, E.A. Emerson, A.P. Sistla, Automatic verification of finite state concurrent systems using temporal logic specifications, ACM Transactions on Programming Languages and Systems, Vol.8, No.2, pp. 244-263, 1986   DOI   ScienceOn