Average Error: 0.0 → 0.0
Time: 7.0s
Precision: 64
\[\log \left(\frac{1}{x} + \frac{\sqrt{1 - x \cdot x}}{x}\right)\]
\[\log \left(\frac{1}{x} + \frac{\sqrt[3]{{\left(\sqrt{1 - x \cdot x}\right)}^{3}}}{x}\right)\]
\log \left(\frac{1}{x} + \frac{\sqrt{1 - x \cdot x}}{x}\right)
\log \left(\frac{1}{x} + \frac{\sqrt[3]{{\left(\sqrt{1 - x \cdot x}\right)}^{3}}}{x}\right)
double f(double x) {
        double r63472 = 1.0;
        double r63473 = x;
        double r63474 = r63472 / r63473;
        double r63475 = r63473 * r63473;
        double r63476 = r63472 - r63475;
        double r63477 = sqrt(r63476);
        double r63478 = r63477 / r63473;
        double r63479 = r63474 + r63478;
        double r63480 = log(r63479);
        return r63480;
}

double f(double x) {
        double r63481 = 1.0;
        double r63482 = x;
        double r63483 = r63481 / r63482;
        double r63484 = r63482 * r63482;
        double r63485 = r63481 - r63484;
        double r63486 = sqrt(r63485);
        double r63487 = 3.0;
        double r63488 = pow(r63486, r63487);
        double r63489 = cbrt(r63488);
        double r63490 = r63489 / r63482;
        double r63491 = r63483 + r63490;
        double r63492 = log(r63491);
        return r63492;
}

Error

Bits error versus x

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 0.0

    \[\log \left(\frac{1}{x} + \frac{\sqrt{1 - x \cdot x}}{x}\right)\]
  2. Using strategy rm
  3. Applied add-cbrt-cube0.0

    \[\leadsto \log \left(\frac{1}{x} + \frac{\color{blue}{\sqrt[3]{\left(\sqrt{1 - x \cdot x} \cdot \sqrt{1 - x \cdot x}\right) \cdot \sqrt{1 - x \cdot x}}}}{x}\right)\]
  4. Simplified0.0

    \[\leadsto \log \left(\frac{1}{x} + \frac{\sqrt[3]{\color{blue}{{\left(\sqrt{1 - x \cdot x}\right)}^{3}}}}{x}\right)\]
  5. Final simplification0.0

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

Reproduce

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