The PCM library
The PCM library provides a formalisation of Partial Commutative Monoids (PCMs), a common algebraic structure used in separation logic for verification of pointer-manipulating sequential and concurrent programs.
The library provides lemmas for mechanised and automated reasoning about PCMs in the abstract, but also supports concrete common PCM instances, such as heaps, histories, and mutexes.
The PCM library can be installed via OPAM package manager:
opam repo add coq-released https://coq.inria.fr/opam/released opam install coq-fcsl-pcm