Affiliation:
1. University of Birmingham, Birmingham, United Kingdom
2. ENS Lyon, Lyon, France
3. Microsoft Research, Cambridge, United Kingdom
Abstract
In this paper, we show how to integrate linear types with type dependency, by extending the linear/non-linear calculus of Benton to support type dependency. Next, we give an application of this calculus by giving a proof-theoretic account of imperative programming, which requires extending the calculus with computationally irrelevant quantification, proof irrelevance, and a monad of computations. We show the soundness of our theory by giving a realizability model in the style of Nuprl, which permits us to validate not only the beta-laws for each type, but also the eta-laws. These extensions permit us to decompose Hoare triples into a collection of simpler type-theoretic connectives, yielding a rich equational theory for dependently-typed higher-order imperative programs. Furthermore, both the type theory and its model are relatively simple, even when all of the extensions are considered.
Publisher
Association for Computing Machinery (ACM)
Subject
Computer Graphics and Computer-Aided Design,Software
Cited by
12 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献
1. Oxidizing OCaml with Modal Memory Management;Proceedings of the ACM on Programming Languages;2024-08-15
2. Efficient CHAD;Proceedings of the ACM on Programming Languages;2024-01-05
3. Combining Dependency, Grades, and Adjoint Logic;Proceedings of the 8th ACM SIGPLAN International Workshop on Type-Driven Development;2023-08-30
4. A Calculus of Inductive Linear Constructions;Proceedings of the 8th ACM SIGPLAN International Workshop on Type-Driven Development;2023-08-30
5. Safe Session-Based Concurrency with Shared Linear State;Programming Languages and Systems;2023