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

Theorem mapunen 9097
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 7397 . 2 (((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) → (𝐶m (𝐴𝐵)) ∈ V)
2 ovexd 7397 . . 3 (((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) → (𝐶m 𝐴) ∈ V)
3 ovexd 7397 . . 3 (((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) → (𝐶m 𝐵) ∈ V)
42, 3xpexd 7690 . 2 (((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) → ((𝐶m 𝐴) × (𝐶m 𝐵)) ∈ V)
5 elmapi 8794 . . . . 5 (𝑥 ∈ (𝐶m (𝐴𝐵)) → 𝑥:(𝐴𝐵)⟶𝐶)
6 ssun1 4137 . . . . 5 𝐴 ⊆ (𝐴𝐵)
7 fssres 6713 . . . . 5 ((𝑥:(𝐴𝐵)⟶𝐶𝐴 ⊆ (𝐴𝐵)) → (𝑥𝐴):𝐴𝐶)
85, 6, 7sylancl 587 . . . 4 (𝑥 ∈ (𝐶m (𝐴𝐵)) → (𝑥𝐴):𝐴𝐶)
9 ssun2 4138 . . . . 5 𝐵 ⊆ (𝐴𝐵)
10 fssres 6713 . . . . 5 ((𝑥:(𝐴𝐵)⟶𝐶𝐵 ⊆ (𝐴𝐵)) → (𝑥𝐵):𝐵𝐶)
115, 9, 10sylancl 587 . . . 4 (𝑥 ∈ (𝐶m (𝐴𝐵)) → (𝑥𝐵):𝐵𝐶)
128, 11jca 513 . . 3 (𝑥 ∈ (𝐶m (𝐴𝐵)) → ((𝑥𝐴):𝐴𝐶 ∧ (𝑥𝐵):𝐵𝐶))
13 opelxp 5674 . . . 4 (⟨(𝑥𝐴), (𝑥𝐵)⟩ ∈ ((𝐶m 𝐴) × (𝐶m 𝐵)) ↔ ((𝑥𝐴) ∈ (𝐶m 𝐴) ∧ (𝑥𝐵) ∈ (𝐶m 𝐵)))
14 simpl3 1194 . . . . . 6 (((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) → 𝐶𝑋)
15 simpl1 1192 . . . . . 6 (((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) → 𝐴𝑉)
1614, 15elmapd 8786 . . . . 5 (((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) → ((𝑥𝐴) ∈ (𝐶m 𝐴) ↔ (𝑥𝐴):𝐴𝐶))
17 simpl2 1193 . . . . . 6 (((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) → 𝐵𝑊)
1814, 17elmapd 8786 . . . . 5 (((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) → ((𝑥𝐵) ∈ (𝐶m 𝐵) ↔ (𝑥𝐵):𝐵𝐶))
1916, 18anbi12d 632 . . . 4 (((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) → (((𝑥𝐴) ∈ (𝐶m 𝐴) ∧ (𝑥𝐵) ∈ (𝐶m 𝐵)) ↔ ((𝑥𝐴):𝐴𝐶 ∧ (𝑥𝐵):𝐵𝐶)))
2013, 19bitrid 283 . . 3 (((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) → (⟨(𝑥𝐴), (𝑥𝐵)⟩ ∈ ((𝐶m 𝐴) × (𝐶m 𝐵)) ↔ ((𝑥𝐴):𝐴𝐶 ∧ (𝑥𝐵):𝐵𝐶)))
2112, 20syl5ibr 246 . 2 (((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) → (𝑥 ∈ (𝐶m (𝐴𝐵)) → ⟨(𝑥𝐴), (𝑥𝐵)⟩ ∈ ((𝐶m 𝐴) × (𝐶m 𝐵))))
22 xp1st 7958 . . . . . . 7 (𝑦 ∈ ((𝐶m 𝐴) × (𝐶m 𝐵)) → (1st𝑦) ∈ (𝐶m 𝐴))
2322adantl 483 . . . . . 6 ((((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) ∧ 𝑦 ∈ ((𝐶m 𝐴) × (𝐶m 𝐵))) → (1st𝑦) ∈ (𝐶m 𝐴))
24 elmapi 8794 . . . . . 6 ((1st𝑦) ∈ (𝐶m 𝐴) → (1st𝑦):𝐴𝐶)
2523, 24syl 17 . . . . 5 ((((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) ∧ 𝑦 ∈ ((𝐶m 𝐴) × (𝐶m 𝐵))) → (1st𝑦):𝐴𝐶)
26 xp2nd 7959 . . . . . . 7 (𝑦 ∈ ((𝐶m 𝐴) × (𝐶m 𝐵)) → (2nd𝑦) ∈ (𝐶m 𝐵))
2726adantl 483 . . . . . 6 ((((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) ∧ 𝑦 ∈ ((𝐶m 𝐴) × (𝐶m 𝐵))) → (2nd𝑦) ∈ (𝐶m 𝐵))
28 elmapi 8794 . . . . . 6 ((2nd𝑦) ∈ (𝐶m 𝐵) → (2nd𝑦):𝐵𝐶)
2927, 28syl 17 . . . . 5 ((((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) ∧ 𝑦 ∈ ((𝐶m 𝐴) × (𝐶m 𝐵))) → (2nd𝑦):𝐵𝐶)
30 simplr 768 . . . . 5 ((((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) ∧ 𝑦 ∈ ((𝐶m 𝐴) × (𝐶m 𝐵))) → (𝐴𝐵) = ∅)
3125, 29, 30fun2d 6711 . . . 4 ((((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) ∧ 𝑦 ∈ ((𝐶m 𝐴) × (𝐶m 𝐵))) → ((1st𝑦) ∪ (2nd𝑦)):(𝐴𝐵)⟶𝐶)
3231ex 414 . . 3 (((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) → (𝑦 ∈ ((𝐶m 𝐴) × (𝐶m 𝐵)) → ((1st𝑦) ∪ (2nd𝑦)):(𝐴𝐵)⟶𝐶))
33 unexg 7688 . . . . 5 ((𝐴𝑉𝐵𝑊) → (𝐴𝐵) ∈ V)
3415, 17, 33syl2anc 585 . . . 4 (((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) → (𝐴𝐵) ∈ V)
3514, 34elmapd 8786 . . 3 (((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) → (((1st𝑦) ∪ (2nd𝑦)) ∈ (𝐶m (𝐴𝐵)) ↔ ((1st𝑦) ∪ (2nd𝑦)):(𝐴𝐵)⟶𝐶))
3632, 35sylibrd 259 . 2 (((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) → (𝑦 ∈ ((𝐶m 𝐴) × (𝐶m 𝐵)) → ((1st𝑦) ∪ (2nd𝑦)) ∈ (𝐶m (𝐴𝐵))))
37 1st2nd2 7965 . . . . . . 7 (𝑦 ∈ ((𝐶m 𝐴) × (𝐶m 𝐵)) → 𝑦 = ⟨(1st𝑦), (2nd𝑦)⟩)
3837ad2antll 728 . . . . . 6 ((((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) ∧ (𝑥 ∈ (𝐶m (𝐴𝐵)) ∧ 𝑦 ∈ ((𝐶m 𝐴) × (𝐶m 𝐵)))) → 𝑦 = ⟨(1st𝑦), (2nd𝑦)⟩)
3925adantrl 715 . . . . . . . 8 ((((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) ∧ (𝑥 ∈ (𝐶m (𝐴𝐵)) ∧ 𝑦 ∈ ((𝐶m 𝐴) × (𝐶m 𝐵)))) → (1st𝑦):𝐴𝐶)
4029adantrl 715 . . . . . . . 8 ((((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) ∧ (𝑥 ∈ (𝐶m (𝐴𝐵)) ∧ 𝑦 ∈ ((𝐶m 𝐴) × (𝐶m 𝐵)))) → (2nd𝑦):𝐵𝐶)
41 res0 5946 . . . . . . . . . 10 ((1st𝑦) ↾ ∅) = ∅
42 res0 5946 . . . . . . . . . 10 ((2nd𝑦) ↾ ∅) = ∅
4341, 42eqtr4i 2768 . . . . . . . . 9 ((1st𝑦) ↾ ∅) = ((2nd𝑦) ↾ ∅)
44 simplr 768 . . . . . . . . . 10 ((((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) ∧ (𝑥 ∈ (𝐶m (𝐴𝐵)) ∧ 𝑦 ∈ ((𝐶m 𝐴) × (𝐶m 𝐵)))) → (𝐴𝐵) = ∅)
4544reseq2d 5942 . . . . . . . . 9 ((((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) ∧ (𝑥 ∈ (𝐶m (𝐴𝐵)) ∧ 𝑦 ∈ ((𝐶m 𝐴) × (𝐶m 𝐵)))) → ((1st𝑦) ↾ (𝐴𝐵)) = ((1st𝑦) ↾ ∅))
4644reseq2d 5942 . . . . . . . . 9 ((((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) ∧ (𝑥 ∈ (𝐶m (𝐴𝐵)) ∧ 𝑦 ∈ ((𝐶m 𝐴) × (𝐶m 𝐵)))) → ((2nd𝑦) ↾ (𝐴𝐵)) = ((2nd𝑦) ↾ ∅))
4743, 45, 463eqtr4a 2803 . . . . . . . 8 ((((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) ∧ (𝑥 ∈ (𝐶m (𝐴𝐵)) ∧ 𝑦 ∈ ((𝐶m 𝐴) × (𝐶m 𝐵)))) → ((1st𝑦) ↾ (𝐴𝐵)) = ((2nd𝑦) ↾ (𝐴𝐵)))
48 fresaunres1 6720 . . . . . . . 8 (((1st𝑦):𝐴𝐶 ∧ (2nd𝑦):𝐵𝐶 ∧ ((1st𝑦) ↾ (𝐴𝐵)) = ((2nd𝑦) ↾ (𝐴𝐵))) → (((1st𝑦) ∪ (2nd𝑦)) ↾ 𝐴) = (1st𝑦))
4939, 40, 47, 48syl3anc 1372 . . . . . . 7 ((((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) ∧ (𝑥 ∈ (𝐶m (𝐴𝐵)) ∧ 𝑦 ∈ ((𝐶m 𝐴) × (𝐶m 𝐵)))) → (((1st𝑦) ∪ (2nd𝑦)) ↾ 𝐴) = (1st𝑦))
50 fresaunres2 6719 . . . . . . . 8 (((1st𝑦):𝐴𝐶 ∧ (2nd𝑦):𝐵𝐶 ∧ ((1st𝑦) ↾ (𝐴𝐵)) = ((2nd𝑦) ↾ (𝐴𝐵))) → (((1st𝑦) ∪ (2nd𝑦)) ↾ 𝐵) = (2nd𝑦))
5139, 40, 47, 50syl3anc 1372 . . . . . . 7 ((((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) ∧ (𝑥 ∈ (𝐶m (𝐴𝐵)) ∧ 𝑦 ∈ ((𝐶m 𝐴) × (𝐶m 𝐵)))) → (((1st𝑦) ∪ (2nd𝑦)) ↾ 𝐵) = (2nd𝑦))
5249, 51opeq12d 4843 . . . . . 6 ((((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) ∧ (𝑥 ∈ (𝐶m (𝐴𝐵)) ∧ 𝑦 ∈ ((𝐶m 𝐴) × (𝐶m 𝐵)))) → ⟨(((1st𝑦) ∪ (2nd𝑦)) ↾ 𝐴), (((1st𝑦) ∪ (2nd𝑦)) ↾ 𝐵)⟩ = ⟨(1st𝑦), (2nd𝑦)⟩)
5338, 52eqtr4d 2780 . . . . 5 ((((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) ∧ (𝑥 ∈ (𝐶m (𝐴𝐵)) ∧ 𝑦 ∈ ((𝐶m 𝐴) × (𝐶m 𝐵)))) → 𝑦 = ⟨(((1st𝑦) ∪ (2nd𝑦)) ↾ 𝐴), (((1st𝑦) ∪ (2nd𝑦)) ↾ 𝐵)⟩)
54 reseq1 5936 . . . . . . 7 (𝑥 = ((1st𝑦) ∪ (2nd𝑦)) → (𝑥𝐴) = (((1st𝑦) ∪ (2nd𝑦)) ↾ 𝐴))
55 reseq1 5936 . . . . . . 7 (𝑥 = ((1st𝑦) ∪ (2nd𝑦)) → (𝑥𝐵) = (((1st𝑦) ∪ (2nd𝑦)) ↾ 𝐵))
5654, 55opeq12d 4843 . . . . . 6 (𝑥 = ((1st𝑦) ∪ (2nd𝑦)) → ⟨(𝑥𝐴), (𝑥𝐵)⟩ = ⟨(((1st𝑦) ∪ (2nd𝑦)) ↾ 𝐴), (((1st𝑦) ∪ (2nd𝑦)) ↾ 𝐵)⟩)
5756eqeq2d 2748 . . . . 5 (𝑥 = ((1st𝑦) ∪ (2nd𝑦)) → (𝑦 = ⟨(𝑥𝐴), (𝑥𝐵)⟩ ↔ 𝑦 = ⟨(((1st𝑦) ∪ (2nd𝑦)) ↾ 𝐴), (((1st𝑦) ∪ (2nd𝑦)) ↾ 𝐵)⟩))
5853, 57syl5ibrcom 247 . . . 4 ((((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) ∧ (𝑥 ∈ (𝐶m (𝐴𝐵)) ∧ 𝑦 ∈ ((𝐶m 𝐴) × (𝐶m 𝐵)))) → (𝑥 = ((1st𝑦) ∪ (2nd𝑦)) → 𝑦 = ⟨(𝑥𝐴), (𝑥𝐵)⟩))
59 ffn 6673 . . . . . . . 8 (𝑥:(𝐴𝐵)⟶𝐶𝑥 Fn (𝐴𝐵))
60 fnresdm 6625 . . . . . . . 8 (𝑥 Fn (𝐴𝐵) → (𝑥 ↾ (𝐴𝐵)) = 𝑥)
615, 59, 603syl 18 . . . . . . 7 (𝑥 ∈ (𝐶m (𝐴𝐵)) → (𝑥 ↾ (𝐴𝐵)) = 𝑥)
6261ad2antrl 727 . . . . . 6 ((((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) ∧ (𝑥 ∈ (𝐶m (𝐴𝐵)) ∧ 𝑦 ∈ ((𝐶m 𝐴) × (𝐶m 𝐵)))) → (𝑥 ↾ (𝐴𝐵)) = 𝑥)
6362eqcomd 2743 . . . . 5 ((((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) ∧ (𝑥 ∈ (𝐶m (𝐴𝐵)) ∧ 𝑦 ∈ ((𝐶m 𝐴) × (𝐶m 𝐵)))) → 𝑥 = (𝑥 ↾ (𝐴𝐵)))
64 vex 3452 . . . . . . . . . 10 𝑥 ∈ V
6564resex 5990 . . . . . . . . 9 (𝑥𝐴) ∈ V
6664resex 5990 . . . . . . . . 9 (𝑥𝐵) ∈ V
6765, 66op1std 7936 . . . . . . . 8 (𝑦 = ⟨(𝑥𝐴), (𝑥𝐵)⟩ → (1st𝑦) = (𝑥𝐴))
6865, 66op2ndd 7937 . . . . . . . 8 (𝑦 = ⟨(𝑥𝐴), (𝑥𝐵)⟩ → (2nd𝑦) = (𝑥𝐵))
6967, 68uneq12d 4129 . . . . . . 7 (𝑦 = ⟨(𝑥𝐴), (𝑥𝐵)⟩ → ((1st𝑦) ∪ (2nd𝑦)) = ((𝑥𝐴) ∪ (𝑥𝐵)))
70 resundi 5956 . . . . . . 7 (𝑥 ↾ (𝐴𝐵)) = ((𝑥𝐴) ∪ (𝑥𝐵))
7169, 70eqtr4di 2795 . . . . . 6 (𝑦 = ⟨(𝑥𝐴), (𝑥𝐵)⟩ → ((1st𝑦) ∪ (2nd𝑦)) = (𝑥 ↾ (𝐴𝐵)))
7271eqeq2d 2748 . . . . 5 (𝑦 = ⟨(𝑥𝐴), (𝑥𝐵)⟩ → (𝑥 = ((1st𝑦) ∪ (2nd𝑦)) ↔ 𝑥 = (𝑥 ↾ (𝐴𝐵))))
7363, 72syl5ibrcom 247 . . . 4 ((((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) ∧ (𝑥 ∈ (𝐶m (𝐴𝐵)) ∧ 𝑦 ∈ ((𝐶m 𝐴) × (𝐶m 𝐵)))) → (𝑦 = ⟨(𝑥𝐴), (𝑥𝐵)⟩ → 𝑥 = ((1st𝑦) ∪ (2nd𝑦))))
7458, 73impbid 211 . . 3 ((((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) ∧ (𝑥 ∈ (𝐶m (𝐴𝐵)) ∧ 𝑦 ∈ ((𝐶m 𝐴) × (𝐶m 𝐵)))) → (𝑥 = ((1st𝑦) ∪ (2nd𝑦)) ↔ 𝑦 = ⟨(𝑥𝐴), (𝑥𝐵)⟩))
7574ex 414 . 2 (((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) → ((𝑥 ∈ (𝐶m (𝐴𝐵)) ∧ 𝑦 ∈ ((𝐶m 𝐴) × (𝐶m 𝐵))) → (𝑥 = ((1st𝑦) ∪ (2nd𝑦)) ↔ 𝑦 = ⟨(𝑥𝐴), (𝑥𝐵)⟩)))
761, 4, 21, 36, 75en3d 8936 1 (((𝐴𝑉𝐵𝑊𝐶𝑋) ∧ (𝐴𝐵) = ∅) → (𝐶m (𝐴𝐵)) ≈ ((𝐶m 𝐴) × (𝐶m 𝐵)))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 205  wa 397  w3a 1088   = wceq 1542  wcel 2107  Vcvv 3448  cun 3913  cin 3914  wss 3915  c0 4287  cop 4597   class class class wbr 5110   × cxp 5636  cres 5640   Fn wfn 6496  wf 6497  cfv 6501  (class class class)co 7362  1st c1st 7924  2nd c2nd 7925  m cmap 8772  cen 8887
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1798  ax-4 1812  ax-5 1914  ax-6 1972  ax-7 2012  ax-8 2109  ax-9 2117  ax-10 2138  ax-11 2155  ax-12 2172  ax-ext 2708  ax-sep 5261  ax-nul 5268  ax-pow 5325  ax-pr 5389  ax-un 7677
This theorem depends on definitions:  df-bi 206  df-an 398  df-or 847  df-3an 1090  df-tru 1545  df-fal 1555  df-ex 1783  df-nf 1787  df-sb 2069  df-mo 2539  df-eu 2568  df-clab 2715  df-cleq 2729  df-clel 2815  df-nfc 2890  df-ne 2945  df-ral 3066  df-rex 3075  df-rab 3411  df-v 3450  df-sbc 3745  df-csb 3861  df-dif 3918  df-un 3920  df-in 3922  df-ss 3932  df-nul 4288  df-if 4492  df-pw 4567  df-sn 4592  df-pr 4594  df-op 4598  df-uni 4871  df-iun 4961  df-br 5111  df-opab 5173  df-mpt 5194  df-id 5536  df-xp 5644  df-rel 5645  df-cnv 5646  df-co 5647  df-dm 5648  df-rn 5649  df-res 5650  df-ima 5651  df-iota 6453  df-fun 6503  df-fn 6504  df-f 6505  df-f1 6506  df-fo 6507  df-f1o 6508  df-fv 6509  df-ov 7365  df-oprab 7366  df-mpo 7367  df-1st 7926  df-2nd 7927  df-map 8774  df-en 8891
This theorem is referenced by:  map2xp  9098  mapdom2  9099  mapdjuen  10123  ackbij1lem5  10167  hashmap  14342  mpct  43496
  Copyright terms: Public domain W3C validator