\frac{\left(x + y\right) - z}{t \cdot 2}0.5 \cdot \left(\left(\frac{y}{t} + \frac{x}{t}\right) - \frac{z}{t}\right)double f(double x, double y, double z, double t) {
double r35011 = x;
double r35012 = y;
double r35013 = r35011 + r35012;
double r35014 = z;
double r35015 = r35013 - r35014;
double r35016 = t;
double r35017 = 2.0;
double r35018 = r35016 * r35017;
double r35019 = r35015 / r35018;
return r35019;
}
double f(double x, double y, double z, double t) {
double r35020 = 0.5;
double r35021 = y;
double r35022 = t;
double r35023 = r35021 / r35022;
double r35024 = x;
double r35025 = r35024 / r35022;
double r35026 = r35023 + r35025;
double r35027 = z;
double r35028 = r35027 / r35022;
double r35029 = r35026 - r35028;
double r35030 = r35020 * r35029;
return r35030;
}



Bits error versus x



Bits error versus y



Bits error versus z



Bits error versus t
Results
Initial program 0.1
Taylor expanded around 0 0.1
Simplified0.1
Final simplification0.1
herbie shell --seed 2020065 +o rules:numerics
(FPCore (x y z t)
:name "Optimisation.CirclePacking:place from circle-packing-0.1.0.4, B"
:precision binary64
(/ (- (+ x y) z) (* t 2)))