HomeHome Metamath Proof Explorer < Previous   Next >
Related theorems
Unicode version

Theorem nnmsucr 4230
Description: Multiplication with successor. Exercise 16 of [Enderton] p. 82.
Assertion
Ref Expression
nnmsucr |- ((A e. om /\ B e. om) -> (suc A .o B) = ((A .o B) +o B))

Proof of Theorem nnmsucr
StepHypRef Expression
1 opreq2 3960 . . . . 5 |- (x = (/) -> (suc A .o x) = (suc A .o (/)))
2 opreq2 3960 . . . . . 6 |- (x = (/) -> (A .o x) = (A .o (/)))
3 id 59 . . . . . 6 |- (x = (/) -> x = (/))
42, 3opreq12d 3969 . . . . 5 |- (x = (/) -> ((A .o x) +o x) = ((A .o (/)) +o (/)))
51, 4eqeq12d 1486 . . . 4 |- (x = (/) -> ((suc A .o x) = ((A .o x) +o x) <-> (suc A .o (/)) = ((A .o (/)) +o (/))))
65imbi2d 611 . . 3 |- (x = (/) -> ((A e. om -> (suc A .o x) = ((A .o x) +o x)) <-> (A e. om -> (suc A .o (/)) = ((A .o (/)) +o (/)))))
7 opreq2 3960 . . . . 5 |- (x = y -> (suc A .o x) = (suc A .o y))
8 opreq2 3960 . . . . . 6 |- (x = y -> (A .o x) = (A .o y))
9 id 59 . . . . . 6 |- (x = y -> x = y)
108, 9opreq12d 3969 . . . . 5 |- (x = y -> ((A .o x) +o x) = ((A .o y) +o y))
117, 10eqeq12d 1486 . . . 4 |- (x = y -> ((suc A .o x) = ((A .o x) +o x) <-> (suc A .o y) = ((A .o y) +o y)))
1211imbi2d 611 . . 3 |- (x = y -> ((A e. om -> (suc A .o x) = ((A .o x) +o x)) <-> (A e. om -> (suc A .o y) = ((A .o y) +o y))))
13 opreq2 3960 . . . . 5 |- (x = suc y -> (suc A .o x) = (suc A .o suc y))
14 opreq2 3960 . . . . . 6 |- (x = suc y -> (A .o x) = (A .o suc y))
15 id 59 . . . . . 6 |- (x = suc y -> x = suc y)
1614, 15opreq12d 3969 . . . . 5 |- (x = suc y -> ((A .o x) +o x) = ((A .o suc y) +o suc y))
1713, 16eqeq12d 1486 . . . 4 |- (x = suc y -> ((suc A .o x) = ((A .o x) +o x) <-> (suc A .o suc y) = ((A .o suc y) +o suc y)))
1817imbi2d 611 . . 3 |- (x = suc y -> ((A e. om -> (suc A .o x) = ((A .o x) +o x)) <-> (A e. om -> (suc A .o suc y) = ((A .o suc y) +o suc y))))
19 opreq2 3960 . . . . 5 |- (x = B -> (suc A .o x) = (suc A .o B))
20 opreq2 3960 . . . . . 6 |- (x = B -> (A .o x) = (A .o B))
21 id 59 . . . . . 6 |- (x = B -> x = B)
2220, 21opreq12d 3969 . . . . 5 |- (x = B -> ((A .o x) +o x) = ((A .o B) +o B))
2319, 22eqeq12d 1486 . . . 4 |- (x = B -> ((suc A .o x) = ((A .o x) +o x) <-> (suc A .o B) = ((A .o B) +o B)))
2423imbi2d 611 . . 3 |- (x = B -> ((A e. om -> (suc A .o x) = ((A .o x) +o x)) <-> (A e. om -> (suc A .o B) = ((A .o B) +o B))))
25 peano2b 3142 . . . . 5 |- (A e. om <-> suc A e. om)
26 nnm0 4214 . . . . 5 |- (suc A e. om -> (suc A .o (/)) = (/))
2725, 26sylbi 199 . . . 4 |- (A e. om -> (suc A .o (/)) = (/))
28 nnm0 4214 . . . . . 6 |- (A e. om -> (A .o (/)) = (/))
2928opreq1d 3966 . . . . 5 |- (A e. om -> ((A .o (/)) +o (/)) = ((/) +o (/)))
30 peano1 3144 . . . . . 6 |- (/) e. om
31 nna0 4213 . . . . . 6 |- ((/) e. om -> ((/) +o (/)) = (/))
3230, 31ax-mp 7 . . . . 5 |- ((/) +o (/)) = (/)
3329, 32syl6eq 1520 . . . 4 |- (A e. om -> ((A .o (/)) +o (/)) = (/))
3427, 33eqtr4d 1507 . . 3 |- (A e. om -> (suc A .o (/)) = ((A .o (/)) +o (/)))
35 nnmsuc 4216 . . . . . . . 8 |- ((suc A e. om /\ y e. om) -> (suc A .o suc y) = ((suc A .o y) +o suc A))
3635, 25sylanb 449 . . . . . . 7 |- ((A e. om /\ y e. om) -> (suc A .o suc y) = ((suc A .o y) +o suc A))
37 nnmsuc 4216 . . . . . . . . 9 |- ((A e. om /\ y e. om) -> (A .o suc y) = ((A .o y) +o A))
3837opreq1d 3966 . . . . . . . 8 |- ((A e. om /\ y e. om) -> ((A .o suc y) +o suc y) = (((A .o y) +o A) +o suc y))
39 nnacom 4223 . . . . . . . . . . . 12 |- ((A e. om /\ y e. om) -> (A +o y) = (y +o A))
40 suceq 3029 . . . . . . . . . . . 12 |- ((A +o y) = (y +o A) -> suc (A +o y) = suc (y +o A))
4139, 40syl 10 . . . . . . . . . . 11 |- ((A e. om /\ y e. om) -> suc (A +o y) = suc (y +o A))
42 nnasuc 4215 . . . . . . . . . . 11 |- ((A e. om /\ y e. om) -> (A +o suc y) = suc (A +o y))
43 nnasuc 4215 . . . . . . . . . . . 12 |- ((y e. om /\ A e. om) -> (y +o suc A) = suc (y +o A))
4443ancoms 436 . . . . . . . . . . 11 |- ((A e. om /\ y e. om) -> (y +o suc A) = suc (y +o A))
4541, 42, 443eqtr4d 1514 . . . . . . . . . 10 |- ((A e. om /\ y e. om) -> (A +o suc y) = (y +o suc A))
4645opreq2d 3967 . . . . . . . . 9 |- ((A e. om /\ y e. om) -> ((A .o y) +o (A +o suc y)) = ((A .o y) +o (y +o suc A)))
47 nnaass 4227 . . . . . . . . . . . . 13 |- (((A .o y) e. om /\ A e. om /\ suc y e. om) -> (((A .o y) +o A) +o suc y) = ((A .o y) +o (A +o suc y)))
48 peano2b 3142 . . . . . . . . . . . . 13 |- (y e. om <-> suc y e. om)
4947, 48syl3an3b 863 . . . . . . . . . . . 12 |- (((A .o y) e. om /\ A e. om /\ y e. om) -> (((A .o y) +o A) +o suc y) = ((A .o y) +o (A +o suc y)))
50 nnmcl 4220 . . . . . . . . . . . 12 |- ((A e. om /\ y e. om) -> (A .o y) e. om)
5149, 50syl3an1 858 . . . . . . . . . . 11 |- (((A e. om /\ y e. om) /\ A e. om /\ y e. om) -> (((A .o y) +o A) +o suc y) = ((A .o y) +o (A +o suc y)))
52513expb 833 . . . . . . . . . 10 |- (((A e. om /\ y e. om) /\ (A e. om /\ y e. om)) -> (((A .o y) +o A) +o suc y) = ((A .o y) +o (A +o suc y)))
5352anidms 434 . . . . . . . . 9 |- ((A e. om /\ y e. om) -> (((A .o y) +o A) +o suc y) = ((A .o y) +o (A +o suc y)))
54 nnaass 4227 . . . . . . . . . . . . . 14 |- (((A .o y) e. om /\ y e. om /\ suc A e. om) -> (((A .o y) +o y) +o suc A) = ((A .o y) +o (y +o suc A)))
5554, 25syl3an3b 863 . . . . . . . . . . . . 13 |- (((A .o y) e. om /\ y e. om /\ A e. om) -> (((A .o y) +o y) +o suc A) = ((A .o y) +o (y +o suc A)))
5655, 50syl3an1 858 . . . . . . . . . . . 12 |- (((A e. om /\ y e. om) /\ y e. om /\ A e. om) -> (((A .o y) +o y) +o suc A) = ((A .o y) +o (y +o suc A)))
57563expb 833 . . . . . . . . . . 11 |- (((A e. om /\ y e. om) /\ (y e. om /\ A e. om)) -> (((A .o y) +o y) +o suc A) = ((A .o y) +o (y +o suc A)))
5857an42s 509 . . . . . . . . . 10 |- (((A e. om /\ y e. om) /\ (A e. om /\ y e. om)) -> (((A .o y) +o y) +o suc A) = ((A .o y) +o (y +o suc A)))
5958anidms 434 . . . . . . . . 9 |- ((A e. om /\ y e. om) -> (((A .o y) +o y) +o suc A) = ((A .o y) +o (y +o suc A)))
6046, 53, 593eqtr4d 1514 . . . . . . . 8 |- ((A e. om /\ y e. om) -> (((A .o y) +o A) +o suc y) = (((A .o y) +o y) +o suc A))
6138, 60eqtrd 1504 . . . . . . 7 |- ((A e. om /\ y e. om) -> ((A .o suc y) +o suc y) = (((A .o y) +o y) +o suc A))
6236, 61eqeq12d 1486 . . . . . 6 |- ((A e. om /\ y e. om) -> ((suc A .o suc y) = ((A .o suc y) +o suc y) <-> ((suc A .o y) +o suc A) = (((A .o y) +o y) +o suc A)))
63 opreq1 3959 . . . . . 6 |- ((suc A .o y) = ((A .o y) +o y) -> ((suc A .o y) +o suc A) = (((A .o y