Reference. Decalf: A Directed, Effectful Cost-Aware Logical Framework
Cite
Cited by (4)
Handling Higher-Order Effectful Operations with Judgemental Monadic Laws yang-2026-handling
Mechanizing Synthetic Tait Computability in Istari li_etal_2025
Denotational Foundations for Expected Cost Analysis amorim_2025_oopsla
Reasoning about the cost of executing programs is one of the fundamental questions in computer science. In the context of programming with probabilities, however, the notion of cost stops being deterministic, since it depends on the probabilistic samples made throughout the execution of the program. This interaction is further complicated by the non-trivial interaction between cost, recursion and evaluation strategy.
In this work we introduce cert: a Call-By-Push-Value (CBPV) metalanguage for reasoning about probabilistic cost. We equip cert with an operational cost semantics and define two denotational semantics — a cost semantics and an expected-cost semantics. We prove operational soundness and adequacy for the denotational cost semantics and a cost adequacy theorem for the expected-cost semantics.
We formally relate both denotational semantics by stating and proving a novel effect simulation property for CBPV. We also prove a canonicity property of the expected-cost semantics as the minimal semantics for expected cost and probability by building on recent advances on monadic probabilistic semantics.
Finally, we illustrate the expressivity of cert and the expected-cost semantics by presenting case-studies ranging from randomized algorithms to stochastic processes and show how our semantics capture their intended expected cost.
Cost-sensitive computational adequacy of higher-order recursion in synthetic domain theory niu-2024-cost
Cites 43 works (8 here)
With notes (8)
Quotients, inductive types, and quotient inductive types fiore-2022-quotients
A Cubical Language for Bishop Sets sterling-2022-a
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
Cubical Syntax for Reflection-Free Extensional Equality sterling-2019-cubical
A type theory for synthetic -categories riehl-2017-a
Call-By-Push-Value: A Functional/Imperative Synthesis levy-2003-callbypushvalue
External (35)
- agda-calf v2.0.0 (software artifact) (2024)
- Amortized Analysis via Coinduction (Early Ideas) (2023)
- Decalf: A Directed, Effectful Cost-Aware Logical Framework (Extended Version) (2023)
- agda-calf (software artifact) (2022)
- Lecture Notes on Iris: Higher-Order Concurrent Separation Logic (2022)
- A unifying type-theory for higher-order (amortized) cost analysis (2021)
- First Steps in Synthetic Tait Computability: The Objective Metatheory of Cubical Type Theory (PhD thesis) (2021)
- Abstract and Concrete Type Theories (2021)
- Kripke-Joyal forcing for type theory and uniform fibrations (2021)
- Syntactic categories for dependent type theory: sketching and adequacy (2020)
- Recurrence extraction for functional programs through call-by-push-value (2019)
- The fire triangle: how to mix substitution, dependent elimination, and effects (2019)
- A General Framework for the Semantics of Type Theory (2019)
- Classifying Types (PhD thesis, CMU) (2019)
- Localization in Homotopy Type Theory (2018)
- Constructing quotient inductive-inductive types (2018)
- Monadic refinements for relational cost analysis (2017)
- In Search of Effectful Dependent Types (2017)
- Dependent Types and Fibred Computational Effects (2016)
- 2-Dimensional Directed Type Theory (2011)
- Dependently typed programming in Agda (2009)
- Modular correspondence between dependent type theories and categories including pretopoi and topoi (2005)
- Notions of Computation Determine Monads (2002)
- Domains in H (2001)
- An enrichment theorem for an axiomatisation of categories of domains and continuous functions (1997)
- The category of cpos from a synthetic viewpoint (1997)
- Extensional concepts in intensional type theory (1995)
- First steps in synthetic domain theory (1991)
- Domain Theory in Realizability Toposes (1991)
- Higher-order modules and the phase distinction (1989)
- Intuitionistic type theory (1984)
- Sur les modèles de la géométrie différentielle synthétique (1979)
- Théorie des topos et cohomologie étale des schémas (1972)
- Quicksort (1962)
- Algorithm 64: Quicksort (1961)