MPE Home Metamath Proof Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >  djuun Structured version   Visualization version   GIF version

Theorem djuun 9775
Description: The disjoint union of two classes is the union of the images of those two classes under right and left injection. (Contributed by Jim Kingdon, 22-Jun-2022.)
Assertion
Ref Expression
djuun ((inl “ 𝐴) ∪ (inr “ 𝐵)) = (𝐴𝐵)

Proof of Theorem djuun
Dummy variables 𝑥 𝑦 𝑢 𝑧 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 elun 4094 . . . 4 (𝑥 ∈ ((inl “ 𝐴) ∪ (inr “ 𝐵)) ↔ (𝑥 ∈ (inl “ 𝐴) ∨ 𝑥 ∈ (inr “ 𝐵)))
2 djulf1o 9761 . . . . . . . . . . 11 inl:V–1-1-onto→({∅} × V)
3 f1ofn 6762 . . . . . . . . . . 11 (inl:V–1-1-onto→({∅} × V) → inl Fn V)
42, 3ax-mp 5 . . . . . . . . . 10 inl Fn V
5 ssv 3955 . . . . . . . . . 10 𝐴 ⊆ V
6 fvelimab 6891 . . . . . . . . . 10 ((inl Fn V ∧ 𝐴 ⊆ V) → (𝑥 ∈ (inl “ 𝐴) ↔ ∃𝑢𝐴 (inl‘𝑢) = 𝑥))
74, 5, 6mp2an 689 . . . . . . . . 9 (𝑥 ∈ (inl “ 𝐴) ↔ ∃𝑢𝐴 (inl‘𝑢) = 𝑥)
87biimpi 215 . . . . . . . 8 (𝑥 ∈ (inl “ 𝐴) → ∃𝑢𝐴 (inl‘𝑢) = 𝑥)
9 simprr 770 . . . . . . . . 9 ((𝑥 ∈ (inl “ 𝐴) ∧ (𝑢𝐴 ∧ (inl‘𝑢) = 𝑥)) → (inl‘𝑢) = 𝑥)
10 vex 3445 . . . . . . . . . . 11 𝑢 ∈ V
11 opex 5403 . . . . . . . . . . 11 ⟨∅, 𝑢⟩ ∈ V
12 opeq2 4817 . . . . . . . . . . . 12 (𝑧 = 𝑢 → ⟨∅, 𝑧⟩ = ⟨∅, 𝑢⟩)
13 df-inl 9751 . . . . . . . . . . . 12 inl = (𝑧 ∈ V ↦ ⟨∅, 𝑧⟩)
1412, 13fvmptg 6923 . . . . . . . . . . 11 ((𝑢 ∈ V ∧ ⟨∅, 𝑢⟩ ∈ V) → (inl‘𝑢) = ⟨∅, 𝑢⟩)
1510, 11, 14mp2an 689 . . . . . . . . . 10 (inl‘𝑢) = ⟨∅, 𝑢
16 0ex 5248 . . . . . . . . . . . . 13 ∅ ∈ V
1716snid 4608 . . . . . . . . . . . 12 ∅ ∈ {∅}
18 opelxpi 5651 . . . . . . . . . . . 12 ((∅ ∈ {∅} ∧ 𝑢𝐴) → ⟨∅, 𝑢⟩ ∈ ({∅} × 𝐴))
1917, 18mpan 687 . . . . . . . . . . 11 (𝑢𝐴 → ⟨∅, 𝑢⟩ ∈ ({∅} × 𝐴))
2019ad2antrl 725 . . . . . . . . . 10 ((𝑥 ∈ (inl “ 𝐴) ∧ (𝑢𝐴 ∧ (inl‘𝑢) = 𝑥)) → ⟨∅, 𝑢⟩ ∈ ({∅} × 𝐴))
2115, 20eqeltrid 2841 . . . . . . . . 9 ((𝑥 ∈ (inl “ 𝐴) ∧ (𝑢𝐴 ∧ (inl‘𝑢) = 𝑥)) → (inl‘𝑢) ∈ ({∅} × 𝐴))
229, 21eqeltrrd 2838 . . . . . . . 8 ((𝑥 ∈ (inl “ 𝐴) ∧ (𝑢𝐴 ∧ (inl‘𝑢) = 𝑥)) → 𝑥 ∈ ({∅} × 𝐴))
238, 22rexlimddv 3154 . . . . . . 7 (𝑥 ∈ (inl “ 𝐴) → 𝑥 ∈ ({∅} × 𝐴))
24 elun1 4122 . . . . . . 7 (𝑥 ∈ ({∅} × 𝐴) → 𝑥 ∈ (({∅} × 𝐴) ∪ ({1o} × 𝐵)))
2523, 24syl 17 . . . . . 6 (𝑥 ∈ (inl “ 𝐴) → 𝑥 ∈ (({∅} × 𝐴) ∪ ({1o} × 𝐵)))
26 df-dju 9750 . . . . . 6 (𝐴𝐵) = (({∅} × 𝐴) ∪ ({1o} × 𝐵))
2725, 26eleqtrrdi 2848 . . . . 5 (𝑥 ∈ (inl “ 𝐴) → 𝑥 ∈ (𝐴𝐵))
28 djurf1o 9762 . . . . . . . . . . 11 inr:V–1-1-onto→({1o} × V)
29 f1ofn 6762 . . . . . . . . . . 11 (inr:V–1-1-onto→({1o} × V) → inr Fn V)
3028, 29ax-mp 5 . . . . . . . . . 10 inr Fn V
31 ssv 3955 . . . . . . . . . 10 𝐵 ⊆ V
32 fvelimab 6891 . . . . . . . . . 10 ((inr Fn V ∧ 𝐵 ⊆ V) → (𝑥 ∈ (inr “ 𝐵) ↔ ∃𝑢𝐵 (inr‘𝑢) = 𝑥))
3330, 31, 32mp2an 689 . . . . . . . . 9 (𝑥 ∈ (inr “ 𝐵) ↔ ∃𝑢𝐵 (inr‘𝑢) = 𝑥)
3433biimpi 215 . . . . . . . 8 (𝑥 ∈ (inr “ 𝐵) → ∃𝑢𝐵 (inr‘𝑢) = 𝑥)
35 simprr 770 . . . . . . . . 9 ((𝑥 ∈ (inr “ 𝐵) ∧ (𝑢𝐵 ∧ (inr‘𝑢) = 𝑥)) → (inr‘𝑢) = 𝑥)
36 opex 5403 . . . . . . . . . . 11 ⟨1o, 𝑢⟩ ∈ V
37 opeq2 4817 . . . . . . . . . . . 12 (𝑧 = 𝑢 → ⟨1o, 𝑧⟩ = ⟨1o, 𝑢⟩)
38 df-inr 9752 . . . . . . . . . . . 12 inr = (𝑧 ∈ V ↦ ⟨1o, 𝑧⟩)
3937, 38fvmptg 6923 . . . . . . . . . . 11 ((𝑢 ∈ V ∧ ⟨1o, 𝑢⟩ ∈ V) → (inr‘𝑢) = ⟨1o, 𝑢⟩)
4010, 36, 39mp2an 689 . . . . . . . . . 10 (inr‘𝑢) = ⟨1o, 𝑢
41 1oex 8369 . . . . . . . . . . . . 13 1o ∈ V
4241snid 4608 . . . . . . . . . . . 12 1o ∈ {1o}
43 opelxpi 5651 . . . . . . . . . . . 12 ((1o ∈ {1o} ∧ 𝑢𝐵) → ⟨1o, 𝑢⟩ ∈ ({1o} × 𝐵))
4442, 43mpan 687 . . . . . . . . . . 11 (𝑢𝐵 → ⟨1o, 𝑢⟩ ∈ ({1o} × 𝐵))
4544ad2antrl 725 . . . . . . . . . 10 ((𝑥 ∈ (inr “ 𝐵) ∧ (𝑢𝐵 ∧ (inr‘𝑢) = 𝑥)) → ⟨1o, 𝑢⟩ ∈ ({1o} × 𝐵))
4640, 45eqeltrid 2841 . . . . . . . . 9 ((𝑥 ∈ (inr “ 𝐵) ∧ (𝑢𝐵 ∧ (inr‘𝑢) = 𝑥)) → (inr‘𝑢) ∈ ({1o} × 𝐵))
4735, 46eqeltrrd 2838 . . . . . . . 8 ((𝑥 ∈ (inr “ 𝐵) ∧ (𝑢𝐵 ∧ (inr‘𝑢) = 𝑥)) → 𝑥 ∈ ({1o} × 𝐵))
4834, 47rexlimddv 3154 . . . . . . 7 (𝑥 ∈ (inr “ 𝐵) → 𝑥 ∈ ({1o} × 𝐵))
49 elun2 4123 . . . . . . 7 (𝑥 ∈ ({1o} × 𝐵) → 𝑥 ∈ (({∅} × 𝐴) ∪ ({1o} × 𝐵)))
5048, 49syl 17 . . . . . 6 (𝑥 ∈ (inr “ 𝐵) → 𝑥 ∈ (({∅} × 𝐴) ∪ ({1o} × 𝐵)))
5150, 26eleqtrrdi 2848 . . . . 5 (𝑥 ∈ (inr “ 𝐵) → 𝑥 ∈ (𝐴𝐵))
5227, 51jaoi 854 . . . 4 ((𝑥 ∈ (inl “ 𝐴) ∨ 𝑥 ∈ (inr “ 𝐵)) → 𝑥 ∈ (𝐴𝐵))
531, 52sylbi 216 . . 3 (𝑥 ∈ ((inl “ 𝐴) ∪ (inr “ 𝐵)) → 𝑥 ∈ (𝐴𝐵))
5453ssriv 3935 . 2 ((inl “ 𝐴) ∪ (inr “ 𝐵)) ⊆ (𝐴𝐵)
55 djur 9768 . . . . 5 (𝑥 ∈ (𝐴𝐵) → (∃𝑦𝐴 𝑥 = (inl‘𝑦) ∨ ∃𝑦𝐵 𝑥 = (inr‘𝑦)))
56 vex 3445 . . . . . . . . . 10 𝑦 ∈ V
57 f1odm 6765 . . . . . . . . . . 11 (inl:V–1-1-onto→({∅} × V) → dom inl = V)
582, 57ax-mp 5 . . . . . . . . . 10 dom inl = V
5956, 58eleqtrri 2836 . . . . . . . . 9 𝑦 ∈ dom inl
60 simpl 483 . . . . . . . . 9 ((𝑦𝐴𝑥 = (inl‘𝑦)) → 𝑦𝐴)
6113funmpt2 6517 . . . . . . . . . 10 Fun inl
62 funfvima 7156 . . . . . . . . . 10 ((Fun inl ∧ 𝑦 ∈ dom inl) → (𝑦𝐴 → (inl‘𝑦) ∈ (inl “ 𝐴)))
6361, 62mpan 687 . . . . . . . . 9 (𝑦 ∈ dom inl → (𝑦𝐴 → (inl‘𝑦) ∈ (inl “ 𝐴)))
6459, 60, 63mpsyl 68 . . . . . . . 8 ((𝑦𝐴𝑥 = (inl‘𝑦)) → (inl‘𝑦) ∈ (inl “ 𝐴))
65 eleq1 2824 . . . . . . . . 9 (𝑥 = (inl‘𝑦) → (𝑥 ∈ (inl “ 𝐴) ↔ (inl‘𝑦) ∈ (inl “ 𝐴)))
6665adantl 482 . . . . . . . 8 ((𝑦𝐴𝑥 = (inl‘𝑦)) → (𝑥 ∈ (inl “ 𝐴) ↔ (inl‘𝑦) ∈ (inl “ 𝐴)))
6764, 66mpbird 256 . . . . . . 7 ((𝑦𝐴𝑥 = (inl‘𝑦)) → 𝑥 ∈ (inl “ 𝐴))
6867rexlimiva 3140 . . . . . 6 (∃𝑦𝐴 𝑥 = (inl‘𝑦) → 𝑥 ∈ (inl “ 𝐴))
69 f1odm 6765 . . . . . . . . . . 11 (inr:V–1-1-onto→({1o} × V) → dom inr = V)
7028, 69ax-mp 5 . . . . . . . . . 10 dom inr = V
7156, 70eleqtrri 2836 . . . . . . . . 9 𝑦 ∈ dom inr
72 simpl 483 . . . . . . . . 9 ((𝑦𝐵𝑥 = (inr‘𝑦)) → 𝑦𝐵)
73 f1ofun 6763 . . . . . . . . . . 11 (inr:V–1-1-onto→({1o} × V) → Fun inr)
7428, 73ax-mp 5 . . . . . . . . . 10 Fun inr
75 funfvima 7156 . . . . . . . . . 10 ((Fun inr ∧ 𝑦 ∈ dom inr) → (𝑦𝐵 → (inr‘𝑦) ∈ (inr “ 𝐵)))
7674, 75mpan 687 . . . . . . . . 9 (𝑦 ∈ dom inr → (𝑦𝐵 → (inr‘𝑦) ∈ (inr “ 𝐵)))
7771, 72, 76mpsyl 68 . . . . . . . 8 ((𝑦𝐵𝑥 = (inr‘𝑦)) → (inr‘𝑦) ∈ (inr “ 𝐵))
78 eleq1 2824 . . . . . . . . 9 (𝑥 = (inr‘𝑦) → (𝑥 ∈ (inr “ 𝐵) ↔ (inr‘𝑦) ∈ (inr “ 𝐵)))
7978adantl 482 . . . . . . . 8 ((𝑦𝐵𝑥 = (inr‘𝑦)) → (𝑥 ∈ (inr “ 𝐵) ↔ (inr‘𝑦) ∈ (inr “ 𝐵)))
8077, 79mpbird 256 . . . . . . 7 ((𝑦𝐵𝑥 = (inr‘𝑦)) → 𝑥 ∈ (inr “ 𝐵))
8180rexlimiva 3140 . . . . . 6 (∃𝑦𝐵 𝑥 = (inr‘𝑦) → 𝑥 ∈ (inr “ 𝐵))
8268, 81orim12i 906 . . . . 5 ((∃𝑦𝐴 𝑥 = (inl‘𝑦) ∨ ∃𝑦𝐵 𝑥 = (inr‘𝑦)) → (𝑥 ∈ (inl “ 𝐴) ∨ 𝑥 ∈ (inr “ 𝐵)))
8355, 82syl 17 . . . 4 (𝑥 ∈ (𝐴𝐵) → (𝑥 ∈ (inl “ 𝐴) ∨ 𝑥 ∈ (inr “ 𝐵)))
8483, 1sylibr 233 . . 3 (𝑥 ∈ (𝐴𝐵) → 𝑥 ∈ ((inl “ 𝐴) ∪ (inr “ 𝐵)))
8584ssriv 3935 . 2 (𝐴𝐵) ⊆ ((inl “ 𝐴) ∪ (inr “ 𝐵))
8654, 85eqssi 3947 1 ((inl “ 𝐴) ∪ (inr “ 𝐵)) = (𝐴𝐵)
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 205  wa 396  wo 844   = wceq 1540  wcel 2105  wrex 3070  Vcvv 3441  cun 3895  wss 3897  c0 4268  {csn 4572  cop 4578   × cxp 5612  dom cdm 5614  cima 5617  Fun wfun 6467   Fn wfn 6468  1-1-ontowf1o 6472  cfv 6473  1oc1o 8352  cdju 9747  inlcinl 9748  inrcinr 9749
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1796  ax-4 1810  ax-5 1912  ax-6 1970  ax-7 2010  ax-8 2107  ax-9 2115  ax-10 2136  ax-11 2153  ax-12 2170  ax-ext 2707  ax-sep 5240  ax-nul 5247  ax-pr 5369  ax-un 7642
This theorem depends on definitions:  df-bi 206  df-an 397  df-or 845  df-3or 1087  df-3an 1088  df-tru 1543  df-fal 1553  df-ex 1781  df-nf 1785  df-sb 2067  df-mo 2538  df-eu 2567  df-clab 2714  df-cleq 2728  df-clel 2814  df-nfc 2886  df-ne 2941  df-ral 3062  df-rex 3071  df-rab 3404  df-v 3443  df-dif 3900  df-un 3902  df-in 3904  df-ss 3914  df-pss 3916  df-nul 4269  df-if 4473  df-pw 4548  df-sn 4573  df-pr 4575  df-op 4579  df-uni 4852  df-br 5090  df-opab 5152  df-mpt 5173  df-tr 5207  df-id 5512  df-eprel 5518  df-po 5526  df-so 5527  df-fr 5569  df-we 5571  df-xp 5620  df-rel 5621  df-cnv 5622  df-co 5623  df-dm 5624  df-rn 5625  df-res 5626  df-ima 5627  df-ord 6299  df-on 6300  df-lim 6301  df-suc 6302  df-iota 6425  df-fun 6475  df-fn 6476  df-f 6477  df-f1 6478  df-fo 6479  df-f1o 6480  df-fv 6481  df-om 7773  df-1st 7891  df-2nd 7892  df-1o 8359  df-dju 9750  df-inl 9751  df-inr 9752
This theorem is referenced by: (None)
  Copyright terms: Public domain W3C validator