theorem
proved
locality_from_ledger
show as:
view math explainer →
open explainer
Generate a durable explainer page for this declaration.
open lean source
IndisputableMonolith.Foundation.LocalityFromLedger on GitHub at line 83.
browse module
All declarations in this module, on Recognition.
explainer page
depends on
used by
formal source
80 rw [comp.compose_from_levels, comp.compose_from_levels]
81 exact uniform_ratio L k
82
83theorem locality_from_ledger (L : ZeroParameterLedger) :
84 ∃ r : ℝ, r > 0 ∧ ∀ k, L.levels (k + 1) = r * L.levels k := by
85 use L.levels 1 / L.levels 0
86 refine ⟨div_pos (L.all_positive 1) (L.all_positive 0), ?_⟩
87 intro k
88 have h := uniform_ratio L k
89 rw [div_eq_div_iff (ne_of_gt (L.all_positive k)) (ne_of_gt (L.all_positive (k+1)))] at h
90 rw [div_eq_div_iff (ne_of_gt (L.all_positive 0)) (ne_of_gt (L.all_positive 1))] at h
91 have hk_pos := L.all_positive k
92 field_simp
93 linarith
94
95/-! ## Certificate -/
96
97structure LocalityCert where
98 uniform : ∀ (L : ZeroParameterLedger), ∀ n,
99 L.levels n / L.levels (n + 1) = L.levels 0 / L.levels 1
100 geometric : ∀ (L : ZeroParameterLedger),
101 ∃ r : ℝ, r > 0 ∧ ∀ k, L.levels (k + 1) = r * L.levels k
102
103theorem locality_cert_exists : Nonempty LocalityCert :=
104 ⟨{ uniform := fun L => uniform_ratio L
105 geometric := fun L => locality_from_ledger L }⟩
106
107end IndisputableMonolith.Foundation.LocalityFromLedger