![]() |
ProvSQL C/C++ API
Adding support for provenance and uncertainty management to PostgreSQL databases
|
Where-provenance circuit tracking column-level data origin. More...


Go to the source code of this file.
Classes | |
| class | WhereCircuit |
| Circuit encoding where-provenance (column-level data origin). More... | |
| struct | WhereCircuit::Locator |
| Describes the origin of a single attribute value. More... | |
Enumerations | |
| enum class | WhereGate { UNDETERMINED , TIMES , PLUS , EQ , PROJECT , IN } |
| Gate types for a where-provenance circuit. More... | |
Where-provenance circuit tracking column-level data origin.
Where-provenance records not just which base tuples contributed to a query result, but also which attribute values in those base tuples gave rise to each output column.
WhereCircuit extends Circuit<WhereGate> with per-gate metadata that describes:
The evaluate() method traverses the circuit and returns, for each output position, a set of Locator values identifying the base (table, tuple, column) triples that the value was copied from.
Definition in file WhereCircuit.h.
|
strong |
Gate types for a where-provenance circuit.
UNDETERMINED Placeholder; should not appear in a complete circuit.TIMES Product (conjunction) of child where-provenance sets.PLUS Sum (disjunction) of child where-provenance sets.EQ Equijoin gate recording the joined attribute pair.PROJECT Projection gate recording which attributes are kept.IN Input gate for a single base-relation tuple. Definition at line 38 of file WhereCircuit.h.