| Step | Hyp | Ref | Expression |
| 1 |
|
muleq2 |
x = b -> suc a * x = suc a * b |
| 2 |
|
muleq2 |
x = b -> a * x = a * b |
| 3 |
|
id |
x = b -> x = b |
| 4 |
2, 3 |
addeqd |
x = b -> a * x + x = a * b + b |
| 5 |
1, 4 |
eqeqd |
x = b -> (suc a * x = a * x + x <-> suc a * b = a * b + b) |
| 6 |
|
muleq2 |
x = 0 -> suc a * x = suc a * 0 |
| 7 |
|
muleq2 |
x = 0 -> a * x = a * 0 |
| 8 |
|
id |
x = 0 -> x = 0 |
| 9 |
7, 8 |
addeqd |
x = 0 -> a * x + x = a * 0 + 0 |
| 10 |
6, 9 |
eqeqd |
x = 0 -> (suc a * x = a * x + x <-> suc a * 0 = a * 0 + 0) |
| 11 |
|
muleq2 |
x = y -> suc a * x = suc a * y |
| 12 |
|
muleq2 |
x = y -> a * x = a * y |
| 13 |
|
id |
x = y -> x = y |
| 14 |
12, 13 |
addeqd |
x = y -> a * x + x = a * y + y |
| 15 |
11, 14 |
eqeqd |
x = y -> (suc a * x = a * x + x <-> suc a * y = a * y + y) |
| 16 |
|
muleq2 |
x = suc y -> suc a * x = suc a * suc y |
| 17 |
|
muleq2 |
x = suc y -> a * x = a * suc y |
| 18 |
|
id |
x = suc y -> x = suc y |
| 19 |
17, 18 |
addeqd |
x = suc y -> a * x + x = a * suc y + suc y |
| 20 |
16, 19 |
eqeqd |
x = suc y -> (suc a * x = a * x + x <-> suc a * suc y = a * suc y + suc y) |
| 21 |
|
eqtr4 |
suc a * 0 = 0 -> a * 0 + 0 = 0 -> suc a * 0 = a * 0 + 0 |
| 22 |
|
mul0 |
suc a * 0 = 0 |
| 23 |
21, 22 |
ax_mp |
a * 0 + 0 = 0 -> suc a * 0 = a * 0 + 0 |
| 24 |
|
eqtr |
a * 0 + 0 = a * 0 -> a * 0 = 0 -> a * 0 + 0 = 0 |
| 25 |
|
add0 |
a * 0 + 0 = a * 0 |
| 26 |
24, 25 |
ax_mp |
a * 0 = 0 -> a * 0 + 0 = 0 |
| 27 |
|
mul0 |
a * 0 = 0 |
| 28 |
26, 27 |
ax_mp |
a * 0 + 0 = 0 |
| 29 |
23, 28 |
ax_mp |
suc a * 0 = a * 0 + 0 |
| 30 |
|
mulS |
suc a * suc y = suc a * y + suc a |
| 31 |
|
eqtr |
a * suc y + suc y = a * y + a + suc y -> a * y + a + suc y = a * y + y + suc a -> a * suc y + suc y = a * y + y + suc a |
| 32 |
|
addeq1 |
a * suc y = a * y + a -> a * suc y + suc y = a * y + a + suc y |
| 33 |
|
mulS |
a * suc y = a * y + a |
| 34 |
32, 33 |
ax_mp |
a * suc y + suc y = a * y + a + suc y |
| 35 |
31, 34 |
ax_mp |
a * y + a + suc y = a * y + y + suc a -> a * suc y + suc y = a * y + y + suc a |
| 36 |
|
eqtr |
a * y + a + suc y = suc (a * y + a + y) -> suc (a * y + a + y) = a * y + y + suc a -> a * y + a + suc y = a * y + y + suc a |
| 37 |
|
addS |
a * y + a + suc y = suc (a * y + a + y) |
| 38 |
36, 37 |
ax_mp |
suc (a * y + a + y) = a * y + y + suc a -> a * y + a + suc y = a * y + y + suc a |
| 39 |
|
eqtr4 |
suc (a * y + a + y) = suc (a * y + y + a) -> a * y + y + suc a = suc (a * y + y + a) -> suc (a * y + a + y) = a * y + y + suc a |
| 40 |
|
suceq |
a * y + a + y = a * y + y + a -> suc (a * y + a + y) = suc (a * y + y + a) |
| 41 |
|
addrass |
a * y + a + y = a * y + y + a |
| 42 |
40, 41 |
ax_mp |
suc (a * y + a + y) = suc (a * y + y + a) |
| 43 |
39, 42 |
ax_mp |
a * y + y + suc a = suc (a * y + y + a) -> suc (a * y + a + y) = a * y + y + suc a |
| 44 |
|
addS |
a * y + y + suc a = suc (a * y + y + a) |
| 45 |
43, 44 |
ax_mp |
suc (a * y + a + y) = a * y + y + suc a |
| 46 |
38, 45 |
ax_mp |
a * y + a + suc y = a * y + y + suc a |
| 47 |
35, 46 |
ax_mp |
a * suc y + suc y = a * y + y + suc a |
| 48 |
|
addeq1 |
suc a * y = a * y + y -> suc a * y + suc a = a * y + y + suc a |
| 49 |
30, 47, 48 |
eqtr4g |
suc a * y = a * y + y -> suc a * suc y = a * suc y + suc y |
| 50 |
5, 10, 15, 20, 29, 49 |
ind |
suc a * b = a * b + b |