Average Error: 23.4 → 12.6
Time: 39.5s
Precision: 64
Internal Precision: 128
\[\frac{\frac{\frac{\left(\alpha + \beta\right) \cdot \left(\beta - \alpha\right)}{\left(\alpha + \beta\right) + 2 \cdot i}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) + 2.0} + 1.0}{2.0}\]
\[\frac{\log \left(e^{(\left(\frac{\beta - \alpha}{(2 \cdot i + \alpha)_* + \left(2.0 + \beta\right)}\right) \cdot \left(\frac{\alpha + \beta}{\beta + (2 \cdot i + \alpha)_*}\right) + 1.0)_*}\right)}{2.0}\]

Error

Bits error versus alpha

Bits error versus beta

Bits error versus i

Derivation

  1. Initial program 23.4

    \[\frac{\frac{\frac{\left(\alpha + \beta\right) \cdot \left(\beta - \alpha\right)}{\left(\alpha + \beta\right) + 2 \cdot i}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) + 2.0} + 1.0}{2.0}\]
  2. Simplified12.6

    \[\leadsto \color{blue}{\frac{(\left(\frac{\beta - \alpha}{\left(\beta + 2.0\right) + (2 \cdot i + \alpha)_*}\right) \cdot \left(\frac{\beta + \alpha}{(2 \cdot i + \alpha)_* + \beta}\right) + 1.0)_*}{2.0}}\]
  3. Using strategy rm
  4. Applied add-log-exp12.6

    \[\leadsto \frac{\color{blue}{\log \left(e^{(\left(\frac{\beta - \alpha}{\left(\beta + 2.0\right) + (2 \cdot i + \alpha)_*}\right) \cdot \left(\frac{\beta + \alpha}{(2 \cdot i + \alpha)_* + \beta}\right) + 1.0)_*}\right)}}{2.0}\]
  5. Final simplification12.6

    \[\leadsto \frac{\log \left(e^{(\left(\frac{\beta - \alpha}{(2 \cdot i + \alpha)_* + \left(2.0 + \beta\right)}\right) \cdot \left(\frac{\alpha + \beta}{\beta + (2 \cdot i + \alpha)_*}\right) + 1.0)_*}\right)}{2.0}\]

Reproduce

herbie shell --seed 2019005 +o rules:numerics
(FPCore (alpha beta i)
  :name "Octave 3.8, jcobi/2"
  :pre (and (> alpha -1) (> beta -1) (> i 0))
  (/ (+ (/ (/ (* (+ alpha beta) (- beta alpha)) (+ (+ alpha beta) (* 2 i))) (+ (+ (+ alpha beta) (* 2 i)) 2.0)) 1.0) 2.0))

Details

Time bar (total: 37.7s)Debug log

sample96.0ms

Algorithm
intervals

simplify561.0ms

Counts
1 → 1
Calls

1 calls. Slowest were:

561.0ms
(/ (+ (/ (/ (* (+ alpha beta) (- beta alpha)) (+ (+ alpha beta) (* 2 i))) (+ (+ (+ alpha beta) (* 2 i)) 2.0)) 1.0) 2.0)

prune12.0ms

Pruning

1 alts after pruning (1 fresh and 0 done)

Merged error: 14.0b

localize34.0ms

Local error

Found 3 expressions with local error:

2.7b
(fma (/ (- beta alpha) (+ (+ beta 2.0) (fma 2 i alpha))) (/ (+ beta alpha) (+ (fma 2 i alpha) beta)) 1.0)
0.0b
(/ (- beta alpha) (+ (+ beta 2.0) (fma 2 i alpha)))
0.0b
(/ (+ beta alpha) (+ (fma 2 i alpha) beta))

rewrite23.0ms

Algorithm
rewrite-expression-head
Counts
3 → 81
Calls

3 calls. Slowest were:

11.0ms
(/ (+ beta alpha) (+ (fma 2 i alpha) beta))
10.0ms
(/ (- beta alpha) (+ (+ beta 2.0) (fma 2 i alpha)))
0.0ms
(fma (/ (- beta alpha) (+ (+ beta 2.0) (fma 2 i alpha))) (/ (+ beta alpha) (+ (fma 2 i alpha) beta)) 1.0)

series238.0ms

Counts
3 → 9
Calls

3 calls. Slowest were:

119.0ms
(fma (/ (- beta alpha) (+ (+ beta 2.0) (fma 2 i alpha))) (/ (+ beta alpha) (+ (fma 2 i alpha) beta)) 1.0)
70.0ms
(/ (- beta alpha) (+ (+ beta 2.0) (fma 2 i alpha)))
48.0ms
(/ (+ beta alpha) (+ (fma 2 i alpha) beta))

