| ⊦ 2 * (i1 * j2 + i2 * j1) * i3 * j4 + 2 * (i1 * j2) * i2 * j1 + ( ( (i4 * j1)^2 + 2 * (i4 * j1) * (i1 * j4 + i2 * j3) + (i1 * j4)^2 + 2 * (i1 * j4) * i2 * j3 + i2 ^2 * j3 ^2 - 2 * (i4 * j1 + i1 * j4 + i2 * j3) * i3 * j2) + (i3 * j2)^2) + 2 * (i2 * j2 + i3 * j3) * i4 * j4 + 2 * (i2 * j2) * i3 * j3 + (i4 * j2 + i3 * j1 + i1 * j3)^2 = (i3 ^2 + i4 ^2) * j1 ^2 + (j3 ^2 + j4 ^2) * i1 ^2 + (i3 ^2 + i4 ^2) * j2 ^2 + i2 ^2 * j3 ^2 + 2 * (i1 * j1) * ((i2 * j2 + i3 * j3) + i4 * j4) + 2 * ((i1 * j2 + i2 * j1) + i3 * j4) * i4 * j3 + 2 * (i4 * j2 + i3 * j1 + i1 * j3) * i2 * j4 |
⊦ (i4 * j2 + i3 * j1 + i1 * j3)^2 + 2 * (i2 * j2) * i3 * j3 + 2 * (i2 * j2 + i3 * j3) * i4 * j4 + (i3 * j2)^2 + 2 * (i1 * j2) * i2 * j1 + 2 * (i1 * j2 + i2 * j1) * i3 * j4 + (i4 * j1)^2 + 2 * (i4 * j1) * (i1 * j4 + i2 * j3) + (i1 * j4)^2 + 2 * (i1 * j4) * i2 * j3 = (i3 ^2 + i4 ^2) * j1 ^2 + (j3 ^2 + j4 ^2) * i1 ^2 + (i3 ^2 + i4 ^2) * j2 ^2 + 2 * (i1 * j1) * ((i2 * j2 + i3 * j3) + i4 * j4) + 2 * ((i1 * j2 + i2 * j1) + i3 * j4) * i4 * j3 + 2 * (i4 * j2 + i3 * j1 + i1 * j3) * i2 * j4 + 2 * (i4 * j1 + i1 * j4 + i2 * j3) * i3 * j2
Used simplifier rules: ⊦ i + j = i + i0 ↔ j = i0; (s)% ⊦ i - j = i0 ↔ i = i0 + j; (s)%add-c: ⊦ i + j = j + i; from specification int-basic2%add-a: ⊦ i + j + i0 = (i + j) + i0; from specification int-basic2% ⊦ i + (j - i0) = i + j - i0; (s)