


Bits error versus alpha



Bits error versus beta
Results
if (/ (/ (/ (+ (+ (+ alpha beta) (* beta alpha)) 1.0) (+ (+ alpha beta) (* 2 1))) (+ (+ alpha beta) (* 2 1))) (+ (+ (+ alpha beta) (* 2 1)) 1.0)) < 0.08431434392158774Initial program 0.1
rmApplied add-sqr-sqrt0.2
if 0.08431434392158774 < (/ (/ (/ (+ (+ (+ alpha beta) (* beta alpha)) 1.0) (+ (+ alpha beta) (* 2 1))) (+ (+ alpha beta) (* 2 1))) (+ (+ (+ alpha beta) (* 2 1)) 1.0)) Initial program 61.3
Taylor expanded around -inf 21.8
Final simplification1.4
herbie shell --seed 2019007 +o rules:numerics
(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: 6.9m)Debug log
1 calls. Slowest were:
| 859.0ms | (/ (/ (/ (+ (+ (+ alpha beta) (* beta alpha)) 1.0) (+ (+ alpha beta) (* 2 1))) (+ (+ alpha beta) (* 2 1))) (+ (+ (+ alpha beta) (* 2 1)) 1.0)) |
2 alts after pruning (2 fresh and 0 done)
Merged error: 3.5b
Found 4 expressions with local error:
| 3.4b | (/ (+ (+ (+ 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:
| 104.0ms | (/ (/ (/ (+ (+ (+ alpha beta) (* beta alpha)) 1.0) (+ (+ alpha beta) (* 2 1))) (+ (+ alpha beta) (* 2 1))) (+ (+ (+ alpha beta) (* 2 1)) 1.0)) |
| 73.0ms | (/ (+ (+ (+ alpha beta) (* beta alpha)) 1.0) (+ (+ alpha beta) (* 2 1))) |
| 55.0ms | (/ (/ (+ (+ (+ alpha beta) (* beta alpha)) 1.0) (+ (+ alpha beta) (* 2 1))) (+ (+ alpha beta) (* 2 1))) |
4 calls. Slowest were:
| 119.0ms | (/ (/ (/ (+ (+ (+ alpha beta) (* beta alpha)) 1.0) (+ (+ alpha beta) (* 2 1))) (+ (+ alpha beta) (* 2 1))) (+ (+ (+ alpha beta) (* 2 1)) 1.0)) |
| 75.0ms | (/ (/ (+ (+ (+ alpha beta) (* beta alpha)) 1.0) (+ (+ alpha beta) (* 2 1))) (+ (+ alpha beta) (* 2 1))) |
| 67.0ms | (/ (+ (+ (+ alpha beta) (* beta alpha)) 1.0) (+ (+ alpha beta) (* 2 1))) |
| 8.0ms | (+ (+ (+ alpha beta) (* 2 1)) 1.0) |
526 calls. Slowest were:
| 1.2s | (/ (/ (/ (+ (+ (+ alpha beta) (* beta alpha)) 1.0) (+ (+ alpha beta) (* 2 1))) (- (* (+ alpha beta) (+ alpha beta)) (* (* 2 1) (* 2 1)))) 1) |
| 1.0s | (/ (/ (+ (+ (+ alpha beta) (* beta alpha)) 1.0) (+ (pow (+ alpha beta) 3) (pow (* 2 1) 3))) 1) |
| 956.0ms | (/ (/ (+ (+ (+ alpha beta) (* beta alpha)) 1.0) (+ (pow (+ alpha beta) 3) (pow (* 2 1) 3))) 1) |
7 alts after pruning (7 fresh and 0 done)
Merged error: 1.3b
Found 4 expressions with local error:
| 15.0b | (sqrt (/ (/ (/ (+ (+ (+ alpha beta) (* beta alpha)) 1.0) (+ (+ alpha beta) (* 2 1))) (+ (+ alpha beta) (* 2 1))) (+ (+ (+ alpha beta) (* 2 1)) 1.0))) |
| 15.0b | (sqrt (/ (/ (/ (+ (+ (+ alpha beta) (* beta alpha)) 1.0) (+ (+ alpha beta) (* 2 1))) (+ (+ alpha beta) (* 2 1))) (+ (+ (+ alpha beta) (* 2 1)) 1.0))) |
| 3.4b | (/ (+ (+ (+ alpha beta) (* beta alpha)) 1.0) (+ (+ alpha beta) (* 2 1))) |
| 3.4b | (/ (+ (+ (+ alpha beta) (* beta alpha)) 1.0) (+ (+ alpha beta) (* 2 1))) |
4 calls. Slowest were:
| 55.0ms | (/ (+ (+ (+ alpha beta) (* beta alpha)) 1.0) (+ (+ alpha beta) (* 2 1))) |
| 52.0ms | (sqrt (/ (/ (/ (+ (+ (+ alpha beta) (* beta alpha)) 1.0) (+ (+ alpha beta) (* 2 1))) (+ (+ alpha beta) (* 2 1))) (+ (+ (+ alpha beta) (* 2 1)) 1.0))) |
| 44.0ms | (/ (+ (+ (+ alpha beta) (* beta alpha)) 1.0) (+ (+ alpha beta) (* 2 1))) |
4 calls. Slowest were:
| 197.0ms | (sqrt (/ (/ (/ (+ (+ (+ alpha beta) (* beta alpha)) 1.0) (+ (+ alpha beta) (* 2 1))) (+ (+ alpha beta) (* 2 1))) (+ (+ (+ alpha beta) (* 2 1)) 1.0))) |
| 183.0ms | (sqrt (/ (/ (/ (+ (+ (+ alpha beta) (* beta alpha)) 1.0) (+ (+ alpha beta) (* 2 1))) (+ (+ alpha beta) (* 2 1))) (+ (+ (+ alpha beta) (* 2 1)) 1.0))) |
| 52.0ms | (/ (+ (+ (+ alpha beta) (* beta alpha)) 1.0) (+ (+ alpha beta) (* 2 1))) |
| 39.0ms | (/ (+ (+ (+ alpha beta) (* beta alpha)) 1.0) (+ (+ alpha beta) (* 2 1))) |
398 calls. Slowest were:
| 1.2s | (sqrt (/ (/ (/ (+ (+ (+ alpha beta) (* beta alpha)) 1.0) (+ (+ alpha beta) (* 2 1))) (- (* (+ alpha beta) (+ alpha beta)) (* (* 2 1) (* 2 1)))) 1)) |
| 1.1s | (- (* (+ (+ alpha beta) (* beta alpha)) (+ (+ alpha beta) (* beta alpha))) (* 1.0 1.0)) |
| 1.0s | (sqrt (/ (/ (/ (+ (+ (+ alpha beta) (* beta alpha)) 1.0) (+ (+ alpha beta) (* 2 1))) (- (* (+ alpha beta) (+ alpha beta)) (* (* 2 1) (* 2 1)))) 1)) |
7 alts after pruning (6 fresh and 1 done)
Merged error: 1.3b
Found 4 expressions with local error:
| 3.4b | (/ (+ (fma beta alpha beta) (+ 1.0 alpha)) (+ beta (+ alpha 2))) |
| 3.4b | (/ (+ (+ beta 1.0) (fma beta alpha alpha)) (+ (+ 2 beta) alpha)) |
| 0.1b | (/ (sqrt (/ (/ (+ (+ beta 1.0) (fma beta alpha alpha)) (+ (+ 2 beta) alpha)) (+ (+ 2 beta) alpha))) (+ (+ 1.0 alpha) (+ 2 beta))) |
| 0.1b | (* (sqrt (/ (/ (+ (fma beta alpha beta) (+ 1.0 alpha)) (+ beta (+ alpha 2))) (+ beta (+ alpha 2)))) (/ (sqrt (/ (/ (+ (+ beta 1.0) (fma beta alpha alpha)) (+ (+ 2 beta) alpha)) (+ (+ 2 beta) alpha))) (+ (+ 1.0 alpha) (+ 2 beta)))) |
4 calls. Slowest were:
| 63.0ms | (* (sqrt (/ (/ (+ (fma beta alpha beta) (+ 1.0 alpha)) (+ beta (+ alpha 2))) (+ beta (+ alpha 2)))) (/ (sqrt (/ (/ (+ (+ beta 1.0) (fma beta alpha alpha)) (+ (+ 2 beta) alpha)) (+ (+ 2 beta) alpha))) (+ (+ 1.0 alpha) (+ 2 beta)))) |
| 24.0ms | (/ (sqrt (/ (/ (+ (+ beta 1.0) (fma beta alpha alpha)) (+ (+ 2 beta) alpha)) (+ (+ 2 beta) alpha))) (+ (+ 1.0 alpha) (+ 2 beta))) |
| 21.0ms | (/ (+ (fma beta alpha beta) (+ 1.0 alpha)) (+ beta (+ alpha 2))) |
4 calls. Slowest were:
| 268.0ms | (* (sqrt (/ (/ (+ (fma beta alpha beta) (+ 1.0 alpha)) (+ beta (+ alpha 2))) (+ beta (+ alpha 2)))) (/ (sqrt (/ (/ (+ (+ beta 1.0) (fma beta alpha alpha)) (+ (+ 2 beta) alpha)) (+ (+ 2 beta) alpha))) (+ (+ 1.0 alpha) (+ 2 beta)))) |
| 97.0ms | (/ (sqrt (/ (/ (+ (+ beta 1.0) (fma beta alpha alpha)) (+ (+ 2 beta) alpha)) (+ (+ 2 beta) alpha))) (+ (+ 1.0 alpha) (+ 2 beta))) |
| 78.0ms | (/ (+ (+ beta 1.0) (fma beta alpha alpha)) (+ (+ 2 beta) alpha)) |
| 66.0ms | (/ (+ (fma beta alpha beta) (+ 1.0 alpha)) (+ beta (+ alpha 2))) |
994 calls. Slowest were:
| 732.0ms | (/ (sqrt (/ (/ (* (cbrt (+ (+ beta 1.0) (fma beta alpha alpha))) (cbrt (+ (+ beta 1.0) (fma beta alpha alpha)))) (* (cbrt (+ (+ 2 beta) alpha)) (cbrt (+ (+ 2 beta) alpha)))) 1)) (sqrt (+ (+ 1.0 alpha) (+ 2 beta)))) |
| 625.0ms | (* (+ (* 1.0 1.0) (- (* alpha alpha) (* 1.0 alpha))) (+ (* 2 2) (- (* beta beta) (* 2 beta)))) |
| 581.0ms | (/ (sqrt (/ (+ (* (+ 2 beta) (+ 2 beta)) (- (* alpha alpha) (* (+ 2 beta) alpha))) (cbrt (+ (+ 2 beta) alpha)))) (+ (+ 1.0 alpha) (+ 2 beta))) |
7 alts after pruning (5 fresh and 2 done)
Merged error: 1.3b
Found 4 expressions with local error:
| 13.0b | (/ (* (cbrt (+ (fma beta alpha alpha) (+ beta 1.0))) (cbrt (+ (fma beta alpha alpha) (+ beta 1.0)))) (/ (+ (+ alpha beta) (* 2 1)) (/ (cbrt (+ (+ (+ alpha beta) (* beta alpha)) 1.0)) (+ (+ alpha beta) (* 2 1))))) |
| 3.6b | (cbrt (+ (fma beta alpha alpha) (+ beta 1.0))) |
| 3.6b | (cbrt (+ (fma beta alpha alpha) (+ beta 1.0))) |
| 3.6b | (cbrt (+ (+ (+ alpha beta) (* beta alpha)) 1.0)) |
4 calls. Slowest were:
| 36.0ms | (/ (* (cbrt (+ (fma beta alpha alpha) (+ beta 1.0))) (cbrt (+ (fma beta alpha alpha) (+ beta 1.0)))) (/ (+ (+ alpha beta) (* 2 1)) (/ (cbrt (+ (+ (+ alpha beta) (* beta alpha)) 1.0)) (+ (+ alpha beta) (* 2 1))))) |
| 7.0ms | (cbrt (+ (+ (+ alpha beta) (* beta alpha)) 1.0)) |
| 2.0ms | (cbrt (+ (fma beta alpha alpha) (+ beta 1.0))) |
4 calls. Slowest were:
| 815.0ms | (/ (* (cbrt (+ (fma beta alpha alpha) (+ beta 1.0))) (cbrt (+ (fma beta alpha alpha) (+ beta 1.0)))) (/ (+ (+ alpha beta) (* 2 1)) (/ (cbrt (+ (+ (+ alpha beta) (* beta alpha)) 1.0)) (+ (+ alpha beta) (* 2 1))))) |
| 41.0ms | (cbrt (+ (fma beta alpha alpha) (+ beta 1.0))) |
| 41.0ms | (cbrt (+ (fma beta alpha alpha) (+ beta 1.0))) |
| 41.0ms | (cbrt (+ (+ (+ alpha beta) (* beta alpha)) 1.0)) |
282 calls. Slowest were:
| 764.0ms | (cbrt (+ (pow (+ (+ alpha beta) (* beta alpha)) 3) (pow 1.0 3))) |
| 487.0ms | (cbrt (- (* (+ (+ alpha beta) (* beta alpha)) (+ (+ alpha beta) (* beta alpha))) (* 1.0 1.0))) |
| 433.0ms | (/ (cbrt (+ (fma beta alpha alpha) (+ beta 1.0))) (/ (+ (+ alpha beta) (* 2 1)) (/ (cbrt (+ (+ (+ alpha beta) (* beta alpha)) 1.0)) (+ (+ alpha beta) (* 2 1))))) |
7 alts after pruning (4 fresh and 3 done)
Merged error: 1.3b
89.3% (0.3b remaining)
Error of 1.4b against oracle of 1.2b and baseline of 3.7b