Logical Relations as Types: Proof-Relevant Parametricity for Program Modules
Jonathan Sterling, Robert Harper

TL;DR
This paper develops a phase-sensitive, proof-relevant parametricity framework for program modules using modal type theory, simplifying type abstraction and enabling new logical relations that distinguish between syntax and semantics.
Contribution
It introduces a synthetic, modal type-theoretic approach to program modules with proof-relevant parametricity, generalizing Reynolds' abstraction theorem to phase-sensitive, proof-relevant logical relations.
Findings
A proof-relevant, phase-sensitive generalization of Reynolds' abstraction theorem.
A new modal, synthetic account of phase distinction in parametricity.
Construction of simulations using representation invariants in a proof-relevant setting.
Abstract
The theory of program modules is of interest to language designers not only for its practical importance to programming, but also because it lies at the nexus of three fundamental concerns in language design: the phase distinction, computational effects, and type abstraction. We contribute a fresh "synthetic" take on program modules that treats modules as the fundamental constructs, in which the usual suspects of prior module calculi (kinds, constructors, dynamic programs) are rendered as derived notions in terms of a modal type-theoretic account of the phase distinction. We simplify the account of type abstraction (embodied in the generativity of module functors) through a lax modality that encapsulates computational effects. Our main result is a (significant) proof-relevant and phase-sensitive generalization of the Reynolds abstraction theorem for a calculus of program modules, based…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
