Average Error: 0.4 → 0.5
Time: 26.5s
Precision: 64
\[0 \le u1 \le 1 \land 0 \le u2 \le 1\]
\[\left(\frac{1}{6} \cdot {\left(-2 \cdot \log u1\right)}^{0.5}\right) \cdot \cos \left(\left(2 \cdot \pi\right) \cdot u2\right) + 0.5\]
\[\sqrt[3]{\left(\left({\left(\log u1 \cdot -2\right)}^{0.5} \cdot \left(\cos \left(2 \cdot \left(\pi \cdot u2\right)\right) \cdot \frac{1}{6}\right)\right) \cdot \left({\left(\log u1 \cdot -2\right)}^{0.5} \cdot \left(\cos \left(2 \cdot \left(\pi \cdot u2\right)\right) \cdot \frac{1}{6}\right)\right)\right) \cdot \sqrt[3]{\left(\left({\left(\log u1 \cdot -2\right)}^{0.5} \cdot {\left(\log u1 \cdot -2\right)}^{0.5}\right) \cdot {\left(\log u1 \cdot -2\right)}^{0.5}\right) \cdot \left(\left(\left(\cos \left(2 \cdot \left(\pi \cdot u2\right)\right) \cdot \frac{1}{6}\right) \cdot \left(\cos \left(2 \cdot \left(\pi \cdot u2\right)\right) \cdot \frac{1}{6}\right)\right) \cdot \left(\cos \left(2 \cdot \left(\pi \cdot u2\right)\right) \cdot \frac{1}{6}\right)\right)}} + 0.5\]
\left(\frac{1}{6} \cdot {\left(-2 \cdot \log u1\right)}^{0.5}\right) \cdot \cos \left(\left(2 \cdot \pi\right) \cdot u2\right) + 0.5
\sqrt[3]{\left(\left({\left(\log u1 \cdot -2\right)}^{0.5} \cdot \left(\cos \left(2 \cdot \left(\pi \cdot u2\right)\right) \cdot \frac{1}{6}\right)\right) \cdot \left({\left(\log u1 \cdot -2\right)}^{0.5} \cdot \left(\cos \left(2 \cdot \left(\pi \cdot u2\right)\right) \cdot \frac{1}{6}\right)\right)\right) \cdot \sqrt[3]{\left(\left({\left(\log u1 \cdot -2\right)}^{0.5} \cdot {\left(\log u1 \cdot -2\right)}^{0.5}\right) \cdot {\left(\log u1 \cdot -2\right)}^{0.5}\right) \cdot \left(\left(\left(\cos \left(2 \cdot \left(\pi \cdot u2\right)\right) \cdot \frac{1}{6}\right) \cdot \left(\cos \left(2 \cdot \left(\pi \cdot u2\right)\right) \cdot \frac{1}{6}\right)\right) \cdot \left(\cos \left(2 \cdot \left(\pi \cdot u2\right)\right) \cdot \frac{1}{6}\right)\right)}} + 0.5
double f(double u1, double u2) {
        double r1864286 = 1.0;
        double r1864287 = 6.0;
        double r1864288 = r1864286 / r1864287;
        double r1864289 = -2.0;
        double r1864290 = u1;
        double r1864291 = log(r1864290);
        double r1864292 = r1864289 * r1864291;
        double r1864293 = 0.5;
        double r1864294 = pow(r1864292, r1864293);
        double r1864295 = r1864288 * r1864294;
        double r1864296 = 2.0;
        double r1864297 = atan2(1.0, 0.0);
        double r1864298 = r1864296 * r1864297;
        double r1864299 = u2;
        double r1864300 = r1864298 * r1864299;
        double r1864301 = cos(r1864300);
        double r1864302 = r1864295 * r1864301;
        double r1864303 = r1864302 + r1864293;
        return r1864303;
}

double f(double u1, double u2) {
        double r1864304 = u1;
        double r1864305 = log(r1864304);
        double r1864306 = -2.0;
        double r1864307 = r1864305 * r1864306;
        double r1864308 = 0.5;
        double r1864309 = pow(r1864307, r1864308);
        double r1864310 = 2.0;
        double r1864311 = atan2(1.0, 0.0);
        double r1864312 = u2;
        double r1864313 = r1864311 * r1864312;
        double r1864314 = r1864310 * r1864313;
        double r1864315 = cos(r1864314);
        double r1864316 = 0.16666666666666666;
        double r1864317 = r1864315 * r1864316;
        double r1864318 = r1864309 * r1864317;
        double r1864319 = r1864318 * r1864318;
        double r1864320 = r1864309 * r1864309;
        double r1864321 = r1864320 * r1864309;
        double r1864322 = r1864317 * r1864317;
        double r1864323 = r1864322 * r1864317;
        double r1864324 = r1864321 * r1864323;
        double r1864325 = cbrt(r1864324);
        double r1864326 = r1864319 * r1864325;
        double r1864327 = cbrt(r1864326);
        double r1864328 = r1864327 + r1864308;
        return r1864328;
}

Error

