European Commission logo
français français
CORDIS - Résultats de la recherche de l’UE
CORDIS

Verification-Aware Programming Language Concurrency Semantics

Description du projet

Vérification des langages de programmation simultanés émergents et courants

L’objectif principal du projet VAPLCS, financé par l’UE, est de développer un nouveau modèle pour décrire formellement la sémantique des programmes concurrents. Le modèle doit permettre une mise en œuvre facile, fournir des garanties facilement utilisables, être suffisamment robuste pour les algorithmes concurrents et se prêter à une vérification évolutive. Pour y parvenir, les chercheurs s’appuieront sur leurs travaux récents qui corrigent les failles du modèle de concurrence C/C++ et de la vérification de modèle sous certaines sémantiques de concurrence faible. De plus, ils développeront des méthodes de vérification pratiques pour faciliter la programmation concurrente. Les résultats du projet devraient augmenter considérablement l’applicabilité de la vérification, combler un fossé majeur entre la recherche sur la vérification et la programmation concurrente pratique et mettre en lumière le rôle de la sémantique sous-jacente.

Objectif

"With the proliferation of multi-core processors, concurrent programming regularly appears at the core of heavily relied-upon systems, where both performance and correctness are of paramount importance. The canonical concurrency model is sequential consistency-identifying concurrent programs with all possible interleavings of operations of their constitute threads. It is a simple model for programmers, but unsatisfactory as a programming language concurrency semantics. First, performance-wise, it is too costly to implement. In fact, no commodity hardware provides sequential consistency. Second, the number of interleavings is often so large, posing the infamous ""state explosion problem"" as the utmost obstacle to any verification attempt.

Our overarching goal is to develop a novel concurrency semantics for programming languages that will: allow efficient implementation; provide easily usable guarantees, sufficiently strong for concurrent algorithms; and be amenable to scalable verification. To achieve this, we will leverage our recent advances in addressing the flaws in the C/C++ and Java specifications and in model checking under certain weak concurrency semantics. Moreover, we will develop practical verification methods to facilitate the task of concurrent programming.

This proposal makes a conceptual leap beyond the state-of-the-art, by identifying the development of a weak concurrency semantics not only as an unfortunate necessity, but also as an opportunity to revolutionize software verification. It is high-risk: it tackles a longstanding open problem in programming languages. It is also high-gain: it will significantly increase the applicability of verification, bridge a major gap between verification research and practical concurrent programming, and shed light on the role of the underlying semantics. I aim for the proposed concurrency semantics to provide new foundations for the specifications of mainstream and emerging programming languages.
"

Régime de financement

ERC-STG - Starting Grant

Institution d’accueil

TEL AVIV UNIVERSITY
Contribution nette de l'UE
€ 1 449 528,00
Adresse
RAMAT AVIV
69978 Tel Aviv
Israël

Voir sur la carte

Type d’activité
Higher or Secondary Education Establishments
Liens
Coût total
€ 1 449 528,00

Bénéficiaires (1)