Automatic verification of finite-state concurrent systems using temporal logic specifications
ACM Transactions on Programming Languages and Systems (TOPLAS)
Education in formal methods for software engineering
Information and Software Technology
Understanding Z: a specification language and its formal semantics
Understanding Z: a specification language and its formal semantics
Parallel program design: a foundation
Parallel program design: a foundation
Predicate calculus and program semantics
Predicate calculus and program semantics
The temporal logic of reactive and concurrent systems
The temporal logic of reactive and concurrent systems
ACM Transactions on Programming Languages and Systems (TOPLAS)
An experiment with the use of predicate transformers in UNITY
Information Processing Letters
The B-book: assigning programs to meanings
The B-book: assigning programs to meanings
Temporal logic model checking (abstract)
ILPS '97 Proceedings of the 1997 international symposium on Logic programming
Model checking
Guarded commands, nondeterminacy and formal derivation of programs
Communications of the ACM
An axiomatic basis for computer programming
Communications of the ACM
A Discipline of Programming
Specifying Systems: The TLA+ Language and Tools for Hardware and Software Engineers
Specifying Systems: The TLA+ Language and Tools for Hardware and Software Engineers
Combining Theorem Proving and Model Checking through Symbolic Analysis
CONCUR '00 Proceedings of the 11th International Conference on Concurrency Theory
"Higher-Order" Mathematics in B
ZB '02 Proceedings of the 2nd International Conference of B and Z Users on Formal Specification and Development in Z and B
Verification of Dynamic Constraints for B Event Systems under Fairness Assumptions
ZB '02 Proceedings of the 2nd International Conference of B and Z Users on Formal Specification and Development in Z and B
Progress on the State Explosion Problem in Model Checking
Informatics - 10 Years Back. 10 Years Ahead.
Introducing Dynamic Constraints in B
B '98 Proceedings of the Second International B Conference on Recent Advances in the Development and Use of the B Method
Crocos: An Integrated Environment for Interactive Verification of SDL Specifications
CAV '92 Proceedings of the Fourth International Workshop on Computer Aided Verification
Automatic Verification of Finite-state Concurrent Systems
Proceedings of the 15th International Conference on Application and Theory of Petri Nets
Modular Verification of Dynamic Properties for Reactive Systems
IFM '99 Proceedings of the 1st International Conference on Integrated Formal Methods
Construction of Finite Labelled Transistion Systems from B Abstract Systems
IFM '00 Proceedings of the Second International Conference on Integrated Formal Methods
Modular Verification for a Class of PLTL Properties
IFM '00 Proceedings of the Second International Conference on Integrated Formal Methods
Specification and Proof of Liveness Properties under Fairness Assumptions in B Event Systems
IFM '02 Proceedings of the Third International Conference on Integrated Formal Methods
Stepwise Refinement of Action Systems
Proceedings of the International Conference on Mathematics of Program Construction, 375th Anniversary of the Groningen University
Refinement Calculus, Part II: Parallel and Reactive Programs
Stepwise Refinement of Distributed Systems, Models, Formalisms, Correctness, REX Workshop
STeP: The Stanford Temporal Prover
STeP: The Stanford Temporal Prover
Model Checking for UNITY
The temporal logic of programs
SFCS '77 Proceedings of the 18th Annual Symposium on Foundations of Computer Science
Editor's analysis: An analysis of the most cited articles in software engineering journals-1999
Information and Software Technology
B#: toward a synthesis between Z and B
ZB'03 Proceedings of the 3rd international conference on Formal specification and development in Z and B
Hi-index | 0.00 |
Context: This paper deals with the development and verification of liveness properties on reactive systems using the Event-B method. By considering the limitation of the Event-B method to invariance properties, we propose to apply the language TLA^+ to verify liveness properties on Event-B models. Objective: This paper deals with the use of two verification approaches: theorem proving and model-checking, in the construction and verification of safe reactive systems. The theorem prover concerned is part of the Click_n_Prove tool associated to the Event-B method and the model checker is TLC for TLA^+ models. Method: To verify liveness properties on Event-B systems, we extend first the expressivity and the semantics of a B model (called temporal B model) to deal with the specification of fairness and eventuality properties. Second, we propose semantics of the extension over traces, in the same spirit as TLA^+ does. Third, we give verification rules in the axiomatic way of the Event-B method. Finally, we give transformation rules from a temporal B model into a TLA^+ module. We present in particular, our prototype system called B2TLA^+, that we have developed to support this transformation; then we can verify liveness properties thanks to the model checker TLC on finite state systems. For the verification of infinite-state systems, we propose the use of the predicate diagrams and its associated tool DIXIT. As the B refinement preserves invariance properties through refinement steps, we propose some rules to get the preservation of liveness properties by the B refinement. Results: The proposed approach is applied for the development of some reactive systems examples and our prototype system B2TLA^+ is successfully used to transform a temporal B model into a TLA^+ module. Conclusion: The paper successfully defines an approach for the specification and verification of safety and liveness properties for the development of reactive systems using the Event-B method, the language TLA^+ and the predicate diagrams with their associated tools. The approach is illustrated on a case study of a parcel sorting system.