Average Error: 32.5 → 0.1
Time: 19.3s
Precision: 64
\[\log \left(x + \sqrt{x \cdot x - 1}\right)\]
\[\log \left(x + \left(\sqrt{\sqrt{x + \sqrt{1}}} \cdot \sqrt{\sqrt{x - \sqrt{1}}}\right) \cdot \left(\sqrt{\sqrt{x + \sqrt{1}}} \cdot \sqrt{\sqrt{x - \sqrt{1}}}\right)\right)\]
\log \left(x + \sqrt{x \cdot x - 1}\right)
\log \left(x + \left(\sqrt{\sqrt{x + \sqrt{1}}} \cdot \sqrt{\sqrt{x - \sqrt{1}}}\right) \cdot \left(\sqrt{\sqrt{x + \sqrt{1}}} \cdot \sqrt{\sqrt{x - \sqrt{1}}}\right)\right)
double f(double x) {
        double r78396 = x;
        double r78397 = r78396 * r78396;
        double r78398 = 1.0;
        double r78399 = r78397 - r78398;
        double r78400 = sqrt(r78399);
        double r78401 = r78396 + r78400;
        double r78402 = log(r78401);
        return r78402;
}

double f(double x) {
        double r78403 = x;
        double r78404 = 1.0;
        double r78405 = sqrt(r78404);
        double r78406 = r78403 + r78405;
        double r78407 = sqrt(r78406);
        double r78408 = sqrt(r78407);
        double r78409 = r78403 - r78405;
        double r78410 = sqrt(r78409);
        double r78411 = sqrt(r78410);
        double r78412 = r78408 * r78411;
        double r78413 = r78412 * r78412;
        double r78414 = r78403 + r78413;
        double r78415 = log(r78414);
        return r78415;
}

Error

Bits error versus x

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 32.5

    \[\log \left(x + \sqrt{x \cdot x - 1}\right)\]
  2. Using strategy rm
  3. Applied add-sqr-sqrt32.5

    \[\leadsto \log \left(x + \sqrt{x \cdot x - \color{blue}{\sqrt{1} \cdot \sqrt{1}}}\right)\]
  4. Applied difference-of-squares32.5

    \[\leadsto \log \left(x + \sqrt{\color{blue}{\left(x + \sqrt{1}\right) \cdot \left(x - \sqrt{1}\right)}}\right)\]
  5. Applied sqrt-prod0.1

    \[\leadsto \log \left(x + \color{blue}{\sqrt{x + \sqrt{1}} \cdot \sqrt{x - \sqrt{1}}}\right)\]
  6. Using strategy rm
  7. Applied add-sqr-sqrt0.1

    \[\leadsto \log \left(x + \sqrt{x + \sqrt{1}} \cdot \sqrt{\color{blue}{\sqrt{x - \sqrt{1}} \cdot \sqrt{x - \sqrt{1}}}}\right)\]
  8. Applied sqrt-prod0.1

    \[\leadsto \log \left(x + \sqrt{x + \sqrt{1}} \cdot \color{blue}{\left(\sqrt{\sqrt{x - \sqrt{1}}} \cdot \sqrt{\sqrt{x - \sqrt{1}}}\right)}\right)\]
  9. Applied add-sqr-sqrt0.1

    \[\leadsto \log \left(x + \sqrt{\color{blue}{\sqrt{x + \sqrt{1}} \cdot \sqrt{x + \sqrt{1}}}} \cdot \left(\sqrt{\sqrt{x - \sqrt{1}}} \cdot \sqrt{\sqrt{x - \sqrt{1}}}\right)\right)\]
  10. Applied sqrt-prod0.1

    \[\leadsto \log \left(x + \color{blue}{\left(\sqrt{\sqrt{x + \sqrt{1}}} \cdot \sqrt{\sqrt{x + \sqrt{1}}}\right)} \cdot \left(\sqrt{\sqrt{x - \sqrt{1}}} \cdot \sqrt{\sqrt{x - \sqrt{1}}}\right)\right)\]
  11. Applied unswap-sqr0.1

    \[\leadsto \log \left(x + \color{blue}{\left(\sqrt{\sqrt{x + \sqrt{1}}} \cdot \sqrt{\sqrt{x - \sqrt{1}}}\right) \cdot \left(\sqrt{\sqrt{x + \sqrt{1}}} \cdot \sqrt{\sqrt{x - \sqrt{1}}}\right)}\right)\]
  12. Final simplification0.1

    \[\leadsto \log \left(x + \left(\sqrt{\sqrt{x + \sqrt{1}}} \cdot \sqrt{\sqrt{x - \sqrt{1}}}\right) \cdot \left(\sqrt{\sqrt{x + \sqrt{1}}} \cdot \sqrt{\sqrt{x - \sqrt{1}}}\right)\right)\]

Reproduce

herbie shell --seed 2019304 
(FPCore (x)
  :name "Hyperbolic arc-cosine"
  :precision binary64
  (log (+ x (sqrt (- (* x x) 1)))))