IndisputableMonolith.Verification.NyquistObstructionCert
IndisputableMonolith/Verification/NyquistObstructionCert.lean · 105 lines · 3 declarations
show as:
view math explainer →
1import Mathlib
2import IndisputableMonolith.Patterns
3
4/-!
5# Nyquist Obstruction Certificate (T7)
6
7This certificate proves the **Nyquist obstruction theorem** (T7):
8
9> If T < 2^D, there is no surjection from Fin T to D-bit patterns.
10
11This is a fundamental result connecting information theory to the RS ledger:
12- **Physical meaning**: A system sampling at rate T cannot resolve D bits if T < 2^D
13- **RS meaning**: The ledger clock period must be ≥ 2^D to cover all D-dimensional states
14
15## Key Results
16
171. **Obstruction**: T < 2^D → no complete cover of period T
182. **Threshold bijection**: At T = 2^D, a bijection exists (no aliasing)
19
20## Why This Matters
21
22This is the **information-theoretic foundation** of the eight-tick period:
23- D = 3 spatial dimensions → minimum period = 2³ = 8
24- Any shorter period would cause "Nyquist aliasing" in the ledger
25
26Together with EightTickLowerBoundCert, this certificate shows that 8 ticks is:
27- **Sufficient**: period_exactly_8 gives a complete cover
28- **Necessary**: Nyquist obstruction prevents anything shorter
29- **Bijective**: At threshold, no redundancy (perfect efficiency)
30
31## Non-Circularity
32
33All proofs are structural:
34- Pigeonhole principle (cardinality comparison)
35- Fintype equivalence constructions
36- No axioms, no `sorry`, no measurement constants
37-/
38
39namespace IndisputableMonolith
40namespace Verification
41namespace NyquistObstruction
42
43open IndisputableMonolith.Patterns
44
45structure NyquistObstructionCert where
46 deriving Repr
47
48/-- Verification predicate: Nyquist obstruction and threshold bijection.
49
50Certifies:
511. T < 2^D → no surjection Fin T → Pattern D (aliasing)
522. T = 2^D → bijection exists (no aliasing)
533. For D = 3, explicit instances: T < 8 → no cover, T = 8 → bijection
54-/
55@[simp] def NyquistObstructionCert.verified (_c : NyquistObstructionCert) : Prop :=
56 -- 1) General Nyquist obstruction
57 (∀ (T D : ℕ), T < 2^D → ¬∃ f : Fin T → Pattern D, Function.Surjective f) ∧
58 -- 2) Threshold bijection (at T = 2^D, aliasing-free bijection exists)
59 (∀ D : ℕ, ∃ f : Fin (2^D) → Pattern D, Function.Bijective f) ∧
60 -- 3) For D = 3 specifically: T < 8 means no complete cover
61 (∀ T : ℕ, T < 8 → ¬∃ f : Fin T → Pattern 3, Function.Surjective f) ∧
62 -- 4) For D = 3 specifically: T = 8 has a bijection
63 (∃ f : Fin 8 → Pattern 3, Function.Bijective f) ∧
64 -- 5) Pattern space cardinality formula
65 (∀ d : ℕ, Fintype.card (Pattern d) = 2^d)
66
67/-- Top-level theorem: the Nyquist obstruction certificate verifies. -/
68@[simp] theorem NyquistObstructionCert.verified_any (c : NyquistObstructionCert) :
69 NyquistObstructionCert.verified c := by
70 refine ⟨?obstruction, ?threshold, ?obstruction3, ?threshold3, ?card⟩
71 · -- 1) General Nyquist obstruction
72 intro T D hT
73 exact T7_nyquist_obstruction hT
74 · -- 2) Threshold bijection
75 intro D
76 exact T7_threshold_bijection D
77 · -- 3) D = 3 obstruction: T < 8 → no surjection
78 intro T hT
79 have h8 : (8 : ℕ) = 2^3 := by norm_num
80 rw [h8] at hT
81 exact T7_nyquist_obstruction hT
82 · -- 4) D = 3 threshold: T = 8 has bijection
83 have h8 : (8 : ℕ) = 2^3 := by norm_num
84 rw [h8]
85 exact T7_threshold_bijection 3
86 · -- 5) Cardinality formula
87 intro d
88 exact card_pattern d
89
90/-- The eight-tick period is forced by Nyquist: neither more nor less. -/
91theorem eight_tick_nyquist_forced :
92 (∀ T : ℕ, T < 8 → ¬∃ f : Fin T → Pattern 3, Function.Surjective f) ∧
93 (∃ f : Fin 8 → Pattern 3, Function.Bijective f) :=
94 ⟨fun T hT => T7_nyquist_obstruction (by simpa using hT),
95 by simpa using T7_threshold_bijection 3⟩
96
97/-- Information-theoretic interpretation: D bits require 2^D samples minimum. -/
98theorem information_lower_bound (D : ℕ) :
99 ∀ T : ℕ, T < 2^D → ¬∃ f : Fin T → Pattern D, Function.Surjective f :=
100 fun T hT => T7_nyquist_obstruction hT
101
102end NyquistObstruction
103end Verification
104end IndisputableMonolith
105