TY - JOUR

T1 - Formal Sequentialization of Distributed Systems via Program Rewriting

AU - Bertran, Miquel

AU - Babot, Francesc

AU - Climent, August

N1 - Funding Information:
1 Work partially supported by the CICYT under project TIN2006-14738-C02-02, and by General Systems Development, www.gsystemsd.com 2 Email:[email protected] 3 Email:[email protected] 4 Email:[email protected]

PY - 2007/7/16

Y1 - 2007/7/16

N2 - Formal sequentialization is introduced as a rewriting process for the reduction of parallelism and internal communication statements of distributed imperative programs. It constructs an equivalence proof in an implicit way, via the application of equivalence laws as rewrite rules, thus generating a chain of equivalent programs. The variety of the possible sequentialization degrees which are attainable is illustrated with an example. The approach is static, thus avoiding the state explosion problem, has an impressive state-vector reduction in many cases, and could be combined, as a model simplification step, with model checking and interactive theorem proving in system verification. Prior grounding results needed in formal sequentialization are overviewed; more specifically, an algorithm for the automatic elimination of communications under the scope of sequential and parallel compositions, elimination laws which the algorithm applies, and a suitable equivalence criterion for the sequentialization process. The main contribution of this work is the extension of these results to encompass the formal elimination of both synchronous communications embedded within a subclass of selection statements, and of non-disjoint synchronous communication pairs. None of these cases has been treated in the literature before, and their solution considerably widens the application domain of formal sequentialization.

AB - Formal sequentialization is introduced as a rewriting process for the reduction of parallelism and internal communication statements of distributed imperative programs. It constructs an equivalence proof in an implicit way, via the application of equivalence laws as rewrite rules, thus generating a chain of equivalent programs. The variety of the possible sequentialization degrees which are attainable is illustrated with an example. The approach is static, thus avoiding the state explosion problem, has an impressive state-vector reduction in many cases, and could be combined, as a model simplification step, with model checking and interactive theorem proving in system verification. Prior grounding results needed in formal sequentialization are overviewed; more specifically, an algorithm for the automatic elimination of communications under the scope of sequential and parallel compositions, elimination laws which the algorithm applies, and a suitable equivalence criterion for the sequentialization process. The main contribution of this work is the extension of these results to encompass the formal elimination of both synchronous communications embedded within a subclass of selection statements, and of non-disjoint synchronous communication pairs. None of these cases has been treated in the literature before, and their solution considerably widens the application domain of formal sequentialization.

KW - Formal communication elimination

KW - distributed programs

KW - formal sequentialization

KW - formal verification

KW - laws of distributed programs

KW - parallel programs

KW - rewriting

UR - http://www.scopus.com/inward/record.url?scp=34447274753&partnerID=8YFLogxK

U2 - 10.1016/j.entcs.2007.05.038

DO - 10.1016/j.entcs.2007.05.038

M3 - Article

AN - SCOPUS:34447274753

SN - 1571-0661

VL - 188

SP - 53

EP - 75

JO - Electronic Notes in Theoretical Computer Science

JF - Electronic Notes in Theoretical Computer Science

ER -