Average Error: 0.0 → 0.0
Time: 10.1s
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 r16953 = 2.0;
        double r16954 = 1.0;
        double r16955 = x;
        double r16956 = r16954 - r16955;
        double r16957 = r16954 + r16955;
        double r16958 = r16956 / r16957;
        double r16959 = sqrt(r16958);
        double r16960 = atan(r16959);
        double r16961 = r16953 * r16960;
        return r16961;
}

double f(double x) {
        double r16962 = 2.0;
        double r16963 = 1.0;
        double r16964 = x;
        double r16965 = r16963 - r16964;
        double r16966 = r16963 + r16964;
        double r16967 = r16965 / r16966;
        double r16968 = sqrt(r16967);
        double r16969 = atan(r16968);
        double r16970 = r16962 * r16969;
        return r16970;
}

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 2019322 +o rules:numerics
(FPCore (x)
  :name "arccos"
  :precision binary64
  (* 2 (atan (sqrt (/ (- 1 x) (+ 1 x))))))