Metamath Proof Explorer


Theorem 3dvds

Description: A rule for divisibility by 3 of a number written in base 10. This is Metamath 100 proof #85. (Contributed by Mario Carneiro, 14-Jul-2014) (Revised by Mario Carneiro, 17-Jan-2015) (Revised by AV, 8-Sep-2021)

Ref Expression
Assertion 3dvds N0F:0N3k=0NFk10k3k=0NFk

Proof

Step Hyp Ref Expression
1 3z 3
2 1 a1i N0F:0N3
3 fzfid N0F:0N0NFin
4 ffvelcdm F:0Nk0NFk
5 4 adantll N0F:0Nk0NFk
6 10nn 10
7 6 nnzi 10
8 elfznn0 k0Nk0
9 8 adantl N0F:0Nk0Nk0
10 zexpcl 10k010k
11 7 9 10 sylancr N0F:0Nk0N10k
12 5 11 zmulcld N0F:0Nk0NFk10k
13 3 12 fsumzcl N0F:0Nk=0NFk10k
14 3 5 fsumzcl N0F:0Nk=0NFk
15 12 5 zsubcld N0F:0Nk0NFk10kFk
16 ax-1cn 1
17 6 nncni 10
18 16 17 negsubdi2i 110=101
19 9p1e10 9+1=10
20 19 eqcomi 10=9+1
21 20 oveq1i 101=9+1-1
22 9cn 9
23 22 16 pncan3oi 9+1-1=9
24 18 21 23 3eqtri 110=9
25 3t3e9 33=9
26 24 25 eqtr4i 110=33
27 17 a1i k010
28 1re 1
29 1lt10 1<10
30 28 29 gtneii 101
31 30 a1i k0101
32 id k0k0
33 27 31 32 geoser k0j=0k110j=110k110
34 fzfid k00k1Fin
35 elfznn0 j0k1j0
36 35 adantl k0j0k1j0
37 zexpcl 10j010j
38 7 36 37 sylancr k0j0k110j
39 34 38 fsumzcl k0j=0k110j
40 33 39 eqeltrrd k0110k110
41 1z 1
42 zsubcl 110110
43 41 7 42 mp2an 110
44 28 29 ltneii 110
45 16 17 subeq0i 110=01=10
46 45 necon3bii 1100110
47 44 46 mpbir 1100
48 7 32 10 sylancr k010k
49 zsubcl 110k110k
50 41 48 49 sylancr k0110k
51 dvdsval2 1101100110k110110k110k110
52 43 47 50 51 mp3an12i k0110110k110k110
53 40 52 mpbird k0110110k
54 48 zcnd k010k
55 negsubdi2 10k110k1=110k
56 54 16 55 sylancl k010k1=110k
57 53 56 breqtrrd k011010k1
58 peano2zm 10k10k1
59 48 58 syl k010k1
60 dvdsnegb 11010k111010k111010k1
61 43 59 60 sylancr k011010k111010k1
62 57 61 mpbird k011010k1
63 negdvdsb 11010k111010k111010k1
64 43 59 63 sylancr k011010k111010k1
65 62 64 mpbid k011010k1
66 26 65 eqbrtrrid k03310k1
67 muldvds1 3310k13310k1310k1
68 1 1 59 67 mp3an12i k03310k1310k1
69 66 68 mpd k0310k1
70 9 69 syl N0F:0Nk0N310k1
71 11 58 syl N0F:0Nk0N10k1
72 dvdsmultr2 3Fk10k1310k13Fk10k1
73 1 5 71 72 mp3an2i N0F:0Nk0N310k13Fk10k1
74 70 73 mpd N0F:0Nk0N3Fk10k1
75 5 zcnd N0F:0Nk0NFk
76 11 zcnd N0F:0Nk0N10k
77 75 76 muls1d N0F:0Nk0NFk10k1=Fk10kFk
78 74 77 breqtrd N0F:0Nk0N3Fk10kFk
79 3 2 15 78 fsumdvds N0F:0N3k=0NFk10kFk
80 12 zcnd N0F:0Nk0NFk10k
81 3 80 75 fsumsub N0F:0Nk=0NFk10kFk=k=0NFk10kk=0NFk
82 79 81 breqtrd N0F:0N3k=0NFk10kk=0NFk
83 dvdssub2 3k=0NFk10kk=0NFk3k=0NFk10kk=0NFk3k=0NFk10k3k=0NFk
84 2 13 14 82 83 syl31anc N0F:0N3k=0NFk10k3k=0NFk