


Bits error versus alpha



Bits error versus beta



Bits error versus i
Initial program 23.4
Simplified12.6
rmApplied add-log-exp12.6
Final simplification12.6
herbie shell --seed 2019005 +o rules:numerics
(FPCore (alpha beta i)
:name "Octave 3.8, jcobi/2"
:pre (and (> alpha -1) (> beta -1) (> i 0))
(/ (+ (/ (/ (* (+ alpha beta) (- beta alpha)) (+ (+ alpha beta) (* 2 i))) (+ (+ (+ alpha beta) (* 2 i)) 2.0)) 1.0) 2.0))
Time bar (total: 37.7s)Debug log
1 calls. Slowest were:
| 561.0ms | (/ (+ (/ (/ (* (+ alpha beta) (- beta alpha)) (+ (+ alpha beta) (* 2 i))) (+ (+ (+ alpha beta) (* 2 i)) 2.0)) 1.0) 2.0) |
1 alts after pruning (1 fresh and 0 done)
Merged error: 14.0b
Found 3 expressions with local error:
| 2.7b | (fma (/ (- beta alpha) (+ (+ beta 2.0) (fma 2 i alpha))) (/ (+ beta alpha) (+ (fma 2 i alpha) beta)) 1.0) |
| 0.0b | (/ (- beta alpha) (+ (+ beta 2.0) (fma 2 i alpha))) |
| 0.0b | (/ (+ beta alpha) (+ (fma 2 i alpha) beta)) |
3 calls. Slowest were:
| 11.0ms | (/ (+ beta alpha) (+ (fma 2 i alpha) beta)) |
| 10.0ms | (/ (- beta alpha) (+ (+ beta 2.0) (fma 2 i alpha))) |
| 0.0ms | (fma (/ (- beta alpha) (+ (+ beta 2.0) (fma 2 i alpha))) (/ (+ beta alpha) (+ (fma 2 i alpha) beta)) 1.0) |
3 calls. Slowest were:
| 119.0ms | (fma (/ (- beta alpha) (+ (+ beta 2.0) (fma 2 i alpha))) (/ (+ beta alpha) (+ (fma 2 i alpha) beta)) 1.0) |
| 70.0ms | (/ (- beta alpha) (+ (+ beta 2.0) (fma 2 i alpha))) |
| 48.0ms | (/ (+ beta alpha) (+ (fma 2 i alpha) beta)) |
75 calls. Slowest were:
| 346.0ms | (+ (* (+ beta 2.0) (+ beta 2.0)) (- (* (fma 2 i alpha) (fma 2 i alpha)) (* (+ beta 2.0) (fma 2 i alpha)))) |
| 183.0ms | (/ (* (* (- beta alpha) (- beta alpha)) (- beta alpha)) (* (* (+ (+ beta 2.0) (fma 2 i alpha)) (+ (+ beta 2.0) (fma 2 i alpha))) (+ (+ beta 2.0) (fma 2 i alpha)))) |
| 153.0ms | (- (+ (* 4.0 (/ 1 (pow beta 2))) 2.0) (* 2.0 (/ 1 beta))) |
11 alts after pruning (11 fresh and 0 done)
Merged error: 13.7b
Found 4 expressions with local error:
| 3.9b | (fma (/ (- beta alpha) (+ (+ beta 2.0) (fma 2 i alpha))) (* (+ beta alpha) (/ 1 (+ (fma 2 i alpha) beta))) 1.0) |
| 0.2b | (* (+ beta alpha) (/ 1 (+ (fma 2 i alpha) beta))) |
| 0.0b | (/ (- beta alpha) (+ (+ beta 2.0) (fma 2 i alpha))) |
| 0.0b | (/ 1 (+ (fma 2 i alpha) beta)) |
4 calls. Slowest were:
| 6.0ms | (/ (- beta alpha) (+ (+ beta 2.0) (fma 2 i alpha))) |
| 4.0ms | (* (+ beta alpha) (/ 1 (+ (fma 2 i alpha) beta))) |
| 2.0ms | (/ 1 (+ (fma 2 i alpha) beta)) |
4 calls. Slowest were:
| 131.0ms | (fma (/ (- beta alpha) (+ (+ beta 2.0) (fma 2 i alpha))) (* (+ beta alpha) (/ 1 (+ (fma 2 i alpha) beta))) 1.0) |
| 70.0ms | (/ (- beta alpha) (+ (+ beta 2.0) (fma 2 i alpha))) |
| 55.0ms | (* (+ beta alpha) (/ 1 (+ (fma 2 i alpha) beta))) |
| 45.0ms | (/ 1 (+ (fma 2 i alpha) beta)) |
75 calls. Slowest were:
| 554.0ms | (* (- (* beta beta) (* alpha alpha)) (/ 1 (+ (fma 2 i alpha) beta))) |
| 377.0ms | (+ (* (+ beta 2.0) (+ beta 2.0)) (- (* (fma 2 i alpha) (fma 2 i alpha)) (* (+ beta 2.0) (fma 2 i alpha)))) |
| 241.0ms | (* (+ (* beta beta) (- (* alpha alpha) (* beta alpha))) (+ (fma 2 i alpha) beta)) |
12 alts after pruning (12 fresh and 0 done)
Merged error: 13.7b
Found 4 expressions with local error:
| 3.9b | (+ (* (/ (- beta alpha) (+ (+ beta 2.0) (fma 2 i alpha))) (* (+ beta alpha) (/ 1 (+ (fma 2 i alpha) beta)))) 1.0) |
| 0.2b | (* (+ beta alpha) (/ 1 (+ (fma 2 i alpha) beta))) |
| 0.1b | (* (/ (- beta alpha) (+ (+ beta 2.0) (fma 2 i alpha))) (* (+ beta alpha) (/ 1 (+ (fma 2 i alpha) beta)))) |
| 0.0b | (/ (- beta alpha) (+ (+ beta 2.0) (fma 2 i alpha))) |
4 calls. Slowest were:
| 17.0ms | (+ (* (/ (- beta alpha) (+ (+ beta 2.0) (fma 2 i alpha))) (* (+ beta alpha) (/ 1 (+ (fma 2 i alpha) beta)))) 1.0) |
| 16.0ms | (* (/ (- beta alpha) (+ (+ beta 2.0) (fma 2 i alpha))) (* (+ beta alpha) (/ 1 (+ (fma 2 i alpha) beta)))) |
| 9.0ms | (/ (- beta alpha) (+ (+ beta 2.0) (fma 2 i alpha))) |
4 calls. Slowest were:
| 170.0ms | (* (/ (- beta alpha) (+ (+ beta 2.0) (fma 2 i alpha))) (* (+ beta alpha) (/ 1 (+ (fma 2 i alpha) beta)))) |
| 149.0ms | (+ (* (/ (- beta alpha) (+ (+ beta 2.0) (fma 2 i alpha))) (* (+ beta alpha) (/ 1 (+ (fma 2 i alpha) beta)))) 1.0) |
| 55.0ms | (* (+ beta alpha) (/ 1 (+ (fma 2 i alpha) beta))) |
| 50.0ms | (/ (- beta alpha) (+ (+ beta 2.0) (fma 2 i alpha))) |
119 calls. Slowest were:
| 788.0ms | (* (- (* beta beta) (* alpha alpha)) (/ 1 (+ (fma 2 i alpha) beta))) |
| 723.0ms | (+ (- (log (- beta alpha)) (log (+ (+ beta 2.0) (fma 2 i alpha)))) (+ (log (+ beta alpha)) (log (/ 1 (+ (fma 2 i alpha) beta))))) |
| 717.0ms | (* (- beta alpha) (* (+ (pow beta 3) (pow alpha 3)) 1)) |
11 alts after pruning (11 fresh and 0 done)
Merged error: 13.7b
Found 4 expressions with local error:
| 2.7b | (fma (/ (- beta alpha) (+ (+ beta 2.0) (fma 2 i alpha))) (/ (+ beta alpha) (+ (fma 2 i alpha) beta)) 1.0) |
| 2.7b | (log (exp (fma (/ (- beta alpha) (+ (+ beta 2.0) (fma 2 i alpha))) (/ (+ beta alpha) (+ (fma 2 i alpha) beta)) 1.0))) |
| 0.0b | (/ (- beta alpha) (+ (+ beta 2.0) (fma 2 i alpha))) |
| 0.0b | (exp (fma (/ (- beta alpha) (+ (+ beta 2.0) (fma 2 i alpha))) (/ (+ beta alpha) (+ (fma 2 i alpha) beta)) 1.0)) |
4 calls. Slowest were:
| 6.0ms | (/ (- beta alpha) (+ (+ beta 2.0) (fma 2 i alpha))) |
| 2.0ms | (log (exp (fma (/ (- beta alpha) (+ (+ beta 2.0) (fma 2 i alpha))) (/ (+ beta alpha) (+ (fma 2 i alpha) beta)) 1.0))) |
| 1.0ms | (exp (fma (/ (- beta alpha) (+ (+ beta 2.0) (fma 2 i alpha))) (/ (+ beta alpha) (+ (fma 2 i alpha) beta)) 1.0)) |
4 calls. Slowest were:
| 180.0ms | (exp (fma (/ (- beta alpha) (+ (+ beta 2.0) (fma 2 i alpha))) (/ (+ beta alpha) (+ (fma 2 i alpha) beta)) 1.0)) |
| 123.0ms | (fma (/ (- beta alpha) (+ (+ beta 2.0) (fma 2 i alpha))) (/ (+ beta alpha) (+ (fma 2 i alpha) beta)) 1.0) |
| 122.0ms | (log (exp (fma (/ (- beta alpha) (+ (+ beta 2.0) (fma 2 i alpha))) (/ (+ beta alpha) (+ (fma 2 i alpha) beta)) 1.0))) |
| 52.0ms | (/ (- beta alpha) (+ (+ beta 2.0) (fma 2 i alpha))) |
62 calls. Slowest were:
| 379.0ms | (+ (* (+ beta 2.0) (+ beta 2.0)) (- (* (fma 2 i alpha) (fma 2 i alpha)) (* (+ beta 2.0) (fma 2 i alpha)))) |
| 212.0ms | (/ (* (* (- beta alpha) (- beta alpha)) (- beta alpha)) (* (* (+ (+ beta 2.0) (fma 2 i alpha)) (+ (+ beta 2.0) (fma 2 i alpha))) (+ (+ beta 2.0) (fma 2 i alpha)))) |
| 205.0ms | (- (+ (* 4.0 (/ 1 (pow beta 2))) 2.0) (* 2.0 (/ 1 beta))) |
13 alts after pruning (12 fresh and 1 done)
Merged error: 13.7b
0% (0.3b remaining)
Error of 12.6b against oracle of 12.3b and baseline of 12.6b