Users' Mathboxes Mathbox for Glauco Siliprandi < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >   Mathboxes  >  founiiun0 Structured version   Visualization version   GIF version

Theorem founiiun0 44557
Description: Union expressed as an indexed union, when a map onto is given. (Contributed by Glauco Siliprandi, 17-Aug-2020.)
Assertion
Ref Expression
founiiun0 (𝐹:𝐴onto→(𝐵 ∪ {∅}) → 𝐵 = 𝑥𝐴 (𝐹𝑥))
Distinct variable groups:   𝑥,𝐴   𝑥,𝐵   𝑥,𝐹

Proof of Theorem founiiun0
Dummy variable 𝑦 is distinct from all other variables.
StepHypRef Expression
1 uniiun 5055 . 2 𝐵 = 𝑦𝐵 𝑦
2 elun1 4172 . . . . . . 7 (𝑦𝐵𝑦 ∈ (𝐵 ∪ {∅}))
3 foelcdmi 6954 . . . . . . 7 ((𝐹:𝐴onto→(𝐵 ∪ {∅}) ∧ 𝑦 ∈ (𝐵 ∪ {∅})) → ∃𝑥𝐴 (𝐹𝑥) = 𝑦)
42, 3sylan2 592 . . . . . 6 ((𝐹:𝐴onto→(𝐵 ∪ {∅}) ∧ 𝑦𝐵) → ∃𝑥𝐴 (𝐹𝑥) = 𝑦)
5 eqimss2 4037 . . . . . . 7 ((𝐹𝑥) = 𝑦𝑦 ⊆ (𝐹𝑥))
65reximi 3080 . . . . . 6 (∃𝑥𝐴 (𝐹𝑥) = 𝑦 → ∃𝑥𝐴 𝑦 ⊆ (𝐹𝑥))
74, 6syl 17 . . . . 5 ((𝐹:𝐴onto→(𝐵 ∪ {∅}) ∧ 𝑦𝐵) → ∃𝑥𝐴 𝑦 ⊆ (𝐹𝑥))
87ralrimiva 3142 . . . 4 (𝐹:𝐴onto→(𝐵 ∪ {∅}) → ∀𝑦𝐵𝑥𝐴 𝑦 ⊆ (𝐹𝑥))
9 iunss2 5046 . . . 4 (∀𝑦𝐵𝑥𝐴 𝑦 ⊆ (𝐹𝑥) → 𝑦𝐵 𝑦 𝑥𝐴 (𝐹𝑥))
108, 9syl 17 . . 3 (𝐹:𝐴onto→(𝐵 ∪ {∅}) → 𝑦𝐵 𝑦 𝑥𝐴 (𝐹𝑥))
11 simpl 482 . . . . . 6 ((𝐹:𝐴onto→(𝐵 ∪ {∅}) ∧ 𝐵 = ∅) → 𝐹:𝐴onto→(𝐵 ∪ {∅}))
12 uneq1 4152 . . . . . . . . 9 (𝐵 = ∅ → (𝐵 ∪ {∅}) = (∅ ∪ {∅}))
13 0un 4388 . . . . . . . . 9 (∅ ∪ {∅}) = {∅}
1412, 13eqtrdi 2784 . . . . . . . 8 (𝐵 = ∅ → (𝐵 ∪ {∅}) = {∅})
1514adantl 481 . . . . . . 7 ((𝐹:𝐴onto→(𝐵 ∪ {∅}) ∧ 𝐵 = ∅) → (𝐵 ∪ {∅}) = {∅})
16 foeq3 6803 . . . . . . 7 ((𝐵 ∪ {∅}) = {∅} → (𝐹:𝐴onto→(𝐵 ∪ {∅}) ↔ 𝐹:𝐴onto→{∅}))
1715, 16syl 17 . . . . . 6 ((𝐹:𝐴onto→(𝐵 ∪ {∅}) ∧ 𝐵 = ∅) → (𝐹:𝐴onto→(𝐵 ∪ {∅}) ↔ 𝐹:𝐴onto→{∅}))
1811, 17mpbid 231 . . . . 5 ((𝐹:𝐴onto→(𝐵 ∪ {∅}) ∧ 𝐵 = ∅) → 𝐹:𝐴onto→{∅})
19 founiiun 44546 . . . . . . 7 (𝐹:𝐴onto→{∅} → {∅} = 𝑥𝐴 (𝐹𝑥))
20 unisn0 44412 . . . . . . 7 {∅} = ∅
2119, 20eqtr3di 2783 . . . . . 6 (𝐹:𝐴onto→{∅} → 𝑥𝐴 (𝐹𝑥) = ∅)
22 0ss 4392 . . . . . 6 ∅ ⊆ 𝑦𝐵 𝑦
2321, 22eqsstrdi 4032 . . . . 5 (𝐹:𝐴onto→{∅} → 𝑥𝐴 (𝐹𝑥) ⊆ 𝑦𝐵 𝑦)
2418, 23syl 17 . . . 4 ((𝐹:𝐴onto→(𝐵 ∪ {∅}) ∧ 𝐵 = ∅) → 𝑥𝐴 (𝐹𝑥) ⊆ 𝑦𝐵 𝑦)
25 ssid 4000 . . . . . . . . 9 (𝐹𝑥) ⊆ (𝐹𝑥)
26 sseq2 4004 . . . . . . . . . 10 (𝑦 = (𝐹𝑥) → ((𝐹𝑥) ⊆ 𝑦 ↔ (𝐹𝑥) ⊆ (𝐹𝑥)))
2726rspcev 3608 . . . . . . . . 9 (((𝐹𝑥) ∈ 𝐵 ∧ (𝐹𝑥) ⊆ (𝐹𝑥)) → ∃𝑦𝐵 (𝐹𝑥) ⊆ 𝑦)
2825, 27mpan2 690 . . . . . . . 8 ((𝐹𝑥) ∈ 𝐵 → ∃𝑦𝐵 (𝐹𝑥) ⊆ 𝑦)
2928adantl 481 . . . . . . 7 ((((𝐹:𝐴onto→(𝐵 ∪ {∅}) ∧ ¬ 𝐵 = ∅) ∧ 𝑥𝐴) ∧ (𝐹𝑥) ∈ 𝐵) → ∃𝑦𝐵 (𝐹𝑥) ⊆ 𝑦)
30 fof 6805 . . . . . . . . . . . 12 (𝐹:𝐴onto→(𝐵 ∪ {∅}) → 𝐹:𝐴⟶(𝐵 ∪ {∅}))
3130ffvelcdmda 7088 . . . . . . . . . . 11 ((𝐹:𝐴onto→(𝐵 ∪ {∅}) ∧ 𝑥𝐴) → (𝐹𝑥) ∈ (𝐵 ∪ {∅}))
32 elunnel1 4145 . . . . . . . . . . 11 (((𝐹𝑥) ∈ (𝐵 ∪ {∅}) ∧ ¬ (𝐹𝑥) ∈ 𝐵) → (𝐹𝑥) ∈ {∅})
3331, 32sylan 579 . . . . . . . . . 10 (((𝐹:𝐴onto→(𝐵 ∪ {∅}) ∧ 𝑥𝐴) ∧ ¬ (𝐹𝑥) ∈ 𝐵) → (𝐹𝑥) ∈ {∅})
34 elsni 4641 . . . . . . . . . 10 ((𝐹𝑥) ∈ {∅} → (𝐹𝑥) = ∅)
3533, 34syl 17 . . . . . . . . 9 (((𝐹:𝐴onto→(𝐵 ∪ {∅}) ∧ 𝑥𝐴) ∧ ¬ (𝐹𝑥) ∈ 𝐵) → (𝐹𝑥) = ∅)
3635adantllr 718 . . . . . . . 8 ((((𝐹:𝐴onto→(𝐵 ∪ {∅}) ∧ ¬ 𝐵 = ∅) ∧ 𝑥𝐴) ∧ ¬ (𝐹𝑥) ∈ 𝐵) → (𝐹𝑥) = ∅)
37 neq0 4341 . . . . . . . . . . . . 13 𝐵 = ∅ ↔ ∃𝑦 𝑦𝐵)
3837biimpi 215 . . . . . . . . . . . 12 𝐵 = ∅ → ∃𝑦 𝑦𝐵)
3938adantr 480 . . . . . . . . . . 11 ((¬ 𝐵 = ∅ ∧ (𝐹𝑥) = ∅) → ∃𝑦 𝑦𝐵)
40 id 22 . . . . . . . . . . . . . . . 16 ((𝐹𝑥) = ∅ → (𝐹𝑥) = ∅)
41 0ss 4392 . . . . . . . . . . . . . . . 16 ∅ ⊆ 𝑦
4240, 41eqsstrdi 4032 . . . . . . . . . . . . . . 15 ((𝐹𝑥) = ∅ → (𝐹𝑥) ⊆ 𝑦)
4342anim1ci 615 . . . . . . . . . . . . . 14 (((𝐹𝑥) = ∅ ∧ 𝑦𝐵) → (𝑦𝐵 ∧ (𝐹𝑥) ⊆ 𝑦))
4443ex 412 . . . . . . . . . . . . 13 ((𝐹𝑥) = ∅ → (𝑦𝐵 → (𝑦𝐵 ∧ (𝐹𝑥) ⊆ 𝑦)))
4544adantl 481 . . . . . . . . . . . 12 ((¬ 𝐵 = ∅ ∧ (𝐹𝑥) = ∅) → (𝑦𝐵 → (𝑦𝐵 ∧ (𝐹𝑥) ⊆ 𝑦)))
4645eximdv 1913 . . . . . . . . . . 11 ((¬ 𝐵 = ∅ ∧ (𝐹𝑥) = ∅) → (∃𝑦 𝑦𝐵 → ∃𝑦(𝑦𝐵 ∧ (𝐹𝑥) ⊆ 𝑦)))
4739, 46mpd 15 . . . . . . . . . 10 ((¬ 𝐵 = ∅ ∧ (𝐹𝑥) = ∅) → ∃𝑦(𝑦𝐵 ∧ (𝐹𝑥) ⊆ 𝑦))
48 df-rex 3067 . . . . . . . . . 10 (∃𝑦𝐵 (𝐹𝑥) ⊆ 𝑦 ↔ ∃𝑦(𝑦𝐵 ∧ (𝐹𝑥) ⊆ 𝑦))
4947, 48sylibr 233 . . . . . . . . 9 ((¬ 𝐵 = ∅ ∧ (𝐹𝑥) = ∅) → ∃𝑦𝐵 (𝐹𝑥) ⊆ 𝑦)
5049ad4ant24 753 . . . . . . . 8 ((((𝐹:𝐴onto→(𝐵 ∪ {∅}) ∧ ¬ 𝐵 = ∅) ∧ 𝑥𝐴) ∧ (𝐹𝑥) = ∅) → ∃𝑦𝐵 (𝐹𝑥) ⊆ 𝑦)
5136, 50syldan 590 . . . . . . 7 ((((𝐹:𝐴onto→(𝐵 ∪ {∅}) ∧ ¬ 𝐵 = ∅) ∧ 𝑥𝐴) ∧ ¬ (𝐹𝑥) ∈ 𝐵) → ∃𝑦𝐵 (𝐹𝑥) ⊆ 𝑦)
5229, 51pm2.61dan 812 . . . . . 6 (((𝐹:𝐴onto→(𝐵 ∪ {∅}) ∧ ¬ 𝐵 = ∅) ∧ 𝑥𝐴) → ∃𝑦𝐵 (𝐹𝑥) ⊆ 𝑦)
5352ralrimiva 3142 . . . . 5 ((𝐹:𝐴onto→(𝐵 ∪ {∅}) ∧ ¬ 𝐵 = ∅) → ∀𝑥𝐴𝑦𝐵 (𝐹𝑥) ⊆ 𝑦)
54 iunss2 5046 . . . . 5 (∀𝑥𝐴𝑦𝐵 (𝐹𝑥) ⊆ 𝑦 𝑥𝐴 (𝐹𝑥) ⊆ 𝑦𝐵 𝑦)
5553, 54syl 17 . . . 4 ((𝐹:𝐴onto→(𝐵 ∪ {∅}) ∧ ¬ 𝐵 = ∅) → 𝑥𝐴 (𝐹𝑥) ⊆ 𝑦𝐵 𝑦)
5624, 55pm2.61dan 812 . . 3 (𝐹:𝐴onto→(𝐵 ∪ {∅}) → 𝑥𝐴 (𝐹𝑥) ⊆ 𝑦𝐵 𝑦)
5710, 56eqssd 3995 . 2 (𝐹:𝐴onto→(𝐵 ∪ {∅}) → 𝑦𝐵 𝑦 = 𝑥𝐴 (𝐹𝑥))
581, 57eqtrid 2780 1 (𝐹:𝐴onto→(𝐵 ∪ {∅}) → 𝐵 = 𝑥𝐴 (𝐹𝑥))
Colors of variables: wff setvar class
Syntax hints:  ¬ wn 3  wi 4  wb 205  wa 395   = wceq 1534  wex 1774  wcel 2099  wral 3057  wrex 3066  cun 3943  wss 3945  c0 4318  {csn 4624   cuni 4903   ciun 4991  ontowfo 6540  cfv 6542
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1790  ax-4 1804  ax-5 1906  ax-6 1964  ax-7 2004  ax-8 2101  ax-9 2109  ax-10 2130  ax-11 2147  ax-12 2167  ax-ext 2699  ax-sep 5293  ax-nul 5300  ax-pr 5423
This theorem depends on definitions:  df-bi 206  df-an 396  df-or 847  df-3an 1087  df-tru 1537  df-fal 1547  df-ex 1775  df-nf 1779  df-sb 2061  df-mo 2530  df-eu 2559  df-clab 2706  df-cleq 2720  df-clel 2806  df-nfc 2881  df-ne 2937  df-ral 3058  df-rex 3067  df-rab 3429  df-v 3472  df-dif 3948  df-un 3950  df-in 3952  df-ss 3962  df-nul 4319  df-if 4525  df-sn 4625  df-pr 4627  df-op 4631  df-uni 4904  df-iun 4993  df-br 5143  df-opab 5205  df-mpt 5226  df-id 5570  df-xp 5678  df-rel 5679  df-cnv 5680  df-co 5681  df-dm 5682  df-rn 5683  df-iota 6494  df-fun 6544  df-fn 6545  df-f 6546  df-fo 6548  df-fv 6550
This theorem is referenced by:  ismeannd  45849
  Copyright terms: Public domain W3C validator
OSZAR »