SPLASH 2014
Mon 20 - Fri 24 October 2014 Portland, Oregon, United States
Fri 24 Oct 2014 10:52 - 11:15 at Salon E - Specification and Verification Chair(s): Gary T. Leavens

Many real programs are written in multiple different programming languages, and supporting this pattern creates challenges for formal compiler verification. We describe our Coq verification of a compiler for a high-level language, such that the compiler correctness theorem allows us to derive partial-correctness Hoare-logic theorems for programs built by linking the assembly code output by our compiler and assembly code produced by other means. Our compiler supports such tricky features as storable cross-language function pointers, without giving up the usual benefits of being able to verify different compiler phases (including, in our case, two classic optimizations) independently. The key technical innovation is a mixed operational and axiomatic semantics for the source language, with a built-in notion of abstract data types, such that compiled code interfaces with other languages only through axiomatically specified methods that mutate encapsulated private data, represented in whatever formats are most natural for those languages.

Fri 24 Oct

Displayed time zone: Tijuana, Baja California change

10:30 - 12:00
Specification and VerificationOOPSLA at Salon E
Chair(s): Gary T. Leavens University of Central Florida
10:30
22m
Talk
Bounded Exhaustive Test Input Generation from Hybrid Invariants
OOPSLA
Nico Rosner Dept. of Computer Science FCEyN, University of Buenos Aires, Valeria Bengolea Dept. of Computer Science FCEFQyN, University of Rio Cuarto, Pablo Ponzio Dept. of Computer Science FCEFQyN, University of Rio Cuarto, Shadi Abdul Khalek Google, Nazareno Aguirre Dept. of Computer Science FCEFQyN, University of Rio Cuarto, Marcelo F. Frias Dept. of Software Engineering Instituto Tecnológico de Buenos Aires, Sarfraz Khurshid University of Texas at Austin
Link to publication
10:52
22m
Talk
Compiler Verification Meets Cross-Language Linking via Data Abstraction
OOPSLA
Peng Wang MIT CSAIL, Santiago Cuellar Princeton, Adam Chlipala MIT
Link to publication
11:15
22m
Talk
GPS: Navigating Weak Memory with Ghosts, Protocols, and Separation
OOPSLA
Aaron Turon MPI-SWS, Viktor Vafeiadis MPI-SWS, Germany, Derek Dreyer MPI-SWS
Link to publication
11:37
22m
Talk
Natural Proofs for Asynchronous Programs using Almost-Synchronous Invariants
OOPSLA
Ankush Desai University of California, Berkeley, Pranav Garg University of Illinois at Urbana-Champaign, P. Madhusudan University of Illinois at Urbana-Champaign
Link to publication