Average Error: 0.0 → 0.7
Time: 18.7s
Precision: 64
\[\left(\left(x \cdot y + z \cdot t\right) + a \cdot b\right) + c \cdot i\]
\[\left(z \cdot t + x \cdot y\right) + \left(\sqrt[3]{c \cdot i + a \cdot b} \cdot \sqrt[3]{c \cdot i + a \cdot b}\right) \cdot \sqrt[3]{c \cdot i + a \cdot b}\]
\left(\left(x \cdot y + z \cdot t\right) + a \cdot b\right) + c \cdot i
\left(z \cdot t + x \cdot y\right) + \left(\sqrt[3]{c \cdot i + a \cdot b} \cdot \sqrt[3]{c \cdot i + a \cdot b}\right) \cdot \sqrt[3]{c \cdot i + a \cdot b}
double f(double x, double y, double z, double t, double a, double b, double c, double i) {
        double r3664363 = x;
        double r3664364 = y;
        double r3664365 = r3664363 * r3664364;
        double r3664366 = z;
        double r3664367 = t;
        double r3664368 = r3664366 * r3664367;
        double r3664369 = r3664365 + r3664368;
        double r3664370 = a;
        double r3664371 = b;
        double r3664372 = r3664370 * r3664371;
        double r3664373 = r3664369 + r3664372;
        double r3664374 = c;
        double r3664375 = i;
        double r3664376 = r3664374 * r3664375;
        double r3664377 = r3664373 + r3664376;
        return r3664377;
}

double f(double x, double y, double z, double t, double a, double b, double c, double i) {
        double r3664378 = z;
        double r3664379 = t;
        double r3664380 = r3664378 * r3664379;
        double r3664381 = x;
        double r3664382 = y;
        double r3664383 = r3664381 * r3664382;
        double r3664384 = r3664380 + r3664383;
        double r3664385 = c;
        double r3664386 = i;
        double r3664387 = r3664385 * r3664386;
        double r3664388 = a;
        double r3664389 = b;
        double r3664390 = r3664388 * r3664389;
        double r3664391 = r3664387 + r3664390;
        double r3664392 = cbrt(r3664391);
        double r3664393 = r3664392 * r3664392;
        double r3664394 = r3664393 * r3664392;
        double r3664395 = r3664384 + r3664394;
        return r3664395;
}

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

Bits error versus c

Bits error versus i

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 0.0

    \[\left(\left(x \cdot y + z \cdot t\right) + a \cdot b\right) + c \cdot i\]
  2. Using strategy rm
  3. Applied associate-+l+0.0

    \[\leadsto \color{blue}{\left(x \cdot y + z \cdot t\right) + \left(a \cdot b + c \cdot i\right)}\]
  4. Using strategy rm
  5. Applied add-cube-cbrt0.7

    \[\leadsto \left(x \cdot y + z \cdot t\right) + \color{blue}{\left(\sqrt[3]{a \cdot b + c \cdot i} \cdot \sqrt[3]{a \cdot b + c \cdot i}\right) \cdot \sqrt[3]{a \cdot b + c \cdot i}}\]
  6. Final simplification0.7

    \[\leadsto \left(z \cdot t + x \cdot y\right) + \left(\sqrt[3]{c \cdot i + a \cdot b} \cdot \sqrt[3]{c \cdot i + a \cdot b}\right) \cdot \sqrt[3]{c \cdot i + a \cdot b}\]

Reproduce

herbie shell --seed 2019162 
(FPCore (x y z t a b c i)
  :name "Linear.V4:$cdot from linear-1.19.1.3"
  (+ (+ (+ (* x y) (* z t)) (* a b)) (* c i)))