Sung-Shik T. Q. Jongmans ; Farhad Arbab - Data optimizations for constraint automata

lmcs:2041 - Logical Methods in Computer Science, April 27, 2017, Volume 12, Issue 3 -
Data optimizations for constraint automata

Authors: Sung-Shik T. Q. Jongmans ; Farhad Arbab

Constraint automata (CA) constitute a coordination model based on finite automata on infinite words. Originally introduced for modeling of coordinators, an interesting new application of CAs is implementing coordinators (i.e., compiling CAs into executable code). Such an approach guarantees correctness-by-construction and can even yield code that outperforms hand-crafted code. The extent to which these two potential advantages materialize depends on the smartness of CA-compilers and the existence of proofs of their correctness. Every transition in a CA is labeled by a "data constraint" that specifies an atomic data-flow between coordinated processes as a first-order formula. At run-time, compiler-generated code must handle data constraints as efficiently as possible. In this paper, we present, and prove the correctness of two optimization techniques for CA-compilers related to handling of data constraints: a reduction to eliminate redundant variables and a translation from (declarative) data constraints to (imperative) data commands expressed in a small sequential language. Through experiments, we show that these optimization techniques can have a positive impact on performance of generated executable code.

Volume: Volume 12, Issue 3
Published on: April 27, 2017
Accepted on: September 22, 2016
Submitted on: December 30, 2015
Keywords: Computer Science - Programming Languages


Consultation statistics

This page has been seen 435 times.
This article's PDF has been downloaded 245 times.