Automatic refinement of split binary semaphore

  • Authors:
  • Damián Barsotti;Javier O. Blanco

  • Affiliations:
  • Fa.M.A.F., Universidad Nacional de Córdoba, Córdoba, Argentina;Fa.M.A.F., Universidad Nacional de Córdoba, Córdoba, Argentina

  • Venue:
  • ICTAC'07 Proceedings of the 4th international conference on Theoretical aspects of computing
  • Year:
  • 2007

Quantified Score

Hi-index 0.00

Visualization

Abstract

Binary semaphores can be used to implement conditional critical regions by using the split binary semaphore (SBS) technique. Given a specification of a conditional critical regions problem, the SBS technique provides not only the resulting programs but also some invariants which ensure the correctness of the solution. The programs obtained in this way are generally not efficient. However, they can be optimized by strengthening these invariants and using them to eliminate unnecessary tests. We present a mechanical method to perform these optimizations. The idea is to use the backward propagation technique over a guarded transition system that models the behavior of the programs generated by the SBS. This process needs proving heavy implications and simplifying growing invariants. Our method automatically entrusts these tasks to the Isabelle theorem prover and the CVC Lite validity checker. We have tested our method on a number of classical examples from concurrent programming.