pub fn cegar_verify(
init: &VerifyExpr,
transition: &VerifyExpr,
property: &VerifyExpr,
initial_predicates: &[VerifyExpr],
max_refinements: u32,
) -> AbstractionResultExpand description
CEGAR verification loop: abstract, check, refine.
- Build abstract model from current predicates
- Check abstract model with k-induction
- If abstract model is safe, return Safe
- If abstract counterexample found, check concreteness via BMC
- If concrete, return Unsafe
- If spurious, extract new predicates from the counterexample and refine