\left(r1 \cdot q2 + r2 \cdot q1\right) - \left(r3 \cdot q4 + r4 \cdot q3\right)
\left(r1 \cdot q2 + r2 \cdot q1\right) - \left(r3 \cdot q4 + r4 \cdot q3\right)
double code(double r1, double q2, double r2, double q1, double r3, double q4, double r4, double q3) {
return ((double) (((double) (((double) (r1 * q2)) + ((double) (r2 * q1)))) - ((double) (((double) (r3 * q4)) + ((double) (r4 * q3))))));
}
double code(double r1, double q2, double r2, double q1, double r3, double q4, double r4, double q3) {
return ((double) (((double) (((double) (r1 * q2)) + ((double) (r2 * q1)))) - ((double) (((double) (r3 * q4)) + ((double) (r4 * q3))))));
}



Bits error versus r1



Bits error versus q2



Bits error versus r2



Bits error versus q1



Bits error versus r3



Bits error versus q4



Bits error versus r4



Bits error versus q3
Results
Initial program 0.0
Final simplification0.0
herbie shell --seed 2020152
(FPCore (r1 q2 r2 q1 r3 q4 r4 q3)
:name "(- (+ (* r1 q2) (* r2 q1)) (+ (* r3 q4) (* r4 q3)))"
:precision binary64
(- (+ (* r1 q2) (* r2 q1)) (+ (* r3 q4) (* r4 q3))))