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
    • SVA as a Formal Tool Reads It
    • Implication, Edges and Windows
    • Safety, Liveness and What a Tool Can Say
      • Safety and Liveness on Infinite Traces
      • Weak and Strong in a Proof Engine
      • Bounded Response Is Safety
      • Fairness and What You May Assume
    • Debugging and Reviewing Assertions
  • Property Development and Constraints19
  • Proof Engines and Convergence23
  • Formal Applications20
  • Equivalence Checking14
  • Formal Coverage and Signoff15
  • Methodology and Debug13
  • Interview Prep15
  • Capstone: A Chip-Block Verification Lab24
Loading lesson

←Properties and SVA
  1. Topics
  2. Formal Verification
  3. Properties and SVA
  4. Safety, Liveness and What a Tool Can Say

Part 2 of 10Part 2 of 10/Properties and SVAAll levels

Safety, Liveness and What a Tool Can Say

Safety is refuted by a finite prefix, liveness needs an infinite trace; bounded response is safety, and fairness belongs only to the environment.

  • 4topics
  • 4lessons

A rule that says nothing bad happens and a rule that says something good happens need different evidence, different engines, and different counterexamples. Confusing them produces the two classic false claims: calling a bounded pass a liveness proof, and calling an unconstrained starvation trace a design bug. This topic draws the line, then works the three rules that live on it: bounded response, fairness, and the weak-strong distinction.

Lesson

After it you can...

Safety and Liveness on Infinite Traces

Classify any rule as safety or liveness and name the shape of its counterexample.

Weak and Strong in a Proof Engine

Say what weak and strong mean on infinite traces and on finite prefixes, and separate both from vacuity.

Bounded Response Is Safety

Write a grant-within-N rule with a justified N, and show that too small and too large both mislead.

Fairness and What You May Assume

Constrain the environment to be fair without constraining the design, and spot a fairness that hides starvation.

Suggested order: top to bottom. Classification first, because every later lesson names which side its rule is on; then weak and strong, which refines the liveness side; then bounded response, the runnable substitute the open flow supports; then fairness, which is what makes liveness proofs honest. The engine view of liveness continues in the proof-engines section.

Top-down diagram: the rule leads to the question whether a finite prefix refutes it; yes means safety; no leads to the question whether a bound can be added, where yes means a bounded rule and so safety, and no means liveness.
Safety is refuted by a finite prefix; a rule no prefix refutes is liveness unless a bound can be added, which turns it into safety.
PreviousNext: Safety and Liveness on Infinite Traces

Up next

Up nextSafety and Liveness on Infinite Traces

Sign in to save progress

Practice this lessonPrevious lessonReport an error

See also

  • SVA as a Formal Tool Reads It
  • Implication, Edges and Windows
  • Debugging and Reviewing Assertions