simplify3.1s

Counts
75 → 90
Calls

75 calls. Slowest were:

346.0ms
(+ (* (+ beta 2.0) (+ beta 2.0)) (- (* (fma 2 i alpha) (fma 2 i alpha)) (* (+ beta 2.0) (fma 2 i alpha))))
183.0ms
(/ (* (* (- beta alpha) (- beta alpha)) (- beta alpha)) (* (* (+ (+ beta 2.0) (fma 2 i alpha)) (+ (+ beta 2.0) (fma 2 i alpha))) (+ (+ beta 2.0) (fma 2 i alpha))))
153.0ms
(- (+ (* 4.0 (/ 1 (pow beta 2))) 2.0) (* 2.0 (/ 1 beta)))

prune1.1s

Pruning

11 alts after pruning (11 fresh and 0 done)

Merged error: 13.7b

localize11.0ms

Local error

Found 4 expressions with local error:

3.9b
(fma (/ (- beta alpha) (+ (+ beta 2.0) (fma 2 i alpha))) (* (+ beta alpha) (/ 1 (+ (fma 2 i alpha) beta))) 1.0)
0.2b
(* (+ beta alpha) (/ 1 (+ (fma 2 i alpha) beta)))
0.0b
(/ (- beta alpha) (+ (+ beta 2.0) (fma 2 i alpha)))
0.0b
(/ 1 (+ (fma 2 i alpha) beta))

rewrite15.0ms

Algorithm
rewrite-expression-head
Counts
4 → 97
Calls

4 calls. Slowest were:

6.0ms
(/ (- beta alpha) (+ (+ beta 2.0) (fma 2 i alpha)))
4.0ms
(* (+ beta alpha) (/ 1 (+ (fma 2 i alpha) beta)))
2.0ms
(/ 1 (+ (fma 2 i alpha) beta))

series302.0ms

Counts
4 → 12
Calls

4 calls. Slowest were:

131.0ms
(fma (/ (- beta alpha) (+ (+ beta 2.0) (fma 2 i alpha))) (* (+ beta alpha) (/ 1 (+ (fma 2 i alpha) beta))) 1.0)
70.0ms
(/ (- beta alpha) (+ (+ beta 2.0) (fma 2 i alpha)))
55.0ms
(* (+ beta alpha) (/ 1 (+ (fma 2 i alpha) beta)))
45.0ms
(/ 1 (+ (fma 2 i alpha) beta))

simplify4.4s

Counts
75 → 109
Calls

75 calls. Slowest were:

554.0ms
(* (- (* beta beta) (* alpha alpha)) (/ 1 (+ (fma 2 i alpha) beta)))
377.0ms
(+ (* (+ beta 2.0) (+ beta 2.0)) (- (* (fma 2 i alpha) (fma 2 i alpha)) (* (+ beta 2.0) (fma 2 i alpha))))
241.0ms
(* (+ (* beta beta) (- (* alpha alpha) (* beta alpha))) (+ (fma 2 i alpha) beta))

prune1.5s

Pruning

12 alts after pruning (12 fresh and 0 done)

Merged error: 13.7b

localize20.0ms

Local error

Found 4 expressions with local error:

3.9b
(+ (* (/ (- beta alpha) (+ (+ beta 2.0) (fma 2 i alpha))) (* (+ beta alpha) (/ 1 (+ (fma 2 i alpha) beta)))) 1.0)
0.2b
(* (+ beta alpha) (/ 1 (+ (fma 2 i alpha) beta)))
0.1b
(* (/ (- beta alpha) (+ (+ beta 2.0) (fma 2 i alpha))) (* (+ beta alpha) (/ 1 (+ (fma 2 i alpha) beta))))
0.0b
(/ (- beta alpha) (+ (+ beta 2.0) (fma 2 i alpha)))

rewrite50.0ms

Algorithm
rewrite-expression-head
Counts
4 → 134
Calls

4 calls. Slowest were:

17.0ms
(+ (* (/ (- beta alpha) (+ (+ beta 2.0) (fma 2 i alpha))) (* (+ beta alpha) (/ 1 (+ (fma 2 i alpha) beta)))) 1.0)
16.0ms
(* (/ (- beta alpha) (+ (+ beta 2.0) (fma 2 i alpha))) (* (+ beta alpha) (/ 1 (+ (fma 2 i alpha) beta))))
9.0ms
(/ (- beta alpha) (+ (+ beta 2.0) (fma 2 i alpha)))

series423.0ms

Counts
4 → 12
Calls

4 calls. Slowest were:

