convert-to-premise-preserves-dependents-invariant

IN derived (depth 1)

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.

Summary

The convert-to-premise operation keeps the internal dependency tracking consistent by cleaning up reverse pointers from old antecedents, which is the same consistency guarantee upheld by every other operation that modifies the belief network. This means converting a derived node to a premise won't leave behind stale references that could cause incorrect propagation of truth values.

Justifications

SL — Premise conversion honors the universal dependents-index maintenance contract

Antecedents (all must be IN):

  • convert-to-premise-removes-dependents — When a derived node is converted to a premise via `convert_to_premise`, it is removed from its former antecedents' `dependents` sets because the old justification edges are deleted.
  • every-network-mutation-maintains-dependents — 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.

Dependents

These beliefs depend on this one:

Details