Realization Boundaries · Lean source

SeedObstructions.lean

Declared contract recorded Coverage and evidence

The cited release explicitly reports completion of its registered formal contract, under its exact hypotheses.

This viewer reads the retained source; it does not run Lean or assign new claim mappings.

Local imports (1)

RealizationBoundaries/SeedObstructions.lean102 lines

Original source pathRealizationBoundaries/SeedObstructions.lean
Skip declarations and read code

Skip source text

1 import RealizationBoundaries.SeedGeneration
2 
3 /-! # Finite seeds cannot reach omitted prime coordinates -/
4 set_option autoImplicit false
5 noncomputable section
6 namespace RealizationBoundaries
7 
8 /-- All finite direct-sum seed families share a missing prime coordinate. -/
9 theorem finiteSupport_finite_seeds_missing (S : Set finiteSupport) (hS : S.Finite) :
10     ∃ p : Prime, ∀ x ∈ S, x.val p = 0 := by
11   let E : Set Prime := ⋃ x ∈ S, support x.val
12   have hE : E.Finite := hS.biUnion fun x _ => x.property
13   have hpre : {n : ℕ | primeAt n ∈ E}.Finite :=
14     hE.preimage primeAt_injective.injOn
15   obtain ⟨n, hn⟩ := hpre.exists_notMem
16   refine ⟨primeAt n, ?_⟩
17   intro x hx
18   by_contra h
19   exact hn (Set.mem_iUnion.mpr ⟨x, Set.mem_iUnion.mpr ⟨hx, h⟩⟩)
20 
21 /-- A closed coordinate certificate survives the full endomorphism orbit and closure. -/
22 theorem finiteSupport_seed_certificate (S : Set finiteSupport) (hS : S.Finite) :
23     ∃ p : Prime, endomorphismHull S ≤ coordinateKernel finiteSupport p ∧
24       topologicalEndomorphismHull S ≤ coordinateKernel finiteSupport p ∧
25       coordinateKernel finiteSupport p ≠ ⊤ := by
26   obtain ⟨p, hp⟩ := finiteSupport_finite_seeds_missing S hS
27   have h := coordinate_obstruction finiteSupport p S hp
28     (fun f x hx => finiteSupport_endomorphism_preserves_zero f x p hx)
29   exact ⟨p, h.1, h.2, coordinateKernel_ne_top finiteSupport le_rfl p⟩
30 
31 theorem finiteSupport_no_finite_endomorphism_seeds (S : Set finiteSupport) (hS : S.Finite) :
32     endomorphismHull S ≠ ⊤ := by
33   obtain ⟨p, h, _, hne⟩ := finiteSupport_seed_certificate S hS
34   intro heq
35   exact hne (top_unique (heq ▸ h))
36 
37 theorem finiteSupport_no_finite_topological_seeds (S : Set finiteSupport) (hS : S.Finite) :
38     topologicalEndomorphismHull S ≠ ⊤ := by
39   obtain ⟨p, _, h, hne⟩ := finiteSupport_seed_certificate S hS
40   intro heq
41   exact hne (top_unique (heq ▸ h))
42 
43 /-- Every actual selector-group element has finite support off the selected primes,
44 including elements with rational coordinate zero. -/
45 theorem selector_outside_support_finite (T : Set Prime) (x : selectorGroup T) :
46     (support x.val \ T).Finite := by
47   classical
48   obtain ⟨r, d, hd⟩ := normalForm_exists T x
49   apply d.property.subset
50   intro p hp
51   have he : x.val p = d.val p := by
52     rw [hd]
53     simp [rationalSection, hp.2]
54   exact fun hz => hp.1 (he.trans hz)
55 
56 theorem omittedIndex_injective (a : ℕ → Bool) : Function.Injective (omittedIndex a) := by
57   intro i j h
58   have hi := omittedIndex_bounds a i
59   have hj := omittedIndex_bounds a j
60   omega
61 
62 /-- A finite family misses an unselected prime even if each seed has infinite support. -/
63 theorem paired_finite_seeds_missing (a : ℕ → Bool) (S : Set (pairedGroup a))
64     (hS : S.Finite) :
65     ∃ n : ℕ, ∀ x ∈ S, x.val (primeAt (omittedIndex a n)) = 0 := by
66   let E : Set Prime := ⋃ x ∈ S, support x.val \ pairedSelector a
67   have hE : E.Finite := hS.biUnion fun x _ => selector_outside_support_finite _ x
68   have hi := primeAt_injective.comp (omittedIndex_injective a)
69   have hpre : {n : ℕ | primeAt (omittedIndex a n) ∈ E}.Finite := hE.preimage hi.injOn
70   obtain ⟨n, hn⟩ := hpre.exists_notMem
71   refine ⟨n, ?_⟩
72   intro x hx
73   by_contra h
74   exact hn (Set.mem_iUnion.mpr ⟨x,
75     Set.mem_iUnion.mpr ⟨hx, h, omitted_not_mem a n⟩⟩)
76 
77 /-- The certificate uses a genuine nonzero prime seed in the original group. -/
78 theorem paired_seed_certificate (a : ℕ → Bool) (S : Set (pairedGroup a)) (hS : S.Finite) :
79     ∃ p : Prime, p ∉ pairedSelector a ∧
80       endomorphismHull S ≤ coordinateKernel (pairedGroup a) p ∧
81       topologicalEndomorphismHull S ≤ coordinateKernel (pairedGroup a) p ∧
82       coordinateKernel (pairedGroup a) p ≠ ⊤ := by
83   obtain ⟨n, hn⟩ := paired_finite_seeds_missing a S hS
84   let p := primeAt (omittedIndex a n)
85   have h := coordinate_obstruction (pairedGroup a) p S hn
86     (fun f x hx => hom_preserves_zero_coordinate _ _ f x p hx)
87   exact ⟨p, omitted_not_mem a n, h.1, h.2,
88     coordinateKernel_ne_top _ (finiteSupport_le_preimage _) p⟩
89 
90 theorem paired_no_finite_endomorphism_seeds (a : ℕ → Bool)
91     (S : Set (pairedGroup a)) (hS : S.Finite) : endomorphismHull S ≠ ⊤ := by
92   obtain ⟨p, _, h, _, hne⟩ := paired_seed_certificate a S hS
93   intro heq
94   exact hne (top_unique (heq ▸ h))
95 
96 theorem paired_no_finite_topological_seeds (a : ℕ → Bool)
97     (S : Set (pairedGroup a)) (hS : S.Finite) : topologicalEndomorphismHull S ≠ ⊤ := by
98   obtain ⟨p, _, _, h, hne⟩ := paired_seed_certificate a S hS
99   intro heq
100   exact hne (top_unique (heq ▸ h))
101 
102 end RealizationBoundaries

Back to source controls

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: fc87de6861387c2473b90b4159e4a550640edf973773088c2703b00467f1640c

Original source on GitHub

Back to Realization Boundaries