Average Error: 31.0 → 31.0
Time: 20.4s
Precision: 64
\[{\left(\tan^{-1} \left(a \bmod \left(\sin^{-1} a\right)\right)\right)}^{\left(a \cdot a\right)}\]
\[{\left(\tan^{-1} \left(a \bmod \left(\sin^{-1} a\right)\right)\right)}^{\left(\frac{a \cdot a}{2}\right)} \cdot {\left(\tan^{-1} \left(a \bmod \left(\sin^{-1} a\right)\right)\right)}^{\left(\frac{a \cdot a}{2}\right)}\]
{\left(\tan^{-1} \left(a \bmod \left(\sin^{-1} a\right)\right)\right)}^{\left(a \cdot a\right)}
{\left(\tan^{-1} \left(a \bmod \left(\sin^{-1} a\right)\right)\right)}^{\left(\frac{a \cdot a}{2}\right)} \cdot {\left(\tan^{-1} \left(a \bmod \left(\sin^{-1} a\right)\right)\right)}^{\left(\frac{a \cdot a}{2}\right)}
double f(double a) {
        double r69455 = a;
        double r69456 = asin(r69455);
        double r69457 = fmod(r69455, r69456);
        double r69458 = atan(r69457);
        double r69459 = r69455 * r69455;
        double r69460 = pow(r69458, r69459);
        return r69460;
}

double f(double a) {
        double r69461 = a;
        double r69462 = asin(r69461);
        double r69463 = fmod(r69461, r69462);
        double r69464 = atan(r69463);
        double r69465 = r69461 * r69461;
        double r69466 = 2.0;
        double r69467 = r69465 / r69466;
        double r69468 = pow(r69464, r69467);
        double r69469 = r69468 * r69468;
        return r69469;
}

Error

Bits error versus a

Derivation

  1. Initial program 31.0

    \[{\left(\tan^{-1} \left(a \bmod \left(\sin^{-1} a\right)\right)\right)}^{\left(a \cdot a\right)}\]
  2. Using strategy rm
  3. Applied sqr-pow31.0

    \[\leadsto \color{blue}{{\left(\tan^{-1} \left(a \bmod \left(\sin^{-1} a\right)\right)\right)}^{\left(\frac{a \cdot a}{2}\right)} \cdot {\left(\tan^{-1} \left(a \bmod \left(\sin^{-1} a\right)\right)\right)}^{\left(\frac{a \cdot a}{2}\right)}}\]
  4. Final simplification31.0

    \[\leadsto {\left(\tan^{-1} \left(a \bmod \left(\sin^{-1} a\right)\right)\right)}^{\left(\frac{a \cdot a}{2}\right)} \cdot {\left(\tan^{-1} \left(a \bmod \left(\sin^{-1} a\right)\right)\right)}^{\left(\frac{a \cdot a}{2}\right)}\]

Reproduce

herbie shell --seed 2019212 +o rules:numerics
(FPCore (a)
  :name "Fuzzer 002"
  :precision binary64
  (pow (atan (fmod a (asin a))) (* a a)))