HomeHome Metamath Proof Explorer < Previous   Next >
Related theorems
GIF version

Theorem mapunen 3397
Description: Equinumerosity law for set exponentiation of a disjoint union. Exercise 4.45 of [Mendelson] p. 255.
Hypotheses
Ref Expression
mapunen.1 AV
mapunen.2 BV
mapunen.3 CV
Assertion
Ref Expression
mapunen ((AB) = ∅ → (Cm (AB)) ≈ ((Cm A) × (Cm B)))

Proof of Theorem mapunen
StepHypRef Expression
1 oprex 3018 . . 3 (Cm (AB)) ∈ V
21a1i 7 . 2 ((AB) = ∅ → (Cm (AB)) ∈ V)
3 ssun1 1621 . . . . . . 7 A ⊆ (AB)
4 fssres 2764 . . . . . . 7 ((x:(AB)–→CA ⊆ (AB)) → (xA):A–→C)
53, 4mpan2 519 . . . . . 6 (x:(AB)–→C → (xA):A–→C)
6 mapunen.3 . . . . . . 7 CV
7 mapunen.1 . . . . . . 7 AV
86, 7elmap 3265 . . . . . 6 ((xA) ∈ (Cm A) ↔ (xA):A–→C)
95, 8sylibr 175 . . . . 5 (x:(AB)–→C → (xA) ∈ (Cm A))
10 ssun2 1622 . . . . . . 7 B ⊆ (AB)
11 fssres 2764 . . . . . . 7 ((x:(AB)–→CB ⊆ (AB)) → (xB):B–→C)
1210, 11mpan2 519 . . . . . 6 (x:(AB)–→C → (xB):B–→C)
13 mapunen.2 . . . . . . 7 BV
146, 13elmap 3265 . . . . . 6 ((xB) ∈ (Cm B) ↔ (xB):B–→C)
1512, 14sylibr 175 . . . . 5 (x:(AB)–→C → (xB) ∈ (Cm B))
169, 15jca 236 . . . 4 (x:(AB)–→C → ((xA) ∈ (Cm A) ∧ (xB) ∈ (Cm B)))
177, 13unex 1949 . . . . 5 (AB) ∈ V
186, 17elmap 3265 . . . 4 (x ∈ (Cm (AB)) ↔ x:(AB)–→C)
19 visset 1350 . . . . . 6 xV
20 resexg 2597 . . . . . 6 (xV → (xB) ∈ V)
2119, 20ax-mp 6 . . . . 5 (xB) ∈ V
2221opelxp 2452 . . . 4 (⟨(xA), (xB)⟩ ∈ ((Cm A) × (Cm B)) ↔ ((xA) ∈ (Cm A) ∧ (xB) ∈ (Cm B)))
2316, 18, 223imtr4 192 . . 3 (x ∈ (Cm (AB)) → ⟨(xA), (xB)⟩ ∈ ((Cm A) × (Cm B)))
2423a1i 7 . 2 ((AB) = ∅ → (x ∈ (Cm (AB)) → ⟨(xA), (xB)⟩ ∈ ((Cm A) × (Cm B))))
25 fun 2763 . . . . . 6 (((y:A–→Cran {y}:B–→C) ∧ (AB) = ∅) → (yran {y}):(AB)–→(CC))
266, 17elmap 3265 . . . . . . 7 ((yran {y}) ∈ (Cm (AB)) ↔ (yran {y}):(AB)–→C)
27 unidm 1603 . . . . . . . 8 (CC) = C
28 feq3 2750 . . . . . . . 8 ((CC) = C → ((yran {y}):(AB)–→(CC) ↔ (yran {y}):(AB)–→C))
2927, 28ax-mp 6 . . . . . . 7 ((yran {y}):(AB)–→(CC) ↔ (yran {y}):(AB)–→C)
3026, 29bitr4 154 . . . . . 6 ((yran {y}) ∈ (Cm (AB)) ↔ (yran {y}):(AB)–→(CC))
3125, 30sylibr 175 . . . . 5 (((y:A–→Cran {y}:B–→C) ∧ (AB) = ∅) → (yran {y}) ∈ (Cm (AB)))
32 elxp5 2641 . . . . . . 7 (y ∈ ((Cm A) × (Cm B)) ↔ (y = ⟨y, ran {y}⟩ ∧ (y ∈ (Cm A) ∧ ran {y} ∈ (Cm B))))
3332pm3.27bd 263 . . . . . 6 (y ∈ ((Cm A) × (Cm B)) → (y ∈ (Cm A) ∧ ran {y} ∈ (Cm B)))
346, 7elmap 3265 . . . . . . 7 (y ∈ (Cm A) ↔ y:A–→C)
356, 13elmap 3265 . . . . . . 7 (ran {y} ∈ (Cm B) ↔ ran {y}:B–→C)
3634, 35anbi12i 369 . . . . . 6 ((y ∈ (Cm A) ∧ ran {y} ∈ (Cm B)) ↔ (y:A–→Cran {y}:B–→C))
3733, 36sylib 173 . . . . 5 (y ∈ ((Cm A) × (Cm B)) → (y:A–→Cran {y}:B–→C))
3831, 37sylan 343 . . . 4 ((y ∈ ((Cm A) × (Cm B)) ∧ (AB) = ∅) → (yran {y}) ∈ (Cm (AB)))
3938exp 291 . . 3 (y ∈ ((Cm A) × (Cm B)) → ((AB) = ∅ → (yran {y}) ∈ (Cm (AB))))
4039com12 13 . 2 ((AB) = ∅ → (y ∈ ((Cm A) × (Cm B)) → (yran {y}) ∈ (Cm (AB))))
41 opeq12 1878 . . . . . . . . . . . . . 14 (((xA) = y ∧ (xB) = ran {y}) → ⟨(xA), (xB)⟩ = ⟨y, ran {y}⟩)
42 reseq1 2575 . . . . . . . . . . . . . . . 16 (x = (yran {y}) → (xA) = ((yran {y}) ↾ A))
43 resundir 2583 . . . . . . . . . . . . . . . 16 ((yran {y}) ↾ A) = ((yA) ∪ (ran {y} ↾ A))
4442, 43syl6eq 1140 . . . . . . . . . . . . . . 15 (x = (yran {y}) → (xA) = ((yA) ∪ (ran {y} ↾ A)))
45 fnresdm 2731 . . . . . . . . . . . . . . . . . 18 (y Fn A → (yA) = y)
4645uneq1d 1610 . . . . . . . . . . . . . . . . 17 (y Fn A → ((yA) ∪ (ran {y} ↾ A)) = (y ∪ (ran {y} ↾ A)))
47 fnresdisj 2732 . . . . . . . . . . . . . . . . . . . . 21 (ran {y} Fn B → ((BA) = ∅ ↔ (ran {y} ↾ A) = ∅))
4847biimpa 324 . . . . . . . . . . . . . . . . . . . 20 ((ran {y} Fn B ∧ (BA) = ∅) → (ran {y} ↾ A) = ∅)
49 incom 1636 . . . . . . . . . . . . . . . . . . . . 21 (AB) = (BA)
5049cleq1i 1108 . . . . . . . . . . . . . . . . . . . 20 ((AB) = ∅ ↔ (BA) = ∅)
5148, 50sylan2b 347 . . . . . . . . . . . . . . . . . . 19 ((ran {y} Fn B ∧ (AB) = ∅) → (ran {y} ↾ A) = ∅)
5251uneq2d 1611 . . . . . . . . . . . . . . . . . 18 ((ran {y} Fn B ∧ (AB) = ∅) → (y ∪ (ran {y} ↾ A)) = (y ∪ ∅))
53 un0 1721 . . . . . . . . . . . . . . . . . 18 (y ∪ ∅) = y
5452, 53syl6eq 1140 . . . . . . . . . . . . . . . . 17 ((ran {y} Fn B ∧ (AB) = ∅) → (y ∪ (ran {y} ↾ A)) = y)
5546, 54sylan9eq 1144 . . . . . . . . . . . . . . . 16 ((y Fn A ∧ (ran {y} Fn B ∧ (AB) = ∅)) → ((yA) ∪ (ran {y} ↾ A)) = y)
5655anassrs 338 . . . . . . . . . . . . . . 15 (((y Fn Aran {y} Fn B) ∧ (AB) = ∅) → ((yA) ∪ (ran {y} ↾ A)) = y)
5744, 56sylan9eqr 1145 . . . . . . . . . . . . . 14 ((((y Fn Aran {y} Fn B) ∧ (AB) = ∅) ∧ x = (yran {y})) → (xA) = y)
58 reseq1 2575 . . . . . . . . . . . . . . . 16 (x = (yran {y}) → (xB) = ((yran {y}) ↾ B))
59 resundir 2583 . . . . . . . . . . . . . . . 16 ((yran {y}) ↾ B) = ((yB) ∪ (ran {y} ↾ B))
6058, 59syl6eq 1140 . . . . . . . . . . . . . . 15 (x = (yran {y}) → (xB) = ((yB) ∪ (ran {y} ↾ B)))
61 fnresdm 2731 . . . . . . . . . . . . . . . . . 18 (ran {y} Fn B → (ran {y} ↾ B) = ran {y})
6261uneq2d 1611 . . . . . . . . . . . . . . . . 17 (ran {y} Fn B → ((yB) ∪ (ran {y} ↾ B)) = ((yB) ∪ ran {y}))
63 fnresdisj 2732 . . . . . . . . . . . . . . . . . . . 20 (y Fn A → ((AB) = ∅ ↔ (yB) = ∅))
6463biimpa 324 . . . . . . . . . . . . . . . . . . 19 ((y Fn A ∧ (AB) = ∅) → (yB) = ∅)
6564uneq1d 1610 . . . . . . . . . . . . . . . . . 18 ((y Fn A ∧ (AB) = ∅) → ((yB) ∪ ran {y}) = (∅ ∪ ran {y}))
66 uncom 1604 . . . . . . . . . . . . . . . . . . 19 (∅ ∪ ran {y}) = (ran {y} ∪ ∅)
67 un0 1721 . . . . . . . . . . . . . . . . . . 19 (ran {y} ∪ ∅) = ran {y}
6866, 67eqtr 1119 . . . . . . . . . . . . . . . . . 18 (∅ ∪ ran {y}) = ran {y}
6965, 68syl6eq 1140 . . . . . . . . . . . . . . . . 17 ((y Fn A ∧ (AB) = ∅) → ((yB) ∪ ran {y}) = ran {y})
7062, 69sylan9eqr 1145 . . . . . . . . . . . . . . . 16 (((y Fn A ∧ (AB) = ∅) ∧ ran {y} Fn B) → ((yB) ∪ (ran {y} ↾ B)) = ran {y})
7170an1rs 373 . . . . . . . . . . . . . . 15 (((y Fn Aran {y} Fn B) ∧ (AB) = ∅) → ((yB) ∪ (ran {y} ↾ B)) = ran {y})
7260, 71sylan9eqr 1145 . . . . . . . . . . . . . 14 ((((y Fn Aran {y} Fn B) ∧ (AB) = ∅) ∧ x = (yran {y})) → (xB) = ran {y})
7341, 57, 72sylanc 361 . . . . . . . . . . . . 13 ((((y Fn Aran {y} Fn B) ∧ (AB) = ∅) ∧ x = (yran {y})) → ⟨(xA), (xB)⟩ = ⟨y, ran {y}⟩)
7473cleq2d 1112 . . . . . . . . . . . 12 ((((y Fn Aran {y} Fn B) ∧ (AB) = ∅) ∧ x = (yran {y})) → (y = ⟨(xA), (xB)⟩ ↔ y = ⟨y, ran {y}⟩))
7574biimparc 327 . . . . . . . . . . 11 ((y = ⟨y, ran {y}⟩ ∧ (((y Fn Aran {y} Fn B) ∧ (AB) = ∅) ∧ x = (yran {y}))) → y = ⟨(xA), (xB)⟩)
7675exp44 302 . . . . . . . . . 10 (y = ⟨y, ran {y}⟩ → ((y Fn Aran {y} Fn B) → ((AB) = ∅ → (x = (yran {y}) → y = ⟨(xA), (xB)⟩))))
7776imp 277 . . . . . . . . 9 ((y = ⟨y, ran {y}⟩ ∧ (y Fn Aran {y} Fn B)) → ((AB) = ∅ → (x = (yran {y}) → y = ⟨(xA), (xB)⟩)))
78 ffn 2752 . . . . . . . . . . 11 (y:A–→Cy Fn A)
7934, 78sylbi 174 . . . . . . . . . 10 (y ∈ (Cm A) → y Fn A)
80 ffn 2752 . . . . . . . . . . 11 (ran {y}:B–→Cran {y} Fn B)
8135, 80sylbi 174 . . . . . . . . . 10 (ran {y} ∈ (Cm B) → ran {y} Fn B)
8279, 81anim12i 268 . . . . . . . . 9 ((y ∈ (Cm A) ∧ ran {y} ∈ (Cm B)) → (y Fn Aran {y} Fn B))
8377, 82sylan2 346 . . . . . . . 8 ((y = ⟨y, ran {y}⟩ ∧ (y ∈ (Cm A) ∧ ran {y} ∈ (Cm B))) → ((AB) = ∅ → (x = (yran {y}) → y = ⟨(xA), (xB)⟩)))
8432, 83sylbi 174 . . . . . . 7 (y ∈ ((Cm A) × (Cm B)) → ((AB) = ∅ → (x = (yran {y}) → y = ⟨(xA), (xB)⟩)))
8584com12 13 . . . . . 6 ((AB) = ∅ → (y ∈ ((Cm A) × (Cm B)) → (x = (yran {y}) → y = ⟨(xA), (xB)⟩)))
8685imp 277 . . . . 5 (((AB) = ∅ ∧ y ∈ ((Cm A) × (Cm B))) → (x = (yran {y}) → y = ⟨(xA), (xB)⟩))
8786adantrl 311 . . . 4 (((AB) = ∅ ∧ (x ∈ (Cm (AB)) ∧ y ∈ ((Cm A) × (Cm B)))) → (x = (yran {y}) → y = ⟨(xA), (xB)⟩))
88 ffn 2752 . . . . . . . . . 10 (x:(AB)–→Cx Fn (AB))
8918, 88sylbi 174 . . . . . . . . 9 (x ∈ (Cm (AB)) → x Fn (AB))
90 fnresdm 2731 . . . . . . . . 9 (x Fn (AB) → (x ↾ (AB)) = x)
9189, 90syl 12 . . . . . . . 8 (x ∈ (Cm (AB)) → (x ↾ (AB)) = x)
9291cleqcomd 1106 . . . . . . 7 (x ∈ (Cm (AB)) → x = (x ↾ (AB)))
93 inteq 1968 . . . . . . . . . . 11 (y = ⟨(xA), (xB)⟩ → y = ⟨(xA), (xB)⟩)
9493inteqd 1970 . . . . . . . . . 10 (y = ⟨(xA), (xB)⟩ → y = ⟨(xA), (xB)⟩)
95 resexg 2597 . . . . . . . . . . . 12 (xV → (xA) ∈ V)
9619, 95ax-mp 6 . . . . . . . . . . 11 (xA) ∈ V
9796op1stb 1992 . . . . . . . . . 10 ⟨(xA), (xB)⟩ = (xA)
9894, 97syl6eq 1140 . . . . . . . . 9 (y = ⟨(xA), (xB)⟩ → y = (xA))
99 sneq 1816 . . . . . . . . . . . 12 (y = ⟨(xA), (xB)⟩ → {y} = {⟨(xA), (xB)⟩})
10099rneqd 2557 . . . . . . . . . . 11 (y = ⟨(xA), (xB)⟩ → ran {y} = ran {⟨(xA), (xB)⟩})
101100unieqd 1929 . . . . . . . . . 10 (y = ⟨(xA), (xB)⟩ → ran {y} = ran {⟨(xA), (xB)⟩})
10296, 21op2nda 2639 . . . . . . . . . 10 ran {⟨(xA), (xB)⟩} = (xB)
103101, 102syl6eq 1140 . . . . . . . . 9 (y = ⟨(xA), (xB)⟩ → ran {y} = (xB))
10498, 103uneq12d 1612 . . . . . . . 8 (y = ⟨(xA), (xB)⟩ → (yran {y}) = ((xA) ∪ (xB)))
105 resundi 2582 . . . . . . . 8 (x ↾ (AB)) = ((xA) ∪ (xB))
106104, 105syl6reqr 1143 . . . . . . 7 (y = ⟨(xA), (xB)⟩ → (x ↾ (AB)) = (yran {y}))
10792, 106sylan9eq 1144 . . . . . 6 ((x ∈ (Cm (AB)) ∧ y = ⟨(xA), (xB)⟩) → x = (yran {y}))
108107exp 291 . . . . 5 (x ∈ (Cm (AB)) → (y = ⟨(xA), (xB)⟩ → x = (yran {y})))
109108ad2antrl 322 . . . 4 (((AB) = ∅ ∧ (x ∈ (Cm (AB)) ∧ y ∈ ((Cm A) × (Cm B)))) → (y = ⟨(xA), (xB)⟩ → x = (yran {y})))
11087, 109impbid 397 . . 3 (((AB) = ∅ ∧ (x ∈ (Cm (AB)) ∧ y ∈ ((Cm A) × (Cm B)))) → (x = (yran {y}) ↔ y = ⟨(xA), (xB)⟩))
111110exp 291 . 2 ((AB) = ∅ → ((x ∈ (Cm (AB)) ∧ y ∈ ((Cm A) × (Cm B))) → (x = (yran {y}) ↔ y = ⟨(xA), (xB)⟩)))
1122, 24, 40, 111en3d 3304 1 ((AB) = ∅ → (Cm (AB)) ≈ ((Cm A) × (Cm B)))
Colors of variables: wff set class
Syntax hints:   → wi 2   ↔ wb 127   ∧ wa 196   = wceq 1091   ∈ wcel 1092  Vcvv 1348   ∪ cun 1485   ∩ cin 1486   ⊆ wss 1487  ∅c0 1707  {csn 1808  ⟨cop 1810  cuni 1919  cint 1965   class class class wbr 2054   × cxp 2408  ran crn 2411   ↾ cres 2412   Fn wfn 2417  –→wf 2418  (class class class)co 3001   ↑m cm 3258   ≈ cen 3271
This theorem was proved from axioms:  ax-1 3  ax-2 4  ax-3 5  ax-mp 6  ax-4 673  ax-5 674  ax-6 675  ax-7 676  ax-gen 677  ax-8 798  ax-9 799  ax-10 800  ax-11 801  ax-12 802  ax-13 804  ax-14 805  ax-16 922  ax-17 925  ax-ext 1074  ax-rep 1075  ax-un 1076  ax-pow 1077
This theorem depends on definitions:  df-bi 128  df-or 197  df-an 198  df-3an 583  df-ex 679  df-sb 853  df-eu 1009  df-mo 1010  df-clab 1093  df-cleq 1097  df-clel 1099  df-ral 1205  df-rex 1206  df-v 1349  df-dif 1489  df-un 1490  df-in 1491  df-ss 1492  df-nul 1708  df-pw 1799  df-sn 1811  df-pr 1812  df-op 1815  df-uni 1920  df-int 1966  df-br 2063  df-opab 2098  df-id 2125  df-xp 2424  df-rel 2425  df-cnv 2426  df-co 2427  df-dm 2428  df-rn 2429  df-res 2430  df-ima 2431  df-fun 2432  df-fn 2433  df-f 2434  df-f1 2435  df-fo 2436  df-f1o 2437  df-fv 2438  df-opr 3003  df-oprab 3004  df-map 3259  df-en 3274
metamath.org