Semantics for a Turing-complete Reversible Programming Language with Inductive Types

09/21/2023
by   Kostia Chardonnet, et al.
0

This paper is concerned with the expressivity and denotational semantics of a functional higher-order reversible programming language based on Theseus. In this language, pattern-matching is used to ensure the reversibility of functions. We show how one can encode any Reversible Turing Machine in said language. We then build a sound and adequate categorical semantics based on join inverse categories, with additional structures to capture pattern-matching. We then derive a full completeness result, stating that any computable, partial injective function is the image of a term in the language.

READ FULL TEXT

Please sign up or login with your details

Forgot password? Click here to reset