%0 Report %T Detecting Diamond Necklaces in Labeled Dags (A Problem from Distributed Debugging) %+ Distributed Algorithms and Protocols (ADP) %A Hurfin, Michel %A Raynal, Michel %N RR-2838 %I INRIA %8 1996 %D 1996 %Z Computer Science [cs]/Other [cs.OH]Reports %X The problem tackled in this paper originates from the debugging of distributed applications. Execution of such an application can be modeled as a partially ordered set of process states. The debugging of control flows (sequences of process states) of these executions is based on the satisfaction of predicates by process states. A process state that satisfies a predicate inherits its label. It follows that, in this context, a distributed execution is a labeled directed acyclic graph (dag for short). Debug or determine if control flows of a distributed execution satisfies some property amounts to test if the labeled dag includes some pattern defined on predicate labels. This paper first introduces a general pattern (called diamond necklace) which includes classical patterns encountered in distributed debugging. Then an efficient polynomial time algorithm detecting such patterns in a labeled dag is presented. To be easily adapted to an on-the-fly detection of the pattern in distributed executions, the algorithm visits the nodes of the graph according to a topological sort strategy. %G English %2 https://inria.hal.science/inria-00073852/document %2 https://inria.hal.science/inria-00073852/file/RR-2838.pdf %L inria-00073852 %U https://inria.hal.science/inria-00073852 %~ EC-PARIS %~ UNIV-RENNES1 %~ CNRS %~ INRIA %~ INSA-RENNES %~ INRIA-RENNES %~ IRISA %~ INRIA-RRRT %~ IRISA_SET %~ TESTALAIN1 %~ INRIA2 %~ UR1-HAL %~ LARA %~ UR1-MATH-STIC %~ UR1-UFR-ISTIC %~ TEST-UNIV-RENNES %~ TEST-UR-CSS %~ UNIV-RENNES %~ INRIA-RENGRE %~ INSA-GROUPE %~ UR1-MATH-NUM