Examples on how to use the coq-coinduction library, a library for doing proofs by (enhanced) coinduction based on the notion of 'companion', from the paper: Coinduction All the Way Up. Damien Pous. In Proc. LICS, 2016.
- a formalisation of Hur et al's toy example on divergence
- a formalisation of Rutten's stream calculus
- a formalisation of Milner's calculus of communicating systems (CCS)
- a formalisation of automata and regular expression equivalence
- an example on how to use the companion to avoid the need for generalized parameterized coinduction
divergence.v
: Hur et al's example on divergencestreams.v
: Rutten's stream calculusccs.v
: Milner's CCS, strong and weak bisimilarityautomata.v
: Automata equivalence, regular expressionsgpaco.v
: generalized paco via the companion
- Author(s):
- Damien Pous (initial)
- Coq-community maintainer(s):
- Damien Pous (@damien-pous)
- License: GNU LGPL
- Additional dependencies: coq-coinduction, and coq-aac-tactics + coq-relation-algebra for the CCS example
- Coq namespace:
CoinductionExamples
- Related publication(s):
The easiest way to install the latest released version of CoinductionExamples is via OPAM:
opam repo add coq-released https://coq.inria.fr/opam/released
opam install coq-coinduction-examples
To instead build and install manually, do:
git clone https://github.com/damien-pous/coinduction-examples.git
cd coinduction-examples
make
make install
to see how to port code from coq-coinduction v1.6 to v1.7, check the following commit 7afec25f051cc4b45820c333bfd4b4689d86abef