Metamath Proof Explorer


Theorem acunirnmpt2

Description: Axiom of choice for the union of the range of a mapping to function. (Contributed by Thierry Arnoux, 7-Nov-2019)

Ref Expression
Hypotheses acunirnmpt.0 ⊢ φ → A ∈ V
acunirnmpt.1 ⊢ φ ∧ j ∈ A → B ≠ ∅
acunirnmpt2.2 ⊢ C = ⋃ ran ⁡ j ∈ A ⟼ B
acunirnmpt2.3 ⊢ j = f ⁡ x → B = D
Assertion acunirnmpt2 ⊢ φ → ∃ f f : C ⟶ A ∧ ∀ x ∈ C x ∈ D

Proof

Step Hyp Ref Expression
1 acunirnmpt.0 ⊢ φ → A ∈ V
2 acunirnmpt.1 ⊢ φ ∧ j ∈ A → B ≠ ∅
3 acunirnmpt2.2 ⊢ C = ⋃ ran ⁡ j ∈ A ⟼ B
4 acunirnmpt2.3 ⊢ j = f ⁡ x → B = D
5 simplr ⊢ φ ∧ x ∈ C ∧ y ∈ ran ⁡ j ∈ A ⟼ B ∧ x ∈ y → y ∈ ran ⁡ j ∈ A ⟼ B
6 vex ⊢ y ∈ V
7 eqid ⊢ j ∈ A ⟼ B = j ∈ A ⟼ B
8 7 elrnmpt ⊢ y ∈ V → y ∈ ran ⁡ j ∈ A ⟼ B ↔ ∃ j ∈ A y = B
9 6 8 ax-mp ⊢ y ∈ ran ⁡ j ∈ A ⟼ B ↔ ∃ j ∈ A y = B
10 5 9 sylib ⊢ φ ∧ x ∈ C ∧ y ∈ ran ⁡ j ∈ A ⟼ B ∧ x ∈ y → ∃ j ∈ A y = B
11 nfv ⊢ Ⅎ j φ ∧ x ∈ C
12 nfcv ⊢ Ⅎ _ j y
13 nfmpt1 ⊢ Ⅎ _ j j ∈ A ⟼ B
14 13 nfrn ⊢ Ⅎ _ j ran ⁡ j ∈ A ⟼ B
15 12 14 nfel ⊢ Ⅎ j y ∈ ran ⁡ j ∈ A ⟼ B
16 11 15 nfan ⊢ Ⅎ j φ ∧ x ∈ C ∧ y ∈ ran ⁡ j ∈ A ⟼ B
17 nfv ⊢ Ⅎ j x ∈ y
18 16 17 nfan ⊢ Ⅎ j φ ∧ x ∈ C ∧ y ∈ ran ⁡ j ∈ A ⟼ B ∧ x ∈ y
19 simpllr ⊢ φ ∧ x ∈ C ∧ y ∈ ran ⁡ j ∈ A ⟼ B ∧ x ∈ y ∧ j ∈ A ∧ y = B → x ∈ y
20 simpr ⊢ φ ∧ x ∈ C ∧ y ∈ ran ⁡ j ∈ A ⟼ B ∧ x ∈ y ∧ j ∈ A ∧ y = B → y = B
21 19 20 eleqtrd ⊢ φ ∧ x ∈ C ∧ y ∈ ran ⁡ j ∈ A ⟼ B ∧ x ∈ y ∧ j ∈ A ∧ y = B → x ∈ B
22 21 ex ⊢ φ ∧ x ∈ C ∧ y ∈ ran ⁡ j ∈ A ⟼ B ∧ x ∈ y ∧ j ∈ A → y = B → x ∈ B
23 22 ex ⊢ φ ∧ x ∈ C ∧ y ∈ ran ⁡ j ∈ A ⟼ B ∧ x ∈ y → j ∈ A → y = B → x ∈ B
24 18 23 reximdai ⊢ φ ∧ x ∈ C ∧ y ∈ ran ⁡ j ∈ A ⟼ B ∧ x ∈ y → ∃ j ∈ A y = B → ∃ j ∈ A x ∈ B
25 10 24 mpd ⊢ φ ∧ x ∈ C ∧ y ∈ ran ⁡ j ∈ A ⟼ B ∧ x ∈ y → ∃ j ∈ A x ∈ B
26 3 eleq2i ⊢ x ∈ C ↔ x ∈ ⋃ ran ⁡ j ∈ A ⟼ B
27 26 biimpi ⊢ x ∈ C → x ∈ ⋃ ran ⁡ j ∈ A ⟼ B
28 eluni2 ⊢ x ∈ ⋃ ran ⁡ j ∈ A ⟼ B ↔ ∃ y ∈ ran ⁡ j ∈ A ⟼ B x ∈ y
29 27 28 sylib ⊢ x ∈ C → ∃ y ∈ ran ⁡ j ∈ A ⟼ B x ∈ y
30 29 adantl ⊢ φ ∧ x ∈ C → ∃ y ∈ ran ⁡ j ∈ A ⟼ B x ∈ y
31 25 30 r19.29a ⊢ φ ∧ x ∈ C → ∃ j ∈ A x ∈ B
32 31 ralrimiva ⊢ φ → ∀ x ∈ C ∃ j ∈ A x ∈ B
33 mptexg ⊢ A ∈ V → j ∈ A ⟼ B ∈ V
34 rnexg ⊢ j ∈ A ⟼ B ∈ V → ran ⁡ j ∈ A ⟼ B ∈ V
35 uniexg ⊢ ran ⁡ j ∈ A ⟼ B ∈ V → ⋃ ran ⁡ j ∈ A ⟼ B ∈ V
36 1 33 34 35 4syl ⊢ φ → ⋃ ran ⁡ j ∈ A ⟼ B ∈ V
37 3 36 eqeltrid ⊢ φ → C ∈ V
38 id ⊢ c = C → c = C
39 38 raleqdv ⊢ c = C → ∀ x ∈ c ∃ j ∈ A x ∈ B ↔ ∀ x ∈ C ∃ j ∈ A x ∈ B
40 38 feq2d ⊢ c = C → f : c ⟶ A ↔ f : C ⟶ A
41 38 raleqdv ⊢ c = C → ∀ x ∈ c x ∈ D ↔ ∀ x ∈ C x ∈ D
42 40 41 anbi12d ⊢ c = C → f : c ⟶ A ∧ ∀ x ∈ c x ∈ D ↔ f : C ⟶ A ∧ ∀ x ∈ C x ∈ D
43 42 exbidv ⊢ c = C → ∃ f f : c ⟶ A ∧ ∀ x ∈ c x ∈ D ↔ ∃ f f : C ⟶ A ∧ ∀ x ∈ C x ∈ D
44 39 43 imbi12d ⊢ c = C → ∀ x ∈ c ∃ j ∈ A x ∈ B → ∃ f f : c ⟶ A ∧ ∀ x ∈ c x ∈ D ↔ ∀ x ∈ C ∃ j ∈ A x ∈ B → ∃ f f : C ⟶ A ∧ ∀ x ∈ C x ∈ D
45 vex ⊢ c ∈ V
46 4 eleq2d ⊢ j = f ⁡ x → x ∈ B ↔ x ∈ D
47 45 46 ac6s ⊢ ∀ x ∈ c ∃ j ∈ A x ∈ B → ∃ f f : c ⟶ A ∧ ∀ x ∈ c x ∈ D
48 44 47 vtoclg ⊢ C ∈ V → ∀ x ∈ C ∃ j ∈ A x ∈ B → ∃ f f : C ⟶ A ∧ ∀ x ∈ C x ∈ D
49 37 48 syl ⊢ φ → ∀ x ∈ C ∃ j ∈ A x ∈ B → ∃ f f : C ⟶ A ∧ ∀ x ∈ C x ∈ D
50 32 49 mpd ⊢ φ → ∃ f f : C ⟶ A ∧ ∀ x ∈ C x ∈ D