


Bits error versus v



Bits error versus w



Bits error versus r
Initial program 12.1
Simplified0.4
rmApplied associate-/r*0.4
rmApplied add-sqr-sqrt0.4
rmApplied add-cbrt-cube0.5
Final simplification0.5
herbie shell --seed 2019002 +o rules:numerics
(FPCore (v w r)
:name "Rosa's TurbineBenchmark"
(- (- (+ 3 (/ 2 (* r r))) (/ (* (* 0.125 (- 3 (* 2 v))) (* (* (* w w) r) r)) (- 1 v))) 4.5))
Time bar (total: 50.0s)Debug log
1 calls. Slowest were:
| 142.0ms | (- (- (+ 3 (/ 2 (* r r))) (/ (* (* 0.125 (- 3 (* 2 v))) (* (* (* w w) r) r)) (- 1 v))) 4.5) |
2 alts after pruning (2 fresh and 0 done)
Merged error: 0.2b
Found 4 expressions with local error:
| 0.5b | (/ 2 (* r r)) |
| 0.4b | (* (* w r) (* w r)) |
| 0.2b | (/ (fma -2 v 3) (/ (- 1 v) 0.125)) |
| 0.1b | (fma (/ (fma -2 v 3) (/ (- 1 v) 0.125)) (* (* w r) (* w r)) 4.5) |
4 calls. Slowest were:
| 7.0ms | (/ (fma -2 v 3) (/ (- 1 v) 0.125)) |
| 7.0ms | (* (* w r) (* w r)) |
| 3.0ms | (/ 2 (* r r)) |
4 calls. Slowest were:
| 72.0ms | (fma (/ (fma -2 v 3) (/ (- 1 v) 0.125)) (* (* w r) (* w r)) 4.5) |
| 29.0ms | (/ 2 (* r r)) |
| 28.0ms | (/ (fma -2 v 3) (/ (- 1 v) 0.125)) |
| 27.0ms | (* (* w r) (* w r)) |
50 calls. Slowest were:
| 718.0ms | (/ (* (* (fma -2 v 3) (fma -2 v 3)) (fma -2 v 3)) (* (* (/ (- 1 v) 0.125) (/ (- 1 v) 0.125)) (/ (- 1 v) 0.125))) |
| 658.0ms | (- 0.25 (+ (* 0.125 (/ 1 v)) (* 0.125 (/ 1 (pow v 2))))) |
| 633.0ms | (* (* (* (* w r) (* w r)) (* w r)) (* (* (* w r) (* w r)) (* w r))) |
11 alts after pruning (11 fresh and 0 done)
Merged error: 0.0b
Found 4 expressions with local error:
| 0.4b | (* (* w r) (* w r)) |
| 0.2b | (/ (fma -2 v 3) (/ (- 1 v) 0.125)) |
| 0.2b | (/ (/ 2 r) r) |
| 0.1b | (fma (/ (fma -2 v 3) (/ (- 1 v) 0.125)) (* (* w r) (* w r)) 4.5) |
4 calls. Slowest were:
| 8.0ms | (/ (fma -2 v 3) (/ (- 1 v) 0.125)) |
| 7.0ms | (* (* w r) (* w r)) |
| 5.0ms | (/ (/ 2 r) r) |
4 calls. Slowest were:
| 68.0ms | (fma (/ (fma -2 v 3) (/ (- 1 v) 0.125)) (* (* w r) (* w r)) 4.5) |
| 28.0ms | (* (* w r) (* w r)) |
| 27.0ms | (/ (fma -2 v 3) (/ (- 1 v) 0.125)) |
| 19.0ms | (/ (/ 2 r) r) |
52 calls. Slowest were:
| 771.0ms | (* (* (* (* w r) (* w r)) (* w r)) (* (* (* w r) (* w r)) (* w r))) |
| 748.0ms | (/ (* (* (fma -2 v 3) (fma -2 v 3)) (fma -2 v 3)) (* (* (/ (- 1 v) 0.125) (/ (- 1 v) 0.125)) (/ (- 1 v) 0.125))) |
| 643.0ms | (- 0.25 (+ (* 0.125 (/ 1 v)) (* 0.125 (/ 1 (pow v 2))))) |
11 alts after pruning (11 fresh and 0 done)
Merged error: 0.0b
Found 4 expressions with local error:
| 0.5b | (* (sqrt (/ (fma -2 v 3) (/ (- 1 v) 0.125))) (sqrt (/ (fma -2 v 3) (/ (- 1 v) 0.125)))) |
| 0.4b | (* (* w r) (* w r)) |
| 0.2b | (/ (fma -2 v 3) (/ (- 1 v) 0.125)) |
| 0.2b | (/ (fma -2 v 3) (/ (- 1 v) 0.125)) |
4 calls. Slowest were:
| 13.0ms | (* (sqrt (/ (fma -2 v 3) (/ (- 1 v) 0.125))) (sqrt (/ (fma -2 v 3) (/ (- 1 v) 0.125)))) |
| 8.0ms | (/ (fma -2 v 3) (/ (- 1 v) 0.125)) |
| 7.0ms | (* (* w r) (* w r)) |
4 calls. Slowest were:
| 62.0ms | (* (sqrt (/ (fma -2 v 3) (/ (- 1 v) 0.125))) (sqrt (/ (fma -2 v 3) (/ (- 1 v) 0.125)))) |
| 21.0ms | (* (* w r) (* w r)) |
| 21.0ms | (/ (fma -2 v 3) (/ (- 1 v) 0.125)) |
| 16.0ms | (/ (fma -2 v 3) (/ (- 1 v) 0.125)) |
137 calls. Slowest were:
| 957.0ms | (- 0.25 (+ (* 0.125 (/ 1 v)) (* 0.125 (/ 1 (pow v 2))))) |
| 775.0ms | (/ (* (* (fma -2 v 3) (fma -2 v 3)) (fma -2 v 3)) (* (* (/ (- 1 v) 0.125) (/ (- 1 v) 0.125)) (/ (- 1 v) 0.125))) |
| 671.0ms | (- 0.25 (+ (* 0.125 (/ 1 v)) (* 0.125 (/ 1 (pow v 2))))) |
10 alts after pruning (10 fresh and 0 done)
Merged error: 0.0b
Found 4 expressions with local error:
| 0.5b | (cbrt (* (* (/ (fma -2 v 3) (/ (- 1 v) 0.125)) (/ (fma -2 v 3) (/ (- 1 v) 0.125))) (/ (fma -2 v 3) (/ (- 1 v) 0.125)))) |
| 0.5b | (* (sqrt (/ (fma -2 v 3) (/ (- 1 v) 0.125))) (sqrt (cbrt (* (* (/ (fma -2 v 3) (/ (- 1 v) 0.125)) (/ (fma -2 v 3) (/ (- 1 v) 0.125))) (/ (fma -2 v 3) (/ (- 1 v) 0.125)))))) |
| 0.4b | (* (* w r) (* w r)) |
| 0.2b | (/ (fma -2 v 3) (/ (- 1 v) 0.125)) |
4 calls. Slowest were:
| 18.0ms | (cbrt (* (* (/ (fma -2 v 3) (/ (- 1 v) 0.125)) (/ (fma -2 v 3) (/ (- 1 v) 0.125))) (/ (fma -2 v 3) (/ (- 1 v) 0.125)))) |
| 12.0ms | (* (sqrt (/ (fma -2 v 3) (/ (- 1 v) 0.125))) (sqrt (cbrt (* (* (/ (fma -2 v 3) (/ (- 1 v) 0.125)) (/ (fma -2 v 3) (/ (- 1 v) 0.125))) (/ (fma -2 v 3) (/ (- 1 v) 0.125)))))) |
| 6.0ms | (/ (fma -2 v 3) (/ (- 1 v) 0.125)) |
4 calls. Slowest were:
| 96.0ms | (* (sqrt (/ (fma -2 v 3) (/ (- 1 v) 0.125))) (sqrt (cbrt (* (* (/ (fma -2 v 3) (/ (- 1 v) 0.125)) (/ (fma -2 v 3) (/ (- 1 v) 0.125))) (/ (fma -2 v 3) (/ (- 1 v) 0.125)))))) |
| 72.0ms | (cbrt (* (* (/ (fma -2 v 3) (/ (- 1 v) 0.125)) (/ (fma -2 v 3) (/ (- 1 v) 0.125))) (/ (fma -2 v 3) (/ (- 1 v) 0.125)))) |
| 28.0ms | (* (* w r) (* w r)) |
| 20.0ms | (/ (fma -2 v 3) (/ (- 1 v) 0.125)) |
112 calls. Slowest were:
| 724.0ms | (* (* (* (* w r) (* w r)) (* w r)) (* (* (* w r) (* w r)) (* w r))) |
| 667.0ms | (/ (* (* (fma -2 v 3) (fma -2 v 3)) (fma -2 v 3)) (* (* (/ (- 1 v) 0.125) (/ (- 1 v) 0.125)) (/ (- 1 v) 0.125))) |
| 652.0ms | (- 0.25 (+ (* 0.125 (/ 1 v)) (* 0.125 (/ 1 (pow v 2))))) |
10 alts after pruning (9 fresh and 1 done)
Merged error: 0.0b
0% (0.4b remaining)
Error of 0.5b against oracle of 0.1b and baseline of 0.5b