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

voxelStep_foldPlusOneProgram

show as:
view Lean formalization →

The lemma supplies the explicit one-voxel update rule under the fold-plus-one LNAL program: nuPhi increments by 1 and clamps while the auxiliary state is untouched. A researcher verifying the 2D Galerkin-to-LNAL simulation bridge at milestone M3 would cite it when lifting the rule to encoded coefficient fields. The term proof reduces the claim by destructuring the voxel pair and simplifying against the definitions of voxelStep and lStep.

claimFor any LNAL voxel $v = (r, a)$ with $r$ a Reg6 register and $a$ an Aux5 auxiliary, the one-step execution satisfies $voxelStep(foldPlusOneProgram, v) = (r[nuPhi := clampI32(r.nuPhi + 1)], a)$.

background

LNALVoxel is the product type Reg6 × Aux5. voxelStep initializes an LState from the voxel, applies lStep under the supplied LProgram, and returns the resulting register-auxiliary pair. foldPlusOneProgram is the constant program that emits the fold-1 instruction at every index. The module Simulation2D packages the one-step bridge between the discrete 2D Galerkin model and the independent-voxel LNAL semantics; at M3 the required claims are stated explicitly as SimulationHypothesis without axioms.

proof idea

The term proof first applies rcases to split the input voxel into its Reg6 and Aux5 components, then invokes simp on the definitions of voxelStep, foldPlusOneProgram, and lStep while omitting the clampI32 rewrite rule.

why it matters in Recognition Science

The lemma provides the concrete semantics required by the downstream result voxelStep_foldPlusOne_encodeIndex, which shows that the LNAL step on an encoded Galerkin state reproduces foldPlusOneStep. It therefore closes one link in the SimulationHypothesis of the ClassicalBridge.Fluids module. Within the Recognition framework it supports the classical-to-discrete bridge at the M3 milestone without introducing new hypotheses.

scope and limits

Lean usage

simp [voxelStep_foldPlusOneProgram]

formal statement (Lean)

  45lemma voxelStep_foldPlusOneProgram (v : LNALVoxel) :
  46    voxelStep foldPlusOneProgram v = ({ v.1 with nuPhi := clampI32 (v.1.nuPhi + 1) }, v.2) := by

proof body

Term-mode proof.

  47  rcases v with ⟨r6, a5⟩
  48  simp [LNALSemantics.voxelStep, foldPlusOneProgram, lStep, -clampI32]
  49
  50/-- The corresponding discrete step on encoded Galerkin coefficients. -/

used by (1)

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

depends on (5)

Lean names referenced from this declaration's body.