SPLASH 2025
Sun 12 - Sat 18 October 2025 Singapore
co-located with ICFP/SPLASH 2025

This program is tentative and subject to change.

Fri 17 Oct 2025 17:15 - 17:30 at Orchid East - Verification 1

We present Pyrosome, a generic framework for modular language metatheory that embodies a novel approach to extensible semantics and compilation, implemented in Coq. Common techniques for semantic reasoning are often tied to the specific structures of the languages and compilers that they support. Contextual equivalence is difficult to work with directly, and both logical relations and transition system-based approaches typically fix a specific notion of effect globally. While modular transition systems have been effective in imperative settings, they are suboptimal for functional code. These limitations restrict the extension and composition of semantics in these systems. In Pyrosome, verified compilers are fully extensible, meaning that to extend a language simply requires defining and verifying the compilation of the new feature, reusing the old correctness theorem for all other cases. The novel enabling idea is an inductive formulation of equivalence preservation that supports the addition of new rules to the source language, target language, and compiler.

Pyrosome defines a formal, deeply embedded notion of programming languages with semantics given by dependently sorted equational theories, so all compiler-correctness proofs boil down to type-checking and equational reasoning. We support vertical composition of any compilers expressed in our framework in addition to feature extension. Since our design requires compilers to support open programs, our correctness guarantees support linking with any target code of the appropriate type. As a case study, we present a multipass compiler from System F with simple references, through CPS translation and closure conversion. Specifically, we demonstrate how we can build such a compiler incrementally by starting with a compiler for simply typed lambda-calculus and adding natural numbers, the unit type, recursive functions, and a global heap, then extending judgments with a type environment and adding type abstraction, all while reusing the original theorems. We also present a linear version of the simply typed CPS pass and compile a small imperative language to the simply typed target to show how Pyrosome handles substructural typing and imperative features.

This program is tentative and subject to change.

Fri 17 Oct

Displayed time zone: Perth change

16:00 - 17:30
Verification 1OOPSLA at Orchid East
16:00
15m
Talk
A Flow-Sensitive Refinement Type System for Verifying eBPF Programs
OOPSLA
Ameer Hamza Florida State University, Lucas Zavalia Florida State University Tallahassee, Arie Gurfinkel University of Waterloo, Jorge A. Navas Certora, Grigory Fedyukovich Florida State University
16:15
15m
Talk
Automatically Verifying Replication-aware Linearizability
OOPSLA
Vimala Soundarapandian IIT Madras, Kartik Nagar IIT Madras, Aseem Rastogi Microsoft Research, KC Sivaramakrishnan IIT Madras and Tarides
16:30
15m
Talk
On the Impact of Formal Verification on Software Development
OOPSLA
Eric Mugnier University of California San Diego, Zhou Yuanyuan UCSD, Ranjit Jhala University of California at San Diego, Michael Coblenz University of California, San Diego
16:45
15m
Talk
Towards Verifying Crash Consistency
OOPSLA
Keonho Lee University of California, Irvine, Conan Truong University of California, Irvine, Brian Demsky University of California at Irvine
17:00
15m
Talk
TraceLinking Implementations with their Verified Designs
OOPSLA
Finn Hackett University of British Columbia, Ivan Beschastnikh The University of British Columbia
Pre-print
17:15
15m
Talk
Pyrosome: Verified Compilation for Modular Metatheory
OOPSLA
Dustin Jamner MIT CSAIL, Gabriel Kammer MIT, Ritam Nag MIT, Adam Chlipala MIT CSAIL