pub fn find_counterexample_symmetric(
init: &ProofExpr,
trans: &dyn Fn(u32) -> ProofExpr,
property: &dyn Fn(u32) -> ProofExpr,
max_k: u32,
) -> BmcOutcomeExpand description
Bounded model checking with temporal symmetry breaking. Interchangeable signals
(temporal_symmetry_pairs) give a system automorphism that holds at every frame, so a swap lifted
uniformly through the unrolling permutes counterexample trajectories. We order each pair at the initial
frame (a@0 ≤ b@0, i.e. ¬a@0 ∨ b@0): a sound partial lex-leader that keeps at least one trajectory
per symmetry orbit. Hence a counterexample exists under the ordering iff one exists at all, and the
shallowest violating depth is unchanged — the verdict matches find_counterexample, with the
symmetric search space pruned.