Symmetries in reversible programming: from symmetric rig groupoids to reversible programming languages
@article{Choudhury2021SymmetriesIR, title={Symmetries in reversible programming: from symmetric rig groupoids to reversible programming languages}, author={Vikraman Choudhury and Jacek Karwowski and Amr Sabry}, journal={Proceedings of the ACM on Programming Languages}, year={2021}, volume={6}, pages={1 - 32} }
The Pi family of reversible programming languages for boolean circuits is presented as a syntax of combinators witnessing type isomorphisms of algebraic data types. In this paper, we give a denotational semantics for this language, using weak groupoids à la Homotopy Type Theory, and show how to derive an equational theory for it, presented by 2-combinators witnessing equivalences of type isomorphisms. We establish a correspondence between the syntactic groupoid of the language and a formally…
2 Citations
Free Commutative Monoids in Homotopy Type Theory
- MathematicsArXiv
- 2021
We develop a constructive theory of finite multisets in Homotopy Type Theory, defining them as free commutative monoids. After recalling basic structural properties of the free commutative-monoid…
Qunity: A Unified Language for Quantum and Classical Computing
- Computer ScienceProceedings of the ACM on Programming Languages
- 2023
Qunity is introduced, a new quantum programming language designed to treat quantum computing as a natural generalization of classical computing, and its syntax, type system, and denotational semantics are presented, showing how it can cleanly express several quantum algorithms.
The Quantum Effect: A Recipe for QuantumPi
- Physics
- 2023
Free categorical constructions characterise quantum computing as the combination of two copies of a reversible classical model, glued by the complementarity equations of classical structures. This…
References
SHOWING 1-10 OF 103 REFERENCES
Computing with Semirings and Weak Rig Groupoids
- Computer ScienceESOP
- 2016
This work proposes a variant of the Curry---Howard correspondence which is inspired by conservation of information and recent homotopy theoretic approaches to type theory, and naturally relates semirings to reversible programming languages.
Remarks on isomorphisms in typed lambda calculi with empty and sum types
- MathematicsProceedings 17th Annual IEEE Symposium on Logic in Computer Science
- 2002
This paper closes an open problem by establishing that the theory of type isomorphisms in the presence of product, arrow, and sum types (with or without the unit type) is not finitely axiomatisable.
Theseus : A High Level Language for Reversible Computing
- Computer Science
- 2014
A high level language for reversible programming, called Theseus, that meshes naturally with conventional programming language abstractions and has the look and feel of a conventional functional language while maintaining a close correspondence with the low-level family of languages Π based on type isomorphisms.
Free Commutative Monoids in Homotopy Type Theory
- MathematicsArXiv
- 2021
We develop a constructive theory of finite multisets in Homotopy Type Theory, defining them as free commutative monoids. After recalling basic structural properties of the free commutative-monoid…
Combinatorial species and labelled structures
- Computer Science
- 2014
This dissertation lays the theoretical groundwork for a precise—and, hopefully, useful—bridge bewteen the two theories of combinatorial species and algebraic data types.
Internalizing representation independence with univalence
- Computer Science, MathematicsProc. ACM Program. Lang.
- 2021
This paper develops techniques for establishing internal relational representation independence results in dependent type theory, by using higher inductive types to simultaneously quotient two related implementation types by a heterogeneous correspondence between them.
Coherence via Well-Foundedness: Taming Set-Quotients in Homotopy Type Theory
- MathematicsLICS
- 2020
A principle reminiscent of induction for cycles is derived for cycles for the case that the graph is given as the symmetric closure of a locally confluent and (co-)well-founded relation and it is shown that, assuming the property in question is sufficiently nice, it is enough to prove it for the empty cycle and for cycles given by local confluence.
A computational interpretation of compact closed categories: reversible programming with negative and fractional types
- Computer ScienceProc. ACM Program. Lang.
- 2021
This work extends a first-order reversible language of type isomorphisms with negative and fractional types, specifies an operational semantics for each extension, and proves that each extension forms a compact closed category.