


Bits error versus d



Bits error versus h



Bits error versus l



Bits error versus M



Bits error versus D
Results
if d < -2.3072532229286938e+76Initial program 23.6
rmApplied add-sqr-sqrt23.7
Applied associate-*r*23.7
Taylor expanded around -inf 16.5
Simplified12.2
if -2.3072532229286938e+76 < d < -3.946078378106929e-292Initial program 24.7
rmApplied add-sqr-sqrt24.7
Applied associate-*r*24.7
Taylor expanded around -inf 23.5
Simplified20.4
if -3.946078378106929e-292 < d Initial program 25.8
rmApplied div-inv25.9
Applied unpow-prod-down20.6
Simplified20.6
Final simplification18.9
herbie shell --seed 2019010 +o rules:numerics
(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: 47.0s)Debug log
| 177.0ms | (* (* (pow (/ d h) (/ 1 2)) (pow (/ d l) (/ 1 2))) (- 1 (* (* (/ 1 2) (pow (/ (* M D) (* 2 d)) 2)) (/ h l)))) |
2 alts after pruning (2 fresh and 0 done)
Merged error: 25.4b
Found 4 expressions with local error:
| 14.3b | (* (* (/ 1 2) (pow (/ (* M D) (* 2 d)) 2)) (/ h l)) |
| 13.4b | (pow (/ d l) (/ 1 2)) |
| 12.5b | (pow (/ d h) (/ 1 2)) |
| 6.4b | (/ (* M D) (* 2 d)) |
| 22× | add-exp-log |
| 11× | add-cbrt-cube |
| 9× | add-cube-cbrt |
| 9× | prod-exp |
| 9× | *-un-lft-identity |
| 9× | add-sqr-sqrt |
| 8× | unpow-prod-down |
| 8× | pow-unpow |
| 8× | pow1 |
| 6× | div-inv |
| 4× | add-log-exp |
| 4× | log1p-expm1-u |
| 4× | pow-exp |
| 4× | associate-*r* |
| 4× | expm1-log1p-u |
| 3× | cbrt-unprod |
| 3× | associate-*l/ |
| 3× | pow-to-exp |
| 2× | div-exp |
| 2× | pow-pow |
| 1× | associate-/l* |
| 1× | *-commutative |
| 1× | associate-*r/ |
| 1× | pow-prod-down |
| 1× | associate-*l* |
| 1× | times-frac |
| 1× | frac-2neg |
| 1× | associate-/r* |
| 1× | clear-num |
| 1× | cbrt-undiv |
| 1× | frac-times |
| 24.0ms | (* (* (/ 1 2) (pow (/ (* M D) (* 2 d)) 2)) (/ h l)) |
| 14.0ms | (/ (* M D) (* 2 d)) |
| 3.0ms | (pow (/ d h) (/ 1 2)) |
| 3.0ms | (pow (/ d l) (/ 1 2)) |
| 88.0ms | (* (* (/ 1 2) (pow (/ (* M D) (* 2 d)) 2)) (/ h l)) |
| 79.0ms | (pow (/ d h) (/ 1 2)) |
| 65.0ms | (pow (/ d l) (/ 1 2)) |
| 16.0ms | (/ (* M D) (* 2 d)) |
| 633.0ms | (* (* 1 (pow (/ (* M D) (* 2 d)) 2)) h) |
| 436.0ms | (+ (+ (log (/ 1 2)) (log (pow (/ (* M D) (* 2 d)) 2))) (log (/ h l))) |
| 306.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))) |
| 220.0ms | (* (* (* (* (/ 1 2) (/ 1 2)) (/ 1 2)) (* (* (pow (/ (* M D) (* 2 d)) 2) (pow (/ (* M D) (* 2 d)) 2)) (pow (/ (* M D) (* 2 d)) 2))) (* (* (/ h l) (/ h l)) (/ h l))) |
| 220.0ms | (exp (* 1/2 (- (log (/ 1 l)) (log (/ 1 d))))) |
15 alts after pruning (15 fresh and 0 done)
Merged error: 13.2b
Found 4 expressions with local error:
| 13.7b | (sqrt (/ h l)) |
| 13.7b | (sqrt (/ h l)) |
| 13.4b | (pow (/ d l) (/ 1 2)) |
| 12.5b | (pow (/ d h) (/ 1 2)) |
| 12× | add-sqr-sqrt |
| 10× | add-cube-cbrt |
| 10× | *-un-lft-identity |
| 8× | sqrt-prod |
| 8× | unpow-prod-down |
| 8× | pow-unpow |
| 6× | div-inv |
| 6× | add-exp-log |
| 6× | pow1 |
| 4× | add-log-exp |
| 4× | log1p-expm1-u |
| 4× | add-cbrt-cube |
| 4× | expm1-log1p-u |
| 2× | pow-exp |
| 2× | sqrt-div |
| 2× | pow1/2 |
| 2× | pow-pow |
| 2× | rem-sqrt-square |
| 2× | pow-to-exp |
| 1.0ms | (pow (/ d l) (/ 1 2)) |
| 1.0ms | (pow (/ d h) (/ 1 2)) |
| 1.0ms | (sqrt (/ h l)) |
| 1.0ms | (sqrt (/ h l)) |
| 62.0ms | (pow (/ d l) (/ 1 2)) |
| 61.0ms | (pow (/ d h) (/ 1 2)) |
| 36.0ms | (sqrt (/ h l)) |
| 29.0ms | (sqrt (/ h l)) |
| 160.0ms | (exp (* 1/2 (- (log (/ 1 h)) (log (/ 1 d))))) |
| 150.0ms | (exp (* 1/2 (- (log (/ 1 l)) (log (/ 1 d))))) |
| 138.0ms | (exp (* 1/2 (- (log (/ -1 l)) (log (/ -1 d))))) |
| 122.0ms | (exp (* 1/2 (- (log (/ -1 h)) (log (/ -1 d))))) |
| 51.0ms | (* (log (/ d l)) (/ 1 2)) |
15 alts after pruning (15 fresh and 0 done)
Merged error: 13.2b
Found 4 expressions with local error:
| 13.7b | (sqrt (/ h l)) |
| 13.7b | (sqrt (/ h l)) |
| 13.4b | (pow (/ d l) (/ 1 2)) |
| 12.5b | (pow (/ d h) (/ 1 2)) |
| 12× | add-sqr-sqrt |
| 10× | add-cube-cbrt |
| 10× | *-un-lft-identity |
| 8× | sqrt-prod |
| 8× | unpow-prod-down |
| 8× | pow-unpow |
| 6× | div-inv |
| 6× | add-exp-log |
| 6× | pow1 |
| 4× | add-log-exp |
| 4× | log1p-expm1-u |
| 4× | add-cbrt-cube |
| 4× | expm1-log1p-u |
| 2× | pow-exp |
| 2× | sqrt-div |
| 2× | pow1/2 |
| 2× | pow-pow |
| 2× | rem-sqrt-square |
| 2× | pow-to-exp |
| 1.0ms | (pow (/ d l) (/ 1 2)) |
| 1.0ms | (pow (/ d h) (/ 1 2)) |
| 1.0ms | (sqrt (/ h l)) |
| 1.0ms | (sqrt (/ h l)) |
| 84.0ms | (pow (/ d l) (/ 1 2)) |
| 83.0ms | (pow (/ d h) (/ 1 2)) |
| 36.0ms | (sqrt (/ h l)) |
| 31.0ms | (sqrt (/ h l)) |
| 204.0ms | (exp (* 1/2 (- (log (/ 1 h)) (log (/ 1 d))))) |
| 192.0ms | (exp (* 1/2 (- (log (/ 1 l)) (log (/ 1 d))))) |
| 137.0ms | (exp (* 1/2 (- (log (/ -1 l)) (log (/ -1 d))))) |
| 125.0ms | (exp (* 1/2 (- (log (/ -1 h)) (log (/ -1 d))))) |
| 66.0ms | (* (log (/ d l)) (/ 1 2)) |
16 alts after pruning (16 fresh and 0 done)
Merged error: 13.1b
Found 4 expressions with local error:
| 13.7b | (sqrt (/ h l)) |
| 13.7b | (sqrt (/ h l)) |
| 13.4b | (pow (/ d l) (/ 1 2)) |
| 13.4b | (pow (/ d l) (/ 1 2)) |
| 12× | add-sqr-sqrt |
| 10× | add-cube-cbrt |
| 10× | *-un-lft-identity |
| 8× | sqrt-prod |
| 8× | unpow-prod-down |
| 8× | pow-unpow |
| 6× | div-inv |
| 6× | add-exp-log |
| 6× | pow1 |
| 4× | add-log-exp |
| 4× | log1p-expm1-u |
| 4× | add-cbrt-cube |
| 4× | expm1-log1p-u |
| 2× | pow-exp |
| 2× | sqrt-div |
| 2× | pow1/2 |
| 2× | pow-pow |
| 2× | rem-sqrt-square |
| 2× | pow-to-exp |
| 1.0ms | (pow (/ d l) (/ 1 2)) |
| 1.0ms | (pow (/ d l) (/ 1 2)) |
| 1.0ms | (sqrt (/ h l)) |
| 1.0ms | (sqrt (/ h l)) |
| 97.0ms | (pow (/ d l) (/ 1 2)) |
| 91.0ms | (pow (/ d l) (/ 1 2)) |
| 31.0ms | (sqrt (/ h l)) |
| 28.0ms | (sqrt (/ h l)) |
| 206.0ms | (exp (* 1/2 (- (log (/ 1 l)) (log (/ 1 d))))) |
| 172.0ms | (exp (* 1/2 (- (log (/ 1 l)) (log (/ 1 d))))) |
| 150.0ms | (exp (* 1/2 (- (log (/ -1 l)) (log (/ -1 d))))) |
| 133.0ms | (exp (* 1/2 (- (log (/ -1 l)) (log (/ -1 d))))) |
| 72.0ms | (* (log (/ d l)) (/ 1 2)) |
18 alts after pruning (17 fresh and 1 done)
Merged error: 13.1b
48% (6.8b remaining)
Error of 18.9b against oracle of 12.1b and baseline of 25.2b