Program Equivalence for Algebraic Effects via Modalities
Cristina Matache

TL;DR
This paper introduces a novel logic for algebraic effects in programming languages, establishing that logical equivalence, applicative bisimilarity, and contextual equivalence coincide, thus advancing understanding of program equivalence in effectful languages.
Contribution
It defines the first logic for algebraic effects where the induced equivalence matches contextual equivalence, unifying different notions of program equivalence.
Findings
Logical equivalence, applicative bisimilarity, and contextual equivalence coincide for the studied language.
The logic effectively characterizes properties of higher-order programs with algebraic effects.
This work provides a foundational tool for reasoning about program equivalence in effectful languages.
Abstract
This dissertation is concerned with the study of program equivalence and algebraic effects as they arise in the theory of programming languages. Algebraic effects represent impure behaviour in a functional programming language, such as input and output, exceptions, nondeterminism etc. all treated in a generic way. Program equivalence aims to identify which programs can be considered equal in some sense. This question has been studied for a long time but has only recently been extended to languages with algebraic effects, which are a newer development. Much work remains to be done in order to understand program equivalence in the presence of algebraic effects. In particular, there is no characterisation of contextual equivalence using a logic. We define a logic whose formulas express properties of higher-order programs with algebraic effects. We then investigate three notions of program…
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.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsLogic, programming, and type systems · Formal Methods in Verification · Logic, Reasoning, and Knowledge
