ACM Transactions on Programming Languages and Systems (TOPLAS)
Proceedings of the 24th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
From system F to typed assembly language
ACM Transactions on Programming Languages and Systems (TOPLAS)
Translation validation for an optimizing compiler
PLDI '00 Proceedings of the ACM SIGPLAN 2000 conference on Programming language design and implementation
TACAS '98 Proceedings of the 4th International Conference on Tools and Algorithms for Construction and Analysis of Systems
CIL: Intermediate Language and Tools for Analysis and Transformation of C Programs
CC '02 Proceedings of the 11th International Conference on Compiler Construction
Register allocation & spilling via graph coloring
SIGPLAN '82 Proceedings of the 1982 SIGPLAN symposium on Compiler construction
Foundational Proof-Carrying Code
LICS '01 Proceedings of the 16th Annual IEEE Symposium on Logic in Computer Science
Compiler verification: a bibliography
ACM SIGSOFT Software Engineering Notes
Interactive Theorem Proving and Program Development
Interactive Theorem Proving and Program Development
Formal certification of a compiler back-end or: programming a compiler with a proof assistant
Conference record of the 33rd ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Formal verification of translation validators: a case study on instruction scheduling optimizations
Proceedings of the 35th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Formal Verification of a C-like Memory Model and Its Uses for Verifying Program Transformations
Journal of Automated Reasoning
Verified validation of lazy code motion
Proceedings of the 2009 ACM SIGPLAN conference on Programming language design and implementation
Separation logic for small-step cminor
TPHOLs'07 Proceedings of the 20th international conference on Theorem proving in higher order logics
Formal verification of a c compiler front-end
FM'06 Proceedings of the 14th international conference on Formal Methods
A simple, verified validator for software pipelining
Proceedings of the 37th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
PLOS 2009: fifth workshop on programming languages and operating systems
ACM SIGOPS Operating Systems Review
VeriML: typed computation of logical terms inside a language with effects
Proceedings of the 15th ACM SIGPLAN international conference on Functional programming
Integrating types and specifications for secure software development
MMM-ACNS'10 Proceedings of the 5th international conference on Mathematical methods, models and architectures for computer network security
Formally certified stable marriages
Proceedings of the 48th Annual Southeast Regional Conference
Verified squared: does critical software deserve verified tools?
Proceedings of the 38th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Relaxed-memory concurrency and verified compilation
Proceedings of the 38th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Formal verification of object layout for c++ multiple inheritance
Proceedings of the 38th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Local actions for a curry-style operational semantics
Proceedings of the 5th ACM workshop on Programming languages meets program verification
Effective homology of bicomplexes, formalized in Coq
Theoretical Computer Science
On the role of non-functional properties in compiler verification
ISoLA'10 Proceedings of the 4th international conference on Leveraging applications of formal methods, verification, and validation - Volume Part II
A formal verification study on the Rotterdam storm surge barrier
ICFEM'10 Proceedings of the 12th international conference on Formal engineering methods and software engineering
A type-theoretic framework for certified model transformations
SBMF'10 Proceedings of the 13th Brazilian conference on Formal methods: foundations and applications
Finding and understanding bugs in C compilers
Proceedings of the 32nd ACM SIGPLAN conference on Programming language design and implementation
How to make ad hoc proof automation less ad hoc
Proceedings of the 16th ACM SIGPLAN international conference on Functional programming
Preliminary design of the SAFE platform
PLOS '11 Proceedings of the 6th Workshop on Programming Languages and Operating Systems
A formal programming model of Orléans skeleton library
PaCT'11 Proceedings of the 11th international conference on Parallel computing technologies
Proceedings of the 2011 ACM international conference on Object oriented programming systems languages and applications
Innovations in Systems and Software Engineering
Static and user-extensible proof checking
POPL '12 Proceedings of the 39th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
TLDI '12 Proceedings of the 8th ACM SIGPLAN workshop on Types in language design and implementation
Validating register allocation and spilling
CC'10/ETAPS'10 Proceedings of the 19th joint European conference on Theory and Practice of Software, international conference on Compiler Construction
TRX: a formally verified parser interpreter
ESOP'10 Proceedings of the 19th European conference on Programming Languages and Systems
Verifying a compiler for java threads
ESOP'10 Proceedings of the 19th European conference on Programming Languages and Systems
Simple, functional, sound and complete parsing for all context-free grammars
CPP'11 Proceedings of the First international conference on Certified Programs and Proofs
First steps towards the certification of an ARM simulator using compcert
CPP'11 Proceedings of the First international conference on Certified Programs and Proofs
Refactoring and representation independence for class hierarchies
Theoretical Computer Science
VSTTE'12 Proceedings of the 4th international conference on Verified Software: theories, tools, experiments
Proceedings of the 13th ACM SIGPLAN/SIGBED International Conference on Languages, Compilers, Tools and Theory for Embedded Systems
RockSalt: better, faster, stronger SFI for the x86
Proceedings of the 33rd ACM SIGPLAN conference on Programming Language Design and Implementation
ESOP'12 Proceedings of the 21st European conference on Programming Languages and Systems
FASE'12 Proceedings of the 15th international conference on Fundamental Approaches to Software Engineering
Verification games: making verification fun
Proceedings of the 14th Workshop on Formal Techniques for Java-like Programs
Certifying and reasoning on cost annotations of functional programs
FOPARA'11 Proceedings of the Second international conference on Foundational and Practical Aspects of Resource Analysis
Operational semantics using the partiality monad
Proceedings of the 17th ACM SIGPLAN international conference on Functional programming
Experience report: a do-it-yourself high-assurance compiler
Proceedings of the 17th ACM SIGPLAN international conference on Functional programming
A first step in the design of a formally verified constraint-based testing tool: focaltest
TAP'12 Proceedings of the 6th international conference on Tests and Proofs
A Hoare-style verification calculus for control state ASMs
Proceedings of the Fifth Balkan Conference in Informatics
Alternating-Time temporal logic in the calculus of (co)inductive constructions
SBMF'12 Proceedings of the 15th Brazilian conference on Formal Methods: foundations and applications
Completing the automated verification of a small hypervisor - assembler code verification
SEFM'12 Proceedings of the 10th international conference on Software Engineering and Formal Methods
Compiling contextual objects: bringing higher-order abstract syntax to programmers
PLPV '13 Proceedings of the 7th workshop on Programming languages meets program verification
Scalable formal machine models
CPP'12 Proceedings of the Second international conference on Certified Programs and Proofs
Mechanized semantics for compiler verification
CPP'12 Proceedings of the Second international conference on Certified Programs and Proofs
A formally-verified alias analysis
CPP'12 Proceedings of the Second international conference on Certified Programs and Proofs
An executable semantics for compcert c
CPP'12 Proceedings of the Second international conference on Certified Programs and Proofs
POPL '13 Proceedings of the 40th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
A Two-Valued Logic for Properties of Strict Functional Programs Allowing Partial Functions
Journal of Automated Reasoning
Machine-verified network controllers
Proceedings of the 34th ACM SIGPLAN conference on Programming language design and implementation
CompCertTSO: A Verified Compiler for Relaxed-Memory Concurrency
Journal of the ACM (JACM)
Mtac: a monad for typed tactic programming in Coq
Proceedings of the 18th ACM SIGPLAN international conference on Functional programming
Proceedings of the 18th ACM SIGPLAN international conference on Functional programming
Proofs you can believe in: proving equivalences between Prolog semantics in Coq
Proceedings of the 15th Symposium on Principles and Practice of Declarative Programming
Coq: the world's best macro assembler?
Proceedings of the 15th Symposium on Principles and Practice of Declarative Programming
Automated reasoning, fast and slow
CADE'13 Proceedings of the 24th international conference on Automated Deduction
File systems deserve verification too!
Proceedings of the Seventh Workshop on Programming Languages and Operating Systems
Towards the formalization of SPARK 2014 semantics with explicit run-time checks using coq
Proceedings of the 2013 ACM SIGAda annual conference on High integrity language technology
Handcrafted inversions made operational on operational semantics
ITP'13 Proceedings of the 4th international conference on Interactive Theorem Proving
CakeML: a verified implementation of ML
Proceedings of the 41st ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages
Hi-index | 0.00 |
This paper reports on the development and formal verification (proof of semantic preservation) of CompCert, a compiler from Clight (a large subset of the C programming language) to PowerPC assembly code, using the Coq proof assistant both for programming the compiler and for proving its correctness. Such a verified compiler is useful in the context of critical software and its formal verification: the verification of the compiler guarantees that the safety properties proved on the source code hold for the executable compiled code as well.