At some abstraction level a distributed computation can be modeled as a partial order on a set of observable events. We present an analysis technique that can be superimposed on distributed computations to analyze the structure of control flows. A general algorithm is introduced. Moreover it is shown how this algorithm can be simplified according to the distribution of observable events.
Distributed debugging is a particularly appropriate field to use this algorithm when an expected (or unexpected) behavior of a distributed computation can be described as a set of patterns on events the computation must (or must not) obey. In this paper we consider the simple case of patterns on events expressed by regular languages. The algorithm recognizes on-the-fly whether or not the maximal sequences of events match such patterns.
Keywords: Distributed computation, observable event, control flows, causal precedence, sequence analysis