Sat 29 Aug 2026 11:30 - 12:00 at IP137 Kelley - Morning Session 2

Verified compilers aim to guarantee that compilation preserves the observable behavior of source programs. While small-step semantics are widely used in such compilers, they are not always the most convenient framework for structural transformations such as loop optimizations. This paper proposes an approach that leverages both small-step and big-step semantics: small-step semantics are used for local transformations, while big-step semantics are employed for structural transformations.

An abstract behavioral semantics is introduced as a common interface between the two styles. Coinductive big-step semantics is extended to correctly handle divergence with both finite and infinite traces, bringing it on par with the expressiveness of small-step semantics. This enables the insertion of big-step transformations into the middle of an existing small-step pipeline, thereby fully preserving all top-level semantic preservation theorems. This approach is practically demonstrated in CompCert by implementing and verifying a few new loop optimizations in big-step Cminor, including loop unswitching and, notably, full loop unrolling.

Sat 29 Aug

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

11:00 - 12:30
Morning Session 2LOPSTR+PPDP at IP137 Kelley
11:00
30m
Talk
A Typed and Unified Reflection for Shift and Shift0
LOPSTR+PPDP
Yui Tamura Ochanomizu University, Kenichi Asai Ochanomizu University
11:30
30m
Talk
Combining Small-Step and Big-Step Semantics to Verify Loop OptimizationsRemote
LOPSTR+PPDP
David Knothe FZI Research Center for Information Technology, Oliver Bringmann FZI Research Center for Information Technology
12:00
30m
Talk
Certified hardware for regexp matching: A rocq library and its workflowRemote
LOPSTR+PPDP
Julin Shaji Indian Institute of Technology Palakkad, Piyush Kurur Indian Institute of Technology Palakkad, Sandeep Chandran Indian Institute of Technology Palakkad