ProvSQL C/C++ API
Adding support for provenance and uncertainty management to PostgreSQL databases
Loading...
Searching...
No Matches
having_semantics.cpp File Reference

Helper definitions for HAVING-clause provenance evaluation. More...

#include "postgres.h"
#include "utils/lsyscache.h"
#include <string>
#include <unordered_set>
#include <vector>
#include "having_semantics.hpp"
Include dependency graph for having_semantics.cpp:

Go to the source code of this file.

Namespaces

namespace  provsql_having_detail

Functions

ComparisonOperator provsql_having_detail::map_cmp_op (GenericCircuit &c, gate_t cmp_gate, bool &ok)
ComparisonOperator provsql_having_detail::flip_op (ComparisonOperator op)
bool provsql_having_detail::semimod_extract_M_and_K (GenericCircuit &c, gate_t semimod_gate, int &m_out, gate_t &k_gate_out)
bool provsql_having_detail::extract_constant_C (GenericCircuit &c, gate_t x, int &C_out)
bool provsql_having_detail::extract_constant_double (GenericCircuit &c, gate_t x, double &C_out)
std::vector< gate_tprovsql_having_detail::collect_sp_cmp_gates (GenericCircuit &c, gate_t start)

Detailed Description

Helper definitions for HAVING-clause provenance evaluation.

Defines the small non-template helpers declared in provsql_having_detail in having_semantics.hpp. The actual possible-worlds enumeration logic is the provsql_having() template in the header.

Definition in file having_semantics.cpp.