Average Error: 1.2 → 0.4
Time: 8.5s
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}{\sqrt[3]{3} \cdot \sqrt[3]{3}} \cdot \left(\frac{1}{\sqrt[3]{3}} \cdot \cos^{-1} \left(\frac{0.1111111111111111 \cdot \frac{\left|{t}^{\frac{1}{3}}\right| \cdot x}{y}}{z \cdot 2} \cdot \sqrt{\sqrt[3]{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{1}{\sqrt[3]{3} \cdot \sqrt[3]{3}} \cdot \left(\frac{1}{\sqrt[3]{3}} \cdot \cos^{-1} \left(\frac{0.1111111111111111 \cdot \frac{\left|{t}^{\frac{1}{3}}\right| \cdot x}{y}}{z \cdot 2} \cdot \sqrt{\sqrt[3]{t}}\right)\right)
double f(double x, double y, double z, double t) {
        double r688588 = 1.0;
        double r688589 = 3.0;
        double r688590 = r688588 / r688589;
        double r688591 = x;
        double r688592 = y;
        double r688593 = 27.0;
        double r688594 = r688592 * r688593;
        double r688595 = r688591 / r688594;
        double r688596 = r688589 * r688595;
        double r688597 = z;
        double r688598 = 2.0;
        double r688599 = r688597 * r688598;
        double r688600 = r688596 / r688599;
        double r688601 = t;
        double r688602 = sqrt(r688601);
        double r688603 = r688600 * r688602;
        double r688604 = acos(r688603);
        double r688605 = r688590 * r688604;
        return r688605;
}

double f(double x, double y, double z, double t) {
        double r688606 = 1.0;
        double r688607 = 3.0;
        double r688608 = cbrt(r688607);
        double r688609 = r688608 * r688608;
        double r688610 = r688606 / r688609;
        double r688611 = 1.0;
        double r688612 = r688611 / r688608;
        double r688613 = 0.1111111111111111;
        double r688614 = t;
        double r688615 = 0.3333333333333333;
        double r688616 = pow(r688614, r688615);
        double r688617 = fabs(r688616);
        double r688618 = x;
        double r688619 = r688617 * r688618;
        double r688620 = y;
        double r688621 = r688619 / r688620;
        double r688622 = r688613 * r688621;
        double r688623 = z;
        double r688624 = 2.0;
        double r688625 = r688623 * r688624;
        double r688626 = r688622 / r688625;
        double r688627 = cbrt(r688614);
        double r688628 = sqrt(r688627);
        double r688629 = r688626 * r688628;
        double r688630 = acos(r688629);
        double r688631 = r688612 * r688630;
        double r688632 = r688610 * r688631;
        return r688632;
}

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.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.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 *-un-lft-identity1.2

    \[\leadsto \frac{\color{blue}{1 \cdot 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{1}{\sqrt[3]{3} \cdot \sqrt[3]{3}} \cdot \frac{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{1}{\sqrt[3]{3} \cdot \sqrt[3]{3}} \cdot \left(\frac{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. Using strategy rm
  8. Applied add-cube-cbrt0.3

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

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

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

    \[\leadsto \frac{1}{\sqrt[3]{3} \cdot \sqrt[3]{3}} \cdot \left(\frac{1}{\sqrt[3]{3}} \cdot \cos^{-1} \left(\color{blue}{\frac{\left(3 \cdot \frac{x}{y \cdot 27}\right) \cdot \left|\sqrt[3]{t}\right|}{z \cdot 2}} \cdot \sqrt{\sqrt[3]{t}}\right)\right)\]
  12. Taylor expanded around 0 0.4

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

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

Reproduce

herbie shell --seed 2020100 +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)))))