


Bits error versus x



Bits error versus l



Bits error versus t
Results
if t < -5.794477429976132e+47 or -3.7665317815387335e-159 < t < -3.86239255768365e-214Initial program 46.2
Taylor expanded around -inf 8.1
Simplified8.1
if -5.794477429976132e+47 < t < -3.7665317815387335e-159 or -3.86239255768365e-214 < t < 8.117102443425849e+104Initial program 36.5
Taylor expanded around -inf 16.2
Simplified12.3
rmApplied add-cube-cbrt12.3
Applied associate-*l*12.3
if 8.117102443425849e+104 < t Initial program 51.1
Taylor expanded around inf 3.0
Simplified3.0
Final simplification9.3
herbie shell --seed 2019010
(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.3s)Debug log
| 304.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: 40.3b
Found 4 expressions with local error:
| 18.9b | (sqrt (- (* (/ (+ x 1) (- x 1)) (+ (* l l) (* 2 (* t t)))) (* l l))) |
| 10.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)))) |
| 11× | add-sqr-sqrt |
| 10× | add-cube-cbrt |
| 10× | *-un-lft-identity |
| 9× | sqrt-prod |
| 6× | add-log-exp |
| 6× | add-exp-log |
| 6× | add-cbrt-cube |
| 6× | times-frac |
| 6× | associate-/r* |
| 4× | sqrt-div |
| 4× | pow1 |
| 3× | flip-- |
| 3× | associate-*l* |
| 3× | flip3-- |
| 2× | associate-/r/ |
| 2× | associate--l+ |
| 1× | associate-/l* |
| 1× | div-inv |
| 1× | *-commutative |
| 1× | div-exp |
| 1× | diff-log |
| 1× | pow1/2 |
| 1× | distribute-lft-in |
| 1× | frac-2neg |
| 1× | sub-neg |
| 1× | clear-num |
| 1× | rem-sqrt-square |
| 1× | cbrt-undiv |
| 1× | distribute-rgt-in |
| 19.0ms | (/ (* (sqrt 2) t) (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)) |
| 11.0ms | (sqrt (- (* (/ (+ x 1) (- x 1)) (+ (* l l) (* 2 (* t t)))) (* l l))) |
| 2.0ms | (* (sqrt 2) t) |
| 982.0ms | (sqrt (- (* (/ (+ x 1) (- x 1)) (+ (* l l) (* 2 (* t t)))) (* l l))) |
| 285.0ms | (/ (* (sqrt 2) t) (sqrt (- (* (/ (+ x 1) (- x 1)) (+ (* l l) (* 2 (* t t)))) (* l l)))) |
| 168.0ms | (- (* (/ (+ x 1) (- x 1)) (+ (* l l) (* 2 (* t t)))) (* l l)) |
| 41.0ms | (* (sqrt 2) t) |
| 503.0ms | (- (+ (* 2 (pow t 2)) (+ (* 2 (* x (pow l 2))) (* 2 (pow l 2))))) |
| 405.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)))))) |
| 342.0ms | (cbrt (sqrt (- (* (/ (+ x 1) (- x 1)) (+ (* l l) (* 2 (* t t)))) (* l l)))) |
| 309.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)))))) |
| 297.0ms | (sqrt (cbrt (- (* (/ (+ x 1) (- x 1)) (+ (* l l) (* 2 (* t t)))) (* l l)))) |
6 alts after pruning (6 fresh and 0 done)
Merged error: 4.1b
Found 4 expressions with local error:
| 25.0b | (sqrt (+ (* (/ l x) (* l 2)) (* (+ 2 (/ 4 x)) (* t t)))) |
| 0.4b | (+ (* (/ l x) (* l 2)) (* (+ 2 (/ 4 x)) (* t t))) |
| 0.4b | (* (sqrt 2) t) |
| 0.1b | (* (/ l x) (* l 2)) |
| 9× | associate-*l/ |
| 8× | add-sqr-sqrt |
| 7× | add-cube-cbrt |
| 7× | associate-*l* |
| 7× | *-un-lft-identity |
| 6× | add-log-exp |
| 6× | add-exp-log |
| 6× | add-cbrt-cube |
| 6× | pow1 |
| 4× | flip-+ |
| 4× | frac-add |
| 4× | sqrt-div |
| 4× | flip3-+ |
| 3× | sqrt-prod |
| 2× | *-commutative |
| 1× | div-inv |
| 1× | cbrt-unprod |
| 1× | prod-exp |
| 1× | pow-prod-down |
| 1× | associate-*r* |
| 1× | pow1/2 |
| 1× | sum-log |
| 1× | rem-sqrt-square |
| 1× | +-commutative |
| 13.0ms | (+ (* (/ l x) (* l 2)) (* (+ 2 (/ 4 x)) (* t t))) |
| 11.0ms | (sqrt (+ (* (/ l x) (* l 2)) (* (+ 2 (/ 4 x)) (* t t)))) |
| 6.0ms | (* (/ l x) (* l 2)) |
| 4.0ms | (* (sqrt 2) t) |
| 284.0ms | (sqrt (+ (* (/ l x) (* l 2)) (* (+ 2 (/ 4 x)) (* t t)))) |
| 64.0ms | (+ (* (/ l x) (* l 2)) (* (+ 2 (/ 4 x)) (* t t))) |
| 41.0ms | (* (sqrt 2) t) |
| 21.0ms | (* (/ l x) (* l 2)) |
| 471.0ms | (* (* (* (/ l x) (/ l x)) (/ l x)) (* (* (* l 2) (* l 2)) (* l 2))) |
| 432.0ms | (+ (* (* l (* l 2)) (- 2 (/ 4 x))) (* x (* (- (* 2 2) (* (/ 4 x) (/ 4 x))) (* t t)))) |
| 428.0ms | (* x (+ (* 2 2) (- (* (/ 4 x) (/ 4 x)) (* 2 (/ 4 x))))) |
| 379.0ms | (sqrt (+ (* (* l (* l 2)) (- 2 (/ 4 x))) (* x (* (- (* 2 2) (* (/ 4 x) (/ 4 x))) (* t t))))) |
| 277.0ms | (* (exp (* (/ l x) (* l 2))) (exp (* (+ 2 (/ 4 x)) (* t t)))) |
9 alts after pruning (9 fresh and 0 done)
Merged error: 3.5b
Found 4 expressions with local error:
| 25.0b | (sqrt (+ (* (/ l x) (* l 2)) (* (+ 2 (/ 4 x)) (* t t)))) |
| 0.4b | (+ (* (/ l x) (* l 2)) (* (+ 2 (/ 4 x)) (* t t))) |
| 0.3b | (* (* (cbrt (sqrt 2)) (cbrt (sqrt 2))) (* (cbrt (sqrt 2)) t)) |
| 0.2b | (* (cbrt (sqrt 2)) t) |
| 9× | add-exp-log |
| 9× | pow1 |
| 8× | associate-*l/ |
| 8× | add-sqr-sqrt |
| 7× | add-cube-cbrt |
| 7× | associate-*l* |
| 7× | add-cbrt-cube |
| 7× | *-un-lft-identity |
| 6× | add-log-exp |
| 4× | flip-+ |
| 4× | frac-add |
| 4× | sqrt-div |
| 4× | flip3-+ |
| 3× | cbrt-unprod |
| 3× | sqrt-prod |
| 3× | prod-exp |
| 3× | pow-prod-down |
| 3× | cbrt-prod |
| 2× | *-commutative |
| 1× | associate-*r* |
| 1× | pow1/2 |
| 1× | sum-log |
| 1× | rem-sqrt-square |
| 1× | +-commutative |
| 25.0ms | (* (* (cbrt (sqrt 2)) (cbrt (sqrt 2))) (* (cbrt (sqrt 2)) t)) |
| 9.0ms | (+ (* (/ l x) (* l 2)) (* (+ 2 (/ 4 x)) (* t t))) |
| 6.0ms | (* (cbrt (sqrt 2)) t) |
| 5.0ms | (sqrt (+ (* (/ l x) (* l 2)) (* (+ 2 (/ 4 x)) (* t t)))) |
| 439.0ms | (* (cbrt (sqrt 2)) t) |
| 254.0ms | (sqrt (+ (* (/ l x) (* l 2)) (* (+ 2 (/ 4 x)) (* t t)))) |
| 68.0ms | (+ (* (/ l x) (* l 2)) (* (+ 2 (/ 4 x)) (* t t))) |
| 34.0ms | (* (* (cbrt (sqrt 2)) (cbrt (sqrt 2))) (* (cbrt (sqrt 2)) t)) |
| 700.0ms | (* (exp (* (/ l x) (* l 2))) (exp (* (+ 2 (/ 4 x)) (* t t)))) |
| 420.0ms | (* x (+ (* 2 2) (- (* (/ 4 x) (/ 4 x)) (* 2 (/ 4 x))))) |
| 415.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))) |
| 412.0ms | (+ (* (* l (* l 2)) (- 2 (/ 4 x))) (* x (* (- (* 2 2) (* (/ 4 x) (/ 4 x))) (* t t)))) |
| 362.0ms | (sqrt (+ (* (* l (* l 2)) (- 2 (/ 4 x))) (* x (* (- (* 2 2) (* (/ 4 x) (/ 4 x))) (* t t))))) |
10 alts after pruning (9 fresh and 1 done)
Merged error: 3.5b
Found 4 expressions with local error:
| 25.0b | (sqrt (+ (* (/ l x) (* l 2)) (* (+ 2 (/ 4 x)) (* t t)))) |
| 0.4b | (+ (* (/ l x) (* l 2)) (* (+ 2 (/ 4 x)) (* t t))) |
| 0.3b | (* (sqrt (sqrt 2)) (* (sqrt (sqrt 2)) t)) |
| 0.2b | (* (sqrt (sqrt 2)) t) |
| 12× | associate-*l* |
| 10× | add-sqr-sqrt |
| 9× | sqrt-prod |
| 9× | add-cube-cbrt |
| 9× | *-un-lft-identity |
| 8× | associate-*l/ |
| 6× | add-log-exp |
| 6× | add-exp-log |
| 6× | add-cbrt-cube |
| 6× | pow1 |
| 4× | flip-+ |
| 4× | frac-add |
| 4× | sqrt-div |
| 4× | flip3-+ |
| 2× | *-commutative |
| 1× | cbrt-unprod |
| 1× | prod-exp |
| 1× | pow-prod-down |
| 1× | associate-*r* |
| 1× | pow1/2 |
| 1× | sum-log |
| 1× | rem-sqrt-square |
| 1× | +-commutative |
| 11.0ms | (+ (* (/ l x) (* l 2)) (* (+ 2 (/ 4 x)) (* t t))) |
| 10.0ms | (sqrt (+ (* (/ l x) (* l 2)) (* (+ 2 (/ 4 x)) (* t t)))) |
| 8.0ms | (* (sqrt (sqrt 2)) (* (sqrt (sqrt 2)) t)) |
| 3.0ms | (* (sqrt (sqrt 2)) t) |
| 234.0ms | (sqrt (+ (* (/ l x) (* l 2)) (* (+ 2 (/ 4 x)) (* t t)))) |
| 69.0ms | (* (sqrt (sqrt 2)) t) |
| 47.0ms | (+ (* (/ l x) (* l 2)) (* (+ 2 (/ 4 x)) (* t t))) |
| 41.0ms | (* (sqrt (sqrt 2)) (* (sqrt (sqrt 2)) t)) |
| 424.0ms | (+ (* (* l (* l 2)) (- 2 (/ 4 x))) (* x (* (- (* 2 2) (* (/ 4 x) (/ 4 x))) (* t t)))) |
| 391.0ms | (* (* (* (sqrt (sqrt 2)) (sqrt (sqrt 2))) (sqrt (sqrt 2))) (* (* (* (sqrt (sqrt 2)) t) (* (sqrt (sqrt 2)) t)) (* (sqrt (sqrt 2)) t))) |
| 379.0ms | (sqrt (+ (* (* l (* l 2)) (- 2 (/ 4 x))) (* x (* (- (* 2 2) (* (/ 4 x) (/ 4 x))) (* t t))))) |
| 342.0ms | (* x (+ (* 2 2) (- (* (/ 4 x) (/ 4 x)) (* 2 (/ 4 x))))) |
| 245.0ms | (* (exp (* (/ l x) (* l 2))) (exp (* (+ 2 (/ 4 x)) (* t t)))) |
10 alts after pruning (8 fresh and 2 done)
Merged error: 3.5b
74.8% (5.9b remaining)
Error of 9.3b against oracle of 3.4b and baseline of 26.9b