Transport via Partial Galois Connections and Equivalences
Kevin Kappelmann

TL;DR
This paper introduces a new framework for transporting programs across different type representations using partial Galois connections and equivalences, applicable within simple type theory and formalized in Isabelle/HOL.
Contribution
It generalizes previous transport approaches by introducing partial Galois connections and equivalences, suitable for simple type theory and formalized in Isabelle/HOL.
Findings
Framework formalized in Isabelle/HOL
Closure properties under various type constructions proven
Prototype implementation provided
Abstract
Multiple types can represent the same concept. For example, lists and trees can both represent sets. Unfortunately, this easily leads to incomplete libraries: some set-operations may only be available on lists, others only on trees. Similarly, subtypes and quotients are commonly used to construct new type abstractions in formal verification. In such cases, one often wishes to reuse operations on the representation type for the new type abstraction, but to no avail: the types are not the same. To address these problems, we present a new framework that transports programs via equivalences. Existing transport frameworks are either designed for dependently typed, constructive proof assistants, use univalence, or are restricted to partial quotient types. Our framework (1) is designed for simple type theory, (2) generalises previous approaches working on partial quotient types, and (3) is…
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.
Code & Models
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsLogic, programming, and type systems · Model-Driven Software Engineering Techniques
