Average Error: 5.8 → 5.7
Time: 21.8s
Precision: 64
\[\left(\left(\left(\left(\left(\left(x \cdot 18\right) \cdot y\right) \cdot z\right) \cdot t - \left(a \cdot 4\right) \cdot t\right) + b \cdot c\right) - \left(x \cdot 4\right) \cdot i\right) - \left(j \cdot 27\right) \cdot k\]
\[\left(t \cdot \left(\left(\left(x \cdot 18\right) \cdot y\right) \cdot z - a \cdot 4\right) + \left(b \cdot c - \left(x \cdot 4\right) \cdot i\right)\right) - 27 \cdot \left(j \cdot k\right)\]
\left(\left(\left(\left(\left(\left(x \cdot 18\right) \cdot y\right) \cdot z\right) \cdot t - \left(a \cdot 4\right) \cdot t\right) + b \cdot c\right) - \left(x \cdot 4\right) \cdot i\right) - \left(j \cdot 27\right) \cdot k
\left(t \cdot \left(\left(\left(x \cdot 18\right) \cdot y\right) \cdot z - a \cdot 4\right) + \left(b \cdot c - \left(x \cdot 4\right) \cdot i\right)\right) - 27 \cdot \left(j \cdot k\right)
double f(double x, double y, double z, double t, double a, double b, double c, double i, double j, double k) {
        double r186614 = x;
        double r186615 = 18.0;
        double r186616 = r186614 * r186615;
        double r186617 = y;
        double r186618 = r186616 * r186617;
        double r186619 = z;
        double r186620 = r186618 * r186619;
        double r186621 = t;
        double r186622 = r186620 * r186621;
        double r186623 = a;
        double r186624 = 4.0;
        double r186625 = r186623 * r186624;
        double r186626 = r186625 * r186621;
        double r186627 = r186622 - r186626;
        double r186628 = b;
        double r186629 = c;
        double r186630 = r186628 * r186629;
        double r186631 = r186627 + r186630;
        double r186632 = r186614 * r186624;
        double r186633 = i;
        double r186634 = r186632 * r186633;
        double r186635 = r186631 - r186634;
        double r186636 = j;
        double r186637 = 27.0;
        double r186638 = r186636 * r186637;
        double r186639 = k;
        double r186640 = r186638 * r186639;
        double r186641 = r186635 - r186640;
        return r186641;
}

double f(double x, double y, double z, double t, double a, double b, double c, double i, double j, double k) {
        double r186642 = t;
        double r186643 = x;
        double r186644 = 18.0;
        double r186645 = r186643 * r186644;
        double r186646 = y;
        double r186647 = r186645 * r186646;
        double r186648 = z;
        double r186649 = r186647 * r186648;
        double r186650 = a;
        double r186651 = 4.0;
        double r186652 = r186650 * r186651;
        double r186653 = r186649 - r186652;
        double r186654 = r186642 * r186653;
        double r186655 = b;
        double r186656 = c;
        double r186657 = r186655 * r186656;
        double r186658 = r186643 * r186651;
        double r186659 = i;
        double r186660 = r186658 * r186659;
        double r186661 = r186657 - r186660;
        double r186662 = r186654 + r186661;
        double r186663 = 27.0;
        double r186664 = j;
        double r186665 = k;
        double r186666 = r186664 * r186665;
        double r186667 = r186663 * r186666;
        double r186668 = r186662 - r186667;
        return r186668;
}

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

Bits error versus j

