<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE article PUBLIC "-//TaxonX//DTD Taxonomic Treatment Publishing DTD v0 20100105//EN" "../../nlm/tax-treatment-NS0.dtd">
<article xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:tp="http://www.plazi.org/taxpub" article-type="research-article" dtd-version="3.0" xml:lang="en">
  <front>
    <journal-meta>
      <journal-id journal-id-type="publisher-id">109</journal-id>
      <journal-id journal-id-type="index">urn:lsid:arphahub.com:pub:3dc5f44e-8666-58db-bc76-a455210e8891</journal-id>
      <journal-title-group>
        <journal-title xml:lang="en">JUCS - Journal of Universal Computer Science</journal-title>
        <abbrev-journal-title xml:lang="en">jucs</abbrev-journal-title>
      </journal-title-group>
      <issn pub-type="ppub">0948-695X</issn>
      <issn pub-type="epub">0948-6968</issn>
      <publisher>
        <publisher-name>Journal of Universal Computer Science</publisher-name>
      </publisher>
    </journal-meta>
    <article-meta>
      <article-id pub-id-type="doi">10.3217/jucs-023-02-0129</article-id>
      <article-id pub-id-type="publisher-id">22976</article-id>
      <article-categories>
        <subj-group subj-group-type="heading">
          <subject>Research Article</subject>
        </subj-group>
        <subj-group subj-group-type="scientific_subject">
          <subject>D.2.7 - Distribution</subject>
          <subject> Maintenance</subject>
          <subject> and Enhancement</subject>
          <subject>F.1.1 - Models of Computation</subject>
          <subject>F.3.1 - Specifying and Verifying and Reasoning about Programs</subject>
          <subject>F.3.2 - Semantics of Programming Languages</subject>
        </subj-group>
      </article-categories>
      <title-group>
        <article-title>Communication in Abstract State Machines</article-title>
      </title-group>
      <contrib-group content-type="authors">
        <contrib contrib-type="author" corresp="yes">
          <name name-style="western">
            <surname>Börger</surname>
            <given-names>Egon</given-names>
          </name>
          <email xlink:type="simple">boerger@di.unipi.it</email>
        </contrib>
        <contrib contrib-type="author" corresp="no">
          <name name-style="western">
            <surname>Schewe</surname>
            <given-names>Klaus-Dieter</given-names>
          </name>
          <xref ref-type="aff" rid="A1">1</xref>
        </contrib>
      </contrib-group>
      <aff id="A1">
        <label>1</label>
        <addr-line content-type="verbatim">Software Competence Center Hagenberg and Johannes Kepler University Linz, Hagenberg, Austria</addr-line>
        <institution>Software Competence Center Hagenberg and Johannes Kepler University Linz</institution>
        <addr-line content-type="city">Hagenberg</addr-line>
        <country>Austria</country>
      </aff>
      <author-notes>
        <fn fn-type="corresp">
          <p>Corresponding author: Egon Börger (<email xlink:type="simple">boerger@di.unipi.it</email>).</p>
        </fn>
        <fn fn-type="edited-by">
          <p>Academic editor: </p>
        </fn>
      </author-notes>
      <pub-date pub-type="collection">
        <year>2017</year>
      </pub-date>
      <pub-date pub-type="epub">
        <day>28</day>
        <month>02</month>
        <year>2017</year>
      </pub-date>
      <volume>23</volume>
      <issue>2</issue>
      <fpage>129</fpage>
      <lpage>145</lpage>
      <uri content-type="arpha" xlink:href="http://openbiodiv.net/C7D29D20-3C37-5237-8443-CC72A5A3416F">C7D29D20-3C37-5237-8443-CC72A5A3416F</uri>
      <uri content-type="zenodo_dep_id" xlink:href="https://zenodo.org/record/5504833">5504833</uri>
      <history>
        <date date-type="received">
          <day>09</day>
          <month>11</month>
          <year>2016</year>
        </date>
        <date date-type="accepted">
          <day>13</day>
          <month>02</month>
          <year>2017</year>
        </date>
      </history>
      <permissions>
        <copyright-statement>Egon Börger, Klaus-Dieter Schewe</copyright-statement>
        <license license-type="creative-commons-attribution" xlink:href="" xlink:type="simple">
          <license-p>This article is freely available under the J.UCS Open Content License.</license-p>
        </license>
      </permissions>
      <abstract>
        <label>Abstract</label>
        <p>Up to recently the majority of applications of the Abstract State Machines method for design and verification of computational systems used the shared variable approach. However in particular with distributed systems only various forms of communication may be available to share information. We define communicating ASMs by using instead of shared locations an explicit, abstract concept of Sending/Receiving messages which can be added to existing ASM execution engines. We aim to provide a definition which is a conservative extension of traditional ASMs, uniformly captures synchronous and asynchronous communication and is not bound to any specific message passing mechanism but can be instantiated to the major communication concepts in the literature. We illustrate the concept by an application to synchronous and asynchronous networks of communicating processes.</p>
      </abstract>
    </article-meta>
  </front>
</article>
