![]() |
ProvSQL SQL API
Adding support for provenance and uncertainty management to PostgreSQL databases
|
| Circuit gate manipulation | Low-level functions for creating and querying provenance circuit gates |
| Provenance table management | Functions for enabling, disabling, and configuring provenance tracking on user tables |
| Internal constants | UUID namespace and identity element functions used for deterministic gate generation |
| Semiring operations | Functions that build provenance circuit gates for semiring operations |
| Semiring evaluation | Functions for evaluating provenance circuits over semirings, both user-defined (via function references) and compiled (built-in) |
| Circuit introspection | Functions for examining the structure of provenance circuits, used by visualization and where-provenance features |
| Type for the result of aggregate queries | Custom type AGG_TOKEN for a provenance semimodule value, to be used in attributes that are computed as a result of aggregation |
| Aggregate provenance | Functions for building and evaluating aggregate (GROUP BY) provenance, including the δ-semiring operator and semimodule multiplication |
| Probability and Shapley values | Functions for computing probabilities, expected values, and game-theoretic contribution measures (Shapley/Banzhaf values) from provenance circuits |
| Provenance output | Functions for visualizing and exporting provenance circuits in various formats |
| Circuit initialization | Functions and statements executed at extension load time to reset internal caches and create the constant zero/one gates |
| Compiled semirings | Definitions of compiled semirings |
| choose aggregate | Choose one value among many, used in particular to code a mutually exclusive choice as an aggregate |
| Update provenance (PostgreSQL 14+) | Extended provenance tracking for INSERT, UPDATE, DELETE, and UNDO operations, including temporal validity ranges |
| Temporal DB (PostgreSQL 14+) | Functions for temporal database support |