Metamath Proof Explorer


Theorem numaddc

Description: Add two decimal integers M and N (with carry). (Contributed by Mario Carneiro, 18-Feb-2014)

Ref Expression
Hypotheses numma.1 โŠข ๐‘‡ โˆˆ โ„•0
numma.2 โŠข ๐ด โˆˆ โ„•0
numma.3 โŠข ๐ต โˆˆ โ„•0
numma.4 โŠข ๐ถ โˆˆ โ„•0
numma.5 โŠข ๐ท โˆˆ โ„•0
numma.6 โŠข ๐‘€ = ( ( ๐‘‡ ยท ๐ด ) + ๐ต )
numma.7 โŠข ๐‘ = ( ( ๐‘‡ ยท ๐ถ ) + ๐ท )
numaddc.8 โŠข ๐น โˆˆ โ„•0
numaddc.9 โŠข ( ( ๐ด + ๐ถ ) + 1 ) = ๐ธ
numaddc.10 โŠข ( ๐ต + ๐ท ) = ( ( ๐‘‡ ยท 1 ) + ๐น )
Assertion numaddc ( ๐‘€ + ๐‘ ) = ( ( ๐‘‡ ยท ๐ธ ) + ๐น )

Proof

Step Hyp Ref Expression
1 numma.1 โŠข ๐‘‡ โˆˆ โ„•0
2 numma.2 โŠข ๐ด โˆˆ โ„•0
3 numma.3 โŠข ๐ต โˆˆ โ„•0
4 numma.4 โŠข ๐ถ โˆˆ โ„•0
5 numma.5 โŠข ๐ท โˆˆ โ„•0
6 numma.6 โŠข ๐‘€ = ( ( ๐‘‡ ยท ๐ด ) + ๐ต )
7 numma.7 โŠข ๐‘ = ( ( ๐‘‡ ยท ๐ถ ) + ๐ท )
8 numaddc.8 โŠข ๐น โˆˆ โ„•0
9 numaddc.9 โŠข ( ( ๐ด + ๐ถ ) + 1 ) = ๐ธ
10 numaddc.10 โŠข ( ๐ต + ๐ท ) = ( ( ๐‘‡ ยท 1 ) + ๐น )
11 1 2 3 numcl โŠข ( ( ๐‘‡ ยท ๐ด ) + ๐ต ) โˆˆ โ„•0
12 6 11 eqeltri โŠข ๐‘€ โˆˆ โ„•0
13 12 nn0cni โŠข ๐‘€ โˆˆ โ„‚
14 13 mulridi โŠข ( ๐‘€ ยท 1 ) = ๐‘€
15 14 oveq1i โŠข ( ( ๐‘€ ยท 1 ) + ๐‘ ) = ( ๐‘€ + ๐‘ )
16 1nn0 โŠข 1 โˆˆ โ„•0
17 2 nn0cni โŠข ๐ด โˆˆ โ„‚
18 17 mulridi โŠข ( ๐ด ยท 1 ) = ๐ด
19 18 oveq1i โŠข ( ( ๐ด ยท 1 ) + ( ๐ถ + 1 ) ) = ( ๐ด + ( ๐ถ + 1 ) )
20 4 nn0cni โŠข ๐ถ โˆˆ โ„‚
21 ax-1cn โŠข 1 โˆˆ โ„‚
22 17 20 21 addassi โŠข ( ( ๐ด + ๐ถ ) + 1 ) = ( ๐ด + ( ๐ถ + 1 ) )
23 19 22 9 3eqtr2i โŠข ( ( ๐ด ยท 1 ) + ( ๐ถ + 1 ) ) = ๐ธ
24 3 nn0cni โŠข ๐ต โˆˆ โ„‚
25 24 mulridi โŠข ( ๐ต ยท 1 ) = ๐ต
26 25 oveq1i โŠข ( ( ๐ต ยท 1 ) + ๐ท ) = ( ๐ต + ๐ท )
27 26 10 eqtri โŠข ( ( ๐ต ยท 1 ) + ๐ท ) = ( ( ๐‘‡ ยท 1 ) + ๐น )
28 1 2 3 4 5 6 7 16 8 16 23 27 nummac โŠข ( ( ๐‘€ ยท 1 ) + ๐‘ ) = ( ( ๐‘‡ ยท ๐ธ ) + ๐น )
29 15 28 eqtr3i โŠข ( ๐‘€ + ๐‘ ) = ( ( ๐‘‡ ยท ๐ธ ) + ๐น )