Average Error: 1.2 → 0.3
Time: 7.9s
Precision: 64
\[\frac{1}{3} \cdot \cos^{-1} \left(\frac{3 \cdot \frac{x}{y \cdot 27}}{z \cdot 2} \cdot \sqrt{t}\right)\]
\[\frac{\sqrt{1}}{\sqrt[3]{3} \cdot \sqrt[3]{3}} \cdot \left(\frac{\sqrt{1}}{\sqrt[3]{3}} \cdot \cos^{-1} \left(\frac{3 \cdot \frac{x}{y \cdot 27}}{z \cdot 2} \cdot \sqrt{t}\right)\right)\]
\frac{1}{3} \cdot \cos^{-1} \left(\frac{3 \cdot \frac{x}{y \cdot 27}}{z \cdot 2} \cdot \sqrt{t}\right)
\frac{\sqrt{1}}{\sqrt[3]{3} \cdot \sqrt[3]{3}} \cdot \left(\frac{\sqrt{1}}{\sqrt[3]{3}} \cdot \cos^{-1} \left(\frac{3 \cdot \frac{x}{y \cdot 27}}{z \cdot 2} \cdot \sqrt{t}\right)\right)
double f(double x, double y, double z, double t) {
        double r758175 = 1.0;
        double r758176 = 3.0;
        double r758177 = r758175 / r758176;
        double r758178 = x;
        double r758179 = y;
        double r758180 = 27.0;
        double r758181 = r758179 * r758180;
        double r758182 = r758178 / r758181;
        double r758183 = r758176 * r758182;
        double r758184 = z;
        double r758185 = 2.0;
        double r758186 = r758184 * r758185;
        double r758187 = r758183 / r758186;
        double r758188 = t;
        double r758189 = sqrt(r758188);
        double r758190 = r758187 * r758189;
        double r758191 = acos(r758190);
        double r758192 = r758177 * r758191;
        return r758192;
}

double f(double x, double y, double z, double t) {
        double r758193 = 1.0;
        double r758194 = sqrt(r758193);
        double r758195 = 3.0;
        double r758196 = cbrt(r758195);
        double r758197 = r758196 * r758196;
        double r758198 = r758194 / r758197;
        double r758199 = r758194 / r758196;
        double r758200 = x;
        double r758201 = y;
        double r758202 = 27.0;
        double r758203 = r758201 * r758202;
        double r758204 = r758200 / r758203;
        double r758205 = r758195 * r758204;
        double r758206 = z;
        double r758207 = 2.0;
        double r758208 = r758206 * r758207;
        double r758209 = r758205 / r758208;
        double r758210 = t;
        double r758211 = sqrt(r758210);
        double r758212 = r758209 * r758211;
        double r758213 = acos(r758212);
        double r758214 = r758199 * r758213;
        double r758215 = r758198 * r758214;
        return r758215;
}

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.2
Target1.2
Herbie0.3
\[\frac{\cos^{-1} \left(\frac{\frac{x}{27}}{y \cdot z} \cdot \frac{\sqrt{t}}{\frac{2}{3}}\right)}{3}\]

Derivation

  1. Initial program 1.2

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

    \[\leadsto \frac{1}{\color{blue}{\left(\sqrt[3]{3} \cdot \sqrt[3]{3}\right) \cdot \sqrt[3]{3}}} \cdot \cos^{-1} \left(\frac{3 \cdot \frac{x}{y \cdot 27}}{z \cdot 2} \cdot \sqrt{t}\right)\]
  4. Applied add-sqr-sqrt1.2

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

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

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

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

Reproduce

herbie shell --seed 2020045 +o rules:numerics
(FPCore (x y z t)
  :name "Diagrams.Solve.Polynomial:cubForm  from diagrams-solve-0.1, D"
  :precision binary64

  :herbie-target
  (/ (acos (* (/ (/ x 27) (* y z)) (/ (sqrt t) (/ 2 3)))) 3)

  (* (/ 1 3) (acos (* (/ (* 3 (/ x (* y 27))) (* z 2)) (sqrt t)))))