


Bits error versus x



Bits error versus l



Bits error versus t
Results
if t < -2.693333462834878e+18Initial program 42.1
Taylor expanded around -inf 4.9
Simplified4.9
if -2.693333462834878e+18 < t < 2.515008804416559e+112Initial program 39.2
Taylor expanded around -inf 18.7
Simplified14.5
rmApplied add-sqr-sqrt14.6
Applied associate-*l*14.5
rmApplied add-cube-cbrt14.5
Applied sqrt-prod14.6
Applied associate-*l*14.4
Simplified14.4
if 2.515008804416559e+112 < t Initial program 52.1
Taylor expanded around inf 2.9
Simplified2.9
Final simplification9.7
herbie shell --seed 2019008
(FPCore (x l t)
:name "Toniolo and Linder, Equation (7)"
(/ (* (sqrt 2) t) (sqrt (- (* (/ (+ x 1) (- x 1)) (+ (* l l) (* 2 (* t t)))) (* l l)))))
Time bar (total: 38.5s)Debug log
1 calls. Slowest were:
| 257.0ms | (/ (* (sqrt 2) t) (sqrt (- (* (/ (+ x 1) (- x 1)) (+ (* l l) (* 2 (* t t)))) (* l l)))) |
1 alts after pruning (1 fresh and 0 done)
Merged error: 43.6b
Found 4 expressions with local error:
| 22.9b | (sqrt (- (* (/ (+ x 1) (- x 1)) (+ (* l l) (* 2 (* t t)))) (* l l))) |
| 12.6b | (- (* (/ (+ x 1) (- x 1)) (+ (* l l) (* 2 (* t t)))) (* l l)) |
| 0.4b | (* (sqrt 2) t) |
| 0.0b | (/ (* (sqrt 2) t) (sqrt (- (* (/ (+ x 1) (- x 1)) (+ (* l l) (* 2 (* t t)))) (* l l)))) |
4 calls. Slowest were:
| 21.0ms | (/ (* (sqrt 2) t) (sqrt (- (* (/ (+ x 1) (- x 1)) (+ (* l l) (* 2 (* t t)))) (* l l)))) |
| 11.0ms | (sqrt (- (* (/ (+ x 1) (- x 1)) (+ (* l l) (* 2 (* t t)))) (* l l))) |
| 7.0ms | (- (* (/ (+ x 1) (- x 1)) (+ (* l l) (* 2 (* t t)))) (* l l)) |
4 calls. Slowest were:
| 959.0ms | (sqrt (- (* (/ (+ x 1) (- x 1)) (+ (* l l) (* 2 (* t t)))) (* l l))) |
| 300.0ms | (/ (* (sqrt 2) t) (sqrt (- (* (/ (+ x 1) (- x 1)) (+ (* l l) (* 2 (* t t)))) (* l l)))) |
| 149.0ms | (- (* (/ (+ x 1) (- x 1)) (+ (* l l) (* 2 (* t t)))) (* l l)) |
| 28.0ms | (* (sqrt 2) t) |
46 calls. Slowest were:
| 540.0ms | (- (+ (* 2 (pow t 2)) (+ (* 2 (* x (pow l 2))) (* 2 (pow l 2))))) |
| 418.0ms | (- (* (sqrt -2) t) (+ (* 2 (/ (* t x) (sqrt -2))) (+ (* 2 (/ (* t (pow x 2)) (sqrt -2))) (* 2 (/ (* t (pow x 2)) (pow (sqrt -2) 3)))))) |
| 354.0ms | (sqrt (sqrt (- (* (/ (+ x 1) (- x 1)) (+ (* l l) (* 2 (* t t)))) (* l l)))) |
5 alts after pruning (5 fresh and 0 done)
Merged error: 3.2b
Found 4 expressions with local error:
| 29.0b | (sqrt (+ (* (/ l x) (* l 2)) (* (+ 2 (/ 4 x)) (* t t)))) |
| 0.8b | (+ (* (/ l x) (* l 2)) (* (+ 2 (/ 4 x)) (* t t))) |
| 0.4b | (* (sqrt 2) t) |
| 0.1b | (* (/ l x) (* l 2)) |
4 calls. Slowest were:
| 13.0ms | (+ (* (/ l x) (* l 2)) (* (+ 2 (/ 4 x)) (* t t))) |
| 10.0ms | (sqrt (+ (* (/ l x) (* l 2)) (* (+ 2 (/ 4 x)) (* t t)))) |
| 7.0ms | (* (/ l x) (* l 2)) |
4 calls. Slowest were:
| 286.0ms | (sqrt (+ (* (/ l x) (* l 2)) (* (+ 2 (/ 4 x)) (* t t)))) |
| 41.0ms | (+ (* (/ l x) (* l 2)) (* (+ 2 (/ 4 x)) (* t t))) |
| 40.0ms | (* (sqrt 2) t) |
| 21.0ms | (* (/ l x) (* l 2)) |
33 calls. Slowest were:
| 577.0ms | (* (* (* (/ l x) (/ l x)) (/ l x)) (* (* (* l 2) (* l 2)) (* l 2))) |
| 446.0ms | (sqrt (+ (* (* l (* l 2)) (- 2 (/ 4 x))) (* x (* (- (* 2 2) (* (/ 4 x) (/ 4 x))) (* t t))))) |
| 360.0ms | (+ (* (* l (* l 2)) (- 2 (/ 4 x))) (* x (* (- (* 2 2) (* (/ 4 x) (/ 4 x))) (* t t)))) |
9 alts after pruning (9 fresh and 0 done)
Merged error: 2.4b
Found 4 expressions with local error:
| 29.0b | (sqrt (+ (* (/ l x) (* l 2)) (* (+ 2 (/ 4 x)) (* t t)))) |
| 0.8b | (+ (* (/ l x) (* l 2)) (* (+ 2 (/ 4 x)) (* t t))) |
| 0.4b | (* (sqrt (sqrt 2)) (* (sqrt (sqrt 2)) t)) |
| 0.2b | (* (sqrt (sqrt 2)) t) |
4 calls. Slowest were:
| 20.0ms | (* (sqrt (sqrt 2)) (* (sqrt (sqrt 2)) t)) |
| 13.0ms | (+ (* (/ l x) (* l 2)) (* (+ 2 (/ 4 x)) (* t t))) |
| 10.0ms | (sqrt (+ (* (/ l x) (* l 2)) (* (+ 2 (/ 4 x)) (* t t)))) |
4 calls. Slowest were:
| 261.0ms | (sqrt (+ (* (/ l x) (* l 2)) (* (+ 2 (/ 4 x)) (* t t)))) |
| 59.0ms | (+ (* (/ l x) (* l 2)) (* (+ 2 (/ 4 x)) (* t t))) |
| 58.0ms | (* (sqrt (sqrt 2)) t) |
| 23.0ms | (* (sqrt (sqrt 2)) (* (sqrt (sqrt 2)) t)) |
38 calls. Slowest were:
| 474.0ms | (sqrt (+ (* (* l (* l 2)) (- 2 (/ 4 x))) (* x (* (- (* 2 2) (* (/ 4 x) (/ 4 x))) (* t t))))) |
| 389.0ms | (* x (- 2 (/ 4 x))) |
| 359.0ms | (* x (+ (* 2 2) (- (* (/ 4 x) (/ 4 x)) (* 2 (/ 4 x))))) |
9 alts after pruning (8 fresh and 1 done)
Merged error: 2.4b
Found 4 expressions with local error:
| 29.0b | (sqrt (+ (* (/ l x) (* l 2)) (* (+ 2 (/ 4 x)) (* t t)))) |
| 0.8b | (+ (* (/ l x) (* l 2)) (* (+ 2 (/ 4 x)) (* t t))) |
| 0.3b | (* (sqrt (cbrt (sqrt 2))) (* (sqrt (sqrt 2)) t)) |
| 0.3b | (* (fabs (cbrt (sqrt 2))) (* (sqrt (cbrt (sqrt 2))) (* (sqrt (sqrt 2)) t))) |
4 calls. Slowest were:
| 36.0ms | (* (fabs (cbrt (sqrt 2))) (* (sqrt (cbrt (sqrt 2))) (* (sqrt (sqrt 2)) t))) |
| 17.0ms | (* (sqrt (cbrt (sqrt 2))) (* (sqrt (sqrt 2)) t)) |
| 13.0ms | (+ (* (/ l x) (* l 2)) (* (+ 2 (/ 4 x)) (* t t))) |
4 calls. Slowest were:
| 597.0ms | (* (fabs (cbrt (sqrt 2))) (* (sqrt (cbrt (sqrt 2))) (* (sqrt (sqrt 2)) t))) |
| 563.0ms | (* (sqrt (cbrt (sqrt 2))) (* (sqrt (sqrt 2)) t)) |
| 216.0ms | (sqrt (+ (* (/ l x) (* l 2)) (* (+ 2 (/ 4 x)) (* t t)))) |
| 41.0ms | (+ (* (/ l x) (* l 2)) (* (+ 2 (/ 4 x)) (* t t))) |
45 calls. Slowest were:
| 401.0ms | (* x (+ (* 2 2) (- (* (/ 4 x) (/ 4 x)) (* 2 (/ 4 x))))) |
| 398.0ms | (sqrt (+ (* (* l (* l 2)) (- 2 (/ 4 x))) (* x (* (- (* 2 2) (* (/ 4 x) (/ 4 x))) (* t t))))) |
| 304.0ms | (* (exp (* (/ l x) (* l 2))) (exp (* (+ 2 (/ 4 x)) (* t t)))) |
10 alts after pruning (8 fresh and 2 done)
Merged error: 2.4b
73.3% (6.4b remaining)
Error of 9.7b against oracle of 3.3b and baseline of 27.2b