English

Grokking the Sequent Calculus (Functional Pearl)

Programming Languages 2025-04-29 v1

Abstract

The sequent calculus is a proof system which was designed as a more symmetric alternative to natural deduction. The {\lambda}{\mu}{\mu}-calculus is a term assignment system for the sequent calculus and a great foundation for compiler intermediate languages due to its first-class representation of evaluation contexts. Unfortunately, only experts of the sequent calculus can appreciate its beauty. To remedy this, we present the first introduction to the {\lambda}{\mu}{\mu}-calculus which is not directed at type theorists or logicians but at compiler hackers and programming-language enthusiasts. We do this by writing a compiler from a small but interesting surface language to the {\lambda}{\mu}{\mu}-calculus as a compiler intermediate language.

Keywords

Cite

@article{arxiv.2406.14719,
  title  = {Grokking the Sequent Calculus (Functional Pearl)},
  author = {David Binder and Marco Tzschentke and Marius Müller and Klaus Ostermann},
  journal= {arXiv preprint arXiv:2406.14719},
  year   = {2025}
}

Comments

Preprint of the paper accepted at ICFP '24

R2 v1 2026-06-28T17:14:04.270Z