Module refine_tree

Source

ModulesΒ§

pretty πŸ”’

StructsΒ§

Cursor
A cursor into the refinement tree. More specifically, a Cursor represents a path from the root to some internal node in a refinement tree.
Marker
A marker is a pointer to a node in the refinement tree that can be used to query information about that node or to move the cursor. A marker may become invalid if the underlying node is cleared.
Node πŸ”’
NodePtr πŸ”’
ParentsIter πŸ”’
RcxBind πŸ”’
RefineCtxtTrace
An explicit representation of a path in the RefineTree used for debugging/tracing/serialization ONLY.
RefineTree
A refinement tree tracks the β€œtree-like structure” of refinement variables and predicates generated during refinement type-checking. This tree can be encoded as a fixpoint constraint whose satisfiability implies the safety of a function.
Scope
A list of refinement variables and their sorts.
WeakNodePtr πŸ”’

EnumsΒ§

NodeKind πŸ”’

FunctionsΒ§

children_to_fixpoint πŸ”’