Module 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.
physically_monotonic 🔒
Implementation of crate::plan::interpret::Interpreter for inference of physical monotonicity in single-time dataflows.

Structs§

ContextEntry
An entry in an Interpreter context.
Fold
A wrapper for a recursive fold invocation over a Plan that cannot mutate its input.
FoldMut
A wrapper for a recursive fold invocation over a Plan that can mutate its input.
InterpreterContext
An Interpreter context.
PhysicallyMonotonic
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).
SingleTimeMonotonic
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 of LetRec 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§

BoundedLattice
A lattice with existing top and bottom elements.
Interpreter
An abstract interpreter for Plan expressions.

Type Aliases§

Context
TODO(database-issues#7533): Add documentation.