


Bits error versus alpha



Bits error versus beta



Bits error versus i
Results
if beta < 2.2746411478782843e+152Initial program 51.0
rmApplied associate-/l*35.3
rmApplied add-sqr-sqrt35.3
if 2.2746411478782843e+152 < beta Initial program 62.5
rmApplied associate-/l*57.1
rmApplied add-sqr-sqrt57.1
Taylor expanded around inf 49.7
Final simplification37.8
herbie shell --seed 2019008 +o rules:numerics
(FPCore (alpha beta i)
:name "Octave 3.8, jcobi/4"
:pre (and (> alpha -1) (> beta -1) (> i 1))
(/ (/ (* (* i (+ (+ alpha beta) i)) (+ (* beta alpha) (* i (+ (+ alpha beta) i)))) (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i)))) (- (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i))) 1.0)))
Time bar (total: 2.7m)Debug log
1 calls. Slowest were:
| 256.0ms | (/ (/ (* (* i (+ (+ alpha beta) i)) (+ (* beta alpha) (* i (+ (+ alpha beta) i)))) (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i)))) (- (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i))) 1.0)) |
1 alts after pruning (1 fresh and 0 done)
Merged error: 53.5b
Found 4 expressions with local error:
| 46.9b | (/ (* (* i (+ (+ alpha beta) i)) (+ (* beta alpha) (* i (+ (+ alpha beta) i)))) (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i)))) |
| 36.4b | (/ (/ (* (* i (+ (+ alpha beta) i)) (+ (* beta alpha) (* i (+ (+ alpha beta) i)))) (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i)))) (- (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i))) 1.0)) |
| 0.1b | (* (* i (+ (+ alpha beta) i)) (+ (* beta alpha) (* i (+ (+ alpha beta) i)))) |
| 0.0b | (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i))) |
4 calls. Slowest were:
| 46.0ms | (/ (/ (* (* i (+ (+ alpha beta) i)) (+ (* beta alpha) (* i (+ (+ alpha beta) i)))) (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i)))) (- (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i))) 1.0)) |
| 45.0ms | (/ (* (* i (+ (+ alpha beta) i)) (+ (* beta alpha) (* i (+ (+ alpha beta) i)))) (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i)))) |
| 22.0ms | (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i))) |
4 calls. Slowest were:
| 718.0ms | (/ (/ (* (* i (+ (+ alpha beta) i)) (+ (* beta alpha) (* i (+ (+ alpha beta) i)))) (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i)))) (- (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i))) 1.0)) |
| 180.0ms | (/ (* (* i (+ (+ alpha beta) i)) (+ (* beta alpha) (* i (+ (+ alpha beta) i)))) (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i)))) |
| 94.0ms | (* (* i (+ (+ alpha beta) i)) (+ (* beta alpha) (* i (+ (+ alpha beta) i)))) |
| 53.0ms | (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i))) |
191 calls. Slowest were:
| 885.0ms | (* (- (* (+ alpha beta) (+ alpha beta)) (* (* 2 i) (* 2 i))) (- (* (+ alpha beta) (+ alpha beta)) (* (* 2 i) (* 2 i)))) |
| 832.0ms | (* (* i (+ (+ alpha beta) i)) (* i (+ (+ alpha beta) i))) |
| 814.0ms | (/ (/ (* (* i (+ (+ alpha beta) i)) (+ (* beta alpha) (* i (+ (+ alpha beta) i)))) (* (- (* (+ alpha beta) (+ alpha beta)) (* (* 2 i) (* 2 i))) (+ (+ alpha beta) (* 2 i)))) 1) |
5 alts after pruning (5 fresh and 0 done)
Merged error: 36.3b
Found 4 expressions with local error:
| 40.0b | (/ (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i))) (+ (* beta alpha) (* i (+ (+ alpha beta) i)))) |
| 36.4b | (/ (/ (* i (+ (+ alpha beta) i)) (/ (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i))) (+ (* beta alpha) (* i (+ (+ alpha beta) i))))) (- (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i))) 1.0)) |
| 3.6b | (/ (* i (+ (+ alpha beta) i)) (/ (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i))) (+ (* beta alpha) (* i (+ (+ alpha beta) i))))) |
| 0.0b | (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i))) |
4 calls. Slowest were:
| 43.0ms | (/ (/ (* i (+ (+ alpha beta) i)) (/ (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i))) (+ (* beta alpha) (* i (+ (+ alpha beta) i))))) (- (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i))) 1.0)) |
| 16.0ms | (/ (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i))) (+ (* beta alpha) (* i (+ (+ alpha beta) i)))) |
| 12.0ms | (/ (* i (+ (+ alpha beta) i)) (/ (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i))) (+ (* beta alpha) (* i (+ (+ alpha beta) i))))) |
4 calls. Slowest were:
| 720.0ms | (/ (/ (* i (+ (+ alpha beta) i)) (/ (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i))) (+ (* beta alpha) (* i (+ (+ alpha beta) i))))) (- (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i))) 1.0)) |
| 167.0ms | (/ (* i (+ (+ alpha beta) i)) (/ (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i))) (+ (* beta alpha) (* i (+ (+ alpha beta) i))))) |
| 110.0ms | (/ (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i))) (+ (* beta alpha) (* i (+ (+ alpha beta) i)))) |
| 47.0ms | (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i))) |
208 calls. Slowest were:
| 1.4s | (/ (/ i (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i)))) 1) |
| 900.0ms | (* (+ (+ alpha beta) (* 2 i)) (- (* (+ alpha beta) (+ alpha beta)) (* (* 2 i) (* 2 i)))) |
| 888.0ms | (* (- (* (+ alpha beta) (+ alpha beta)) (* (* 2 i) (* 2 i))) (- (* (+ alpha beta) (+ alpha beta)) (* (* 2 i) (* 2 i)))) |
5 alts after pruning (5 fresh and 0 done)
Merged error: 36.3b
Found 4 expressions with local error:
| 40.0b | (/ (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i))) (+ (* beta alpha) (* i (+ (+ alpha beta) i)))) |
| 40.0b | (/ (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i))) (+ (* beta alpha) (* i (+ (+ alpha beta) i)))) |
| 36.4b | (/ (* (sqrt (/ (* i (+ (+ alpha beta) i)) (/ (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i))) (+ (* beta alpha) (* i (+ (+ alpha beta) i)))))) (sqrt (/ (* i (+ (+ alpha beta) i)) (/ (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i))) (+ (* beta alpha) (* i (+ (+ alpha beta) i))))))) (- (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i))) 1.0)) |
| 30.5b | (sqrt (/ (* i (+ (+ alpha beta) i)) (/ (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i))) (+ (* beta alpha) (* i (+ (+ alpha beta) i)))))) |
4 calls. Slowest were:
| 30.0ms | (/ (* (sqrt (/ (* i (+ (+ alpha beta) i)) (/ (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i))) (+ (* beta alpha) (* i (+ (+ alpha beta) i)))))) (sqrt (/ (* i (+ (+ alpha beta) i)) (/ (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i))) (+ (* beta alpha) (* i (+ (+ alpha beta) i))))))) (- (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i))) 1.0)) |
| 21.0ms | (/ (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i))) (+ (* beta alpha) (* i (+ (+ alpha beta) i)))) |
| 17.0ms | (/ (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i))) (+ (* beta alpha) (* i (+ (+ alpha beta) i)))) |
4 calls. Slowest were:
| 863.0ms | (/ (* (sqrt (/ (* i (+ (+ alpha beta) i)) (/ (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i))) (+ (* beta alpha) (* i (+ (+ alpha beta) i)))))) (sqrt (/ (* i (+ (+ alpha beta) i)) (/ (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i))) (+ (* beta alpha) (* i (+ (+ alpha beta) i))))))) (- (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i))) 1.0)) |
| 139.0ms | (sqrt (/ (* i (+ (+ alpha beta) i)) (/ (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i))) (+ (* beta alpha) (* i (+ (+ alpha beta) i)))))) |
| 124.0ms | (/ (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i))) (+ (* beta alpha) (* i (+ (+ alpha beta) i)))) |
| 119.0ms | (/ (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i))) (+ (* beta alpha) (* i (+ (+ alpha beta) i)))) |
95 calls. Slowest were:
| 931.0ms | (* (+ (+ alpha beta) (* 2 i)) (- (* (+ alpha beta) (+ alpha beta)) (* (* 2 i) (* 2 i)))) |
| 911.0ms | (* (- (* (+ alpha beta) (+ alpha beta)) (* (* 2 i) (* 2 i))) (- (* (+ alpha beta) (+ alpha beta)) (* (* 2 i) (* 2 i)))) |
| 895.0ms | (* (+ (+ alpha beta) (* 2 i)) (- (* (+ alpha beta) (+ alpha beta)) (* (* 2 i) (* 2 i)))) |
5 alts after pruning (4 fresh and 1 done)
Merged error: 36.3b
Found 4 expressions with local error:
| 40.0b | (/ (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i))) (+ (* beta alpha) (* i (+ (+ alpha beta) i)))) |
| 40.0b | (/ (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i))) (+ (* beta alpha) (* i (+ (+ alpha beta) i)))) |
| 36.4b | (/ (/ (* i (+ (+ alpha beta) i)) (* (sqrt (/ (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i))) (+ (* beta alpha) (* i (+ (+ alpha beta) i))))) (sqrt (/ (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i))) (+ (* beta alpha) (* i (+ (+ alpha beta) i))))))) (- (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i))) 1.0)) |
| 3.6b | (/ (* i (+ (+ alpha beta) i)) (* (sqrt (/ (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i))) (+ (* beta alpha) (* i (+ (+ alpha beta) i))))) (sqrt (/ (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i))) (+ (* beta alpha) (* i (+ (+ alpha beta) i))))))) |
4 calls. Slowest were:
| 51.0ms | (/ (/ (* i (+ (+ alpha beta) i)) (* (sqrt (/ (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i))) (+ (* beta alpha) (* i (+ (+ alpha beta) i))))) (sqrt (/ (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i))) (+ (* beta alpha) (* i (+ (+ alpha beta) i))))))) (- (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i))) 1.0)) |
| 30.0ms | (/ (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i))) (+ (* beta alpha) (* i (+ (+ alpha beta) i)))) |
| 28.0ms | (/ (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i))) (+ (* beta alpha) (* i (+ (+ alpha beta) i)))) |
4 calls. Slowest were:
| 799.0ms | (/ (/ (* i (+ (+ alpha beta) i)) (* (sqrt (/ (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i))) (+ (* beta alpha) (* i (+ (+ alpha beta) i))))) (sqrt (/ (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i))) (+ (* beta alpha) (* i (+ (+ alpha beta) i))))))) (- (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i))) 1.0)) |
| 195.0ms | (/ (* i (+ (+ alpha beta) i)) (* (sqrt (/ (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i))) (+ (* beta alpha) (* i (+ (+ alpha beta) i))))) (sqrt (/ (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i))) (+ (* beta alpha) (* i (+ (+ alpha beta) i))))))) |
| 149.0ms | (/ (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i))) (+ (* beta alpha) (* i (+ (+ alpha beta) i)))) |
| 149.0ms | (/ (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i))) (+ (* beta alpha) (* i (+ (+ alpha beta) i)))) |
139 calls. Slowest were:
| 1.4s | (* (+ (+ alpha beta) (* 2 i)) (- (* (+ alpha beta) (+ alpha beta)) (* (* 2 i) (* 2 i)))) |
| 1.0s | (/ (sqrt (+ (* beta alpha) (* i (+ (+ alpha beta) i)))) (sqrt (- (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i))) 1.0))) |
| 1.0s | (* (+ (+ alpha beta) (* 2 i)) (- (* (+ alpha beta) (+ alpha beta)) (* (* 2 i) (* 2 i)))) |
5 alts after pruning (3 fresh and 2 done)
Merged error: 36.3b
48.6% (1.3b remaining)
Error of 37.8b against oracle of 36.5b and baseline of 39.0b