propagation-automatically-cascades-on-all-truth-changes
OUT derived (depth 3)
Truth propagation automatically cascades to all dependent nodes whenever any node's truth value changes, including nodes that appear only in outlists — making GATE belief re-evaluation fully automatic with no manual intervention required after outlist node retraction.
Summary
When any node's truth value changes, the system automatically ripples that change through every node that depends on it — including those connected through outlist relationships. This means retracting or restoring a single node requires no manual cleanup; the entire downstream network updates itself without human intervention.
Justifications
SL — Safe terminating propagation combined with fully-specified outlist semantics should ensure automatic cascade on all truth changes, but outlist exclusion from the dependents index prevents automatic GATE re-evaluation
Antecedents (all must be IN):
- propagation-is-safe-and-terminating — Truth propagation is both lifecycle-safe and guaranteed to terminate: retracted nodes are skipped, trigger nodes are never recomputed, BFS prevents stack overflow, and stop-on-unchanged prevents oscillation — propagation respects every node state it encounters.
- outlist-semantics-are-fully-specified — The outlist primitive has complete, well-defined semantics: multiple entries form a conjunction (all must be OUT), absent nodes are treated as OUT (permissive default), and outlist relationships survive persistence through JSON serialization with rebuilt dependent indexes.
Unless (any of these IN defeats this justification):
- outlist-nodes-not-in-dependents-index — Outlist nodes are not tracked in the `dependents` index, so when an outlist node is retracted (goes OUT), dependent GATE beliefs are not enqueued for re-evaluation by `_propagate` — requiring manual `reasons assert` as a workaround.