ILE Home Intuitionistic Logic Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  ILE Home  >  Th. List  >  nnmsucr Structured version   GIF version

Theorem nnmsucr 6006
Description: Multiplication with successor. Exercise 16 of [Enderton] p. 82. (Contributed by NM, 21-Sep-1995.) (Proof shortened by Andrew Salmon, 22-Oct-2011.)
Assertion
Ref Expression
nnmsucr ((A 𝜔 B 𝜔) → (suc A ·𝑜 B) = ((A ·𝑜 B) +𝑜 B))

Proof of Theorem nnmsucr
Dummy variables x y are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 oveq2 5463 . . . . 5 (x = B → (suc A ·𝑜 x) = (suc A ·𝑜 B))
2 oveq2 5463 . . . . . 6 (x = B → (A ·𝑜 x) = (A ·𝑜 B))
3 id 19 . . . . . 6 (x = Bx = B)
42, 3oveq12d 5473 . . . . 5 (x = B → ((A ·𝑜 x) +𝑜 x) = ((A ·𝑜 B) +𝑜 B))
51, 4eqeq12d 2051 . . . 4 (x = B → ((suc A ·𝑜 x) = ((A ·𝑜 x) +𝑜 x) ↔ (suc A ·𝑜 B) = ((A ·𝑜 B) +𝑜 B)))
65imbi2d 219 . . 3 (x = B → ((A 𝜔 → (suc A ·𝑜 x) = ((A ·𝑜 x) +𝑜 x)) ↔ (A 𝜔 → (suc A ·𝑜 B) = ((A ·𝑜 B) +𝑜 B))))
7 oveq2 5463 . . . . 5 (x = ∅ → (suc A ·𝑜 x) = (suc A ·𝑜 ∅))
8 oveq2 5463 . . . . . 6 (x = ∅ → (A ·𝑜 x) = (A ·𝑜 ∅))
9 id 19 . . . . . 6 (x = ∅ → x = ∅)
108, 9oveq12d 5473 . . . . 5 (x = ∅ → ((A ·𝑜 x) +𝑜 x) = ((A ·𝑜 ∅) +𝑜 ∅))
117, 10eqeq12d 2051 . . . 4 (x = ∅ → ((suc A ·𝑜 x) = ((A ·𝑜 x) +𝑜 x) ↔ (suc A ·𝑜 ∅) = ((A ·𝑜 ∅) +𝑜 ∅)))
12 oveq2 5463 . . . . 5 (x = y → (suc A ·𝑜 x) = (suc A ·𝑜 y))
13 oveq2 5463 . . . . . 6 (x = y → (A ·𝑜 x) = (A ·𝑜 y))
14 id 19 . . . . . 6 (x = yx = y)
1513, 14oveq12d 5473 . . . . 5 (x = y → ((A ·𝑜 x) +𝑜 x) = ((A ·𝑜 y) +𝑜 y))
1612, 15eqeq12d 2051 . . . 4 (x = y → ((suc A ·𝑜 x) = ((A ·𝑜 x) +𝑜 x) ↔ (suc A ·𝑜 y) = ((A ·𝑜 y) +𝑜 y)))
17 oveq2 5463 . . . . 5 (x = suc y → (suc A ·𝑜 x) = (suc A ·𝑜 suc y))
18 oveq2 5463 . . . . . 6 (x = suc y → (A ·𝑜 x) = (A ·𝑜 suc y))
19 id 19 . . . . . 6 (x = suc yx = suc y)
2018, 19oveq12d 5473 . . . . 5 (x = suc y → ((A ·𝑜 x) +𝑜 x) = ((A ·𝑜 suc y) +𝑜 suc y))
2117, 20eqeq12d 2051 . . . 4 (x = suc y → ((suc A ·𝑜 x) = ((A ·𝑜 x) +𝑜 x) ↔ (suc A ·𝑜 suc y) = ((A ·𝑜 suc y) +𝑜 suc y)))
22 peano2 4261 . . . . . . 7 (A 𝜔 → suc A 𝜔)
23 nnm0 5993 . . . . . . 7 (suc A 𝜔 → (suc A ·𝑜 ∅) = ∅)
2422, 23syl 14 . . . . . 6 (A 𝜔 → (suc A ·𝑜 ∅) = ∅)
25 nnm0 5993 . . . . . 6 (A 𝜔 → (A ·𝑜 ∅) = ∅)
2624, 25eqtr4d 2072 . . . . 5 (A 𝜔 → (suc A ·𝑜 ∅) = (A ·𝑜 ∅))
27 peano1 4260 . . . . . . 7 𝜔
28 nnmcl 5999 . . . . . . 7 ((A 𝜔 𝜔) → (A ·𝑜 ∅) 𝜔)
2927, 28mpan2 401 . . . . . 6 (A 𝜔 → (A ·𝑜 ∅) 𝜔)
30 nna0 5992 . . . . . 6 ((A ·𝑜 ∅) 𝜔 → ((A ·𝑜 ∅) +𝑜 ∅) = (A ·𝑜 ∅))
3129, 30syl 14 . . . . 5 (A 𝜔 → ((A ·𝑜 ∅) +𝑜 ∅) = (A ·𝑜 ∅))
3226, 31eqtr4d 2072 . . . 4 (A 𝜔 → (suc A ·𝑜 ∅) = ((A ·𝑜 ∅) +𝑜 ∅))
33 oveq1 5462 . . . . . 6 ((suc A ·𝑜 y) = ((A ·𝑜 y) +𝑜 y) → ((suc A ·𝑜 y) +𝑜 suc A) = (((A ·𝑜 y) +𝑜 y) +𝑜 suc A))
34 peano2b 4280 . . . . . . . 8 (A 𝜔 ↔ suc A 𝜔)
35 nnmsuc 5995 . . . . . . . 8 ((suc A 𝜔 y 𝜔) → (suc A ·𝑜 suc y) = ((suc A ·𝑜 y) +𝑜 suc A))
3634, 35sylanb 268 . . . . . . 7 ((A 𝜔 y 𝜔) → (suc A ·𝑜 suc y) = ((suc A ·𝑜 y) +𝑜 suc A))
37 nnmcl 5999 . . . . . . . . . . 11 ((A 𝜔 y 𝜔) → (A ·𝑜 y) 𝜔)
38 peano2b 4280 . . . . . . . . . . . 12 (y 𝜔 ↔ suc y 𝜔)
39 nnaass 6003 . . . . . . . . . . . 12 (((A ·𝑜 y) 𝜔 A 𝜔 suc y 𝜔) → (((A ·𝑜 y) +𝑜 A) +𝑜 suc y) = ((A ·𝑜 y) +𝑜 (A +𝑜 suc y)))
4038, 39syl3an3b 1172 . . . . . . . . . . 11 (((A ·𝑜 y) 𝜔 A 𝜔 y 𝜔) → (((A ·𝑜 y) +𝑜 A) +𝑜 suc y) = ((A ·𝑜 y) +𝑜 (A +𝑜 suc y)))
4137, 40syl3an1 1167 . . . . . . . . . 10 (((A 𝜔 y 𝜔) A 𝜔 y 𝜔) → (((A ·𝑜 y) +𝑜 A) +𝑜 suc y) = ((A ·𝑜 y) +𝑜 (A +𝑜 suc y)))
42413expb 1104 . . . . . . . . 9 (((A 𝜔 y 𝜔) (A 𝜔 y 𝜔)) → (((A ·𝑜 y) +𝑜 A) +𝑜 suc y) = ((A ·𝑜 y) +𝑜 (A +𝑜 suc y)))
4342anidms 377 . . . . . . . 8 ((A 𝜔 y 𝜔) → (((A ·𝑜 y) +𝑜 A) +𝑜 suc y) = ((A ·𝑜 y) +𝑜 (A +𝑜 suc y)))
44 nnmsuc 5995 . . . . . . . . 9 ((A 𝜔 y 𝜔) → (A ·𝑜 suc y) = ((A ·𝑜 y) +𝑜 A))
4544oveq1d 5470 . . . . . . . 8 ((A 𝜔 y 𝜔) → ((A ·𝑜 suc y) +𝑜 suc y) = (((A ·𝑜 y) +𝑜 A) +𝑜 suc y))
46 nnaass 6003 . . . . . . . . . . . . . 14 (((A ·𝑜 y) 𝜔 y 𝜔 suc A 𝜔) → (((A ·𝑜 y) +𝑜 y) +𝑜 suc A) = ((A ·𝑜 y) +𝑜 (y +𝑜 suc A)))
4734, 46syl3an3b 1172 . . . . . . . . . . . . 13 (((A ·𝑜 y) 𝜔 y 𝜔 A 𝜔) → (((A ·𝑜 y) +𝑜 y) +𝑜 suc A) = ((A ·𝑜 y) +𝑜 (y +𝑜 suc A)))
4837, 47syl3an1 1167 . . . . . . . . . . . 12 (((A 𝜔 y 𝜔) y 𝜔 A 𝜔) → (((A ·𝑜 y) +𝑜 y) +𝑜 suc A) = ((A ·𝑜 y) +𝑜 (y +𝑜 suc A)))
49483expb 1104 . . . . . . . . . . 11 (((A 𝜔 y 𝜔) (y 𝜔 A 𝜔)) → (((A ·𝑜 y) +𝑜 y) +𝑜 suc A) = ((A ·𝑜 y) +𝑜 (y +𝑜 suc A)))
5049an42s 523 . . . . . . . . . 10 (((A 𝜔 y 𝜔) (A 𝜔 y 𝜔)) → (((A ·𝑜 y) +𝑜 y) +𝑜 suc A) = ((A ·𝑜 y) +𝑜 (y +𝑜 suc A)))
5150anidms 377 . . . . . . . . 9 ((A 𝜔 y 𝜔) → (((A ·𝑜 y) +𝑜 y) +𝑜 suc A) = ((A ·𝑜 y) +𝑜 (y +𝑜 suc A)))
52 nnacom 6002 . . . . . . . . . . . 12 ((A 𝜔 y 𝜔) → (A +𝑜 y) = (y +𝑜 A))
53 suceq 4105 . . . . . . . . . . . 12 ((A +𝑜 y) = (y +𝑜 A) → suc (A +𝑜 y) = suc (y +𝑜 A))
5452, 53syl 14 . . . . . . . . . . 11 ((A 𝜔 y 𝜔) → suc (A +𝑜 y) = suc (y +𝑜 A))
55 nnasuc 5994 . . . . . . . . . . 11 ((A 𝜔 y 𝜔) → (A +𝑜 suc y) = suc (A +𝑜 y))
56 nnasuc 5994 . . . . . . . . . . . 12 ((y 𝜔 A 𝜔) → (y +𝑜 suc A) = suc (y +𝑜 A))
5756ancoms 255 . . . . . . . . . . 11 ((A 𝜔 y 𝜔) → (y +𝑜 suc A) = suc (y +𝑜 A))
5854, 55, 573eqtr4d 2079 . . . . . . . . . 10 ((A 𝜔 y 𝜔) → (A +𝑜 suc y) = (y +𝑜 suc A))
5958oveq2d 5471 . . . . . . . . 9 ((A 𝜔 y 𝜔) → ((A ·𝑜 y) +𝑜 (A +𝑜 suc y)) = ((A ·𝑜 y) +𝑜 (y +𝑜 suc A)))
6051, 59eqtr4d 2072 . . . . . . . 8 ((A 𝜔 y 𝜔) → (((A ·𝑜 y) +𝑜 y) +𝑜 suc A) = ((A ·𝑜 y) +𝑜 (A +𝑜 suc y)))
6143, 45, 603eqtr4d 2079 . . . . . . 7 ((A 𝜔 y 𝜔) → ((A ·𝑜 suc y) +𝑜 suc y) = (((A ·𝑜 y) +𝑜 y) +𝑜 suc A))
6236, 61eqeq12d 2051 . . . . . 6 ((A 𝜔 y 𝜔) → ((suc A ·𝑜 suc y) = ((A ·𝑜 suc y) +𝑜 suc y) ↔ ((suc A ·𝑜 y) +𝑜 suc A) = (((A ·𝑜 y) +𝑜 y) +𝑜 suc A)))
6333, 62syl5ibr 145 . . . . 5 ((A 𝜔 y 𝜔) → ((suc A ·𝑜 y) = ((A ·𝑜 y) +𝑜 y) → (suc A ·𝑜 suc y) = ((A ·𝑜 suc y) +𝑜 suc y)))
6463expcom 109 . . . 4 (y 𝜔 → (A 𝜔 → ((suc A ·𝑜 y) = ((A ·𝑜 y) +𝑜 y) → (suc A ·𝑜 suc y) = ((A ·𝑜 suc y) +𝑜 suc y))))
6511, 16, 21, 32, 64finds2 4267 . . 3 (x 𝜔 → (A 𝜔 → (suc A ·𝑜 x) = ((A ·𝑜 x) +𝑜 x)))
666, 65vtoclga 2613 . 2 (B 𝜔 → (A 𝜔 → (suc A ·𝑜 B) = ((A ·𝑜 B) +𝑜 B)))
6766impcom 116 1 ((A 𝜔 B 𝜔) → (suc A ·𝑜 B) = ((A ·𝑜 B) +𝑜 B))
Colors of variables: wff set class
Syntax hints:  wi 4   wa 97   = wceq 1242   wcel 1390  c0 3218  suc csuc 4068  𝜔com 4256  (class class class)co 5455   +𝑜 coa 5937   ·𝑜 comu 5938
This theorem was proved from axioms:  ax-1 5  ax-2 6  ax-mp 7  ax-ia1 99  ax-ia2 100  ax-ia3 101  ax-in1 544  ax-in2 545  ax-io 629  ax-5 1333  ax-7 1334  ax-gen 1335  ax-ie1 1379  ax-ie2 1380  ax-8 1392  ax-10 1393  ax-11 1394  ax-i12 1395  ax-bnd 1396  ax-4 1397  ax-13 1401  ax-14 1402  ax-17 1416  ax-i9 1420  ax-ial 1424  ax-i5r 1425  ax-ext 2019  ax-coll 3863  ax-sep 3866  ax-nul 3874  ax-pow 3918  ax-pr 3935  ax-un 4136  ax-setind 4220  ax-iinf 4254
This theorem depends on definitions:  df-bi 110  df-3an 886  df-tru 1245  df-fal 1248  df-nf 1347  df-sb 1643  df-eu 1900  df-mo 1901  df-clab 2024  df-cleq 2030  df-clel 2033  df-nfc 2164  df-ne 2203  df-ral 2305  df-rex 2306  df-reu 2307  df-rab 2309  df-v 2553  df-sbc 2759  df-csb 2847  df-dif 2914  df-un 2916  df-in 2918  df-ss 2925  df-nul 3219  df-pw 3353  df-sn 3373  df-pr 3374  df-op 3376  df-uni 3572  df-int 3607  df-iun 3650  df-br 3756  df-opab 3810  df-mpt 3811  df-tr 3846  df-id 4021  df-iord 4069  df-on 4071  df-suc 4074  df-iom 4257  df-xp 4294  df-rel 4295  df-cnv 4296  df-co 4297  df-dm 4298  df-rn 4299  df-res 4300  df-ima 4301  df-iota 4810  df-fun 4847  df-fn 4848  df-f 4849  df-f1 4850  df-fo 4851  df-f1o 4852  df-fv 4853  df-ov 5458  df-oprab 5459  df-mpt2 5460  df-1st 5709  df-2nd 5710  df-recs 5861  df-irdg 5897  df-oadd 5944  df-omul 5945
This theorem is referenced by:  nnmcom  6007
  Copyright terms: Public domain W3C validator