Formal Verification · All levels
BMC vs Unbounded Proof Strategies
Proof Engines & Convergence: Bounded model checking (BMC) searches for counterexamples up to depth k and is excellent for quickly finding shallow bugs, initialization escapes, and protocol startup issues.
What this topic teaches
BMC vs Unbounded Proof Strategies converts formal concepts into release-ready verification decisions. Bounded model checking (BMC) searches for counterexamples up to depth k and is excellent for quickly finding shallow bugs, initialization escapes, and protocol startup issues. Unbounded proof attempts establish correctness for all time, typically through induction, interpolation, IC3/PDR-style fixed-point reasoning, or hybrid engine orchestration. K-induction bridges these worlds by proving a base case and inductive step, but it often needs strengthening invariants and helper assertions before convergence. Teams should classify properties early into bug-hunting, bounded-signoff, or unbounded-signoff intent so runtime budgets and expectations stay realistic.
Senior-engineer framing question
When Bound depth achieved, k-induction success rate, and ratio of bug-find to full-proof properties. regresses, can you isolate the first failing assumption/property boundary, prove causality, assign owner, and close with auditable risk?
FORMAL EXECUTION FLOW - BMC vs Unbounded Proof Strategies
requirement intent and risk class
|
v
property and assumption modeling
|
v
proof engine exploration and trace extraction
|
v
counterexample classification and fix hypothesis
|
v
re-proof, coverage audit, and signoff decisionEvidence to collect
Primary metric: Bound depth achieved, k-induction success rate, and ratio of bug-find to full-proof properties..
Primary artifact: Proof intent matrix mapping each property to BMC depth goals, unbounded targets, and escalation criteria..
Owners to include: formal verification owner, microarchitecture owner, verification lead, quality/signoff owner.
One reproducible failing trace and one stable comparator run.
One fixed metadata run with assumptions and tool settings locked.
Ownership layers
OWNERSHIP LAYERS - BMC vs Unbounded Proof Strategies
+----------------------+--------------------------------+--------------------------------+
| Team | Primary responsibility | Closure artifact |
+----------------------+--------------------------------+--------------------------------+
| formal verification owner | property and model integrity | assumptions and proof packet |
| microarchitecture owner | implementation root-cause closure | RTL fix and replay evidence |
| verification lead | signoff governance and rollout | risk memo + acceptance gates |
+----------------------+--------------------------------+--------------------------------+Decision matrix
EVIDENCE MATRIX - BMC vs Unbounded Proof Strategies
+-----------------------------+--------------------------------+--------------------------------+---------------------------+
| Evidence | Tells you | Does not prove | Next action |
+-----------------------------+--------------------------------+--------------------------------+---------------------------+
| property status by class | closure shape by requirement | model realism | pair with cover reachability |
| vacuity and trigger checks | assertion meaningfulness | full legal-path exploration | inspect assumptions |
| counterexample traces | concrete divergence path | complete bug-space closure | classify and replay |
| assumption audit trail | model boundary confidence | implementation correctness | review spec traceability |
| before/after trend packet | mitigation movement quality | long-window stability | run broader matrix |
+-----------------------------+--------------------------------+--------------------------------+---------------------------+Key takeaways
Start with first-divergence classification before broad model edits.
Tie each claim to one proving artifact and one owner action.
Close with residual-risk statement and rollback-safe criteria.
Common pitfalls
Treating green status as correctness without vacuity and reachability audits.
Changing assumptions and RTL together, destroying causality.
Declaring closure without replaying representative legal scenarios.
Formal deep dive
Convergence requires engine strategy, invariant quality, and model realism to move together with measurable progress.
Concept diagram
CONVERGENCE DECISION FLOW
property bucket -> engine strategy -> helper invariants -> convergence audit -> closureMetric graph
CONVERGENCE BURNDOWN
open hard properties ███████
inconclusive aging █████
closed with audit ████████Metrics and artifacts to collect
engine effectiveness by property class
induction and helper-lemma success ratio
stalled-property aging dashboard
runtime vs closure-quality movement
Mini case study
A stalled set closed only after case-splitting by mode and auditing fairness assumptions for realism.
Debug branches
Bucket properties by structure and intent before tuning.
Inspect proof core stability, not runtime alone.
Reject speed gains that reduce legal reachability.
Senior review question
Ask: which requirement intent is proven, under which assumptions, and what residual risk remains?
Key takeaways
Tie each proof claim to assumption boundaries and reachability evidence.
Prefer minimal reversible fixes and preserve legal behavior visibility.
Common pitfalls
Treating runtime reduction as proof-quality improvement without audits.
Declaring closure while critical covers remain unreachable.
Using broad waivers instead of first-divergence root-cause ownership.