ON SYNCHRONIZATION LANGUAGES

  • Authors:
  • L. Guo;K. Salomaa;S. Yu

  • Affiliations:
  • Department of Computer Science, University of Western Ontario, London, Ontario, Canada N6A 5B7;Department of Mathematics, University of Turku, Turku, Finland;Department of Computer Science, University of Western Ontario, London, Ontario, Canada N6A 5B7

  • Venue:
  • Fundamenta Informaticae
  • Year:
  • 1996

Quantified Score

Hi-index 0.00

Visualization

Abstract

New constructs for synchronization termed synchronization expressions (SEs) have been developed as high-level language constructs for parallel programming languages [8, 9]. Statements that are constrained by certain synchronization requirements are tagged, and synchronization requests are specified as expressions of statement tags. In this paper, we introduce a new family of languages named synchronization languages which we use to give a precise semantic description for SEs. Under this description, relations such as equivalence and inclusion between SEs can be easily understood and tested. In practice, it also provides us with a systematic way for the implementation as well as the simplification of SEs in parallel programming languages. We show that each synchronization language is closed under the following rewriting rules: (1) asbs → bsas, (2) atbt → btat, (3) asbt → btas, (4) atasbtbs → btbsatas and also h(atasbtbs) → h(btbsatas) for any morphism h that satisfies certain conditions which will be specified in the paper. We conjecture that closure under the above rewriting rules is a sufficient condition for a regular st-language to be a synchronization language. Several other properties of synchronization languages are also studied.