


Bits error versus alpha



Bits error versus beta



Bits error versus i
if beta < 1.3658131024756376e+144Initial program 51.1
rmApplied add-sqr-sqrt51.1
Applied times-frac35.6
Applied times-frac35.7
Simplified35.7
Simplified35.7
if 1.3658131024756376e+144 < beta Initial program 62.5
Taylor expanded around -inf 49.4
Final simplification38.1
herbie shell --seed 2019004 +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: 1.4m)Debug log
1 calls. Slowest were:
| 258.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: 51.3b
Found 4 expressions with local error:
| 45.5b | (/ (* (* i (+ (+ alpha beta) i)) (+ (* beta alpha) (* i (+ (+ alpha beta) i)))) (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i)))) |
| 32.4b | (/ (/ (* (* 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:
| 57.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)) |
| 24.0ms | (/ (* (* i (+ (+ alpha beta) i)) (+ (* beta alpha) (* i (+ (+ alpha beta) i)))) (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i)))) |
| 23.0ms | (* (* i (+ (+ alpha beta) i)) (+ (* beta alpha) (* i (+ (+ alpha beta) i)))) |
4 calls. Slowest were:
| 721.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)) |
| 173.0ms | (/ (* (* i (+ (+ alpha beta) i)) (+ (* beta alpha) (* i (+ (+ alpha beta) i)))) (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i)))) |
| 103.0ms | (* (* i (+ (+ alpha beta) i)) (+ (* beta alpha) (* i (+ (+ alpha beta) i)))) |
| 37.0ms | (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i))) |
191 calls. Slowest were:
| 1.0s | (* (* (* (* i (+ (+ alpha beta) i)) (* i (+ (+ alpha beta) i))) (* i (+ (+ alpha beta) i))) (* (* (+ (* beta alpha) (* i (+ (+ alpha beta) i))) (+ (* beta alpha) (* i (+ (+ alpha beta) i)))) (+ (* beta alpha) (* i (+ (+ alpha beta) i))))) |
| 846.0ms | (/ (/ (* (* i (+ (+ alpha beta) i)) (+ (* beta alpha) (* i (+ (+ alpha beta) i)))) (* (+ (+ alpha beta) (* 2 i)) (+ (pow (+ alpha beta) 3) (pow (* 2 i) 3)))) (sqrt (- (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i))) 1.0))) |
| 802.0ms | (* (- (* (+ alpha beta) (+ alpha beta)) (* (* 2 i) (* 2 i))) (- (* (+ alpha beta) (+ alpha beta)) (* (* 2 i) (* 2 i)))) |
7 alts after pruning (7 fresh and 0 done)
Merged error: 32.3b
Found 4 expressions with local error:
| 33.9b | (sqrt (fma (fma 2 i (+ alpha beta)) (fma 2 i (+ alpha beta)) (- 1.0))) |
| 33.9b | (sqrt (fma (fma i 2 (+ alpha beta)) (fma i 2 (+ alpha beta)) (- 1.0))) |
| 30.8b | (/ (fma (+ i (+ alpha beta)) i (* beta alpha)) (fma i 2 (+ alpha beta))) |
| 30.4b | (/ (fma (+ alpha beta) i (* i i)) (fma 2 i (+ alpha beta))) |
4 calls. Slowest were:
| 6.0ms | (/ (fma (+ alpha beta) i (* i i)) (fma 2 i (+ alpha beta))) |
| 6.0ms | (/ (fma (+ i (+ alpha beta)) i (* beta alpha)) (fma i 2 (+ alpha beta))) |
| 2.0ms | (sqrt (fma (fma 2 i (+ alpha beta)) (fma 2 i (+ alpha beta)) (- 1.0))) |
4 calls. Slowest were:
| 113.0ms | (sqrt (fma (fma i 2 (+ alpha beta)) (fma i 2 (+ alpha beta)) (- 1.0))) |
| 92.0ms | (sqrt (fma (fma 2 i (+ alpha beta)) (fma 2 i (+ alpha beta)) (- 1.0))) |
| 80.0ms | (/ (fma (+ alpha beta) i (* i i)) (fma 2 i (+ alpha beta))) |
| 56.0ms | (/ (fma (+ i (+ alpha beta)) i (* beta alpha)) (fma i 2 (+ alpha beta))) |
70 calls. Slowest were:
| 623.0ms | (sqrt (* (cbrt (fma (fma 2 i (+ alpha beta)) (fma 2 i (+ alpha beta)) (- 1.0))) (cbrt (fma (fma 2 i (+ alpha beta)) (fma 2 i (+ alpha beta)) (- 1.0))))) |
| 619.0ms | (sqrt (sqrt (fma (fma 2 i (+ alpha beta)) (fma 2 i (+ alpha beta)) (- 1.0)))) |
| 602.0ms | (sqrt (fma (fma 2 i (+ alpha beta)) (fma 2 i (+ alpha beta)) (- 1.0))) |
7 alts after pruning (6 fresh and 1 done)
Merged error: 32.3b
Found 4 expressions with local error:
| 33.9b | (sqrt (fma (fma 2 i (+ alpha beta)) (fma 2 i (+ alpha beta)) (- 1.0))) |
| 33.9b | (sqrt (fma (fma i 2 (+ alpha beta)) (fma i 2 (+ alpha beta)) (- 1.0))) |
| 31.7b | (cbrt (* (+ alpha i) (+ i beta))) |
| 31.7b | (cbrt (* (+ alpha i) (+ i beta))) |
4 calls. Slowest were:
| 4.0ms | (cbrt (* (+ alpha i) (+ i beta))) |
| 2.0ms | (cbrt (* (+ alpha i) (+ i beta))) |
| 2.0ms | (sqrt (fma (fma 2 i (+ alpha beta)) (fma 2 i (+ alpha beta)) (- 1.0))) |
4 calls. Slowest were:
| 290.0ms | (cbrt (* (+ alpha i) (+ i beta))) |
| 253.0ms | (cbrt (* (+ alpha i) (+ i beta))) |
| 102.0ms | (sqrt (fma (fma 2 i (+ alpha beta)) (fma 2 i (+ alpha beta)) (- 1.0))) |
| 87.0ms | (sqrt (fma (fma i 2 (+ alpha beta)) (fma i 2 (+ alpha beta)) (- 1.0))) |
38 calls. Slowest were:
| 639.0ms | (sqrt (sqrt (fma (fma i 2 (+ alpha beta)) (fma i 2 (+ alpha beta)) (- 1.0)))) |
| 628.0ms | (sqrt (sqrt (fma (fma 2 i (+ alpha beta)) (fma 2 i (+ alpha beta)) (- 1.0)))) |
| 610.0ms | (sqrt (* (cbrt (fma (fma 2 i (+ alpha beta)) (fma 2 i (+ alpha beta)) (- 1.0))) (cbrt (fma (fma 2 i (+ alpha beta)) (fma 2 i (+ alpha beta)) (- 1.0))))) |
7 alts after pruning (5 fresh and 2 done)
Merged error: 32.3b
Found 4 expressions with local error:
| 33.9b | (sqrt (fma (fma 2 i (+ alpha beta)) (fma 2 i (+ alpha beta)) (- 1.0))) |
| 33.9b | (sqrt (fma (fma i 2 (+ alpha beta)) (fma i 2 (+ alpha beta)) (- 1.0))) |
| 31.2b | (cbrt (fma (+ alpha beta) i (* i i))) |
| 31.2b | (cbrt (fma (+ alpha beta) i (* i i))) |
4 calls. Slowest were:
| 2.0ms | (sqrt (fma (fma 2 i (+ alpha beta)) (fma 2 i (+ alpha beta)) (- 1.0))) |
| 2.0ms | (sqrt (fma (fma i 2 (+ alpha beta)) (fma i 2 (+ alpha beta)) (- 1.0))) |
| 1.0ms | (cbrt (fma (+ alpha beta) i (* i i))) |
4 calls. Slowest were:
| 192.0ms | (cbrt (fma (+ alpha beta) i (* i i))) |
| 152.0ms | (cbrt (fma (+ alpha beta) i (* i i))) |
| 117.0ms | (sqrt (fma (fma 2 i (+ alpha beta)) (fma 2 i (+ alpha beta)) (- 1.0))) |
| 107.0ms | (sqrt (fma (fma i 2 (+ alpha beta)) (fma i 2 (+ alpha beta)) (- 1.0))) |
26 calls. Slowest were:
| 703.0ms | (sqrt (sqrt (fma (fma i 2 (+ alpha beta)) (fma i 2 (+ alpha beta)) (- 1.0)))) |
| 668.0ms | (sqrt (sqrt (fma (fma 2 i (+ alpha beta)) (fma 2 i (+ alpha beta)) (- 1.0)))) |
| 596.0ms | (sqrt (* (cbrt (fma (fma 2 i (+ alpha beta)) (fma 2 i (+ alpha beta)) (- 1.0))) (cbrt (fma (fma 2 i (+ alpha beta)) (fma 2 i (+ alpha beta)) (- 1.0))))) |
7 alts after pruning (4 fresh and 3 done)
Merged error: 32.3b
41.6% (1.4b remaining)
Error of 38.1b against oracle of 36.6b and baseline of 39.1b