every-network-mutation-maintains-dependents
IN premise
After any public mutation method on `Network` (`add_node`, `retract`, `assert_node`, `add_justification`, `supersede`, `challenge`, `defend`, `convert_to_premise`, `add_nogood`, `summarize`), `verify_dependents()` returns an empty list.
Summary
Every operation that changes the belief network leaves it in a consistent state — no node is ever left with a broken or dangling reference to another node. This is a foundational integrity guarantee: if any mutation could silently corrupt the dependency graph, downstream reasoning (like retraction cascades or justification tracing) would produce wrong results.
Dependents
These beliefs depend on this one:
- convert-to-premise-preserves-dependents-invariant — Converting a derived node to a premise correctly maintains the dependents index by removing the node from former antecedents' dependents sets — the same invariant maintained by every other network mutation.
- dependency-tracking-is-complete-for-all-reference-types — The dependents index fully tracks all relationship types — both antecedent references and outlist references — enabling complete incremental propagation for every truth value change without requiring periodic full recompute as a fallback
- network-mutations-are-audited-and-index-consistent — Every network mutation simultaneously maintains dual invariants: the audit log receives a timestamped event providing historical traceability, and the dependents reverse index is kept consistent ensuring correct future propagation.
Details
| Source | entries/2026/04/24/tests-test_dependents_integrity.md |