


Bits error versus alpha



Bits error versus beta
if alpha < 4.141367796861846e+16Initial program 0.4
rmApplied div-sub0.4
Applied associate-+l-0.4
rmApplied div-inv0.4
Applied fma-neg0.4
if 4.141367796861846e+16 < alpha Initial program 49.4
rmApplied div-sub49.4
Applied associate-+l-47.8
rmApplied clear-num47.8
Taylor expanded around inf 18.8
Simplified18.8
Final simplification6.0
herbie shell --seed 2019010 +o rules:numerics
(FPCore (alpha beta)
:name "Octave 3.8, jcobi/1"
:pre (and (> alpha -1) (> beta -1))
(/ (+ (/ (- beta alpha) (+ (+ alpha beta) 2.0)) 1.0) 2.0))
Time bar (total: 20.1s)Debug log
| 107.0ms | (/ (+ (/ (- beta alpha) (+ (+ alpha beta) 2.0)) 1.0) 2.0) |
1 alts after pruning (1 fresh and 0 done)
Merged error: 18.0b
Found 2 expressions with local error:
| 1.9b | (+ (/ (- beta alpha) (+ (+ alpha beta) 2.0)) 1.0) |
| 0.0b | (/ (- beta alpha) (+ (+ alpha beta) 2.0)) |
| 18× | times-frac |
| 17× | add-cube-cbrt |
| 17× | *-un-lft-identity |
| 17× | add-sqr-sqrt |
| 15× | fma-def |
| 4× | associate-/r/ |
| 4× | add-exp-log |
| 4× | add-cbrt-cube |
| 3× | associate-/l* |
| 3× | flip-+ |
| 3× | flip3-+ |
| 3× | associate-/r* |
| 2× | associate-/l/ |
| 2× | add-log-exp |
| 2× | div-inv |
| 2× | log1p-expm1-u |
| 2× | div-sub |
| 2× | pow1 |
| 2× | expm1-log1p-u |
| 1× | flip-- |
| 1× | associate-+l- |
| 1× | div-exp |
| 1× | flip3-- |
| 1× | frac-2neg |
| 1× | clear-num |
| 1× | +-commutative |
| 1× | cbrt-undiv |
| 32.0ms | (+ (/ (- beta alpha) (+ (+ alpha beta) 2.0)) 1.0) |
| 10.0ms | (/ (- beta alpha) (+ (+ alpha beta) 2.0)) |
| 55.0ms | (+ (/ (- beta alpha) (+ (+ alpha beta) 2.0)) 1.0) |
| 40.0ms | (/ (- beta alpha) (+ (+ alpha beta) 2.0)) |
| 497.0ms | (/ (- beta alpha) (+ (pow (+ alpha beta) 3) (pow 2.0 3))) |
| 231.0ms | (+ (* (+ alpha beta) (+ alpha beta)) (- (* 2.0 2.0) (* (+ alpha beta) 2.0))) |
| 186.0ms | (- (* 0.5 beta) (+ (* 0.25 (pow beta 2)) (* 0.5 alpha))) |
| 185.0ms | (- (+ (* 4.0 (/ 1 (pow beta 2))) 1) (* 2.0 (/ 1 beta))) |
| 177.0ms | (- (+ (* 4.0 (/ 1 (pow beta 2))) 1) (* 2.0 (/ 1 beta))) |
14 alts after pruning (14 fresh and 0 done)
Merged error: 17.1b
Found 4 expressions with local error:
| 1.9b | (- (/ alpha (+ (+ alpha beta) 2.0)) 1.0) |
| 0.0b | (/ beta (+ (+ alpha beta) 2.0)) |
| 0.0b | (/ alpha (+ (+ alpha beta) 2.0)) |
| 0.0b | (/ (- (/ beta (+ (+ alpha beta) 2.0)) (- (/ alpha (+ (+ alpha beta) 2.0)) 1.0)) 2.0) |
| 10× | *-un-lft-identity |
| 10× | add-sqr-sqrt |
| 8× | add-cube-cbrt |
| 6× | associate-/r/ |
| 6× | fma-neg |
| 6× | associate-/r* |
| 5× | associate-/l* |
| 4× | associate-/l/ |
| 4× | add-log-exp |
| 4× | div-inv |
| 4× | log1p-expm1-u |
| 4× | add-exp-log |
| 4× | add-cbrt-cube |
| 4× | pow1 |
| 4× | expm1-log1p-u |
| 3× | flip-- |
| 3× | flip-+ |
| 3× | flip3-- |
| 3× | flip3-+ |
| 3× | frac-2neg |
| 3× | clear-num |
| 2× | frac-sub |
| 1× | difference-of-squares |
| 1× | distribute-lft-out-- |
| 1× | div-sub |
| 1× | sub-neg |
| 53.0ms | (/ (- (/ beta (+ (+ alpha beta) 2.0)) (- (/ alpha (+ (+ alpha beta) 2.0)) 1.0)) 2.0) |
| 11.0ms | (- (/ alpha (+ (+ alpha beta) 2.0)) 1.0) |
| 2.0ms | (/ alpha (+ (+ alpha beta) 2.0)) |
| 2.0ms | (/ beta (+ (+ alpha beta) 2.0)) |
| 50.0ms | (- (/ alpha (+ (+ alpha beta) 2.0)) 1.0) |
| 43.0ms | (/ (- (/ beta (+ (+ alpha beta) 2.0)) (- (/ alpha (+ (+ alpha beta) 2.0)) 1.0)) 2.0) |
| 33.0ms | (/ alpha (+ (+ alpha beta) 2.0)) |
| 26.0ms | (/ beta (+ (+ alpha beta) 2.0)) |
| 684.0ms | (- (* beta (+ (/ alpha (+ (+ alpha beta) 2.0)) 1.0)) (* (+ (+ alpha beta) 2.0) (- (* (/ alpha (+ (+ alpha beta) 2.0)) (/ alpha (+ (+ alpha beta) 2.0))) (* 1.0 1.0)))) |
| 429.0ms | (- (* 0.5 beta) (+ (* 0.25 (pow beta 2)) (* 0.25 (* beta alpha)))) |
| 408.0ms | (/ alpha (+ (pow (+ alpha beta) 3) (pow 2.0 3))) |
| 238.0ms | (- (pow (/ beta (+ (+ alpha beta) 2.0)) 3) (pow (- (/ alpha (+ (+ alpha beta) 2.0)) 1.0) 3)) |
| 220.0ms | (+ (* (+ alpha beta) (+ alpha beta)) (- (* 2.0 2.0) (* (+ alpha beta) 2.0))) |
14 alts after pruning (14 fresh and 0 done)
Merged error: 3.5b
Found 4 expressions with local error:
| 1.9b | (- (/ 1 (/ (+ (+ alpha beta) 2.0) alpha)) 1.0) |
| 0.3b | (/ 1 (/ (+ (+ alpha beta) 2.0) alpha)) |
| 0.0b | (/ beta (+ (+ alpha beta) 2.0)) |
| 0.0b | (/ (+ (+ alpha beta) 2.0) alpha) |
| 8× | add-cube-cbrt |
| 8× | *-un-lft-identity |
| 8× | add-sqr-sqrt |
| 7× | associate-/r* |
| 5× | div-inv |
| 5× | add-exp-log |
| 5× | fma-neg |
| 5× | pow1 |
| 4× | add-log-exp |
| 4× | log1p-expm1-u |
| 4× | associate-/r/ |
| 4× | add-cbrt-cube |
| 4× | expm1-log1p-u |
| 3× | associate-/l* |
| 3× | frac-2neg |
| 3× | clear-num |
| 2× | associate-/l/ |
| 2× | flip-+ |
| 2× | flip3-+ |
| 1× | inv-pow |
| 1× | flip-- |
| 1× | pow-flip |
| 1× | flip3-- |
| 1× | sub-neg |
| 1× | rec-exp |
| 11.0ms | (/ (+ (+ alpha beta) 2.0) alpha) |
| 4.0ms | (- (/ 1 (/ (+ (+ alpha beta) 2.0) alpha)) 1.0) |
| 2.0ms | (/ 1 (/ (+ (+ alpha beta) 2.0) alpha)) |
| 2.0ms | (/ beta (+ (+ alpha beta) 2.0)) |
| 66.0ms | (- (/ 1 (/ (+ (+ alpha beta) 2.0) alpha)) 1.0) |
| 29.0ms | (/ 1 (/ (+ (+ alpha beta) 2.0) alpha)) |
| 29.0ms | (/ beta (+ (+ alpha beta) 2.0)) |
| 19.0ms | (/ (+ (+ alpha beta) 2.0) alpha) |
| 454.0ms | (+ (pow (+ alpha beta) 3) (pow 2.0 3)) |
| 396.0ms | (- (* 0.5 beta) (+ (* 0.25 (pow beta 2)) (* 0.25 (* beta alpha)))) |
| 250.0ms | (- (* 0.5 alpha) (+ (* 0.25 (pow alpha 2)) (* 0.25 (* beta alpha)))) |
| 221.0ms | (- (* 4.0 (/ 1 (pow alpha 2))) (+ (* 2.0 (/ 1 alpha)) (* 8.0 (/ 1 (pow alpha 3))))) |
| 187.0ms | (- (* 4.0 (/ 1 (pow alpha 2))) (+ (* 2.0 (/ 1 alpha)) (* 8.0 (/ 1 (pow alpha 3))))) |
14 alts after pruning (14 fresh and 0 done)
Merged error: 3.5b
Found 4 expressions with local error:
| 6.5b | (cbrt (/ beta (+ (+ alpha beta) 2.0))) |
| 6.5b | (cbrt (/ beta (+ (+ alpha beta) 2.0))) |
| 6.5b | (cbrt (/ beta (+ (+ alpha beta) 2.0))) |
| 1.9b | (- (/ alpha (+ (+ alpha beta) 2.0)) 1.0) |
| 18× | cbrt-prod |
| 8× | add-cube-cbrt |
| 8× | associate-/r/ |
| 8× | *-un-lft-identity |
| 8× | add-sqr-sqrt |
| 6× | fma-neg |
| 4× | add-log-exp |
| 4× | div-inv |
| 4× | log1p-expm1-u |
| 4× | flip-+ |
| 4× | add-exp-log |
| 4× | add-cbrt-cube |
| 4× | flip3-+ |
| 4× | pow1 |
| 4× | expm1-log1p-u |
| 3× | pow1/3 |
| 3× | cbrt-div |
| 1× | flip-- |
| 1× | flip3-- |
| 1× | sub-neg |
| 8.0ms | (- (/ alpha (+ (+ alpha beta) 2.0)) 1.0) |
| 1.0ms | (cbrt (/ beta (+ (+ alpha beta) 2.0))) |
| 1.0ms | (cbrt (/ beta (+ (+ alpha beta) 2.0))) |
| 1.0ms | (cbrt (/ beta (+ (+ alpha beta) 2.0))) |
| 160.0ms | (cbrt (/ beta (+ (+ alpha beta) 2.0))) |
| 120.0ms | (cbrt (/ beta (+ (+ alpha beta) 2.0))) |
| 120.0ms | (cbrt (/ beta (+ (+ alpha beta) 2.0))) |
| 63.0ms | (- (/ alpha (+ (+ alpha beta) 2.0)) 1.0) |
| 537.0ms | (/ alpha (+ (pow (+ alpha beta) 3) (pow 2.0 3))) |
| 449.0ms | (cbrt (/ beta (+ (pow (+ alpha beta) 3) (pow 2.0 3)))) |
| 429.0ms | (cbrt (/ beta (+ (pow (+ alpha beta) 3) (pow 2.0 3)))) |
| 418.0ms | (cbrt (/ beta (+ (pow (+ alpha beta) 3) (pow 2.0 3)))) |
| 206.0ms | (- (+ (* (cbrt -1) (pow -1 1/3)) (* 0.8888888888888888 (* (/ (cbrt -1) (pow beta 2)) (pow -1 1/3)))) (* 0.6666666666666666 (* (/ (cbrt -1) beta) (pow -1 1/3)))) |
12 alts after pruning (12 fresh and 0 done)
Merged error: 3.5b
73.5% (3.2b remaining)
Error of 6.0b against oracle of 2.8b and baseline of 14.8b