Affiliation:
1. Carnegie Mellon University, Pittsburgh, PA, USA
2. Wesleyan University, Pittsburgh, PA, USA
Abstract
Homotopy type theory is an extension of Martin-Löf type theory, based on a correspondence with homotopy theory and higher category theory. In homotopy type theory, the propositional equality type becomes proof-relevant, and corresponds to paths in a space. This allows for a new class of datatypes, called higher inductive types, which are specified by constructors not only for points but also for paths. In this paper, we consider a programming application of higher inductive types. Version control systems such as Darcs are based on the notion of patches - syntactic representations of edits to a repository. We show how patch theory can be developed in homotopy type theory. Our formulation separates formal theories of patches from their interpretation as edits to repositories. A patch theory is presented as a higher inductive type. Models of a patch theory are given by maps out of that type, which, being functors, automatically preserve the structure of patches. Several standard tools of homotopy theory come into play, demonstrating the use of these methods in a practical programming context.
Funder
Division of Computing and Communication Foundations
Publisher
Association for Computing Machinery (ACM)
Subject
Computer Graphics and Computer-Aided Design,Software
Cited by
6 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献
1. Homotopy Type Theory for Sewn Quilts;Proceedings of the 11th ACM SIGPLAN International Workshop on Functional Art, Music, Modelling, and Design;2023-08-30
2. Mutants as Patches: Towards a formal approach to Mutation Testing;Foundations of Computing and Decision Sciences;2019-11-25
3. Quotient Inductive-Inductive Types;Lecture Notes in Computer Science;2018
4. Computational higher-dimensional type theory;ACM SIGPLAN Notices;2017-05-11
5. Proof-relevant π-calculus: a constructive account of concurrency and causality;Mathematical Structures in Computer Science;2017-05-04