A linear concurrent constraint approach for the automatic verification of access permissions - Inria - Institut national de recherche en sciences et technologies du numérique Access content directly
Journal Articles Proceedings of the 14th symposium on Principles and practice of declarative programming Year : 2012

A linear concurrent constraint approach for the automatic verification of access permissions

Abstract

A recent trend in object oriented programming languages is the use Access Permissions (AP) as abstraction to control concurrent exe- cutions. AP define a protocol specifying how different references can access the mutable state of objects. Although AP simplify the task of writing concurrent code, an unsystematic use of permissions in the program can lead to subtle problems. This paper presents a Linear Concurrent Constraint (lcc) approach to verify AP an- notated programs. We model AP as constraints (i.e., formulas in logic) in an underlying constraint system, and we use entailment of constraints to faithfully model the flow of AP in the program. We verify relevant properties about programs by taking advantage of the declarative interpretation of lcc agents as formulas in lin- ear logic. Properties include deadlock detection, program correct- ness (whether programs adhere to their AP specifications or not), and the ability of methods to run concurrently. We show that those properties are decidable and we present a complexity analysis of finding such proofs. We implemented our verification and analysis approach as the Alcove tool, which is available on-line.
Fichier principal
Vignette du fichier
aeminium-ppdp-pp.pdf (322.17 Ko) Télécharger le fichier
Origin : Files produced by the author(s)
Loading...

Dates and versions

hal-00748141 , version 1 (04-11-2012)

Identifiers

Cite

Carlos Olarte, Camilo Rueda, Elaine Pimentel, Nestor Cataño. A linear concurrent constraint approach for the automatic verification of access permissions. Proceedings of the 14th symposium on Principles and practice of declarative programming, 2012, pp.207-216. ⟨10.1145/2370776.2370802⟩. ⟨hal-00748141⟩
64 View
148 Download

Altmetric

Share

Gmail Facebook Twitter LinkedIn More