![]() |
ProvSQL C/C++ API
Adding support for provenance and uncertainty management to PostgreSQL databases
|
Implementation of the peephole simplifier. More...
#include "HybridEvaluator.h"#include <cmath>#include <limits>#include <memory>#include <optional>#include <stack>#include <string>#include <unordered_map>#include <unordered_set>#include <utility>#include <vector>#include "Aggregation.h"#include "AnalyticEvaluator.h"#include "distributions/Distribution.h"#include "Expectation.h"#include "MonteCarloSampler.h"#include "PivotIntegration.h"#include "RandomVariable.h"#include "provsql_utils.h"#include <algorithm>
Go to the source code of this file.
Namespaces | |
| namespace | provsql |
Functions | |
| unsigned | provsql::runConstantFold (GenericCircuit &gc) |
Constant-fold pass over every gate_arith in gc. | |
| unsigned | provsql::foldDegenerateMixtures (GenericCircuit &gc) |
Collapse degenerate Bernoulli gate_mixture gates whose selector is certainly true (pi = 1) or certainly false (pi = 0) to the corresponding arm. | |
| unsigned | provsql::runHybridSimplifier (GenericCircuit &gc) |
Run the peephole simplifier over gc. | |
| unsigned | provsql::runHybridDecomposer (GenericCircuit &gc, unsigned samples) |
Marginalise unresolved continuous-island gate_cmp gates into Bernoulli gate_input leaves. | |
Implementation of the peephole simplifier.
See HybridEvaluator.h for the full docstring.
Definition in file HybridEvaluator.cpp.