


Bits error versus alpha



Bits error versus beta



Bits error versus i
if i < 2.1349378046021964e+100Initial program 31.9
rmApplied times-frac13.0
Applied associate-/l*13.0
if 2.1349378046021964e+100 < i Initial program 62.1
rmApplied times-frac50.6
Applied associate-/l*50.6
rmApplied add-sqr-sqrt50.7
Applied *-un-lft-identity50.7
Applied times-frac50.7
Applied *-un-lft-identity50.7
Applied times-frac50.7
Applied add-sqr-sqrt50.8
Applied times-frac50.8
Applied times-frac50.8
Simplified50.7
Simplified50.6
Taylor expanded around -inf 13.6
Simplified12.6
rmApplied *-un-lft-identity12.6
Applied times-frac12.7
Applied associate-*r*12.1
Final simplification12.4
herbie shell --seed 2019005 +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: 5.3m)Debug log
1 calls. Slowest were:
| 174.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: 52.1b
Found 4 expressions with local error:
| 45.8b | (/ (* (* i (+ (+ alpha beta) i)) (+ (* beta alpha) (* i (+ (+ alpha beta) i)))) (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i)))) |
| 34.8b | (/ (/ (* (* 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:
| 50.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)) |
| 26.0ms | (/ (* (* i (+ (+ alpha beta) i)) (+ (* beta alpha) (* i (+ (+ alpha beta) i)))) (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i)))) |
| 13.0ms | (* (* i (+ (+ alpha beta) i)) (+ (* beta alpha) (* i (+ (+ alpha beta) i)))) |
4 calls. Slowest were:
| 644.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)) |
| 155.0ms | (/ (* (* i (+ (+ alpha beta) i)) (+ (* beta alpha) (* i (+ (+ alpha beta) i)))) (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i)))) |
| 74.0ms | (* (* i (+ (+ alpha beta) i)) (+ (* beta alpha) (* i (+ (+ alpha beta) i)))) |
| 33.0ms | (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i))) |
191 calls. Slowest were:
| 996.0ms | (/ (- (+ alpha beta) (* 2 i)) (cbrt (- (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i))) 1.0))) |
| 945.0ms | (* (* i (+ (+ alpha beta) i)) (* i (+ (+ alpha beta) i))) |
| 812.0ms | (* (- (* (+ alpha beta) (+ alpha beta)) (* (* 2 i) (* 2 i))) (- (* (+ alpha beta) (+ alpha beta)) (* (* 2 i) (* 2 i)))) |
8 alts after pruning (8 fresh and 0 done)
Merged error: 34.7b
Found 4 expressions with local error:
| 34.2b | (/ (+ (* beta alpha) (* i (+ (+ alpha beta) i))) (+ (+ alpha beta) (* 2 i))) |
| 33.7b | (/ (* i (+ (+ alpha beta) i)) (+ (+ alpha beta) (* 2 i))) |
| 28.6b | (/ (- (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i))) 1.0) (/ (+ (* beta alpha) (* i (+ (+ alpha beta) i))) (+ (+ alpha beta) (* 2 i)))) |
| 4.9b | (/ (/ (* i (+ (+ alpha beta) i)) (+ (+ alpha beta) (* 2 i))) (/ (- (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i))) 1.0) (/ (+ (* beta alpha) (* i (+ (+ alpha beta) i))) (+ (+ alpha beta) (* 2 i))))) |
4 calls. Slowest were:
| 45.0ms | (/ (/ (* i (+ (+ alpha beta) i)) (+ (+ alpha beta) (* 2 i))) (/ (- (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i))) 1.0) (/ (+ (* beta alpha) (* i (+ (+ alpha beta) i))) (+ (+ alpha beta) (* 2 i))))) |
| 31.0ms | (/ (- (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i))) 1.0) (/ (+ (* beta alpha) (* i (+ (+ alpha beta) i))) (+ (+ alpha beta) (* 2 i)))) |
| 23.0ms | (/ (+ (* beta alpha) (* i (+ (+ alpha beta) i))) (+ (+ alpha beta) (* 2 i))) |
4 calls. Slowest were:
| 739.0ms | (/ (/ (* i (+ (+ alpha beta) i)) (+ (+ alpha beta) (* 2 i))) (/ (- (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i))) 1.0) (/ (+ (* beta alpha) (* i (+ (+ alpha beta) i))) (+ (+ alpha beta) (* 2 i))))) |
| 511.0ms | (/ (- (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i))) 1.0) (/ (+ (* beta alpha) (* i (+ (+ alpha beta) i))) (+ (+ alpha beta) (* 2 i)))) |
| 88.0ms | (/ (+ (* beta alpha) (* i (+ (+ alpha beta) i))) (+ (+ alpha beta) (* 2 i))) |
| 61.0ms | (/ (* i (+ (+ alpha beta) i)) (+ (+ alpha beta) (* 2 i))) |
1143 calls. Slowest were:
| 1.0s | (/ 1 (/ (* (cbrt (- (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i))) 1.0)) (cbrt (- (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i))) 1.0))) (/ 1 1))) |
| 979.0ms | (/ (/ i 1) (/ (* (cbrt (- (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i))) 1.0)) (cbrt (- (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i))) 1.0))) (/ 1 (sqrt (+ (+ alpha beta) (* 2 i)))))) |
| 931.0ms | (/ (cbrt (- (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i))) 1.0)) (/ (cbrt (+ (* beta alpha) (* i (+ (+ alpha beta) i)))) (sqrt (+ (+ alpha beta) (* 2 i))))) |
8 alts after pruning (7 fresh and 1 done)
Merged error: 34.6b
Found 4 expressions with local error:
| 38.6b | (/ (fma (fma 2 i (+ beta alpha)) (fma 2 i (+ beta alpha)) (- 1.0)) (fma (+ i (+ beta alpha)) i (* alpha beta))) |
| 8.8b | (/ (+ i (+ beta alpha)) (* (fma 2 i (+ beta alpha)) (/ (fma (fma 2 i (+ beta alpha)) (fma 2 i (+ beta alpha)) (- 1.0)) (fma (+ i (+ beta alpha)) i (* alpha beta))))) |
| 0.1b | (* (/ i (+ (fma i 2 beta) alpha)) (/ (+ i (+ beta alpha)) (* (fma 2 i (+ beta alpha)) (/ (fma (fma 2 i (+ beta alpha)) (fma 2 i (+ beta alpha)) (- 1.0)) (fma (+ i (+ beta alpha)) i (* alpha beta)))))) |
| 0.0b | (* (fma 2 i (+ beta alpha)) (/ (fma (fma 2 i (+ beta alpha)) (fma 2 i (+ beta alpha)) (- 1.0)) (fma (+ i (+ beta alpha)) i (* alpha beta)))) |
4 calls. Slowest were:
| 32.0ms | (* (/ i (+ (fma i 2 beta) alpha)) (/ (+ i (+ beta alpha)) (* (fma 2 i (+ beta alpha)) (/ (fma (fma 2 i (+ beta alpha)) (fma 2 i (+ beta alpha)) (- 1.0)) (fma (+ i (+ beta alpha)) i (* alpha beta)))))) |
| 11.0ms | (* (fma 2 i (+ beta alpha)) (/ (fma (fma 2 i (+ beta alpha)) (fma 2 i (+ beta alpha)) (- 1.0)) (fma (+ i (+ beta alpha)) i (* alpha beta)))) |
| 11.0ms | (/ (+ i (+ beta alpha)) (* (fma 2 i (+ beta alpha)) (/ (fma (fma 2 i (+ beta alpha)) (fma 2 i (+ beta alpha)) (- 1.0)) (fma (+ i (+ beta alpha)) i (* alpha beta))))) |
4 calls. Slowest were:
| 785.0ms | (* (/ i (+ (fma i 2 beta) alpha)) (/ (+ i (+ beta alpha)) (* (fma 2 i (+ beta alpha)) (/ (fma (fma 2 i (+ beta alpha)) (fma 2 i (+ beta alpha)) (- 1.0)) (fma (+ i (+ beta alpha)) i (* alpha beta)))))) |
| 588.0ms | (/ (+ i (+ beta alpha)) (* (fma 2 i (+ beta alpha)) (/ (fma (fma 2 i (+ beta alpha)) (fma 2 i (+ beta alpha)) (- 1.0)) (fma (+ i (+ beta alpha)) i (* alpha beta))))) |
| 197.0ms | (* (fma 2 i (+ beta alpha)) (/ (fma (fma 2 i (+ beta alpha)) (fma 2 i (+ beta alpha)) (- 1.0)) (fma (+ i (+ beta alpha)) i (* alpha beta)))) |
| 169.0ms | (/ (fma (fma 2 i (+ beta alpha)) (fma 2 i (+ beta alpha)) (- 1.0)) (fma (+ i (+ beta alpha)) i (* alpha beta))) |
101 calls. Slowest were:
| 693.0ms | (* (* (* (/ i (+ (fma i 2 beta) alpha)) (/ i (+ (fma i 2 beta) alpha))) (/ i (+ (fma i 2 beta) alpha))) (/ (* (* (+ i (+ beta alpha)) (+ i (+ beta alpha))) (+ i (+ beta alpha))) (* (* (* (fma 2 i (+ beta alpha)) (fma 2 i (+ beta alpha))) (fma 2 i (+ beta alpha))) (/ (* (* (fma (fma 2 i (+ beta alpha)) (fma 2 i (+ beta alpha)) (- 1.0)) (fma (fma 2 i (+ beta alpha)) (fma 2 i (+ beta alpha)) (- 1.0))) (fma (fma 2 i (+ beta alpha)) (fma 2 i (+ beta alpha)) (- 1.0))) (* (* (fma (+ i (+ beta alpha)) i (* alpha beta)) (fma (+ i (+ beta alpha)) i (* alpha beta))) (fma (+ i (+ beta alpha)) i (* alpha beta))))))) |
| 656.0ms | (/ i (- (* (fma i 2 beta) (fma i 2 beta)) (* alpha alpha))) |
| 625.0ms | (* (* (* (/ i (+ (fma i 2 beta) alpha)) (/ i (+ (fma i 2 beta) alpha))) (/ i (+ (fma i 2 beta) alpha))) (/ (* (* (+ i (+ beta alpha)) (+ i (+ beta alpha))) (+ i (+ beta alpha))) (* (* (* (fma 2 i (+ beta alpha)) (/ (fma (fma 2 i (+ beta alpha)) (fma 2 i (+ beta alpha)) (- 1.0)) (fma (+ i (+ beta alpha)) i (* alpha beta)))) (* (fma 2 i (+ beta alpha)) (/ (fma (fma 2 i (+ beta alpha)) (fma 2 i (+ beta alpha)) (- 1.0)) (fma (+ i (+ beta alpha)) i (* alpha beta))))) (* (fma 2 i (+ beta alpha)) (/ (fma (fma 2 i (+ beta alpha)) (fma 2 i (+ beta alpha)) (- 1.0)) (fma (+ i (+ beta alpha)) i (* alpha beta))))))) |
10 alts after pruning (9 fresh and 1 done)
Merged error: 8.3b
Found 4 expressions with local error:
| 2.0b | (* (/ beta i) (/ alpha i)) |
| 1.9b | (/ (+ i (+ beta alpha)) (* (fma 2 i (+ beta alpha)) (fma (* (/ beta i) (/ alpha i)) -2 4))) |
| 0.0b | (* (/ i (+ (fma i 2 beta) alpha)) (/ (+ i (+ beta alpha)) (* (fma 2 i (+ beta alpha)) (fma (* (/ beta i) (/ alpha i)) -2 4)))) |
| 0.0b | (/ i (+ (fma i 2 beta) alpha)) |
4 calls. Slowest were:
| 10.0ms | (* (/ i (+ (fma i 2 beta) alpha)) (/ (+ i (+ beta alpha)) (* (fma 2 i (+ beta alpha)) (fma (* (/ beta i) (/ alpha i)) -2 4)))) |
| 8.0ms | (/ (+ i (+ beta alpha)) (* (fma 2 i (+ beta alpha)) (fma (* (/ beta i) (/ alpha i)) -2 4))) |
| 4.0ms | (* (/ beta i) (/ alpha i)) |
4 calls. Slowest were:
| 127.0ms | (* (/ i (+ (fma i 2 beta) alpha)) (/ (+ i (+ beta alpha)) (* (fma 2 i (+ beta alpha)) (fma (* (/ beta i) (/ alpha i)) -2 4)))) |
| 94.0ms | (/ (+ i (+ beta alpha)) (* (fma 2 i (+ beta alpha)) (fma (* (/ beta i) (/ alpha i)) -2 4))) |
| 59.0ms | (/ i (+ (fma i 2 beta) alpha)) |
| 24.0ms | (* (/ beta i) (/ alpha i)) |
66 calls. Slowest were:
| 731.0ms | (/ i (- (* (fma i 2 beta) (fma i 2 beta)) (* alpha alpha))) |
| 578.0ms | (* (* (* (/ i (+ (fma i 2 beta) alpha)) (/ i (+ (fma i 2 beta) alpha))) (/ i (+ (fma i 2 beta) alpha))) (/ (* (* (+ i (+ beta alpha)) (+ i (+ beta alpha))) (+ i (+ beta alpha))) (* (* (* (fma 2 i (+ beta alpha)) (fma 2 i (+ beta alpha))) (fma 2 i (+ beta alpha))) (* (* (fma (* (/ beta i) (/ alpha i)) -2 4) (fma (* (/ beta i) (/ alpha i)) -2 4)) (fma (* (/ beta i) (/ alpha i)) -2 4))))) |
| 574.0ms | (/ i (+ (pow (fma i 2 beta) 3) (pow alpha 3))) |
12 alts after pruning (11 fresh and 1 done)
Merged error: 8.3b
42.3% (2.5b remaining)
Error of 12.4b against oracle of 9.9b and baseline of 14.2b