Metamath Proof Explorer


Theorem hashgadd

Description: G maps ordinal addition to integer addition. (Contributed by Paul Chapman, 30-Nov-2012) (Revised by Mario Carneiro, 15-Sep-2013)

Ref Expression
Hypothesis hashgadd.1 G=recxVx+10ω
Assertion hashgadd AωBωGA+𝑜B=GA+GB

Proof

Step Hyp Ref Expression
1 hashgadd.1 G=recxVx+10ω
2 oveq2 n=A+𝑜n=A+𝑜
3 2 fveq2d n=GA+𝑜n=GA+𝑜
4 fveq2 n=Gn=G
5 4 oveq2d n=GA+Gn=GA+G
6 3 5 eqeq12d n=GA+𝑜n=GA+GnGA+𝑜=GA+G
7 6 imbi2d n=AωGA+𝑜n=GA+GnAωGA+𝑜=GA+G
8 oveq2 n=zA+𝑜n=A+𝑜z
9 8 fveq2d n=zGA+𝑜n=GA+𝑜z
10 fveq2 n=zGn=Gz
11 10 oveq2d n=zGA+Gn=GA+Gz
12 9 11 eqeq12d n=zGA+𝑜n=GA+GnGA+𝑜z=GA+Gz
13 12 imbi2d n=zAωGA+𝑜n=GA+GnAωGA+𝑜z=GA+Gz
14 oveq2 n=suczA+𝑜n=A+𝑜sucz
15 14 fveq2d n=suczGA+𝑜n=GA+𝑜sucz
16 fveq2 n=suczGn=Gsucz
17 16 oveq2d n=suczGA+Gn=GA+Gsucz
18 15 17 eqeq12d n=suczGA+𝑜n=GA+GnGA+𝑜sucz=GA+Gsucz
19 18 imbi2d n=suczAωGA+𝑜n=GA+GnAωGA+𝑜sucz=GA+Gsucz
20 oveq2 n=BA+𝑜n=A+𝑜B
21 20 fveq2d n=BGA+𝑜n=GA+𝑜B
22 fveq2 n=BGn=GB
23 22 oveq2d n=BGA+Gn=GA+GB
24 21 23 eqeq12d n=BGA+𝑜n=GA+GnGA+𝑜B=GA+GB
25 24 imbi2d n=BAωGA+𝑜n=GA+GnAωGA+𝑜B=GA+GB
26 1 hashgf1o G:ω1-1 onto0
27 f1of G:ω1-1 onto0G:ω0
28 26 27 ax-mp G:ω0
29 28 ffvelcdmi AωGA0
30 29 nn0cnd AωGA
31 30 addridd AωGA+0=GA
32 0z 0
33 32 1 om2uz0i G=0
34 33 oveq2i GA+G=GA+0
35 34 a1i AωGA+G=GA+0
36 nna0 AωA+𝑜=A
37 36 fveq2d AωGA+𝑜=GA
38 31 35 37 3eqtr4rd AωGA+𝑜=GA+G
39 nnasuc AωzωA+𝑜sucz=sucA+𝑜z
40 39 fveq2d AωzωGA+𝑜sucz=GsucA+𝑜z
41 nnacl AωzωA+𝑜zω
42 32 1 om2uzsuci A+𝑜zωGsucA+𝑜z=GA+𝑜z+1
43 41 42 syl AωzωGsucA+𝑜z=GA+𝑜z+1
44 40 43 eqtrd AωzωGA+𝑜sucz=GA+𝑜z+1
45 44 3adant3 AωzωGA+𝑜z=GA+GzGA+𝑜sucz=GA+𝑜z+1
46 28 ffvelcdmi zωGz0
47 46 nn0cnd zωGz
48 ax-1cn 1
49 addass GAGz1GA+Gz+1=GA+Gz+1
50 48 49 mp3an3 GAGzGA+Gz+1=GA+Gz+1
51 30 47 50 syl2an AωzωGA+Gz+1=GA+Gz+1
52 51 3adant3 AωzωGA+𝑜z=GA+GzGA+Gz+1=GA+Gz+1
53 oveq1 GA+𝑜z=GA+GzGA+𝑜z+1=GA+Gz+1
54 53 3ad2ant3 AωzωGA+𝑜z=GA+GzGA+𝑜z+1=GA+Gz+1
55 32 1 om2uzsuci zωGsucz=Gz+1
56 55 oveq2d zωGA+Gsucz=GA+Gz+1
57 56 3ad2ant2 AωzωGA+𝑜z=GA+GzGA+Gsucz=GA+Gz+1
58 52 54 57 3eqtr4d AωzωGA+𝑜z=GA+GzGA+𝑜z+1=GA+Gsucz
59 45 58 eqtrd AωzωGA+𝑜z=GA+GzGA+𝑜sucz=GA+Gsucz
60 59 3expia AωzωGA+𝑜z=GA+GzGA+𝑜sucz=GA+Gsucz
61 60 expcom zωAωGA+𝑜z=GA+GzGA+𝑜sucz=GA+Gsucz
62 61 a2d zωAωGA+𝑜z=GA+GzAωGA+𝑜sucz=GA+Gsucz
63 7 13 19 25 38 62 finds BωAωGA+𝑜B=GA+GB
64 63 impcom AωBωGA+𝑜B=GA+GB