Metamath Proof Explorer


Theorem naddcnffo

Description: Addition of Cantor normal forms is a function onto Cantor normal forms. (Contributed by RP, 2-Jan-2025)

Ref Expression
Assertion naddcnffo XOnS=domωCNFXf+𝑜S×S:S×SontoS

Proof

Step Hyp Ref Expression
1 naddcnff XOnS=domωCNFXf+𝑜S×S:S×SS
2 simpr XOnS=domωCNFXfSfS
3 peano1 ω
4 fconst6g ωX×:Xω
5 3 4 mp1i XOnS=domωCNFXX×:Xω
6 simpl XOnS=domωCNFXXOn
7 3 a1i XOnS=domωCNFXω
8 6 7 fczfsuppd XOnS=domωCNFXfinSuppX×
9 simpr XOnS=domωCNFXS=domωCNFX
10 9 eleq2d XOnS=domωCNFXX×SX×domωCNFX
11 eqid domωCNFX=domωCNFX
12 omelon ωOn
13 12 a1i XOnS=domωCNFXωOn
14 11 13 6 cantnfs XOnS=domωCNFXX×domωCNFXX×:XωfinSuppX×
15 10 14 bitrd XOnS=domωCNFXX×SX×:XωfinSuppX×
16 5 8 15 mpbir2and XOnS=domωCNFXX×S
17 16 adantr XOnS=domωCNFXfSX×S
18 simpl fSX×SfS
19 18 adantl XOnS=domωCNFXfSX×SfS
20 simpr fSX×SX×S
21 20 adantl XOnS=domωCNFXfSX×SX×S
22 19 21 ovresd XOnS=domωCNFXfSX×Sff+𝑜S×SX×=f+𝑜fX×
23 9 eleq2d XOnS=domωCNFXfSfdomωCNFX
24 11 13 6 cantnfs XOnS=domωCNFXfdomωCNFXf:XωfinSuppf
25 23 24 bitrd XOnS=domωCNFXfSf:XωfinSuppf
26 25 biimpd XOnS=domωCNFXfSf:XωfinSuppf
27 simpl f:XωfinSuppff:Xω
28 18 26 27 syl56 XOnS=domωCNFXfSX×Sf:Xω
29 28 imp XOnS=domωCNFXfSX×Sf:Xω
30 29 ffnd XOnS=domωCNFXfSX×SfFnX
31 fnconstg ωX×FnX
32 3 31 mp1i XOnS=domωCNFXfSX×SX×FnX
33 6 adantr XOnS=domωCNFXfSX×SXOn
34 inidm XX=X
35 30 32 33 33 34 offn XOnS=domωCNFXfSX×Sf+𝑜fX×FnX
36 30 adantr XOnS=domωCNFXfSX×SxXfFnX
37 3 31 mp1i XOnS=domωCNFXfSX×SxXX×FnX
38 simplll XOnS=domωCNFXfSX×SxXXOn
39 simpr XOnS=domωCNFXfSX×SxXxX
40 fnfvof fFnXX×FnXXOnxXf+𝑜fX×x=fx+𝑜X×x
41 36 37 38 39 40 syl22anc XOnS=domωCNFXfSX×SxXf+𝑜fX×x=fx+𝑜X×x
42 3 a1i XOnS=domωCNFXfSX×SxXω
43 fvconst2g ωxXX×x=
44 42 39 43 syl2anc XOnS=domωCNFXfSX×SxXX×x=
45 44 oveq2d XOnS=domωCNFXfSX×SxXfx+𝑜X×x=fx+𝑜
46 29 ffvelcdmda XOnS=domωCNFXfSX×SxXfxω
47 nnon fxωfxOn
48 oa0 fxOnfx+𝑜=fx
49 46 47 48 3syl XOnS=domωCNFXfSX×SxXfx+𝑜=fx
50 41 45 49 3eqtrd XOnS=domωCNFXfSX×SxXf+𝑜fX×x=fx
51 35 30 50 eqfnfvd XOnS=domωCNFXfSX×Sf+𝑜fX×=f
52 22 51 eqtr2d XOnS=domωCNFXfSX×Sf=ff+𝑜S×SX×
53 52 expr XOnS=domωCNFXfSX×Sf=ff+𝑜S×SX×
54 17 53 jcai XOnS=domωCNFXfSX×Sf=ff+𝑜S×SX×
55 oveq2 z=X×ff+𝑜S×Sz=ff+𝑜S×SX×
56 55 rspceeqv X×Sf=ff+𝑜S×SX×zSf=ff+𝑜S×Sz
57 54 56 syl XOnS=domωCNFXfSzSf=ff+𝑜S×Sz
58 oveq1 g=fgf+𝑜S×Sz=ff+𝑜S×Sz
59 58 eqeq2d g=ff=gf+𝑜S×Szf=ff+𝑜S×Sz
60 59 rexbidv g=fzSf=gf+𝑜S×SzzSf=ff+𝑜S×Sz
61 60 rspcev fSzSf=ff+𝑜S×SzgSzSf=gf+𝑜S×Sz
62 2 57 61 syl2anc XOnS=domωCNFXfSgSzSf=gf+𝑜S×Sz
63 62 ralrimiva XOnS=domωCNFXfSgSzSf=gf+𝑜S×Sz
64 foov f+𝑜S×S:S×SontoSf+𝑜S×S:S×SSfSgSzSf=gf+𝑜S×Sz
65 1 63 64 sylanbrc XOnS=domωCNFXf+𝑜S×S:S×SontoS