Step | Hyp | Ref | Expression |
1 |
|
addcan1 |
suc ((u * b - x) * q) * a + (x * q * a + y * q * b) = (u * a - y) * q * b + r + (x * q * a + y * q * b) <-> suc ((u * b - x) * q) * a = (u * a - y) * q * b + r |
2 |
|
addass |
suc ((u * b - x) * q) * a + x * q * a + y * q * b = suc ((u * b - x) * q) * a + (x * q * a + y * q * b) |
3 |
|
addmul |
(suc ((u * b - x) * q) + x * q) * a = suc ((u * b - x) * q) * a + x * q * a |
4 |
|
addS1 |
suc ((u * b - x) * q) + x * q = suc ((u * b - x) * q + x * q) |
5 |
|
addmul |
(u * b - x + x) * q = (u * b - x) * q + x * q |
6 |
|
npcan |
x <= u * b -> u * b - x + x = u * b |
7 |
|
hyp h5 |
G -> x <= u |
8 |
|
leeq1 |
u * 1 = u -> (u * 1 <= u * b <-> u <= u * b) |
9 |
|
mul12 |
u * 1 = u |
10 |
8, 9 |
ax_mp |
u * 1 <= u * b <-> u <= u * b |
11 |
|
lemul2a |
1 <= b -> u * 1 <= u * b |
12 |
|
lt01 |
0 < b <-> b != 0 |
13 |
12 |
conv d1, lt |
1 <= b <-> b != 0 |
14 |
|
hyp h3 |
G -> b != 0 |
15 |
13, 14 |
sylibr |
G -> 1 <= b |
16 |
11, 15 |
syl |
G -> u * 1 <= u * b |
17 |
10, 16 |
sylib |
G -> u <= u * b |
18 |
7, 17 |
letrd |
G -> x <= u * b |
19 |
6, 18 |
syl |
G -> u * b - x + x = u * b |
20 |
19 |
muleq1d |
G -> (u * b - x + x) * q = u * b * q |
21 |
5, 20 |
syl5eqr |
G -> (u * b - x) * q + x * q = u * b * q |
22 |
21 |
suceqd |
G -> suc ((u * b - x) * q + x * q) = suc (u * b * q) |
23 |
4, 22 |
syl5eq |
G -> suc ((u * b - x) * q) + x * q = suc (u * b * q) |
24 |
23 |
muleq1d |
G -> (suc ((u * b - x) * q) + x * q) * a = suc (u * b * q) * a |
25 |
3, 24 |
syl5eqr |
G -> suc ((u * b - x) * q) * a + x * q * a = suc (u * b * q) * a |
26 |
25 |
addeq1d |
G -> suc ((u * b - x) * q) * a + x * q * a + y * q * b = suc (u * b * q) * a + y * q * b |
27 |
|
addeq2 |
x * q * a + y * q * b = y * q * b + x * q * a -> (u * a - y) * q * b + r + (x * q * a + y * q * b) = (u * a - y) * q * b + r + (y * q * b + x * q * a) |
28 |
|
addcom |
x * q * a + y * q * b = y * q * b + x * q * a |
29 |
27, 28 |
ax_mp |
(u * a - y) * q * b + r + (x * q * a + y * q * b) = (u * a - y) * q * b + r + (y * q * b + x * q * a) |
30 |
|
addass |
(u * a - y) * q * b + r + y * q * b + x * q * a = (u * a - y) * q * b + r + (y * q * b + x * q * a) |
31 |
|
addrass |
(u * a - y) * q * b + r + y * q * b = (u * a - y) * q * b + y * q * b + r |
32 |
|
addmul |
((u * a - y) * q + y * q) * b = (u * a - y) * q * b + y * q * b |
33 |
|
addmul |
(u * a - y + y) * q = (u * a - y) * q + y * q |
34 |
|
npcan |
y <= u * a -> u * a - y + y = u * a |
35 |
|
hyp h6 |
G -> y <= u |
36 |
|
leeq1 |
u * 1 = u -> (u * 1 <= u * a <-> u <= u * a) |
37 |
36, 9 |
ax_mp |
u * 1 <= u * a <-> u <= u * a |
38 |
|
lemul2a |
1 <= a -> u * 1 <= u * a |
39 |
|
lt01 |
0 < a <-> a != 0 |
40 |
39 |
conv d1, lt |
1 <= a <-> a != 0 |
41 |
|
hyp h1 |
G -> a != 0 |
42 |
40, 41 |
sylibr |
G -> 1 <= a |
43 |
38, 42 |
syl |
G -> u * 1 <= u * a |
44 |
37, 43 |
sylib |
G -> u <= u * a |
45 |
35, 44 |
letrd |
G -> y <= u * a |
46 |
34, 45 |
syl |
G -> u * a - y + y = u * a |
47 |
46 |
muleq1d |
G -> (u * a - y + y) * q = u * a * q |
48 |
33, 47 |
syl5eqr |
G -> (u * a - y) * q + y * q = u * a * q |
49 |
48 |
muleq1d |
G -> ((u * a - y) * q + y * q) * b = u * a * q * b |
50 |
32, 49 |
syl5eqr |
G -> (u * a - y) * q * b + y * q * b = u * a * q * b |
51 |
50 |
addeq1d |
G -> (u * a - y) * q * b + y * q * b + r = u * a * q * b + r |
52 |
31, 51 |
syl5eq |
G -> (u * a - y) * q * b + r + y * q * b = u * a * q * b + r |
53 |
52 |
addeq1d |
G -> (u * a - y) * q * b + r + y * q * b + x * q * a = u * a * q * b + r + x * q * a |
54 |
|
addrass |
u * a * q * b + r + x * q * a = u * a * q * b + x * q * a + r |
55 |
|
addass |
u * a * q * b + x * q * a + r = u * a * q * b + (x * q * a + r) |
56 |
|
addeq1 |
suc (u * b * q) * a = u * a * q * b + a -> suc (u * b * q) * a + y * q * b = u * a * q * b + a + y * q * b |
57 |
|
eqtr |
suc (u * b * q) * a = u * b * q * a + a -> u * b * q * a + a = u * a * q * b + a -> suc (u * b * q) * a = u * a * q * b + a |
58 |
|
mulS1 |
suc (u * b * q) * a = u * b * q * a + a |
59 |
57, 58 |
ax_mp |
u * b * q * a + a = u * a * q * b + a -> suc (u * b * q) * a = u * a * q * b + a |
60 |
|
addeq1 |
u * b * q * a = u * a * q * b -> u * b * q * a + a = u * a * q * b + a |
61 |
|
eqtr |
u * b * q * a = u * b * (q * a) -> u * b * (q * a) = u * a * q * b -> u * b * q * a = u * a * q * b |
62 |
|
mulass |
u * b * q * a = u * b * (q * a) |
63 |
61, 62 |
ax_mp |
u * b * (q * a) = u * a * q * b -> u * b * q * a = u * a * q * b |
64 |
|
eqtr |
u * b * (q * a) = u * (b * (q * a)) -> u * (b * (q * a)) = u * a * q * b -> u * b * (q * a) = u * a * q * b |
65 |
|
mulass |
u * b * (q * a) = u * (b * (q * a)) |
66 |
64, 65 |
ax_mp |
u * (b * (q * a)) = u * a * q * b -> u * b * (q * a) = u * a * q * b |
67 |
|
eqtr4 |
u * (b * (q * a)) = u * (a * q * b) -> u * a * q * b = u * (a * q * b) -> u * (b * (q * a)) = u * a * q * b |
68 |
|
muleq2 |
b * (q * a) = a * q * b -> u * (b * (q * a)) = u * (a * q * b) |
69 |
|
eqtr |
b * (q * a) = q * a * b -> q * a * b = a * q * b -> b * (q * a) = a * q * b |
70 |
|
mulcom |
b * (q * a) = q * a * b |
71 |
69, 70 |
ax_mp |
q * a * b = a * q * b -> b * (q * a) = a * q * b |
72 |
|
muleq1 |
q * a = a * q -> q * a * b = a * q * b |
73 |
|
mulcom |
q * a = a * q |
74 |
72, 73 |
ax_mp |
q * a * b = a * q * b |
75 |
71, 74 |
ax_mp |
b * (q * a) = a * q * b |
76 |
68, 75 |
ax_mp |
u * (b * (q * a)) = u * (a * q * b) |
77 |
67, 76 |
ax_mp |
u * a * q * b = u * (a * q * b) -> u * (b * (q * a)) = u * a * q * b |
78 |
|
eqtr |
u * a * q * b = u * (a * q) * b -> u * (a * q) * b = u * (a * q * b) -> u * a * q * b = u * (a * q * b) |
79 |
|
muleq1 |
u * a * q = u * (a * q) -> u * a * q * b = u * (a * q) * b |
80 |
|
mulass |
u * a * q = u * (a * q) |
81 |
79, 80 |
ax_mp |
u * a * q * b = u * (a * q) * b |
82 |
78, 81 |
ax_mp |
u * (a * q) * b = u * (a * q * b) -> u * a * q * b = u * (a * q * b) |
83 |
|
mulass |
u * (a * q) * b = u * (a * q * b) |
84 |
82, 83 |
ax_mp |
u * a * q * b = u * (a * q * b) |
85 |
77, 84 |
ax_mp |
u * (b * (q * a)) = u * a * q * b |
86 |
66, 85 |
ax_mp |
u * b * (q * a) = u * a * q * b |
87 |
63, 86 |
ax_mp |
u * b * q * a = u * a * q * b |
88 |
60, 87 |
ax_mp |
u * b * q * a + a = u * a * q * b + a |
89 |
59, 88 |
ax_mp |
suc (u * b * q) * a = u * a * q * b + a |
90 |
56, 89 |
ax_mp |
suc (u * b * q) * a + y * q * b = u * a * q * b + a + y * q * b |
91 |
|
addass |
u * a * q * b + a + y * q * b = u * a * q * b + (a + y * q * b) |
92 |
|
addcom |
a + y * q * b = y * q * b + a |
93 |
|
hyp h4 |
G -> d * q + r = a |
94 |
93 |
addeq2d |
G -> y * q * b + (d * q + r) = y * q * b + a |
95 |
|
addass |
y * q * b + d * q + r = y * q * b + (d * q + r) |
96 |
|
addeq1 |
y * q * b = y * b * q -> y * q * b + d * q = y * b * q + d * q |
97 |
|
mulrass |
y * q * b = y * b * q |
98 |
96, 97 |
ax_mp |
y * q * b + d * q = y * b * q + d * q |
99 |
|
addmul |
(y * b + d) * q = y * b * q + d * q |
100 |
|
mulrass |
x * a * q = x * q * a |
101 |
|
hyp h2 |
G -> x * a = y * b + d |
102 |
101 |
eqcomd |
G -> y * b + d = x * a |
103 |
102 |
muleq1d |
G -> (y * b + d) * q = x * a * q |
104 |
100, 103 |
syl6eq |
G -> (y * b + d) * q = x * q * a |
105 |
99, 104 |
syl5eqr |
G -> y * b * q + d * q = x * q * a |
106 |
98, 105 |
syl5eq |
G -> y * q * b + d * q = x * q * a |
107 |
106 |
addeq1d |
G -> y * q * b + d * q + r = x * q * a + r |
108 |
95, 107 |
syl5eqr |
G -> y * q * b + (d * q + r) = x * q * a + r |
109 |
94, 108 |
eqtr3d |
G -> y * q * b + a = x * q * a + r |
110 |
92, 109 |
syl5eq |
G -> a + y * q * b = x * q * a + r |
111 |
110 |
addeq2d |
G -> u * a * q * b + (a + y * q * b) = u * a * q * b + (x * q * a + r) |
112 |
91, 111 |
syl5eq |
G -> u * a * q * b + a + y * q * b = u * a * q * b + (x * q * a + r) |
113 |
90, 112 |
syl5eq |
G -> suc (u * b * q) * a + y * q * b = u * a * q * b + (x * q * a + r) |
114 |
55, 113 |
syl6eqr |
G -> suc (u * b * q) * a + y * q * b = u * a * q * b + x * q * a + r |
115 |
54, 114 |
syl6eqr |
G -> suc (u * b * q) * a + y * q * b = u * a * q * b + r + x * q * a |
116 |
53, 115 |
eqtr4d |
G -> (u * a - y) * q * b + r + y * q * b + x * q * a = suc (u * b * q) * a + y * q * b |
117 |
30, 116 |
syl5eqr |
G -> (u * a - y) * q * b + r + (y * q * b + x * q * a) = suc (u * b * q) * a + y * q * b |
118 |
29, 117 |
syl5eq |
G -> (u * a - y) * q * b + r + (x * q * a + y * q * b) = suc (u * b * q) * a + y * q * b |
119 |
26, 118 |
eqtr4d |
G -> suc ((u * b - x) * q) * a + x * q * a + y * q * b = (u * a - y) * q * b + r + (x * q * a + y * q * b) |
120 |
2, 119 |
syl5eqr |
G -> suc ((u * b - x) * q) * a + (x * q * a + y * q * b) = (u * a - y) * q * b + r + (x * q * a + y * q * b) |
121 |
1, 120 |
sylib |
G -> suc ((u * b - x) * q) * a = (u * a - y) * q * b + r |