\frac{x - y}{z - y} \cdot t\frac{x - y}{z - y} \cdot tdouble f(double x, double y, double z, double t) {
double r412540 = x;
double r412541 = y;
double r412542 = r412540 - r412541;
double r412543 = z;
double r412544 = r412543 - r412541;
double r412545 = r412542 / r412544;
double r412546 = t;
double r412547 = r412545 * r412546;
return r412547;
}
double f(double x, double y, double z, double t) {
double r412548 = x;
double r412549 = y;
double r412550 = r412548 - r412549;
double r412551 = z;
double r412552 = r412551 - r412549;
double r412553 = r412550 / r412552;
double r412554 = t;
double r412555 = r412553 * r412554;
return r412555;
}




Bits error versus x




Bits error versus y




Bits error versus z




Bits error versus t
Results
| Original | 2.3 |
|---|---|
| Target | 2.3 |
| Herbie | 2.3 |
Initial program 2.3
Final simplification2.3
herbie shell --seed 2020047 +o rules:numerics
(FPCore (x y z t)
:name "Numeric.Signal.Multichannel:$cput from hsignal-0.2.7.1"
:precision binary64
:herbie-target
(/ t (/ (- z y) (- x y)))
(* (/ (- x y) (- z y)) t))