18
views
0
recommends
+1 Recommend
0 collections
    0
    shares
      • Record: found
      • Abstract: found
      • Article: found
      Is Open Access

      Verifying Concurrent Stacks by Divergence-Sensitive Bisimulation

      Preprint
      , , ,

      Read this article at

      Bookmark
          There is no author summary for this article yet. Authors can add summaries to their articles on ScienceOpen to make them more accessible to a non-specialist audience.

          Abstract

          The verification of linearizability -- a key correctness criterion for concurrent objects -- is based on trace refinement whose checking is PSPACE-complete. This paper suggests to use \emph{branching} bisimulation instead. Our approach is based on comparing an abstract specification in which object methods are executed atomically to a real object program. Exploiting divergence sensitivity, this also applies to progress properties such as lock-freedom. These results enable the use of \emph{polynomial-time} divergence-sensitive branching bisimulation checking techniques for verifying linearizability and progress. We conducted the experiment on concurrent lock-free stacks to validate the efficiency and effectiveness of our methods.

          Related collections

          Most cited references17

          • Record: found
          • Abstract: not found
          • Article: not found

          Linearizability: a correctness condition for concurrent objects

            Bookmark
            • Record: found
            • Abstract: not found
            • Article: not found

            Proving Liveness Properties of Concurrent Programs

              Bookmark
              • Record: found
              • Abstract: not found
              • Article: not found

              Characterizing finite Kripke structures in propositional temporal logic

                Bookmark

                Author and article information

                Journal
                2017-01-21
                Article
                1701.06104
                56546342-4dcc-494f-b566-7c41cf46df85

                http://arxiv.org/licenses/nonexclusive-distrib/1.0/

                History
                Custom metadata
                cs.PL

                Programming languages
                Programming languages

                Comments

                Comment on this article