An open API service indexing awesome lists of open source software.

https://github.com/rocq-community/generic-environments

Coq library that provides an abstract data type for environments [maintainer=@aerabi]
https://github.com/rocq-community/generic-environments

coq coq-library

Last synced: 20 days ago
JSON representation

Coq library that provides an abstract data type for environments [maintainer=@aerabi]

Awesome Lists containing this project

README

        

# Generic Environments

[![CI][action-shield]][action-link]
[![Contributing][contributing-shield]][contributing-link]
[![Code of Conduct][conduct-shield]][conduct-link]
[![Zulip][zulip-shield]][zulip-link]

[action-shield]: https://github.com/coq-community/generic-environments/workflows/CI/badge.svg?branch=master
[action-link]: https://github.com/coq-community/generic-environments/actions?query=workflow%3ACI

[contributing-shield]: https://img.shields.io/badge/contributions-welcome-%23f7931e.svg
[contributing-link]: https://github.com/coq-community/manifesto/blob/master/CONTRIBUTING.md

[conduct-shield]: https://img.shields.io/badge/%E2%9D%A4-code%20of%20conduct-%23f15a24.svg
[conduct-link]: https://github.com/coq-community/manifesto/blob/master/CODE_OF_CONDUCT.md

[zulip-shield]: https://img.shields.io/badge/chat-on%20zulip-%23c1272d.svg
[zulip-link]: https://coq.zulipchat.com/#narrow/stream/237663-coq-community-devs.20.26.20users

Generic Environments is a library which provides an abstract data type of environments, as a functor parameterized by a module defining variables, and a function which builds environments for such variables with any Type of type. Usual operations over environments are defined, along with an extensive set of basic and more advanced properties. Moreover, an implementation using lists satisfying and all the required properties is provided.

## Meta

- Author(s):
- Emmanuel Polonowski (initial)
- Coq-community maintainer(s):
- Mohammad-Ali A'RÂBI ([**@aerabi**](https://github.com/aerabi))
- License: [MIT license](LICENSE)
- Compatible Coq versions: Coq 8.4 or higher
- Additional dependencies: none
- Coq namespace: `GenericEnvironments`
- Related publication(s):
- [Generic Environments in Coq](https://hal.archives-ouvertes.fr/hal-00648397)

## Building and installation instructions

The easiest way to install the latest released version of Generic Environments
is via [OPAM](https://opam.ocaml.org/doc/Install.html):

```shell
opam repo add coq-released https://coq.inria.fr/opam/released
opam install coq-generic-environments
```

To instead build and install manually, do:

``` shell
git clone https://github.com/coq-community/generic-environments.git
cd generic-environments
make # or make -j
make install
```