MPE Home Metamath Proof Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >  1kp2ke3k Unicode version

Theorem 1kp2ke3k 21602
Description: Example for df-dec 10315, 1000 + 2000 = 3000.

This proof disproves (by counter-example) the assertion of Hao Wang, who stated, "There is a theorem in the primitive notation of set theory that corresponds to the arithmetic theorem 1000 + 2000 = 3000. The formula would be forbiddingly long... even if (one) knows the definitions and is asked to simplify the long formula according to them, chances are he will make errors and arrive at some incorrect result." (Hao Wang, "Theory and practice in mathematics" , In Thomas Tymoczko, editor, New Directions in the Philosophy of Mathematics, pp 129-152, Birkauser Boston, Inc., Boston, 1986. (QA8.6.N48). The quote itself is on page 140.)

This is noted in Metamath: A Computer Language for Pure Mathematics by Norman Megill (2007) section 1.1.3. Megill then states, "A number of writers have conveyed the impression that the kind of absolute rigor provided by Metamath is an impossible dream, suggesting that a complete, formal verification of a typical theorem would take millions of steps in untold volumes of books... These writers assume, however, that in order to achieve the kind of complete formal verification they desire one must break down a proof into individual primitive steps that make direct reference to the axioms. This is not necessary. There is no reason not to make use of previously proved theorems rather than proving them over and over... A hierarchy of theorems and definitions permits an exponential growth in the formula sizes and primitive proof steps to be described with only a linear growth in the number of symbols used. Of course, this is how ordinary informal mathematics is normally done anyway, but with Metamath it can be done with absolute rigor and precision."

The proof here starts with  ( 2  +  1 )  =  3, commutes it, and repeatedly multiplies both sides by ten. This is certainly longer than traditional mathematical proofs, e.g., there are a number of steps explicitly shown here to show that we're allowed to do operations such as multiplication. However, while longer, the proof is clearly a manageable size - even though every step is rigorously derived all the way back to the primitive notions of set theory and logic. And while there's a risk of making errors, the many independent verifiers make it much less likely that an incorrect result will be accepted.

This proof heavily relies on the decimal constructor df-dec 10315 developed by Mario Carneiro in 2015. The underlying Metamath language has an intentionally very small set of primitives; it doesn't even have a built-in construct for numbers. Instead, the digits are defined using these primitives, and the decimal constructor is used to make it easy to express larger numbers as combinations of digits.

(Contributed by David A. Wheeler, 29-Jun-2016.) (Shortened by Mario Carneiro using the arithmetic algorithm in mmj2, 30-Jun-2016.)

Assertion
Ref Expression
1kp2ke3k  |-  (;;; 1 0 0 0  + ;;; 2 0 0 0 )  = ;;; 3 0 0 0

