A categorical foundation for structured reversible flowchart languages: Soundness and adequacy

10/10/2017
by   Robert Glück, et al.
0

Structured reversible flowchart languages is a class of imperative reversible programming languages allowing for a simple diagrammatic representation of control flow built from a limited set of control flow structures. This class includes the reversible programming language Janus (without recursion), as well as more recently developed reversible programming languages such as R-CORE and R-WHILE. In the present paper, we develop a categorical foundation for this class of languages based on inverse categories with joins. We generalize the notion of extensivity of restriction categories to one that may be accommodated by inverse categories, and use the resulting decision maps to give a reversible representation of predicates and assertions. This leads to a categorical semantics for structured reversible flowcharts, which we show to be both sound, adequate, and fully abstract with respect to the operational semantics under certain conditions.

READ FULL TEXT

Please sign up or login with your details

Forgot password? Click here to reset