Metamath Proof Explorer


Theorem fseqenlem2

Description: Lemma for fseqen . (Contributed by Mario Carneiro, 17-May-2015)

Ref Expression
Hypotheses fseqenlem.a ⊢ φ → A ∈ V
fseqenlem.b ⊢ φ → B ∈ A
fseqenlem.f ⊢ φ → F : A × A ⟶ 1-1 onto A
fseqenlem.g ⊢ G = seq ω n ∈ V , f ∈ V ⟼ x ∈ A suc ⁡ n ⟼ f ⁡ x ↾ n F x ⁡ n ∅ B
fseqenlem.k ⊢ K = y ∈ ⋃ k ∈ ω A k ⟼ dom ⁡ y G ⁡ dom ⁡ y ⁡ y
Assertion fseqenlem2 ⊢ φ → K : ⋃ k ∈ ω A k ⟶ 1-1 ω × A

Proof

Step Hyp Ref Expression
1 fseqenlem.a ⊢ φ → A ∈ V
2 fseqenlem.b ⊢ φ → B ∈ A
3 fseqenlem.f ⊢ φ → F : A × A ⟶ 1-1 onto A
4 fseqenlem.g ⊢ G = seq ω n ∈ V , f ∈ V ⟼ x ∈ A suc ⁡ n ⟼ f ⁡ x ↾ n F x ⁡ n ∅ B
5 fseqenlem.k ⊢ K = y ∈ ⋃ k ∈ ω A k ⟼ dom ⁡ y G ⁡ dom ⁡ y ⁡ y
6 eliun ⊢ y ∈ ⋃ k ∈ ω A k ↔ ∃ k ∈ ω y ∈ A k
7 elmapi ⊢ y ∈ A k → y : k ⟶ A
8 7 ad2antll ⊢ φ ∧ k ∈ ω ∧ y ∈ A k → y : k ⟶ A
9 8 fdmd ⊢ φ ∧ k ∈ ω ∧ y ∈ A k → dom ⁡ y = k
10 simprl ⊢ φ ∧ k ∈ ω ∧ y ∈ A k → k ∈ ω
11 9 10 eqeltrd ⊢ φ ∧ k ∈ ω ∧ y ∈ A k → dom ⁡ y ∈ ω
12 9 fveq2d ⊢ φ ∧ k ∈ ω ∧ y ∈ A k → G ⁡ dom ⁡ y = G ⁡ k
13 12 fveq1d ⊢ φ ∧ k ∈ ω ∧ y ∈ A k → G ⁡ dom ⁡ y ⁡ y = G ⁡ k ⁡ y
14 1 2 3 4 fseqenlem1 ⊢ φ ∧ k ∈ ω → G ⁡ k : A k ⟶ 1-1 A
15 14 adantrr ⊢ φ ∧ k ∈ ω ∧ y ∈ A k → G ⁡ k : A k ⟶ 1-1 A
16 f1f ⊢ G ⁡ k : A k ⟶ 1-1 A → G ⁡ k : A k ⟶ A
17 15 16 syl ⊢ φ ∧ k ∈ ω ∧ y ∈ A k → G ⁡ k : A k ⟶ A
18 simprr ⊢ φ ∧ k ∈ ω ∧ y ∈ A k → y ∈ A k
19 17 18 ffvelcdmd ⊢ φ ∧ k ∈ ω ∧ y ∈ A k → G ⁡ k ⁡ y ∈ A
20 13 19 eqeltrd ⊢ φ ∧ k ∈ ω ∧ y ∈ A k → G ⁡ dom ⁡ y ⁡ y ∈ A
21 11 20 opelxpd ⊢ φ ∧ k ∈ ω ∧ y ∈ A k → dom ⁡ y G ⁡ dom ⁡ y ⁡ y ∈ ω × A
22 21 rexlimdvaa ⊢ φ → ∃ k ∈ ω y ∈ A k → dom ⁡ y G ⁡ dom ⁡ y ⁡ y ∈ ω × A
23 6 22 biimtrid ⊢ φ → y ∈ ⋃ k ∈ ω A k → dom ⁡ y G ⁡ dom ⁡ y ⁡ y ∈ ω × A
24 23 imp ⊢ φ ∧ y ∈ ⋃ k ∈ ω A k → dom ⁡ y G ⁡ dom ⁡ y ⁡ y ∈ ω × A
25 24 5 fmptd ⊢ φ → K : ⋃ k ∈ ω A k ⟶ ω × A
26 ffun ⊢ K : ⋃ k ∈ ω A k ⟶ ω × A → Fun ⁡ K
27 funbrfv2b ⊢ Fun ⁡ K → z K w ↔ z ∈ dom ⁡ K ∧ K ⁡ z = w
28 25 26 27 3syl ⊢ φ → z K w ↔ z ∈ dom ⁡ K ∧ K ⁡ z = w
29 28 simplbda ⊢ φ ∧ z K w → K ⁡ z = w
30 28 simprbda ⊢ φ ∧ z K w → z ∈ dom ⁡ K
31 25 fdmd ⊢ φ → dom ⁡ K = ⋃ k ∈ ω A k
32 31 adantr ⊢ φ ∧ z K w → dom ⁡ K = ⋃ k ∈ ω A k
33 30 32 eleqtrd ⊢ φ ∧ z K w → z ∈ ⋃ k ∈ ω A k
34 dmeq ⊢ y = z → dom ⁡ y = dom ⁡ z
35 34 fveq2d ⊢ y = z → G ⁡ dom ⁡ y = G ⁡ dom ⁡ z
36 id ⊢ y = z → y = z
37 35 36 fveq12d ⊢ y = z → G ⁡ dom ⁡ y ⁡ y = G ⁡ dom ⁡ z ⁡ z
38 34 37 opeq12d ⊢ y = z → dom ⁡ y G ⁡ dom ⁡ y ⁡ y = dom ⁡ z G ⁡ dom ⁡ z ⁡ z
39 opex ⊢ dom ⁡ z G ⁡ dom ⁡ z ⁡ z ∈ V
40 38 5 39 fvmpt ⊢ z ∈ ⋃ k ∈ ω A k → K ⁡ z = dom ⁡ z G ⁡ dom ⁡ z ⁡ z
41 33 40 syl ⊢ φ ∧ z K w → K ⁡ z = dom ⁡ z G ⁡ dom ⁡ z ⁡ z
42 29 41 eqtr3d ⊢ φ ∧ z K w → w = dom ⁡ z G ⁡ dom ⁡ z ⁡ z
43 42 fveq2d ⊢ φ ∧ z K w → 1 st ⁡ w = 1 st ⁡ dom ⁡ z G ⁡ dom ⁡ z ⁡ z
44 vex ⊢ z ∈ V
45 44 dmex ⊢ dom ⁡ z ∈ V
46 fvex ⊢ G ⁡ dom ⁡ z ⁡ z ∈ V
47 45 46 op1st ⊢ 1 st ⁡ dom ⁡ z G ⁡ dom ⁡ z ⁡ z = dom ⁡ z
48 43 47 eqtrdi ⊢ φ ∧ z K w → 1 st ⁡ w = dom ⁡ z
49 48 fveq2d ⊢ φ ∧ z K w → G ⁡ 1 st ⁡ w = G ⁡ dom ⁡ z
50 49 cnveqd ⊢ φ ∧ z K w → G ⁡ 1 st ⁡ w -1 = G ⁡ dom ⁡ z -1
51 42 fveq2d ⊢ φ ∧ z K w → 2 nd ⁡ w = 2 nd ⁡ dom ⁡ z G ⁡ dom ⁡ z ⁡ z
52 45 46 op2nd ⊢ 2 nd ⁡ dom ⁡ z G ⁡ dom ⁡ z ⁡ z = G ⁡ dom ⁡ z ⁡ z
53 51 52 eqtrdi ⊢ φ ∧ z K w → 2 nd ⁡ w = G ⁡ dom ⁡ z ⁡ z
54 50 53 fveq12d ⊢ φ ∧ z K w → G ⁡ 1 st ⁡ w -1 ⁡ 2 nd ⁡ w = G ⁡ dom ⁡ z -1 ⁡ G ⁡ dom ⁡ z ⁡ z
55 eliun ⊢ z ∈ ⋃ k ∈ ω A k ↔ ∃ k ∈ ω z ∈ A k
56 elmapi ⊢ z ∈ A k → z : k ⟶ A
57 56 adantl ⊢ k ∈ ω ∧ z ∈ A k → z : k ⟶ A
58 57 fdmd ⊢ k ∈ ω ∧ z ∈ A k → dom ⁡ z = k
59 simpl ⊢ k ∈ ω ∧ z ∈ A k → k ∈ ω
60 58 59 eqeltrd ⊢ k ∈ ω ∧ z ∈ A k → dom ⁡ z ∈ ω
61 simpr ⊢ k ∈ ω ∧ z ∈ A k → z ∈ A k
62 58 oveq2d ⊢ k ∈ ω ∧ z ∈ A k → A dom ⁡ z = A k
63 61 62 eleqtrrd ⊢ k ∈ ω ∧ z ∈ A k → z ∈ A dom ⁡ z
64 60 63 jca ⊢ k ∈ ω ∧ z ∈ A k → dom ⁡ z ∈ ω ∧ z ∈ A dom ⁡ z
65 64 rexlimiva ⊢ ∃ k ∈ ω z ∈ A k → dom ⁡ z ∈ ω ∧ z ∈ A dom ⁡ z
66 55 65 sylbi ⊢ z ∈ ⋃ k ∈ ω A k → dom ⁡ z ∈ ω ∧ z ∈ A dom ⁡ z
67 33 66 syl ⊢ φ ∧ z K w → dom ⁡ z ∈ ω ∧ z ∈ A dom ⁡ z
68 67 simpld ⊢ φ ∧ z K w → dom ⁡ z ∈ ω
69 1 2 3 4 fseqenlem1 ⊢ φ ∧ dom ⁡ z ∈ ω → G ⁡ dom ⁡ z : A dom ⁡ z ⟶ 1-1 A
70 68 69 syldan ⊢ φ ∧ z K w → G ⁡ dom ⁡ z : A dom ⁡ z ⟶ 1-1 A
71 f1f1orn ⊢ G ⁡ dom ⁡ z : A dom ⁡ z ⟶ 1-1 A → G ⁡ dom ⁡ z : A dom ⁡ z ⟶ 1-1 onto ran ⁡ G ⁡ dom ⁡ z
72 70 71 syl ⊢ φ ∧ z K w → G ⁡ dom ⁡ z : A dom ⁡ z ⟶ 1-1 onto ran ⁡ G ⁡ dom ⁡ z
73 67 simprd ⊢ φ ∧ z K w → z ∈ A dom ⁡ z
74 f1ocnvfv1 ⊢ G ⁡ dom ⁡ z : A dom ⁡ z ⟶ 1-1 onto ran ⁡ G ⁡ dom ⁡ z ∧ z ∈ A dom ⁡ z → G ⁡ dom ⁡ z -1 ⁡ G ⁡ dom ⁡ z ⁡ z = z
75 72 73 74 syl2anc ⊢ φ ∧ z K w → G ⁡ dom ⁡ z -1 ⁡ G ⁡ dom ⁡ z ⁡ z = z
76 54 75 eqtr2d ⊢ φ ∧ z K w → z = G ⁡ 1 st ⁡ w -1 ⁡ 2 nd ⁡ w
77 76 ex ⊢ φ → z K w → z = G ⁡ 1 st ⁡ w -1 ⁡ 2 nd ⁡ w
78 77 alrimiv ⊢ φ → ∀ z z K w → z = G ⁡ 1 st ⁡ w -1 ⁡ 2 nd ⁡ w
79 mo2icl ⊢ ∀ z z K w → z = G ⁡ 1 st ⁡ w -1 ⁡ 2 nd ⁡ w → ∃* z z K w
80 78 79 syl ⊢ φ → ∃* z z K w
81 80 alrimiv ⊢ φ → ∀ w ∃* z z K w
82 dff12 ⊢ K : ⋃ k ∈ ω A k ⟶ 1-1 ω × A ↔ K : ⋃ k ∈ ω A k ⟶ ω × A ∧ ∀ w ∃* z z K w
83 25 81 82 sylanbrc ⊢ φ → K : ⋃ k ∈ ω A k ⟶ 1-1 ω × A