Bits error versus u1

Bits error versus u2

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 0.4

    \[\left(\frac{1}{6} \cdot {\left(-2 \cdot \log u1\right)}^{0.5}\right) \cdot \cos \left(\left(2 \cdot \pi\right) \cdot u2\right) + 0.5\]
  2. Simplified0.4

    \[\leadsto \color{blue}{0.5 + \left(\cos \left(2 \cdot \left(\pi \cdot u2\right)\right) \cdot {\left(-2 \cdot \log u1\right)}^{0.5}\right) \cdot \frac{1}{6}}\]
  3. Using strategy rm
  4. Applied add-cbrt-cube0.4

    \[\leadsto 0.5 + \left(\cos \left(2 \cdot \left(\pi \cdot u2\right)\right) \cdot {\left(-2 \cdot \log u1\right)}^{0.5}\right) \cdot \color{blue}{\sqrt[3]{\left(\frac{1}{6} \cdot \frac{1}{6}\right) \cdot \frac{1}{6}}}\]
  5. Applied add-cbrt-cube0.6

    \[\leadsto 0.5 + \left(\cos \left(2 \cdot \left(\pi \cdot u2\right)\right) \cdot \color{blue}{\sqrt[3]{\left({\left(-2 \cdot \log u1\right)}^{0.5} \cdot {\left(-2 \cdot \log u1\right)}^{0.5}\right) \cdot {\left(-2 \cdot \log u1\right)}^{0.5}}}\right) \cdot \sqrt[3]{\left(\frac{1}{6} \cdot \frac{1}{6}\right) \cdot \frac{1}{6}}\]
  6. Applied add-cbrt-cube0.6

    \[\leadsto 0.5 + \left(\color{blue}{\sqrt[3]{\left(\cos \left(2 \cdot \left(\pi \cdot u2\right)\right) \cdot \cos \left(2 \cdot \left(\pi \cdot u2\right)\right)\right) \cdot \cos \left(2 \cdot \left(\pi \cdot u2\right)\right)}} \cdot \sqrt[3]{\left({\left(-2 \cdot \log u1\right)}^{0.5} \cdot {\left(-2 \cdot \log u1\right)}^{0.5}\right) \cdot {\left(-2 \cdot \log u1\right)}^{0.5}}\right) \cdot \sqrt[3]{\left(\frac{1}{6} \cdot \frac{1}{6}\right) \cdot \frac{1}{6}}\]
  7. Applied cbrt-unprod0.6

    \[\leadsto 0.5 + \color{blue}{\sqrt[3]{\left(\left(\cos \left(2 \cdot \left(\pi \cdot u2\right)\right) \cdot \cos \left(2 \cdot \left(\pi \cdot u2\right)\right)\right) \cdot \cos \left(2 \cdot \left(\pi \cdot u2\right)\right)\right) \cdot \left(\left({\left(-2 \cdot \log u1\right)}^{0.5} \cdot {\left(-2 \cdot \log u1\right)}^{0.5}\right) \cdot {\left(-2 \cdot \log u1\right)}^{0.5}\right)}} \cdot \sqrt[3]{\left(\frac{1}{6} \cdot \frac{1}{6}\right) \cdot \frac{1}{6}}\]
  8. Applied cbrt-unprod0.5

    \[\leadsto 0.5 + \color{blue}{\sqrt[3]{\left(\left(\left(\cos \left(2 \cdot \left(\pi \cdot u2\right)\right) \cdot \cos \left(2 \cdot \left(\pi \cdot u2\right)\right)\right) \cdot \cos \left(2 \cdot \left(\pi \cdot u2\right)\right)\right) \cdot \left(\left({\left(-2 \cdot \log u1\right)}^{0.5} \cdot {\left(-2 \cdot \log u1\right)}^{0.5}\right) \cdot {\left(-2 \cdot \log u1\right)}^{0.5}\right)\right) \cdot \left(\left(\frac{1}{6} \cdot \frac{1}{6}\right) \cdot \frac{1}{6}\right)}}\]
  9. Simplified0.6

    \[\leadsto 0.5 + \sqrt[3]{\color{blue}{\left(\left({\left(-2 \cdot \log u1\right)}^{0.5} \cdot \left(\cos \left(\left(u2 \cdot \pi\right) \cdot 2\right) \cdot \frac{1}{6}\right)\right) \cdot \left({\left(-2 \cdot \log u1\right)}^{0.5} \cdot \left(\cos \left(\left(u2 \cdot \pi\right) \cdot 2\right) \cdot \frac{1}{6}\right)\right)\right) \cdot \left({\left(-2 \cdot \log u1\right)}^{0.5} \cdot \left(\cos \left(\left(u2 \cdot \pi\right) \cdot 2\right) \cdot \frac{1}{6}\right)\right)}}\]
  10. Using strategy rm
  11. Applied add-cbrt-cube0.6

    \[\leadsto 0.5 + \sqrt[3]{\left(\left({\left(-2 \cdot \log u1\right)}^{0.5} \cdot \left(\cos \left(\left(u2 \cdot \pi\right) \cdot 2\right) \cdot \frac{1}{6}\right)\right) \cdot \left({\left(-2 \cdot \log u1\right)}^{0.5} \cdot \left(\cos \left(\left(u2 \cdot \pi\right) \cdot 2\right) \cdot \frac{1}{6}\right)\right)\right) \cdot \left({\left(-2 \cdot \log u1\right)}^{0.5} \cdot \color{blue}{\sqrt[3]{\left(\left(\cos \left(\left(u2 \cdot \pi\right) \cdot 2\right) \cdot \frac{1}{6}\right) \cdot \left(\cos \left(\left(u2 \cdot \pi\right) \cdot 2\right) \cdot \frac{1}{6}\right)\right) \cdot \left(\cos \left(\left(u2 \cdot \pi\right) \cdot 2\right) \cdot \frac{1}{6}\right)}}\right)}\]
  12. Applied add-cbrt-cube0.6

    \[\leadsto 0.5 + \sqrt[3]{\left(\left({\left(-2 \cdot \log u1\right)}^{0.5} \cdot \left(\cos \left(\left(u2 \cdot \pi\right) \cdot 2\right) \cdot \frac{1}{6}\right)\right) \cdot \left({\left(-2 \cdot \log u1\right)}^{0.5} \cdot \left(\cos \left(\left(u2 \cdot \pi\right) \cdot 2\right) \cdot \frac{1}{6}\right)\right)\right) \cdot \left(\color{blue}{\sqrt[3]{\left({\left(-2 \cdot \log u1\right)}^{0.5} \cdot {\left(-2 \cdot \log u1\right)}^{0.5}\right) \cdot {\left(-2 \cdot \log u1\right)}^{0.5}}} \cdot \sqrt[3]{\left(\left(\cos \left(\left(u2 \cdot \pi\right) \cdot 2\right) \cdot \frac{1}{6}\right) \cdot \left(\cos \left(\left(u2 \cdot \pi\right) \cdot 2\right) \cdot \frac{1}{6}\right)\right) \cdot \left(\cos \left(\left(u2 \cdot \pi\right) \cdot 2\right) \cdot \frac{1}{6}\right)}\right)}\]
  13. Applied cbrt-unprod0.5

    \[\leadsto 0.5 + \sqrt[3]{\left(\left({\left(-2 \cdot \log u1\right)}^{0.5} \cdot \left(\cos \left(\left(u2 \cdot \pi\right) \cdot 2\right) \cdot \frac{1}{6}\right)\right) \cdot \left({\left(-2 \cdot \log u1\right)}^{0.5} \cdot \left(\cos \left(\left(u2 \cdot \pi\right) \cdot 2\right) \cdot \frac{1}{6}\right)\right)\right) \cdot \color{blue}{\sqrt[3]{\left(\left({\left(-2 \cdot \log u1\right)}^{0.5} \cdot {\left(-2 \cdot \log u1\right)}^{0.5}\right) \cdot {\left(-2 \cdot \log u1\right)}^{0.5}\right) \cdot \left(\left(\left(\cos \left(\left(u2 \cdot \pi\right) \cdot 2\right) \cdot \frac{1}{6}\right) \cdot \left(\cos \left(\left(u2 \cdot \pi\right) \cdot 2\right) \cdot \frac{1}{6}\right)\right) \cdot \left(\cos \left(\left(u2 \cdot \pi\right) \cdot 2\right) \cdot \frac{1}{6}\right)\right)}}}\]
  14. Final simplification0.5

    \[\leadsto \sqrt[3]{\left(\left({\left(\log u1 \cdot -2\right)}^{0.5} \cdot \left(\cos \left(2 \cdot \left(\pi \cdot u2\right)\right) \cdot \frac{1}{6}\right)\right) \cdot \left({\left(\log u1 \cdot -2\right)}^{0.5} \cdot \left(\cos \left(2 \cdot \left(\pi \cdot u2\right)\right) \cdot \frac{1}{6}\right)\right)\right) \cdot \sqrt[3]{\left(\left({\left(\log u1 \cdot -2\right)}^{0.5} \cdot {\left(\log u1 \cdot -2\right)}^{0.5}\right) \cdot {\left(\log u1 \cdot -2\right)}^{0.5}\right) \cdot \left(\left(\left(\cos \left(2 \cdot \left(\pi \cdot u2\right)\right) \cdot \frac{1}{6}\right) \cdot \left(\cos \left(2 \cdot \left(\pi \cdot u2\right)\right) \cdot \frac{1}{6}\right)\right) \cdot \left(\cos \left(2 \cdot \left(\pi \cdot u2\right)\right) \cdot \frac{1}{6}\right)\right)}} + 0.5\]

Reproduce

herbie shell --seed 2019165 
(FPCore (u1 u2)
  :name "normal distribution"
  :pre (and (<= 0 u1 1) (<= 0 u2 1))
  (+ (* (* (/ 1 6) (pow (* -2 (log u1)) 0.5)) (cos (* (* 2 PI) u2))) 0.5))