x \cdot \left(1 - x \cdot 0.5\right)
\mathsf{fma}\left(0.5 \cdot x, x, \left(-x\right) \cdot 1\right) \cdot \sqrt[3]{-1}double f(double x) {
double r48575 = x;
double r48576 = 1.0;
double r48577 = 0.5;
double r48578 = r48575 * r48577;
double r48579 = r48576 - r48578;
double r48580 = r48575 * r48579;
return r48580;
}
double f(double x) {
double r48581 = 0.5;
double r48582 = x;
double r48583 = r48581 * r48582;
double r48584 = -r48582;
double r48585 = 1.0;
double r48586 = r48584 * r48585;
double r48587 = fma(r48583, r48582, r48586);
double r48588 = -1.0;
double r48589 = cbrt(r48588);
double r48590 = r48587 * r48589;
return r48590;
}



Bits error versus x
Initial program 0.0
Simplified0.0
rmApplied add-cbrt-cube32.9
Applied add-cbrt-cube33.0
Applied cbrt-unprod40.1
Simplified40.1
Taylor expanded around -inf 0.0
Simplified0
Final simplification0
herbie shell --seed 2019194 +o rules:numerics
(FPCore (x)
:name "Numeric.SpecFunctions:log1p from math-functions-0.1.5.2, B"
(* x (- 1.0 (* x 0.5))))