


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
rmApplied add-sqr-sqrt0.2
Applied associate-/l*0.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
(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: 8.9m)Debug log
1 calls. Slowest were:
| 662.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:
| 118.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))) (+ (+ alpha beta) (* 2 1))) |
| 39.0ms | (/ (+ (+ (+ alpha beta) (* beta alpha)) 1.0) (+ (+ alpha beta) (* 2 1))) |
4 calls. Slowest were:
| 96.0ms | (/ (/ (/ (+ (+ (+ alpha beta) (* beta alpha)) 1.0) (+ (+ alpha beta) (* 2 1))) (+ (+ alpha beta) (* 2 1))) (+ (+ (+ alpha beta) (* 2 1)) 1.0)) |
| 82.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))) |
| 13.0ms | (+ (+ (+ alpha beta) (* 2 1)) 1.0) |
524 calls. Slowest were:
| 737.0ms | (/ (/ (/ (+ (+ (+ alpha beta) (* beta alpha)) 1.0) (+ (+ alpha beta) (* 2 1))) (+ (+ alpha beta) (* 2 1))) (+ (+ (+ alpha beta) (* 2 1)) 1.0)) |
| 736.0ms | (+ (pow (+ (+ alpha beta) (* beta alpha)) 3) (pow 1.0 3)) |
| 725.0ms | (/ (/ (/ (+ (+ (+ alpha beta) (* beta alpha)) 1.0) (+ (+ alpha beta) (* 2 1))) (sqrt (+ (+ alpha beta) (* 2 1)))) (+ (+ (+ alpha beta) (* 2 1)) 1.0)) |
8 alts after pruning (8 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:
| 65.0ms | (/ (+ (+ (+ alpha beta) (* beta alpha)) 1.0) (+ (+ alpha beta) (* 2 1))) |
| 64.0ms | (sqrt (/ (/ (/ (+ (+ (+ alpha beta) (* beta alpha)) 1.0) (+ (+ alpha beta) (* 2 1))) (+ (+ alpha beta) (* 2 1))) (+ (+ (+ alpha beta) (* 2 1)) 1.0))) |
| 49.0ms | (sqrt (/ (/ (/ (+ (+ (+ alpha beta) (* beta alpha)) 1.0) (+ (+ alpha beta) (* 2 1))) (+ (+ alpha beta) (* 2 1))) (+ (+ (+ alpha beta) (* 2 1)) 1.0))) |
4 calls. Slowest were:
| 181.0ms | (sqrt (/ (/ (/ (+ (+ (+ alpha beta) (* beta alpha)) 1.0) (+ (+ alpha beta) (* 2 1))) (+ (+ alpha beta) (* 2 1))) (+ (+ (+ alpha beta) (* 2 1)) 1.0))) |
| 167.0ms | (sqrt (/ (/ (/ (+ (+ (+ alpha beta) (* beta alpha)) 1.0) (+ (+ alpha beta) (* 2 1))) (+ (+ alpha beta) (* 2 1))) (+ (+ (+ alpha beta) (* 2 1)) 1.0))) |
| 65.0ms | (/ (+ (+ (+ alpha beta) (* beta alpha)) 1.0) (+ (+ alpha beta) (* 2 1))) |
| 56.0ms | (/ (+ (+ (+ alpha beta) (* beta alpha)) 1.0) (+ (+ alpha beta) (* 2 1))) |
398 calls. Slowest were:
| 711.0ms | (sqrt (sqrt (/ (/ (/ (+ (+ (+ alpha beta) (* beta alpha)) 1.0) (+ (+ alpha beta) (* 2 1))) (+ (+ alpha beta) (* 2 1))) (+ (+ (+ alpha beta) (* 2 1)) 1.0)))) |
| 707.0ms | (+ (pow (+ (+ alpha beta) (* beta alpha)) 3) (pow 1.0 3)) |
| 700.0ms | (+ (pow (+ (+ alpha beta) (* beta alpha)) 3) (pow 1.0 3)) |
8 alts after pruning (7 fresh and 1 done)
Merged error: 1.3b
Found 4 expressions with local error:
| 15.0b | (sqrt (/ (/ (/ (sqrt (+ (+ (+ alpha beta) (* beta alpha)) 1.0)) (/ (+ (+ alpha beta) (* 2 1)) (sqrt (+ (+ (+ alpha beta) (* beta alpha)) 1.0)))) (+ (+ 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.3b | (sqrt (+ (+ (+ alpha beta) (* beta alpha)) 1.0)) |
4 calls. Slowest were:
| 123.0ms | (sqrt (/ (/ (/ (sqrt (+ (+ (+ alpha beta) (* beta alpha)) 1.0)) (/ (+ (+ alpha beta) (* 2 1)) (sqrt (+ (+ (+ alpha beta) (* beta alpha)) 1.0)))) (+ (+ alpha beta) (* 2 1))) (+ (+ (+ alpha beta) (* 2 1)) 1.0))) |
| 65.0ms | (sqrt (/ (/ (/ (+ (+ (+ alpha beta) (* beta alpha)) 1.0) (+ (+ alpha beta) (* 2 1))) (+ (+ alpha beta) (* 2 1))) (+ (+ (+ alpha beta) (* 2 1)) 1.0))) |
| 35.0ms | (/ (+ (+ (+ alpha beta) (* beta alpha)) 1.0) (+ (+ alpha beta) (* 2 1))) |
4 calls. Slowest were:
| 219.0ms | (sqrt (/ (/ (/ (sqrt (+ (+ (+ alpha beta) (* beta alpha)) 1.0)) (/ (+ (+ alpha beta) (* 2 1)) (sqrt (+ (+ (+ alpha beta) (* beta alpha)) 1.0)))) (+ (+ 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))) |
| 46.0ms | (/ (+ (+ (+ alpha beta) (* beta alpha)) 1.0) (+ (+ alpha beta) (* 2 1))) |
| 39.0ms | (sqrt (+ (+ (+ alpha beta) (* beta alpha)) 1.0)) |
1586 calls. Slowest were:
| 1.1s | (sqrt (/ (/ (/ (sqrt 1) (/ (* (cbrt (+ (+ alpha beta) (* 2 1))) (cbrt (+ (+ alpha beta) (* 2 1)))) (sqrt 1))) (sqrt (+ (+ alpha beta) (* 2 1)))) 1)) |
| 1.0s | (sqrt (/ (/ (/ (sqrt (sqrt (+ (+ (+ alpha beta) (* beta alpha)) 1.0))) (/ (* (cbrt (+ (+ alpha beta) (* 2 1))) (cbrt (+ (+ alpha beta) (* 2 1)))) 1)) (* (cbrt (+ (+ alpha beta) (* 2 1))) (cbrt (+ (+ alpha beta) (* 2 1))))) 1)) |
| 885.0ms | (sqrt (/ (/ (/ (sqrt (sqrt (+ (+ (+ alpha beta) (* beta alpha)) 1.0))) (/ (+ (+ alpha beta) (* 2 1)) (sqrt (+ (pow (+ (+ alpha beta) (* beta alpha)) 3) (pow 1.0 3))))) 1) 1)) |
8 alts after pruning (6 fresh and 2 done)
Merged error: 1.3b
Found 4 expressions with local error:
| 10.5b | (/ (sqrt (+ (+ (* alpha beta) alpha) (+ beta 1.0))) (* (+ (+ beta 2) alpha) (sqrt (+ (+ beta 2) (+ 1.0 alpha))))) |
| 3.3b | (sqrt (+ (+ 1.0 (+ beta alpha)) (* alpha beta))) |
| 3.3b | (sqrt (+ (+ (* alpha beta) alpha) (+ beta 1.0))) |
| 0.7b | (* (sqrt (+ (+ beta alpha) (+ 2 1.0))) (sqrt (+ beta (+ alpha 2)))) |
4 calls. Slowest were:
| 24.0ms | (/ (sqrt (+ (+ (* alpha beta) alpha) (+ beta 1.0))) (* (+ (+ beta 2) alpha) (sqrt (+ (+ beta 2) (+ 1.0 alpha))))) |
| 13.0ms | (* (sqrt (+ (+ beta alpha) (+ 2 1.0))) (sqrt (+ beta (+ alpha 2)))) |
| 9.0ms | (sqrt (+ (+ (* alpha beta) alpha) (+ beta 1.0))) |
4 calls. Slowest were:
| 125.0ms | (/ (sqrt (+ (+ (* alpha beta) alpha) (+ beta 1.0))) (* (+ (+ beta 2) alpha) (sqrt (+ (+ beta 2) (+ 1.0 alpha))))) |
| 35.0ms | (* (sqrt (+ (+ beta alpha) (+ 2 1.0))) (sqrt (+ beta (+ alpha 2)))) |
| 27.0ms | (sqrt (+ (+ 1.0 (+ beta alpha)) (* alpha beta))) |
| 26.0ms | (sqrt (+ (+ (* alpha beta) alpha) (+ beta 1.0))) |
129 calls. Slowest were:
| 452.0ms | (sqrt (- (* (+ 1.0 (+ beta alpha)) (+ 1.0 (+ beta alpha))) (* (* alpha beta) (* alpha beta)))) |
| 438.0ms | (sqrt (+ (pow (+ 1.0 (+ beta alpha)) 3) (pow (* alpha beta) 3))) |
| 388.0ms | (* (sqrt (+ (* (+ (pow beta 3) (pow alpha 3)) (+ (* 2 2) (- (* 1.0 1.0) (* 2 1.0)))) (* (+ (* beta beta) (- (* alpha alpha) (* beta alpha))) (+ (pow 2 3) (pow 1.0 3))))) (sqrt (+ (pow beta 3) (pow (+ alpha 2) 3)))) |
8 alts after pruning (5 fresh and 3 done)
Merged error: 1.3b
89% (0.3b remaining)
Error of 1.4b against oracle of 1.2b and baseline of 3.7b