Average Error: 0.0 → 0.0
Time: 17.0s
Precision: 64
\[\frac{-\left(f + n\right)}{f - n}\]
\[\log \left(e^{\frac{-1}{\log \left(e^{\frac{f - n}{f + n}}\right)}}\right)\]
\frac{-\left(f + n\right)}{f - n}
\log \left(e^{\frac{-1}{\log \left(e^{\frac{f - n}{f + n}}\right)}}\right)
double f(double f, double n) {
        double r1119273 = f;
        double r1119274 = n;
        double r1119275 = r1119273 + r1119274;
        double r1119276 = -r1119275;
        double r1119277 = r1119273 - r1119274;
        double r1119278 = r1119276 / r1119277;
        return r1119278;
}

double f(double f, double n) {
        double r1119279 = -1.0;
        double r1119280 = f;
        double r1119281 = n;
        double r1119282 = r1119280 - r1119281;
        double r1119283 = r1119280 + r1119281;
        double r1119284 = r1119282 / r1119283;
        double r1119285 = exp(r1119284);
        double r1119286 = log(r1119285);
        double r1119287 = r1119279 / r1119286;
        double r1119288 = exp(r1119287);
        double r1119289 = log(r1119288);
        return r1119289;
}

Error

Bits error versus f

Bits error versus n

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 0.0

    \[\frac{-\left(f + n\right)}{f - n}\]
  2. Using strategy rm
  3. Applied add-log-exp0.0

    \[\leadsto \color{blue}{\log \left(e^{\frac{-\left(f + n\right)}{f - n}}\right)}\]
  4. Using strategy rm
  5. Applied neg-mul-10.0

    \[\leadsto \log \left(e^{\frac{\color{blue}{-1 \cdot \left(f + n\right)}}{f - n}}\right)\]
  6. Applied associate-/l*0.0

    \[\leadsto \log \left(e^{\color{blue}{\frac{-1}{\frac{f - n}{f + n}}}}\right)\]
  7. Using strategy rm
  8. Applied add-log-exp0.0

    \[\leadsto \log \left(e^{\frac{-1}{\color{blue}{\log \left(e^{\frac{f - n}{f + n}}\right)}}}\right)\]
  9. Final simplification0.0

    \[\leadsto \log \left(e^{\frac{-1}{\log \left(e^{\frac{f - n}{f + n}}\right)}}\right)\]

Reproduce

herbie shell --seed 2019164 
(FPCore (f n)
  :name "subtraction fraction"
  (/ (- (+ f n)) (- f n)))