\left(d1 \cdot d2 + \left(d3 + 5\right) \cdot d1\right) + d1 \cdot 32
d1 \cdot \left(\left(\left(d3 + 5\right) + 32\right) + d2\right)
double f(double d1, double d2, double d3) {
double r269977 = d1;
double r269978 = d2;
double r269979 = r269977 * r269978;
double r269980 = d3;
double r269981 = 5.0;
double r269982 = r269980 + r269981;
double r269983 = r269982 * r269977;
double r269984 = r269979 + r269983;
double r269985 = 32.0;
double r269986 = r269977 * r269985;
double r269987 = r269984 + r269986;
return r269987;
}
double f(double d1, double d2, double d3) {
double r269988 = d1;
double r269989 = d3;
double r269990 = 5.0;
double r269991 = r269989 + r269990;
double r269992 = 32.0;
double r269993 = r269991 + r269992;
double r269994 = d2;
double r269995 = r269993 + r269994;
double r269996 = r269988 * r269995;
return r269996;
}




Bits error versus d1




Bits error versus d2




Bits error versus d3
Results
| Original | 0.0 |
|---|---|
| Target | 0.0 |
| Herbie | 0.0 |
Initial program 0.0
Simplified0.0
Final simplification0.0
herbie shell --seed 2020047
(FPCore (d1 d2 d3)
:name "FastMath dist3"
:precision binary64
:herbie-target
(* d1 (+ (+ 37 d3) d2))
(+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)))