


Bits error versus d



Bits error versus h



Bits error versus l



Bits error versus M



Bits error versus D
Results
if l < -2.93797715655923e-53Initial program 24.2
Taylor expanded around -inf 21.2
Simplified17.7
if -2.93797715655923e-53 < l < 3.15958797795084e-310Initial program 28.5
rmApplied div-inv28.5
Applied associate-*r*23.2
Taylor expanded around -inf 15.6
Simplified11.3
if 3.15958797795084e-310 < l < 1.121899884650797e-23Initial program 26.1
rmApplied div-inv26.1
Applied associate-*r*20.9
rmApplied div-inv20.9
Applied unpow-prod-down11.3
Simplified11.3
if 1.121899884650797e-23 < l Initial program 25.8
rmApplied add-sqr-sqrt25.8
Applied associate-*r*25.8
rmApplied div-inv25.8
Applied unpow-prod-down18.3
Simplified18.3
Final simplification16.0
herbie shell --seed 2019005
(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: 59.1s)Debug log
1 calls. Slowest were:
| 220.0ms | (* (* (pow (/ d h) (/ 1 2)) (pow (/ d l) (/ 1 2))) (- 1 (* (* (/ 1 2) (pow (/ (* M D) (* 2 d)) 2)) (/ h l)))) |
1 alts after pruning (1 fresh and 0 done)
Merged error: 23.8b
Found 4 expressions with local error:
| 11.7b | (pow (/ d l) (/ 1 2)) |
| 11.2b | (pow (/ d h) (/ 1 2)) |
| 10.8b | (* (* (/ 1 2) (pow (/ (* M D) (* 2 d)) 2)) (/ h l)) |
| 6.0b | (* (* (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:
| 39.0ms | (* (* (pow (/ d h) (/ 1 2)) (pow (/ d l) (/ 1 2))) (- 1 (* (* (/ 1 2) (pow (/ (* M D) (* 2 d)) 2)) (/ h l)))) |
| 23.0ms | (* (* (/ 1 2) (pow (/ (* M D) (* 2 d)) 2)) (/ h l)) |
| 3.0ms | (pow (/ d l) (/ 1 2)) |
4 calls. Slowest were:
| 248.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)) |
| 74.0ms | (pow (/ d l) (/ 1 2)) |
| 64.0ms | (pow (/ d h) (/ 1 2)) |
71 calls. Slowest were:
| 725.0ms | (* (* 1 (pow (/ (* M D) (* 2 d)) 2)) h) |
| 521.0ms | (* (* (pow (/ d h) (/ 1 2)) (pow (/ d l) (/ 1 2))) (- 1 (* (* (/ 1 2) (pow (/ (* M D) (* 2 d)) 2)) (/ h l)))) |
| 497.0ms | (+ (+ (log (/ 1 2)) (log (pow (/ (* M D) (* 2 d)) 2))) (log (/ h l))) |
21 alts after pruning (21 fresh and 0 done)
Merged error: 10.8b
Found 4 expressions with local error:
| 14.6b | (sqrt (/ h l)) |
| 14.6b | (sqrt (/ h l)) |
| 11.7b | (pow (/ d l) (/ 1 2)) |
| 11.2b | (pow (/ d h) (/ 1 2)) |
4 calls. Slowest were:
| 2.0ms | (pow (/ d l) (/ 1 2)) |
| 2.0ms | (pow (/ d h) (/ 1 2)) |
| 1.0ms | (sqrt (/ h l)) |
4 calls. Slowest were:
| 73.0ms | (pow (/ d l) (/ 1 2)) |
| 62.0ms | (pow (/ d h) (/ 1 2)) |
| 24.0ms | (sqrt (/ h l)) |
| 23.0ms | (sqrt (/ h l)) |
44 calls. Slowest were:
| 186.0ms | (exp (* 1/2 (- (log (/ 1 l)) (log (/ 1 d))))) |
| 158.0ms | (exp (* 1/2 (- (log (/ 1 h)) (log (/ 1 d))))) |
| 117.0ms | (exp (* 1/2 (- (log (/ -1 l)) (log (/ -1 d))))) |
19 alts after pruning (19 fresh and 0 done)
Merged error: 10.7b
Found 4 expressions with local error:
| 14.6b | (sqrt (/ h l)) |
| 14.6b | (sqrt (/ h l)) |
| 14.6b | (sqrt (/ h l)) |
| 14.6b | (sqrt (/ h l)) |
4 calls. Slowest were:
| 6.0ms | (sqrt (/ h l)) |
| 1.0ms | (sqrt (/ h l)) |
| 1.0ms | (sqrt (/ h l)) |
4 calls. Slowest were:
| 36.0ms | (sqrt (/ h l)) |
| 35.0ms | (sqrt (/ h l)) |
| 26.0ms | (sqrt (/ h l)) |
| 23.0ms | (sqrt (/ h l)) |
36 calls. Slowest were:
| 2.0ms | (sqrt (* (cbrt (/ h l)) (cbrt (/ h l)))) |
| 2.0ms | (sqrt (* (cbrt (/ h l)) (cbrt (/ h l)))) |
| 2.0ms | (sqrt (* (cbrt (/ h l)) (cbrt (/ h l)))) |
19 alts after pruning (18 fresh and 1 done)
Merged error: 10.7b
Found 4 expressions with local error:
| 11.7b | (pow (/ d l) (/ 1 2)) |
| 11.2b | (pow (/ d h) (/ 1 2)) |
| 6.0b | (* (* (pow (/ d h) (/ 1 2)) (pow (/ d l) (/ 1 2))) (- 1 (* (* (* (/ 1 2) (pow (/ (* M D) (* 2 d)) 2)) h) (/ 1 l)))) |
| 5.9b | (* (* (* (/ 1 2) (pow (/ (* M D) (* 2 d)) 2)) h) (/ 1 l)) |
4 calls. Slowest were:
| 47.0ms | (* (* (* (/ 1 2) (pow (/ (* M D) (* 2 d)) 2)) h) (/ 1 l)) |
| 27.0ms | (* (* (pow (/ d h) (/ 1 2)) (pow (/ d l) (/ 1 2))) (- 1 (* (* (* (/ 1 2) (pow (/ (* M D) (* 2 d)) 2)) h) (/ 1 l)))) |
| 3.0ms | (pow (/ d l) (/ 1 2)) |
4 calls. Slowest were:
| 276.0ms | (* (* (pow (/ d h) (/ 1 2)) (pow (/ d l) (/ 1 2))) (- 1 (* (* (* (/ 1 2) (pow (/ (* M D) (* 2 d)) 2)) h) (/ 1 l)))) |
| 97.0ms | (pow (/ d h) (/ 1 2)) |
| 94.0ms | (pow (/ d l) (/ 1 2)) |
| 64.0ms | (* (* (* (/ 1 2) (pow (/ (* M D) (* 2 d)) 2)) h) (/ 1 l)) |
66 calls. Slowest were:
| 617.0ms | (* (/ 1 2) (pow (/ (* M D) (* 2 d)) 2)) |
| 491.0ms | (* (* (* 1 (pow (/ (* M D) (* 2 d)) 2)) h) 1) |
| 280.0ms | (+ (+ (* (log (/ d h)) (/ 1 2)) (* (log (/ d l)) (/ 1 2))) (log (- 1 (* (* (* (/ 1 2) (pow (/ (* M D) (* 2 d)) 2)) h) (/ 1 l))))) |
20 alts after pruning (19 fresh and 1 done)
Merged error: 8.5b
57.3% (6.4b remaining)
Error of 16.0b against oracle of 9.6b and baseline of 24.6b