Chapter 4

Formal & Structural Guarantees for FSM Correctness


Language GitHub Pages ๐ŸŒ GitHub ๐Ÿ’ป
๐Ÿ‡บ๐Ÿ‡ธ English GitHub Pages EN GitHub Repo EN

Chapter 1โ€“3 proved that the FSM works (simulation) and is buildable (synthesizable / ASIC-flow feasible). Chapter 4 moves to the next stage:

Prove that the FSM is correct by construction (structure) and by properties (formal thinking).

This chapter is tool-light. It is written to be human-readable and reviewable. You can later map these ideas to any formal tool (SVA + SymbiYosys, Jasper, VC Formal, etc.).


Goals


Non-goals


Reading order

  1. 01 Philosophy โ€” what correctness means in hardware FSMs
  2. 02 Invariants โ€” how to derive invariants from spec, and a working list template
  3. 03 Safety & Completeness โ€” property categories to ensure nothing is missing / nothing illegal exists
  4. 04 Equivalence โ€” Python โ†” Verilog semantic alignment
  5. 05 Boundary โ€” contract between PID, FSM, LLM
  6. 06 Checklist โ€” review checklist and acceptance criteria

Deliverables (what you should end up with)