


Bits error versus x



Bits error versus l



Bits error versus t
Results
if t < -7.956170804997953e+113Initial program 52.7
Taylor expanded around -inf 2.4
Simplified2.4
if -7.956170804997953e+113 < t < 1.9387688460025505e-287Initial program 37.3
Taylor expanded around inf 16.7
Simplified12.7
Taylor expanded around 0 12.7
if 1.9387688460025505e-287 < t < 1.400368300731661e-160 or 2.2573280091762418e+30 < t Initial program 47.8
Taylor expanded around inf 12.4
Simplified12.4
if 1.400368300731661e-160 < t < 2.2573280091762418e+30Initial program 29.7
Taylor expanded around inf 9.2
Simplified4.3
rmApplied add-sqr-sqrt4.4
Applied associate-*l*4.3
rmApplied add-cube-cbrt4.3
Applied sqrt-prod4.5
Applied associate-*l*4.2
Simplified4.2
Final simplification9.4
herbie shell --seed 2018360
(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: 29.9s)Debug log
1 alts after pruning (1 fresh and 0 done)
Merged error: 44.4b
Found 4 expressions with local error:
| 19.7b | (sqrt (- (* (/ (+ x 1) (- x 1)) (+ (* l l) (* 2 (* t t)))) (* l l))) |
| 14.5b | (- (* (/ (+ x 1) (- x 1)) (+ (* l l) (* 2 (* t t)))) (* l l)) |
| 0.5b | (* (sqrt 2) t) |
| 0.0b | (/ (* (sqrt 2) t) (sqrt (- (* (/ (+ x 1) (- x 1)) (+ (* l l) (* 2 (* t t)))) (* l l)))) |
4 calls. Slowest were:
| 26.0ms | (sqrt (- (* (/ (+ x 1) (- x 1)) (+ (* l l) (* 2 (* t t)))) (* l l))) |
| 15.0ms | (- (* (/ (+ x 1) (- x 1)) (+ (* l l) (* 2 (* t t)))) (* l l)) |
| 15.0ms | (/ (* (sqrt 2) t) (sqrt (- (* (/ (+ x 1) (- x 1)) (+ (* l l) (* 2 (* t t)))) (* l l)))) |
4 calls. Slowest were:
| 860.0ms | (sqrt (- (* (/ (+ x 1) (- x 1)) (+ (* l l) (* 2 (* t t)))) (* l l))) |
| 302.0ms | (/ (* (sqrt 2) t) (sqrt (- (* (/ (+ x 1) (- x 1)) (+ (* l l) (* 2 (* t t)))) (* l l)))) |
| 154.0ms | (- (* (/ (+ x 1) (- x 1)) (+ (* l l) (* 2 (* t t)))) (* l l)) |
| 32.0ms | (* (sqrt 2) t) |
46 calls. Slowest were:
| 408.0ms | (sqrt (+ (* (/ (+ x 1) (- x 1)) (+ (* l l) (* 2 (* t t)))) (* l l))) |
| 359.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)))))) |
| 348.0ms | (- (+ (* 2 (/ t (* (sqrt 2) (pow x 2)))) (+ (* t (sqrt 2)) (* 2 (/ t (* (sqrt 2) x))))) (* 2 (/ t (* (pow (sqrt 2) 3) (pow x 2))))) |
6 alts after pruning (5 fresh and 1 done)
Merged error: 5.2b
Found 4 expressions with local error:
| 28.1b | (sqrt (+ (* (/ l x) (* l 2)) (* (+ 2 (/ 4 x)) (* t t)))) |
| 0.5b | (* (sqrt 2) t) |
| 0.2b | (+ (* (/ l x) (* l 2)) (* (+ 2 (/ 4 x)) (* t 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:
| 244.0ms | (sqrt (+ (* (/ l x) (* l 2)) (* (+ 2 (/ 4 x)) (* t t)))) |
| 51.0ms | (+ (* (/ l x) (* l 2)) (* (+ 2 (/ 4 x)) (* t t))) |
| 23.0ms | (* (sqrt 2) t) |
| 12.0ms | (* (/ l x) (* l 2)) |
33 calls. Slowest were:
| 658.0ms | (* (* (* (/ l x) (/ l x)) (/ l x)) (* (* (* l 2) (* l 2)) (* l 2))) |
| 484.0ms | (sqrt (+ (* (* l (* l 2)) (- 2 (/ 4 x))) (* x (* (- (* 2 2) (* (/ 4 x) (/ 4 x))) (* t t))))) |
| 392.0ms | (+ (* (* l (* l 2)) (- 2 (/ 4 x))) (* x (* (- (* 2 2) (* (/ 4 x) (/ 4 x))) (* t t)))) |
11 alts after pruning (10 fresh and 1 done)
Merged error: 4.0b
Found 4 expressions with local error:
| 28.1b | (sqrt (+ (* (/ l x) (* l 2)) (* (+ 2 (/ 4 x)) (* t t)))) |
| 0.3b | (* (sqrt (sqrt 2)) (* (sqrt (sqrt 2)) t)) |
| 0.2b | (* (sqrt (sqrt 2)) t) |
| 0.2b | (+ (* (/ l x) (* l 2)) (* (+ 2 (/ 4 x)) (* t t))) |
4 calls. Slowest were:
| 8.0ms | (* (sqrt (sqrt 2)) (* (sqrt (sqrt 2)) t)) |
| 6.0ms | (+ (* (/ l x) (* l 2)) (* (+ 2 (/ 4 x)) (* t t))) |
| 5.0ms | (sqrt (+ (* (/ l x) (* l 2)) (* (+ 2 (/ 4 x)) (* t t)))) |
4 calls. Slowest were:
| 278.0ms | (sqrt (+ (* (/ l x) (* l 2)) (* (+ 2 (/ 4 x)) (* t t)))) |
| 68.0ms | (* (sqrt (sqrt 2)) t) |
| 62.0ms | (+ (* (/ l x) (* l 2)) (* (+ 2 (/ 4 x)) (* t t))) |
| 40.0ms | (* (sqrt (sqrt 2)) (* (sqrt (sqrt 2)) t)) |
38 calls. Slowest were:
| 502.0ms | (sqrt (+ (* (* l (* l 2)) (- 2 (/ 4 x))) (* x (* (- (* 2 2) (* (/ 4 x) (/ 4 x))) (* t t))))) |
| 413.0ms | (* (* (* (sqrt (sqrt 2)) (sqrt (sqrt 2))) (sqrt (sqrt 2))) (* (* (* (sqrt (sqrt 2)) t) (* (sqrt (sqrt 2)) t)) (* (sqrt (sqrt 2)) t))) |
| 406.0ms | (+ (* (* l (* l 2)) (- 2 (/ 4 x))) (* x (* (- (* 2 2) (* (/ 4 x) (/ 4 x))) (* t t)))) |
11 alts after pruning (10 fresh and 1 done)
Merged error: 4.0b
Found 4 expressions with local error:
| 28.1b | (sqrt (+ (* (/ l x) (* l 2)) (* (+ 2 (/ 4 x)) (* t t)))) |
| 0.3b | (* (sqrt (cbrt (sqrt 2))) t) |
| 0.3b | (* (fabs (cbrt (sqrt 2))) (* (sqrt (cbrt (sqrt 2))) t)) |
| 0.3b | (* (sqrt (sqrt 2)) (* (fabs (cbrt (sqrt 2))) (* (sqrt (cbrt (sqrt 2))) t))) |
4 calls. Slowest were:
| 29.0ms | (* (sqrt (sqrt 2)) (* (fabs (cbrt (sqrt 2))) (* (sqrt (cbrt (sqrt 2))) t))) |
| 15.0ms | (* (fabs (cbrt (sqrt 2))) (* (sqrt (cbrt (sqrt 2))) t)) |
| 9.0ms | (sqrt (+ (* (/ l x) (* l 2)) (* (+ 2 (/ 4 x)) (* t t)))) |
4 calls. Slowest were:
| 655.0ms | (* (sqrt (sqrt 2)) (* (fabs (cbrt (sqrt 2))) (* (sqrt (cbrt (sqrt 2))) t))) |
| 520.0ms | (* (fabs (cbrt (sqrt 2))) (* (sqrt (cbrt (sqrt 2))) t)) |
| 415.0ms | (* (sqrt (cbrt (sqrt 2))) t) |
| 206.0ms | (sqrt (+ (* (/ l x) (* l 2)) (* (+ 2 (/ 4 x)) (* t t)))) |
45 calls. Slowest were:
| 436.0ms | (sqrt (+ (* (* l (* l 2)) (- 2 (/ 4 x))) (* x (* (- (* 2 2) (* (/ 4 x) (/ 4 x))) (* t t))))) |
| 262.0ms | (* (* (* (fabs (cbrt (sqrt 2))) (fabs (cbrt (sqrt 2)))) (fabs (cbrt (sqrt 2)))) (* (* (* (sqrt (cbrt (sqrt 2))) t) (* (sqrt (cbrt (sqrt 2))) t)) (* (sqrt (cbrt (sqrt 2))) t))) |
| 121.0ms | (sqrt (+ (* (* l (* l 2)) (+ (* 2 2) (- (* (/ 4 x) (/ 4 x)) (* 2 (/ 4 x))))) (* x (* (+ (pow 2 3) (pow (/ 4 x) 3)) (* t t))))) |
11 alts after pruning (9 fresh and 2 done)
Merged error: 4.0b
73.2% (6.4b remaining)
Error of 9.4b against oracle of 2.9b and baseline of 27.0b