Reference. Cost-sensitive computational adequacy of higher-order recursion in synthetic domain theory
Cite
Cites 34 works (7 here)
With notes (7)
Decalf: A Directed, Effectful Cost-Aware Logical Framework grodin-2024-decalf
Quotients, inductive types, and quotient inductive types fiore-2022-quotients
A cost-aware logical framework niu-2022-a
Logical Relations as Types: Proof-Relevant Parametricity for Program Modules sterling_harper_2021
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, placing projectibility of module expressions on a type-theoretic basis.
Our main result is a (significant) proof-relevant and phase-sensitive generalization of the Reynolds abstraction theorem for a calculus of program modules, based on a new kind of logical relation called a parametricity structure. Parametricity structures generalize the proof-irrelevant relations of classical parametricity to proof-relevant families, where there may be non-trivial evidence witnessing the relatedness of two programs—simplifying the metatheory of strong sums over the collection of types, for although there can be no “relation classifying relations,” one easily accommodates a “family classifying small families.”
Using the insight that logical relations/parametricity is itself a form of phase distinction between the syntactic and the semantic, we contribute a new synthetic approach to phase separated parametricity based on the slogan logical relations as types, by iterating our modal account of the phase distinction. We axiomatize a dependent type theory of parametricity structures using two pairs of complementary modalities (syntactic, semantic) and (static, dynamic), substantiated using the topos theoretic Artin gluing construction. Then, to construct a simulation between two implementations of an abstract type, one simply programs a third implementation whose type component carries the representation invariant.
Modalities in homotopy type theory rijke-2020-modalities
Call-By-Push-Value: A Functional/Imperative Synthesis levy-2003-callbypushvalue
An extension of models of Axiomatic Domain Theory to models of Synthetic Domain Theory fiore_plotkin_1997
External (27)
- A Metalanguage for Cost-Aware Denotational Semantics (2023)
- Domain Theory in Constructive and Predicative Univalent Foundations (2023)
- Erratum: adequacy of Sheaf semantics of noninterference (2023)
- Sheaf Semantics of Termination-Insensitive Noninterference (2022)
- Recursion and Sequentiality in Categories of Sheaves (2021)
- Recurrence extraction for functional programs through call-by-push-value (2019)
- A Model of PCF in Guarded Type Theory (2015)
- Types with potential: polynomial resource bounds via automatic amortized analysis (2011)
- Computational adequacy for recursive types in models of intuitionistic set theory (2004)
- A structural approach to operational semantics (2004)
- Notions of Computation Determine Monads (2002)
- Sketches of an Elephant: A Topos Theory Compendium: Volumes 1 and 2 (2002)
- Axioms and (counter) examples in synthetic domain theory (2000)
- General synthetic domain theory – a logical approach (1999)
- Computational Adequacy in an Elementary Topos (1999)
- A uniform approach to domain theory in realizability models (1997)
- Two models of synthetic domain theory (1997)
- The category of cpos from a synthetic viewpoint (1997)
- Lifting as a KZ-Doctrine (1995)
- Program verification in synthetic domain theory (1995)
- The fixed point property in synthetic domain theory (1991)
- First steps in synthetic domain theory (1991)
- Domain Theory in Realizability Toposes (1991)
- Higher-order modules and the phase distinction (1990)
- Continuity and effectiveness in topoi (1986)
- LCF Considered as a Programming Language (1977)
- Distributive laws (1969)