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

Theorem ssenen 4493
Description: Equinumerosity of equinumerous subsets of a set.
Hypotheses
Ref Expression
ssenen.1 |- A e. V
ssenen.2 |- B e. V
Assertion
Ref Expression
ssenen |- (A ~~ B -> {x | (x (_ A /\ x ~~ C)} ~~ {x | (x (_ B /\ x ~~ C)})
Distinct variable groups:   x,A   x,B   x,C

Proof of Theorem ssenen
StepHypRef Expression
1 ssenen.2 . . . 4 |- B e. V
21bren 4368 . . 3 |- (A ~~ B <-> E.f f:A-1-1-onto->B)
3 ssenen.1 . . . . . . . 8 |- A e. V
43pwex 2741 . . . . . . 7 |- P~A e. V
54inex1 2712 . . . . . 6 |- (P~A i^i {x | x ~~ C}) e. V
65a1i 8 . . . . 5 |- (f:A-1-1-onto->B -> (P~A i^i {x | x ~~ C}) e. V)
7 entrt 4404 . . . . . . . . . 10 |- (((f"y) ~~ y /\ y ~~ C) -> (f"y) ~~ C)
8 visset 1810 . . . . . . . . . . . 12 |- y e. V
98f1imaen 4412 . . . . . . . . . . 11 |- ((f:A-1-1->B /\ y (_ A) -> (f"y) ~~ y)
10 f1of1 3683 . . . . . . . . . . 11 |- (f:A-1-1-onto->B -> f:A-1-1->B)
119, 10sylan 448 . . . . . . . . . 10 |- ((f:A-1-1-onto->B /\ y (_ A) -> (f"y) ~~ y)
127, 11sylan 448 . . . . . . . . 9 |- (((f:A-1-1-onto->B /\ y (_ A) /\ y ~~ C) -> (f"y) ~~ C)
1312exp31 376 . . . . . . . 8 |- (f:A-1-1-onto->B -> (y (_ A -> (y ~~ C -> (f"y) ~~ C)))
1413imp3a 361 . . . . . . 7 |- (f:A-1-1-onto->B -> ((y (_ A /\ y ~~ C) -> (f"y) ~~ C))
15 f1ofo 3690 . . . . . . . 8 |- (f:A-1-1-onto->B -> f:A-onto->B)
16 imassrn 3411 . . . . . . . . 9 |- (f"y) (_ ran f
17 forn 3669 . . . . . . . . . 10 |- (f:A-onto->B -> ran f = B)
1817sseq2d 2086 . . . . . . . . 9 |- (f:A-onto->B -> ((f"y) (_ ran f <-> (f"y) (_ B))
1916, 18mpbii 193 . . . . . . . 8 |- (f:A-onto->B -> (f"y) (_ B)
2015, 19syl 10 . . . . . . 7 |- (f:A-1-1-onto->B -> (f"y) (_ B)
2114, 20jctild 600 . . . . . 6 |- (f:A-1-1-onto->B -> ((y (_ A /\ y ~~ C) -> ((f"y) (_ B /\ (f"y) ~~ C)))
22 elin 2204 . . . . . . 7 |- (y e. (P~A i^i {x | x ~~ C}) <-> (y e. P~A /\ y e. {x | x ~~ C}))
238elpw 2401 . . . . . . . 8 |- (y e. P~A <-> y (_ A)
24 breq1 2618 . . . . . . . . 9 |- (x = y -> (x ~~ C <-> y ~~ C))
258, 24elab 1894 . . . . . . . 8 |- (y e. {x | x ~~ C} <-> y ~~ C)
2623, 25anbi12i 482 . . . . . . 7 |- ((y e. P~A /\ y e. {x | x ~~ C}) <-> (y (_ A /\ y ~~ C))
2722, 26bitr 173 . . . . . 6 |- (y e. (P~A i^i {x | x ~~ C}) <-> (y (_ A /\ y ~~ C))
28 elin 2204 . . . . . . 7 |- ((f"y) e. (P~B i^i {x | x ~~ C}) <-> ((f"y) e. P~B /\ (f"y) e. {x | x ~~ C}))
29 visset 1810 . . . . . . . . . 10 |- f e. V
30 imaexg 3412 . . . . . . . . . 10 |- (f e. V -> (f"y) e. V)
3129, 30ax-mp 7 . . . . . . . . 9 |- (f"y) e. V
3231elpw 2401 . . . . . . . 8 |- ((f"y) e. P~B <-> (f"y) (_ B)
33 breq1 2618 . . . . . . . . 9 |- (x = (f"y) -> (x ~~ C <-> (f"y) ~~ C))
3431, 33elab 1894 . . . . . . . 8 |- ((f"y) e. {x | x ~~ C} <-> (f"y) ~~ C)
3532, 34anbi12i 482 . . . . . . 7 |- (((f"y) e. P~B /\ (f"y) e. {x | x ~~ C}) <-> ((f"y) (_ B /\ (f"y) ~~ C))
3628, 35bitr 173 . . . . . 6 |- ((f"y) e. (P~B i^i {x | x ~~ C}) <-> ((f"y) (_ B /\ (f"y) ~~ C))
3721, 27, 363imtr4g 552 . . . . 5 |- (f:A-1-1-onto->B -> (y e. (P~A i^i {x | x ~~ C}) -> (f"y) e. (P~B i^i {x | x ~~ C})))
38 f1ocnv 3696 . . . . . . 7 |- (f:A-1-1-onto->B -> `'f:B-1-1-onto->A)
39 entrt 4404 . . . . . . . . . . 11 |- (((`'f"z) ~~ z /\ z ~~ C) -> (`'f"z) ~~ C)
40 visset 1810 . . . . . . . . . . . . 13 |- z e. V
4140f1imaen 4412 . . . . . . . . . . . 12 |- ((`'f:B-1-1->A /\ z (_ B) -> (`'f"z) ~~ z)
42 f1of1 3683 . . . . . . . . . . . 12 |- (`'f:B-1-1-onto->A -> `'f:B-1-1->A)
4341, 42sylan 448 . . . . . . . . . . 11 |- ((`'f:B-1-1-onto->A /\ z (_ B) -> (`'f"z) ~~ z)
4439, 43sylan 448 . . . . . . . . . 10 |- (((`'f:B-1-1-onto->A /\ z (_ B) /\ z ~~ C) -> (`'f"z) ~~ C)
4544exp31 376 . . . . . . . . 9 |- (`'f:B-1-1-onto->A -> (z (_ B -> (z ~~ C -> (`'f"z) ~~ C)))
4645imp3a 361 . . . . . . . 8 |- (`'f:B-1-1-onto->A -> ((z (_ B /\ z ~~ C) -> (`'f"z) ~~ C))
47 f1ofo 3690 . . . . . . . . 9 |- (`'f:B-1-1-onto->A -> `'f:B-onto->A)
48 imassrn 3411 . . . . . . . . . 10 |- (`'f"z) (_ ran `' f
49 forn 3669 . . . . . . . . . . 11 |- (`'f:B-onto->A -> ran `' f = A)
5049sseq2d 2086 . . . . . . . . . 10 |- (`'f:B-onto->A -> ((`'f"z) (_ ran `' f <-> (`'f"z) (_ A))
5148, 50mpbii 193 . . . . . . . . 9 |- (`'f:B-onto->A -> (`'f"z) (_ A)
5247, 51syl 10 . . . . . . . 8 |- (`'f:B-1-1-onto->A -> (`'f"z) (_ A)
5346, 52jctild 600 . . . . . . 7 |- (`'f:B-1-1-onto->A -> ((z (_ B /\ z ~~ C) -> ((`'f"z) (_ A /\ (`'f"z) ~~ C)))
5438, 53syl 10 . . . . . 6 |- (f:A-1-1-onto->B -> ((z (_ B /\ z ~~ C) -> ((`'f"z) (_ A /\ (`'f"z) ~~ C)))
55 elin 2204 . . . . . . 7 |- (z e. (P~B i^i {x | x ~~ C}) <-> (z e. P~B /\ z e. {x | x ~~ C}))
5640elpw 2401 . . . . . . . 8 |- (z e. P~B <-> z (_ B)
57 breq1 2618 . . . . . . . . 9 |- (x = z -> (x ~~ C <-> z ~~ C))
5840, 57elab 1894 . . . . . . . 8 |- (z e. {x | x ~~ C} <-> z ~~ C)
5956, 58anbi12i 482 . . . . . . 7 |- ((z e. P~B /\ z e. {x | x ~~ C}) <-> (z (_ B /\ z ~~ C))
6055, 59bitr 173 . . . . . 6 |- (z e. (P~B i^i {x | x ~~ C}) <-> (z (_ B /\ z ~~ C))
61 elin 2204 . . . . . . 7 |- ((`'f"z) e. (P~A i^i {x | x ~~ C}) <-> ((`'f"z) e. P~A /\ (`'f"z) e. {x | x ~~ C}))
6229cnvex 3516 . . . . . . . . . 10 |- `'f e. V
63 imaexg 3412 . . . . . . . . . 10 |- (`'f e. V -> (`'f"z) e. V)
6462, 63ax-mp 7 . . . . . . . . 9 |- (`'f"z) e. V
6564elpw 2401 . . . . . . . 8 |- ((`'f"z) e. P~A <-> (`'f"z) (_ A)
66 breq1 2618 . . . . . . . . 9 |- (x = (`'f"z) -> (x ~~ C <-> (`'f"z) ~~ C))
6764, 66elab 1894 . . . . . . . 8 |- ((`'f"z) e. {x | x ~~ C} <-> (`'f"z) ~~ C)
6865, 67anbi12i 482 . . . . . . 7 |- (((`'f"z) e. P~A /\ (`'f"z) e. {x | x ~~ C}) <-> ((`'f"z) (_ A /\ (`'f"z) ~~ C))
6961, 68bitr 173 . . . . . 6 |- ((`'f"z) e. (P~A i^i {x | x ~~ C}) <-> ((`'f"z) (_ A /\ (`'f"z) ~~ C))
7054, 60, 693imtr4g 552 . . . . 5 |- (f:A-1-1-onto->B -> (z e. (P~B i^i {x | x ~~ C}) -> (`'f"z) e. (P~A i^i {x | x ~~ C})))
71 imaeq2 3398 . . . . . . . . . . . 12 |- (y = (`'f"z) -> (f"y) = (f"(`'f"z)))
72 f1orel 3687 . . . . . . . . . . . . . . . 16 |- (f:A-1-1-onto->B -> Rel f)
73 dfrel2 3481 . . . . . . . . . . . . . . . 16 |- (Rel f <-> `'`'f = f)
7472, 73sylib 198 . . . . . . . . . . . . . . 15 |- (f:A-1-1-onto->B -> `'`'f = f)
7574imaeq1d 3399 . . . . . . . . . . . . . 14 |- (f:A-1-1-onto->B -> (`'`'f"(`'f"z)) = (f"(`'f"z)))
7675adantr 389 . . . . . . . . . . . . 13 |- ((f:A-1-1-onto->B /\ z (_ B) -> (`'`'f"(`'f"z)) = (f"(`'f"z)))
77 f1imacnv 3700 . . . . . . . . . . . . . 14 |- ((`'f:B-1-1->A /\ z (_ B) -> (`'`'f"(`'f"z)) = z)
7838, 42syl 10 . . . . . . . . . . . . . 14 |- (f:A-1-1-onto->B -> `'f:B-1-1->A)
7977, 78sylan 448 . . . . . . . . . . . . 13 |- ((f:A-1-1-onto->B /\ z (_ B) -> (`'`'f"(`'f"z)) = z)
8076, 79eqtr3d 1507 . . . . . . . . . . . 12 |- ((f:A-1-1-onto->B /\ z (_ B) -> (f"(`'f"z)) = z)
8171, 80sylan9eqr 1527 . . . . . . . . . . 11 |- (((f:A-1-1-onto->B /\ z (_ B) /\ y = (`'f