


Bits error versus x
Results
if x < -21913.2379456452 or 22292.598586174332 < x Initial program 59.4
rmApplied flip--59.4
Taylor expanded around inf 0.3
Simplified0.0
if -21913.2379456452 < x < 22292.598586174332Initial program 0.1
rmApplied flip--0.1
rmApplied add-cbrt-cube0.1
rmApplied frac-times0.1
Applied frac-times0.1
Applied frac-times0.1
Applied frac-times0.1
Applied frac-times0.1
Applied cbrt-div0.1
Applied frac-times0.1
Applied frac-sub0.1
Simplified0.1
Simplified0.1
Final simplification0.1
herbie shell --seed 2019005
(FPCore (x)
:name "Asymptote C"
(- (/ x (+ x 1)) (/ (+ x 1) (- x 1))))
Time bar (total: 2.8m)Debug log
1 calls. Slowest were:
| 29.0ms | (- (/ x (+ x 1)) (/ (+ x 1) (- x 1))) |
1 alts after pruning (1 fresh and 0 done)
Merged error: 29.0b
Found 3 expressions with local error:
| 2.6b | (- (/ x (+ x 1)) (/ (+ x 1) (- x 1))) |
| 0.0b | (/ x (+ x 1)) |
| 0.0b | (/ (+ x 1) (- x 1)) |
3 calls. Slowest were:
| 8.0ms | (- (/ x (+ x 1)) (/ (+ x 1) (- x 1))) |
| 3.0ms | (/ (+ x 1) (- x 1)) |
| 0.0ms | (/ x (+ x 1)) |
3 calls. Slowest were:
| 51.0ms | (- (/ x (+ x 1)) (/ (+ x 1) (- x 1))) |
| 14.0ms | (/ (+ x 1) (- x 1)) |
| 10.0ms | (/ x (+ x 1)) |
51 calls. Slowest were:
| 474.0ms | (- (* x (- x 1)) (* (+ x 1) (+ x 1))) |
| 273.0ms | (/ (* (* (+ x 1) (+ x 1)) (+ x 1)) (* (* (- x 1) (- x 1)) (- x 1))) |
| 219.0ms | (- (+ (* 3 (/ 1 (pow x 3))) (+ (/ 1 (pow x 2)) (* 3 (/ 1 x))))) |
6 alts after pruning (6 fresh and 0 done)
Merged error: 0.0b
Found 4 expressions with local error:
| 2.6b | (- (* (/ x (+ x 1)) (/ x (+ x 1))) (* (/ (+ x 1) (- x 1)) (/ (+ x 1) (- x 1)))) |
| 0.0b | (* (/ x (+ x 1)) (/ x (+ x 1))) |
| 0.0b | (/ (- (* (/ x (+ x 1)) (/ x (+ x 1))) (* (/ (+ x 1) (- x 1)) (/ (+ x 1) (- x 1)))) (+ (/ x (+ x 1)) (/ (+ x 1) (- x 1)))) |
| 0.0b | (* (/ (+ x 1) (- x 1)) (/ (+ x 1) (- x 1))) |
4 calls. Slowest were:
| 43.0ms | (/ (- (* (/ x (+ x 1)) (/ x (+ x 1))) (* (/ (+ x 1) (- x 1)) (/ (+ x 1) (- x 1)))) (+ (/ x (+ x 1)) (/ (+ x 1) (- x 1)))) |
| 14.0ms | (* (/ (+ x 1) (- x 1)) (/ (+ x 1) (- x 1))) |
| 11.0ms | (- (* (/ x (+ x 1)) (/ x (+ x 1))) (* (/ (+ x 1) (- x 1)) (/ (+ x 1) (- x 1)))) |
4 calls. Slowest were:
| 113.0ms | (/ (- (* (/ x (+ x 1)) (/ x (+ x 1))) (* (/ (+ x 1) (- x 1)) (/ (+ x 1) (- x 1)))) (+ (/ x (+ x 1)) (/ (+ x 1) (- x 1)))) |
| 54.0ms | (- (* (/ x (+ x 1)) (/ x (+ x 1))) (* (/ (+ x 1) (- x 1)) (/ (+ x 1) (- x 1)))) |
| 22.0ms | (* (/ (+ x 1) (- x 1)) (/ (+ x 1) (- x 1))) |
| 15.0ms | (* (/ x (+ x 1)) (/ x (+ x 1))) |
154 calls. Slowest were:
| 877.0ms | (* (* (* (/ x (+ x 1)) (/ x (+ x 1))) (/ x (+ x 1))) (* (* (/ x (+ x 1)) (/ x (+ x 1))) (/ x (+ x 1)))) |
| 723.0ms | (* (* (* (/ (+ x 1) (- x 1)) (/ (+ x 1) (- x 1))) (/ (+ x 1) (- x 1))) (* (* (/ (+ x 1) (- x 1)) (/ (+ x 1) (- x 1))) (/ (+ x 1) (- x 1)))) |
| 657.0ms | (- (* (* x x) (- x 1)) (* (* (+ x 1) (+ x 1)) (* (+ x 1) (/ (+ x 1) (- x 1))))) |
6 alts after pruning (6 fresh and 0 done)
Merged error: 0.0b
Found 4 expressions with local error:
| 2.6b | (- (* (/ x (+ x 1)) (/ x (+ x 1))) (cbrt (* (* (* (/ (+ x 1) (- x 1)) (/ (+ x 1) (- x 1))) (* (/ (+ x 1) (- x 1)) (/ (+ x 1) (- x 1)))) (* (/ (+ x 1) (- x 1)) (/ (+ x 1) (- x 1)))))) |
| 0.0b | (* (* (/ (+ x 1) (- x 1)) (/ (+ x 1) (- x 1))) (* (/ (+ x 1) (- x 1)) (/ (+ x 1) (- x 1)))) |
| 0.0b | (cbrt (* (* (* (/ (+ x 1) (- x 1)) (/ (+ x 1) (- x 1))) (* (/ (+ x 1) (- x 1)) (/ (+ x 1) (- x 1)))) (* (/ (+ x 1) (- x 1)) (/ (+ x 1) (- x 1))))) |
| 0.0b | (* (/ x (+ x 1)) (/ x (+ x 1))) |
4 calls. Slowest were:
| 66.0ms | (cbrt (* (* (* (/ (+ x 1) (- x 1)) (/ (+ x 1) (- x 1))) (* (/ (+ x 1) (- x 1)) (/ (+ x 1) (- x 1)))) (* (/ (+ x 1) (- x 1)) (/ (+ x 1) (- x 1))))) |
| 40.0ms | (- (* (/ x (+ x 1)) (/ x (+ x 1))) (cbrt (* (* (* (/ (+ x 1) (- x 1)) (/ (+ x 1) (- x 1))) (* (/ (+ x 1) (- x 1)) (/ (+ x 1) (- x 1)))) (* (/ (+ x 1) (- x 1)) (/ (+ x 1) (- x 1)))))) |
| 27.0ms | (* (* (/ (+ x 1) (- x 1)) (/ (+ x 1) (- x 1))) (* (/ (+ x 1) (- x 1)) (/ (+ x 1) (- x 1)))) |
4 calls. Slowest were:
| 57.0ms | (- (* (/ x (+ x 1)) (/ x (+ x 1))) (cbrt (* (* (* (/ (+ x 1) (- x 1)) (/ (+ x 1) (- x 1))) (* (/ (+ x 1) (- x 1)) (/ (+ x 1) (- x 1)))) (* (/ (+ x 1) (- x 1)) (/ (+ x 1) (- x 1)))))) |
| 20.0ms | (* (* (/ (+ x 1) (- x 1)) (/ (+ x 1) (- x 1))) (* (/ (+ x 1) (- x 1)) (/ (+ x 1) (- x 1)))) |
| 15.0ms | (cbrt (* (* (* (/ (+ x 1) (- x 1)) (/ (+ x 1) (- x 1))) (* (/ (+ x 1) (- x 1)) (/ (+ x 1) (- x 1)))) (* (/ (+ x 1) (- x 1)) (/ (+ x 1) (- x 1))))) |
| 14.0ms | (* (/ x (+ x 1)) (/ x (+ x 1))) |
595 calls. Slowest were:
| 1.5s | (cbrt (* (* (* (+ x 1) (+ x 1)) (* (+ x 1) (/ (+ x 1) (- x 1)))) (* (+ x 1) (+ x 1)))) |
| 1.4s | (* (* (+ x 1) (+ x 1)) (* (+ x 1) (+ x 1))) |
| 1.2s | (cbrt (* (* (* (/ (+ x 1) (- x 1)) (+ x 1)) (* (+ x 1) (+ x 1))) (* (+ x 1) (+ x 1)))) |
6 alts after pruning (5 fresh and 1 done)
Merged error: 0.0b
Found 4 expressions with local error:
| 2.6b | (- (pow (/ x (+ 1 x)) 4) (pow (/ (+ 1 x) (+ -1 x)) 4)) |
| 0.0b | (pow (/ (+ 1 x) (+ -1 x)) 4) |
| 0.0b | (pow (/ x (+ 1 x)) 4) |
| 0.0b | (* (/ x (+ x 1)) (/ x (+ x 1))) |
4 calls. Slowest were:
| 17.0ms | (- (pow (/ x (+ 1 x)) 4) (pow (/ (+ 1 x) (+ -1 x)) 4)) |
| 4.0ms | (* (/ x (+ x 1)) (/ x (+ x 1))) |
| 3.0ms | (pow (/ (+ 1 x) (+ -1 x)) 4) |
4 calls. Slowest were:
| 94.0ms | (- (pow (/ x (+ 1 x)) 4) (pow (/ (+ 1 x) (+ -1 x)) 4)) |
| 20.0ms | (pow (/ x (+ 1 x)) 4) |
| 18.0ms | (pow (/ (+ 1 x) (+ -1 x)) 4) |
| 11.0ms | (* (/ x (+ x 1)) (/ x (+ x 1))) |
74 calls. Slowest were:
| 881.0ms | (* (* (* (/ x (+ x 1)) (/ x (+ x 1))) (/ x (+ x 1))) (* (* (/ x (+ x 1)) (/ x (+ x 1))) (/ x (+ x 1)))) |
| 219.0ms | (- (+ (* 108 (/ 1 (pow x 3))) (+ (* 22 (/ 1 (pow x 2))) (* 12 (/ 1 x))))) |
| 185.0ms | (- (+ (* 108 (/ 1 (pow x 3))) (+ (* 22 (/ 1 (pow x 2))) (* 12 (/ 1 x))))) |
6 alts after pruning (5 fresh and 1 done)
Merged error: 0.0b
99.9% (0.0b remaining)
Error of 0.1b against oracle of 0.0b and baseline of 29.4b