Average Error: 46.2 → 45.2
Time: 54.1s
Precision: 64
\[\left(x \cdot \cos \left(\frac{\left(\left(y \cdot 2 + 1\right) \cdot z\right) \cdot t}{16}\right)\right) \cdot \cos \left(\frac{\left(\left(a \cdot 2 + 1\right) \cdot b\right) \cdot t}{16}\right)\]
\[x \cdot \cos \left(\frac{\sqrt[3]{\sqrt[3]{t}} \cdot \left(\left(\left(2 \cdot y + 1\right) \cdot \left(\left(\sqrt[3]{t} \cdot \sqrt[3]{t}\right) \cdot z\right)\right) \cdot \sqrt[3]{\sqrt[3]{t} \cdot \sqrt[3]{t}}\right)}{16}\right)\]
\left(x \cdot \cos \left(\frac{\left(\left(y \cdot 2 + 1\right) \cdot z\right) \cdot t}{16}\right)\right) \cdot \cos \left(\frac{\left(\left(a \cdot 2 + 1\right) \cdot b\right) \cdot t}{16}\right)
x \cdot \cos \left(\frac{\sqrt[3]{\sqrt[3]{t}} \cdot \left(\left(\left(2 \cdot y + 1\right) \cdot \left(\left(\sqrt[3]{t} \cdot \sqrt[3]{t}\right) \cdot z\right)\right) \cdot \sqrt[3]{\sqrt[3]{t} \cdot \sqrt[3]{t}}\right)}{16}\right)
double f(double x, double y, double z, double t, double a, double b) {
        double r39964842 = x;
        double r39964843 = y;
        double r39964844 = 2.0;
        double r39964845 = r39964843 * r39964844;
        double r39964846 = 1.0;
        double r39964847 = r39964845 + r39964846;
        double r39964848 = z;
        double r39964849 = r39964847 * r39964848;
        double r39964850 = t;
        double r39964851 = r39964849 * r39964850;
        double r39964852 = 16.0;
        double r39964853 = r39964851 / r39964852;
        double r39964854 = cos(r39964853);
        double r39964855 = r39964842 * r39964854;
        double r39964856 = a;
        double r39964857 = r39964856 * r39964844;
        double r39964858 = r39964857 + r39964846;
        double r39964859 = b;
        double r39964860 = r39964858 * r39964859;
        double r39964861 = r39964860 * r39964850;
        double r39964862 = r39964861 / r39964852;
        double r39964863 = cos(r39964862);
        double r39964864 = r39964855 * r39964863;
        return r39964864;
}

double f(double x, double y, double z, double t, double __attribute__((unused)) a, double __attribute__((unused)) b) {
        double r39964865 = x;
        double r39964866 = t;
        double r39964867 = cbrt(r39964866);
        double r39964868 = cbrt(r39964867);
        double r39964869 = 2.0;
        double r39964870 = y;
        double r39964871 = r39964869 * r39964870;
        double r39964872 = 1.0;
        double r39964873 = r39964871 + r39964872;
        double r39964874 = r39964867 * r39964867;
        double r39964875 = z;
        double r39964876 = r39964874 * r39964875;
        double r39964877 = r39964873 * r39964876;
        double r39964878 = cbrt(r39964874);
        double r39964879 = r39964877 * r39964878;
        double r39964880 = r39964868 * r39964879;
        double r39964881 = 16.0;
        double r39964882 = r39964880 / r39964881;
        double r39964883 = cos(r39964882);
        double r39964884 = r39964865 * r39964883;
        return r39964884;
}

Error

Bits error versus x

Bits error versus y

Bits error versus z

Bits error versus t

Bits error versus a

Bits error versus b

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Target

Original46.2
Target44.3
Herbie45.2
\[x \cdot \cos \left(\frac{b}{16} \cdot \frac{t}{\left(1 - a \cdot 2\right) + {\left(a \cdot 2\right)}^{2}}\right)\]

