


Bits error versus alpha



Bits error versus beta
Results
if alpha < 2.3447701514638163e+160Initial program 1.1
rmApplied div-inv1.1
if 2.3447701514638163e+160 < alpha Initial program 17.2
rmApplied div-inv17.2
rmApplied flip-+18.4
Applied associate-/r/18.4
Applied associate-/l*18.4
Simplified18.4
Taylor expanded around 0 7.7
Simplified7.7
Final simplification2.3
herbie shell --seed 2018360
(FPCore (alpha beta)
:name "Octave 3.8, jcobi/3"
:pre (and (> alpha -1) (> beta -1))
(/ (/ (/ (+ (+ (+ alpha beta) (* beta alpha)) 1.0) (+ (+ alpha beta) (* 2 1))) (+ (+ alpha beta) (* 2 1))) (+ (+ (+ alpha beta) (* 2 1)) 1.0)))
Time bar (total: 3.7m)Debug log
2 alts after pruning (2 fresh and 0 done)
Merged error: 5.7b
Found 4 expressions with local error:
| 5.5b | (/ (+ (+ (+ alpha beta) (* beta alpha)) 1.0) (+ (+ alpha beta) (* 2 1))) |
| 0.1b | (/ (/ (/ (+ (+ (+ alpha beta) (* beta alpha)) 1.0) (+ (+ alpha beta) (* 2 1))) (+ (+ alpha beta) (* 2 1))) (+ (+ (+ alpha beta) (* 2 1)) 1.0)) |
| 0.0b | (/ (/ (+ (+ (+ alpha beta) (* beta alpha)) 1.0) (+ (+ alpha beta) (* 2 1))) (+ (+ alpha beta) (* 2 1))) |
| 0.0b | (+ (+ (+ alpha beta) (* 2 1)) 1.0) |
4 calls. Slowest were:
| 94.0ms | (/ (/ (/ (+ (+ (+ alpha beta) (* beta alpha)) 1.0) (+ (+ alpha beta) (* 2 1))) (+ (+ alpha beta) (* 2 1))) (+ (+ (+ alpha beta) (* 2 1)) 1.0)) |
| 67.0ms | (/ (+ (+ (+ alpha beta) (* beta alpha)) 1.0) (+ (+ alpha beta) (* 2 1))) |
| 38.0ms | (/ (/ (+ (+ (+ alpha beta) (* beta alpha)) 1.0) (+ (+ alpha beta) (* 2 1))) (+ (+ alpha beta) (* 2 1))) |
4 calls. Slowest were:
| 95.0ms | (/ (/ (/ (+ (+ (+ alpha beta) (* beta alpha)) 1.0) (+ (+ alpha beta) (* 2 1))) (+ (+ alpha beta) (* 2 1))) (+ (+ (+ alpha beta) (* 2 1)) 1.0)) |
| 76.0ms | (/ (/ (+ (+ (+ alpha beta) (* beta alpha)) 1.0) (+ (+ alpha beta) (* 2 1))) (+ (+ alpha beta) (* 2 1))) |
| 53.0ms | (/ (+ (+ (+ alpha beta) (* beta alpha)) 1.0) (+ (+ alpha beta) (* 2 1))) |
| 14.0ms | (+ (+ (+ alpha beta) (* 2 1)) 1.0) |
524 calls. Slowest were:
| 854.0ms | (/ (/ (/ (cbrt (+ (+ (+ alpha beta) (* beta alpha)) 1.0)) (+ (+ alpha beta) (* 2 1))) (+ (+ alpha beta) (* 2 1))) (+ (+ (+ alpha beta) (* 2 1)) 1.0)) |
| 794.0ms | (/ (/ (/ (+ (+ (+ alpha beta) (* beta alpha)) 1.0) (+ (+ alpha beta) (* 2 1))) (+ (+ alpha beta) (* 2 1))) (+ (+ (+ alpha beta) (* 2 1)) 1.0)) |
| 749.0ms | (/ (/ (/ (+ (+ (+ alpha beta) (* beta alpha)) 1.0) (+ (+ alpha beta) (* 2 1))) (- (* (+ alpha beta) (+ alpha beta)) (* (* 2 1) (* 2 1)))) (sqrt (+ (+ (+ alpha beta) (* 2 1)) 1.0))) |
6 alts after pruning (6 fresh and 0 done)
Merged error: 0.7b
Found 4 expressions with local error:
| 5.6b | (* (+ (+ (+ alpha beta) (* beta alpha)) 1.0) (/ 1 (+ (+ alpha beta) (* 2 1)))) |
| 0.1b | (/ (/ (* (+ (+ (+ alpha beta) (* beta alpha)) 1.0) (/ 1 (+ (+ alpha beta) (* 2 1)))) (+ (+ alpha beta) (* 2 1))) (+ (+ (+ alpha beta) (* 2 1)) 1.0)) |
| 0.0b | (/ (* (+ (+ (+ alpha beta) (* beta alpha)) 1.0) (/ 1 (+ (+ alpha beta) (* 2 1)))) (+ (+ alpha beta) (* 2 1))) |
| 0.0b | (/ 1 (+ (+ alpha beta) (* 2 1))) |
4 calls. Slowest were:
| 42.0ms | (* (+ (+ (+ alpha beta) (* beta alpha)) 1.0) (/ 1 (+ (+ alpha beta) (* 2 1)))) |
| 40.0ms | (/ (/ (* (+ (+ (+ alpha beta) (* beta alpha)) 1.0) (/ 1 (+ (+ alpha beta) (* 2 1)))) (+ (+ alpha beta) (* 2 1))) (+ (+ (+ alpha beta) (* 2 1)) 1.0)) |
| 29.0ms | (/ (* (+ (+ (+ alpha beta) (* beta alpha)) 1.0) (/ 1 (+ (+ alpha beta) (* 2 1)))) (+ (+ alpha beta) (* 2 1))) |
4 calls. Slowest were:
| 85.0ms | (/ (/ (* (+ (+ (+ alpha beta) (* beta alpha)) 1.0) (/ 1 (+ (+ alpha beta) (* 2 1)))) (+ (+ alpha beta) (* 2 1))) (+ (+ (+ alpha beta) (* 2 1)) 1.0)) |
| 70.0ms | (/ (* (+ (+ (+ alpha beta) (* beta alpha)) 1.0) (/ 1 (+ (+ alpha beta) (* 2 1)))) (+ (+ alpha beta) (* 2 1))) |
| 57.0ms | (* (+ (+ (+ alpha beta) (* beta alpha)) 1.0) (/ 1 (+ (+ alpha beta) (* 2 1)))) |
| 22.0ms | (/ 1 (+ (+ alpha beta) (* 2 1))) |
136 calls. Slowest were:
| 971.0ms | (* (- (* (+ (+ alpha beta) (* beta alpha)) (+ (+ alpha beta) (* beta alpha))) (* 1.0 1.0)) 1) |
| 889.0ms | (* (+ (pow (+ (+ alpha beta) (* beta alpha)) 3) (pow 1.0 3)) (/ 1 (+ (+ alpha beta) (* 2 1)))) |
| 868.0ms | (* (+ (pow (+ (+ alpha beta) (* beta alpha)) 3) (pow 1.0 3)) (/ 1 (+ (+ alpha beta) (* 2 1)))) |
6 alts after pruning (5 fresh and 1 done)
Merged error: 0.7b
Found 4 expressions with local error:
| 5.5b | (/ (+ (* alpha beta) (+ beta alpha)) (+ 2 (+ beta alpha))) |
| 1.0b | (/ (+ (/ 1.0 (+ 2 (+ beta alpha))) (/ (+ (* alpha beta) (+ beta alpha)) (+ 2 (+ beta alpha)))) (+ -4 (* (+ beta alpha) (+ beta alpha)))) |
| 0.0b | (+ (/ 1.0 (+ 2 (+ beta alpha))) (/ (+ (* alpha beta) (+ beta alpha)) (+ 2 (+ beta alpha)))) |
| 0.0b | (* (+ beta alpha) (+ beta alpha)) |
4 calls. Slowest were:
| 32.0ms | (/ (+ (/ 1.0 (+ 2 (+ beta alpha))) (/ (+ (* alpha beta) (+ beta alpha)) (+ 2 (+ beta alpha)))) (+ -4 (* (+ beta alpha) (+ beta alpha)))) |
| 18.0ms | (+ (/ 1.0 (+ 2 (+ beta alpha))) (/ (+ (* alpha beta) (+ beta alpha)) (+ 2 (+ beta alpha)))) |
| 9.0ms | (/ (+ (* alpha beta) (+ beta alpha)) (+ 2 (+ beta alpha))) |
4 calls. Slowest were:
| 133.0ms | (/ (+ (/ 1.0 (+ 2 (+ beta alpha))) (/ (+ (* alpha beta) (+ beta alpha)) (+ 2 (+ beta alpha)))) (+ -4 (* (+ beta alpha) (+ beta alpha)))) |
| 101.0ms | (+ (/ 1.0 (+ 2 (+ beta alpha))) (/ (+ (* alpha beta) (+ beta alpha)) (+ 2 (+ beta alpha)))) |
| 40.0ms | (/ (+ (* alpha beta) (+ beta alpha)) (+ 2 (+ beta alpha))) |
| 15.0ms | (* (+ beta alpha) (+ beta alpha)) |
133 calls. Slowest were:
| 711.0ms | (* (* (* (+ beta alpha) (+ beta alpha)) (+ beta alpha)) (* (* (+ beta alpha) (+ beta alpha)) (+ beta alpha))) |
| 678.0ms | (/ (+ (/ 1.0 (- (* 2 2) (* (+ beta alpha) (+ beta alpha)))) (/ (+ (* alpha beta) (+ beta alpha)) (- (* 2 2) (* (+ beta alpha) (+ beta alpha))))) (+ -4 (* (+ beta alpha) (+ beta alpha)))) |
| 530.0ms | (/ (+ (/ 1.0 (- (* 2 2) (* (+ beta alpha) (+ beta alpha)))) (/ (+ (* alpha beta) (+ beta alpha)) (- (* 2 2) (* (+ beta alpha) (+ beta alpha))))) (cbrt (+ -4 (* (+ beta alpha) (+ beta alpha))))) |
6 alts after pruning (4 fresh and 2 done)
Merged error: 0.7b
Found 4 expressions with local error:
| 19.2b | (/ (+ alpha (+ (* alpha beta) (+ beta 1.0))) (* (+ 2 (+ beta alpha)) (+ 2 (+ beta alpha)))) |
| 19.2b | (/ (+ (* alpha beta) (+ (+ beta 1.0) alpha)) (* (+ (+ beta 2) alpha) (+ (+ beta 2) alpha))) |
| 0.1b | (/ (sqrt (/ (+ alpha (+ (* alpha beta) (+ beta 1.0))) (* (+ 2 (+ beta alpha)) (+ 2 (+ beta alpha))))) (+ (+ beta alpha) (+ 1.0 2))) |
| 0.1b | (* (sqrt (/ (+ (* alpha beta) (+ (+ beta 1.0) alpha)) (* (+ (+ beta 2) alpha) (+ (+ beta 2) alpha)))) (/ (sqrt (/ (+ alpha (+ (* alpha beta) (+ beta 1.0))) (* (+ 2 (+ beta alpha)) (+ 2 (+ beta alpha))))) (+ (+ beta alpha) (+ 1.0 2)))) |
4 calls. Slowest were:
| 427.0ms | (/ (+ (* alpha beta) (+ (+ beta 1.0) alpha)) (* (+ (+ beta 2) alpha) (+ (+ beta 2) alpha))) |
| 30.0ms | (* (sqrt (/ (+ (* alpha beta) (+ (+ beta 1.0) alpha)) (* (+ (+ beta 2) alpha) (+ (+ beta 2) alpha)))) (/ (sqrt (/ (+ alpha (+ (* alpha beta) (+ beta 1.0))) (* (+ 2 (+ beta alpha)) (+ 2 (+ beta alpha))))) (+ (+ beta alpha) (+ 1.0 2)))) |
| 28.0ms | (/ (+ alpha (+ (* alpha beta) (+ beta 1.0))) (* (+ 2 (+ beta alpha)) (+ 2 (+ beta alpha)))) |
4 calls. Slowest were:
| 288.0ms | (* (sqrt (/ (+ (* alpha beta) (+ (+ beta 1.0) alpha)) (* (+ (+ beta 2) alpha) (+ (+ beta 2) alpha)))) (/ (sqrt (/ (+ alpha (+ (* alpha beta) (+ beta 1.0))) (* (+ 2 (+ beta alpha)) (+ 2 (+ beta alpha))))) (+ (+ beta alpha) (+ 1.0 2)))) |
| 104.0ms | (/ (+ alpha (+ (* alpha beta) (+ beta 1.0))) (* (+ 2 (+ beta alpha)) (+ 2 (+ beta alpha)))) |
| 90.0ms | (/ (+ (* alpha beta) (+ (+ beta 1.0) alpha)) (* (+ (+ beta 2) alpha) (+ (+ beta 2) alpha))) |
| 82.0ms | (/ (sqrt (/ (+ alpha (+ (* alpha beta) (+ beta 1.0))) (* (+ 2 (+ beta alpha)) (+ 2 (+ beta alpha))))) (+ (+ beta alpha) (+ 1.0 2))) |
340 calls. Slowest were:
| 858.0ms | (/ (sqrt (* (+ (* 2 2) (- (* (+ beta alpha) (+ beta alpha)) (* 2 (+ beta alpha)))) (- 2 (+ beta alpha)))) (cbrt (+ (+ beta alpha) (+ 1.0 2)))) |
| 820.0ms | (* (+ (* 2 2) (- (* (+ beta alpha) (+ beta alpha)) (* 2 (+ beta alpha)))) (+ (* 2 2) (- (* (+ beta alpha) (+ beta alpha)) (* 2 (+ beta alpha))))) |
| 737.0ms | (sqrt (/ (+ (* alpha beta) (+ (+ beta 1.0) alpha)) (* (- (* (+ beta 2) (+ beta 2)) (* alpha alpha)) (- (* (+ beta 2) (+ beta 2)) (* alpha alpha))))) |
6 alts after pruning (3 fresh and 3 done)
Merged error: 0.7b
60.9% (1.0b remaining)
Error of 2.3b against oracle of 1.2b and baseline of 3.9b