BPState
plain-language theorem explainer
BPState is the record type holding a partial assignment for backpropagation over CNF formulas with XOR constraints. Researchers proving termination or soundness of SAT backpropagation algorithms cite this definition. It is introduced as a direct structure whose single field is the map from variables to optional Boolean values.
Claim. A backpropagation state for $n$ variables is a partial assignment $a : V_n → Option(Bool)$, where $V_n$ denotes the set of variables and $none$ marks an undetermined variable while $some b$ marks a determined value.
background
The module develops partial assignments for backpropagation: none means unknown and some b means determined. PartialAssignment n is the abbrev Var n → Option Bool. BPState n wraps this map as its sole field to represent the evolving state during propagation. The upstream PartialAssignment abbrev supplies the core type; the value definition from SpinStatistics supplies the real-number interpretation of spins used in related contexts.
proof idea
This is a structure definition with one field assign of type PartialAssignment n. No tactics or lemmas are applied; the declaration simply introduces the record type.
why it matters
BPState supplies the state object used by BackpropSucceeds (every legal start reaches a complete consistent state), by the inductive BPStep relation, and by the monotonicity and soundness lemmas. It also supports the complete and consistent predicates. The definition therefore anchors the state component of the backpropagation development inside the SAT module.
Switch to Lean above to see the machine-checked source, dependencies, and usage graph.