Metamath Proof Explorer


Theorem cantnflem3

Description: Lemma for cantnf . Here we show existence of Cantor normal forms. Assuming (by transfinite induction) that every number less than C has a normal form, we can use oeeu to factor C into the form ( ( A ^o X ) .o Y ) +o Z where 0 < Y < A and Z < ( A ^o X ) (and a fortiori X < B ). Then since Z < ( A ^o X ) <_ ( A ^o X ) .o Y <_ C , Z has a normal form, and by appending the term ( A ^o X ) .o Y using cantnfp1 we get a normal form for C . (Contributed by Mario Carneiro, 28-May-2015)

Ref Expression
Hypotheses cantnfs.s ⊢ S = dom ⁡ A CNF B
cantnfs.a ⊢ φ → A ∈ On
cantnfs.b ⊢ φ → B ∈ On
oemapval.t ⊢ T = x y | ∃ z ∈ B x ⁡ z ∈ y ⁡ z ∧ ∀ w ∈ B z ∈ w → x ⁡ w = y ⁡ w
cantnf.c ⊢ φ → C ∈ A ↑ 𝑜 B
cantnf.s ⊢ φ → C ⊆ ran ⁡ A CNF B
cantnf.e ⊢ φ → ∅ ∈ C
cantnf.x ⊢ X = ⋃ ⋂ c ∈ On | C ∈ A ↑ 𝑜 c
cantnf.p ⊢ P = ι d | ∃ a ∈ On ∃ b ∈ A ↑ 𝑜 X d = a b ∧ A ↑ 𝑜 X ⋅ 𝑜 a + 𝑜 b = C
cantnf.y ⊢ Y = 1 st ⁡ P
cantnf.z ⊢ Z = 2 nd ⁡ P
cantnf.g ⊢ φ → G ∈ S
cantnf.v ⊢ φ → A CNF B ⁡ G = Z
cantnf.f ⊢ F = t ∈ B ⟼ if t = X Y G ⁡ t
Assertion cantnflem3 ⊢ φ → C ∈ ran ⁡ A CNF B

Proof

