VARIABLES AS RESOURCE IN HOARE LOGICSMatthew ParkinsonRichard BornatCristiano Calcagno9
DTR06-1.pdf
Hoare logic is bedevilled by complex and unmemorable side conditions
on the use of variables. We define a logic free of side conditions,
and show that it admits translations of proofs in Hoare logic,
thereby showing that nothing is lost. Our work draws on ideas from
separation logic: program variables are treated as resource and
separated with *, rather than as logical variables in disguise.
For clarity we exclude a treatment of the heap.]]>DERIVING EVENT-BASED TRANSITION SYSTEMS FROM GOAL-ORIENTED REQUIREMENTS MODELSEmmanuel LetierJeff KramerJeff MageeSebastian Uchitel10
DTR06-2.pdf
Goal-oriented methods are increasingly popular for elaborating software requirements. They offer systematic support for incrementally building intentional, structural, and operational models of the software and its environment. Event-based transition systems on the other hand are convenient formalisms for modelling and reasoning about software behaviours at the architectural level.
The paper combines these two works by presenting a technique .for translating formal specification of software operations built according to the KAOS goal-oriented method into event-based transition systems analysable by the LTSA toolset. The translation involves moving from a declarative, state-based, timed, synchronous formalism typical of requirements modelling languages to an operational, event-based, untimed, asynchronous one typical of architecture description languages. The derived model is used for the formal analysis and animation of KAOS operation models In LTSA.
The translation process provides insights into the two complementary formalisms and raises questions about the use o f synchronous temporal logic for requirements specification.]]>