


Bits error versus d



Bits error versus h



Bits error versus l



Bits error versus M



Bits error versus D
Results
if d < -4.437468407432772e+85Initial program 24.7
Taylor expanded around -inf 17.2
Simplified12.8
if -4.437468407432772e+85 < d < -1.410505834504642e-85Initial program 16.0
rmApplied associate-*r/14.3
rmApplied pow114.3
Applied pow114.3
Applied pow-prod-down14.3
Simplified14.1
rmApplied associate-/l/11.3
rmApplied add-sqr-sqrt11.3
Applied sqrt-prod11.6
if -1.410505834504642e-85 < d < 4.05717666479264e-310Initial program 37.2
rmApplied associate-*r/37.0
Taylor expanded around -inf 32.8
Simplified30.5
if 4.05717666479264e-310 < d Initial program 25.3
rmApplied associate-*r/24.6
rmApplied pow124.6
Applied pow124.6
Applied pow-prod-down24.6
Simplified24.4
rmApplied associate-/l/22.8
rmApplied sqrt-div16.4
Applied sqrt-div10.2
Applied frac-times10.2
Applied associate-*r/10.1
Final simplification14.1
herbie shell --seed 2018362
(FPCore (d h l M D)
:name "Henrywood and Agarwal, Equation (12)"
(* (* (pow (/ d h) (/ 1 2)) (pow (/ d l) (/ 1 2))) (- 1 (* (* (/ 1 2) (pow (/ (* M D) (* 2 d)) 2)) (/ h l)))))
Time bar (total: 51.1s)Debug log
2 alts after pruning (2 fresh and 0 done)
Merged error: 26.6b
Found 4 expressions with local error:
| 13.4b | (* (* (/ 1 2) (pow (/ (* M D) (* 2 d)) 2)) (/ h l)) |
| 13.0b | (pow (/ d l) (/ 1 2)) |
| 10.2b | (pow (/ d h) (/ 1 2)) |
| 7.6b | (* (* (pow (/ d h) (/ 1 2)) (pow (/ d l) (/ 1 2))) (- 1 (* (* (/ 1 2) (pow (/ (* M D) (* 2 d)) 2)) (/ h l)))) |
4 calls. Slowest were:
| 20.0ms | (* (* (/ 1 2) (pow (/ (* M D) (* 2 d)) 2)) (/ h l)) |
| 14.0ms | (* (* (pow (/ d h) (/ 1 2)) (pow (/ d l) (/ 1 2))) (- 1 (* (* (/ 1 2) (pow (/ (* M D) (* 2 d)) 2)) (/ h l)))) |
| 13.0ms | (pow (/ d l) (/ 1 2)) |
4 calls. Slowest were:
| 272.0ms | (* (* (pow (/ d h) (/ 1 2)) (pow (/ d l) (/ 1 2))) (- 1 (* (* (/ 1 2) (pow (/ (* M D) (* 2 d)) 2)) (/ h l)))) |
| 76.0ms | (pow (/ d l) (/ 1 2)) |
| 66.0ms | (pow (/ d h) (/ 1 2)) |
| 63.0ms | (* (* (/ 1 2) (pow (/ (* M D) (* 2 d)) 2)) (/ h l)) |
71 calls. Slowest were:
| 851.0ms | (* (* 1 (pow (/ (* M D) (* 2 d)) 2)) h) |
| 550.0ms | (+ (+ (log (/ 1 2)) (log (pow (/ (* M D) (* 2 d)) 2))) (log (/ h l))) |
| 356.0ms | (* (* (* (* (/ 1 2) (pow (/ (* M D) (* 2 d)) 2)) (* (/ 1 2) (pow (/ (* M D) (* 2 d)) 2))) (* (/ 1 2) (pow (/ (* M D) (* 2 d)) 2))) (* (* (/ h l) (/ h l)) (/ h l))) |
22 alts after pruning (22 fresh and 0 done)
Merged error: 12.1b
Found 4 expressions with local error:
| 13.0b | (pow (/ d l) (/ 1 2)) |
| 10.2b | (pow (/ d h) (/ 1 2)) |
| 7.6b | (* (* (pow (/ d h) (/ 1 2)) (pow (/ d l) (/ 1 2))) (- 1 (/ (* (* (/ 1 2) (pow (/ (* M D) (* 2 d)) 2)) h) l))) |
| 7.5b | (/ (* (* (/ 1 2) (pow (/ (* M D) (* 2 d)) 2)) h) l) |
4 calls. Slowest were:
| 28.0ms | (* (* (pow (/ d h) (/ 1 2)) (pow (/ d l) (/ 1 2))) (- 1 (/ (* (* (/ 1 2) (pow (/ (* M D) (* 2 d)) 2)) h) l))) |
| 21.0ms | (/ (* (* (/ 1 2) (pow (/ (* M D) (* 2 d)) 2)) h) l) |
| 3.0ms | (pow (/ d l) (/ 1 2)) |
4 calls. Slowest were:
| 250.0ms | (* (* (pow (/ d h) (/ 1 2)) (pow (/ d l) (/ 1 2))) (- 1 (/ (* (* (/ 1 2) (pow (/ (* M D) (* 2 d)) 2)) h) l))) |
| 90.0ms | (/ (* (* (/ 1 2) (pow (/ (* M D) (* 2 d)) 2)) h) l) |
| 82.0ms | (pow (/ d h) (/ 1 2)) |
| 77.0ms | (pow (/ d l) (/ 1 2)) |
57 calls. Slowest were:
| 858.0ms | (* (/ 1 2) (pow (/ (* M D) (* 2 d)) 2)) |
| 822.0ms | (* (* 1 (pow (/ (* M D) (* 2 d)) 2)) h) |
| 276.0ms | (* (* (* (* (pow (/ d h) (/ 1 2)) (pow (/ d h) (/ 1 2))) (pow (/ d h) (/ 1 2))) (* (* (pow (/ d l) (/ 1 2)) (pow (/ d l) (/ 1 2))) (pow (/ d l) (/ 1 2)))) (* (* (- 1 (/ (* (* (/ 1 2) (pow (/ (* M D) (* 2 d)) 2)) h) l)) (- 1 (/ (* (* (/ 1 2) (pow (/ (* M D) (* 2 d)) 2)) h) l))) (- 1 (/ (* (* (/ 1 2) (pow (/ (* M D) (* 2 d)) 2)) h) l)))) |
21 alts after pruning (21 fresh and 0 done)
Merged error: 10.1b
Found 4 expressions with local error:
| 13.0b | (sqrt (/ d l)) |
| 11.1b | (/ (/ (* l 2) h) (* (/ M 2) (/ D d))) |
| 10.2b | (sqrt (/ d h)) |
| 7.6b | (* (- 1 (/ (* (/ M 2) (/ D d)) (/ (/ (* l 2) h) (* (/ M 2) (/ D d))))) (* (sqrt (/ d l)) (sqrt (/ d h)))) |
4 calls. Slowest were:
| 22.0ms | (* (- 1 (/ (* (/ M 2) (/ D d)) (/ (/ (* l 2) h) (* (/ M 2) (/ D d))))) (* (sqrt (/ d l)) (sqrt (/ d h)))) |
| 18.0ms | (/ (/ (* l 2) h) (* (/ M 2) (/ D d))) |
| 1.0ms | (sqrt (/ d l)) |
4 calls. Slowest were:
| 180.0ms | (* (- 1 (/ (* (/ M 2) (/ D d)) (/ (/ (* l 2) h) (* (/ M 2) (/ D d))))) (* (sqrt (/ d l)) (sqrt (/ d h)))) |
| 63.0ms | (/ (/ (* l 2) h) (* (/ M 2) (/ D d))) |
| 36.0ms | (sqrt (/ d h)) |
| 24.0ms | (sqrt (/ d l)) |
68 calls. Slowest were:
| 578.0ms | (* (* (* (- 1 (/ (* (/ M 2) (/ D d)) (/ (/ (* l 2) h) (* (/ M 2) (/ D d))))) (- 1 (/ (* (/ M 2) (/ D d)) (/ (/ (* l 2) h) (* (/ M 2) (/ D d)))))) (- 1 (/ (* (/ M 2) (/ D d)) (/ (/ (* l 2) h) (* (/ M 2) (/ D d)))))) (* (* (* (sqrt (/ d l)) (sqrt (/ d l))) (sqrt (/ d l))) (* (* (sqrt (/ d h)) (sqrt (/ d h))) (sqrt (/ d h))))) |
| 504.0ms | (* (+ (* 1 1) (+ (* (/ (* (/ M 2) (/ D d)) (/ (/ (* l 2) h) (* (/ M 2) (/ D d)))) (/ (* (/ M 2) (/ D d)) (/ (/ (* l 2) h) (* (/ M 2) (/ D d))))) (* 1 (/ (* (/ M 2) (/ D d)) (/ (/ (* l 2) h) (* (/ M 2) (/ D d))))))) (* (sqrt l) (sqrt h))) |
| 460.0ms | (* (+ (* 1 1) (+ (* (/ (* (/ M 2) (/ D d)) (/ (/ (* l 2) h) (* (/ M 2) (/ D d)))) (/ (* (/ M 2) (/ D d)) (/ (/ (* l 2) h) (* (/ M 2) (/ D d))))) (* 1 (/ (* (/ M 2) (/ D d)) (/ (/ (* l 2) h) (* (/ M 2) (/ D d))))))) (sqrt l)) |
23 alts after pruning (23 fresh and 0 done)
Merged error: 8.6b
Found 4 expressions with local error:
| 13.0b | (sqrt (/ d l)) |
| 10.2b | (sqrt (/ d h)) |
| 7.6b | (* (- 1 (/ (* (/ M 2) (/ D d)) (/ (* l 2) (* (* (/ M 2) (/ D d)) h)))) (* (sqrt (/ d l)) (sqrt (/ d h)))) |
| 6.2b | (/ (* l 2) (* (* (/ M 2) (/ D d)) h)) |
4 calls. Slowest were:
| 19.0ms | (* (- 1 (/ (* (/ M 2) (/ D d)) (/ (* l 2) (* (* (/ M 2) (/ D d)) h)))) (* (sqrt (/ d l)) (sqrt (/ d h)))) |
| 11.0ms | (/ (* l 2) (* (* (/ M 2) (/ D d)) h)) |
| 0.0ms | (sqrt (/ d l)) |
4 calls. Slowest were:
| 194.0ms | (* (- 1 (/ (* (/ M 2) (/ D d)) (/ (* l 2) (* (* (/ M 2) (/ D d)) h)))) (* (sqrt (/ d l)) (sqrt (/ d h)))) |
| 53.0ms | (/ (* l 2) (* (* (/ M 2) (/ D d)) h)) |
| 25.0ms | (sqrt (/ d h)) |
| 23.0ms | (sqrt (/ d l)) |
55 calls. Slowest were:
| 687.0ms | (* (+ (* 1 1) (+ (* (/ (* (/ M 2) (/ D d)) (/ (* l 2) (* (* (/ M 2) (/ D d)) h))) (/ (* (/ M 2) (/ D d)) (/ (* l 2) (* (* (/ M 2) (/ D d)) h)))) (* 1 (/ (* (/ M 2) (/ D d)) (/ (* l 2) (* (* (/ M 2) (/ D d)) h)))))) (* (sqrt l) (sqrt h))) |
| 667.0ms | (* (+ (* 1 1) (+ (* (/ (* (/ M 2) (/ D d)) (/ (* l 2) (* (* (/ M 2) (/ D d)) h))) (/ (* (/ M 2) (/ D d)) (/ (* l 2) (* (* (/ M 2) (/ D d)) h)))) (* 1 (/ (* (/ M 2) (/ D d)) (/ (* l 2) (* (* (/ M 2) (/ D d)) h)))))) (sqrt l)) |
| 646.0ms | (* (+ (* 1 1) (+ (* (/ (* (/ M 2) (/ D d)) (/ (* l 2) (* (* (/ M 2) (/ D d)) h))) (/ (* (/ M 2) (/ D d)) (/ (* l 2) (* (* (/ M 2) (/ D d)) h)))) (* 1 (/ (* (/ M 2) (/ D d)) (/ (* l 2) (* (* (/ M 2) (/ D d)) h)))))) (sqrt h)) |
21 alts after pruning (21 fresh and 0 done)
Merged error: 8.1b
60.6% (6.0b remaining)
Error of 14.1b against oracle of 8.0b and baseline of 23.3b