pub fn validate_epistemic_source_program(program: &Program) -> Result<()>Expand description
Validate the complete authored epistemic program before foundedness can elide a rule.
Every authored predicate signature receives a temporary name-and-arity identity. This
keeps a semantically dead p/1 clause from colliding with a live p/2 relation while
preserving all declaration, clause, arithmetic, and modal type evidence within each
signature. Modal range restriction is checked against the executable contract first;
the validation clone then reaches the ordinary compiler’s production preprocessing and
lowering checks without requiring ordinary stratification, because supported negated
modal cycles are dispatched to well-founded execution later.