pub fn eval_bool(ctx: &Context, term: &Term) -> Option<bool>Expand description
Evaluate a closed Bool term to true/false, or None if it does not reduce to a Bool
constructor within the fuel budget (fail-safe).
FAST PATH: the decision is first COMPILED to a tree of native closures and run
(native_compile_decide) — this handles the full computational fragment (recursion via
Fix, pattern matching via Match, δ-unfolding of definitions), so a recursive Bool
decision runs as closure calls with no Term-tree walking. Anything the compiler declines
falls back to the tree-walking interpreter eval_bool_tree. The two are differential-
tested to give IDENTICAL results, so the trusted reduceBool reduction and native_decide
both get the compiled speedup with no change in meaning.