Skip to main content

Module decide

Module decide 

Source
Expand description

decide — proof by evaluation for closed decidable goals.

The router below is untrusted: it evaluates the goal with machine arithmetic and, only when the goal is TRUE, builds the derivation whose leaves re-derive that truth through certified channels — ArithDecision (the proof-producing arithmetic oracle) for ground Int identities, NativeDecide (the kernel’s trusted-evaluator route via the reduceBool hook and a Decidable instance) for ground comparisons and Bool equalities. Propositional structure recurses through the ordinary intro rules. A false, open, or unsupported goal yields None — decide declines, it never guesses.