0.9549296585513720181381813745247200131416 \cdot x - 0.1290061377327979819096270830414141528308 \cdot \left(\left(x \cdot x\right) \cdot x\right)
\mathsf{fma}\left(1, 0.9549296585513720181381813745247200131416, \left(x \cdot 0.1290061377327979819096270830414141528308\right) \cdot \left(-x\right)\right) \cdot x + x \cdot \mathsf{fma}\left(-x, x \cdot 0.1290061377327979819096270830414141528308, \left(x \cdot 0.1290061377327979819096270830414141528308\right) \cdot x\right)double f(double x) {
double r1031570 = 0.954929658551372;
double r1031571 = x;
double r1031572 = r1031570 * r1031571;
double r1031573 = 0.12900613773279798;
double r1031574 = r1031571 * r1031571;
double r1031575 = r1031574 * r1031571;
double r1031576 = r1031573 * r1031575;
double r1031577 = r1031572 - r1031576;
return r1031577;
}
double f(double x) {
double r1031578 = 1.0;
double r1031579 = 0.954929658551372;
double r1031580 = x;
double r1031581 = 0.12900613773279798;
double r1031582 = r1031580 * r1031581;
double r1031583 = -r1031580;
double r1031584 = r1031582 * r1031583;
double r1031585 = fma(r1031578, r1031579, r1031584);
double r1031586 = r1031585 * r1031580;
double r1031587 = r1031582 * r1031580;
double r1031588 = fma(r1031583, r1031582, r1031587);
double r1031589 = r1031580 * r1031588;
double r1031590 = r1031586 + r1031589;
return r1031590;
}



Bits error versus x
Initial program 0.1
Simplified0.1
rmApplied *-un-lft-identity0.1
Applied prod-diff0.1
Applied distribute-rgt-in0.1
Final simplification0.1
herbie shell --seed 2019169 +o rules:numerics
(FPCore (x)
:name "Rosa's Benchmark"
(- (* 0.954929658551372 x) (* 0.12900613773279798 (* (* x x) x))))