Proof of Theorem 1kp2ke3k
StepHypRef Expression
1 1nn0 10169 . . . 4  |-  1  e.  NN0
2 0nn0 10168 . . . 4  |-  0  e.  NN0
31, 2deccl 10328 . . 3  |- ; 1 0  e.  NN0
43, 2deccl 10328 . 2  |- ;; 1 0 0  e.  NN0
5 2nn0 10170 . . . 4  |-  2  e.  NN0
65, 2deccl 10328 . . 3  |- ; 2 0  e.  NN0
76, 2deccl 10328 . 2  |- ;; 2 0 0  e.  NN0
8 eqid 2387 . 2  |- ;;; 1 0 0 0  = ;;; 1 0 0 0
9 eqid 2387 . 2  |- ;;; 2 0 0 0  = ;;; 2 0 0 0
10 eqid 2387 . . 3  |- ;; 1 0 0  = ;; 1 0 0
11 eqid 2387 . . 3  |- ;; 2 0 0  = ;; 2 0 0
12 eqid 2387 . . . 4  |- ; 1 0  = ; 1 0
13 eqid 2387 . . . 4  |- ; 2 0  = ; 2 0
14 2cn 10002 . . . . 5  |-  2  e.  CC
15 ax-1cn 8981 . . . . 5  |-  1  e.  CC
16 2p1e3 10035 . . . . 5  |-  ( 2  +  1 )  =  3
1714, 15, 16addcomli 9190 . . . 4  |-  ( 1  +  2 )  =  3
18 00id 9173 . . . 4  |-  ( 0  +  0 )  =  0
191, 2, 5, 2, 12, 13, 17, 18decadd 10355 . . 3  |-  (; 1 0  + ; 2 0 )  = ; 3
0
203, 2, 6, 2, 10, 11, 19, 18decadd 10355 . 2  |-  (;; 1 0 0  + ;; 2 0 0 )  = ;; 3 0 0
214, 2, 7, 2, 8, 9, 20, 18decadd 10355 1  |-  (;;; 1 0 0 0  + ;;; 2 0 0 0 )  = ;;; 3 0 0 0
Colors of variables: wff set class
Syntax hints:    = wceq 1649  (class class class)co 6020   0cc0 8923   1c1 8924    + caddc 8926   2c2 9981   3c3 9982  ;cdc 10314
This theorem was proved from axioms:  ax-1 5  ax-2 6  ax-3 7  ax-mp 8  ax-gen 1552  ax-5 1563  ax-17 1623  ax-9 1661  ax-8 1682  ax-13 1719  ax-14 1721  ax-6 1736  ax-7 1741  ax-11 1753  ax-12 1939  ax-ext 2368  ax-sep 4271  ax-nul 4279  ax-pow 4318  ax-pr 4344  ax-un 4641  ax-resscn 8980  ax-1cn 8981  ax-icn 8982  ax-addcl 8983  ax-addrcl 8984  ax-mulcl 8985  ax-mulrcl 8986  ax-mulcom 8987  ax-addass 8988  ax-mulass 8989  ax-distr 8990  ax-i2m1 8991  ax-1ne0 8992  ax-1rid 8993  ax-rnegex 8994  ax-rrecex 8995  ax-cnre 8996  ax-pre-lttri 8997  ax-pre-lttrn 8998  ax-pre-ltadd 8999
This theorem depends on definitions:  df-bi 178  df-or 360  df-an 361  df-3or 937  df-3an 938  df-tru 1325  df-ex 1548  df-nf 1551  df-sb 1656  df-eu 2242  df-mo 2243  df-clab 2374  df-cleq 2380  df-clel 2383  df-nfc 2512  df-ne 2552  df-nel 2553  df-ral 2654  df-rex 2655  df-reu 2656  df-rab 2658  df-v 2901  df-sbc 3105  df-csb 3195  df-dif 3266  df-un 3268  df-in 3270  df-ss 3277  df-pss 3279  df-nul 3572  df-if 3683  df-pw 3744  df-sn 3763  df-pr 3764  df-tp 3765  df-op 3766  df-uni 3958  df-iun 4037  df-br 4154  df-opab 4208  df-mpt 4209  df-tr 4244  df-eprel 4435  df-id 4439  df-po 4444  df-so 4445  df-fr 4482  df-we 4484  df-ord 4525  df-on 4526  df-lim 4527  df-suc 4528  df-om 4786  df-xp 4824  df-rel 4825  df-cnv 4826  df-co 4827  df-dm 4828  df-rn 4829  df-res 4830  df-ima 4831  df-iota 5358  df-fun 5396  df-fn 5397  df-f 5398  df-f1 5399  df-fo 5400  df-f1o 5401  df-fv 5402  df-ov 6023  df-recs 6569  df-rdg 6604  df-er 6841  df-en 7046  df-dom 7047  df-sdom 7048  df-pnf 9055  df-mnf 9056  df-ltxr 9058  df-nn 9933  df-2 9990  df-3 9991  df-4 9992  df-5 9993  df-6 9994  df-7 9995  df-8 9996  df-9 9997  df-10 9998  df-n0 10154  df-dec 10315
  Copyright terms: Public domain W3C validator