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

Theorem mapunen 9118
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 7431 . 2 (((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) → (𝐶m (𝐴𝐵)) ∈ V)
2 ovexd 7431 . . 3 (((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) → (𝐶m 𝐴) ∈ V)
3 ovexd 7431 . . 3 (((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) → (𝐶m 𝐵) ∈ V)
42, 3xpexd 7734 . 2 (((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) → ((𝐶m 𝐴) × (𝐶m 𝐵)) ∈ V)
5 elmapi 8830 . . . . 5 (𝑥 ∈ (𝐶m (𝐴𝐵)) → 𝑥:(𝐴𝐵)⟶𝐶)
6 ssun1 4130 . . . . 5 𝐴 ⊆ (𝐴𝐵)
7 fssres 6730 . . . . 5 ((𝑥:(𝐴𝐵)⟶𝐶𝐴 ⊆ (𝐴𝐵)) → (𝑥𝐴):𝐴𝐶)
85, 6, 7sylancl 595 . . . 4 (𝑥 ∈ (𝐶m (𝐴𝐵)) → (𝑥𝐴):𝐴𝐶)
9 ssun2 4131 . . . . 5 𝐵 ⊆ (𝐴𝐵)
10 fssres 6730 . . . . 5 ((𝑥:(𝐴𝐵)⟶𝐶𝐵 ⊆ (𝐴𝐵)) → (𝑥𝐵):𝐵𝐶)
115, 9, 10sylancl 595 . . . 4 (𝑥 ∈ (𝐶m (𝐴𝐵)) → (𝑥𝐵):𝐵𝐶)
128, 11jca 519 . . 3 (𝑥 ∈ (𝐶m (𝐴𝐵)) → ((𝑥𝐴):𝐴𝐶 ∧ (𝑥𝐵):𝐵𝐶))
13 opelxp 5683 . . . 4 (⟨(𝑥𝐴), (𝑥𝐵)⟩ ∈ ((𝐶m 𝐴) × (𝐶m 𝐵)) ↔ ((𝑥𝐴) ∈ (𝐶m 𝐴) ∧ (𝑥𝐵) ∈ (𝐶m 𝐵)))
14 simpl3 1207 . . . . . 6 (((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) → 𝐶𝑋)
15 simpl1 1205 . . . . . 6 (((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) → 𝐴𝑉)
1614, 15elmapd 8821 . . . . 5 (((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) → ((𝑥𝐴) ∈ (𝐶m 𝐴) ↔ (𝑥𝐴):𝐴𝐶))
17 simpl2 1206 . . . . . 6 (((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) → 𝐵𝑊)
1814, 17elmapd 8821 . . . . 5 (((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) → ((𝑥𝐵) ∈ (𝐶m 𝐵) ↔ (𝑥𝐵):𝐵𝐶))
1916, 18anbi12d 641 . . . 4 (((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) → (((𝑥𝐴) ∈ (𝐶m 𝐴) ∧ (𝑥𝐵) ∈ (𝐶m 𝐵)) ↔ ((𝑥𝐴):𝐴𝐶 ∧ (𝑥𝐵):𝐵𝐶)))
2013, 19bitrid 285 . . 3 (((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) → (⟨(𝑥𝐴), (𝑥𝐵)⟩ ∈ ((𝐶m 𝐴) × (𝐶m 𝐵)) ↔ ((𝑥𝐴):𝐴𝐶 ∧ (𝑥𝐵):𝐵𝐶)))
2112, 20imbitrrid 248 . 2 (((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) → (𝑥 ∈ (𝐶m (𝐴𝐵)) → ⟨(𝑥𝐴), (𝑥𝐵)⟩ ∈ ((𝐶m 𝐴) × (𝐶m 𝐵))))
22 xp1st 8002 . . . . . . 7 (𝑦 ∈ ((𝐶m 𝐴) × (𝐶m 𝐵)) → (1st𝑦) ∈ (𝐶m 𝐴))
2322adantl 485 . . . . . 6 ((((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) ∧ 𝑦 ∈ ((𝐶m 𝐴) × (𝐶m 𝐵))) → (1st𝑦) ∈ (𝐶m 𝐴))
24 elmapi 8830 . . . . . 6 ((1st𝑦) ∈ (𝐶m 𝐴) → (1st𝑦):𝐴𝐶)
2523, 24syl 17 . . . . 5 ((((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) ∧ 𝑦 ∈ ((𝐶m 𝐴) × (𝐶m 𝐵))) → (1st𝑦):𝐴𝐶)
26 xp2nd 8003 . . . . . . 7 (𝑦 ∈ ((𝐶m 𝐴) × (𝐶m 𝐵)) → (2nd𝑦) ∈ (𝐶m 𝐵))
2726adantl 485 . . . . . 6 ((((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) ∧ 𝑦 ∈ ((𝐶m 𝐴) × (𝐶m 𝐵))) → (2nd𝑦) ∈ (𝐶m 𝐵))
28 elmapi 8830 . . . . . 6 ((2nd𝑦) ∈ (𝐶m 𝐵) → (2nd𝑦):𝐵𝐶)
2927, 28syl 17 . . . . 5 ((((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) ∧ 𝑦 ∈ ((𝐶m 𝐴) × (𝐶m 𝐵))) → (2nd𝑦):𝐵𝐶)
30 simplr 778 . . . . 5 ((((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) ∧ 𝑦 ∈ ((𝐶m 𝐴) × (𝐶m 𝐵))) → (𝐴𝐵) = ∅)
3125, 29, 30fun2d 6728 . . . 4 ((((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) ∧ 𝑦 ∈ ((𝐶m 𝐴) × (𝐶m 𝐵))) → ((1st𝑦) ∪ (2nd𝑦)):(𝐴𝐵)⟶𝐶)
3231ex 416 . . 3 (((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) → (𝑦 ∈ ((𝐶m 𝐴) × (𝐶m 𝐵)) → ((1st𝑦) ∪ (2nd𝑦)):(𝐴𝐵)⟶𝐶))
3315, 17unexd 7737 . . . 4 (((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) → (𝐴𝐵) ∈ V)
3414, 33elmapd 8821 . . 3 (((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) → (((1st𝑦) ∪ (2nd𝑦)) ∈ (𝐶m (𝐴𝐵)) ↔ ((1st𝑦) ∪ (2nd𝑦)):(𝐴𝐵)⟶𝐶))
3532, 34sylibrd 261 . 2 (((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) → (𝑦 ∈ ((𝐶m 𝐴) × (𝐶m 𝐵)) → ((1st𝑦) ∪ (2nd𝑦)) ∈ (𝐶m (𝐴𝐵))))
36 1st2nd2 8009 . . . . . . 7 (𝑦 ∈ ((𝐶m 𝐴) × (𝐶m 𝐵)) → 𝑦 = ⟨(1st𝑦), (2nd𝑦)⟩)
3736ad2antll 739 . . . . . 6 ((((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) ∧ (𝑥 ∈ (𝐶m (𝐴𝐵)) ∧ 𝑦 ∈ ((𝐶m 𝐴) × (𝐶m 𝐵)))) → 𝑦 = ⟨(1st𝑦), (2nd𝑦)⟩)
3825adantrl 726 . . . . . . . 8 ((((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) ∧ (𝑥 ∈ (𝐶m (𝐴𝐵)) ∧ 𝑦 ∈ ((𝐶m 𝐴) × (𝐶m 𝐵)))) → (1st𝑦):𝐴𝐶)
3929adantrl 726 . . . . . . . 8 ((((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) ∧ (𝑥 ∈ (𝐶m (𝐴𝐵)) ∧ 𝑦 ∈ ((𝐶m 𝐴) × (𝐶m 𝐵)))) → (2nd𝑦):𝐵𝐶)
40 res0 5969 . . . . . . . . . 10 ((1st𝑦) ↾ ∅) = ∅
41 res0 5969 . . . . . . . . . 10 ((2nd𝑦) ↾ ∅) = ∅
4240, 41eqtr4i 2788 . . . . . . . . 9 ((1st𝑦) ↾ ∅) = ((2nd𝑦) ↾ ∅)
43 simplr 778 . . . . . . . . . 10 ((((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) ∧ (𝑥 ∈ (𝐶m (𝐴𝐵)) ∧ 𝑦 ∈ ((𝐶m 𝐴) × (𝐶m 𝐵)))) → (𝐴𝐵) = ∅)
4443reseq2d 5965 . . . . . . . . 9 ((((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) ∧ (𝑥 ∈ (𝐶m (𝐴𝐵)) ∧ 𝑦 ∈ ((𝐶m 𝐴) × (𝐶m 𝐵)))) → ((1st𝑦) ↾ (𝐴𝐵)) = ((1st𝑦) ↾ ∅))
4543reseq2d 5965 . . . . . . . . 9 ((((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) ∧ (𝑥 ∈ (𝐶m (𝐴𝐵)) ∧ 𝑦 ∈ ((𝐶m 𝐴) × (𝐶m 𝐵)))) → ((2nd𝑦) ↾ (𝐴𝐵)) = ((2nd𝑦) ↾ ∅))
4642, 44, 453eqtr4a 2823 . . . . . . . 8 ((((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) ∧ (𝑥 ∈ (𝐶m (𝐴𝐵)) ∧ 𝑦 ∈ ((𝐶m 𝐴) × (𝐶m 𝐵)))) → ((1st𝑦) ↾ (𝐴𝐵)) = ((2nd𝑦) ↾ (𝐴𝐵)))
47 fresaunres1 6737 . . . . . . . 8 (((1st𝑦):𝐴𝐶 ∧ (2nd𝑦):𝐵𝐶 ∧ ((1st𝑦) ↾ (𝐴𝐵)) = ((2nd𝑦) ↾ (𝐴𝐵))) → (((1st𝑦) ∪ (2nd𝑦)) ↾ 𝐴) = (1st𝑦))
4838, 39, 46, 47syl3anc 1390 . . . . . . 7 ((((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) ∧ (𝑥 ∈ (𝐶m (𝐴𝐵)) ∧ 𝑦 ∈ ((𝐶m 𝐴) × (𝐶m 𝐵)))) → (((1st𝑦) ∪ (2nd𝑦)) ↾ 𝐴) = (1st𝑦))
49 fresaunres2 6736 . . . . . . . 8 (((1st𝑦):𝐴𝐶 ∧ (2nd𝑦):𝐵𝐶 ∧ ((1st𝑦) ↾ (𝐴𝐵)) = ((2nd𝑦) ↾ (𝐴𝐵))) → (((1st𝑦) ∪ (2nd𝑦)) ↾ 𝐵) = (2nd𝑦))
5038, 39, 46, 49syl3anc 1390 . . . . . . 7 ((((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) ∧ (𝑥 ∈ (𝐶m (𝐴𝐵)) ∧ 𝑦 ∈ ((𝐶m 𝐴) × (𝐶m 𝐵)))) → (((1st𝑦) ∪ (2nd𝑦)) ↾ 𝐵) = (2nd𝑦))
5148, 50opeq12d 4839 . . . . . 6 ((((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) ∧ (𝑥 ∈ (𝐶m (𝐴𝐵)) ∧ 𝑦 ∈ ((𝐶m 𝐴) × (𝐶m 𝐵)))) → ⟨(((1st𝑦) ∪ (2nd𝑦)) ↾ 𝐴), (((1st𝑦) ∪ (2nd𝑦)) ↾ 𝐵)⟩ = ⟨(1st𝑦), (2nd𝑦)⟩)
5237, 51eqtr4d 2800 . . . . 5 ((((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) ∧ (𝑥 ∈ (𝐶m (𝐴𝐵)) ∧ 𝑦 ∈ ((𝐶m 𝐴) × (𝐶m 𝐵)))) → 𝑦 = ⟨(((1st𝑦) ∪ (2nd𝑦)) ↾ 𝐴), (((1st𝑦) ∪ (2nd𝑦)) ↾ 𝐵)⟩)
53 reseq1 5959 . . . . . . 7 (𝑥 = ((1st𝑦) ∪ (2nd𝑦)) → (𝑥𝐴) = (((1st𝑦) ∪ (2nd𝑦)) ↾ 𝐴))
54 reseq1 5959 . . . . . . 7 (𝑥 = ((1st𝑦) ∪ (2nd𝑦)) → (𝑥𝐵) = (((1st𝑦) ∪ (2nd𝑦)) ↾ 𝐵))
5553, 54opeq12d 4839 . . . . . 6 (𝑥 = ((1st𝑦) ∪ (2nd𝑦)) → ⟨(𝑥𝐴), (𝑥𝐵)⟩ = ⟨(((1st𝑦) ∪ (2nd𝑦)) ↾ 𝐴), (((1st𝑦) ∪ (2nd𝑦)) ↾ 𝐵)⟩)
5655eqeq2d 2773 . . . . 5 (𝑥 = ((1st𝑦) ∪ (2nd𝑦)) → (𝑦 = ⟨(𝑥𝐴), (𝑥𝐵)⟩ ↔ 𝑦 = ⟨(((1st𝑦) ∪ (2nd𝑦)) ↾ 𝐴), (((1st𝑦) ∪ (2nd𝑦)) ↾ 𝐵)⟩))
5752, 56syl5ibrcom 249 . . . 4 ((((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) ∧ (𝑥 ∈ (𝐶m (𝐴𝐵)) ∧ 𝑦 ∈ ((𝐶m 𝐴) × (𝐶m 𝐵)))) → (𝑥 = ((1st𝑦) ∪ (2nd𝑦)) → 𝑦 = ⟨(𝑥𝐴), (𝑥𝐵)⟩))
58 ffn 6691 . . . . . . . 8 (𝑥:(𝐴𝐵)⟶𝐶𝑥 Fn (𝐴𝐵))
59 fnresdm 6640 . . . . . . . 8 (𝑥 Fn (𝐴𝐵) → (𝑥 ↾ (𝐴𝐵)) = 𝑥)
605, 58, 593syl 18 . . . . . . 7 (𝑥 ∈ (𝐶m (𝐴𝐵)) → (𝑥 ↾ (𝐴𝐵)) = 𝑥)
6160ad2antrl 738 . . . . . 6 ((((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) ∧ (𝑥 ∈ (𝐶m (𝐴𝐵)) ∧ 𝑦 ∈ ((𝐶m 𝐴) × (𝐶m 𝐵)))) → (𝑥 ↾ (𝐴𝐵)) = 𝑥)
6261eqcomd 2768 . . . . 5 ((((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) ∧ (𝑥 ∈ (𝐶m (𝐴𝐵)) ∧ 𝑦 ∈ ((𝐶m 𝐴) × (𝐶m 𝐵)))) → 𝑥 = (𝑥 ↾ (𝐴𝐵)))
63 vex 3458 . . . . . . . . . 10 𝑥 ∈ V
6463resex 6015 . . . . . . . . 9 (𝑥𝐴) ∈ V
6563resex 6015 . . . . . . . . 9 (𝑥𝐵) ∈ V
6664, 65op1std 7980 . . . . . . . 8 (𝑦 = ⟨(𝑥𝐴), (𝑥𝐵)⟩ → (1st𝑦) = (𝑥𝐴))
6764, 65op2ndd 7981 . . . . . . . 8 (𝑦 = ⟨(𝑥𝐴), (𝑥𝐵)⟩ → (2nd𝑦) = (𝑥𝐵))
6866, 67uneq12d 4122 . . . . . . 7 (𝑦 = ⟨(𝑥𝐴), (𝑥𝐵)⟩ → ((1st𝑦) ∪ (2nd𝑦)) = ((𝑥𝐴) ∪ (𝑥𝐵)))
69 resundi 5979 . . . . . . 7 (𝑥 ↾ (𝐴𝐵)) = ((𝑥𝐴) ∪ (𝑥𝐵))
7068, 69eqtr4di 2815 . . . . . 6 (𝑦 = ⟨(𝑥𝐴), (𝑥𝐵)⟩ → ((1st𝑦) ∪ (2nd𝑦)) = (𝑥 ↾ (𝐴𝐵)))
7170eqeq2d 2773 . . . . 5 (𝑦 = ⟨(𝑥𝐴), (𝑥𝐵)⟩ → (𝑥 = ((1st𝑦) ∪ (2nd𝑦)) ↔ 𝑥 = (𝑥 ↾ (𝐴𝐵))))
7262, 71syl5ibrcom 249 . . . 4 ((((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) ∧ (𝑥 ∈ (𝐶m (𝐴𝐵)) ∧ 𝑦 ∈ ((𝐶m 𝐴) × (𝐶m 𝐵)))) → (𝑦 = ⟨(𝑥𝐴), (𝑥𝐵)⟩ → 𝑥 = ((1st𝑦) ∪ (2nd𝑦))))
7357, 72impbid 214 . . 3 ((((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) ∧ (𝑥 ∈ (𝐶m (𝐴𝐵)) ∧ 𝑦 ∈ ((𝐶m 𝐴) × (𝐶m 𝐵)))) → (𝑥 = ((1st𝑦) ∪ (2nd𝑦)) ↔ 𝑦 = ⟨(𝑥𝐴), (𝑥𝐵)⟩))
7473ex 416 . 2 (((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) → ((𝑥 ∈ (𝐶m (𝐴𝐵)) ∧ 𝑦 ∈ ((𝐶m 𝐴) × (𝐶m 𝐵))) → (𝑥 = ((1st𝑦) ∪ (2nd𝑦)) ↔ 𝑦 = ⟨(𝑥𝐴), (𝑥𝐵)⟩)))
751, 4, 21, 35, 74en3d 8970 1 (((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) → (𝐶m (𝐴𝐵)) ≈ ((𝐶m 𝐴) × (𝐶m 𝐵)))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 208  wa 399  w3a 1098   = wceq 1560  wcel 2142  Vcvv 3454  cun 3902  cin 3903  wss 3904  c0 4285  cop 4588   class class class wbr 5100   × cxp 5645  cres 5649   Fn wfn 6516  wf 6517  cfv 6521  (class class class)co 7396  1st c1st 7968  2nd c2nd 7969  m cmap 8808  cen 8924
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1815  ax-4 1829  ax-5 1930  ax-6 1987  ax-7 2028  ax-8 2144  ax-9 2152  ax-10 2175  ax-11 2191  ax-12 2212  ax-ext 2734  ax-sep 5246  ax-nul 5256  ax-pow 5322  ax-pr 5390  ax-un 7718
This theorem depends on definitions:  df-bi 209  df-an 400  df-or 859  df-3an 1100  df-tru 1563  df-fal 1573  df-ex 1800  df-nf 1804  df-sb 2091  df-mo 2566  df-eu 2596  df-clab 2741  df-cleq 2754  df-clel 2837  df-nfc 2911  df-ne 2958  df-ral 3077  df-rex 3087  df-rab 3415  df-v 3456  df-sbc 3745  df-csb 3853  df-dif 3907  df-un 3909  df-in 3911  df-ss 3921  df-nul 4286  df-if 4481  df-pw 4557  df-sn 4583  df-pr 4585  df-op 4589  df-uni 4866  df-iun 4951  df-br 5101  df-opab 5163  df-mpt 5182  df-id 5542  df-xp 5653  df-rel 5654  df-cnv 5655  df-co 5656  df-dm 5657  df-rn 5658  df-res 5659  df-ima 5660  df-iota 6477  df-fun 6523  df-fn 6524  df-f 6525  df-f1 6526  df-fo 6527  df-f1o 6528  df-fv 6529  df-ov 7399  df-oprab 7400  df-mpo 7401  df-1st 7970  df-2nd 7971  df-map 8810  df-en 8928
This theorem is referenced by:  map2xp  9119  mapdom2  9120  mapdjuen  10137  ackbij1lem5  10179  hashmap  14448  mpct  45775
  Copyright terms: Public domain W3C validator