Bits error versus k

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Split input into 2 regimes
  2. if (- (+ (- (* (* (* (* x 18.0) y) z) t) (* (* a 4.0) t)) (* b c)) (* (* x 4.0) i)) < -1.0761333188935318e+305 or 2.1127107260805905e+291 < (- (+ (- (* (* (* (* x 18.0) y) z) t) (* (* a 4.0) t)) (* b c)) (* (* x 4.0) i))

    1. Initial program 48.2

      \[\left(\left(\left(\left(\left(\left(x \cdot 18\right) \cdot y\right) \cdot z\right) \cdot t - \left(a \cdot 4\right) \cdot t\right) + b \cdot c\right) - \left(x \cdot 4\right) \cdot i\right) - \left(j \cdot 27\right) \cdot k\]
    2. Taylor expanded around inf 33.1

      \[\leadsto \left(\left(\left(\color{blue}{18 \cdot \left(t \cdot \left(x \cdot \left(z \cdot y\right)\right)\right)} - \left(a \cdot 4\right) \cdot t\right) + b \cdot c\right) - \left(x \cdot 4\right) \cdot i\right) - \left(j \cdot 27\right) \cdot k\]
    3. Simplified6.4

      \[\leadsto \left(\left(\left(\color{blue}{\left(\left(\left(t \cdot 18\right) \cdot x\right) \cdot z\right) \cdot y} - \left(a \cdot 4\right) \cdot t\right) + b \cdot c\right) - \left(x \cdot 4\right) \cdot i\right) - \left(j \cdot 27\right) \cdot k\]
    4. Using strategy rm
    5. Applied pow16.4

      \[\leadsto \left(\left(\left(\left(\left(\left(t \cdot 18\right) \cdot x\right) \cdot z\right) \cdot y - \left(a \cdot 4\right) \cdot t\right) + b \cdot c\right) - \left(x \cdot 4\right) \cdot i\right) - \left(j \cdot 27\right) \cdot \color{blue}{{k}^{1}}\]
    6. Applied pow16.4

      \[\leadsto \left(\left(\left(\left(\left(\left(t \cdot 18\right) \cdot x\right) \cdot z\right) \cdot y - \left(a \cdot 4\right) \cdot t\right) + b \cdot c\right) - \left(x \cdot 4\right) \cdot i\right) - \left(j \cdot \color{blue}{{27}^{1}}\right) \cdot {k}^{1}\]
    7. Applied pow16.4

      \[\leadsto \left(\left(\left(\left(\left(\left(t \cdot 18\right) \cdot x\right) \cdot z\right) \cdot y - \left(a \cdot 4\right) \cdot t\right) + b \cdot c\right) - \left(x \cdot 4\right) \cdot i\right) - \left(\color{blue}{{j}^{1}} \cdot {27}^{1}\right) \cdot {k}^{1}\]
    8. Applied pow-prod-down6.4

      \[\leadsto \left(\left(\left(\left(\left(\left(t \cdot 18\right) \cdot x\right) \cdot z\right) \cdot y - \left(a \cdot 4\right) \cdot t\right) + b \cdot c\right) - \left(x \cdot 4\right) \cdot i\right) - \color{blue}{{\left(j \cdot 27\right)}^{1}} \cdot {k}^{1}\]
    9. Applied pow-prod-down6.4

      \[\leadsto \left(\left(\left(\left(\left(\left(t \cdot 18\right) \cdot x\right) \cdot z\right) \cdot y - \left(a \cdot 4\right) \cdot t\right) + b \cdot c\right) - \left(x \cdot 4\right) \cdot i\right) - \color{blue}{{\left(\left(j \cdot 27\right) \cdot k\right)}^{1}}\]
    10. Simplified6.3

      \[\leadsto \left(\left(\left(\left(\left(\left(t \cdot 18\right) \cdot x\right) \cdot z\right) \cdot y - \left(a \cdot 4\right) \cdot t\right) + b \cdot c\right) - \left(x \cdot 4\right) \cdot i\right) - {\color{blue}{\left(27 \cdot \left(j \cdot k\right)\right)}}^{1}\]

    if -1.0761333188935318e+305 < (- (+ (- (* (* (* (* x 18.0) y) z) t) (* (* a 4.0) t)) (* b c)) (* (* x 4.0) i)) < 2.1127107260805905e+291

    1. Initial program 0.3

      \[\left(\left(\left(\left(\left(\left(x \cdot 18\right) \cdot y\right) \cdot z\right) \cdot t - \left(a \cdot 4\right) \cdot t\right) + b \cdot c\right) - \left(x \cdot 4\right) \cdot i\right) - \left(j \cdot 27\right) \cdot k\]
    2. Using strategy rm
    3. Applied associate-*l*0.3

      \[\leadsto \left(\left(\left(\left(\left(\left(x \cdot 18\right) \cdot y\right) \cdot z\right) \cdot t - \left(a \cdot 4\right) \cdot t\right) + b \cdot c\right) - \left(x \cdot 4\right) \cdot i\right) - \color{blue}{j \cdot \left(27 \cdot k\right)}\]
    4. Simplified0.3

      \[\leadsto \left(\left(\left(\left(\left(\left(x \cdot 18\right) \cdot y\right) \cdot z\right) \cdot t - \left(a \cdot 4\right) \cdot t\right) + b \cdot c\right) - \left(x \cdot 4\right) \cdot i\right) - j \cdot \color{blue}{\left(k \cdot 27\right)}\]
  3. Recombined 2 regimes into one program.
  4. Final simplification5.7

    \[\leadsto \left(t \cdot \left(\left(\left(x \cdot 18\right) \cdot y\right) \cdot z - a \cdot 4\right) + \left(b \cdot c - \left(x \cdot 4\right) \cdot i\right)\right) - 27 \cdot \left(j \cdot k\right)\]

Reproduce

herbie shell --seed 2019291 
(FPCore (x y z t a b c i j k)
  :name "Diagrams.Solve.Polynomial:cubForm  from diagrams-solve-0.1"
  :precision binary64
  (- (- (+ (- (* (* (* (* x 18) y) z) t) (* (* a 4) t)) (* b c)) (* (* x 4) i)) (* (* j 27) k)))