\frac{x - y}{x + y}\mathsf{log1p}\left(\mathsf{expm1}\left(\sqrt[3]{{\left(\frac{x}{x + y}\right)}^{3}} - \frac{y}{x + y}\right)\right)double f(double x, double y) {
double r840259 = x;
double r840260 = y;
double r840261 = r840259 - r840260;
double r840262 = r840259 + r840260;
double r840263 = r840261 / r840262;
return r840263;
}
double f(double x, double y) {
double r840264 = x;
double r840265 = y;
double r840266 = r840264 + r840265;
double r840267 = r840264 / r840266;
double r840268 = 3.0;
double r840269 = pow(r840267, r840268);
double r840270 = cbrt(r840269);
double r840271 = r840265 / r840266;
double r840272 = r840270 - r840271;
double r840273 = expm1(r840272);
double r840274 = log1p(r840273);
return r840274;
}




Bits error versus x




Bits error versus y
Results
| Original | 0.0 |
|---|---|
| Target | 0.0 |
| Herbie | 0.0 |
Initial program 0.0
rmApplied div-sub0.0
rmApplied add-cbrt-cube24.4
Applied add-cbrt-cube28.2
Applied cbrt-undiv28.2
Simplified0.0
rmApplied log1p-expm1-u0.0
Final simplification0.0
herbie shell --seed 2020064 +o rules:numerics
(FPCore (x y)
:name "Data.Colour.RGB:hslsv from colour-2.3.3, D"
:precision binary64
:herbie-target
(- (/ x (+ x y)) (/ y (+ x y)))
(/ (- x y) (+ x y)))