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

Theorem nnmsucr 5999
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 5460 . . . . 5 (x = B → (suc A ·𝑜 x) = (suc A ·𝑜 B))
2 oveq2 5460 . . . . . 6 (x = B → (A ·𝑜 x) = (A ·𝑜 B))
3 id 19 . . . . . 6 (x = Bx = B)
42, 3oveq12d 5470 . . . . 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 5460 . . . . 5 (x = ∅ → (suc A ·𝑜 x) = (suc A ·𝑜 ∅))
8 oveq2 5460 . . . . . 6 (x = ∅ → (A ·𝑜 x) = (A ·𝑜 ∅))
9 id 19 . . . . . 6 (x = ∅ → x = ∅)
108, 9oveq12d 5470 . . . . 5 (x = ∅ → ((A ·𝑜 x) +𝑜 x) = ((A ·𝑜 ∅) +𝑜 ∅))
117, 10eqeq12d 2051 . . . 4 (x = ∅ → ((suc A ·𝑜 x) = ((A ·𝑜 x) +𝑜 x) ↔ (suc A ·𝑜 ∅) = ((A ·𝑜 ∅) +𝑜 ∅)))
12 oveq2 5460 . . . . 5 (x = y → (suc A ·𝑜 x) = (suc A ·𝑜 y))
13 oveq2 5460 . . . . . 6 (x = y → (A ·𝑜 x) = (A ·𝑜 y))
14 id 19 . . . . . 6 (x = yx = y)
1513, 14oveq12d 5470 . . . . 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 5460 . . . . 5 (x = suc y → (suc A ·𝑜 x) = (suc A ·𝑜 suc y))
18 oveq2 5460 . . . . . 6 (x = suc y → (A ·𝑜 x) = (A ·𝑜 suc y))
19 id 19 . . . . . 6 (x = suc yx = suc y)
2018, 19oveq12d 5470 . . . . 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 4260 . . . . . . 7 (A 𝜔 → suc A 𝜔)
23 nnm0 5986 . . . . . . 7 (suc A 𝜔 → (suc A ·𝑜 ∅) = ∅)
2422, 23syl 14 . . . . . 6 (A 𝜔 → (suc A ·𝑜 ∅) = ∅)
25 nnm0 5986 . . . . . 6 (A 𝜔 → (A ·𝑜 ∅) = ∅)
2624, 25eqtr4d 2072 . . . . 5 (A 𝜔 → (suc A ·𝑜 ∅) = (A ·𝑜 ∅))
27 peano1 4259 . . . . . . 7 𝜔
28 nnmcl 5992 . . . . . . 7 ((A 𝜔 𝜔) → (A ·𝑜 ∅) 𝜔)
2927, 28mpan2 401 . . . . . 6 (A 𝜔 → (A ·𝑜 ∅) 𝜔)
30 nna0 5985 . . . . . 6 ((A ·𝑜 ∅) 𝜔 → ((A ·𝑜 ∅) +𝑜 ∅) = (A ·𝑜 ∅))
3129, 30syl 14 . . . . 5 (A 𝜔 → ((A ·𝑜 ∅) +𝑜 ∅) = (A ·𝑜 ∅))
3226, 31eqtr4d 2072 . . . 4 (A 𝜔 → (suc A ·𝑜 ∅) = ((A ·𝑜 ∅) +𝑜 ∅))
33 oveq1 5459 . . . . . 6 ((suc A ·𝑜 y) = ((A ·𝑜 y) +𝑜 y) → ((suc A ·𝑜 y) +𝑜 suc A) = (((A ·𝑜 y) +𝑜 y) +𝑜 suc A))
34 peano2b 4279 . . . . . . . 8 (A 𝜔 ↔ suc A 𝜔)
35 nnmsuc 5988 . . . . . . . 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 5992 . . . . . . . . . . 11 ((A 𝜔 y 𝜔) → (A ·𝑜 y) 𝜔)
38 peano2b 4279 . . . . . . . . . . . 12 (y 𝜔 ↔ suc y 𝜔)
39 nnaass 5996 . . . . . . . . . . . 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 5988 . . . . . . . . 9 ((A 𝜔 y 𝜔) → (A ·𝑜 suc y) = ((A ·𝑜 y) +𝑜 A))
4544oveq1d 5467 . . . . . . . 8 ((A 𝜔 y 𝜔) → ((A ·𝑜 suc y) +𝑜 suc y) = (((A ·𝑜 y) +𝑜 A) +𝑜 suc y))
46 nnaass 5996 . . . . . . . . . . . . . 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 5995 . . . . . . . . . . . 12 ((A 𝜔 y 𝜔) → (A +𝑜 y) = (y +𝑜 A))
53 suceq 4104 . . . . . . . . . . . 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 5987 . . . . . . . . . . 11 ((A 𝜔 y 𝜔) → (A +𝑜 suc y) = suc (A +𝑜 y))
56 nnasuc 5987 . . . . . . . . . . . 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 5468 . . . . . . . . 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 4266 . . 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 4067  𝜔com 4255  (class class class)co 5452   +𝑜 coa 5930   ·𝑜 comu 5931
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 3862  ax-sep 3865  ax-nul 3873  ax-pow 3917  ax-pr 3934  ax-un 4135  ax-setind 4219  ax-iinf 4253
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 3352  df-sn 3372  df-pr 3373  df-op 3375  df-uni 3571  df-int 3606  df-iun 3649  df-br 3755  df-opab 3809  df-mpt 3810  df-tr 3845  df-id 4020  df-iord 4068  df-on 4070  df-suc 4073  df-iom 4256  df-xp 4293  df-rel 4294  df-cnv 4295  df-co 4296  df-dm 4297  df-rn 4298  df-res 4299  df-ima 4300  df-iota 4809  df-fun 4846  df-fn 4847  df-f 4848  df-f1 4849  df-fo 4850  df-f1o 4851  df-fv 4852  df-ov 5455  df-oprab 5456  df-mpt2 5457  df-1st 5706  df-2nd 5707  df-recs 5858  df-irdg 5894  df-oadd 5937  df-omul 5938
This theorem is referenced by:  nnmcom  6000
  Copyright terms: Public domain W3C validator