pith. machine review for the scientific record. sign in
lemma proved wrapper high

stepAt_isPostingStep

show as:
view Lean formalization →

Advancing a d-account ledger by one tick under a prescribed debit-credit schedule yields a valid single-account posting step. Parity-adjacency arguments cite this to chain the one-bit difference property across successive ticks. The argument is a direct refinement that exhibits the posted account and chosen side as witnesses.

claimLet $d$ be a natural number equipped with an atomic tick structure on the $d$-account ledger carrier. For any side schedule assigning debit or credit to each tick, any tick $t$, and any ledger state $L$, the state reached after one step is obtained from $L$ by posting one unit to a single account on the prescribed side.

background

The module constructs an explicit ledger model in which each tick posts exactly one unit to one of $d$ accounts, either debit or credit. AccountRS d is the recognition structure whose universe is Fin d with the trivial recognition relation. LedgerState d is the ledger type built over this carrier. PostingStep is the proposition that there exist an account index k in Fin d and a side such that the successor state equals the result of the post operation applied to L at k on that side. The AtomicTick class guarantees a unique posted account at each tick t via its unique_post axiom.

proof idea

The proof is a one-line wrapper that refines the existential quantifier in the definition of PostingStep. It supplies the account returned by accountAt at tick t, the side taken from the schedule at t, and reflexivity to confirm equality with the post operation.

why it matters in Recognition Science

This lemma is the direct hypothesis for the theorem stepAt_oneBitDiff, which shows that a per-tick posting schedule produces an adjacent walk in parity space. It supplies the ledger-to-parity glue step described in the module documentation and supports the Recognition framework's derivation of one-bit adjacency from atomic updates. No open scaffolding questions are closed here.

scope and limits

Lean usage

postingStep_oneBitDiff (stepAt_isPostingStep (d := d) sideAt t L)

formal statement (Lean)

1016lemma stepAt_isPostingStep {d : Nat} [AtomicTick (AccountRS d)] (sideAt : Nat → Side) (t : Nat) (L : LedgerState d) :
1017    PostingStep (d := d) L (stepAt (d := d) sideAt t L) := by

proof body

One-line wrapper that applies refine.

1018  refine ⟨accountAt (d := d) t, sideAt t, rfl⟩
1019

used by (1)

From the project-wide theorem graph. These declarations reference this one in their body.

depends on (15)

Lean names referenced from this declaration's body.