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 38372
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 4509 . . 3 𝐵 = 𝑦𝐵 𝑦
21a1i 11 . 2 (𝐹:𝐴onto→(𝐵 ∪ {∅}) → 𝐵 = 𝑦𝐵 𝑦)
3 simpl 472 . . . . . . 7 ((𝐹:𝐴onto→(𝐵 ∪ {∅}) ∧ 𝑦𝐵) → 𝐹:𝐴onto→(𝐵 ∪ {∅}))
4 elun1 3742 . . . . . . . 8 (𝑦𝐵𝑦 ∈ (𝐵 ∪ {∅}))
54adantl 481 . . . . . . 7 ((𝐹:𝐴onto→(𝐵 ∪ {∅}) ∧ 𝑦𝐵) → 𝑦 ∈ (𝐵 ∪ {∅}))
6 foelrni 6154 . . . . . . 7 ((𝐹:𝐴onto→(𝐵 ∪ {∅}) ∧ 𝑦 ∈ (𝐵 ∪ {∅})) → ∃𝑥𝐴 (𝐹𝑥) = 𝑦)
73, 5, 6syl2anc 691 . . . . . 6 ((𝐹:𝐴onto→(𝐵 ∪ {∅}) ∧ 𝑦𝐵) → ∃𝑥𝐴 (𝐹𝑥) = 𝑦)
8 eqimss2 3621 . . . . . . 7 ((𝐹𝑥) = 𝑦𝑦 ⊆ (𝐹𝑥))
98reximi 2994 . . . . . 6 (∃𝑥𝐴 (𝐹𝑥) = 𝑦 → ∃𝑥𝐴 𝑦 ⊆ (𝐹𝑥))
107, 9syl 17 . . . . 5 ((𝐹:𝐴onto→(𝐵 ∪ {∅}) ∧ 𝑦𝐵) → ∃𝑥𝐴 𝑦 ⊆ (𝐹𝑥))
1110ralrimiva 2949 . . . 4 (𝐹:𝐴onto→(𝐵 ∪ {∅}) → ∀𝑦𝐵𝑥𝐴 𝑦 ⊆ (𝐹𝑥))
12 iunss2 4501 . . . 4 (∀𝑦𝐵𝑥𝐴 𝑦 ⊆ (𝐹𝑥) → 𝑦𝐵 𝑦 𝑥𝐴 (𝐹𝑥))
1311, 12syl 17 . . 3 (𝐹:𝐴onto→(𝐵 ∪ {∅}) → 𝑦𝐵 𝑦 𝑥𝐴 (𝐹𝑥))
14 simpl 472 . . . . . 6 ((𝐹:𝐴onto→(𝐵 ∪ {∅}) ∧ 𝐵 = ∅) → 𝐹:𝐴onto→(𝐵 ∪ {∅}))
15 uneq1 3722 . . . . . . . . 9 (𝐵 = ∅ → (𝐵 ∪ {∅}) = (∅ ∪ {∅}))
16 0un 38240 . . . . . . . . . 10 (∅ ∪ {∅}) = {∅}
1716a1i 11 . . . . . . . . 9 (𝐵 = ∅ → (∅ ∪ {∅}) = {∅})
1815, 17eqtrd 2644 . . . . . . . 8 (𝐵 = ∅ → (𝐵 ∪ {∅}) = {∅})
1918adantl 481 . . . . . . 7 ((𝐹:𝐴onto→(𝐵 ∪ {∅}) ∧ 𝐵 = ∅) → (𝐵 ∪ {∅}) = {∅})
20 foeq3 6026 . . . . . . 7 ((𝐵 ∪ {∅}) = {∅} → (𝐹:𝐴onto→(𝐵 ∪ {∅}) ↔ 𝐹:𝐴onto→{∅}))
2119, 20syl 17 . . . . . 6 ((𝐹:𝐴onto→(𝐵 ∪ {∅}) ∧ 𝐵 = ∅) → (𝐹:𝐴onto→(𝐵 ∪ {∅}) ↔ 𝐹:𝐴onto→{∅}))
2214, 21mpbid 221 . . . . 5 ((𝐹:𝐴onto→(𝐵 ∪ {∅}) ∧ 𝐵 = ∅) → 𝐹:𝐴onto→{∅})
23 unisn0 38247 . . . . . . . . 9 {∅} = ∅
2423eqcomi 2619 . . . . . . . 8 ∅ = {∅}
2524a1i 11 . . . . . . 7 (𝐹:𝐴onto→{∅} → ∅ = {∅})
26 founiiun 38355 . . . . . . 7 (𝐹:𝐴onto→{∅} → {∅} = 𝑥𝐴 (𝐹𝑥))
2725, 26eqtr2d 2645 . . . . . 6 (𝐹:𝐴onto→{∅} → 𝑥𝐴 (𝐹𝑥) = ∅)
28 0ss 3924 . . . . . . 7 ∅ ⊆ 𝑦𝐵 𝑦
2928a1i 11 . . . . . 6 (𝐹:𝐴onto→{∅} → ∅ ⊆ 𝑦𝐵 𝑦)
3027, 29eqsstrd 3602 . . . . 5 (𝐹:𝐴onto→{∅} → 𝑥𝐴 (𝐹𝑥) ⊆ 𝑦𝐵 𝑦)
3122, 30syl 17 . . . 4 ((𝐹:𝐴onto→(𝐵 ∪ {∅}) ∧ 𝐵 = ∅) → 𝑥𝐴 (𝐹𝑥) ⊆ 𝑦𝐵 𝑦)
32 ssid 3587 . . . . . . . . 9 (𝐹𝑥) ⊆ (𝐹𝑥)
33 sseq2 3590 . . . . . . . . . 10 (𝑦 = (𝐹𝑥) → ((𝐹𝑥) ⊆ 𝑦 ↔ (𝐹𝑥) ⊆ (𝐹𝑥)))
3433rspcev 3282 . . . . . . . . 9 (((𝐹𝑥) ∈ 𝐵 ∧ (𝐹𝑥) ⊆ (𝐹𝑥)) → ∃𝑦𝐵 (𝐹𝑥) ⊆ 𝑦)
3532, 34mpan2 703 . . . . . . . 8 ((𝐹𝑥) ∈ 𝐵 → ∃𝑦𝐵 (𝐹𝑥) ⊆ 𝑦)
3635adantl 481 . . . . . . 7 ((((𝐹:𝐴onto→(𝐵 ∪ {∅}) ∧ ¬ 𝐵 = ∅) ∧ 𝑥𝐴) ∧ (𝐹𝑥) ∈ 𝐵) → ∃𝑦𝐵 (𝐹𝑥) ⊆ 𝑦)
37 simpl 472 . . . . . . . 8 ((((𝐹:𝐴onto→(𝐵 ∪ {∅}) ∧ ¬ 𝐵 = ∅) ∧ 𝑥𝐴) ∧ ¬ (𝐹𝑥) ∈ 𝐵) → ((𝐹:𝐴onto→(𝐵 ∪ {∅}) ∧ ¬ 𝐵 = ∅) ∧ 𝑥𝐴))
38 fof 6028 . . . . . . . . . . . . 13 (𝐹:𝐴onto→(𝐵 ∪ {∅}) → 𝐹:𝐴⟶(𝐵 ∪ {∅}))
3938ffvelrnda 6267 . . . . . . . . . . . 12 ((𝐹:𝐴onto→(𝐵 ∪ {∅}) ∧ 𝑥𝐴) → (𝐹𝑥) ∈ (𝐵 ∪ {∅}))
4039adantr 480 . . . . . . . . . . 11 (((𝐹:𝐴onto→(𝐵 ∪ {∅}) ∧ 𝑥𝐴) ∧ ¬ (𝐹𝑥) ∈ 𝐵) → (𝐹𝑥) ∈ (𝐵 ∪ {∅}))
41 simpr 476 . . . . . . . . . . 11 (((𝐹:𝐴onto→(𝐵 ∪ {∅}) ∧ 𝑥𝐴) ∧ ¬ (𝐹𝑥) ∈ 𝐵) → ¬ (𝐹𝑥) ∈ 𝐵)
42 elunnel1 3716 . . . . . . . . . . 11 (((𝐹𝑥) ∈ (𝐵 ∪ {∅}) ∧ ¬ (𝐹𝑥) ∈ 𝐵) → (𝐹𝑥) ∈ {∅})
4340, 41, 42syl2anc 691 . . . . . . . . . 10 (((𝐹:𝐴onto→(𝐵 ∪ {∅}) ∧ 𝑥𝐴) ∧ ¬ (𝐹𝑥) ∈ 𝐵) → (𝐹𝑥) ∈ {∅})
44 elsni 4142 . . . . . . . . . 10 ((𝐹𝑥) ∈ {∅} → (𝐹𝑥) = ∅)
4543, 44syl 17 . . . . . . . . 9 (((𝐹:𝐴onto→(𝐵 ∪ {∅}) ∧ 𝑥𝐴) ∧ ¬ (𝐹𝑥) ∈ 𝐵) → (𝐹𝑥) = ∅)
4645adantllr 751 . . . . . . . 8 ((((𝐹:𝐴onto→(𝐵 ∪ {∅}) ∧ ¬ 𝐵 = ∅) ∧ 𝑥𝐴) ∧ ¬ (𝐹𝑥) ∈ 𝐵) → (𝐹𝑥) = ∅)
47 neq0 3889 . . . . . . . . . . . . 13 𝐵 = ∅ ↔ ∃𝑦 𝑦𝐵)
4847biimpi 205 . . . . . . . . . . . 12 𝐵 = ∅ → ∃𝑦 𝑦𝐵)
4948adantr 480 . . . . . . . . . . 11 ((¬ 𝐵 = ∅ ∧ (𝐹𝑥) = ∅) → ∃𝑦 𝑦𝐵)
50 simpr 476 . . . . . . . . . . . . . . 15 (((𝐹𝑥) = ∅ ∧ 𝑦𝐵) → 𝑦𝐵)
51 id 22 . . . . . . . . . . . . . . . . 17 ((𝐹𝑥) = ∅ → (𝐹𝑥) = ∅)
52 0ss 3924 . . . . . . . . . . . . . . . . . 18 ∅ ⊆ 𝑦
5352a1i 11 . . . . . . . . . . . . . . . . 17 ((𝐹𝑥) = ∅ → ∅ ⊆ 𝑦)
5451, 53eqsstrd 3602 . . . . . . . . . . . . . . . 16 ((𝐹𝑥) = ∅ → (𝐹𝑥) ⊆ 𝑦)
5554adantr 480 . . . . . . . . . . . . . . 15 (((𝐹𝑥) = ∅ ∧ 𝑦𝐵) → (𝐹𝑥) ⊆ 𝑦)
5650, 55jca 553 . . . . . . . . . . . . . 14 (((𝐹𝑥) = ∅ ∧ 𝑦𝐵) → (𝑦𝐵 ∧ (𝐹𝑥) ⊆ 𝑦))
5756ex 449 . . . . . . . . . . . . 13 ((𝐹𝑥) = ∅ → (𝑦𝐵 → (𝑦𝐵 ∧ (𝐹𝑥) ⊆ 𝑦)))
5857adantl 481 . . . . . . . . . . . 12 ((¬ 𝐵 = ∅ ∧ (𝐹𝑥) = ∅) → (𝑦𝐵 → (𝑦𝐵 ∧ (𝐹𝑥) ⊆ 𝑦)))
5958eximdv 1833 . . . . . . . . . . 11 ((¬ 𝐵 = ∅ ∧ (𝐹𝑥) = ∅) → (∃𝑦 𝑦𝐵 → ∃𝑦(𝑦𝐵 ∧ (𝐹𝑥) ⊆ 𝑦)))
6049, 59mpd 15 . . . . . . . . . 10 ((¬ 𝐵 = ∅ ∧ (𝐹𝑥) = ∅) → ∃𝑦(𝑦𝐵 ∧ (𝐹𝑥) ⊆ 𝑦))
61 df-rex 2902 . . . . . . . . . 10 (∃𝑦𝐵 (𝐹𝑥) ⊆ 𝑦 ↔ ∃𝑦(𝑦𝐵 ∧ (𝐹𝑥) ⊆ 𝑦))
6260, 61sylibr 223 . . . . . . . . 9 ((¬ 𝐵 = ∅ ∧ (𝐹𝑥) = ∅) → ∃𝑦𝐵 (𝐹𝑥) ⊆ 𝑦)
6362ad4ant24 1290 . . . . . . . 8 ((((𝐹:𝐴onto→(𝐵 ∪ {∅}) ∧ ¬ 𝐵 = ∅) ∧ 𝑥𝐴) ∧ (𝐹𝑥) = ∅) → ∃𝑦𝐵 (𝐹𝑥) ⊆ 𝑦)
6437, 46, 63syl2anc 691 . . . . . . 7 ((((𝐹:𝐴onto→(𝐵 ∪ {∅}) ∧ ¬ 𝐵 = ∅) ∧ 𝑥𝐴) ∧ ¬ (𝐹𝑥) ∈ 𝐵) → ∃𝑦𝐵 (𝐹𝑥) ⊆ 𝑦)
6536, 64pm2.61dan 828 . . . . . 6 (((𝐹:𝐴onto→(𝐵 ∪ {∅}) ∧ ¬ 𝐵 = ∅) ∧ 𝑥𝐴) → ∃𝑦𝐵 (𝐹𝑥) ⊆ 𝑦)
6665ralrimiva 2949 . . . . 5 ((𝐹:𝐴onto→(𝐵 ∪ {∅}) ∧ ¬ 𝐵 = ∅) → ∀𝑥𝐴𝑦𝐵 (𝐹𝑥) ⊆ 𝑦)
67 iunss2 4501 . . . . 5 (∀𝑥𝐴𝑦𝐵 (𝐹𝑥) ⊆ 𝑦 𝑥𝐴 (𝐹𝑥) ⊆ 𝑦𝐵 𝑦)
6866, 67syl 17 . . . 4 ((𝐹:𝐴onto→(𝐵 ∪ {∅}) ∧ ¬ 𝐵 = ∅) → 𝑥𝐴 (𝐹𝑥) ⊆ 𝑦𝐵 𝑦)
6931, 68pm2.61dan 828 . . 3 (𝐹:𝐴onto→(𝐵 ∪ {∅}) → 𝑥𝐴 (𝐹𝑥) ⊆ 𝑦𝐵 𝑦)
7013, 69eqssd 3585 . 2 (𝐹:𝐴onto→(𝐵 ∪ {∅}) → 𝑦𝐵 𝑦 = 𝑥𝐴 (𝐹𝑥))
712, 70eqtrd 2644 1 (𝐹:𝐴onto→(𝐵 ∪ {∅}) → 𝐵 = 𝑥𝐴 (𝐹𝑥))
Colors of variables: wff setvar class
Syntax hints:  ¬ wn 3  wi 4  wb 195  wa 383   = wceq 1475  wex 1695  wcel 1977  wral 2896  wrex 2897  cun 3538  wss 3540  c0 3874  {csn 4125   cuni 4372   ciun 4455  ontowfo 5802  cfv 5804
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1713  ax-4 1728  ax-5 1827  ax-6 1875  ax-7 1922  ax-9 1986  ax-10 2006  ax-11 2021  ax-12 2034  ax-13 2234  ax-ext 2590  ax-sep 4709  ax-nul 4717  ax-pr 4833
This theorem depends on definitions:  df-bi 196  df-or 384  df-an 385  df-3an 1033  df-tru 1478  df-ex 1696  df-nf 1701  df-sb 1868  df-eu 2462  df-mo 2463  df-clab 2597  df-cleq 2603  df-clel 2606  df-nfc 2740  df-ral 2901  df-rex 2902  df-rab 2905  df-v 3175  df-sbc 3403  df-dif 3543  df-un 3545  df-in 3547  df-ss 3554  df-nul 3875  df-if 4037  df-sn 4126  df-pr 4128  df-op 4132  df-uni 4373  df-iun 4457  df-br 4584  df-opab 4644  df-mpt 4645  df-id 4953  df-xp 5044  df-rel 5045  df-cnv 5046  df-co 5047  df-dm 5048  df-rn 5049  df-iota 5768  df-fun 5806  df-fn 5807  df-f 5808  df-fo 5810  df-fv 5812
This theorem is referenced by:  ismeannd  39360
  Copyright terms: Public domain W3C validator