Metamath Proof Explorer


Theorem cantnfp1

Description: If F is created by adding a single term ( FX ) = Y to G , where X is larger than any element of the support of G , then F is also a finitely supported function and it is assigned the value ( ( A ^o X ) .o Y ) +o z where z is the value of G . (Contributed by Mario Carneiro, 28-May-2015) (Revised by AV, 1-Jul-2019)

Ref Expression
Hypotheses cantnfs.s ⊢ S = dom ⁡ A CNF B
cantnfs.a ⊢ φ → A ∈ On
cantnfs.b ⊢ φ → B ∈ On
cantnfp1.g ⊢ φ → G ∈ S
cantnfp1.x ⊢ φ → X ∈ B
cantnfp1.y ⊢ φ → Y ∈ A
cantnfp1.s ⊢ φ → G supp ∅ ⊆ X
cantnfp1.f ⊢ F = t ∈ B ⟼ if t = X Y G ⁡ t
Assertion cantnfp1 ⊢ φ → F ∈ S ∧ A CNF B ⁡ F = A ↑ 𝑜 X ⋅ 𝑜 Y + 𝑜 A CNF B ⁡ G

Proof

Step Hyp Ref Expression
1 cantnfs.s ⊢ S = dom ⁡ A CNF B
2 cantnfs.a ⊢ φ → A ∈ On
3 cantnfs.b ⊢ φ → B ∈ On
4 cantnfp1.g ⊢ φ → G ∈ S
5 cantnfp1.x ⊢ φ → X ∈ B
6 cantnfp1.y ⊢ φ → Y ∈ A
7 cantnfp1.s ⊢ φ → G supp ∅ ⊆ X
8 cantnfp1.f ⊢ F = t ∈ B ⟼ if t = X Y G ⁡ t
9 onelon ⊢ B ∈ On ∧ X ∈ B → X ∈ On
10 3 5 9 syl2anc ⊢ φ → X ∈ On
11 eloni ⊢ X ∈ On → Ord ⁡ X
12 ordirr ⊢ Ord ⁡ X → ¬ X ∈ X
13 10 11 12 3syl ⊢ φ → ¬ X ∈ X
14 fvex ⊢ G ⁡ X ∈ V
15 dif1o ⊢ G ⁡ X ∈ V ∖ 1 𝑜 ↔ G ⁡ X ∈ V ∧ G ⁡ X ≠ ∅
16 14 15 mpbiran ⊢ G ⁡ X ∈ V ∖ 1 𝑜 ↔ G ⁡ X ≠ ∅
17 1 2 3 cantnfs ⊢ φ → G ∈ S ↔ G : B ⟶ A ∧ finSupp ∅⁡ G
18 4 17 mpbid ⊢ φ → G : B ⟶ A ∧ finSupp ∅⁡ G
19 18 simpld ⊢ φ → G : B ⟶ A
20 19 ffnd ⊢ φ → G Fn B
21 0ex ⊢ ∅ ∈ V
22 21 a1i ⊢ φ → ∅ ∈ V
23 elsuppfn ⊢ G Fn B ∧ B ∈ On ∧ ∅ ∈ V → X ∈ supp ∅⁡ G ↔ X ∈ B ∧ G ⁡ X ≠ ∅
24 20 3 22 23 syl3anc ⊢ φ → X ∈ supp ∅⁡ G ↔ X ∈ B ∧ G ⁡ X ≠ ∅
25 16 bicomi ⊢ G ⁡ X ≠ ∅ ↔ G ⁡ X ∈ V ∖ 1 𝑜
26 25 a1i ⊢ φ → G ⁡ X ≠ ∅ ↔ G ⁡ X ∈ V ∖ 1 𝑜
27 26 anbi2d ⊢ φ → X ∈ B ∧ G ⁡ X ≠ ∅ ↔ X ∈ B ∧ G ⁡ X ∈ V ∖ 1 𝑜
28 24 27 bitrd ⊢ φ → X ∈ supp ∅⁡ G ↔ X ∈ B ∧ G ⁡ X ∈ V ∖ 1 𝑜
29 7 sseld ⊢ φ → X ∈ supp ∅⁡ G → X ∈ X
30 28 29 sylbird ⊢ φ → X ∈ B ∧ G ⁡ X ∈ V ∖ 1 𝑜 → X ∈ X
31 5 30 mpand ⊢ φ → G ⁡ X ∈ V ∖ 1 𝑜 → X ∈ X
32 16 31 biimtrrid ⊢ φ → G ⁡ X ≠ ∅ → X ∈ X
33 32 necon1bd ⊢ φ → ¬ X ∈ X → G ⁡ X = ∅
34 13 33 mpd ⊢ φ → G ⁡ X = ∅
35 34 ad3antrrr ⊢ φ ∧ Y = ∅ ∧ t ∈ B ∧ t = X → G ⁡ X = ∅
36 simpr ⊢ φ ∧ Y = ∅ ∧ t ∈ B ∧ t = X → t = X
37 36 fveq2d ⊢ φ ∧ Y = ∅ ∧ t ∈ B ∧ t = X → G ⁡ t = G ⁡ X
38 simpllr ⊢ φ ∧ Y = ∅ ∧ t ∈ B ∧ t = X → Y = ∅
39 35 37 38 3eqtr4rd ⊢ φ ∧ Y = ∅ ∧ t ∈ B ∧ t = X → Y = G ⁡ t
40 eqidd ⊢ φ ∧ Y = ∅ ∧ t ∈ B ∧ ¬ t = X → G ⁡ t = G ⁡ t
41 39 40 ifeqda ⊢ φ ∧ Y = ∅ ∧ t ∈ B → if t = X Y G ⁡ t = G ⁡ t
42 41 mpteq2dva ⊢ φ ∧ Y = ∅ → t ∈ B ⟼ if t = X Y G ⁡ t = t ∈ B ⟼ G ⁡ t
43 8 42 eqtrid ⊢ φ ∧ Y = ∅ → F = t ∈ B ⟼ G ⁡ t
44 19 feqmptd ⊢ φ → G = t ∈ B ⟼ G ⁡ t
45 44 adantr ⊢ φ ∧ Y = ∅ → G = t ∈ B ⟼ G ⁡ t
46 43 45 eqtr4d ⊢ φ ∧ Y = ∅ → F = G
47 4 adantr ⊢ φ ∧ Y = ∅ → G ∈ S
48 46 47 eqeltrd ⊢ φ ∧ Y = ∅ → F ∈ S
49 oecl ⊢ A ∈ On ∧ B ∈ On → A ↑ 𝑜 B ∈ On
50 2 3 49 syl2anc ⊢ φ → A ↑ 𝑜 B ∈ On
51 1 2 3 cantnff ⊢ φ → A CNF B : S ⟶ A ↑ 𝑜 B
52 51 4 ffvelcdmd ⊢ φ → A CNF B ⁡ G ∈ A ↑ 𝑜 B
53 onelon ⊢ A ↑ 𝑜 B ∈ On ∧ A CNF B ⁡ G ∈ A ↑ 𝑜 B → A CNF B ⁡ G ∈ On
54 50 52 53 syl2anc ⊢ φ → A CNF B ⁡ G ∈ On
55 54 adantr ⊢ φ ∧ Y = ∅ → A CNF B ⁡ G ∈ On
56 oa0r ⊢ A CNF B ⁡ G ∈ On → ∅ + 𝑜 A CNF B ⁡ G = A CNF B ⁡ G
57 55 56 syl ⊢ φ ∧ Y = ∅ → ∅ + 𝑜 A CNF B ⁡ G = A CNF B ⁡ G
58 oveq2 ⊢ Y = ∅ → A ↑ 𝑜 X ⋅ 𝑜 Y = A ↑ 𝑜 X ⋅ 𝑜 ∅
59 oecl ⊢ A ∈ On ∧ X ∈ On → A ↑ 𝑜 X ∈ On
60 2 10 59 syl2anc ⊢ φ → A ↑ 𝑜 X ∈ On
61 om0 ⊢ A ↑ 𝑜 X ∈ On → A ↑ 𝑜 X ⋅ 𝑜 ∅ = ∅
62 60 61 syl ⊢ φ → A ↑ 𝑜 X ⋅ 𝑜 ∅ = ∅
63 58 62 sylan9eqr ⊢ φ ∧ Y = ∅ → A ↑ 𝑜 X ⋅ 𝑜 Y = ∅
64 63 oveq1d ⊢ φ ∧ Y = ∅ → A ↑ 𝑜 X ⋅ 𝑜 Y + 𝑜 A CNF B ⁡ G = ∅ + 𝑜 A CNF B ⁡ G
65 46 fveq2d ⊢ φ ∧ Y = ∅ → A CNF B ⁡ F = A CNF B ⁡ G
66 57 64 65 3eqtr4rd ⊢ φ ∧ Y = ∅ → A CNF B ⁡ F = A ↑ 𝑜 X ⋅ 𝑜 Y + 𝑜 A CNF B ⁡ G
67 48 66 jca ⊢ φ ∧ Y = ∅ → F ∈ S ∧ A CNF B ⁡ F = A ↑ 𝑜 X ⋅ 𝑜 Y + 𝑜 A CNF B ⁡ G
68 2 adantr ⊢ φ ∧ Y ≠ ∅ → A ∈ On
69 3 adantr ⊢ φ ∧ Y ≠ ∅ → B ∈ On
70 4 adantr ⊢ φ ∧ Y ≠ ∅ → G ∈ S
71 5 adantr ⊢ φ ∧ Y ≠ ∅ → X ∈ B
72 6 adantr ⊢ φ ∧ Y ≠ ∅ → Y ∈ A
73 7 adantr ⊢ φ ∧ Y ≠ ∅ → G supp ∅ ⊆ X
74 1 68 69 70 71 72 73 8 cantnfp1lem1 ⊢ φ ∧ Y ≠ ∅ → F ∈ S
75 onelon ⊢ A ∈ On ∧ Y ∈ A → Y ∈ On
76 2 6 75 syl2anc ⊢ φ → Y ∈ On
77 on0eln0 ⊢ Y ∈ On → ∅ ∈ Y ↔ Y ≠ ∅
78 76 77 syl ⊢ φ → ∅ ∈ Y ↔ Y ≠ ∅
79 78 biimpar ⊢ φ ∧ Y ≠ ∅ → ∅ ∈ Y
80 eqid ⊢ OrdIso E F supp ∅ = OrdIso E F supp ∅
81 eqid ⊢ seq ω k ∈ V , z ∈ V ⟼ A ↑ 𝑜 OrdIso E F supp ∅ ⁡ k ⋅ 𝑜 F ⁡ OrdIso E F supp ∅ ⁡ k + 𝑜 z ∅ = seq ω k ∈ V , z ∈ V ⟼ A ↑ 𝑜 OrdIso E F supp ∅ ⁡ k ⋅ 𝑜 F ⁡ OrdIso E F supp ∅ ⁡ k + 𝑜 z ∅
82 eqid ⊢ OrdIso E G supp ∅ = OrdIso E G supp ∅
83 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 ∅
84 1 68 69 70 71 72 73 8 79 80 81 82 83 cantnfp1lem3 ⊢ φ ∧ Y ≠ ∅ → A CNF B ⁡ F = A ↑ 𝑜 X ⋅ 𝑜 Y + 𝑜 A CNF B ⁡ G
85 74 84 jca ⊢ φ ∧ Y ≠ ∅ → F ∈ S ∧ A CNF B ⁡ F = A ↑ 𝑜 X ⋅ 𝑜 Y + 𝑜 A CNF B ⁡ G
86 67 85 pm2.61dane ⊢ φ → F ∈ S ∧ A CNF B ⁡ F = A ↑ 𝑜 X ⋅ 𝑜 Y + 𝑜 A CNF B ⁡ G