2 \cdot \left(\left(1 \cdot \frac{1}{9} + \frac{1}{9} \cdot \frac{1}{9}\right) + \frac{1}{9} \cdot 1\right)2 \cdot \left(\left(1 \cdot \frac{1}{9} + \frac{1}{9} \cdot \frac{1}{9}\right) + \frac{1}{9} \cdot 1\right)double f() {
double r100503 = 2.0;
double r100504 = 1.0;
double r100505 = 9.0;
double r100506 = r100504 / r100505;
double r100507 = r100504 * r100506;
double r100508 = r100506 * r100506;
double r100509 = r100507 + r100508;
double r100510 = r100506 * r100504;
double r100511 = r100509 + r100510;
double r100512 = r100503 * r100511;
return r100512;
}
double f() {
double r100513 = 2.0;
double r100514 = 1.0;
double r100515 = 9.0;
double r100516 = r100514 / r100515;
double r100517 = r100514 * r100516;
double r100518 = r100516 * r100516;
double r100519 = r100517 + r100518;
double r100520 = r100516 * r100514;
double r100521 = r100519 + r100520;
double r100522 = r100513 * r100521;
return r100522;
}
Results
| Original | 0 |
|---|---|
| Target | 0 |
| Herbie | 0 |
Initial program 0
Final simplification0
herbie shell --seed 2019305 +o rules:numerics
(FPCore ()
:name "Rectangular parallelepiped of dimension a×b×c"
:precision binary64
:herbie-target
(+ (+ (* (* (/ 1 9) 1) 2) (* 2 (* (/ 1 9) (/ 1 9)))) (* 2 (* 1 (/ 1 9))))
(* 2 (+ (+ (* 1 (/ 1 9)) (* (/ 1 9) (/ 1 9))) (* (/ 1 9) 1))))