IndisputableMonolith.Gravity.SevenGaps.Gap2DynamicsKindRule
Defines the posting dynamics layer for Gap 2: the balanced zero ledger as initial condition, single-unit debit/credit posts, reachability, and mass. Physicists tracing whether dual-entry dynamics force kind-only charge rules cite this carrier. The module packages ledger adjacency into an explicit dynamical system with phi-change lemmas and mass characterizations.
claimA ledger state is a pair of maps (debit, credit). The zero ledger $L_0$ has every column empty. A post at account $a$ adds one unit as debit or credit. Reachability is the reflexive-transitive closure of single posts from $L_0$. The imbalance $\phi = \mathrm{debit}-\mathrm{credit}$ changes by $\pm 1$ at exactly one coordinate per post. Mass is the total posted weight; mass zero iff the state is $L_0$.
background
Gap 2 asks whether the dual-entry substrate forces the counting premises used in posting-cost derivations. The prior arc (Gap2LatticeKindRule) settled whether the lattice alone forces ChargesCountsOnly (charge as a function of three cell counts and letter kind). This module shifts from static lattice structure to dynamics: histories are generated by posts, not selected among fixed states.
Upstream LedgerPostingAdjacency supplies the ledger-shaped model: each tick posts exactly one unit to exactly one account as debit or credit, so a single post changes $\phi=\mathrm{debit}-\mathrm{credit}$ by $\pm 1$ at one coordinate (parity one-bit adjacency). The zero ledger is every column empty; the module doc treats it as the initial condition that CanonicalHistory.state_canonical pins counted histories to.
Sibling content introduces postAt, the reachability predicate generated by posts, mass, and the predecessor relation used to walk histories backward.
proof idea
Definition-and-lemma module, not a single theorem. It introduces the zero ledger, the post operation, and reachability, then proves elementary dynamical facts: self-action of debit/credit posts on $\phi$, that distinct posts move $\phi$ differently, ledger extensionality, mass characterizations (mass zero iff zero ledger; nonzero mass yields a positive coordinate), and a predecessor map on reachable states. Arguments are direct from the posting adjacency model: case splits on debit versus credit and coordinatewise arithmetic on $\phi$.
why it matters in Recognition Science
Supplies the dynamical carrier that later Gap 2 arcs import. Gap2IncidenceSilenceVerdict uses it when banking the scoped no-go that the ledger layer does not force aggregate linearity by kind (FixedKindTotals) on posting cost. Gap2PostingLayerFloor builds the pinned-carrier floor and uniqueness wall against deriving GaugeCountingPrinciple from richer-than-counting substrate at the posting layer. InsertionAsymmetryInevitableReasons draws on the same dynamics when census-ing necessary reasons for asymmetric carrier-enlarging rate laws.
In the Seven Gaps gravity program this is the bridge from static dual-entry structure to time-ordered posting histories, so questions about what the substrate forces can be stated as properties of reachable ledgers rather than free states.
scope and limits
- Does not prove that dynamics force ChargesCountsOnly or FixedKindTotals.
- Does not derive GaugeCountingPrinciple from posting structure.
- Does not address incidence silence; that is a downstream verdict module.
- Does not model multi-unit or multi-account posts in one tick.
- Does not fix physical units or couple ledgers to spacetime metrics.
used by (3)
depends on (2)
declarations in this module (39)
-
def
zeroLedger -
def
postAt -
inductive
PostReachable -
theorem
phi_zeroLedger -
theorem
phi_postAt_debit_self -
theorem
phi_postAt_credit_self -
theorem
phi_postAt_ne -
theorem
ledger_ext -
def
mass -
theorem
eq_zeroLedger_of_mass_zero -
theorem
exists_pos_of_ne_zero -
def
predOf -
theorem
postAt_predOf -
theorem
predOf_nonneg -
theorem
mass_predOf_lt -
theorem
postReachable_zero_of_nonneg -
theorem
imbalance_realized -
structure
does -
abbrev
Schedule -
def
runSchedule -
def
phiAfter -
theorem
runSchedule_eq_of_agree_below -
theorem
postReachable_run -
theorem
exists_schedule_of_reachable -
theorem
imbalance_realized_by_schedule -
def
incidenceImbalance -
theorem
dynamics_produces_incidence_countermodel -
def
CountsOnlyImbalance -
def
CountsOnlySchedule -
def
cmEdge0 -
def
cmEdge1 -
theorem
cmEdge1_ne_cmEdge0 -
def
countermodelSchedule -
theorem
schedule_countermodel_not_countsOnly -
theorem
about -
theorem
ledger_forces_countsOnly_at_no_layer -
structure
Index -
def
index -
theorem
index_audit