Skip to Main content Skip to Navigation

Validation formelle des langages à parallélisme de données

Abstract : The development of massively parallel computing in the last two decades has initially been oriented towards the design of parallel architectures, rather than the definition of languages adapted to massive parallelism. Two main programming models have then emerged: control parallelism and data parallelism. Although the first one has reached a large audience, massive applications are still difficult to design, due to the huge number of processes involved. On the other hand, the data parallelism model seems to be a good compromise between the user's needs and the constraints of parallel architectures. In this thesis, we address the problem of formal validation for data parallel languages. The idea is to exploit the relative simplicity of this programming model to develop some methods, resembling those already in use for classical scalar languages. The first part of this work deals with a simple data parallel imperative language. We have shown that it was possible to define for this language a complete proof system, inspired from Hoare logic. This theoretical study has also be the key to define a practical methodology of proof by annotations, similar to the methodology used for scalar languages. We then worked on the Alpha language, that is a language of recurrence equations. It appeared that it was necessary to define a formal validation framework for this language, since the existing rewriting system allows only proofs of equivalence between programs. We have defined an execution model by means of an operational semantics, and a proof methodology. This methodology is based on invariants, that are refined from a translation of the program into a logical language to the final desired property.
Document type :
Complete list of metadatas

Cited literature [37 references]  Display  Hide  Download
Contributor : David Cachera <>
Submitted on : Wednesday, October 21, 2009 - 11:37:21 AM
Last modification on : Wednesday, November 20, 2019 - 2:57:07 AM
Long-term archiving on: : Tuesday, June 15, 2010 - 10:01:04 PM


  • HAL Id : tel-00425390, version 1



David Cachera. Validation formelle des langages à parallélisme de données. Génie logiciel [cs.SE]. École normale supérieure de Lyon - ENS Lyon, 1998. Français. ⟨tel-00425390⟩



Record views


Files downloads