


Bits error versus x



Bits error versus y



Bits error versus z
Results
if x < -1.6436486530612315e+33Initial program 0.1
rmApplied clear-num0.3
Taylor expanded around -inf 9.9
Simplified0.1
if -1.6436486530612315e+33 < x < 4.530076266194952e+60Initial program 2.2
rmApplied associate-*l/0.2
Applied sub-div0.2
if 4.530076266194952e+60 < x Initial program 0.1
rmApplied clear-num0.3
Taylor expanded around -inf 10.0
Simplified0.2
rmApplied div-inv0.2
Applied associate-/r*0.2
Final simplification0.2
herbie shell --seed 2019008
(FPCore (x y z)
:name "fabs fraction 1"
(fabs (- (/ (+ x 4) y) (* (/ x y) z))))
Time bar (total: 11.4s)Debug log
1 calls. Slowest were:
| 41.0ms | (fabs (- (/ (+ x 4) y) (* (/ x y) z))) |
1 alts after pruning (1 fresh and 0 done)
Merged error: 1.5b
Found 3 expressions with local error:
| 4.0b | (* (/ x y) z) |
| 0.0b | (- (/ (+ x 4) y) (* (/ x y) z)) |
| 0.0b | (/ (+ x 4) y) |
3 calls. Slowest were:
| 11.0ms | (- (/ (+ x 4) y) (* (/ x y) z)) |
| 4.0ms | (/ (+ x 4) y) |
| 4.0ms | (* (/ x y) z) |
3 calls. Slowest were:
| 40.0ms | (- (/ (+ x 4) y) (* (/ x y) z)) |
| 28.0ms | (/ (+ x 4) y) |
| 23.0ms | (* (/ x y) z) |
20 calls. Slowest were:
| 106.0ms | (- (* (+ x 4) y) (* y (* x z))) |
| 60.0ms | (- (+ (/ x y) (* 4 (/ 1 y))) (/ (* x z) y)) |
| 57.0ms | (- (+ (/ x y) (* 4 (/ 1 y))) (/ (* x z) y)) |
5 alts after pruning (5 fresh and 0 done)
Merged error: 0.0b
Found 4 expressions with local error:
| 4.0b | (* (/ x y) z) |
| 0.1b | (/ 1 (/ y (+ x 4))) |
| 0.0b | (- (/ 1 (/ y (+ x 4))) (* (/ x y) z)) |
| 0.0b | (/ y (+ x 4)) |
4 calls. Slowest were:
| 4.0ms | (- (/ 1 (/ y (+ x 4))) (* (/ x y) z)) |
| 2.0ms | (* (/ x y) z) |
| 1.0ms | (/ 1 (/ y (+ x 4))) |
4 calls. Slowest were:
| 31.0ms | (- (/ 1 (/ y (+ x 4))) (* (/ x y) z)) |
| 27.0ms | (* (/ x y) z) |
| 23.0ms | (/ 1 (/ y (+ x 4))) |
| 14.0ms | (/ y (+ x 4)) |
31 calls. Slowest were:
| 394.0ms | (/ (exp (/ 1 (/ y (+ x 4)))) (exp (* (/ x y) z))) |
| 236.0ms | (- (+ (/ y x) (* 16 (/ y (pow x 3)))) (* 4 (/ y (pow x 2)))) |
| 187.0ms | (- (+ (/ y x) (* 16 (/ y (pow x 3)))) (* 4 (/ y (pow x 2)))) |
6 alts after pruning (5 fresh and 1 done)
Merged error: 0.0b
Found 4 expressions with local error:
| 8.5b | (cbrt (/ x y)) |
| 8.5b | (cbrt (/ x y)) |
| 8.5b | (cbrt (/ x y)) |
| 0.6b | (* (* (cbrt (/ x y)) (cbrt (/ x y))) (* (cbrt (/ x y)) z)) |
4 calls. Slowest were:
| 29.0ms | (* (* (cbrt (/ x y)) (cbrt (/ x y))) (* (cbrt (/ x y)) z)) |
| 1.0ms | (cbrt (/ x y)) |
| 1.0ms | (cbrt (/ x y)) |
4 calls. Slowest were:
| 93.0ms | (cbrt (/ x y)) |
| 84.0ms | (cbrt (/ x y)) |
| 71.0ms | (cbrt (/ x y)) |
| 15.0ms | (* (* (cbrt (/ x y)) (cbrt (/ x y))) (* (cbrt (/ x y)) z)) |
44 calls. Slowest were:
| 369.0ms | (* (* (/ x y) (/ x y)) (* (* (* (cbrt (/ x y)) z) (* (cbrt (/ x y)) z)) (* (cbrt (/ x y)) z))) |
| 281.0ms | (* (* (* (* (cbrt (/ x y)) (cbrt (/ x y))) (* (cbrt (/ x y)) (cbrt (/ x y)))) (* (cbrt (/ x y)) (cbrt (/ x y)))) (* (* (* (cbrt (/ x y)) z) (* (cbrt (/ x y)) z)) (* (cbrt (/ x y)) z))) |
| 205.0ms | (exp (* 1/3 (- (log (/ 1 y)) (log (/ 1 x))))) |
7 alts after pruning (5 fresh and 2 done)
Merged error: 0b
Found 3 expressions with local error:
| 7.6b | (/ x (/ y z)) |
| 0.0b | (- (+ (/ x y) (/ 4 y)) (/ x (/ y z))) |
| 0.0b | (+ (/ x y) (/ 4 y)) |
3 calls. Slowest were:
| 19.0ms | (- (+ (/ x y) (/ 4 y)) (/ x (/ y z))) |
| 3.0ms | (+ (/ x y) (/ 4 y)) |
| 0.0ms | (/ x (/ y z)) |
3 calls. Slowest were:
| 39.0ms | (- (+ (/ x y) (/ 4 y)) (/ x (/ y z))) |
| 22.0ms | (/ x (/ y z)) |
| 15.0ms | (+ (/ x y) (/ 4 y)) |
32 calls. Slowest were:
| 334.0ms | (- (* (+ (* x y) (* y 4)) (/ y z)) (* (* y y) x)) |
| 261.0ms | (- (* (+ (pow (/ x y) 3) (pow (/ 4 y) 3)) (/ y z)) (* (+ (* (/ x y) (/ x y)) (- (* (/ 4 y) (/ 4 y)) (* (/ x y) (/ 4 y)))) x)) |
| 218.0ms | (- (* (- (* (/ x y) (/ x y)) (* (/ 4 y) (/ 4 y))) (/ y z)) (* (- (/ x y) (/ 4 y)) x)) |
7 alts after pruning (4 fresh and 3 done)
Merged error: 0b
88.9% (0.2b remaining)
Error of 0.2b against oracle of 0.0b and baseline of 1.6b