Sulfur: Substitution Generation using a Logical Framework
This program is tentative and subject to change.
When formalizing the meta-theory of programming languages or type systems in proof assistants such as Rocq, a key design decision is the choice of variable representation (see e.g. the PoplMark challenge). De Bruijn indices are a popular option because they make alpha-equivalence coincide with syntactic equality. However, de Bruijn indices also introduce significant overhead in the form of lift and renaming operations, which require many technical lemmas and can make proofs tedious.
To address this, many libraries attempt to automate repetitive aspects of dealing with de Bruijn indices and substitution, both in programming languages and in proof assistants. In particular, while Autosubst has been successfully used in many formalizations, its simplification tactic \emph{asimpl} suffers from significant performance issues when used in large developments. In this talk, we present Sulfur (\underline{su}bstitution \underline{l}ogical \underline{f}ramework \underline{u}sing \underline{r}eflection), a Rocq plugin that attempts to solve the performance issues of Autosubst’s \emph{asimpl} tactic by implementing it as a \emph{reflective tactic}. For now, Sulfur supports single-sorted, extrinsic syntax: extensions to more complex signatures are discussed in the future work section.
| Extended Abstract (rocqpl26-final12.pdf) | 414KiB |
This program is tentative and subject to change.
Sat 17 JanDisplayed time zone: Brussels, Copenhagen, Madrid, Paris change
11:00 - 12:30 | Rocq Developer Session and Mechanized Metatheory in RocqRocqPL at Salle 14 Chair(s): François Pottier Inria | ||
11:00 45mPanel | Session with the Rocq Development Team RocqPL | ||
11:45 15mTalk | Rocq CARVe-ing: A Library for Substructural Meta-Theory RocqPL Daniel Zackon McGill University, Ryan Kavanagh Université du Québec à Montréal, Alberto Momigliano Università degli Studi di Milano, Brigitte Pientka McGill University File Attached | ||
12:00 15mTalk | Scalable Type Inference for Intrinsically-Typed Binders RocqPL Max Kurze Barkhausen Institut, Clément Pit-Claudel EPFL, Sebastian Ertel Barkhausen Institute, Dresden | ||
12:15 15mTalk | Sulfur: Substitution Generation using a Logical Framework RocqPL Mathis Bouverot-Dupuis INRIA & École Normale Supérieure, Théo Winterhalter INRIA, Kenji Maillard Inria, Kathrin Stark Heriot-Watt University File Attached | ||