


Bits error versus w0



Bits error versus M



Bits error versus D



Bits error versus h



Bits error versus l



Bits error versus d
Results
Initial program 13.4
rmApplied associate-*r/10.0
rmApplied unpow210.0
Applied associate-*l*8.6
Final simplification8.6
herbie shell --seed 2019005 +o rules:numerics
(FPCore (w0 M D h l d)
:name "Henrywood and Agarwal, Equation (9a)"
(* w0 (sqrt (- 1 (* (pow (/ (* M D) (* 2 d)) 2) (/ h l))))))
Time bar (total: 27.7s)Debug log
1 calls. Slowest were:
| 90.0ms | (* w0 (sqrt (- 1 (* (pow (/ (* M D) (* 2 d)) 2) (/ h l))))) |
1 alts after pruning (1 fresh and 0 done)
Merged error: 12.0b
Found 4 expressions with local error:
| 8.5b | (* (pow (/ (* M D) (* 2 d)) 2) (/ h l)) |
| 5.0b | (/ (* M D) (* 2 d)) |
| 5.0b | (sqrt (- 1 (* (pow (/ (* M D) (* 2 d)) 2) (/ h l)))) |
| 1.9b | (* w0 (sqrt (- 1 (* (pow (/ (* M D) (* 2 d)) 2) (/ h l))))) |
4 calls. Slowest were:
| 5.0ms | (* (pow (/ (* M D) (* 2 d)) 2) (/ h l)) |
| 5.0ms | (* w0 (sqrt (- 1 (* (pow (/ (* M D) (* 2 d)) 2) (/ h l))))) |
| 4.0ms | (/ (* M D) (* 2 d)) |
4 calls. Slowest were:
| 226.0ms | (* w0 (sqrt (- 1 (* (pow (/ (* M D) (* 2 d)) 2) (/ h l))))) |
| 134.0ms | (sqrt (- 1 (* (pow (/ (* M D) (* 2 d)) 2) (/ h l)))) |
| 88.0ms | (* (pow (/ (* M D) (* 2 d)) 2) (/ h l)) |
| 25.0ms | (/ (* M D) (* 2 d)) |
47 calls. Slowest were:
| 696.0ms | (sqrt (+ 1 (* (pow (/ (* M D) (* 2 d)) 2) (/ h l)))) |
| 434.0ms | (+ (* (- (log (* M D)) (log (* 2 d))) 2) (log (/ h l))) |
| 390.0ms | (+ (log (pow (/ (* M D) (* 2 d)) 2)) (log (/ h l))) |
8 alts after pruning (8 fresh and 0 done)
Merged error: 7.3b
Found 4 expressions with local error:
| 5.0b | (/ (* M D) (* 2 d)) |
| 5.0b | (sqrt (- 1 (/ (* (pow (/ (* M D) (* 2 d)) 2) h) l))) |
| 4.5b | (* (pow (/ (* M D) (* 2 d)) 2) h) |
| 3.0b | (/ (* (pow (/ (* M D) (* 2 d)) 2) h) l) |
4 calls. Slowest were:
| 12.0ms | (/ (* (pow (/ (* M D) (* 2 d)) 2) h) l) |
| 8.0ms | (* (pow (/ (* M D) (* 2 d)) 2) h) |
| 5.0ms | (/ (* M D) (* 2 d)) |
4 calls. Slowest were:
| 108.0ms | (sqrt (- 1 (/ (* (pow (/ (* M D) (* 2 d)) 2) h) l))) |
| 75.0ms | (/ (* (pow (/ (* M D) (* 2 d)) 2) h) l) |
| 63.0ms | (* (pow (/ (* M D) (* 2 d)) 2) h) |
| 26.0ms | (/ (* M D) (* 2 d)) |
31 calls. Slowest were:
| 1.1s | (sqrt (sqrt (- 1 (/ (* (pow (/ (* M D) (* 2 d)) 2) h) l)))) |
| 715.0ms | (sqrt (- 1 (/ (* (pow (/ (* M D) (* 2 d)) 2) h) l))) |
| 704.0ms | (sqrt (* (cbrt (- 1 (/ (* (pow (/ (* M D) (* 2 d)) 2) h) l))) (cbrt (- 1 (/ (* (pow (/ (* M D) (* 2 d)) 2) h) l))))) |
6 alts after pruning (6 fresh and 0 done)
Merged error: 7.1b
Found 4 expressions with local error:
| 6.0b | (* (/ (* M D) (* 2 d)) h) |
| 5.0b | (/ (* M D) (* 2 d)) |
| 5.0b | (/ (* M D) (* 2 d)) |
| 5.0b | (sqrt (- 1 (/ (* (/ (* M D) (* 2 d)) (* (/ (* M D) (* 2 d)) h)) l))) |
4 calls. Slowest were:
| 4.0ms | (* (/ (* M D) (* 2 d)) h) |
| 3.0ms | (/ (* M D) (* 2 d)) |
| 3.0ms | (/ (* M D) (* 2 d)) |
4 calls. Slowest were:
| 142.0ms | (sqrt (- 1 (/ (* (/ (* M D) (* 2 d)) (* (/ (* M D) (* 2 d)) h)) l))) |
| 53.0ms | (* (/ (* M D) (* 2 d)) h) |
| 28.0ms | (/ (* M D) (* 2 d)) |
| 28.0ms | (/ (* M D) (* 2 d)) |
31 calls. Slowest were:
| 277.0ms | (* 1/2 (/ (* M (* D h)) d)) |
| 251.0ms | (* 1/2 (/ (* M (* D h)) d)) |
| 246.0ms | (* 1/2 (/ (* M (* D h)) d)) |
7 alts after pruning (6 fresh and 1 done)
Merged error: 7.1b
Found 4 expressions with local error:
| 18.7b | (cbrt (/ (* M D) (* 2 d))) |
| 18.7b | (cbrt (/ (* M D) (* 2 d))) |
| 18.7b | (cbrt (/ (* M D) (* 2 d))) |
| 6.0b | (* (/ (* M D) (* 2 d)) h) |
4 calls. Slowest were:
| 12.0ms | (* (/ (* M D) (* 2 d)) h) |
| 2.0ms | (cbrt (/ (* M D) (* 2 d))) |
| 2.0ms | (cbrt (/ (* M D) (* 2 d))) |
4 calls. Slowest were:
| 151.0ms | (cbrt (/ (* M D) (* 2 d))) |
| 134.0ms | (cbrt (/ (* M D) (* 2 d))) |
| 124.0ms | (cbrt (/ (* M D) (* 2 d))) |
| 33.0ms | (* (/ (* M D) (* 2 d)) h) |
35 calls. Slowest were:
| 371.0ms | (* (cbrt 1/2) (exp (* 1/3 (- (log (/ 1 d)) (+ (log (/ 1 M)) (log (/ 1 D))))))) |
| 359.0ms | (* (cbrt 1/2) (exp (* 1/3 (- (log (/ 1 d)) (+ (log (/ 1 M)) (log (/ 1 D))))))) |
| 339.0ms | (* (cbrt 1/2) (exp (* 1/3 (- (log (/ 1 d)) (+ (log (/ 1 M)) (log (/ 1 D))))))) |
6 alts after pruning (5 fresh and 1 done)
Merged error: 7.1b
0% (0.9b remaining)
Error of 8.6b against oracle of 7.8b and baseline of 8.6b