Average Error: 28.8 → 28.8
Time: 9.8s
Precision: binary64
\[\frac{\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i}\]
\[\frac{y \cdot \left(\sqrt[3]{y \cdot \left(y \cdot \left(y \cdot x + z\right) + 27464.7644705\right)} \cdot \left(\sqrt[3]{y \cdot \left(y \cdot \left(y \cdot x + z\right) + 27464.7644705\right)} \cdot \sqrt[3]{y \cdot \left(y \cdot \left(y \cdot x + z\right) + 27464.7644705\right)}\right) + 230661.510616\right) + t}{y \cdot \left(y \cdot \left(y \cdot \left(y + a\right) + b\right) + c\right) + i}\]
\frac{\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i}
\frac{y \cdot \left(\sqrt[3]{y \cdot \left(y \cdot \left(y \cdot x + z\right) + 27464.7644705\right)} \cdot \left(\sqrt[3]{y \cdot \left(y \cdot \left(y \cdot x + z\right) + 27464.7644705\right)} \cdot \sqrt[3]{y \cdot \left(y \cdot \left(y \cdot x + z\right) + 27464.7644705\right)}\right) + 230661.510616\right) + t}{y \cdot \left(y \cdot \left(y \cdot \left(y + a\right) + b\right) + c\right) + i}
(FPCore (x y z t a b c i)
 :precision binary64
 (/
  (+ (* (+ (* (+ (* (+ (* x y) z) y) 27464.7644705) y) 230661.510616) y) t)
  (+ (* (+ (* (+ (* (+ y a) y) b) y) c) y) i)))
(FPCore (x y z t a b c i)
 :precision binary64
 (/
  (+
   (*
    y
    (+
     (*
      (cbrt (* y (+ (* y (+ (* y x) z)) 27464.7644705)))
      (*
       (cbrt (* y (+ (* y (+ (* y x) z)) 27464.7644705)))
       (cbrt (* y (+ (* y (+ (* y x) z)) 27464.7644705)))))
     230661.510616))
   t)
  (+ (* y (+ (* y (+ (* y (+ y a)) b)) c)) i)))
double code(double x, double y, double z, double t, double a, double b, double c, double i) {
	return (((double) (((double) (((double) (((double) (((double) (((double) (((double) (((double) (x * y)) + z)) * y)) + 27464.7644705)) * y)) + 230661.510616)) * y)) + t)) / ((double) (((double) (((double) (((double) (((double) (((double) (((double) (y + a)) * y)) + b)) * y)) + c)) * y)) + i)));
}
double code(double x, double y, double z, double t, double a, double b, double c, double i) {
	return (((double) (((double) (y * ((double) (((double) (((double) cbrt(((double) (y * ((double) (((double) (y * ((double) (((double) (y * x)) + z)))) + 27464.7644705)))))) * ((double) (((double) cbrt(((double) (y * ((double) (((double) (y * ((double) (((double) (y * x)) + z)))) + 27464.7644705)))))) * ((double) cbrt(((double) (y * ((double) (((double) (y * ((double) (((double) (y * x)) + z)))) + 27464.7644705)))))))))) + 230661.510616)))) + t)) / ((double) (((double) (y * ((double) (((double) (y * ((double) (((double) (y * ((double) (y + a)))) + b)))) + c)))) + i)));
}

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 Error: 28.8 bits

    \[\frac{\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i}\]
  2. Using strategy rm
  3. Applied add-cube-cbrtError: 28.8 bits

    \[\leadsto \frac{\left(\color{blue}{\left(\sqrt[3]{\left(\left(x \cdot y + z\right) \cdot y + 27464.7644705\right) \cdot y} \cdot \sqrt[3]{\left(\left(x \cdot y + z\right) \cdot y + 27464.7644705\right) \cdot y}\right) \cdot \sqrt[3]{\left(\left(x \cdot y + z\right) \cdot y + 27464.7644705\right) \cdot y}} + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i}\]
  4. SimplifiedError: 28.8 bits

    \[\leadsto \frac{\left(\color{blue}{\left(\sqrt[3]{y \cdot \left(y \cdot \left(x \cdot y + z\right) + 27464.7644705\right)} \cdot \sqrt[3]{y \cdot \left(y \cdot \left(x \cdot y + z\right) + 27464.7644705\right)}\right)} \cdot \sqrt[3]{\left(\left(x \cdot y + z\right) \cdot y + 27464.7644705\right) \cdot y} + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i}\]
  5. SimplifiedError: 28.8 bits

    \[\leadsto \frac{\left(\left(\sqrt[3]{y \cdot \left(y \cdot \left(x \cdot y + z\right) + 27464.7644705\right)} \cdot \sqrt[3]{y \cdot \left(y \cdot \left(x \cdot y + z\right) + 27464.7644705\right)}\right) \cdot \color{blue}{\sqrt[3]{y \cdot \left(y \cdot \left(x \cdot y + z\right) + 27464.7644705\right)}} + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i}\]
  6. Final simplificationError: 28.8 bits

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

Reproduce

herbie shell --seed 2020204 
(FPCore (x y z t a b c i)
  :name "Numeric.SpecFunctions:logGamma from math-functions-0.1.5.2"
  :precision binary64
  (/ (+ (* (+ (* (+ (* (+ (* x y) z) y) 27464.7644705) y) 230661.510616) y) t) (+ (* (+ (* (+ (* (+ y a) y) b) y) c) y) i)))