Module chalk_recursive::fulfill
source · Structs§
- Fulfill πA
Fulfill
is where we actually break down complex goals, instantiate variables, and perform inference. Itβs highly stateful. Itβs generally used in Chalk to try to solve a goal, and then package up what was learned in a stateless, canonical way. - PositiveSolution πWhen proving a leaf goal, we record the free variables that appear within it so that we can update inference state accordingly.
Enums§
- NegativeSolution πWhen refuting a goal, thereβs no impact on inference state.
- Obligation πA goal that must be resolved
- Outcome π
Functions§
- canonicalize π
- u_canonicalize π
- unify π