License: Creative Commons Attribution 3.0 Unported license (CC BY 3.0)
When quoting this document, please refer to the following
DOI: 10.4230/LIPIcs.CONCUR.2018.21
URN: urn:nbn:de:0030-drops-95591
URL: http://dagstuhl.sunsite.rwth-aachen.de/volltexte/2018/9559/
Go to the corresponding LIPIcs Volume Portal


Kragl, Bernhard ; Qadeer, Shaz ; Henzinger, Thomas A.

Synchronizing the Asynchronous

pdf-format:
LIPIcs-CONCUR-2018-21.pdf (0.7 MB)


Abstract

Synchronous programs are easy to specify because the side effects of an operation are finished by the time the invocation of the operation returns to the caller. Asynchronous programs, on the other hand, are difficult to specify because there are side effects due to pending computation scheduled as a result of the invocation of an operation. They are also difficult to verify because of the large number of possible interleavings of concurrent computation threads. We present synchronization, a new proof rule that simplifies the verification of asynchronous programs by introducing the fiction, for proof purposes, that asynchronous operations complete synchronously. Synchronization summarizes an asynchronous computation as immediate atomic effect. Modular verification is enabled via pending asynchronous calls in atomic summaries, and a complementary proof rule that eliminates pending asynchronous calls when components and their specifications are composed. We evaluate synchronization in the context of a multi-layer refinement verification methodology on a collection of benchmark programs.

BibTeX - Entry

@InProceedings{kragl_et_al:LIPIcs:2018:9559,
  author =	{Bernhard Kragl and Shaz Qadeer and Thomas A. Henzinger},
  title =	{{Synchronizing the Asynchronous}},
  booktitle =	{29th International Conference on Concurrency Theory  (CONCUR 2018)},
  pages =	{21:1--21:17},
  series =	{Leibniz International Proceedings in Informatics (LIPIcs)},
  ISBN =	{978-3-95977-087-3},
  ISSN =	{1868-8969},
  year =	{2018},
  volume =	{118},
  editor =	{Sven Schewe and Lijun Zhang},
  publisher =	{Schloss Dagstuhl--Leibniz-Zentrum fuer Informatik},
  address =	{Dagstuhl, Germany},
  URL =		{http://drops.dagstuhl.de/opus/volltexte/2018/9559},
  URN =		{urn:nbn:de:0030-drops-95591},
  doi =		{10.4230/LIPIcs.CONCUR.2018.21},
  annote =	{Keywords: concurrent programs, asynchronous programs, deductive verification, refinement, synchronization, mover types, atomic action, commutativity, Lipton red}
}

Keywords: concurrent programs, asynchronous programs, deductive verification, refinement, synchronization, mover types, atomic action, commutativity, Lipton red
Collection: 29th International Conference on Concurrency Theory (CONCUR 2018)
Issue Date: 2018
Date of publication: 31.08.2018


DROPS-Home | Fulltext Search | Imprint | Privacy Published by LZI