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

Theorem mapunen 9144
Description: Equinumerosity law for set exponentiation of a disjoint union. Exercise 4.45 of [Mendelson] p. 255. (Contributed by NM, 23-Sep-2004.) (Revised by Mario Carneiro, 29-Apr-2015.)
Assertion
Ref Expression
mapunen (((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) → (𝐶m (𝐴𝐵)) ≈ ((𝐶m 𝐴) × (𝐶m 𝐵)))

Proof of Theorem mapunen
Dummy variables 𝑥 𝑦 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 ovexd 7448 . 2 (((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) → (𝐶m (𝐴𝐵)) ∈ V)
2 ovexd 7448 . . 3 (((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) → (𝐶m 𝐴) ∈ V)
3 ovexd 7448 . . 3 (((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) → (𝐶m 𝐵) ∈ V)
42, 3xpexd 7750 . 2 (((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) → ((𝐶m 𝐴) × (𝐶m 𝐵)) ∈ V)
5 elmapi 8848 . . . . 5 (𝑥 ∈ (𝐶m (𝐴𝐵)) → 𝑥:(𝐴𝐵)⟶𝐶)
6 ssun1 4124 . . . . 5 𝐴 ⊆ (𝐴𝐵)
7 fssres 6741 . . . . 5 ((𝑥:(𝐴𝐵)⟶𝐶𝐴 ⊆ (𝐴𝐵)) → (𝑥𝐴):𝐴𝐶)
85, 6, 7sylancl 598 . . . 4 (𝑥 ∈ (𝐶m (𝐴𝐵)) → (𝑥𝐴):𝐴𝐶)
9 ssun2 4125 . . . . 5 𝐵 ⊆ (𝐴𝐵)
10 fssres 6741 . . . . 5 ((𝑥:(𝐴𝐵)⟶𝐶𝐵 ⊆ (𝐴𝐵)) → (𝑥𝐵):𝐵𝐶)
115, 9, 10sylancl 598 . . . 4 (𝑥 ∈ (𝐶m (𝐴𝐵)) → (𝑥𝐵):𝐵𝐶)
128, 11jca 521 . . 3 (𝑥 ∈ (𝐶m (𝐴𝐵)) → ((𝑥𝐴):𝐴𝐶 ∧ (𝑥𝐵):𝐵𝐶))
13 opelxp 5691 . . . 4 (⟨(𝑥𝐴), (𝑥𝐵)⟩ ∈ ((𝐶m 𝐴) × (𝐶m 𝐵)) ↔ ((𝑥𝐴) ∈ (𝐶m 𝐴) ∧ (𝑥𝐵) ∈ (𝐶m 𝐵)))
14 simpl3 1212 . . . . . 6 (((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) → 𝐶𝑋)
15 simpl1 1210 . . . . . 6 (((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) → 𝐴𝑉)
1614, 15elmapd 8839 . . . . 5 (((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) → ((𝑥𝐴) ∈ (𝐶m 𝐴) ↔ (𝑥𝐴):𝐴𝐶))
17 simpl2 1211 . . . . . 6 (((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) → 𝐵𝑊)
1814, 17elmapd 8839 . . . . 5 (((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) → ((𝑥𝐵) ∈ (𝐶m 𝐵) ↔ (𝑥𝐵):𝐵𝐶))
1916, 18anbi12d 644 . . . 4 (((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) → (((𝑥𝐴) ∈ (𝐶m 𝐴) ∧ (𝑥𝐵) ∈ (𝐶m 𝐵)) ↔ ((𝑥𝐴):𝐴𝐶 ∧ (𝑥𝐵):𝐵𝐶)))
2013, 19bitrid 286 . . 3 (((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) → (⟨(𝑥𝐴), (𝑥𝐵)⟩ ∈ ((𝐶m 𝐴) × (𝐶m 𝐵)) ↔ ((𝑥𝐴):𝐴𝐶 ∧ (𝑥𝐵):𝐵𝐶)))
2112, 20imbitrrid 249 . 2 (((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) → (𝑥 ∈ (𝐶m (𝐴𝐵)) → ⟨(𝑥𝐴), (𝑥𝐵)⟩ ∈ ((𝐶m 𝐴) × (𝐶m 𝐵))))
22 xp1st 8018 . . . . . . 7 (𝑦 ∈ ((𝐶m 𝐴) × (𝐶m 𝐵)) → (1st𝑦) ∈ (𝐶m 𝐴))
2322adantl 487 . . . . . 6 ((((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) ∧ 𝑦 ∈ ((𝐶m 𝐴) × (𝐶m 𝐵))) → (1st𝑦) ∈ (𝐶m 𝐴))
24 elmapi 8848 . . . . . 6 ((1st𝑦) ∈ (𝐶m 𝐴) → (1st𝑦):𝐴𝐶)
2523, 24syl 18 . . . . 5 ((((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) ∧ 𝑦 ∈ ((𝐶m 𝐴) × (𝐶m 𝐵))) → (1st𝑦):𝐴𝐶)
26 xp2nd 8019 . . . . . . 7 (𝑦 ∈ ((𝐶m 𝐴) × (𝐶m 𝐵)) → (2nd𝑦) ∈ (𝐶m 𝐵))
2726adantl 487 . . . . . 6 ((((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) ∧ 𝑦 ∈ ((𝐶m 𝐴) × (𝐶m 𝐵))) → (2nd𝑦) ∈ (𝐶m 𝐵))
28 elmapi 8848 . . . . . 6 ((2nd𝑦) ∈ (𝐶m 𝐵) → (2nd𝑦):𝐵𝐶)
2927, 28syl 18 . . . . 5 ((((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) ∧ 𝑦 ∈ ((𝐶m 𝐴) × (𝐶m 𝐵))) → (2nd𝑦):𝐵𝐶)
30 simplr 781 . . . . 5 ((((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) ∧ 𝑦 ∈ ((𝐶m 𝐴) × (𝐶m 𝐵))) → (𝐴𝐵) = ∅)
3125, 29, 30fun2d 6739 . . . 4 ((((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) ∧ 𝑦 ∈ ((𝐶m 𝐴) × (𝐶m 𝐵))) → ((1st𝑦) ∪ (2nd𝑦)):(𝐴𝐵)⟶𝐶)
3231ex 418 . . 3 (((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) → (𝑦 ∈ ((𝐶m 𝐴) × (𝐶m 𝐵)) → ((1st𝑦) ∪ (2nd𝑦)):(𝐴𝐵)⟶𝐶))
3315, 17unexd 7753 . . . 4 (((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) → (𝐴𝐵) ∈ V)
3414, 33elmapd 8839 . . 3 (((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) → (((1st𝑦) ∪ (2nd𝑦)) ∈ (𝐶m (𝐴𝐵)) ↔ ((1st𝑦) ∪ (2nd𝑦)):(𝐴𝐵)⟶𝐶))
3532, 34sylibrd 262 . 2 (((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) → (𝑦 ∈ ((𝐶m 𝐴) × (𝐶m 𝐵)) → ((1st𝑦) ∪ (2nd𝑦)) ∈ (𝐶m (𝐴𝐵))))
36 1st2nd2 8025 . . . . . . 7 (𝑦 ∈ ((𝐶m 𝐴) × (𝐶m 𝐵)) → 𝑦 = ⟨(1st𝑦), (2nd𝑦)⟩)
3736ad2antll 742 . . . . . 6 ((((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) ∧ (𝑥 ∈ (𝐶m (𝐴𝐵)) ∧ 𝑦 ∈ ((𝐶m 𝐴) × (𝐶m 𝐵)))) → 𝑦 = ⟨(1st𝑦), (2nd𝑦)⟩)
3825adantrl 729 . . . . . . . 8 ((((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) ∧ (𝑥 ∈ (𝐶m (𝐴𝐵)) ∧ 𝑦 ∈ ((𝐶m 𝐴) × (𝐶m 𝐵)))) → (1st𝑦):𝐴𝐶)
3929adantrl 729 . . . . . . . 8 ((((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) ∧ (𝑥 ∈ (𝐶m (𝐴𝐵)) ∧ 𝑦 ∈ ((𝐶m 𝐴) × (𝐶m 𝐵)))) → (2nd𝑦):𝐵𝐶)
40 res0 5976 . . . . . . . . . 10 ((1st𝑦) ↾ ∅) = ∅
41 res0 5976 . . . . . . . . . 10 ((2nd𝑦) ↾ ∅) = ∅
4240, 41eqtr4i 2786 . . . . . . . . 9 ((1st𝑦) ↾ ∅) = ((2nd𝑦) ↾ ∅)
43 simplr 781 . . . . . . . . . 10 ((((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) ∧ (𝑥 ∈ (𝐶m (𝐴𝐵)) ∧ 𝑦 ∈ ((𝐶m 𝐴) × (𝐶m 𝐵)))) → (𝐴𝐵) = ∅)
4443reseq2d 5972 . . . . . . . . 9 ((((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) ∧ (𝑥 ∈ (𝐶m (𝐴𝐵)) ∧ 𝑦 ∈ ((𝐶m 𝐴) × (𝐶m 𝐵)))) → ((1st𝑦) ↾ (𝐴𝐵)) = ((1st𝑦) ↾ ∅))
4543reseq2d 5972 . . . . . . . . 9 ((((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) ∧ (𝑥 ∈ (𝐶m (𝐴𝐵)) ∧ 𝑦 ∈ ((𝐶m 𝐴) × (𝐶m 𝐵)))) → ((2nd𝑦) ↾ (𝐴𝐵)) = ((2nd𝑦) ↾ ∅))
4642, 44, 453eqtr4a 2821 . . . . . . . 8 ((((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) ∧ (𝑥 ∈ (𝐶m (𝐴𝐵)) ∧ 𝑦 ∈ ((𝐶m 𝐴) × (𝐶m 𝐵)))) → ((1st𝑦) ↾ (𝐴𝐵)) = ((2nd𝑦) ↾ (𝐴𝐵)))
47 fresaunres1 6748 . . . . . . . 8 (((1st𝑦):𝐴𝐶 ∧ (2nd𝑦):𝐵𝐶 ∧ ((1st𝑦) ↾ (𝐴𝐵)) = ((2nd𝑦) ↾ (𝐴𝐵))) → (((1st𝑦) ∪ (2nd𝑦)) ↾ 𝐴) = (1st𝑦))
4838, 39, 46, 47syl3anc 1398 . . . . . . 7 ((((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) ∧ (𝑥 ∈ (𝐶m (𝐴𝐵)) ∧ 𝑦 ∈ ((𝐶m 𝐴) × (𝐶m 𝐵)))) → (((1st𝑦) ∪ (2nd𝑦)) ↾ 𝐴) = (1st𝑦))
49 fresaunres2 6747 . . . . . . . 8 (((1st𝑦):𝐴𝐶 ∧ (2nd𝑦):𝐵𝐶 ∧ ((1st𝑦) ↾ (𝐴𝐵)) = ((2nd𝑦) ↾ (𝐴𝐵))) → (((1st𝑦) ∪ (2nd𝑦)) ↾ 𝐵) = (2nd𝑦))
5038, 39, 46, 49syl3anc 1398 . . . . . . 7 ((((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) ∧ (𝑥 ∈ (𝐶m (𝐴𝐵)) ∧ 𝑦 ∈ ((𝐶m 𝐴) × (𝐶m 𝐵)))) → (((1st𝑦) ∪ (2nd𝑦)) ↾ 𝐵) = (2nd𝑦))
5148, 50opeq12d 4841 . . . . . 6 ((((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) ∧ (𝑥 ∈ (𝐶m (𝐴𝐵)) ∧ 𝑦 ∈ ((𝐶m 𝐴) × (𝐶m 𝐵)))) → ⟨(((1st𝑦) ∪ (2nd𝑦)) ↾ 𝐴), (((1st𝑦) ∪ (2nd𝑦)) ↾ 𝐵)⟩ = ⟨(1st𝑦), (2nd𝑦)⟩)
5237, 51eqtr4d 2798 . . . . 5 ((((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) ∧ (𝑥 ∈ (𝐶m (𝐴𝐵)) ∧ 𝑦 ∈ ((𝐶m 𝐴) × (𝐶m 𝐵)))) → 𝑦 = ⟨(((1st𝑦) ∪ (2nd𝑦)) ↾ 𝐴), (((1st𝑦) ∪ (2nd𝑦)) ↾ 𝐵)⟩)
53 reseq1 5966 . . . . . . 7 (𝑥 = ((1st𝑦) ∪ (2nd𝑦)) → (𝑥𝐴) = (((1st𝑦) ∪ (2nd𝑦)) ↾ 𝐴))
54 reseq1 5966 . . . . . . 7 (𝑥 = ((1st𝑦) ∪ (2nd𝑦)) → (𝑥𝐵) = (((1st𝑦) ∪ (2nd𝑦)) ↾ 𝐵))
5553, 54opeq12d 4841 . . . . . 6 (𝑥 = ((1st𝑦) ∪ (2nd𝑦)) → ⟨(𝑥𝐴), (𝑥𝐵)⟩ = ⟨(((1st𝑦) ∪ (2nd𝑦)) ↾ 𝐴), (((1st𝑦) ∪ (2nd𝑦)) ↾ 𝐵)⟩)
5655eqeq2d 2771 . . . . 5 (𝑥 = ((1st𝑦) ∪ (2nd𝑦)) → (𝑦 = ⟨(𝑥𝐴), (𝑥𝐵)⟩ ↔ 𝑦 = ⟨(((1st𝑦) ∪ (2nd𝑦)) ↾ 𝐴), (((1st𝑦) ∪ (2nd𝑦)) ↾ 𝐵)⟩))
5752, 56syl5ibrcom 250 . . . 4 ((((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) ∧ (𝑥 ∈ (𝐶m (𝐴𝐵)) ∧ 𝑦 ∈ ((𝐶m 𝐴) × (𝐶m 𝐵)))) → (𝑥 = ((1st𝑦) ∪ (2nd𝑦)) → 𝑦 = ⟨(𝑥𝐴), (𝑥𝐵)⟩))
58 ffn 6702 . . . . . . . 8 (𝑥:(𝐴𝐵)⟶𝐶𝑥 Fn (𝐴𝐵))
59 fnresdm 6651 . . . . . . . 8 (𝑥 Fn (𝐴𝐵) → (𝑥 ↾ (𝐴𝐵)) = 𝑥)
605, 58, 593syl 19 . . . . . . 7 (𝑥 ∈ (𝐶m (𝐴𝐵)) → (𝑥 ↾ (𝐴𝐵)) = 𝑥)
6160ad2antrl 741 . . . . . 6 ((((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) ∧ (𝑥 ∈ (𝐶m (𝐴𝐵)) ∧ 𝑦 ∈ ((𝐶m 𝐴) × (𝐶m 𝐵)))) → (𝑥 ↾ (𝐴𝐵)) = 𝑥)
6261eqcomd 2766 . . . . 5 ((((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) ∧ (𝑥 ∈ (𝐶m (𝐴𝐵)) ∧ 𝑦 ∈ ((𝐶m 𝐴) × (𝐶m 𝐵)))) → 𝑥 = (𝑥 ↾ (𝐴𝐵)))
63 vex 3454 . . . . . . . . . 10 𝑥 ∈ V
6463resex 6022 . . . . . . . . 9 (𝑥𝐴) ∈ V
6563resex 6022 . . . . . . . . 9 (𝑥𝐵) ∈ V
6664, 65op1std 7996 . . . . . . . 8 (𝑦 = ⟨(𝑥𝐴), (𝑥𝐵)⟩ → (1st𝑦) = (𝑥𝐴))
6764, 65op2ndd 7997 . . . . . . . 8 (𝑦 = ⟨(𝑥𝐴), (𝑥𝐵)⟩ → (2nd𝑦) = (𝑥𝐵))
6866, 67uneq12d 4116 . . . . . . 7 (𝑦 = ⟨(𝑥𝐴), (𝑥𝐵)⟩ → ((1st𝑦) ∪ (2nd𝑦)) = ((𝑥𝐴) ∪ (𝑥𝐵)))
69 resundi 5986 . . . . . . 7 (𝑥 ↾ (𝐴𝐵)) = ((𝑥𝐴) ∪ (𝑥𝐵))
7068, 69eqtr4di 2813 . . . . . 6 (𝑦 = ⟨(𝑥𝐴), (𝑥𝐵)⟩ → ((1st𝑦) ∪ (2nd𝑦)) = (𝑥 ↾ (𝐴𝐵)))
7170eqeq2d 2771 . . . . 5 (𝑦 = ⟨(𝑥𝐴), (𝑥𝐵)⟩ → (𝑥 = ((1st𝑦) ∪ (2nd𝑦)) ↔ 𝑥 = (𝑥 ↾ (𝐴𝐵))))
7262, 71syl5ibrcom 250 . . . 4 ((((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) ∧ (𝑥 ∈ (𝐶m (𝐴𝐵)) ∧ 𝑦 ∈ ((𝐶m 𝐴) × (𝐶m 𝐵)))) → (𝑦 = ⟨(𝑥𝐴), (𝑥𝐵)⟩ → 𝑥 = ((1st𝑦) ∪ (2nd𝑦))))
7357, 72impbid 215 . . 3 ((((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) ∧ (𝑥 ∈ (𝐶m (𝐴𝐵)) ∧ 𝑦 ∈ ((𝐶m 𝐴) × (𝐶m 𝐵)))) → (𝑥 = ((1st𝑦) ∪ (2nd𝑦)) ↔ 𝑦 = ⟨(𝑥𝐴), (𝑥𝐵)⟩))
7473ex 418 . 2 (((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) → ((𝑥 ∈ (𝐶m (𝐴𝐵)) ∧ 𝑦 ∈ ((𝐶m 𝐴) × (𝐶m 𝐵))) → (𝑥 = ((1st𝑦) ∪ (2nd𝑦)) ↔ 𝑦 = ⟨(𝑥𝐴), (𝑥𝐵)⟩)))
751, 4, 21, 35, 74en3d 8995 1 (((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) → (𝐶m (𝐴𝐵)) ≈ ((𝐶m 𝐴) × (𝐶m 𝐵)))
Colors of variables:    wff setvar class
This proof depends on syntax axioms:  wi 4  wb 209  wa 401  w3a 1103   = wceq 1570  wcel 2145  Vcvv 3450  cun 3897  cin 3898  wss 3899  c0 4279  cop 4590   class class class wbr 5103   × cxp 5653  cres 5657   Fn wfn 6528  wf 6529  cfv 6533  (class class class)co 7413  1st c1st 7984  2nd c2nd 7985  m cmap 8826  cen 8949
This proof depends on axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1828  ax-4 1842  ax-5 1943  ax-6 2000  ax-7 2041  ax-8 2147  ax-9 2155  ax-10 2178  ax-11 2194  ax-12 2213  ax-ext 2732  ax-sep 5251  ax-nul 5263  ax-pow 5330  ax-pr 5398  ax-un 7736
This proof depends on definitions:  df-bi 210  df-an 402  df-or 862  df-3an 1105  df-tru 1573  df-fal 1583  df-ex 1813  df-nf 1817  df-sb 2100  df-mo 2564  df-eu 2594  df-clab 2739  df-cleq 2752  df-clel 2835  df-nfc 2909  df-ne 2956  df-ral 3077  df-rex 3087  df-rab 3413  df-v 3452  df-sbc 3740  df-csb 3848  df-dif 3902  df-un 3904  df-in 3906  df-ss 3916  df-nul 4280  df-if 4483  df-pw 4559  df-sn 4585  df-pr 4587  df-op 4591  df-uni 4868  df-iun 4953  df-br 5104  df-opab 5168  df-mpt 5187  df-id 5550  df-xp 5661  df-rel 5662  df-cnv 5663  df-co 5664  df-dm 5665  df-rn 5666  df-res 5667  df-ima 5668  df-iota 6489  df-fun 6535  df-fn 6536  df-f 6537  df-f1 6538  df-fo 6539  df-f1o 6540  df-fv 6541  df-ov 7416  df-oprab 7417  df-mpo 7418  df-1st 7986  df-2nd 7987  df-map 8828  df-en 8953
This theorem is used by:  map2xp  9145  mapdom2  9146  mapdjuen  10183  ackbij1lem5  10225  hashmap  14500  mpct  46032
  Copyright terms: Public domain W3C validator