Effective Bridging Between Ecore and Coq: Case of a Type-Checker with Proof-Carrying Code - Archive ouverte HAL
Chapitre D'ouvrage Année : 2019

Effective Bridging Between Ecore and Coq: Case of a Type-Checker with Proof-Carrying Code

Résumé

The work presented in this paper lies in the context of implementing supporting tools for a domain-specific language named SosADL, targeted at the description and analysis of architecture for systems of systems. While the language has formal definition rooted in the Cc-pi calculus, we have adopted the Eclipse ecosystem, including EMF, Ecore and Xtext for the convenience they provide in implementation tasks. Proof-carrying code is a well-known approach to ensure such an implementation involving non-formal technologies conforms to its formal definition, by making the implementation generate proof in addition to usual output artifacts. In this paper, we therefore investigate for an infrastructure that eases the development of proof-carrying code for an Eclipse/EMF/Ecore/Xtext-based tool in relation with the Coq proof assistant. At the core of our approach, we combine an automatic transformation of a metamodel into a set of inductive types, in conjunction with a second transformation of model elements into terms. The first one, reused from our previous work, provides necessary abstract syntax definitions such that the formal definition of the language can be mechanized using Coq. The second transformation is part of the proof generator.
Fichier principal
Vignette du fichier
main.pdf (172.94 Ko) Télécharger le fichier
Origine Fichiers produits par l'(les) auteur(s)
Loading...

Dates et versions

hal-01945245 , version 1 (04-01-2019)

Identifiants

  • HAL Id : hal-01945245 , version 1

Citer

Jérémy Buisson, Seidali Rehab. Effective Bridging Between Ecore and Coq: Case of a Type-Checker with Proof-Carrying Code. Modelling and Implementation of Complex Systems, pp.259-273, 2019. ⟨hal-01945245⟩
356 Consultations
231 Téléchargements

Partager

More