{
  "slug": "circuit-soundness",
  "term": "Circuit soundness",
  "tools": [
    "clean",
    "zklean",
    "halva",
    "garden"
  ],
  "definition": "A circuit is sound with respect to a specification if every witness that satisfies its constraints also satisfies the specification, so a malicious prover cannot produce an accepting proof of a false statement.",
  "detail": [
    "Soundness is the property that rules out underconstrained circuits, and it is what most ZK verification efforts prove first. Because the adversary chooses the witness, a soundness argument must consider every satisfying assignment, not only the ones an honest witness generator produces.",
    "Soundness alone is not enough: a circuit with no satisfying assignments is vacuously sound. That is why Clean and zk.golf require completeness alongside it, and why a soundness-only theorem should be read together with tests showing the circuit accepts honest inputs."
  ],
  "page": "https://sorryfree.com/glossary/circuit-soundness/",
  "updated": "2026-09-13"
}