Average Error: 1.3 → 0.4
Time: 15.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{1 \cdot \frac{\cos^{-1} \left(\frac{3 \cdot \frac{x}{y \cdot 27}}{z \cdot 2} \cdot \sqrt{t}\right)}{\sqrt[3]{3}}}{\sqrt[3]{3} \cdot \sqrt[3]{3}}\]
\frac{1}{3} \cdot \cos^{-1} \left(\frac{3 \cdot \frac{x}{y \cdot 27}}{z \cdot 2} \cdot \sqrt{t}\right)
\frac{1 \cdot \frac{\cos^{-1} \left(\frac{3 \cdot \frac{x}{y \cdot 27}}{z \cdot 2} \cdot \sqrt{t}\right)}{\sqrt[3]{3}}}{\sqrt[3]{3} \cdot \sqrt[3]{3}}
double f(double x, double y, double z, double t) {
        double r511422 = 1.0;
        double r511423 = 3.0;
        double r511424 = r511422 / r511423;
        double r511425 = x;
        double r511426 = y;
        double r511427 = 27.0;
        double r511428 = r511426 * r511427;
        double r511429 = r511425 / r511428;
        double r511430 = r511423 * r511429;
        double r511431 = z;
        double r511432 = 2.0;
        double r511433 = r511431 * r511432;
        double r511434 = r511430 / r511433;
        double r511435 = t;
        double r511436 = sqrt(r511435);
        double r511437 = r511434 * r511436;
        double r511438 = acos(r511437);
        double r511439 = r511424 * r511438;
        return r511439;
}

double f(double x, double y, double z, double t) {
        double r511440 = 1.0;
        double r511441 = 3.0;
        double r511442 = x;
        double r511443 = y;
        double r511444 = 27.0;
        double r511445 = r511443 * r511444;
        double r511446 = r511442 / r511445;
        double r511447 = r511441 * r511446;
        double r511448 = z;
        double r511449 = 2.0;
        double r511450 = r511448 * r511449;
        double r511451 = r511447 / r511450;
        double r511452 = t;
        double r511453 = sqrt(r511452);
        double r511454 = r511451 * r511453;
        double r511455 = acos(r511454);
        double r511456 = cbrt(r511441);
        double r511457 = r511455 / r511456;
        double r511458 = r511440 * r511457;
        double r511459 = r511456 * r511456;
        double r511460 = r511458 / r511459;
        return r511460;
}

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

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

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

    \[\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.4

    \[\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.4

    \[\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.4

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

Reproduce

herbie shell --seed 2019291 
(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)))))