Published online by Cambridge University Press: 01 October 2010
For digital interactive distributed systems, the timing of their events and the causality between their events are key issues. In real-time applications of embedded software systems, timing properties are essential, such as the response times of reactions depending on the precise timing of the input events. In a highly abstract view, a digital system can be represented by a set of events annotated by their timing. Sets of timed events labeled by actions represent the observations about systems. An essential property that helps to understand distributed interactive systems and a way to reason about their event flow is causality. Causality addresses the questions under which conditions certain events must, may or must not happen. Causality addresses the logical dependencies between the events in systems. Strictly speaking, causality reflects the logical essence in the event and action flow of systems. Causality is closely related to time. In particular, we study in the following the relationship between causality and the timing of input and output events, as well as its relationship to the granularity of time. We deal, in particular, with the problem of time abstraction and the precise timing of events. We show how causality and time form the basis of inductive reasoning, in particular in the case of dependencies in communication cycles (‘feedback’) and how we can work with time in models of distributed systems with a flexible choice of local clocks and local timing.