170.0ms
(* (/ (- beta alpha) (+ (+ beta 2.0) (fma 2 i alpha))) (* (+ beta alpha) (/ 1 (+ (fma 2 i alpha) beta))))
149.0ms
(+ (* (/ (- beta alpha) (+ (+ beta 2.0) (fma 2 i alpha))) (* (+ beta alpha) (/ 1 (+ (fma 2 i alpha) beta)))) 1.0)
55.0ms
(* (+ beta alpha) (/ 1 (+ (fma 2 i alpha) beta)))
50.0ms
(/ (- beta alpha) (+ (+ beta 2.0) (fma 2 i alpha)))

simplify14.0s

Counts
119 → 146
Calls

119 calls. Slowest were:

788.0ms
(* (- (* beta beta) (* alpha alpha)) (/ 1 (+ (fma 2 i alpha) beta)))
723.0ms
(+ (- (log (- beta alpha)) (log (+ (+ beta 2.0) (fma 2 i alpha)))) (+ (log (+ beta alpha)) (log (/ 1 (+ (fma 2 i alpha) beta)))))
717.0ms
(* (- beta alpha) (* (+ (pow beta 3) (pow alpha 3)) 1))

prune2.0s

Pruning

11 alts after pruning (11 fresh and 0 done)

Merged error: 13.7b

localize9.0ms

Local error

Found 4 expressions with local error:

2.7b
(fma (/ (- beta alpha) (+ (+ beta 2.0) (fma 2 i alpha))) (/ (+ beta alpha) (+ (fma 2 i alpha) beta)) 1.0)
2.7b
(log (exp (fma (/ (- beta alpha) (+ (+ beta 2.0) (fma 2 i alpha))) (/ (+ beta alpha) (+ (fma 2 i alpha) beta)) 1.0)))
0.0b
(/ (- beta alpha) (+ (+ beta 2.0) (fma 2 i alpha)))
0.0b
(exp (fma (/ (- beta alpha) (+ (+ beta 2.0) (fma 2 i alpha))) (/ (+ beta alpha) (+ (fma 2 i alpha) beta)) 1.0))

rewrite10.0ms

Algorithm
rewrite-expression-head
Counts
4 → 80
Calls

4 calls. Slowest were:

6.0ms
(/ (- beta alpha) (+ (+ beta 2.0) (fma 2 i alpha)))
2.0ms
(log (exp (fma (/ (- beta alpha) (+ (+ beta 2.0) (fma 2 i alpha))) (/ (+ beta alpha) (+ (fma 2 i alpha) beta)) 1.0)))
1.0ms
(exp (fma (/ (- beta alpha) (+ (+ beta 2.0) (fma 2 i alpha))) (/ (+ beta alpha) (+ (fma 2 i alpha) beta)) 1.0))

series477.0ms

Counts
4 → 12
Calls

4 calls. Slowest were:

180.0ms
(exp (fma (/ (- beta alpha) (+ (+ beta 2.0) (fma 2 i alpha))) (/ (+ beta alpha) (+ (fma 2 i alpha) beta)) 1.0))
123.0ms
(fma (/ (- beta alpha) (+ (+ beta 2.0) (fma 2 i alpha))) (/ (+ beta alpha) (+ (fma 2 i alpha) beta)) 1.0)
122.0ms
(log (exp (fma (/ (- beta alpha) (+ (+ beta 2.0) (fma 2 i alpha))) (/ (+ beta alpha) (+ (fma 2 i alpha) beta)) 1.0)))
52.0ms
(/ (- beta alpha) (+ (+ beta 2.0) (fma 2 i alpha)))

simplify4.7s

Counts
62 → 92
Calls

62 calls. Slowest were:

379.0ms
(+ (* (+ beta 2.0) (+ beta 2.0)) (- (* (fma 2 i alpha) (fma 2 i alpha)) (* (+ beta 2.0) (fma 2 i alpha))))
212.0ms
(/ (* (* (- beta alpha) (- beta alpha)) (- beta alpha)) (* (* (+ (+ beta 2.0) (fma 2 i alpha)) (+ (+ beta 2.0) (fma 2 i alpha))) (+ (+ beta 2.0) (fma 2 i alpha))))
205.0ms
(- (+ (* 4.0 (/ 1 (pow beta 2))) 2.0) (* 2.0 (/ 1 beta)))

prune1.4s

Pruning

13 alts after pruning (12 fresh and 1 done)

Merged error: 13.7b

regimes336.0ms

Accuracy

0% (0.3b remaining)

Error of 12.6b against oracle of 12.3b and baseline of 12.6b

bsearch2.0ms

end0.0ms

sample2.9s

Algorithm
intervals