


Bits error versus x



Bits error versus y



Bits error versus z
if x < -2.1690543199597533e+36Initial program 0.1
Initial simplification0.1
if -2.1690543199597533e+36 < x < 1.087461731140344e-19Initial program 2.0
rmApplied associate-*l/0.1
Applied sub-div0.1
if 1.087461731140344e-19 < x Initial program 0.1
rmApplied add-sqr-sqrt30.2
Applied prod-diff30.2
Simplified0.2
Simplified0.2
Taylor expanded around -inf 7.5
Simplified0.1
Final simplification0.1
herbie shell --seed 2018362 +o rules:numerics
(FPCore (x y z)
:name "fabs fraction 1"
(fabs (- (/ (+ x 4) y) (* (/ x y) z))))
Time bar (total: 21.8s)Debug log
2 alts after pruning (2 fresh and 0 done)
Merged error: 0.1b
Found 3 expressions with local error:
| 3.6b | (* (/ x y) z) |
| 0.0b | (/ (+ x 4) y) |
| 0.0b | (- (/ (+ x 4) y) (* (/ x y) z)) |
3 calls. Slowest were:
| 6.0ms | (- (/ (+ x 4) y) (* (/ x y) z)) |
| 2.0ms | (/ (+ x 4) y) |
| 2.0ms | (* (/ x y) z) |
3 calls. Slowest were:
| 26.0ms | (- (/ (+ x 4) y) (* (/ x y) z)) |
| 19.0ms | (/ (+ x 4) y) |
| 15.0ms | (* (/ x y) z) |
31 calls. Slowest were:
| 214.0ms | (fma (+ x 4) (/ 1 y) (- (* z (/ x y)))) |
| 124.0ms | (- (* (+ x 4) y) (* y (* x z))) |
| 108.0ms | (- (+ (/ x y) (* 4 (/ 1 y))) (/ (* x z) y)) |
6 alts after pruning (6 fresh and 0 done)
Merged error: 0.0b
Found 3 expressions with local error:
| 4.0b | (/ z (/ y x)) |
| 0.0b | (/ (+ 4 x) y) |
| 0.0b | (- (/ (+ 4 x) y) (/ z (/ y x))) |
3 calls. Slowest were:
| 6.0ms | (- (/ (+ 4 x) y) (/ z (/ y x))) |
| 2.0ms | (/ (+ 4 x) y) |
| 0.0ms | (/ z (/ y x)) |
3 calls. Slowest were:
| 41.0ms | (- (/ (+ 4 x) y) (/ z (/ y x))) |
| 14.0ms | (/ (+ 4 x) y) |
| 14.0ms | (/ z (/ y x)) |
66 calls. Slowest were:
| 246.0ms | (fma (- (/ 1 (/ y x))) z (* (/ 1 (/ y x)) z)) |
| 239.0ms | (fma (+ 4 x) (/ 1 y) (- (* (/ z (/ y x)) 1))) |
| 238.0ms | (fma (- (/ 1 (/ y x))) z (* (/ 1 (/ y x)) z)) |
6 alts after pruning (5 fresh and 1 done)
Merged error: 0.0b
Found 2 expressions with local error:
| 1.3b | (fma z (- (/ x y)) (+ (/ x y) (/ 4 y))) |
| 0.0b | (+ (/ x y) (/ 4 y)) |
2 calls. Slowest were:
| 7.0ms | (+ (/ x y) (/ 4 y)) |
| 0.0ms | (fma z (- (/ x y)) (+ (/ x y) (/ 4 y))) |
2 calls. Slowest were:
| 51.0ms | (fma z (- (/ x y)) (+ (/ x y) (/ 4 y))) |
| 21.0ms | (+ (/ x y) (/ 4 y)) |
14 calls. Slowest were:
| 101.0ms | (- (+ (/ x y) (* 4 (/ 1 y))) (/ (* x z) y)) |
| 86.0ms | (- (+ (/ x y) (* 4 (/ 1 y))) (/ (* x z) y)) |
| 68.0ms | (- (+ (/ x y) (* 4 (/ 1 y))) (/ (* x z) y)) |
6 alts after pruning (4 fresh and 2 done)
Merged error: 0.0b
Found 4 expressions with local error:
| 3.9b | (/ (/ y x) z) |
| 0.5b | (/ 1 (/ (/ y x) z)) |
| 0.0b | (/ (+ 4 x) y) |
| 0.0b | (- (/ (+ 4 x) y) (/ 1 (/ (/ y x) z))) |
4 calls. Slowest were:
| 12.0ms | (- (/ (+ 4 x) y) (/ 1 (/ (/ y x) z))) |
| 5.0ms | (/ (/ y x) z) |
| 5.0ms | (/ (+ 4 x) y) |
4 calls. Slowest were:
| 36.0ms | (- (/ (+ 4 x) y) (/ 1 (/ (/ y x) z))) |
| 21.0ms | (/ (/ y x) z) |
| 19.0ms | (/ (+ 4 x) y) |
| 15.0ms | (/ 1 (/ (/ y x) z)) |
73 calls. Slowest were:
| 709.0ms | (fma (+ 4 x) (/ 1 y) (- (* z (/ 1 (/ y x))))) |
| 421.0ms | (fma (+ 4 x) (/ 1 y) (- (* (/ 1 (/ (/ y x) z)) 1))) |
| 412.0ms | (fma (+ 4 x) (/ 1 y) (- (* (sqrt (/ 1 (/ (/ y x) z))) (sqrt (/ 1 (/ (/ y x) z)))))) |
5 alts after pruning (3 fresh and 2 done)
Merged error: 0.0b
92.6% (0.1b remaining)
Error of 0.1b against oracle of 0.0b and baseline of 1.3b