ProvSQL C/C++ API
Adding support for provenance and uncertainty management to PostgreSQL databases
Loading...
Searching...
No Matches
provsql::AggCmpMatch Struct Reference

Result of matching a gate_cmp against the canonical HAVING aggregate-comparison shape. More...

#include "CmpEvaluatorCommon.h"

Public Attributes

gate_t agg {}
 the gate_agg operand of the cmp
std::vector< gate_tsemimods
 the per-child gate_semimod parents
std::vector< gate_tks
 the K side of each semimod (contributor root)
std::vector< long > ms
 the M side of each semimod (per-row value), scaled to a common integer grid (numeric / decimal-float domains; see matchAggCmp)
AggregationOperator agg_kind {}
 effective aggregate (SUM-of-1s remapped to COUNT)
ComparisonOperator op {}
 comparator, flipped if the agg sits on the right
long C {}
 the constant threshold, on the same integer grid as ms

Detailed Description

Result of matching a gate_cmp against the canonical HAVING aggregate-comparison shape.

Populated by matchAggCmp. The per-evaluator soundness checks (ref counts on agg / semimods, read-once marginals over ks) are left to the caller; this struct only carries the syntactic match.

Definition at line 41 of file CmpEvaluatorCommon.h.

Member Data Documentation

◆ agg

gate_t provsql::AggCmpMatch::agg {}

the gate_agg operand of the cmp

Definition at line 42 of file CmpEvaluatorCommon.h.

◆ agg_kind

AggregationOperator provsql::AggCmpMatch::agg_kind {}

effective aggregate (SUM-of-1s remapped to COUNT)

Definition at line 46 of file CmpEvaluatorCommon.h.

◆ C

long provsql::AggCmpMatch::C {}

the constant threshold, on the same integer grid as ms

Definition at line 48 of file CmpEvaluatorCommon.h.

◆ ks

std::vector<gate_t> provsql::AggCmpMatch::ks

the K side of each semimod (contributor root)

Definition at line 44 of file CmpEvaluatorCommon.h.

◆ ms

std::vector<long> provsql::AggCmpMatch::ms

the M side of each semimod (per-row value), scaled to a common integer grid (numeric / decimal-float domains; see matchAggCmp)

Definition at line 45 of file CmpEvaluatorCommon.h.

◆ op

ComparisonOperator provsql::AggCmpMatch::op {}

comparator, flipped if the agg sits on the right

Definition at line 47 of file CmpEvaluatorCommon.h.

◆ semimods

std::vector<gate_t> provsql::AggCmpMatch::semimods

the per-child gate_semimod parents

Definition at line 43 of file CmpEvaluatorCommon.h.


The documentation for this struct was generated from the following file: