67 research outputs found
Refining Nodes and Edges of State Machines
State machines are hierarchical automata that are widely used to structure complex behavioural specifications. We develop two notions of refinement of state machines, node refinement and edge refinement. We compare the two notions by means of examples and argue that, by adopting simple conventions, they can be combined into one method of refinement. In the combined method, node refinement can be used to develop architectural aspects of a model and edge refinement to develop algorithmic aspects. The two notions of refinement are grounded in previous work. Event-B is used as the foundation for our refinement theory and UML-B state machine refinement influences the style of node refinement. Hence we propose a method with direct proof of state machine refinement avoiding the detour via Event-B that is needed by UML-B
Mergeable priority queues and heaps
Apart from the introduction, which is about Frans Kruseman Aretz, we present a number of priority queue implementations, all in terms of heaps
Trace theory and the specification of concurrent systems
In this paper we show how trace theory can be used to describe the behaviour of concurrent systems . We present a short introduction to trace theory. We also discuss a program notation that specifies the trace set of a component. As an example we derive a solution for one of the problems of the STC Workshop [5]
- …