fn find_redundancy(
input: usize,
keys: &[Vec<usize>],
input_mapper: &JoinInputMapper,
equivalences: &[Vec<MirScalarExpr>],
input_provs: &[Vec<ProvInfo>],
) -> Option<Vec<MirScalarExpr>>Expand description
Attempts to find column bindings that make input redundant.
This method attempts to determine that input may be redundant by searching
the join structure for another relation other with provenance that contains some
provenance of input, and keys for input that are equated by the join to the
corresponding columns of other under their provenance. The input provenance
must also have its exact bit set.
In these circumstances, the claim is that because the key columns are equated and
determine non-key columns, any matches between input and
other will neither introduce new information to other, nor restrict the rows
of other, nor alter their multplicity.