\left(x \cdot 0.5\right) \cdot x
x \cdot \left(x \cdot 0.5\right)
(FPCore (x) :precision binary64 (* (* x 0.5) x))
(FPCore (x) :precision binary64 (* x (* x 0.5)))
double code(double x) {
return (x * 0.5) * x;
}
double code(double x) {
return x * (x * 0.5);
}





Bits error versus x
Results
| Alternative 1 | |
|---|---|
| Error | 42.1 |
| Cost | 64 |
| Alternative 2 | |
|---|---|
| Error | 61.0 |
| Cost | 64 |

Initial program 0
Simplified0
Final simplification0
herbie shell --seed 2021044
(FPCore (x)
:name "System.Random.MWC.Distributions:blocks from mwc-random-0.13.3.2"
:precision binary64
(* (* x 0.5) x))