Paper IX · Lean source
PolynomialParameterPath.lean
Selected results recorded Coverage and evidence
Compiler/replay evidence is reported for a subset or bounded block. No whole-work coverage is implied.
This viewer reads the retained source; it does not run Lean or assign new claim mappings.
polynomial_joint_motion/formalization/PolynomialParameterPath.lean92 lines
Original source path
preserved/PRSC_IX_Consolidated_Manuscript/polynomial_joint_motion/formalization/PolynomialParameterPath.leanSkip declarations and read code
1 module
2 public import PolynomialPadicUnique
3
4 @[expose] public section
5 noncomputable section
6 set_option autoImplicit false
7
8 open Filter Topology
9
10 namespace Komorebi.PolynomialParameterPath
11 open Komorebi.PolynomialPadicUnique
12
13 variable {k : ℕ}
14
15 /-- Truncate a prescribed p-adic parameter while retaining the exact initial
16 integer representative, rather than replacing it by its canonical residue. -/
17 def parameterPath (p L : ℕ) [Fact (Nat.Prime p)] (x : Fin k → ℤ)
18 (τ : Fin k → ℤ_[p]) : ℕ → Fin k → ℤ
19 | 0 => x
20 | n + 1 => truncInt p (L + n + 1) τ
21
22 @[simp] theorem parameterPath_zero (p L : ℕ) [Fact (Nat.Prime p)]
23 (x : Fin k → ℤ) (τ : Fin k → ℤ_[p]) :
24 parameterPath p L x τ 0 = x := rfl
25
26 /-- Every stage retains its full requested precision relative to the target. -/
27 theorem parameterPath_precision (p L : ℕ) [Fact (Nat.Prime p)]
28 (x : Fin k → ℤ) (τ : Fin k → ℤ_[p])
29 (hτ : ∀ i, (p : ℤ_[p])^L ∣ τ i - (x i : ℤ_[p])) (n : ℕ) (i : Fin k) :
30 (p : ℤ_[p])^(L+n) ∣ τ i - (parameterPath p L x τ n i : ℤ_[p]) := by
31 cases n with
32 | zero => simpa only [Nat.add_zero, parameterPath] using hτ i
33 | succ n =>
34 simpa only [parameterPath, Nat.add_assoc] using
35 truncInt_precision p (L+n+1) τ i
36
37 /-- Successive parameter representatives are compatible over the integers. -/
38 theorem parameterPath_compatible (p L : ℕ) [Fact (Nat.Prime p)]
39 (x : Fin k → ℤ) (τ : Fin k → ℤ_[p])
40 (hτ : ∀ i, (p : ℤ_[p])^L ∣ τ i - (x i : ℤ_[p])) :
41 ∀ n i, (p : ℤ)^(L+n) ∣
42 (parameterPath p L x τ (n+1) - parameterPath p L x τ n) i := by
43 intro n i
44 apply (int_pow_dvd_iff p (L+n) _).mpr
45 have hnext := dvd_trans (pow_dvd_pow (p : ℤ_[p]) (by omega : L+n ≤ L+(n+1)))
46 (parameterPath_precision p L x τ hτ (n+1) i)
47 simpa only [Pi.sub_apply, Int.cast_sub, sub_sub_sub_cancel_left] using
48 dvd_sub (parameterPath_precision p L x τ hτ n i) hnext
49
50 /-- The constructed parameter path converges to the prescribed target itself. -/
51 theorem parameterPath_tendsto (p L : ℕ) [Fact (Nat.Prime p)]
52 (x : Fin k → ℤ) (τ : Fin k → ℤ_[p])
53 (hτ : ∀ i, (p : ℤ_[p])^L ∣ τ i - (x i : ℤ_[p])) :
54 Tendsto (fun n i => (parameterPath p L x τ n i : ℤ_[p])) atTop (𝓝 τ) := by
55 apply tendsto_pi_nhds.mpr
56 intro i
57 rw [Metric.tendsto_atTop]
58 intro ε hε
59 obtain ⟨N, hN⟩ := PadicInt.exists_pow_neg_lt p hε
60 refine ⟨N, ?_⟩
61 intro n hn
62 have hd : (p : ℤ_[p])^N ∣ τ i - (parameterPath p L x τ n i : ℤ_[p]) :=
63 dvd_trans (pow_dvd_pow (p : ℤ_[p]) (by omega))
64 (parameterPath_precision p L x τ hτ n i)
65 have hb := (PadicInt.norm_le_pow_iff_mem_span_pow
66 (τ i - (parameterPath p L x τ n i : ℤ_[p])) N).mpr
67 (Ideal.mem_span_singleton.mpr hd)
68 rw [dist_comm, dist_eq_norm]
69 exact lt_of_le_of_lt hb hN
70
71 /-- Every p-adic parameter in the base residue ball supplies an actual compatible
72 integer path, with exact initial representative and all retained precisions. -/
73 theorem exists_parameter_path (p L : ℕ) [Fact (Nat.Prime p)]
74 (x : Fin k → ℤ) (τ : Fin k → ℤ_[p])
75 (hτ : ∀ i, (p : ℤ_[p])^L ∣ τ i - (x i : ℤ_[p])) :
76 ∃ t : ℕ → Fin k → ℤ,
77 t 0 = x ∧
78 (∀ n i, (p : ℤ)^(L+n) ∣ (t (n+1) - t n) i) ∧
79 (∀ n i, (p : ℤ_[p])^(L+n) ∣ τ i - (t n i : ℤ_[p])) ∧
80 Tendsto (fun n i => (t n i : ℤ_[p])) atTop (𝓝 τ) := by
81 exact ⟨parameterPath p L x τ, rfl,
82 parameterPath_compatible p L x τ hτ, parameterPath_precision p L x τ hτ,
83 parameterPath_tendsto p L x τ hτ⟩
84
85 #print axioms parameterPath
86 #print axioms parameterPath_zero
87 #print axioms parameterPath_precision
88 #print axioms parameterPath_compatible
89 #print axioms parameterPath_tendsto
90 #print axioms exists_parameter_path
91
92 end Komorebi.PolynomialParameterPath
Original file and source record
This copy matches the recorded source file. Its publication here does not change the work’s review status.
SHA-256: 8ce7df0bc47d4207bd6a6ad1f19afb82343efeb9573de8c415d16f6d92ec39ff
Back to Paper IX: Arithmetic Packets, Dyadic Towers, and Local Polynomial Deformation