Average Error: 1.3 → 0.3
Time: 20.5s
Precision: 64
\[\frac{1.0}{3.0} \cdot \cos^{-1} \left(\frac{3.0 \cdot \frac{x}{y \cdot 27.0}}{z \cdot 2.0} \cdot \sqrt{t}\right)\]
\[\left(\frac{1.0}{\sqrt[3]{3.0}} \cdot \cos^{-1} \left(\frac{\frac{x}{27.0 \cdot y} \cdot 3.0}{2.0 \cdot z} \cdot \sqrt{t}\right)\right) \cdot \frac{1}{\sqrt[3]{3.0} \cdot \sqrt[3]{3.0}}\]
\frac{1.0}{3.0} \cdot \cos^{-1} \left(\frac{3.0 \cdot \frac{x}{y \cdot 27.0}}{z \cdot 2.0} \cdot \sqrt{t}\right)
\left(\frac{1.0}{\sqrt[3]{3.0}} \cdot \cos^{-1} \left(\frac{\frac{x}{27.0 \cdot y} \cdot 3.0}{2.0 \cdot z} \cdot \sqrt{t}\right)\right) \cdot \frac{1}{\sqrt[3]{3.0} \cdot \sqrt[3]{3.0}}
double f(double x, double y, double z, double t) {
        double r36610221 = 1.0;
        double r36610222 = 3.0;
        double r36610223 = r36610221 / r36610222;
        double r36610224 = x;
        double r36610225 = y;
        double r36610226 = 27.0;
        double r36610227 = r36610225 * r36610226;
        double r36610228 = r36610224 / r36610227;
        double r36610229 = r36610222 * r36610228;
        double r36610230 = z;
        double r36610231 = 2.0;
        double r36610232 = r36610230 * r36610231;
        double r36610233 = r36610229 / r36610232;
        double r36610234 = t;
        double r36610235 = sqrt(r36610234);
        double r36610236 = r36610233 * r36610235;
        double r36610237 = acos(r36610236);
        double r36610238 = r36610223 * r36610237;
        return r36610238;
}

double f(double x, double y, double z, double t) {
        double r36610239 = 1.0;
        double r36610240 = 3.0;
        double r36610241 = cbrt(r36610240);
        double r36610242 = r36610239 / r36610241;
        double r36610243 = x;
        double r36610244 = 27.0;
        double r36610245 = y;
        double r36610246 = r36610244 * r36610245;
        double r36610247 = r36610243 / r36610246;
        double r36610248 = r36610247 * r36610240;
        double r36610249 = 2.0;
        double r36610250 = z;
        double r36610251 = r36610249 * r36610250;
        double r36610252 = r36610248 / r36610251;
        double r36610253 = t;
        double r36610254 = sqrt(r36610253);
        double r36610255 = r36610252 * r36610254;
        double r36610256 = acos(r36610255);
        double r36610257 = r36610242 * r36610256;
        double r36610258 = 1.0;
        double r36610259 = r36610241 * r36610241;
        double r36610260 = r36610258 / r36610259;
        double r36610261 = r36610257 * r36610260;
        return r36610261;
}

Error

Bits error versus x

Bits error versus y

Bits error versus z

Bits error versus t

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Target

Original1.3
Target1.2
Herbie0.3
\[\frac{\cos^{-1} \left(\frac{\frac{x}{27.0}}{y \cdot z} \cdot \frac{\sqrt{t}}{\frac{2.0}{3.0}}\right)}{3.0}\]

Derivation

  1. Initial program 1.3

    \[\frac{1.0}{3.0} \cdot \cos^{-1} \left(\frac{3.0 \cdot \frac{x}{y \cdot 27.0}}{z \cdot 2.0} \cdot \sqrt{t}\right)\]
  2. Using strategy rm
  3. Applied add-cube-cbrt1.3

    \[\leadsto \frac{1.0}{\color{blue}{\left(\sqrt[3]{3.0} \cdot \sqrt[3]{3.0}\right) \cdot \sqrt[3]{3.0}}} \cdot \cos^{-1} \left(\frac{3.0 \cdot \frac{x}{y \cdot 27.0}}{z \cdot 2.0} \cdot \sqrt{t}\right)\]
  4. Applied *-un-lft-identity1.3

    \[\leadsto \frac{\color{blue}{1 \cdot 1.0}}{\left(\sqrt[3]{3.0} \cdot \sqrt[3]{3.0}\right) \cdot \sqrt[3]{3.0}} \cdot \cos^{-1} \left(\frac{3.0 \cdot \frac{x}{y \cdot 27.0}}{z \cdot 2.0} \cdot \sqrt{t}\right)\]
  5. Applied times-frac0.3

    \[\leadsto \color{blue}{\left(\frac{1}{\sqrt[3]{3.0} \cdot \sqrt[3]{3.0}} \cdot \frac{1.0}{\sqrt[3]{3.0}}\right)} \cdot \cos^{-1} \left(\frac{3.0 \cdot \frac{x}{y \cdot 27.0}}{z \cdot 2.0} \cdot \sqrt{t}\right)\]
  6. Applied associate-*l*0.3

    \[\leadsto \color{blue}{\frac{1}{\sqrt[3]{3.0} \cdot \sqrt[3]{3.0}} \cdot \left(\frac{1.0}{\sqrt[3]{3.0}} \cdot \cos^{-1} \left(\frac{3.0 \cdot \frac{x}{y \cdot 27.0}}{z \cdot 2.0} \cdot \sqrt{t}\right)\right)}\]
  7. Final simplification0.3

    \[\leadsto \left(\frac{1.0}{\sqrt[3]{3.0}} \cdot \cos^{-1} \left(\frac{\frac{x}{27.0 \cdot y} \cdot 3.0}{2.0 \cdot z} \cdot \sqrt{t}\right)\right) \cdot \frac{1}{\sqrt[3]{3.0} \cdot \sqrt[3]{3.0}}\]

Reproduce

herbie shell --seed 2019165 
(FPCore (x y z t)
  :name "Diagrams.Solve.Polynomial:cubForm  from diagrams-solve-0.1, D"

  :herbie-target
  (/ (acos (* (/ (/ x 27.0) (* y z)) (/ (sqrt t) (/ 2.0 3.0)))) 3.0)

  (* (/ 1.0 3.0) (acos (* (/ (* 3.0 (/ x (* y 27.0))) (* z 2.0)) (sqrt t)))))