


Bits error versus t
Initial program 0.1
Simplified0.1
rmApplied *-un-lft-identity0.1
Applied associate-/l*0.1
Final simplification0.1
herbie shell --seed 2019005 +o rules:numerics
(FPCore (t)
:name "Kahan p13 Example 1"
(/ (+ 1 (* (/ (* 2 t) (+ 1 t)) (/ (* 2 t) (+ 1 t)))) (+ 2 (* (/ (* 2 t) (+ 1 t)) (/ (* 2 t) (+ 1 t))))))
Time bar (total: 43.3s)Debug log
1 calls. Slowest were:
| 518.0ms | (/ (+ 1 (* (/ (* 2 t) (+ 1 t)) (/ (* 2 t) (+ 1 t)))) (+ 2 (* (/ (* 2 t) (+ 1 t)) (/ (* 2 t) (+ 1 t))))) |
1 alts after pruning (1 fresh and 0 done)
Merged error: 0.0b
Found 4 expressions with local error:
| 0.0b | (/ (fma (/ (* t 2) (+ 1 t)) (/ (* t 2) (+ 1 t)) 1) (fma (/ (* t 2) (+ 1 t)) (/ (* t 2) (+ 1 t)) 2)) |
| 0.0b | (/ (* t 2) (+ 1 t)) |
| 0.0b | (/ (* t 2) (+ 1 t)) |
| 0.0b | (/ (* t 2) (+ 1 t)) |
4 calls. Slowest were:
| 8.0ms | (/ (fma (/ (* t 2) (+ 1 t)) (/ (* t 2) (+ 1 t)) 1) (fma (/ (* t 2) (+ 1 t)) (/ (* t 2) (+ 1 t)) 2)) |
| 6.0ms | (/ (* t 2) (+ 1 t)) |
| 6.0ms | (/ (* t 2) (+ 1 t)) |
4 calls. Slowest were:
| 70.0ms | (/ (fma (/ (* t 2) (+ 1 t)) (/ (* t 2) (+ 1 t)) 1) (fma (/ (* t 2) (+ 1 t)) (/ (* t 2) (+ 1 t)) 2)) |
| 18.0ms | (/ (* t 2) (+ 1 t)) |
| 14.0ms | (/ (* t 2) (+ 1 t)) |
| 13.0ms | (/ (* t 2) (+ 1 t)) |
76 calls. Slowest were:
| 712.0ms | (- (+ (* 2 t) (* 2 (pow t 3))) (* 2 (pow t 2))) |
| 672.0ms | (- (+ (* 2 t) (* 2 (pow t 3))) (* 2 (pow t 2))) |
| 648.0ms | (- (+ (* 2 t) (* 2 (pow t 3))) (* 2 (pow t 2))) |
3 alts after pruning (2 fresh and 1 done)
Merged error: 0b
Found 4 expressions with local error:
| 0.0b | (/ 1 (/ (fma (/ (* t 2) (+ 1 t)) (/ (* t 2) (+ 1 t)) 2) (fma (/ (* t 2) (+ 1 t)) (/ (* t 2) (+ 1 t)) 1))) |
| 0.0b | (/ (* t 2) (+ 1 t)) |
| 0.0b | (/ (* t 2) (+ 1 t)) |
| 0.0b | (/ (* t 2) (+ 1 t)) |
4 calls. Slowest were:
| 3.0ms | (/ (* t 2) (+ 1 t)) |
| 3.0ms | (/ (* t 2) (+ 1 t)) |
| 3.0ms | (/ (* t 2) (+ 1 t)) |
4 calls. Slowest were:
| 72.0ms | (/ 1 (/ (fma (/ (* t 2) (+ 1 t)) (/ (* t 2) (+ 1 t)) 2) (fma (/ (* t 2) (+ 1 t)) (/ (* t 2) (+ 1 t)) 1))) |
| 18.0ms | (/ (* t 2) (+ 1 t)) |
| 11.0ms | (/ (* t 2) (+ 1 t)) |
| 11.0ms | (/ (* t 2) (+ 1 t)) |
66 calls. Slowest were:
| 749.0ms | (- (+ (* 2 t) (* 2 (pow t 3))) (* 2 (pow t 2))) |
| 728.0ms | (- (+ (* 2 t) (* 2 (pow t 3))) (* 2 (pow t 2))) |
| 632.0ms | (- (+ (* 2 t) (* 2 (pow t 3))) (* 2 (pow t 2))) |
3 alts after pruning (1 fresh and 2 done)
Merged error: 0b
Found 4 expressions with local error:
| 0.0b | (/ (fma (/ (* t 2) (+ 1 t)) (/ (* t 2) (+ 1 t)) 2) (sqrt (fma (/ (* t 2) (+ 1 t)) (/ (* t 2) (+ 1 t)) 1))) |
| 0.0b | (sqrt (fma (/ (* t 2) (+ 1 t)) (/ (* t 2) (+ 1 t)) 1)) |
| 0.0b | (hypot 1 (/ (* t 2) (+ 1 t))) |
| 0.0b | (/ (* t 2) (+ 1 t)) |
4 calls. Slowest were:
| 4.0ms | (/ (fma (/ (* t 2) (+ 1 t)) (/ (* t 2) (+ 1 t)) 2) (sqrt (fma (/ (* t 2) (+ 1 t)) (/ (* t 2) (+ 1 t)) 1))) |
| 3.0ms | (/ (* t 2) (+ 1 t)) |
| 1.0ms | (sqrt (fma (/ (* t 2) (+ 1 t)) (/ (* t 2) (+ 1 t)) 1)) |
4 calls. Slowest were:
| 95.0ms | (/ (fma (/ (* t 2) (+ 1 t)) (/ (* t 2) (+ 1 t)) 2) (sqrt (fma (/ (* t 2) (+ 1 t)) (/ (* t 2) (+ 1 t)) 1))) |
| 55.0ms | (sqrt (fma (/ (* t 2) (+ 1 t)) (/ (* t 2) (+ 1 t)) 1)) |
| 46.0ms | (hypot 1 (/ (* t 2) (+ 1 t))) |
| 17.0ms | (/ (* t 2) (+ 1 t)) |
75 calls. Slowest were:
| 695.0ms | (/ (sqrt (fma (/ (* t 2) (+ 1 t)) (/ (* t 2) (+ 1 t)) 2)) (sqrt (* (cbrt (fma (/ (* t 2) (+ 1 t)) (/ (* t 2) (+ 1 t)) 1)) (cbrt (fma (/ (* t 2) (+ 1 t)) (/ (* t 2) (+ 1 t)) 1))))) |
| 654.0ms | (- (+ (* 2 t) (* 2 (pow t 3))) (* 2 (pow t 2))) |
| 420.0ms | (/ (sqrt (fma (/ (* t 2) (+ 1 t)) (/ (* t 2) (+ 1 t)) 2)) (cbrt (sqrt (fma (/ (* t 2) (+ 1 t)) (/ (* t 2) (+ 1 t)) 1)))) |
3 alts after pruning (0 fresh and 3 done)
Merged error: 0b
0% (0.0b remaining)
Error of 0.1b against oracle of 0.1b and baseline of 0.1b