Step Hyp Ref Expression
1 cantnfs.s ⊢ S = dom ⁡ A CNF B
2 cantnfs.a ⊢ φ → A ∈ On
3 cantnfs.b ⊢ φ → B ∈ On
4 oemapval.t ⊢ T = x y | ∃ z ∈ B x ⁡ z ∈ y ⁡ z ∧ ∀ w ∈ B z ∈ w → x ⁡ w = y ⁡ w
5 cantnf.c ⊢ φ → C ∈ A ↑ 𝑜 B
6 cantnf.s ⊢ φ → C ⊆ ran ⁡ A CNF B
7 cantnf.e ⊢ φ → ∅ ∈ C
8 cantnf.x ⊢ X = ⋃ ⋂ c ∈ On | C ∈ A ↑ 𝑜 c
9 cantnf.p ⊢ P = ι d | ∃ a ∈ On ∃ b ∈ A ↑ 𝑜 X d = a b ∧ A ↑ 𝑜 X ⋅ 𝑜 a + 𝑜 b = C
10 cantnf.y ⊢ Y = 1 st ⁡ P
11 cantnf.z ⊢ Z = 2 nd ⁡ P
12 cantnf.g ⊢ φ → G ∈ S
13 cantnf.v ⊢ φ → A CNF B ⁡ G = Z
14 cantnf.f ⊢ F = t ∈ B ⟼ if t = X Y G ⁡ t
15 1 2 3 4 5 6 7 cantnflem2 ⊢ φ → A ∈ On ∖ 2 𝑜 ∧ C ∈ On ∖ 1 𝑜
16 eqid ⊢ X = X
17 eqid ⊢ Y = Y
18 eqid ⊢ Z = Z
19 16 17 18 3pm3.2i ⊢ X = X ∧ Y = Y ∧ Z = Z
20 8 9 10 11 oeeui ⊢ A ∈ On ∖ 2 𝑜 ∧ C ∈ On ∖ 1 𝑜 → X ∈ On ∧ Y ∈ A ∖ 1 𝑜 ∧ Z ∈ A ↑ 𝑜 X ∧ A ↑ 𝑜 X ⋅ 𝑜 Y + 𝑜 Z = C ↔ X = X ∧ Y = Y ∧ Z = Z
21 19 20 mpbiri ⊢ A ∈ On ∖ 2 𝑜 ∧ C ∈ On ∖ 1 𝑜 → X ∈ On ∧ Y ∈ A ∖ 1 𝑜 ∧ Z ∈ A ↑ 𝑜 X ∧ A ↑ 𝑜 X ⋅ 𝑜 Y + 𝑜 Z = C
22 15 21 syl ⊢ φ → X ∈ On ∧ Y ∈ A ∖ 1 𝑜 ∧ Z ∈ A ↑ 𝑜 X ∧ A ↑ 𝑜 X ⋅ 𝑜 Y + 𝑜 Z = C
23 22 simpld ⊢ φ → X ∈ On ∧ Y ∈ A ∖ 1 𝑜 ∧ Z ∈ A ↑ 𝑜 X
24 23 simp1d ⊢ φ → X ∈ On
25 oecl ⊢ A ∈ On ∧ X ∈ On → A ↑ 𝑜 X ∈ On
26 2 24 25 syl2anc ⊢ φ → A ↑ 𝑜 X ∈ On
27 23 simp2d ⊢ φ → Y ∈ A ∖ 1 𝑜
28 27 eldifad ⊢ φ → Y ∈ A
29 onelon ⊢ A ∈ On ∧ Y ∈ A → Y ∈ On
30 2 28 29 syl2anc ⊢ φ → Y ∈ On
31 dif1o ⊢ Y ∈ A ∖ 1 𝑜 ↔ Y ∈ A ∧ Y ≠ ∅
32 31 simprbi ⊢ Y ∈ A ∖ 1 𝑜 → Y ≠ ∅
33 27 32 syl ⊢ φ → Y ≠ ∅
34 on0eln0 ⊢ Y ∈ On → ∅ ∈ Y ↔ Y ≠ ∅
35 30 34 syl ⊢ φ → ∅ ∈ Y ↔ Y ≠ ∅
36 33 35 mpbird ⊢ φ → ∅ ∈ Y
37 omword1 ⊢ A ↑ 𝑜 X ∈ On ∧ Y ∈ On ∧ ∅ ∈ Y → A ↑ 𝑜 X ⊆ A ↑ 𝑜 X ⋅ 𝑜 Y
38 26 30 36 37 syl21anc ⊢ φ → A ↑ 𝑜 X ⊆ A ↑ 𝑜 X ⋅ 𝑜 Y
39 omcl ⊢ A ↑ 𝑜 X ∈ On ∧ Y ∈ On → A ↑ 𝑜 X ⋅ 𝑜 Y ∈ On
40 26 30 39 syl2anc ⊢ φ → A ↑ 𝑜 X ⋅ 𝑜 Y ∈ On
41 23 simp3d ⊢ φ → Z ∈ A ↑ 𝑜 X
42 onelon ⊢ A ↑ 𝑜 X ∈ On ∧ Z ∈ A ↑ 𝑜 X → Z ∈ On
43 26 41 42 syl2anc ⊢ φ → Z ∈ On
44 oaword1 ⊢ A ↑ 𝑜 X ⋅ 𝑜 Y ∈ On ∧ Z ∈ On → A ↑ 𝑜 X ⋅ 𝑜 Y ⊆ A ↑ 𝑜 X ⋅ 𝑜 Y + 𝑜 Z
45 40 43 44 syl2anc ⊢ φ → A ↑ 𝑜 X ⋅ 𝑜 Y ⊆ A ↑ 𝑜 X ⋅ 𝑜 Y + 𝑜 Z
46 22 simprd ⊢ φ → A ↑ 𝑜 X ⋅ 𝑜 Y + 𝑜 Z = C
47 45 46 sseqtrd ⊢ φ → A ↑ 𝑜 X ⋅ 𝑜 Y ⊆ C
48 38 47 sstrd ⊢ φ → A ↑ 𝑜 X ⊆ C
49 oecl ⊢ A ∈ On ∧ B ∈ On → A ↑ 𝑜 B ∈ On
50 2 3 49 syl2anc ⊢ φ → A ↑ 𝑜 B ∈ On
51 ontr2 ⊢ A ↑ 𝑜 X ∈ On ∧ A ↑ 𝑜 B ∈ On → A ↑ 𝑜 X ⊆ C ∧ C ∈ A ↑ 𝑜 B → A ↑ 𝑜 X ∈ A ↑ 𝑜 B
52 26 50 51 syl2anc ⊢ φ → A ↑ 𝑜 X ⊆ C ∧ C ∈ A ↑ 𝑜 B → A ↑ 𝑜 X ∈ A ↑ 𝑜 B
53 48 5 52 mp2and ⊢ φ → A ↑ 𝑜 X ∈ A ↑ 𝑜 B
54 15 simpld ⊢ φ → A ∈ On ∖ 2 𝑜
55 oeord ⊢ X ∈ On ∧ B ∈ On ∧ A ∈ On ∖ 2 𝑜 → X ∈ B ↔ A ↑ 𝑜 X ∈ A ↑ 𝑜 B
56 24 3 54 55 syl3anc ⊢ φ → X ∈ B ↔ A ↑ 𝑜 X ∈ A ↑ 𝑜 B
57 53 56 mpbird ⊢ φ → X ∈ B
58 2 adantr ⊢ φ ∧ x ∈ supp ∅⁡ G → A ∈ On
59 3 adantr ⊢ φ ∧ x ∈ supp ∅⁡ G → B ∈ On
60 suppssdm ⊢ G supp ∅ ⊆ dom ⁡ G
61 1 2 3 cantnfs ⊢ φ → G ∈ S ↔ G : B ⟶ A ∧ finSupp ∅⁡ G
62 12 61 mpbid ⊢ φ → G : B ⟶ A ∧ finSupp ∅⁡ G
63 62 simpld ⊢ φ → G : B ⟶ A
64 60 63 fssdm ⊢ φ → G supp ∅ ⊆ B
65 64 sselda ⊢ φ ∧ x ∈ supp ∅⁡ G → x ∈ B
66 onelon ⊢ B ∈ On ∧ x ∈ B → x ∈ On
67 59 65 66 syl2anc ⊢ φ ∧ x ∈ supp ∅⁡ G → x ∈ On
68 oecl ⊢ A ∈ On ∧ x ∈ On → A ↑ 𝑜 x ∈ On
69 58 67 68 syl2anc ⊢ φ ∧ x ∈ supp ∅⁡ G → A ↑ 𝑜 x ∈ On
70 63 adantr ⊢ φ ∧ x ∈ supp ∅⁡ G → G : B ⟶ A
71 70 65 ffvelcdmd ⊢ φ ∧ x ∈ supp ∅⁡ G → G ⁡ x ∈ A
72 onelon ⊢ A ∈ On ∧ G ⁡ x ∈ A → G ⁡ x ∈ On
73 58 71 72 syl2anc ⊢ φ ∧ x ∈ supp ∅⁡ G → G ⁡ x ∈ On
74 63 ffnd ⊢ φ → G Fn B
75 7 elexd ⊢ φ → ∅ ∈ V
76 elsuppfn ⊢ G Fn B ∧ B ∈ On ∧ ∅ ∈ V → x ∈ supp ∅⁡ G ↔ x ∈ B ∧ G ⁡ x ≠ ∅
77 74 3 75 76 syl3anc ⊢ φ → x ∈ supp ∅⁡ G ↔ x ∈ B ∧ G ⁡ x ≠ ∅
78 77 simplbda ⊢ φ ∧ x ∈ supp ∅⁡ G → G ⁡ x ≠ ∅
79 on0eln0 ⊢ G ⁡ x ∈ On → ∅ ∈ G ⁡ x ↔ G ⁡ x ≠ ∅
80 73 79 syl ⊢ φ ∧ x ∈ supp ∅⁡ G → ∅ ∈ G ⁡ x ↔ G ⁡ x ≠ ∅
81 78 80 mpbird ⊢ φ ∧ x ∈ supp ∅⁡ G → ∅ ∈ G ⁡ x
82 omword1 ⊢ A ↑ 𝑜 x ∈ On ∧ G ⁡ x ∈ On ∧ ∅ ∈ G ⁡ x → A ↑ 𝑜 x ⊆ A ↑ 𝑜 x ⋅ 𝑜 G ⁡ x
83 69 73 81 82 syl21anc ⊢ φ ∧ x ∈ supp ∅⁡ G → A ↑ 𝑜 x ⊆ A ↑ 𝑜 x ⋅ 𝑜 G ⁡ x
84 eqid ⊢ OrdIso E G supp ∅ = OrdIso E G supp ∅
85 12 adantr ⊢ φ ∧ x ∈ supp ∅⁡ G → G ∈ S
86 eqid ⊢ seq ω k ∈ V , z ∈ V ⟼ A ↑ 𝑜 OrdIso E G supp ∅ ⁡ k ⋅ 𝑜 G ⁡ OrdIso E G supp ∅ ⁡ k + 𝑜 z ∅ = seq ω k ∈ V , z ∈ V ⟼ A ↑ 𝑜 OrdIso E G supp ∅ ⁡ k ⋅ 𝑜 G ⁡ OrdIso E G supp ∅ ⁡ k + 𝑜 z ∅
87 1 58 59 84 85 86 65 cantnfle ⊢ φ ∧ x ∈ supp ∅⁡ G → A ↑ 𝑜 x ⋅ 𝑜 G ⁡ x ⊆ A CNF B ⁡ G
88 13 adantr ⊢ φ ∧ x ∈ supp ∅⁡ G → A CNF B ⁡ G = Z
89 87 88 sseqtrd ⊢ φ ∧ x ∈ supp ∅⁡ G → A ↑ 𝑜 x ⋅ 𝑜 G ⁡ x ⊆ Z
90 83 89 sstrd ⊢ φ ∧ x ∈ supp ∅⁡ G → A ↑ 𝑜 x ⊆ Z
91 41 adantr ⊢ φ ∧ x ∈ supp ∅⁡ G → Z ∈ A ↑ 𝑜 X
92 26 adantr ⊢ φ ∧ x ∈ supp ∅⁡ G → A ↑ 𝑜 X ∈ On
93 ontr2 ⊢ A ↑ 𝑜 x ∈ On ∧ A ↑ 𝑜 X ∈ On → A ↑ 𝑜 x ⊆ Z ∧ Z ∈ A ↑ 𝑜 X → A ↑ 𝑜 x ∈ A ↑ 𝑜 X
94 69 92 93 syl2anc ⊢ φ ∧ x ∈ supp ∅⁡ G → A ↑ 𝑜 x ⊆ Z ∧ Z ∈ A ↑ 𝑜 X → A ↑ 𝑜 x ∈ A ↑ 𝑜 X
95 90 91 94 mp2and ⊢ φ ∧ x ∈ supp ∅⁡ G → A ↑ 𝑜 x ∈ A ↑ 𝑜 X
96 24 adantr ⊢ φ ∧ x ∈ supp ∅⁡ G → X ∈ On
97 54 adantr ⊢ φ ∧ x ∈ supp ∅⁡ G → A ∈ On ∖ 2 𝑜
98 oeord ⊢ x ∈ On ∧ X ∈ On ∧ A ∈ On ∖ 2 𝑜 → x ∈ X ↔ A ↑ 𝑜 x ∈ A ↑ 𝑜 X
99 67 96 97 98 syl3anc ⊢ φ ∧ x ∈ supp ∅⁡ G → x ∈ X ↔ A ↑ 𝑜 x ∈ A ↑ 𝑜 X
100 95 99 mpbird ⊢ φ ∧ x ∈ supp ∅⁡ G → x ∈ X
101 100 ex ⊢ φ → x ∈ supp ∅⁡ G → x ∈ X
102 101 ssrdv ⊢ φ → G supp ∅ ⊆ X
103 1 2 3 12 57 28 102 14 cantnfp1 ⊢ φ → F ∈ S ∧ A CNF B ⁡ F = A ↑ 𝑜 X ⋅ 𝑜 Y + 𝑜 A CNF B ⁡ G
104 103 simprd ⊢ φ → A CNF B ⁡ F = A ↑ 𝑜 X ⋅ 𝑜 Y + 𝑜 A CNF B ⁡ G
105 13 oveq2d ⊢ φ → A ↑ 𝑜 X ⋅ 𝑜 Y + 𝑜 A CNF B ⁡ G = A ↑ 𝑜 X ⋅ 𝑜 Y + 𝑜 Z
106 104 105 46 3eqtrd ⊢ φ → A CNF B ⁡ F = C
107 1 2 3 cantnff ⊢ φ → A CNF B : S ⟶ A ↑ 𝑜 B
108 107 ffnd ⊢ φ → A CNF B Fn S
109 103 simpld ⊢ φ → F ∈ S
110 fnfvelrn ⊢ A CNF B Fn S ∧ F ∈ S → A CNF B ⁡ F ∈ ran ⁡ A CNF B
111 108 109 110 syl2anc ⊢ φ → A CNF B ⁡ F ∈ ran ⁡ A CNF B
112 106 111 eqeltrrd ⊢ φ → C ∈ ran ⁡ A CNF B