Algebraic Effects and Guarded Recursion

Project: Research

Project Details

Description

Dependently typed programming languages allow for specifications of programs to be expressed in types and proofs to be machine verified. This can be used for formal verification of software, but unfortunately the logical interpretation of type theory forces restrictions on type theory as a programming language. In recent work we have shown how recursion can be added safely to type theory without breaking the logical interpretation, and a version of this has been implemented in Agda.

This project looks at how to combine guarded recursion with algebraic effects, i.e., actions such as exception raising, access to memory and probabilistic choice. This will allow the programmer to write recursive programs using these effects. We do this by studying how to combine the algebraic theories for these effects with the steps of guarded recursion, and describing the monads they give rise to. We focus on two applications: Advanced notions of store and probabilistic choice.
AcronymAlegro
StatusActive
Effective start/end date01/07/202230/06/2026

Collaborative partners

Funding

  • Independent Research Fund Denmark: DKK2,740,493.00

Keywords

  • Programming languages
  • logic
  • recursion
  • computational effects
  • modal types

Fingerprint

Explore the research topics touched on by this project. These labels are generated based on the underlying awards/grants. Together they form a unique fingerprint.