


Bits error versus x



Bits error versus l



Bits error versus t
if t < -1.0711862690600713e+132 or -2.0742810951057714e-165 < t < -2.083270058225574e-211Initial program 56.6
Taylor expanded around -inf 6.7
Simplified6.7
if -1.0711862690600713e+132 < t < -2.0742810951057714e-165 or -2.083270058225574e-211 < t < 4.388048359801954e+38Initial program 36.2
Taylor expanded around -inf 16.5
Simplified12.4
rmApplied add-cube-cbrt12.4
Applied associate-*l*12.4
if 4.388048359801954e+38 < t Initial program 44.6
Taylor expanded around inf 4.5
Simplified4.5
Final simplification9.2
herbie shell --seed 2019002 +o rules:numerics
(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: 44.2s)Debug log
1 calls. Slowest were:
| 502.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:
| 20.9b | (sqrt (- (* (/ (+ x 1) (- x 1)) (+ (* l l) (* 2 (* t t)))) (* l l))) |
| 12.2b | (- (* (/ (+ 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:
| 19.0ms | (sqrt (- (* (/ (+ 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)))) |
| 8.0ms | (- (* (/ (+ x 1) (- x 1)) (+ (* l l) (* 2 (* t t)))) (* l l)) |
4 calls. Slowest were:
| 890.0ms | (sqrt (- (* (/ (+ x 1) (- x 1)) (+ (* l l) (* 2 (* t t)))) (* l l))) |
| 250.0ms | (/ (* (sqrt 2) t) (sqrt (- (* (/ (+ x 1) (- x 1)) (+ (* l l) (* 2 (* t t)))) (* l l)))) |
| 143.0ms | (- (* (/ (+ x 1) (- x 1)) (+ (* l l) (* 2 (* t t)))) (* l l)) |
| 22.0ms | (* (sqrt 2) t) |
49 calls. Slowest were:
| 632.0ms | (/ (sqrt 2) (sqrt (* (cbrt (- (* (/ (+ x 1) (- x 1)) (+ (* l l) (* 2 (* t t)))) (* l l))) (cbrt (- (* (/ (+ x 1) (- x 1)) (+ (* l l) (* 2 (* t t)))) (* l l)))))) |
| 607.0ms | (/ t (sqrt (- (* (/ (+ x 1) (- x 1)) (+ (* l l) (* 2 (* t t)))) (* l l)))) |
| 600.0ms | (sqrt (sqrt (- (* (/ (+ x 1) (- x 1)) (+ (* l l) (* 2 (* t t)))) (* l l)))) |
7 alts after pruning (7 fresh and 0 done)
Merged error: 3.5b
Found 4 expressions with local error:
| 25.1b | (sqrt (fma 2 (fma (/ l x) l (* t t)) (* (/ t x) (* t 4)))) |
| 3.6b | (fma 2 (fma (/ l x) l (* t t)) (* (/ t x) (* t 4))) |
| 0.5b | (* (sqrt 2) t) |
| 0.1b | (* (/ t x) (* t 4)) |
4 calls. Slowest were:
| 6.0ms | (* (/ t x) (* t 4)) |
| 2.0ms | (* (sqrt 2) t) |
| 1.0ms | (sqrt (fma 2 (fma (/ l x) l (* t t)) (* (/ t x) (* t 4)))) |
4 calls. Slowest were:
| 288.0ms | (sqrt (fma 2 (fma (/ l x) l (* t t)) (* (/ t x) (* t 4)))) |
| 64.0ms | (fma 2 (fma (/ l x) l (* t t)) (* (/ t x) (* t 4))) |
| 42.0ms | (* (sqrt 2) t) |
| 20.0ms | (* (/ t x) (* t 4)) |
24 calls. Slowest were:
| 981.0ms | (* (* (* (/ t x) (/ t x)) (/ t x)) (* (* (* t 4) (* t 4)) (* t 4))) |
| 152.0ms | (sqrt (fma 2 (fma (/ l x) l (* t t)) (* (/ t x) (* t 4)))) |
| 110.0ms | (sqrt (* (cbrt (fma 2 (fma (/ l x) l (* t t)) (* (/ t x) (* t 4)))) (cbrt (fma 2 (fma (/ l x) l (* t t)) (* (/ t x) (* t 4)))))) |
11 alts after pruning (11 fresh and 0 done)
Merged error: 3.4b
Found 4 expressions with local error:
| 25.1b | (sqrt (fma 2 (fma (/ l x) l (* t t)) (* (/ t x) (* t 4)))) |
| 3.6b | (fma 2 (fma (/ l x) l (* t t)) (* (/ t x) (* t 4))) |
| 0.3b | (* (* (cbrt (sqrt 2)) (cbrt (sqrt 2))) (* (cbrt (sqrt 2)) t)) |
| 0.2b | (* (cbrt (sqrt 2)) t) |
4 calls. Slowest were:
| 20.0ms | (* (* (cbrt (sqrt 2)) (cbrt (sqrt 2))) (* (cbrt (sqrt 2)) t)) |
| 3.0ms | (* (cbrt (sqrt 2)) t) |
| 2.0ms | (sqrt (fma 2 (fma (/ l x) l (* t t)) (* (/ t x) (* t 4)))) |
4 calls. Slowest were:
| 480.0ms | (* (cbrt (sqrt 2)) t) |
| 278.0ms | (sqrt (fma 2 (fma (/ l x) l (* t t)) (* (/ t x) (* t 4)))) |
| 66.0ms | (fma 2 (fma (/ l x) l (* t t)) (* (/ t x) (* t 4))) |
| 42.0ms | (* (* (cbrt (sqrt 2)) (cbrt (sqrt 2))) (* (cbrt (sqrt 2)) t)) |
28 calls. Slowest were:
| 443.0ms | (* (* (sqrt 2) (sqrt 2)) (* (* (* (cbrt (sqrt 2)) t) (* (cbrt (sqrt 2)) t)) (* (cbrt (sqrt 2)) t))) |
| 359.0ms | (* (* (* (* (cbrt (sqrt 2)) (cbrt (sqrt 2))) (* (cbrt (sqrt 2)) (cbrt (sqrt 2)))) (* (cbrt (sqrt 2)) (cbrt (sqrt 2)))) (* (* (* (cbrt (sqrt 2)) t) (* (cbrt (sqrt 2)) t)) (* (cbrt (sqrt 2)) t))) |
| 106.0ms | (sqrt (* (cbrt (fma 2 (fma (/ l x) l (* t t)) (* (/ t x) (* t 4)))) (cbrt (fma 2 (fma (/ l x) l (* t t)) (* (/ t x) (* t 4)))))) |
11 alts after pruning (10 fresh and 1 done)
Merged error: 3.4b
Found 4 expressions with local error:
| 25.1b | (sqrt (fma 2 (fma (/ l x) l (* t t)) (* (/ t x) (* t 4)))) |
| 3.6b | (fma 2 (fma (/ l x) l (* t t)) (* (/ t x) (* t 4))) |
| 0.4b | (* (* (cbrt (cbrt (sqrt 2))) (cbrt (cbrt (sqrt 2)))) (* (cbrt (cbrt (sqrt 2))) t)) |
| 0.3b | (* (* (cbrt (sqrt 2)) (cbrt (sqrt 2))) (* (* (cbrt (cbrt (sqrt 2))) (cbrt (cbrt (sqrt 2)))) (* (cbrt (cbrt (sqrt 2))) t))) |
4 calls. Slowest were:
| 71.0ms | (* (* (cbrt (sqrt 2)) (cbrt (sqrt 2))) (* (* (cbrt (cbrt (sqrt 2))) (cbrt (cbrt (sqrt 2)))) (* (cbrt (cbrt (sqrt 2))) t))) |
| 18.0ms | (* (* (cbrt (cbrt (sqrt 2))) (cbrt (cbrt (sqrt 2)))) (* (cbrt (cbrt (sqrt 2))) t)) |
| 2.0ms | (sqrt (fma 2 (fma (/ l x) l (* t t)) (* (/ t x) (* t 4)))) |
4 calls. Slowest were:
| 402.0ms | (* (* (cbrt (cbrt (sqrt 2))) (cbrt (cbrt (sqrt 2)))) (* (cbrt (cbrt (sqrt 2))) t)) |
| 296.0ms | (sqrt (fma 2 (fma (/ l x) l (* t t)) (* (/ t x) (* t 4)))) |
| 64.0ms | (fma 2 (fma (/ l x) l (* t t)) (* (/ t x) (* t 4))) |
| 50.0ms | (* (* (cbrt (sqrt 2)) (cbrt (sqrt 2))) (* (* (cbrt (cbrt (sqrt 2))) (cbrt (cbrt (sqrt 2)))) (* (cbrt (cbrt (sqrt 2))) t))) |
43 calls. Slowest were:
| 618.0ms | (* (* (sqrt 2) (sqrt 2)) (* (* (* (* (cbrt (cbrt (sqrt 2))) (cbrt (cbrt (sqrt 2)))) (* (cbrt (cbrt (sqrt 2))) t)) (* (* (cbrt (cbrt (sqrt 2))) (cbrt (cbrt (sqrt 2)))) (* (cbrt (cbrt (sqrt 2))) t))) (* (* (cbrt (cbrt (sqrt 2))) (cbrt (cbrt (sqrt 2)))) (* (cbrt (cbrt (sqrt 2))) t)))) |
| 357.0ms | (* (* (cbrt (sqrt 2)) (cbrt (sqrt 2))) (* (* (cbrt (cbrt (sqrt 2))) (cbrt (cbrt (sqrt 2)))) (* (cbrt (cbrt (sqrt 2))) t))) |
| 350.0ms | (* (* (sqrt 2) (sqrt 2)) (* (* (cbrt (sqrt 2)) (cbrt (sqrt 2))) (* (* (* (cbrt (cbrt (sqrt 2))) t) (* (cbrt (cbrt (sqrt 2))) t)) (* (cbrt (cbrt (sqrt 2))) t)))) |
11 alts after pruning (9 fresh and 2 done)
Merged error: 3.4b
77.3% (5.3b remaining)
Error of 9.2b against oracle of 3.9b and baseline of 27.4b