• Medientyp: Sonstige Veröffentlichung; E-Artikel
  • Titel: Concurrent Data Structures Linked in Time (Artifact)
  • Beteiligte: Delbianco, Germán Andrés [Verfasser:in]; Sergey, Ilya [Verfasser:in]; Nanevski, Aleksandar [Verfasser:in]; Banerjee, Anindya [Verfasser:in]
  • Erschienen: Schloss Dagstuhl – Leibniz-Zentrum für Informatik, 2017
  • Sprache: Englisch
  • DOI: https://doi.org/10.4230/DARTS.3.2.4
  • Schlagwörter: concurrent snapshots ; separation logic ; FCSL ; linearization Points
  • Entstehung:
  • Hochschulschrift:
  • Anmerkungen: Diese Datenquelle enthält auch Bestandsnachweise, die nicht zu einem Volltext führen.
  • Beschreibung: This artifact provides the full mechanization in FCSL of the developments in the companion paper, "Concurrent Data Structures Linked in Time". In the latter, we propose a new method, based on a separation-style logic, for reasoning about concurrent objects with such linearization points. We embrace the dynamic nature of linearization points, and encode it as part of the data structure's auxiliary state, so that it can be dynamically modified in place by auxiliary code, as needed when some appropriate run-time event occurs. We illustrate the method by verifying (mechanically in FCSL) an intricate optimal snapshot algorithm due to Jayanti, as well as some clients. FCSL is the first completely formalized framework for mechanized verification of full functional correctness of fine-grained concurrent programs. It is implemented as an embedded domain-specific language (DSL) in the dependently-typed language of the Coq proof assistant, and is powerful enough to reason about programming features such as higher-order functions and local thread spawning. By incorporating a uniform concurrency model, based on state-transition systems and partial commutative monoids, FCSL makes it possible to build proofs about concurrent libraries in a thread-local, compositional way, thus facilitating scalability and reuse: libraries are verified just once, and their specifications are used ubiquitously in client-side reasoning.
  • Zugangsstatus: Freier Zugang
  • Rechte-/Nutzungshinweise: Namensnennung (CC BY)