Average Error: 16.1 → 15.6
Time: 8.6s
Precision: binary64
\[\alpha > -1 \land \beta > -1\]
\[\frac{\frac{\beta - \alpha}{\left(\alpha + \beta\right) + 2} + 1}{2}\]
\[\frac{\frac{\beta}{\left(\beta + \alpha\right) + 2} - \log \left(e^{\frac{\alpha}{\left(\beta + \alpha\right) + 2} - 1}\right)}{2}\]
\frac{\frac{\beta - \alpha}{\left(\alpha + \beta\right) + 2} + 1}{2}
\frac{\frac{\beta}{\left(\beta + \alpha\right) + 2} - \log \left(e^{\frac{\alpha}{\left(\beta + \alpha\right) + 2} - 1}\right)}{2}
(FPCore (alpha beta)
 :precision binary64
 (/ (+ (/ (- beta alpha) (+ (+ alpha beta) 2.0)) 1.0) 2.0))
(FPCore (alpha beta)
 :precision binary64
 (/
  (-
   (/ beta (+ (+ beta alpha) 2.0))
   (log (exp (- (/ alpha (+ (+ beta alpha) 2.0)) 1.0))))
  2.0))
double code(double alpha, double beta) {
	return (((beta - alpha) / ((alpha + beta) + 2.0)) + 1.0) / 2.0;
}
double code(double alpha, double beta) {
	return ((beta / ((beta + alpha) + 2.0)) - log(exp((alpha / ((beta + alpha) + 2.0)) - 1.0))) / 2.0;
}

Error

Bits error versus alpha

Bits error versus beta

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 16.1

    \[\frac{\frac{\beta - \alpha}{\left(\alpha + \beta\right) + 2} + 1}{2}\]
  2. Using strategy rm
  3. Applied div-sub_binary6416.1

    \[\leadsto \frac{\color{blue}{\left(\frac{\beta}{\left(\alpha + \beta\right) + 2} - \frac{\alpha}{\left(\alpha + \beta\right) + 2}\right)} + 1}{2}\]
  4. Applied associate-+l-_binary6415.6

    \[\leadsto \frac{\color{blue}{\frac{\beta}{\left(\alpha + \beta\right) + 2} - \left(\frac{\alpha}{\left(\alpha + \beta\right) + 2} - 1\right)}}{2}\]
  5. Simplified15.6

    \[\leadsto \frac{\frac{\beta}{\left(\alpha + \beta\right) + 2} - \color{blue}{\left(\frac{\alpha}{\left(\beta + \alpha\right) + 2} - 1\right)}}{2}\]
  6. Using strategy rm
  7. Applied add-log-exp_binary6415.6

    \[\leadsto \frac{\frac{\beta}{\left(\alpha + \beta\right) + 2} - \color{blue}{\log \left(e^{\frac{\alpha}{\left(\beta + \alpha\right) + 2} - 1}\right)}}{2}\]
  8. Simplified15.6

    \[\leadsto \frac{\frac{\beta}{\left(\alpha + \beta\right) + 2} - \log \color{blue}{\left(e^{\frac{\alpha}{\left(\alpha + \beta\right) + 2} - 1}\right)}}{2}\]
  9. Final simplification15.6

    \[\leadsto \frac{\frac{\beta}{\left(\beta + \alpha\right) + 2} - \log \left(e^{\frac{\alpha}{\left(\beta + \alpha\right) + 2} - 1}\right)}{2}\]

Reproduce

herbie shell --seed 2020277 
(FPCore (alpha beta)
  :name "Octave 3.8, jcobi/1"
  :precision binary64
  :pre (and (> alpha -1.0) (> beta -1.0))
  (/ (+ (/ (- beta alpha) (+ (+ alpha beta) 2.0)) 1.0) 2.0))