


Bits error versus c0



Bits error versus w



Bits error versus h



Bits error versus D



Bits error versus d



Bits error versus M
Results
if (* (/ c0 (* 2 w)) (+ (/ (* c0 (* d d)) (* (* w h) (* D D))) (sqrt (- (* (/ (* c0 (* d d)) (* (* w h) (* D D))) (/ (* c0 (* d d)) (* (* w h) (* D D)))) (* M M))))) < 2.270832920407147e+287Initial program 33.8
if 2.270832920407147e+287 < (* (/ c0 (* 2 w)) (+ (/ (* c0 (* d d)) (* (* w h) (* D D))) (sqrt (- (* (/ (* c0 (* d d)) (* (* w h) (* D D))) (/ (* c0 (* d d)) (* (* w h) (* D D)))) (* M M))))) Initial program 62.7
Initial simplification57.8
Taylor expanded around inf 31.4
Final simplification31.8
herbie shell --seed 2018360 +o rules:numerics
(FPCore (c0 w h D d M)
:name "Henrywood and Agarwal, Equation (13)"
(* (/ c0 (* 2 w)) (+ (/ (* c0 (* d d)) (* (* w h) (* D D))) (sqrt (- (* (/ (* c0 (* d d)) (* (* w h) (* D D))) (/ (* c0 (* d d)) (* (* w h) (* D D)))) (* M M))))))
Time bar (total: 35.2s)Debug log
2 alts after pruning (2 fresh and 0 done)
Merged error: 53.9b
Found 4 expressions with local error:
| 46.2b | (fma (/ c0 (* w 2)) (sqrt (fma (* (* (/ d D) (/ d D)) (/ (/ c0 h) w)) (* (* (/ d D) (/ d D)) (/ (/ c0 h) w)) (* M (- M)))) (* (/ c0 (* w 2)) (* (* (/ d D) (/ d D)) (/ (/ c0 h) w)))) |
| 15.4b | (sqrt (fma (* (* (/ d D) (/ d D)) (/ (/ c0 h) w)) (* (* (/ d D) (/ d D)) (/ (/ c0 h) w)) (* M (- M)))) |
| 15.0b | (* (* (/ d D) (/ d D)) (/ (/ c0 h) w)) |
| 15.0b | (* (* (/ d D) (/ d D)) (/ (/ c0 h) w)) |
4 calls. Slowest were:
| 15.0ms | (* (* (/ d D) (/ d D)) (/ (/ c0 h) w)) |
| 9.0ms | (* (* (/ d D) (/ d D)) (/ (/ c0 h) w)) |
| 1.0ms | (sqrt (fma (* (* (/ d D) (/ d D)) (/ (/ c0 h) w)) (* (* (/ d D) (/ d D)) (/ (/ c0 h) w)) (* M (- M)))) |
4 calls. Slowest were:
| 381.0ms | (fma (/ c0 (* w 2)) (sqrt (fma (* (* (/ d D) (/ d D)) (/ (/ c0 h) w)) (* (* (/ d D) (/ d D)) (/ (/ c0 h) w)) (* M (- M)))) (* (/ c0 (* w 2)) (* (* (/ d D) (/ d D)) (/ (/ c0 h) w)))) |
| 270.0ms | (sqrt (fma (* (* (/ d D) (/ d D)) (/ (/ c0 h) w)) (* (* (/ d D) (/ d D)) (/ (/ c0 h) w)) (* M (- M)))) |
| 56.0ms | (* (* (/ d D) (/ d D)) (/ (/ c0 h) w)) |
| 45.0ms | (* (* (/ d D) (/ d D)) (/ (/ c0 h) w)) |
56 calls. Slowest were:
| 614.0ms | (sqrt (fma (* (* (/ d D) (/ d D)) (/ (/ c0 h) w)) (* (* (/ d D) (/ d D)) (/ (/ c0 h) w)) (* M (- M)))) |
| 573.0ms | (sqrt (sqrt (fma (* (* (/ d D) (/ d D)) (/ (/ c0 h) w)) (* (* (/ d D) (/ d D)) (/ (/ c0 h) w)) (* M (- M))))) |
| 529.0ms | (sqrt (* (cbrt (fma (* (* (/ d D) (/ d D)) (/ (/ c0 h) w)) (* (* (/ d D) (/ d D)) (/ (/ c0 h) w)) (* M (- M)))) (cbrt (fma (* (* (/ d D) (/ d D)) (/ (/ c0 h) w)) (* (* (/ d D) (/ d D)) (/ (/ c0 h) w)) (* M (- M)))))) |
12 alts after pruning (12 fresh and 0 done)
Merged error: 27.6b
Found 0 expressions with local error:
0 calls. Slowest were:
0 calls. Slowest were:
0 calls. Slowest were:
12 alts after pruning (11 fresh and 1 done)
Merged error: 27.6b
Found 4 expressions with local error:
| 45.5b | (fma (/ c0 (* w 2)) (sqrt (fma (* (* (/ d D) (/ d D)) (/ (/ c0 h) w)) (* (* (/ d D) (/ d D)) (/ (/ c0 h) w)) (* M (- M)))) (* (/ c0 (* w 2)) (* (/ d D) (* (/ d D) (/ (/ c0 h) w))))) |
| 15.4b | (sqrt (fma (* (* (/ d D) (/ d D)) (/ (/ c0 h) w)) (* (* (/ d D) (/ d D)) (/ (/ c0 h) w)) (* M (- M)))) |
| 15.0b | (* (* (/ d D) (/ d D)) (/ (/ c0 h) w)) |
| 15.0b | (* (* (/ d D) (/ d D)) (/ (/ c0 h) w)) |
4 calls. Slowest were:
| 17.0ms | (* (* (/ d D) (/ d D)) (/ (/ c0 h) w)) |
| 9.0ms | (* (* (/ d D) (/ d D)) (/ (/ c0 h) w)) |
| 1.0ms | (sqrt (fma (* (* (/ d D) (/ d D)) (/ (/ c0 h) w)) (* (* (/ d D) (/ d D)) (/ (/ c0 h) w)) (* M (- M)))) |
4 calls. Slowest were:
| 462.0ms | (fma (/ c0 (* w 2)) (sqrt (fma (* (* (/ d D) (/ d D)) (/ (/ c0 h) w)) (* (* (/ d D) (/ d D)) (/ (/ c0 h) w)) (* M (- M)))) (* (/ c0 (* w 2)) (* (/ d D) (* (/ d D) (/ (/ c0 h) w))))) |
| 244.0ms | (sqrt (fma (* (* (/ d D) (/ d D)) (/ (/ c0 h) w)) (* (* (/ d D) (/ d D)) (/ (/ c0 h) w)) (* M (- M)))) |
| 59.0ms | (* (* (/ d D) (/ d D)) (/ (/ c0 h) w)) |
| 46.0ms | (* (* (/ d D) (/ d D)) (/ (/ c0 h) w)) |
56 calls. Slowest were:
| 647.0ms | (sqrt (* (cbrt (fma (* (* (/ d D) (/ d D)) (/ (/ c0 h) w)) (* (* (/ d D) (/ d D)) (/ (/ c0 h) w)) (* M (- M)))) (cbrt (fma (* (* (/ d D) (/ d D)) (/ (/ c0 h) w)) (* (* (/ d D) (/ d D)) (/ (/ c0 h) w)) (* M (- M)))))) |
| 566.0ms | (sqrt (fma (* (* (/ d D) (/ d D)) (/ (/ c0 h) w)) (* (* (/ d D) (/ d D)) (/ (/ c0 h) w)) (* M (- M)))) |
| 468.0ms | (sqrt (sqrt (fma (* (* (/ d D) (/ d D)) (/ (/ c0 h) w)) (* (* (/ d D) (/ d D)) (/ (/ c0 h) w)) (* M (- M))))) |
13 alts after pruning (12 fresh and 1 done)
Merged error: 27.3b
Found 4 expressions with local error:
| 44.4b | (fma (/ c0 (* w 2)) (* (sqrt (sqrt (fma (* (* (/ d D) (/ d D)) (/ (/ c0 h) w)) (* (* (/ d D) (/ d D)) (/ (/ c0 h) w)) (* M (- M))))) (sqrt (sqrt (fma (* (* (/ d D) (/ d D)) (/ (/ c0 h) w)) (* (* (/ d D) (/ d D)) (/ (/ c0 h) w)) (* M (- M)))))) (* (/ c0 (* w 2)) (* (/ d D) (* (/ d D) (/ (/ c0 h) w))))) |
| 15.4b | (sqrt (fma (* (* (/ d D) (/ d D)) (/ (/ c0 h) w)) (* (* (/ d D) (/ d D)) (/ (/ c0 h) w)) (* M (- M)))) |
| 15.4b | (sqrt (fma (* (* (/ d D) (/ d D)) (/ (/ c0 h) w)) (* (* (/ d D) (/ d D)) (/ (/ c0 h) w)) (* M (- M)))) |
| 15.0b | (* (* (/ d D) (/ d D)) (/ (/ c0 h) w)) |
4 calls. Slowest were:
| 18.0ms | (* (* (/ d D) (/ d D)) (/ (/ c0 h) w)) |
| 2.0ms | (sqrt (fma (* (* (/ d D) (/ d D)) (/ (/ c0 h) w)) (* (* (/ d D) (/ d D)) (/ (/ c0 h) w)) (* M (- M)))) |
| 2.0ms | (sqrt (fma (* (* (/ d D) (/ d D)) (/ (/ c0 h) w)) (* (* (/ d D) (/ d D)) (/ (/ c0 h) w)) (* M (- M)))) |
4 calls. Slowest were:
| 440.0ms | (fma (/ c0 (* w 2)) (* (sqrt (sqrt (fma (* (* (/ d D) (/ d D)) (/ (/ c0 h) w)) (* (* (/ d D) (/ d D)) (/ (/ c0 h) w)) (* M (- M))))) (sqrt (sqrt (fma (* (* (/ d D) (/ d D)) (/ (/ c0 h) w)) (* (* (/ d D) (/ d D)) (/ (/ c0 h) w)) (* M (- M)))))) (* (/ c0 (* w 2)) (* (/ d D) (* (/ d D) (/ (/ c0 h) w))))) |
| 244.0ms | (sqrt (fma (* (* (/ d D) (/ d D)) (/ (/ c0 h) w)) (* (* (/ d D) (/ d D)) (/ (/ c0 h) w)) (* M (- M)))) |
| 230.0ms | (sqrt (fma (* (* (/ d D) (/ d D)) (/ (/ c0 h) w)) (* (* (/ d D) (/ d D)) (/ (/ c0 h) w)) (* M (- M)))) |
| 71.0ms | (* (* (/ d D) (/ d D)) (/ (/ c0 h) w)) |
40 calls. Slowest were:
| 952.0ms | (sqrt (* (cbrt (fma (* (* (/ d D) (/ d D)) (/ (/ c0 h) w)) (* (* (/ d D) (/ d D)) (/ (/ c0 h) w)) (* M (- M)))) (cbrt (fma (* (* (/ d D) (/ d D)) (/ (/ c0 h) w)) (* (* (/ d D) (/ d D)) (/ (/ c0 h) w)) (* M (- M)))))) |
| 606.0ms | (sqrt (sqrt (fma (* (* (/ d D) (/ d D)) (/ (/ c0 h) w)) (* (* (/ d D) (/ d D)) (/ (/ c0 h) w)) (* M (- M))))) |
| 532.0ms | (sqrt (sqrt (fma (* (* (/ d D) (/ d D)) (/ (/ c0 h) w)) (* (* (/ d D) (/ d D)) (/ (/ c0 h) w)) (* M (- M))))) |
12 alts after pruning (11 fresh and 1 done)
Merged error: 27.3b
25.6% (4.8b remaining)
Error of 31.8b against oracle of 27.0b and baseline of 33.5b