Environnement pour le développement et la preuve de correction systématiques de programmes parallèles fonctionnels

Abstract : Parallel program design and implementation is a complex, error prone task. Verifying parallel programs is also harder than verifying sequential ones. To ease the development and the proof of correction of parallel programs, we propose to combine the functional bulk synchronous parallel language BSML; the algorithmic skeleton, that are higher order function on distributed data structures which offer an abstraction of the parallelism ; and the Coq proof assistant, who's specification language is rich enough to write purely functional programs together with their properties. We propose an embedding of BSML primitives in the Coq logic in a modular form, adapted to program extraction. So we can write BSML programs in Coq, reason on them, extract them and then execute them in parallel. To ease the specification of these programs, we formalise the relation between parallel programs using distributed data structures and specification using sequential data structure. We prove the correctness of an implementation of the BH skeleton. This skeleton is devoted to the treatment of distributed lists in the BSP model. For a set of application, starting from a sequential specification of a problem, we derive an instance of our skeletons, then extract a BSML program which is executed on parallel machines.
Complete list of metadatas

https://tel.archives-ouvertes.fr/tel-00660554
Contributor : Julien Tesson <>
Submitted on : Tuesday, January 17, 2012 - 9:21:30 AM
Last modification on : Thursday, January 17, 2019 - 3:06:04 PM
Long-term archiving on : Wednesday, April 18, 2012 - 2:32:11 AM

Identifiers

  • HAL Id : tel-00660554, version 1

Citation

Julien Tesson. Environnement pour le développement et la preuve de correction systématiques de programmes parallèles fonctionnels. Calcul parallèle, distribué et partagé [cs.DC]. Université d'Orléans, 2011. Français. ⟨tel-00660554v1⟩

Share

Metrics

Record views

71

Files downloads

75