Derivation

  1. Initial program 46.2

    \[\left(x \cdot \cos \left(\frac{\left(\left(y \cdot 2 + 1\right) \cdot z\right) \cdot t}{16}\right)\right) \cdot \cos \left(\frac{\left(\left(a \cdot 2 + 1\right) \cdot b\right) \cdot t}{16}\right)\]
  2. Taylor expanded around 0 45.5

    \[\leadsto \left(x \cdot \cos \left(\frac{\left(\left(y \cdot 2 + 1\right) \cdot z\right) \cdot t}{16}\right)\right) \cdot \color{blue}{1}\]
  3. Using strategy rm
  4. Applied add-cube-cbrt45.4

    \[\leadsto \left(x \cdot \cos \left(\frac{\left(\left(y \cdot 2 + 1\right) \cdot z\right) \cdot \color{blue}{\left(\left(\sqrt[3]{t} \cdot \sqrt[3]{t}\right) \cdot \sqrt[3]{t}\right)}}{16}\right)\right) \cdot 1\]
  5. Applied associate-*r*45.4

    \[\leadsto \left(x \cdot \cos \left(\frac{\color{blue}{\left(\left(\left(y \cdot 2 + 1\right) \cdot z\right) \cdot \left(\sqrt[3]{t} \cdot \sqrt[3]{t}\right)\right) \cdot \sqrt[3]{t}}}{16}\right)\right) \cdot 1\]
  6. Using strategy rm
  7. Applied associate-*l*45.2

    \[\leadsto \left(x \cdot \cos \left(\frac{\color{blue}{\left(\left(y \cdot 2 + 1\right) \cdot \left(z \cdot \left(\sqrt[3]{t} \cdot \sqrt[3]{t}\right)\right)\right)} \cdot \sqrt[3]{t}}{16}\right)\right) \cdot 1\]
  8. Using strategy rm
  9. Applied add-cube-cbrt45.2

    \[\leadsto \left(x \cdot \cos \left(\frac{\left(\left(y \cdot 2 + 1\right) \cdot \left(z \cdot \left(\sqrt[3]{t} \cdot \sqrt[3]{t}\right)\right)\right) \cdot \sqrt[3]{\color{blue}{\left(\sqrt[3]{t} \cdot \sqrt[3]{t}\right) \cdot \sqrt[3]{t}}}}{16}\right)\right) \cdot 1\]
  10. Applied cbrt-prod45.2

    \[\leadsto \left(x \cdot \cos \left(\frac{\left(\left(y \cdot 2 + 1\right) \cdot \left(z \cdot \left(\sqrt[3]{t} \cdot \sqrt[3]{t}\right)\right)\right) \cdot \color{blue}{\left(\sqrt[3]{\sqrt[3]{t} \cdot \sqrt[3]{t}} \cdot \sqrt[3]{\sqrt[3]{t}}\right)}}{16}\right)\right) \cdot 1\]
  11. Applied associate-*r*45.2

    \[\leadsto \left(x \cdot \cos \left(\frac{\color{blue}{\left(\left(\left(y \cdot 2 + 1\right) \cdot \left(z \cdot \left(\sqrt[3]{t} \cdot \sqrt[3]{t}\right)\right)\right) \cdot \sqrt[3]{\sqrt[3]{t} \cdot \sqrt[3]{t}}\right) \cdot \sqrt[3]{\sqrt[3]{t}}}}{16}\right)\right) \cdot 1\]
  12. Final simplification45.2

    \[\leadsto x \cdot \cos \left(\frac{\sqrt[3]{\sqrt[3]{t}} \cdot \left(\left(\left(2 \cdot y + 1\right) \cdot \left(\left(\sqrt[3]{t} \cdot \sqrt[3]{t}\right) \cdot z\right)\right) \cdot \sqrt[3]{\sqrt[3]{t} \cdot \sqrt[3]{t}}\right)}{16}\right)\]

Reproduce

herbie shell --seed 2019172 
(FPCore (x y z t a b)
  :name "Codec.Picture.Jpg.FastDct:referenceDct from JuicyPixels-3.2.6.1"

  :herbie-target
  (* x (cos (* (/ b 16.0) (/ t (+ (- 1.0 (* a 2.0)) (pow (* a 2.0) 2.0))))))

  (* (* x (cos (/ (* (* (+ (* y 2.0) 1.0) z) t) 16.0))) (cos (/ (* (* (+ (* a 2.0) 1.0) b) t) 16.0))))