Fri 17 Jun 2022 16:30 - 16:50 at Kon-Tiki - Verification II Chair(s): Thomas Wahl
Sat 18 Jun 2022 04:30 - 04:50 at Kon-Tiki - Verification II

Inductive relations are the predominant way of writing specifications in mechanized proof developments. Compared to purely functional specifications, they enjoy increased expressive power and facilitate more compositional reasoning. However, inductive relations also come with a significant drawback: they can’t be used for computation.

In this paper, we present a unifying framework for extracting three different kinds of computational content from inductively defined relations: semi-decision procedures, enumerators, and random generators. We show how three different instantiations of the same algorithm can be used to generate all three classes of computational definitions inside the logic of the Coq proof assistant. For each derived computation, we also derive mechanized proofs that it is sound and complete with respect to the original inductive relation, using Ltac2, Coq’s new metaprogramming facility.

We implement our framework on top of the QuickChick testing framework for Coq, and demonstrate that it covers most cases of interest by extracting computations for the inductive relations found in the Software Foundations series. Finally, we evaluate the practicality and the efficiency of our approach with small case studies in randomized property-based testing and proof by computational reflection.

Fri 17 Jun

Displayed time zone: Pacific Time (US & Canada) change

15:30 - 16:50
Verification IIPLDI at Kon-Tiki +12h
Chair(s): Thomas Wahl GrammaTech, Inc.
15:30
20m
Talk
Relational Compilation for Performance-Critical Applications
PLDI
Clément Pit-Claudel EPFL, AWS, Jade Philipoom MIT CSAIL, Dustin Jamner MIT CSAIL, Andres Erbsen MIT CSAIL, Adam Chlipala MIT CSAIL
Link to publication DOI Pre-print
15:50
20m
Talk
Formally Verified Lifting of C-compiled x86-64 Binaries
PLDI
Freek Verbeek Open University of The Netherlands & Virginia Tech, Joshua A. Bockenek Virginia Tech, Zhoulai Fu University of California, Davis, Binoy Ravindran Virginia Tech
DOI
16:10
20m
Talk
Leapfrog: Certified Equivalence for Protocol Parsers
PLDI
Ryan Doenges Cornell University, Tobias Kappé ILLC, University of Amsterdam, John Sarracino Cornell University, Nate Foster Cornell University, Greg Morrisett Cornell Tech
DOI Pre-print
16:30
20m
Talk
Computing Correctly with Inductive Relations
PLDI
Zoe Paraskevopoulou Northeastern University, Aaron Eline University of Maryland, Leonidas Lampropoulos University of Maryland
DOI

Sat 18 Jun

Displayed time zone: Pacific Time (US & Canada) change

03:30 - 04:50
Verification IIPLDI at Kon-Tiki
03:30
20m
Talk
Relational Compilation for Performance-Critical Applications
PLDI
Clément Pit-Claudel EPFL, AWS, Jade Philipoom MIT CSAIL, Dustin Jamner MIT CSAIL, Andres Erbsen MIT CSAIL, Adam Chlipala MIT CSAIL
Link to publication DOI Pre-print
03:50
20m
Talk
Formally Verified Lifting of C-compiled x86-64 Binaries
PLDI
Freek Verbeek Open University of The Netherlands & Virginia Tech, Joshua A. Bockenek Virginia Tech, Zhoulai Fu University of California, Davis, Binoy Ravindran Virginia Tech
DOI
04:10
20m
Talk
Leapfrog: Certified Equivalence for Protocol Parsers
PLDI
Ryan Doenges Cornell University, Tobias Kappé ILLC, University of Amsterdam, John Sarracino Cornell University, Nate Foster Cornell University, Greg Morrisett Cornell Tech
DOI Pre-print
04:30
20m
Talk
Computing Correctly with Inductive Relations
PLDI
Zoe Paraskevopoulou Northeastern University, Aaron Eline University of Maryland, Leonidas Lampropoulos University of Maryland
DOI