Slot swap `i` on the geometry (round six, `swE_geo`)
ProvedNLogN.KFX.swE_geoSlot swap i on the geometry with expression parameters.
The following holds (Lean statement, in the scope of module Solutions.KFX1Sw):
theorem NLogN.KFX.swE_geo :
∃ T q₀ : ℕ, ∀ q, q.Prime → q₀ < q → ∃ K : ℝ, 0 ≤ K ∧
∀ (i : Fin 3) (g : Geo), g.Pos → ∀ u : ℕ, 1 ≤ u → g.Q = 2 ^ u →
∀ (I : List Sym) (t : IState HS) (zs : List ℤ) (R : List Item),
KFL.Bits zs → t.G 0 = ints zs ++ R → zs.length = g.V →
∀ (eP eG eS eU : Ex HS) (Bb : ℕ), Bb ≤ zsz (g.V : ℤ) + 3 →
eP.size + eG.size + eS.size + eU.size ≤ 50 →
NoK eP → NoK eG → NoK eS → NoK eU →
ESp eP t Bb (svP g i : ℤ) → ESp eG t Bb (svG g i : ℤ) → ESp eS t Bb (svS g i : ℤ) →
ESp eU t Bb (u : ℤ) →
∃ c : ℕ, IRuns I l12prog (swE q eP eG eS eU) t
(t.upd 0 (ints (rixT g (swT i) zs) ++ R)) c ∧
(c : ℝ) ≤ K * ((g.V : ℝ) + 1) * (u : ℝ) ^ (1 - (2 : ℝ)⁻¹ ^ 50)
Context. KFX §1: the Lemma 12 swap wrapper with expression parameters
swE q eP eG eS eU pushes the four Lemma 12 parameters as the values of arbitrary expressions
(read from registers at run time), runs l12F, pops. swE_spec is KFL.swI_spec with the
literals replaced by expressions (KFL.ESp facts), and swE_geo gives the three slot swaps
rixT g (swT i) on the 8-axis geometry.
Formalization Note. Part of the Lean formalization of the round-six κ-improvement (integer-multiplication-kappa campaign, target IntMul.Kappa.jain_round6_framework). The statement is copied verbatim from the Lean development; the platform node carries the same declaration name. Definitions it mentions live in the IntMul_Kappa_R6_Defs* bundles (on top of the published κ bundles IntMul_Kappa_K_Defs*).
-- Round-six κ development (integer-multiplication-kappa), generated by skeleton subtraction. import Definitions.Def_IntMul_Kappa_K_Defs33 import Definitions.Def_IntMul_Kappa_R6_Defs1 import Mathlib import Definitions.Def_IntMul_HvdH_M_Defs8 import Definitions.Def_IntMul_MultitapeModel set_option autoImplicit false set_option relaxedAutoImplicit false set_option maxHeartbeats 1000000 open NLogN NLogN.KFX open IntMul NLogN.RS NLogN.KIL NLogN.KFD NLogN.KFE NLogN.KFB NLogN.KFL AModel AModelL12 NetProp7
theorem NLogN.KFX.swE_geo :
∃ T q₀ : ℕ, ∀ q, q.Prime → q₀ < q → ∃ K : ℝ, 0 ≤ K ∧
∀ (i : Fin 3) (g : Geo), g.Pos → ∀ u : ℕ, 1 ≤ u → g.Q = 2 ^ u →
∀ (I : List Sym) (t : IState HS) (zs : List ℤ) (R : List Item),
KFL.Bits zs → t.G 0 = ints zs ++ R → zs.length = g.V →
∀ (eP eG eS eU : Ex HS) (Bb : ℕ), Bb ≤ zsz (g.V : ℤ) + 3 →
eP.size + eG.size + eS.size + eU.size ≤ 50 →
NoK eP → NoK eG → NoK eS → NoK eU →
ESp eP t Bb (svP g i : ℤ) → ESp eG t Bb (svG g i : ℤ) → ESp eS t Bb (svS g i : ℤ) →
ESp eU t Bb (u : ℤ) →
∃ c : ℕ, IRuns I l12prog (swE q eP eG eS eU) t
(t.upd 0 (ints (rixT g (swT i) zs) ++ R)) c ∧
(c : ℝ) ≤ K * ((g.V : ℝ) + 1) * (u : ℝ) ^ (1 - (2 : ℝ)⁻¹ ^ 50) := by sorry