Graph Rewriting and Constraint Solving for Modelling Distributed Systems with Synchronization (Extended Abstract)

In this extended abstract we describe our approach to modelling the dynamics of distributed systems. For distributed systems we mean systems consisting of concurrent processes communicating via shared ports and posing certain synchronization requirements, via the ports, to the adjacent processes. We use graphs to represent states of such systems, and graph rewriting to represent their evolution. The kind of graph rewriting we use is based on simple context-free productions which are however combined by means of the synchronization mechanism. This allows for a good level of expressivity in the system without sacrifying full distribution. Moreover, to approach the problem of combining productions together, we suggest to exploit existing techniques for constraint solving. This is based on the observation that the combination problem can be modelled as a (finite domain) constraint problem. In this respect, we propose to use both local consistency techniques, to remove the possible redundancies in a system state, and a distributed backtracking search algorithm, as used in distributed constraint solving. Our method has two main advantages: first, it is completely formal and thus provides a precise description of the way a distributed system evolves; second, it also seems very promising from the performance point of view, since the techniques we propose to combine productions together have been proven very convenient in several cases.

[1]  Eugene C. Freuder Backtrack-free and backtrack-bounded search , 1988 .

[2]  Makoto Yokoo,et al.  Distributed constraint satisfaction for formalizing distributed problem solving , 1992, [1992] Proceedings of the 12th International Conference on Distributed Computing Systems.

[3]  Ugo Montanari,et al.  Networks of constraints: Fundamental properties and applications to picture processing , 1974, Inf. Sci..

[4]  Rina Dechter,et al.  Network-Based Heuristics for Constraint-Satisfaction Problems , 1987, Artif. Intell..

[5]  Ugo Montanari,et al.  A model for distributed systems based on graph rewriting , 1987, JACM.

[6]  Rina Dechter,et al.  From Local to Global Consistency , 1990, Artif. Intell..

[7]  Annegret Habel,et al.  Hyperedge Replacement: Grammars and Languages , 1992, Lecture Notes in Computer Science.

[8]  Ugo Montanari,et al.  Specifying highly concurrent data structure manipulation , 1983 .

[9]  Yves Deville,et al.  A Distributed Arc-Consistency Algorithm , 1995, Sci. Comput. Program..

[10]  Makoto Yokoo,et al.  Asynchronous Weak-commitment Search for Solving Distributed Constraint Satisfaction Problems , 1995, CP.

[11]  Rina Dechter,et al.  Network-based heuristics for constraint satisfaction problems , 1988 .

[12]  Eugene C. Freuder Synthesizing constraint expressions , 1978, CACM.

[13]  Alan K. Mackworth Consistency in Networks of Relations , 1977, Artif. Intell..

[14]  M. J. Plasmeijer,et al.  Term graph rewriting: theory and practice , 1993 .

[15]  Eugene C. Freuder,et al.  The Complexity of Some Polynomial Network Consistency Algorithms for Constraint Satisfaction Problems , 1985, Artif. Intell..

[16]  Hartmut Ehrig,et al.  Introduction to the Algebraic Theory of Graph Grammars (A Survey) , 1978, Graph-Grammars and Their Application to Computer Science and Biology.

[17]  Hartmut Ehrig,et al.  Tutorial introduction to the algebraic approach of graph grammars , 1986, Graph-Grammars and Their Application to Computer Science.

[18]  Peter van Beek,et al.  Constraint Tightness versus Global Consistency , 1994, KR.

[19]  Hartmut Ehrig,et al.  Graph Transformations in Computer Science , 1994, Lecture Notes in Computer Science.