Metamath Proof Explorer


Theorem founiiun0

Description: Union expressed as an indexed union, when a map onto is given. (Contributed by Glauco Siliprandi, 17-Aug-2020)

Ref Expression
Assertion founiiun0 ⊢ F : A ⟶ onto B ∪ ∅ → ⋃ B = ⋃ x ∈ A F ⁡ x

Proof

Step Hyp Ref Expression
1 uniiun ⊢ ⋃ B = ⋃ y ∈ B y
2 elun1 ⊢ y ∈ B → y ∈ B ∪ ∅
3 foelcdmi ⊢ F : A ⟶ onto B ∪ ∅ ∧ y ∈ B ∪ ∅ → ∃ x ∈ A F ⁡ x = y
4 2 3 sylan2 ⊢ F : A ⟶ onto B ∪ ∅ ∧ y ∈ B → ∃ x ∈ A F ⁡ x = y
5 eqimss2 ⊢ F ⁡ x = y → y ⊆ F ⁡ x
6 5 reximi ⊢ ∃ x ∈ A F ⁡ x = y → ∃ x ∈ A y ⊆ F ⁡ x
7 4 6 syl ⊢ F : A ⟶ onto B ∪ ∅ ∧ y ∈ B → ∃ x ∈ A y ⊆ F ⁡ x
8 7 ralrimiva ⊢ F : A ⟶ onto B ∪ ∅ → ∀ y ∈ B ∃ x ∈ A y ⊆ F ⁡ x
9 iunss2 ⊢ ∀ y ∈ B ∃ x ∈ A y ⊆ F ⁡ x → ⋃ y ∈ B y ⊆ ⋃ x ∈ A F ⁡ x
10 8 9 syl ⊢ F : A ⟶ onto B ∪ ∅ → ⋃ y ∈ B y ⊆ ⋃ x ∈ A F ⁡ x
11 simpl ⊢ F : A ⟶ onto B ∪ ∅ ∧ B = ∅ → F : A ⟶ onto B ∪ ∅
12 uneq1 ⊢ B = ∅ → B ∪ ∅ = ∅ ∪ ∅
13 0un ⊢ ∅ ∪ ∅ = ∅
14 12 13 eqtrdi ⊢ B = ∅ → B ∪ ∅ = ∅
15 14 adantl ⊢ F : A ⟶ onto B ∪ ∅ ∧ B = ∅ → B ∪ ∅ = ∅
16 foeq3 ⊢ B ∪ ∅ = ∅ → F : A ⟶ onto B ∪ ∅ ↔ F : A ⟶ onto ∅
17 15 16 syl ⊢ F : A ⟶ onto B ∪ ∅ ∧ B = ∅ → F : A ⟶ onto B ∪ ∅ ↔ F : A ⟶ onto ∅
18 11 17 mpbid ⊢ F : A ⟶ onto B ∪ ∅ ∧ B = ∅ → F : A ⟶ onto ∅
19 founiiun ⊢ F : A ⟶ onto ∅ → ⋃ ∅ = ⋃ x ∈ A F ⁡ x
20 unisn0 ⊢ ⋃ ∅ = ∅
21 19 20 eqtr3di ⊢ F : A ⟶ onto ∅ → ⋃ x ∈ A F ⁡ x = ∅
22 0ss ⊢ ∅ ⊆ ⋃ y ∈ B y
23 21 22 eqsstrdi ⊢ F : A ⟶ onto ∅ → ⋃ x ∈ A F ⁡ x ⊆ ⋃ y ∈ B y
24 18 23 syl ⊢ F : A ⟶ onto B ∪ ∅ ∧ B = ∅ → ⋃ x ∈ A F ⁡ x ⊆ ⋃ y ∈ B y
25 ssid ⊢ F ⁡ x ⊆ F ⁡ x
26 sseq2 ⊢ y = F ⁡ x → F ⁡ x ⊆ y ↔ F ⁡ x ⊆ F ⁡ x
27 26 rspcev ⊢ F ⁡ x ∈ B ∧ F ⁡ x ⊆ F ⁡ x → ∃ y ∈ B F ⁡ x ⊆ y
28 25 27 mpan2 ⊢ F ⁡ x ∈ B → ∃ y ∈ B F ⁡ x ⊆ y
29 28 adantl ⊢ F : A ⟶ onto B ∪ ∅ ∧ ¬ B = ∅ ∧ x ∈ A ∧ F ⁡ x ∈ B → ∃ y ∈ B F ⁡ x ⊆ y
30 fof ⊢ F : A ⟶ onto B ∪ ∅ → F : A ⟶ B ∪ ∅
31 30 ffvelcdmda ⊢ F : A ⟶ onto B ∪ ∅ ∧ x ∈ A → F ⁡ x ∈ B ∪ ∅
32 elunnel1 ⊢ F ⁡ x ∈ B ∪ ∅ ∧ ¬ F ⁡ x ∈ B → F ⁡ x ∈ ∅
33 31 32 sylan ⊢ F : A ⟶ onto B ∪ ∅ ∧ x ∈ A ∧ ¬ F ⁡ x ∈ B → F ⁡ x ∈ ∅
34 elsni ⊢ F ⁡ x ∈ ∅ → F ⁡ x = ∅
35 33 34 syl ⊢ F : A ⟶ onto B ∪ ∅ ∧ x ∈ A ∧ ¬ F ⁡ x ∈ B → F ⁡ x = ∅
36 35 adantllr ⊢ F : A ⟶ onto B ∪ ∅ ∧ ¬ B = ∅ ∧ x ∈ A ∧ ¬ F ⁡ x ∈ B → F ⁡ x = ∅
37 neq0 ⊢ ¬ B = ∅ ↔ ∃ y y ∈ B
38 37 birani ⊢ ¬ B = ∅ ∧ F ⁡ x = ∅ → ∃ y y ∈ B
39 id ⊢ F ⁡ x = ∅ → F ⁡ x = ∅
40 0ss ⊢ ∅ ⊆ y
41 39 40 eqsstrdi ⊢ F ⁡ x = ∅ → F ⁡ x ⊆ y
42 41 anim1ci ⊢ F ⁡ x = ∅ ∧ y ∈ B → y ∈ B ∧ F ⁡ x ⊆ y
43 42 ex ⊢ F ⁡ x = ∅ → y ∈ B → y ∈ B ∧ F ⁡ x ⊆ y
44 43 adantl ⊢ ¬ B = ∅ ∧ F ⁡ x = ∅ → y ∈ B → y ∈ B ∧ F ⁡ x ⊆ y
45 44 eximdv ⊢ ¬ B = ∅ ∧ F ⁡ x = ∅ → ∃ y y ∈ B → ∃ y y ∈ B ∧ F ⁡ x ⊆ y
46 38 45 mpd ⊢ ¬ B = ∅ ∧ F ⁡ x = ∅ → ∃ y y ∈ B ∧ F ⁡ x ⊆ y
47 df-rex ⊢ ∃ y ∈ B F ⁡ x ⊆ y ↔ ∃ y y ∈ B ∧ F ⁡ x ⊆ y
48 46 47 sylibr ⊢ ¬ B = ∅ ∧ F ⁡ x = ∅ → ∃ y ∈ B F ⁡ x ⊆ y
49 48 ad4ant24 ⊢ F : A ⟶ onto B ∪ ∅ ∧ ¬ B = ∅ ∧ x ∈ A ∧ F ⁡ x = ∅ → ∃ y ∈ B F ⁡ x ⊆ y
50 36 49 syldan ⊢ F : A ⟶ onto B ∪ ∅ ∧ ¬ B = ∅ ∧ x ∈ A ∧ ¬ F ⁡ x ∈ B → ∃ y ∈ B F ⁡ x ⊆ y
51 29 50 pm2.61dan ⊢ F : A ⟶ onto B ∪ ∅ ∧ ¬ B = ∅ ∧ x ∈ A → ∃ y ∈ B F ⁡ x ⊆ y
52 51 ralrimiva ⊢ F : A ⟶ onto B ∪ ∅ ∧ ¬ B = ∅ → ∀ x ∈ A ∃ y ∈ B F ⁡ x ⊆ y
53 iunss2 ⊢ ∀ x ∈ A ∃ y ∈ B F ⁡ x ⊆ y → ⋃ x ∈ A F ⁡ x ⊆ ⋃ y ∈ B y
54 52 53 syl ⊢ F : A ⟶ onto B ∪ ∅ ∧ ¬ B = ∅ → ⋃ x ∈ A F ⁡ x ⊆ ⋃ y ∈ B y
55 24 54 pm2.61dan ⊢ F : A ⟶ onto B ∪ ∅ → ⋃ x ∈ A F ⁡ x ⊆ ⋃ y ∈ B y
56 10 55 eqssd ⊢ F : A ⟶ onto B ∪ ∅ → ⋃ y ∈ B y = ⋃ x ∈ A F ⁡ x
57 1 56 eqtrid ⊢ F : A ⟶ onto B ∪ ∅ → ⋃ B = ⋃ x ∈ A F ⁡ x