![]() |
ProvSQL C/C++ API
Adding support for provenance and uncertainty management to PostgreSQL databases
|
Semiring-agnostic in-memory provenance circuit. More...
#include <map>#include <type_traits>#include <boost/archive/binary_oarchive.hpp>#include <boost/serialization/unordered_map.hpp>#include <boost/serialization/map.hpp>#include <boost/serialization/set.hpp>#include <boost/serialization/vector.hpp>#include "Circuit.h"#include "semiring/Semiring.h"#include "provsql_utils.h"

Go to the source code of this file.
Classes | |
| class | GenericCircuit |
| In-memory provenance circuit with semiring-generic evaluation. More... | |
Semiring-agnostic in-memory provenance circuit.
GenericCircuit is an in-memory directed acyclic graph whose gate types use the PostgreSQL gate_type enumeration. It is built from the persistent mmap representation (via createGenericCircuit() / getGenericCircuit()) and then evaluated over an arbitrary semiring using the evaluate() template method.
Beyond the gate/wire data inherited from Circuit<gate_type>, GenericCircuit tracks:
info1, info2) used by aggregation and semimodule gates.gate_value gates).The circuit is Boost-serialisable, which is used when sending it as a blob to an external knowledge-compiler process.
Definition in file GenericCircuit.h.