x - \frac{y - z}{\frac{\left(t - z\right) + 1}{a}}x - \frac{y - z}{\left(t - z\right) + 1} \cdot adouble f(double x, double y, double z, double t, double a) {
double r3519 = x;
double r3520 = y;
double r3521 = z;
double r3522 = r3520 - r3521;
double r3523 = t;
double r3524 = r3523 - r3521;
double r3525 = 1.0;
double r3526 = r3524 + r3525;
double r3527 = a;
double r3528 = r3526 / r3527;
double r3529 = r3522 / r3528;
double r3530 = r3519 - r3529;
return r3530;
}
double f(double x, double y, double z, double t, double a) {
double r3531 = x;
double r3532 = y;
double r3533 = z;
double r3534 = r3532 - r3533;
double r3535 = t;
double r3536 = r3535 - r3533;
double r3537 = 1.0;
double r3538 = r3536 + r3537;
double r3539 = r3534 / r3538;
double r3540 = a;
double r3541 = r3539 * r3540;
double r3542 = r3531 - r3541;
return r3542;
}




Bits error versus x




Bits error versus y




Bits error versus z




Bits error versus t




Bits error versus a
Results
| Original | 2.1 |
|---|---|
| Target | 0.2 |
| Herbie | 0.2 |
Initial program 2.1
rmApplied associate-/r/0.2
Final simplification0.2
herbie shell --seed 2020025
(FPCore (x y z t a)
:name "Graphics.Rendering.Chart.SparkLine:renderSparkLine from Chart-1.5.3"
:precision binary64
:herbie-target
(- x (* (/ (- y z) (+ (- t z) 1)) a))
(- x (/ (- y z) (/ (+ (- t z) 1) a))))