Skip to content
DenseChip
Learn
PracticeCode labInterview

DenseChip

Navigate

Menu

LearnPracticeCode labInterview

Tools

All toolsSV editorCode repoResume
DenseChip

Practice, courses, and chip-design tools in one focused workspace.

LearnPracticeCode labInterviewToolsLearning paths

© 2026 DenseChip

AboutRoadmapCareersInternshipsFAQContactPrivacyTerms
Skip to lesson

Course contents

  • How to Use This Course
  • Reading Paths
  • Glossary
  • Metrics Reference
  • Formal Cheat Sheet
  • Formal Foundations19
  • Properties and SVA16
  • Property Development and Constraints19
  • Proof Engines and Convergence23
  • Formal Applications20
  • Equivalence Checking14
  • Formal Coverage and Signoff15
  • Methodology and Debug13
    • The Formal Testplan
    • Managing Complexity in a Project
    • Debugging Formal Results
      • Triage a Counterexample
      • Minimising and Replaying in Simulation
      • CEX, CTI, and Lasso Compared
      • Four Counterexamples Worked
    • Formal in Regression
  • Interview Prep15
  • Capstone: A Chip-Block Verification Lab24
Loading lesson

←Methodology and Debug
  1. Topics
  2. Formal Verification
  3. Methodology and Debug
  4. Debugging Formal Results

Part 8 of 10Part 8 of 10/Methodology and DebugAll levels

Debugging Formal Results

Read every failing trace to its root cause: triage in a fixed order, minimise, replay, and tell the three trace kinds apart.

  • 4topics
  • 4lessons

A failing trace is not a verdict; it is a question with four possible answers. It can be a design bug, a missing assumption, an abstraction artefact, or a step that starts where no reset can reach. Each answer has a different fix, and guessing the class wastes the debug. This topic fixes the order: triage first, minimise and replay second, and name the trace kind before touching anything.

Lesson

After it you can...

Triage a Counterexample

Classify any failure in a fixed order and prescribe the fix plus its regression.

Minimising and Replaying in Simulation

Shorten a trace and replay it where the team can see it.

CEX, CTI, and Lasso Compared

Tell the three failing traces apart and act correctly on each.

Four Counterexamples Worked

Read four real failures cycle by cycle, fix each, and watch the proof close.

Suggested order: top to bottom. Triage is the entry point for every failure; the other three lessons are the tools it calls on. The worked lesson assumes all of them.

A failure arrives. First check the start state is legal, then whether a missing assumption should have excluded it, then whether the trace replays on the real design. Only then classify it and fix it.
Triage order: legal start, then assumptions, then replay on the unabstracted design, then classify and fix.
Check yourself A trace fails a property but starts in a state reset can never produce. What is it?

Not a bug report yet: an unreachable start. Fix the reset harness or the initial-state constraint first, then rerun before classifying anything.

Related topics

  • Hardware Debug: Formal Counterexamples as Traces

  • Next: Triage a Counterexample

PreviousNext: Triage a Counterexample

Up next

Up nextTriage a Counterexample

Sign in to save progress

Practice this lessonPrevious lessonReport an error

See also

  • The Formal Testplan
  • Managing Complexity in a Project
  • Formal in Regression