Skip to content

Latest commit

 

History

History
53 lines (41 loc) · 2.53 KB

README.org

File metadata and controls

53 lines (41 loc) · 2.53 KB

Monadic equational reasoning in Coq

This repository contains a formalization of monads including several models, examples of monadic equational reasoning, and an application to program semantics.

Formalized papers:

  • [Gibbons and Hinze, Just do It: Simple Monadic Equational Reasoning, ICFP 2011] (except Sect. 10.2)
  • [Gibbons, Unifying Theories of Programming with Monads, UTP 2012] (up to Sect. 7.2)
  • [Mu, Functional Pearls: Reasoning and Derivation of Monadic Programs, A case study of non-determinism and state, 2017] (up to Sect. 5)
  • [Jones and Duponcheel, Composing Monads, Yale RR 1993] (Sections 2 and 3)

Other reference:

  • [Cheung, Distributive Interaction of Algebraic Effects, PhD Thesis, U. Oxford, 2017]

Files

Requirements

All versions (except infotheo) available from opam.

Compiles also with mathcomp 1.9.0, analysis 0.2.2, finmap 1.2.1 (using the mathcomp-1.9.0 branch of infotheo).

Installation

  1. make
    • rm Makefile.coq beforehand in case of Coq upgrade