Metamath Proof Explorer


Theorem domss2

Description: A corollary of disjenex . If F is an injection from A to B then G is a right inverse of F from B to a superset of A . (Contributed by Mario Carneiro, 7-Feb-2015) (Revised by Mario Carneiro, 24-Jun-2015)

Ref Expression
Hypothesis domss2.1 G=F1stBranF×𝒫ranA-1
Assertion domss2 F:A1-1BAVBWG:B1-1 ontoranGAranGGF=IA

Proof

Step Hyp Ref Expression
1 domss2.1 G=F1stBranF×𝒫ranA-1
2 f1f1orn F:A1-1BF:A1-1 ontoranF
3 2 3ad2ant1 F:A1-1BAVBWF:A1-1 ontoranF
4 simp2 F:A1-1BAVBWAV
5 rnexg AVranAV
6 4 5 syl F:A1-1BAVBWranAV
7 uniexg ranAVranAV
8 pwexg ranAV𝒫ranAV
9 6 7 8 3syl F:A1-1BAVBW𝒫ranAV
10 1stconst 𝒫ranAV1stBranF×𝒫ranA:BranF×𝒫ranA1-1 ontoBranF
11 9 10 syl F:A1-1BAVBW1stBranF×𝒫ranA:BranF×𝒫ranA1-1 ontoBranF
12 difexg BWBranFV
13 12 3ad2ant3 F:A1-1BAVBWBranFV
14 disjen AVBranFVABranF×𝒫ranA=BranF×𝒫ranABranF
15 4 13 14 syl2anc F:A1-1BAVBWABranF×𝒫ranA=BranF×𝒫ranABranF
16 15 simpld F:A1-1BAVBWABranF×𝒫ranA=
17 disjdif ranFBranF=
18 17 a1i F:A1-1BAVBWranFBranF=
19 f1oun F:A1-1 ontoranF1stBranF×𝒫ranA:BranF×𝒫ranA1-1 ontoBranFABranF×𝒫ranA=ranFBranF=F1stBranF×𝒫ranA:ABranF×𝒫ranA1-1 ontoranFBranF
20 3 11 16 18 19 syl22anc F:A1-1BAVBWF1stBranF×𝒫ranA:ABranF×𝒫ranA1-1 ontoranFBranF
21 undif2 ranFBranF=ranFB
22 f1f F:A1-1BF:AB
23 22 3ad2ant1 F:A1-1BAVBWF:AB
24 23 frnd F:A1-1BAVBWranFB
25 ssequn1 ranFBranFB=B
26 24 25 sylib F:A1-1BAVBWranFB=B
27 21 26 eqtrid F:A1-1BAVBWranFBranF=B
28 27 f1oeq3d F:A1-1BAVBWF1stBranF×𝒫ranA:ABranF×𝒫ranA1-1 ontoranFBranFF1stBranF×𝒫ranA:ABranF×𝒫ranA1-1 ontoB
29 20 28 mpbid F:A1-1BAVBWF1stBranF×𝒫ranA:ABranF×𝒫ranA1-1 ontoB
30 f1ocnv F1stBranF×𝒫ranA:ABranF×𝒫ranA1-1 ontoBF1stBranF×𝒫ranA-1:B1-1 ontoABranF×𝒫ranA
31 29 30 syl F:A1-1BAVBWF1stBranF×𝒫ranA-1:B1-1 ontoABranF×𝒫ranA
32 f1oeq1 G=F1stBranF×𝒫ranA-1G:B1-1 ontoABranF×𝒫ranAF1stBranF×𝒫ranA-1:B1-1 ontoABranF×𝒫ranA
33 1 32 ax-mp G:B1-1 ontoABranF×𝒫ranAF1stBranF×𝒫ranA-1:B1-1 ontoABranF×𝒫ranA
34 31 33 sylibr F:A1-1BAVBWG:B1-1 ontoABranF×𝒫ranA
35 f1ofo G:B1-1 ontoABranF×𝒫ranAG:BontoABranF×𝒫ranA
36 forn G:BontoABranF×𝒫ranAranG=ABranF×𝒫ranA
37 34 35 36 3syl F:A1-1BAVBWranG=ABranF×𝒫ranA
38 37 f1oeq3d F:A1-1BAVBWG:B1-1 ontoranGG:B1-1 ontoABranF×𝒫ranA
39 34 38 mpbird F:A1-1BAVBWG:B1-1 ontoranG
40 ssun1 AABranF×𝒫ranA
41 40 37 sseqtrrid F:A1-1BAVBWAranG
42 ssid ranFranF
43 cores ranFranFGranFF=GF
44 42 43 ax-mp GranFF=GF
45 dmres dom1stBranF×𝒫ranA-1ranF=ranFdom1stBranF×𝒫ranA-1
46 f1ocnv 1stBranF×𝒫ranA:BranF×𝒫ranA1-1 ontoBranF1stBranF×𝒫ranA-1:BranF1-1 ontoBranF×𝒫ranA
47 f1odm 1stBranF×𝒫ranA-1:BranF1-1 ontoBranF×𝒫ranAdom1stBranF×𝒫ranA-1=BranF
48 11 46 47 3syl F:A1-1BAVBWdom1stBranF×𝒫ranA-1=BranF
49 48 ineq2d F:A1-1BAVBWranFdom1stBranF×𝒫ranA-1=ranFBranF
50 49 17 eqtrdi F:A1-1BAVBWranFdom1stBranF×𝒫ranA-1=
51 45 50 eqtrid F:A1-1BAVBWdom1stBranF×𝒫ranA-1ranF=
52 relres Rel1stBranF×𝒫ranA-1ranF
53 reldm0 Rel1stBranF×𝒫ranA-1ranF1stBranF×𝒫ranA-1ranF=dom1stBranF×𝒫ranA-1ranF=
54 52 53 ax-mp 1stBranF×𝒫ranA-1ranF=dom1stBranF×𝒫ranA-1ranF=
55 51 54 sylibr F:A1-1BAVBW1stBranF×𝒫ranA-1ranF=
56 55 uneq2d F:A1-1BAVBWF-11stBranF×𝒫ranA-1ranF=F-1
57 cnvun F1stBranF×𝒫ranA-1=F-11stBranF×𝒫ranA-1
58 1 57 eqtri G=F-11stBranF×𝒫ranA-1
59 58 reseq1i GranF=F-11stBranF×𝒫ranA-1ranF
60 resundir F-11stBranF×𝒫ranA-1ranF=F-1ranF1stBranF×𝒫ranA-1ranF
61 df-rn ranF=domF-1
62 61 reseq2i F-1ranF=F-1domF-1
63 relcnv RelF-1
64 resdm RelF-1F-1domF-1=F-1
65 63 64 ax-mp F-1domF-1=F-1
66 62 65 eqtri F-1ranF=F-1
67 66 uneq1i F-1ranF1stBranF×𝒫ranA-1ranF=F-11stBranF×𝒫ranA-1ranF
68 59 60 67 3eqtrri F-11stBranF×𝒫ranA-1ranF=GranF
69 un0 F-1=F-1
70 56 68 69 3eqtr3g F:A1-1BAVBWGranF=F-1
71 70 coeq1d F:A1-1BAVBWGranFF=F-1F
72 f1cocnv1 F:A1-1BF-1F=IA
73 72 3ad2ant1 F:A1-1BAVBWF-1F=IA
74 71 73 eqtrd F:A1-1BAVBWGranFF=IA
75 44 74 eqtr3id F:A1-1BAVBWGF=IA
76 39 41 75 3jca F:A1-1BAVBWG:B1-1 ontoranGAranGGF=IA