Average Error: 0.0 → 0.0
Time: 11.8s
Precision: 64
\[2 \cdot \tan^{-1} \left(\sqrt{\frac{1 - x}{1 + x}}\right)\]
\[2 \cdot \tan^{-1} \left(\sqrt{\frac{1 - x}{1 + x}}\right)\]
2 \cdot \tan^{-1} \left(\sqrt{\frac{1 - x}{1 + x}}\right)
2 \cdot \tan^{-1} \left(\sqrt{\frac{1 - x}{1 + x}}\right)
double f(double x) {
        double r24331 = 2.0;
        double r24332 = 1.0;
        double r24333 = x;
        double r24334 = r24332 - r24333;
        double r24335 = r24332 + r24333;
        double r24336 = r24334 / r24335;
        double r24337 = sqrt(r24336);
        double r24338 = atan(r24337);
        double r24339 = r24331 * r24338;
        return r24339;
}

double f(double x) {
        double r24340 = 2.0;
        double r24341 = 1.0;
        double r24342 = x;
        double r24343 = r24341 - r24342;
        double r24344 = r24341 + r24342;
        double r24345 = r24343 / r24344;
        double r24346 = sqrt(r24345);
        double r24347 = atan(r24346);
        double r24348 = r24340 * r24347;
        return r24348;
}

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

    \[2 \cdot \tan^{-1} \left(\sqrt{\frac{1 - x}{1 + x}}\right)\]
  2. Final simplification0.0

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

Reproduce

herbie shell --seed 2019326 +o rules:numerics
(FPCore (x)
  :name "arccos"
  :precision binary64
  (* 2 (atan (sqrt (/ (- 1 x) (+ 1 x))))))