Temporal Logic Verifications for UML, the Vending Machine Example

Jean-Claude Royer · 2001

To verify UML specifications, we need formal specification, that is a well-known difficulty. Since UML allows both the use of data types and dynamic specifications, the verification of temporal logic properties leads to other problems. This paper presents an example of a system specified in UML and completed with a formal and component-oriented approach. We use an algebraic approach called Graphic Abstract data Types (GAT) based on Statecharts and algebraic specifications of partial abstract data types. We show that writing and proving temporal logic properties in such a context is possible. Because we have Statecharts: i.e. a symbolic system with guards, variables and data values, classical model checking is not sufficient enough. We rather advocate proofs with a general theorem prover and the use of functional operators expressing temporal properties. We show several examples of properties and proofs using first-order predicate logic.

Read the paper · More papers on PaperTik