| ⊦ (i1 ^2 + i2 ^2 + i3 ^2 + i4 ^2) * (j1 ^2 + j2 ^2 + j3 ^2 + j4 ^2) = (((i1 * j1 + i2 * j2) + i3 * j3) + i4 * j4)^2 + ((i1 * j2 - i2 * j1 - i3 * j4) + i4 * j3)^2 + (i1 * j3 + i2 * j4 - i3 * j1 - i4 * j2)^2 + ((i1 * j4 - i2 * j3) + i3 * j2 - i4 * j1)^2 |
⊦ (i1 ^2 + i2 ^2 + i3 ^2 + i4 ^2) * (j1 ^2 + j2 ^2 + j3 ^2 + j4 ^2) = (((i1 * j1 + i2 * j2) + i3 * j3) + i4 * j4)^2 + (i4 * j3 + i1 * j2 - i2 * j1 + i3 * j4)^2 + (i1 * j3 + i2 * j4 - i3 * j1 + i4 * j2)^2 + (i3 * j2 + i1 * j4 - i2 * j3 + i4 * j1)^2
Used simplifier rules: 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)% ⊦ i - i1 - j = i - i1 + j; (s)