1. Verified code generation for the polyhedral model
- Author
-
Xavier Leroy, Nathanaël Courant, Langages de programmation : systèmes de types, concurrence, preuve de programme (CAMBIUM), Collège de France (CdF (institution))-Inria de Paris, Institut National de Recherche en Informatique et en Automatique (Inria)-Institut National de Recherche en Informatique et en Automatique (Inria), Chaire Sciences du logiciel, Collège de France (CdF (institution)), and Collège de France - Chaire Sciences du logiciel
- Subjects
Computer science ,02 engineering and technology ,computer.software_genre ,Mathematical proof ,Program proof ,Software verification ,0202 electrical engineering, electronic engineering, information engineering ,Mathematics::Metric Geometry ,Polytope model ,Code generation ,Compiler verification ,Safety, Risk, Reliability and Quality ,For loop ,[INFO.INFO-PL]Computer Science [cs]/Programming Languages [cs.PL] ,Generator (computer programming) ,LOOP (programming language) ,Programming language ,Proof assistant ,[INFO.INFO-LO]Computer Science [cs]/Logic in Computer Science [cs.LO] ,020207 software engineering ,Polyhedral model ,Compilers ,Polyhedral code generation ,Computer Science::Programming Languages ,020201 artificial intelligence & image processing ,Compiler ,Domain-specific languages ,computer ,Software - Abstract
International audience; The polyhedral model is a high-level intermediate representation for loop nests that supports elegantly a great many loop optimizations. In a compiler, after polyhedral loop optimizations have been performed, it is necessary and difficult to regenerate sequential or parallel loop nests before continuing compilation. This paper reports on the formalization and proof of semantic preservation of such a code generator that produces sequential code from a polyhedral representation. The formalization and proofs are mechanized using the Coq proof assistant.
- Published
- 2021
- Full Text
- View/download PDF