Average Error: 30.4 → 30.3
Time: 6.9s
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 r70960 = a;
        double r70961 = asin(r70960);
        double r70962 = fmod(r70960, r70961);
        double r70963 = atan(r70962);
        double r70964 = r70960 * r70960;
        double r70965 = pow(r70963, r70964);
        return r70965;
}

double f(double a) {
        double r70966 = a;
        double r70967 = asin(r70966);
        double r70968 = fmod(r70966, r70967);
        double r70969 = atan(r70968);
        double r70970 = r70966 * r70966;
        double r70971 = 2.0;
        double r70972 = r70970 / r70971;
        double r70973 = pow(r70969, r70972);
        double r70974 = r70973 * r70973;
        return r70974;
}

Error

Bits error versus a

Derivation

  1. Initial program 30.4

    \[{\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-pow30.3

    \[\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 simplification30.3

    \[\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 2020064 +o rules:numerics
(FPCore (a)
  :name "Fuzzer 002"
  :precision binary64
  (pow (atan (fmod a (asin a))) (* a a)))