https://github.com/math-comp/dioid
A formalization of the algebraic structure of dioid and associated lemmas (including the Nerode lemma).
https://github.com/math-comp/dioid
coq mathcomp
Last synced: 8 months ago
JSON representation
A formalization of the algebraic structure of dioid and associated lemmas (including the Nerode lemma).
- Host: GitHub
- URL: https://github.com/math-comp/dioid
- Owner: math-comp
- License: other
- Created: 2020-08-28T14:11:04.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2025-02-27T08:28:28.000Z (12 months ago)
- Last Synced: 2025-04-05T10:32:35.446Z (10 months ago)
- Topics: coq, mathcomp
- Language: Coq
- Homepage:
- Size: 134 KB
- Stars: 3
- Watchers: 13
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
[](https://github.com/math-comp/dioid/actions?query=workflow%3ACI)
Definitions of the algebraic structure of dioid following the style of
ssralg in the Mathcomp library.
The main algebraic structures defined are:
* dioids: idempotent semirings (i.e., forall x, x + x = x)
* complete dioids: dioids whose canonical order (x <= y wen x + y = y)
yields a compelete lattice
* commutative variants (multiplicative law is commutative)
More details can be found in comments at the beginning of each .v file.
Installation
------------
This is currently not available as an OPAM (>= 2.0) package:
When MathComp Analysis for MathComp 2 will be released, this will be
installable by typing:
```
% opam repo add coq-released https://coq.inria.fr/opam/released
% opam install coq-mathcomp-dioid
```
Dependencies
------------
* Coq (>= 8.16)
* The Mathcomp library (>= 2.0.0)
* Hierarchy Builder (= 1.4.0)
* Mathcomp Analysis (hierarchy-builder branch)
Dependencies can be installed with OPAM (>= 2.0) by typing:
```
% opam repo add coq-released https://coq.inria.fr/opam/released
% opam install coq-mathcomp-algebra.2.0.0
```
Except MathComp Analysis (or only its mathcomp-classical package) that
must currently be installed from source:
```
% git clone https://github.com/math-comp/analysis
% git checkout hierarchy-builder
% make -j4 -C classical
% make -C classical install
```
Compilation
-----------
Just type
```
% make
```