Module mz_compute_types::plan::interpret
source · Expand description
Utilities and implementations for abstract interpretation of crate::plan::Plan structures.
Modules§
- api 🔒Utilities for abstract interpretation of crate::plan::Plan structures.
- Implementation of crate::plan::interpret::Interpreter for inference of physical monotonicity in single-time dataflows.
Structs§
- An entry in an Interpreter context.
- A wrapper for a recursive fold invocation over a Plan that cannot mutate its input.
- A wrapper for a recursive fold invocation over a Plan that can mutate its input.
- An Interpreter context.
- Represents a boolean physical monotonicity property, where the bottom value is true (i.e., physically monotonic) and the top value is false (i.e. not physically monotonic).
- Provides a concrete implementation of an interpreter that determines if the output of
Plan
expressions is physically monotonic in a single-time dataflow, potentially taking into account judgments about its inputs. We note that in a single-time dataflow, expressions in non-recursive contexts (i.e., outside ofLetRec
values) process streams that are at a minimum logically monotonic, i.e., may contain retractions but would cease to do so if consolidated. Detecting physical monotonicity, i.e., the absence of retractions in a stream, enables us to disable forced consolidation whenever possible.
Traits§
- A lattice with existing
top
andbottom
elements. - An abstract interpreter for Plan expressions.
Type Aliases§
- TODO(database-issues#7533): Add documentation.