mz_transform::analysis

Module equivalences

Source
Expand description

An analysis that reports all known-equivalent expressions for each relation.

Expressions are equivalent at a relation if they are certain to evaluate to the same Datum for all records in the relation.

Equivalences are recorded in an EquivalenceClasses, which lists all known equivalences classes, each a list of equivalent expressions.

Structs§

  • EQLattice 🔒
  • A compact representation of classes of expressions that must be equivalent.
  • Pulls up and pushes down predicate information represented as equivalences
  • Wrapper struct for human-readable printing of expressions inside EquivalenceClasses. (Similar to HumanizedExpr. Unfortunately, we can’t just use HumanizedExpr here, because we’d need to impl Display for HumanizedExpr<'a, EquivalenceClasses, M>, but neither Display nor HumanizedExpr is defined in this crate.)

Traits§

Functions§