


Bits error versus x
if x < -17880101892810302.0 or 123538.45092554518 < x Initial program 60.0
Taylor expanded around -inf 0.3
Simplified0.0
if -17880101892810302.0 < x < 123538.45092554518Initial program 0.7
rmApplied clear-num0.7
rmApplied frac-sub0.4
Simplified0.1
Simplified0.1
Final simplification0.0
herbie shell --seed 2018365 +o rules:numerics
(FPCore (x)
:name "Asymptote C"
(- (/ x (+ x 1)) (/ (+ x 1) (- x 1))))
Time bar (total: 1.6m)Debug log
1 alts after pruning (1 fresh and 0 done)
Merged error: 31.7b
Found 3 expressions with local error:
| 2.5b | (- (/ x (+ x 1)) (/ (+ x 1) (- x 1))) |
| 0.0b | (/ (+ x 1) (- x 1)) |
| 0.0b | (/ x (+ x 1)) |
3 calls. Slowest were:
| 9.0ms | (- (/ x (+ x 1)) (/ (+ x 1) (- x 1))) |
| 3.0ms | (/ (+ x 1) (- x 1)) |
| 0.0ms | (/ x (+ x 1)) |
3 calls. Slowest were:
| 35.0ms | (- (/ x (+ x 1)) (/ (+ x 1) (- x 1))) |
| 15.0ms | (/ (+ x 1) (- x 1)) |
| 14.0ms | (/ x (+ x 1)) |
235 calls. Slowest were:
| 1.2s | (fma (/ x (- (* x x) (* 1 1))) (- x 1) (- (* (/ 1 (- x 1)) (+ x 1)))) |
| 973.0ms | (fma (/ x (- (* x x) (* 1 1))) (- x 1) (- (* (cbrt (/ (+ x 1) (- x 1))) (* (cbrt (/ (+ x 1) (- x 1))) (cbrt (/ (+ x 1) (- x 1))))))) |
| 954.0ms | (fma x (/ 1 (+ x 1)) (- (* (+ x 1) (/ (+ x 1) (- (* x x) (* 1 1)))))) |
3 alts after pruning (3 fresh and 0 done)
Merged error: 0.0b
Found 4 expressions with local error:
| 6.0b | (fma (/ -1 (* x x)) (/ 3 x) (- (/ -1 (* x x)) (/ 3 x))) |
| 0.5b | (/ -1 (* x x)) |
| 0.5b | (/ -1 (* x x)) |
| 0.0b | (- (/ -1 (* x x)) (/ 3 x)) |
4 calls. Slowest were:
| 5.0ms | (- (/ -1 (* x x)) (/ 3 x)) |
| 0.0ms | (/ -1 (* x x)) |
| 0.0ms | (/ -1 (* x x)) |
4 calls. Slowest were:
| 30.0ms | (- (/ -1 (* x x)) (/ 3 x)) |
| 15.0ms | (fma (/ -1 (* x x)) (/ 3 x) (- (/ -1 (* x x)) (/ 3 x))) |
| 11.0ms | (/ -1 (* x x)) |
| 11.0ms | (/ -1 (* x x)) |
52 calls. Slowest were:
| 680.0ms | (- (+ (* 3 (/ 1 (pow x 3))) (+ (/ 1 (pow x 2)) (* 3 (/ 1 x))))) |
| 605.0ms | (- (+ (* 3 (/ 1 (pow x 3))) (+ (/ 1 (pow x 2)) (* 3 (/ 1 x))))) |
| 600.0ms | (- (+ (* 3 (/ 1 (pow x 3))) (+ (/ 1 (pow x 2)) (* 3 (/ 1 x))))) |
5 alts after pruning (4 fresh and 1 done)
Merged error: 0.0b
Found 4 expressions with local error:
| 6.0b | (fma (/ -1 (* x x)) (/ 3 x) (fma 3 (/ -1 x) (/ (/ -1 x) x))) |
| 0.5b | (/ -1 (* x x)) |
| 0.2b | (fma 3 (/ -1 x) (/ (/ -1 x) x)) |
| 0.1b | (/ (/ -1 x) x) |
4 calls. Slowest were:
| 2.0ms | (/ (/ -1 x) x) |
| 0.0ms | (/ -1 (* x x)) |
| 0.0ms | (fma (/ -1 (* x x)) (/ 3 x) (fma 3 (/ -1 x) (/ (/ -1 x) x))) |
4 calls. Slowest were:
| 42.0ms | (fma 3 (/ -1 x) (/ (/ -1 x) x)) |
| 19.0ms | (/ (/ -1 x) x) |
| 15.0ms | (fma (/ -1 (* x x)) (/ 3 x) (fma 3 (/ -1 x) (/ (/ -1 x) x))) |
| 14.0ms | (/ -1 (* x x)) |
14 calls. Slowest were:
| 647.0ms | (- (+ (* 3 (/ 1 (pow x 3))) (+ (/ 1 (pow x 2)) (* 3 (/ 1 x))))) |
| 614.0ms | (- (+ (* 3 (/ 1 (pow x 3))) (+ (/ 1 (pow x 2)) (* 3 (/ 1 x))))) |
| 554.0ms | (- (+ (* 3 (/ 1 (pow x 3))) (+ (/ 1 (pow x 2)) (* 3 (/ 1 x))))) |
5 alts after pruning (3 fresh and 2 done)
Merged error: 0.0b
Found 4 expressions with local error:
| 2.5b | (- (/ 1 (/ (+ x 1) x)) (/ (+ x 1) (- x 1))) |
| 0.1b | (/ 1 (/ (+ x 1) x)) |
| 0.0b | (/ (+ x 1) (- x 1)) |
| 0.0b | (/ (+ x 1) x) |
4 calls. Slowest were:
| 13.0ms | (- (/ 1 (/ (+ x 1) x)) (/ (+ x 1) (- x 1))) |
| 6.0ms | (/ (+ x 1) (- x 1)) |
| 4.0ms | (/ (+ x 1) x) |
4 calls. Slowest were:
| 58.0ms | (- (/ 1 (/ (+ x 1) x)) (/ (+ x 1) (- x 1))) |
| 32.0ms | (/ (+ x 1) x) |
| 17.0ms | (/ 1 (/ (+ x 1) x)) |
| 17.0ms | (/ (+ x 1) (- x 1)) |
212 calls. Slowest were:
| 1.5s | (fma 1 (/ 1 (/ (+ x 1) x)) (- (* (+ x 1) (/ (+ x 1) (- (* x x) (* 1 1)))))) |
| 1.1s | (fma 1 (/ 1 (/ (+ x 1) x)) (- (* (+ x 1) (/ (+ x 1) (- (* x x) (* 1 1)))))) |
| 966.0ms | (fma (sqrt (/ 1 (/ (+ x 1) x))) (sqrt (/ 1 (/ (+ x 1) x))) (- (* (+ x 1) (/ (+ x 1) (- (* x x) (* 1 1)))))) |
5 alts after pruning (2 fresh and 3 done)
Merged error: 0.0b
99.9% (0.0b remaining)
Error of 0.0b against oracle of 0.0b and baseline of 32.0b