![]() |
ProvSQL C/C++ API
Adding support for provenance and uncertainty management to PostgreSQL databases
|
Provenance circuit variant that renders to GraphViz DOT format. More...
#include <unordered_map>#include <unordered_set>#include <set>#include <vector>#include "Circuit.hpp"

Go to the source code of this file.
Classes | |
| class | DotCircuit |
| Circuit specialisation for GraphViz DOT rendering. More... | |
Enumerations | |
| enum class | DotGate { UNDETERMINED , OTIMES , OPLUS , OMINUS , OMINUSR , OMINUSL , PROJECT , EQ , IN , DELTA } |
| Gate types for a DOT visualisation circuit. More... | |
Provenance circuit variant that renders to GraphViz DOT format.
DotCircuit is a lightweight circuit specialisation used exclusively for visualisation. It stores a textual description (desc) alongside each gate so that the rendered DOT graph can label nodes with meaningful provenance formula symbols (⊗, ⊕, ⊖, δ, etc.).
The render() method traverses the circuit and produces a complete GraphViz digraph string that can be piped to dot or displayed with graph-easy.
Definition in file DotCircuit.h.
|
strong |
Gate types for a DOT visualisation circuit.
Each value corresponds to a semiring operator or special gate kind, and is rendered as the appropriate mathematical symbol in the output.
UNDETERMINED Placeholder, should not appear in a finished circuit.OTIMES Semiring times (⊗).OPLUS Semiring plus (⊕).OMINUS Semiring monus (⊖), full.OMINUSR Monus, right child only.OMINUSL Monus, left child only.PROJECT Projection gate.EQ Equijoin gate.IN Input (variable) gate.DELTA δ-semiring operator. Definition at line 41 of file DotCircuit.h.