Step | Hyp | Ref | Expression |
1 |
|
eqtr |
a1 * b1 + c1 * d1 + (a2 * d2 + b2 * c2) = a1 * b1 + a2 * d2 + (c1 * d1 + b2 * c2) ->
a1 * b1 + a2 * d2 + (c1 * d1 + b2 * c2) = a2 * b2 + c2 * d2 + (a1 * d1 + c1 * b1) ->
a1 * b1 + c1 * d1 + (a2 * d2 + b2 * c2) = a2 * b2 + c2 * d2 + (a1 * d1 + c1 * b1) |
2 |
|
add4 |
a1 * b1 + c1 * d1 + (a2 * d2 + b2 * c2) = a1 * b1 + a2 * d2 + (c1 * d1 + b2 * c2) |
3 |
1, 2 |
ax_mp |
a1 * b1 + a2 * d2 + (c1 * d1 + b2 * c2) = a2 * b2 + c2 * d2 + (a1 * d1 + c1 * b1) ->
a1 * b1 + c1 * d1 + (a2 * d2 + b2 * c2) = a2 * b2 + c2 * d2 + (a1 * d1 + c1 * b1) |
4 |
|
eqtr |
a1 * b1 + a2 * d2 + (c1 * d1 + b2 * c2) = a2 * b2 + c1 * b1 + (c2 * d2 + a1 * d1) ->
a2 * b2 + c1 * b1 + (c2 * d2 + a1 * d1) = a2 * b2 + c2 * d2 + (a1 * d1 + c1 * b1) ->
a1 * b1 + a2 * d2 + (c1 * d1 + b2 * c2) = a2 * b2 + c2 * d2 + (a1 * d1 + c1 * b1) |
5 |
|
addcan2 |
b1 * c2 + (a1 * b1 + a2 * d2 + (c1 * d1 + b2 * c2)) = b1 * c2 + (a2 * b2 + c1 * b1 + (c2 * d2 + a1 * d1)) <->
a1 * b1 + a2 * d2 + (c1 * d1 + b2 * c2) = a2 * b2 + c1 * b1 + (c2 * d2 + a1 * d1) |
6 |
|
eqtr3 |
b1 * c2 + (a1 * b1 + a2 * d2) + (c1 * d1 + b2 * c2) = b1 * c2 + (a1 * b1 + a2 * d2 + (c1 * d1 + b2 * c2)) ->
b1 * c2 + (a1 * b1 + a2 * d2) + (c1 * d1 + b2 * c2) = b1 * c2 + (a2 * b2 + c1 * b1 + (c2 * d2 + a1 * d1)) ->
b1 * c2 + (a1 * b1 + a2 * d2 + (c1 * d1 + b2 * c2)) = b1 * c2 + (a2 * b2 + c1 * b1 + (c2 * d2 + a1 * d1)) |
7 |
|
addass |
b1 * c2 + (a1 * b1 + a2 * d2) + (c1 * d1 + b2 * c2) = b1 * c2 + (a1 * b1 + a2 * d2 + (c1 * d1 + b2 * c2)) |
8 |
6, 7 |
ax_mp |
b1 * c2 + (a1 * b1 + a2 * d2) + (c1 * d1 + b2 * c2) = b1 * c2 + (a2 * b2 + c1 * b1 + (c2 * d2 + a1 * d1)) ->
b1 * c2 + (a1 * b1 + a2 * d2 + (c1 * d1 + b2 * c2)) = b1 * c2 + (a2 * b2 + c1 * b1 + (c2 * d2 + a1 * d1)) |
9 |
|
eqtr |
b1 * c2 + (a1 * b1 + a2 * d2) + (c1 * d1 + b2 * c2) = a2 * b2 + c1 * b1 + a2 * d1 + (c1 * d1 + b2 * c2) ->
a2 * b2 + c1 * b1 + a2 * d1 + (c1 * d1 + b2 * c2) = b1 * c2 + (a2 * b2 + c1 * b1 + (c2 * d2 + a1 * d1)) ->
b1 * c2 + (a1 * b1 + a2 * d2) + (c1 * d1 + b2 * c2) = b1 * c2 + (a2 * b2 + c1 * b1 + (c2 * d2 + a1 * d1)) |
10 |
|
addeq1 |
b1 * c2 + (a1 * b1 + a2 * d2) = a2 * b2 + c1 * b1 + a2 * d1 ->
b1 * c2 + (a1 * b1 + a2 * d2) + (c1 * d1 + b2 * c2) = a2 * b2 + c1 * b1 + a2 * d1 + (c1 * d1 + b2 * c2) |
11 |
|
eqtr |
b1 * c2 + (a1 * b1 + a2 * d2) = a1 * b1 + a2 * d2 + b1 * c2 ->
a1 * b1 + a2 * d2 + b1 * c2 = a2 * b2 + c1 * b1 + a2 * d1 ->
b1 * c2 + (a1 * b1 + a2 * d2) = a2 * b2 + c1 * b1 + a2 * d1 |
12 |
|
addcom |
b1 * c2 + (a1 * b1 + a2 * d2) = a1 * b1 + a2 * d2 + b1 * c2 |
13 |
11, 12 |
ax_mp |
a1 * b1 + a2 * d2 + b1 * c2 = a2 * b2 + c1 * b1 + a2 * d1 -> b1 * c2 + (a1 * b1 + a2 * d2) = a2 * b2 + c1 * b1 + a2 * d1 |
14 |
|
eqtr |
a1 * b1 + a2 * d2 + b1 * c2 = a1 * b1 + b1 * c2 + a2 * d2 ->
a1 * b1 + b1 * c2 + a2 * d2 = a2 * b2 + c1 * b1 + a2 * d1 ->
a1 * b1 + a2 * d2 + b1 * c2 = a2 * b2 + c1 * b1 + a2 * d1 |
15 |
|
addrass |
a1 * b1 + a2 * d2 + b1 * c2 = a1 * b1 + b1 * c2 + a2 * d2 |
16 |
14, 15 |
ax_mp |
a1 * b1 + b1 * c2 + a2 * d2 = a2 * b2 + c1 * b1 + a2 * d1 -> a1 * b1 + a2 * d2 + b1 * c2 = a2 * b2 + c1 * b1 + a2 * d1 |
17 |
|
eqtr |
a1 * b1 + b1 * c2 + a2 * d2 = a2 * b1 + c1 * b1 + a2 * d2 ->
a2 * b1 + c1 * b1 + a2 * d2 = a2 * b2 + c1 * b1 + a2 * d1 ->
a1 * b1 + b1 * c2 + a2 * d2 = a2 * b2 + c1 * b1 + a2 * d1 |
18 |
|
addeq1 |
a1 * b1 + b1 * c2 = a2 * b1 + c1 * b1 -> a1 * b1 + b1 * c2 + a2 * d2 = a2 * b1 + c1 * b1 + a2 * d2 |
19 |
|
eqtr |
a1 * b1 + b1 * c2 = a1 * b1 + c2 * b1 -> a1 * b1 + c2 * b1 = a2 * b1 + c1 * b1 -> a1 * b1 + b1 * c2 = a2 * b1 + c1 * b1 |
20 |
|
addeq2 |
b1 * c2 = c2 * b1 -> a1 * b1 + b1 * c2 = a1 * b1 + c2 * b1 |
21 |
|
mulcom |
b1 * c2 = c2 * b1 |
22 |
20, 21 |
ax_mp |
a1 * b1 + b1 * c2 = a1 * b1 + c2 * b1 |
23 |
19, 22 |
ax_mp |
a1 * b1 + c2 * b1 = a2 * b1 + c1 * b1 -> a1 * b1 + b1 * c2 = a2 * b1 + c1 * b1 |
24 |
|
eqtr3 |
(a1 + c2) * b1 = a1 * b1 + c2 * b1 -> (a1 + c2) * b1 = a2 * b1 + c1 * b1 -> a1 * b1 + c2 * b1 = a2 * b1 + c1 * b1 |
25 |
|
addmul |
(a1 + c2) * b1 = a1 * b1 + c2 * b1 |
26 |
24, 25 |
ax_mp |
(a1 + c2) * b1 = a2 * b1 + c1 * b1 -> a1 * b1 + c2 * b1 = a2 * b1 + c1 * b1 |
27 |
|
eqtr |
(a1 + c2) * b1 = (a2 + c1) * b1 -> (a2 + c1) * b1 = a2 * b1 + c1 * b1 -> (a1 + c2) * b1 = a2 * b1 + c1 * b1 |
28 |
|
muleq1 |
a1 + c2 = a2 + c1 -> (a1 + c2) * b1 = (a2 + c1) * b1 |
29 |
|
hyp h1 |
a1 + c2 = a2 + c1 |
30 |
28, 29 |
ax_mp |
(a1 + c2) * b1 = (a2 + c1) * b1 |
31 |
27, 30 |
ax_mp |
(a2 + c1) * b1 = a2 * b1 + c1 * b1 -> (a1 + c2) * b1 = a2 * b1 + c1 * b1 |
32 |
|
addmul |
(a2 + c1) * b1 = a2 * b1 + c1 * b1 |
33 |
31, 32 |
ax_mp |
(a1 + c2) * b1 = a2 * b1 + c1 * b1 |
34 |
26, 33 |
ax_mp |
a1 * b1 + c2 * b1 = a2 * b1 + c1 * b1 |
35 |
23, 34 |
ax_mp |
a1 * b1 + b1 * c2 = a2 * b1 + c1 * b1 |
36 |
18, 35 |
ax_mp |
a1 * b1 + b1 * c2 + a2 * d2 = a2 * b1 + c1 * b1 + a2 * d2 |
37 |
17, 36 |
ax_mp |
a2 * b1 + c1 * b1 + a2 * d2 = a2 * b2 + c1 * b1 + a2 * d1 -> a1 * b1 + b1 * c2 + a2 * d2 = a2 * b2 + c1 * b1 + a2 * d1 |
38 |
|
eqtr |
a2 * b1 + c1 * b1 + a2 * d2 = a2 * b1 + a2 * d2 + c1 * b1 ->
a2 * b1 + a2 * d2 + c1 * b1 = a2 * b2 + c1 * b1 + a2 * d1 ->
a2 * b1 + c1 * b1 + a2 * d2 = a2 * b2 + c1 * b1 + a2 * d1 |
39 |
|
addrass |
a2 * b1 + c1 * b1 + a2 * d2 = a2 * b1 + a2 * d2 + c1 * b1 |
40 |
38, 39 |
ax_mp |
a2 * b1 + a2 * d2 + c1 * b1 = a2 * b2 + c1 * b1 + a2 * d1 -> a2 * b1 + c1 * b1 + a2 * d2 = a2 * b2 + c1 * b1 + a2 * d1 |
41 |
|
eqtr |
a2 * b1 + a2 * d2 + c1 * b1 = a2 * b2 + a2 * d1 + c1 * b1 ->
a2 * b2 + a2 * d1 + c1 * b1 = a2 * b2 + c1 * b1 + a2 * d1 ->
a2 * b1 + a2 * d2 + c1 * b1 = a2 * b2 + c1 * b1 + a2 * d1 |
42 |
|
addeq1 |
a2 * b1 + a2 * d2 = a2 * b2 + a2 * d1 -> a2 * b1 + a2 * d2 + c1 * b1 = a2 * b2 + a2 * d1 + c1 * b1 |
43 |
|
eqtr3 |
a2 * (b1 + d2) = a2 * b1 + a2 * d2 -> a2 * (b1 + d2) = a2 * b2 + a2 * d1 -> a2 * b1 + a2 * d2 = a2 * b2 + a2 * d1 |
44 |
|
muladd |
a2 * (b1 + d2) = a2 * b1 + a2 * d2 |
45 |
43, 44 |
ax_mp |
a2 * (b1 + d2) = a2 * b2 + a2 * d1 -> a2 * b1 + a2 * d2 = a2 * b2 + a2 * d1 |
46 |
|
eqtr |
a2 * (b1 + d2) = a2 * (b2 + d1) -> a2 * (b2 + d1) = a2 * b2 + a2 * d1 -> a2 * (b1 + d2) = a2 * b2 + a2 * d1 |
47 |
|
muleq2 |
b1 + d2 = b2 + d1 -> a2 * (b1 + d2) = a2 * (b2 + d1) |
48 |
|
hyp h2 |
b1 + d2 = b2 + d1 |
49 |
47, 48 |
ax_mp |
a2 * (b1 + d2) = a2 * (b2 + d1) |
50 |
46, 49 |
ax_mp |
a2 * (b2 + d1) = a2 * b2 + a2 * d1 -> a2 * (b1 + d2) = a2 * b2 + a2 * d1 |
51 |
|
muladd |
a2 * (b2 + d1) = a2 * b2 + a2 * d1 |
52 |
50, 51 |
ax_mp |
a2 * (b1 + d2) = a2 * b2 + a2 * d1 |
53 |
45, 52 |
ax_mp |
a2 * b1 + a2 * d2 = a2 * b2 + a2 * d1 |
54 |
42, 53 |
ax_mp |
a2 * b1 + a2 * d2 + c1 * b1 = a2 * b2 + a2 * d1 + c1 * b1 |
55 |
41, 54 |
ax_mp |
a2 * b2 + a2 * d1 + c1 * b1 = a2 * b2 + c1 * b1 + a2 * d1 -> a2 * b1 + a2 * d2 + c1 * b1 = a2 * b2 + c1 * b1 + a2 * d1 |
56 |
|
addrass |
a2 * b2 + a2 * d1 + c1 * b1 = a2 * b2 + c1 * b1 + a2 * d1 |
57 |
55, 56 |
ax_mp |
a2 * b1 + a2 * d2 + c1 * b1 = a2 * b2 + c1 * b1 + a2 * d1 |
58 |
40, 57 |
ax_mp |
a2 * b1 + c1 * b1 + a2 * d2 = a2 * b2 + c1 * b1 + a2 * d1 |
59 |
37, 58 |
ax_mp |
a1 * b1 + b1 * c2 + a2 * d2 = a2 * b2 + c1 * b1 + a2 * d1 |
60 |
16, 59 |
ax_mp |
a1 * b1 + a2 * d2 + b1 * c2 = a2 * b2 + c1 * b1 + a2 * d1 |
61 |
13, 60 |
ax_mp |
b1 * c2 + (a1 * b1 + a2 * d2) = a2 * b2 + c1 * b1 + a2 * d1 |
62 |
10, 61 |
ax_mp |
b1 * c2 + (a1 * b1 + a2 * d2) + (c1 * d1 + b2 * c2) = a2 * b2 + c1 * b1 + a2 * d1 + (c1 * d1 + b2 * c2) |
63 |
9, 62 |
ax_mp |
a2 * b2 + c1 * b1 + a2 * d1 + (c1 * d1 + b2 * c2) = b1 * c2 + (a2 * b2 + c1 * b1 + (c2 * d2 + a1 * d1)) ->
b1 * c2 + (a1 * b1 + a2 * d2) + (c1 * d1 + b2 * c2) = b1 * c2 + (a2 * b2 + c1 * b1 + (c2 * d2 + a1 * d1)) |
64 |
|
eqtr |
a2 * b2 + c1 * b1 + a2 * d1 + (c1 * d1 + b2 * c2) = a2 * b2 + c1 * b1 + (a2 * d1 + (c1 * d1 + b2 * c2)) ->
a2 * b2 + c1 * b1 + (a2 * d1 + (c1 * d1 + b2 * c2)) = b1 * c2 + (a2 * b2 + c1 * b1 + (c2 * d2 + a1 * d1)) ->
a2 * b2 + c1 * b1 + a2 * d1 + (c1 * d1 + b2 * c2) = b1 * c2 + (a2 * b2 + c1 * b1 + (c2 * d2 + a1 * d1)) |
65 |
|
addass |
a2 * b2 + c1 * b1 + a2 * d1 + (c1 * d1 + b2 * c2) = a2 * b2 + c1 * b1 + (a2 * d1 + (c1 * d1 + b2 * c2)) |
66 |
64, 65 |
ax_mp |
a2 * b2 + c1 * b1 + (a2 * d1 + (c1 * d1 + b2 * c2)) = b1 * c2 + (a2 * b2 + c1 * b1 + (c2 * d2 + a1 * d1)) ->
a2 * b2 + c1 * b1 + a2 * d1 + (c1 * d1 + b2 * c2) = b1 * c2 + (a2 * b2 + c1 * b1 + (c2 * d2 + a1 * d1)) |
67 |
|
eqtr3 |
a2 * b2 + c1 * b1 + (b1 * c2 + (c2 * d2 + a1 * d1)) = a2 * b2 + c1 * b1 + (a2 * d1 + (c1 * d1 + b2 * c2)) ->
a2 * b2 + c1 * b1 + (b1 * c2 + (c2 * d2 + a1 * d1)) = b1 * c2 + (a2 * b2 + c1 * b1 + (c2 * d2 + a1 * d1)) ->
a2 * b2 + c1 * b1 + (a2 * d1 + (c1 * d1 + b2 * c2)) = b1 * c2 + (a2 * b2 + c1 * b1 + (c2 * d2 + a1 * d1)) |
68 |
|
addeq2 |
b1 * c2 + (c2 * d2 + a1 * d1) = a2 * d1 + (c1 * d1 + b2 * c2) ->
a2 * b2 + c1 * b1 + (b1 * c2 + (c2 * d2 + a1 * d1)) = a2 * b2 + c1 * b1 + (a2 * d1 + (c1 * d1 + b2 * c2)) |
69 |
|
eqtr3 |
b1 * c2 + c2 * d2 + a1 * d1 = b1 * c2 + (c2 * d2 + a1 * d1) ->
b1 * c2 + c2 * d2 + a1 * d1 = a2 * d1 + (c1 * d1 + b2 * c2) ->
b1 * c2 + (c2 * d2 + a1 * d1) = a2 * d1 + (c1 * d1 + b2 * c2) |
70 |
|
addass |
b1 * c2 + c2 * d2 + a1 * d1 = b1 * c2 + (c2 * d2 + a1 * d1) |
71 |
69, 70 |
ax_mp |
b1 * c2 + c2 * d2 + a1 * d1 = a2 * d1 + (c1 * d1 + b2 * c2) -> b1 * c2 + (c2 * d2 + a1 * d1) = a2 * d1 + (c1 * d1 + b2 * c2) |
72 |
|
eqtr |
b1 * c2 + c2 * d2 + a1 * d1 = b2 * c2 + d1 * c2 + a1 * d1 ->
b2 * c2 + d1 * c2 + a1 * d1 = a2 * d1 + (c1 * d1 + b2 * c2) ->
b1 * c2 + c2 * d2 + a1 * d1 = a2 * d1 + (c1 * d1 + b2 * c2) |
73 |
|
addeq1 |
b1 * c2 + c2 * d2 = b2 * c2 + d1 * c2 -> b1 * c2 + c2 * d2 + a1 * d1 = b2 * c2 + d1 * c2 + a1 * d1 |
74 |
|
eqtr |
b1 * c2 + c2 * d2 = b1 * c2 + d2 * c2 -> b1 * c2 + d2 * c2 = b2 * c2 + d1 * c2 -> b1 * c2 + c2 * d2 = b2 * c2 + d1 * c2 |
75 |
|
addeq2 |
c2 * d2 = d2 * c2 -> b1 * c2 + c2 * d2 = b1 * c2 + d2 * c2 |
76 |
|
mulcom |
c2 * d2 = d2 * c2 |
77 |
75, 76 |
ax_mp |
b1 * c2 + c2 * d2 = b1 * c2 + d2 * c2 |
78 |
74, 77 |
ax_mp |
b1 * c2 + d2 * c2 = b2 * c2 + d1 * c2 -> b1 * c2 + c2 * d2 = b2 * c2 + d1 * c2 |
79 |
|
eqtr3 |
(b1 + d2) * c2 = b1 * c2 + d2 * c2 -> (b1 + d2) * c2 = b2 * c2 + d1 * c2 -> b1 * c2 + d2 * c2 = b2 * c2 + d1 * c2 |
80 |
|
addmul |
(b1 + d2) * c2 = b1 * c2 + d2 * c2 |
81 |
79, 80 |
ax_mp |
(b1 + d2) * c2 = b2 * c2 + d1 * c2 -> b1 * c2 + d2 * c2 = b2 * c2 + d1 * c2 |
82 |
|
eqtr |
(b1 + d2) * c2 = (b2 + d1) * c2 -> (b2 + d1) * c2 = b2 * c2 + d1 * c2 -> (b1 + d2) * c2 = b2 * c2 + d1 * c2 |
83 |
|
muleq1 |
b1 + d2 = b2 + d1 -> (b1 + d2) * c2 = (b2 + d1) * c2 |
84 |
83, 48 |
ax_mp |
(b1 + d2) * c2 = (b2 + d1) * c2 |
85 |
82, 84 |
ax_mp |
(b2 + d1) * c2 = b2 * c2 + d1 * c2 -> (b1 + d2) * c2 = b2 * c2 + d1 * c2 |
86 |
|
addmul |
(b2 + d1) * c2 = b2 * c2 + d1 * c2 |
87 |
85, 86 |
ax_mp |
(b1 + d2) * c2 = b2 * c2 + d1 * c2 |
88 |
81, 87 |
ax_mp |
b1 * c2 + d2 * c2 = b2 * c2 + d1 * c2 |
89 |
78, 88 |
ax_mp |
b1 * c2 + c2 * d2 = b2 * c2 + d1 * c2 |
90 |
73, 89 |
ax_mp |
b1 * c2 + c2 * d2 + a1 * d1 = b2 * c2 + d1 * c2 + a1 * d1 |
91 |
72, 90 |
ax_mp |
b2 * c2 + d1 * c2 + a1 * d1 = a2 * d1 + (c1 * d1 + b2 * c2) -> b1 * c2 + c2 * d2 + a1 * d1 = a2 * d1 + (c1 * d1 + b2 * c2) |
92 |
|
eqtr |
b2 * c2 + d1 * c2 + a1 * d1 = b2 * c2 + (d1 * c2 + a1 * d1) ->
b2 * c2 + (d1 * c2 + a1 * d1) = a2 * d1 + (c1 * d1 + b2 * c2) ->
b2 * c2 + d1 * c2 + a1 * d1 = a2 * d1 + (c1 * d1 + b2 * c2) |
93 |
|
addass |
b2 * c2 + d1 * c2 + a1 * d1 = b2 * c2 + (d1 * c2 + a1 * d1) |
94 |
92, 93 |
ax_mp |
b2 * c2 + (d1 * c2 + a1 * d1) = a2 * d1 + (c1 * d1 + b2 * c2) -> b2 * c2 + d1 * c2 + a1 * d1 = a2 * d1 + (c1 * d1 + b2 * c2) |
95 |
|
eqtr4 |
b2 * c2 + (d1 * c2 + a1 * d1) = b2 * c2 + (a2 * d1 + c1 * d1) ->
a2 * d1 + (c1 * d1 + b2 * c2) = b2 * c2 + (a2 * d1 + c1 * d1) ->
b2 * c2 + (d1 * c2 + a1 * d1) = a2 * d1 + (c1 * d1 + b2 * c2) |
96 |
|
addeq2 |
d1 * c2 + a1 * d1 = a2 * d1 + c1 * d1 -> b2 * c2 + (d1 * c2 + a1 * d1) = b2 * c2 + (a2 * d1 + c1 * d1) |
97 |
|
eqtr |
d1 * c2 + a1 * d1 = c2 * d1 + a1 * d1 -> c2 * d1 + a1 * d1 = a2 * d1 + c1 * d1 -> d1 * c2 + a1 * d1 = a2 * d1 + c1 * d1 |
98 |
|
addeq1 |
d1 * c2 = c2 * d1 -> d1 * c2 + a1 * d1 = c2 * d1 + a1 * d1 |
99 |
|
mulcom |
d1 * c2 = c2 * d1 |
100 |
98, 99 |
ax_mp |
d1 * c2 + a1 * d1 = c2 * d1 + a1 * d1 |
101 |
97, 100 |
ax_mp |
c2 * d1 + a1 * d1 = a2 * d1 + c1 * d1 -> d1 * c2 + a1 * d1 = a2 * d1 + c1 * d1 |
102 |
|
eqtr |
c2 * d1 + a1 * d1 = a1 * d1 + c2 * d1 -> a1 * d1 + c2 * d1 = a2 * d1 + c1 * d1 -> c2 * d1 + a1 * d1 = a2 * d1 + c1 * d1 |
103 |
|
addcom |
c2 * d1 + a1 * d1 = a1 * d1 + c2 * d1 |
104 |
102, 103 |
ax_mp |
a1 * d1 + c2 * d1 = a2 * d1 + c1 * d1 -> c2 * d1 + a1 * d1 = a2 * d1 + c1 * d1 |
105 |
|
eqtr3 |
(a1 + c2) * d1 = a1 * d1 + c2 * d1 -> (a1 + c2) * d1 = a2 * d1 + c1 * d1 -> a1 * d1 + c2 * d1 = a2 * d1 + c1 * d1 |
106 |
|
addmul |
(a1 + c2) * d1 = a1 * d1 + c2 * d1 |
107 |
105, 106 |
ax_mp |
(a1 + c2) * d1 = a2 * d1 + c1 * d1 -> a1 * d1 + c2 * d1 = a2 * d1 + c1 * d1 |
108 |
|
eqtr |
(a1 + c2) * d1 = (a2 + c1) * d1 -> (a2 + c1) * d1 = a2 * d1 + c1 * d1 -> (a1 + c2) * d1 = a2 * d1 + c1 * d1 |
109 |
|
muleq1 |
a1 + c2 = a2 + c1 -> (a1 + c2) * d1 = (a2 + c1) * d1 |
110 |
109, 29 |
ax_mp |
(a1 + c2) * d1 = (a2 + c1) * d1 |
111 |
108, 110 |
ax_mp |
(a2 + c1) * d1 = a2 * d1 + c1 * d1 -> (a1 + c2) * d1 = a2 * d1 + c1 * d1 |
112 |
|
addmul |
(a2 + c1) * d1 = a2 * d1 + c1 * d1 |
113 |
111, 112 |
ax_mp |
(a1 + c2) * d1 = a2 * d1 + c1 * d1 |
114 |
107, 113 |
ax_mp |
a1 * d1 + c2 * d1 = a2 * d1 + c1 * d1 |
115 |
104, 114 |
ax_mp |
c2 * d1 + a1 * d1 = a2 * d1 + c1 * d1 |
116 |
101, 115 |
ax_mp |
d1 * c2 + a1 * d1 = a2 * d1 + c1 * d1 |
117 |
96, 116 |
ax_mp |
b2 * c2 + (d1 * c2 + a1 * d1) = b2 * c2 + (a2 * d1 + c1 * d1) |
118 |
95, 117 |
ax_mp |
a2 * d1 + (c1 * d1 + b2 * c2) = b2 * c2 + (a2 * d1 + c1 * d1) -> b2 * c2 + (d1 * c2 + a1 * d1) = a2 * d1 + (c1 * d1 + b2 * c2) |
119 |
|
eqtr3 |
a2 * d1 + c1 * d1 + b2 * c2 = a2 * d1 + (c1 * d1 + b2 * c2) ->
a2 * d1 + c1 * d1 + b2 * c2 = b2 * c2 + (a2 * d1 + c1 * d1) ->
a2 * d1 + (c1 * d1 + b2 * c2) = b2 * c2 + (a2 * d1 + c1 * d1) |
120 |
|
addass |
a2 * d1 + c1 * d1 + b2 * c2 = a2 * d1 + (c1 * d1 + b2 * c2) |
121 |
119, 120 |
ax_mp |
a2 * d1 + c1 * d1 + b2 * c2 = b2 * c2 + (a2 * d1 + c1 * d1) -> a2 * d1 + (c1 * d1 + b2 * c2) = b2 * c2 + (a2 * d1 + c1 * d1) |
122 |
|
addcom |
a2 * d1 + c1 * d1 + b2 * c2 = b2 * c2 + (a2 * d1 + c1 * d1) |
123 |
121, 122 |
ax_mp |
a2 * d1 + (c1 * d1 + b2 * c2) = b2 * c2 + (a2 * d1 + c1 * d1) |
124 |
118, 123 |
ax_mp |
b2 * c2 + (d1 * c2 + a1 * d1) = a2 * d1 + (c1 * d1 + b2 * c2) |
125 |
94, 124 |
ax_mp |
b2 * c2 + d1 * c2 + a1 * d1 = a2 * d1 + (c1 * d1 + b2 * c2) |
126 |
91, 125 |
ax_mp |
b1 * c2 + c2 * d2 + a1 * d1 = a2 * d1 + (c1 * d1 + b2 * c2) |
127 |
71, 126 |
ax_mp |
b1 * c2 + (c2 * d2 + a1 * d1) = a2 * d1 + (c1 * d1 + b2 * c2) |
128 |
68, 127 |
ax_mp |
a2 * b2 + c1 * b1 + (b1 * c2 + (c2 * d2 + a1 * d1)) = a2 * b2 + c1 * b1 + (a2 * d1 + (c1 * d1 + b2 * c2)) |
129 |
67, 128 |
ax_mp |
a2 * b2 + c1 * b1 + (b1 * c2 + (c2 * d2 + a1 * d1)) = b1 * c2 + (a2 * b2 + c1 * b1 + (c2 * d2 + a1 * d1)) ->
a2 * b2 + c1 * b1 + (a2 * d1 + (c1 * d1 + b2 * c2)) = b1 * c2 + (a2 * b2 + c1 * b1 + (c2 * d2 + a1 * d1)) |
130 |
|
eqtr3 |
a2 * b2 + c1 * b1 + b1 * c2 + (c2 * d2 + a1 * d1) = a2 * b2 + c1 * b1 + (b1 * c2 + (c2 * d2 + a1 * d1)) ->
a2 * b2 + c1 * b1 + b1 * c2 + (c2 * d2 + a1 * d1) = b1 * c2 + (a2 * b2 + c1 * b1 + (c2 * d2 + a1 * d1)) ->
a2 * b2 + c1 * b1 + (b1 * c2 + (c2 * d2 + a1 * d1)) = b1 * c2 + (a2 * b2 + c1 * b1 + (c2 * d2 + a1 * d1)) |
131 |
|
addass |
a2 * b2 + c1 * b1 + b1 * c2 + (c2 * d2 + a1 * d1) = a2 * b2 + c1 * b1 + (b1 * c2 + (c2 * d2 + a1 * d1)) |
132 |
130, 131 |
ax_mp |
a2 * b2 + c1 * b1 + b1 * c2 + (c2 * d2 + a1 * d1) = b1 * c2 + (a2 * b2 + c1 * b1 + (c2 * d2 + a1 * d1)) ->
a2 * b2 + c1 * b1 + (b1 * c2 + (c2 * d2 + a1 * d1)) = b1 * c2 + (a2 * b2 + c1 * b1 + (c2 * d2 + a1 * d1)) |
133 |
|
eqtr |
a2 * b2 + c1 * b1 + b1 * c2 + (c2 * d2 + a1 * d1) = b1 * c2 + (a2 * b2 + c1 * b1) + (c2 * d2 + a1 * d1) ->
b1 * c2 + (a2 * b2 + c1 * b1) + (c2 * d2 + a1 * d1) = b1 * c2 + (a2 * b2 + c1 * b1 + (c2 * d2 + a1 * d1)) ->
a2 * b2 + c1 * b1 + b1 * c2 + (c2 * d2 + a1 * d1) = b1 * c2 + (a2 * b2 + c1 * b1 + (c2 * d2 + a1 * d1)) |
134 |
|
addeq1 |
a2 * b2 + c1 * b1 + b1 * c2 = b1 * c2 + (a2 * b2 + c1 * b1) ->
a2 * b2 + c1 * b1 + b1 * c2 + (c2 * d2 + a1 * d1) = b1 * c2 + (a2 * b2 + c1 * b1) + (c2 * d2 + a1 * d1) |
135 |
|
addcom |
a2 * b2 + c1 * b1 + b1 * c2 = b1 * c2 + (a2 * b2 + c1 * b1) |
136 |
134, 135 |
ax_mp |
a2 * b2 + c1 * b1 + b1 * c2 + (c2 * d2 + a1 * d1) = b1 * c2 + (a2 * b2 + c1 * b1) + (c2 * d2 + a1 * d1) |
137 |
133, 136 |
ax_mp |
b1 * c2 + (a2 * b2 + c1 * b1) + (c2 * d2 + a1 * d1) = b1 * c2 + (a2 * b2 + c1 * b1 + (c2 * d2 + a1 * d1)) ->
a2 * b2 + c1 * b1 + b1 * c2 + (c2 * d2 + a1 * d1) = b1 * c2 + (a2 * b2 + c1 * b1 + (c2 * d2 + a1 * d1)) |
138 |
|
addass |
b1 * c2 + (a2 * b2 + c1 * b1) + (c2 * d2 + a1 * d1) = b1 * c2 + (a2 * b2 + c1 * b1 + (c2 * d2 + a1 * d1)) |
139 |
137, 138 |
ax_mp |
a2 * b2 + c1 * b1 + b1 * c2 + (c2 * d2 + a1 * d1) = b1 * c2 + (a2 * b2 + c1 * b1 + (c2 * d2 + a1 * d1)) |
140 |
132, 139 |
ax_mp |
a2 * b2 + c1 * b1 + (b1 * c2 + (c2 * d2 + a1 * d1)) = b1 * c2 + (a2 * b2 + c1 * b1 + (c2 * d2 + a1 * d1)) |
141 |
129, 140 |
ax_mp |
a2 * b2 + c1 * b1 + (a2 * d1 + (c1 * d1 + b2 * c2)) = b1 * c2 + (a2 * b2 + c1 * b1 + (c2 * d2 + a1 * d1)) |
142 |
66, 141 |
ax_mp |
a2 * b2 + c1 * b1 + a2 * d1 + (c1 * d1 + b2 * c2) = b1 * c2 + (a2 * b2 + c1 * b1 + (c2 * d2 + a1 * d1)) |
143 |
63, 142 |
ax_mp |
b1 * c2 + (a1 * b1 + a2 * d2) + (c1 * d1 + b2 * c2) = b1 * c2 + (a2 * b2 + c1 * b1 + (c2 * d2 + a1 * d1)) |
144 |
8, 143 |
ax_mp |
b1 * c2 + (a1 * b1 + a2 * d2 + (c1 * d1 + b2 * c2)) = b1 * c2 + (a2 * b2 + c1 * b1 + (c2 * d2 + a1 * d1)) |
145 |
5, 144 |
mpbi |
a1 * b1 + a2 * d2 + (c1 * d1 + b2 * c2) = a2 * b2 + c1 * b1 + (c2 * d2 + a1 * d1) |
146 |
4, 145 |
ax_mp |
a2 * b2 + c1 * b1 + (c2 * d2 + a1 * d1) = a2 * b2 + c2 * d2 + (a1 * d1 + c1 * b1) ->
a1 * b1 + a2 * d2 + (c1 * d1 + b2 * c2) = a2 * b2 + c2 * d2 + (a1 * d1 + c1 * b1) |
147 |
|
eqtr |
a2 * b2 + c1 * b1 + (c2 * d2 + a1 * d1) = a2 * b2 + c2 * d2 + (c1 * b1 + a1 * d1) ->
a2 * b2 + c2 * d2 + (c1 * b1 + a1 * d1) = a2 * b2 + c2 * d2 + (a1 * d1 + c1 * b1) ->
a2 * b2 + c1 * b1 + (c2 * d2 + a1 * d1) = a2 * b2 + c2 * d2 + (a1 * d1 + c1 * b1) |
148 |
|
add4 |
a2 * b2 + c1 * b1 + (c2 * d2 + a1 * d1) = a2 * b2 + c2 * d2 + (c1 * b1 + a1 * d1) |
149 |
147, 148 |
ax_mp |
a2 * b2 + c2 * d2 + (c1 * b1 + a1 * d1) = a2 * b2 + c2 * d2 + (a1 * d1 + c1 * b1) ->
a2 * b2 + c1 * b1 + (c2 * d2 + a1 * d1) = a2 * b2 + c2 * d2 + (a1 * d1 + c1 * b1) |
150 |
|
addeq2 |
c1 * b1 + a1 * d1 = a1 * d1 + c1 * b1 -> a2 * b2 + c2 * d2 + (c1 * b1 + a1 * d1) = a2 * b2 + c2 * d2 + (a1 * d1 + c1 * b1) |
151 |
|
addcom |
c1 * b1 + a1 * d1 = a1 * d1 + c1 * b1 |
152 |
150, 151 |
ax_mp |
a2 * b2 + c2 * d2 + (c1 * b1 + a1 * d1) = a2 * b2 + c2 * d2 + (a1 * d1 + c1 * b1) |
153 |
149, 152 |
ax_mp |
a2 * b2 + c1 * b1 + (c2 * d2 + a1 * d1) = a2 * b2 + c2 * d2 + (a1 * d1 + c1 * b1) |
154 |
146, 153 |
ax_mp |
a1 * b1 + a2 * d2 + (c1 * d1 + b2 * c2) = a2 * b2 + c2 * d2 + (a1 * d1 + c1 * b1) |
155 |
3, 154 |
ax_mp |
a1 * b1 + c1 * d1 + (a2 * d2 + b2 * c2) = a2 * b2 + c2 * d2 + (a1 * d1 + c1 * b1) |