Proving local invariants in ASTDs
Résumé
This paper proposes a formal approach for generating proof obligations to verify local invariants in an Algebraic State Transition Diagram (\astd). \astd is a graphical specification language that allows for the combination of extended hierarchical state machines using CSP-like process algebra operators. Invariants can be declared at any level in a specification (state, ASTD), fostering the decomposition of system invariants into modular local invariants which are easier to prove, because proof obligations are smaller. The proof obligations take advantage of the structure of an \astd to use local invariants as hypotheses. \astd operators covered are automaton, sequence, closure and guard. Proof obligations are discharged using Rodin. When proof obligations cannot be proved, ProB can be used to identify counter-examples to help in correcting/reinforcing the invariant or the specification.
Domaines
Informatique [cs]Origine | Fichiers produits par l'(les) auteur(s) |
---|