# ProvSQL
[](https://github.com/PierreSenellart/provsql/actions/workflows/build_and_test.yml)
[](https://github.com/PierreSenellart/provsql/actions/workflows/macos.yml)
[](https://github.com/PierreSenellart/provsql/actions/workflows/wsl.yml)
[](https://doi.org/10.5281/zenodo.19512786)
[](https://archive.softwareheritage.org/browse/origin/?origin_url=https://github.com/PierreSenellart/provsql)
[](https://hub.docker.com/r/inriavalda/provsql)
ProvSQL adds (m-)semiring provenance and uncertainty management to PostgreSQL,
enabling computation of probabilities, Shapley values, and various semiring
evaluations, as a PostgreSQL extension.
Website: **** – Documentation: ****
## Quick Install
**Prerequisites:** PostgreSQL ≥ 10, a C++17 compiler, PostgreSQL development
headers, `uuid-ossp`, and the Boost libraries (`libboost-dev`,
`libboost-serialization-dev`).
```sh
make
make install # as a user with write access to the PostgreSQL directories
```
Add to `postgresql.conf` and restart PostgreSQL:
```
shared_preload_libraries = 'provsql'
```
Then in each database:
```sql
CREATE EXTENSION provsql CASCADE;
```
See the [full installation guide](https://provsql.org/docs/user/getting-provsql.html)
for prerequisites, optional dependencies, testing, and Docker instructions.
## License
ProvSQL is provided as open-source software under the MIT License. See [LICENSE](LICENSE).
## Contact
Pierre Senellart
Bug reports and feature requests are
preferably sent through the *Issues* feature of GitHub.