x \cdot \left(x - 1\right)
\mathsf{fma}\left(x, x, x \cdot \left(-1\right)\right)double code(double x) {
return (x * (x - 1.0));
}
double code(double x) {
return fma(x, x, (x * -1.0));
}




Bits error versus x
Results
| Original | 0.0 |
|---|---|
| Target | 0.0 |
| Herbie | 0 |
Initial program 0.0
rmApplied sub-neg0.0
Applied distribute-lft-in0.0
Simplified0.0
rmApplied unpow20.0
Applied fma-def0
Final simplification0
herbie shell --seed 2020105 +o rules:numerics
(FPCore (x)
:name "Statistics.Correlation.Kendall:numOfTiesBy from math-functions-0.1.5.2"
:precision binary64
:herbie-target
(- (* x x) x)
(* x (- x 1)))