Metamath Proof Explorer


Theorem ackbij1

Description: The Ackermann bijection, part 1: each natural number can be uniquely coded in binary as a finite set of natural numbers and conversely. (Contributed by Stefan O'Rear, 18-Nov-2014)

Ref Expression
Hypothesis ackbij.f F=x𝒫ωFincardyxy×𝒫y
Assertion ackbij1 F:𝒫ωFin1-1 ontoω

Proof

Step Hyp Ref Expression
1 ackbij.f F=x𝒫ωFincardyxy×𝒫y
2 1 ackbij1lem17 F:𝒫ωFin1-1ω
3 f1f F:𝒫ωFin1-1ωF:𝒫ωFinω
4 frn F:𝒫ωFinωranFω
5 2 3 4 mp2b ranFω
6 eleq1 b=branFranF
7 eleq1 b=abranFaranF
8 eleq1 b=sucabranFsucaranF
9 peano1 ω
10 ackbij1lem3 ω𝒫ωFin
11 9 10 ax-mp 𝒫ωFin
12 1 ackbij1lem13 F=
13 fveqeq2 a=Fa=F=
14 13 rspcev 𝒫ωFinF=a𝒫ωFinFa=
15 11 12 14 mp2an a𝒫ωFinFa=
16 f1fn F:𝒫ωFin1-1ωFFn𝒫ωFin
17 2 16 ax-mp FFn𝒫ωFin
18 fvelrnb FFn𝒫ωFinranFa𝒫ωFinFa=
19 17 18 ax-mp ranFa𝒫ωFinFa=
20 15 19 mpbir ranF
21 1 ackbij1lem18 c𝒫ωFinb𝒫ωFinFb=sucFc
22 21 adantl aωc𝒫ωFinb𝒫ωFinFb=sucFc
23 suceq Fc=asucFc=suca
24 23 eqeq2d Fc=aFb=sucFcFb=suca
25 24 rexbidv Fc=ab𝒫ωFinFb=sucFcb𝒫ωFinFb=suca
26 22 25 syl5ibcom aωc𝒫ωFinFc=ab𝒫ωFinFb=suca
27 26 rexlimdva aωc𝒫ωFinFc=ab𝒫ωFinFb=suca
28 fvelrnb FFn𝒫ωFinaranFc𝒫ωFinFc=a
29 17 28 ax-mp aranFc𝒫ωFinFc=a
30 fvelrnb FFn𝒫ωFinsucaranFb𝒫ωFinFb=suca
31 17 30 ax-mp sucaranFb𝒫ωFinFb=suca
32 27 29 31 3imtr4g aωaranFsucaranF
33 6 7 8 7 20 32 finds aωaranF
34 33 ssriv ωranF
35 5 34 eqssi ranF=ω
36 dff1o5 F:𝒫ωFin1-1 ontoωF:𝒫ωFin1-1ωranF=ω
37 2 35 36 mpbir2an F:𝒫ωFin1-1 ontoω