Average Error: 3.6 → 1.8
Time: 4.6m
Precision: 64
Internal Precision: 128
\[\frac{x}{x + y \cdot e^{2.0 \cdot \left(\frac{z \cdot \sqrt{t + a}}{t} - \left(b - c\right) \cdot \left(\left(a + \frac{5.0}{6.0}\right) - \frac{2.0}{t \cdot 3.0}\right)\right)}}\]
\[\begin{array}{l} \mathbf{if}\;t \le -1.4498573949395455 \cdot 10^{-37}:\\ \;\;\;\;\frac{x}{(y \cdot \left(e^{\left(\frac{z}{\frac{t}{\sqrt{t + a}}} - \left(\left(\frac{5.0}{6.0} + a\right) - \frac{2.0}{t \cdot 3.0}\right) \cdot \left(b - c\right)\right) \cdot 2.0}\right) + x)_*}\\ \mathbf{elif}\;t \le 4.178590292006644 \cdot 10^{-177}:\\ \;\;\;\;\frac{x}{(y \cdot \left(e^{\frac{\left(\left(t \cdot 3.0\right) \cdot \left(\sqrt{t + a} \cdot z\right)\right) \cdot \left(\frac{5.0}{6.0} - a\right) - \left(\left(\left(\frac{5.0}{6.0} + a\right) \cdot \left(t \cdot 3.0\right) - 2.0\right) \cdot \left(\frac{5.0}{6.0} - a\right)\right) \cdot \left(t \cdot \left(b - c\right)\right)}{t \cdot \left(\left(\frac{5.0}{6.0} - a\right) \cdot \left(t \cdot 3.0\right)\right)} \cdot 2.0}\right) + x)_*}\\ \mathbf{else}:\\ \;\;\;\;\frac{x}{(y \cdot \left(e^{\left(\frac{z}{\frac{t}{\sqrt{t + a}}} - \left(\left(\frac{5.0}{6.0} + a\right) - \frac{2.0}{t \cdot 3.0}\right) \cdot \left(b - c\right)\right) \cdot 2.0}\right) + x)_*}\\ \end{array}\]

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

Derivation

  1. Split input into 2 regimes
  2. if t < -1.4498573949395455e-37 or 4.178590292006644e-177 < t

    1. Initial program 2.3

      \[\frac{x}{x + y \cdot e^{2.0 \cdot \left(\frac{z \cdot \sqrt{t + a}}{t} - \left(b - c\right) \cdot \left(\left(a + \frac{5.0}{6.0}\right) - \frac{2.0}{t \cdot 3.0}\right)\right)}}\]
    2. Simplified2.3

      \[\leadsto \color{blue}{\frac{x}{(y \cdot \left(e^{2.0 \cdot \left(\frac{z \cdot \sqrt{a + t}}{t} - \left(\left(\frac{5.0}{6.0} + a\right) - \frac{2.0}{t \cdot 3.0}\right) \cdot \left(b - c\right)\right)}\right) + x)_*}}\]
    3. Using strategy rm
    4. Applied associate-/l*0.7

      \[\leadsto \frac{x}{(y \cdot \left(e^{2.0 \cdot \left(\color{blue}{\frac{z}{\frac{t}{\sqrt{a + t}}}} - \left(\left(\frac{5.0}{6.0} + a\right) - \frac{2.0}{t \cdot 3.0}\right) \cdot \left(b - c\right)\right)}\right) + x)_*}\]

    if -1.4498573949395455e-37 < t < 4.178590292006644e-177

    1. Initial program 6.9

      \[\frac{x}{x + y \cdot e^{2.0 \cdot \left(\frac{z \cdot \sqrt{t + a}}{t} - \left(b - c\right) \cdot \left(\left(a + \frac{5.0}{6.0}\right) - \frac{2.0}{t \cdot 3.0}\right)\right)}}\]
    2. Simplified6.9

      \[\leadsto \color{blue}{\frac{x}{(y \cdot \left(e^{2.0 \cdot \left(\frac{z \cdot \sqrt{a + t}}{t} - \left(\left(\frac{5.0}{6.0} + a\right) - \frac{2.0}{t \cdot 3.0}\right) \cdot \left(b - c\right)\right)}\right) + x)_*}}\]
    3. Using strategy rm
    4. Applied flip-+10.2

      \[\leadsto \frac{x}{(y \cdot \left(e^{2.0 \cdot \left(\frac{z \cdot \sqrt{a + t}}{t} - \left(\color{blue}{\frac{\frac{5.0}{6.0} \cdot \frac{5.0}{6.0} - a \cdot a}{\frac{5.0}{6.0} - a}} - \frac{2.0}{t \cdot 3.0}\right) \cdot \left(b - c\right)\right)}\right) + x)_*}\]
    5. Applied frac-sub10.2

      \[\leadsto \frac{x}{(y \cdot \left(e^{2.0 \cdot \left(\frac{z \cdot \sqrt{a + t}}{t} - \color{blue}{\frac{\left(\frac{5.0}{6.0} \cdot \frac{5.0}{6.0} - a \cdot a\right) \cdot \left(t \cdot 3.0\right) - \left(\frac{5.0}{6.0} - a\right) \cdot 2.0}{\left(\frac{5.0}{6.0} - a\right) \cdot \left(t \cdot 3.0\right)}} \cdot \left(b - c\right)\right)}\right) + x)_*}\]
    6. Applied associate-*l/10.2

      \[\leadsto \frac{x}{(y \cdot \left(e^{2.0 \cdot \left(\frac{z \cdot \sqrt{a + t}}{t} - \color{blue}{\frac{\left(\left(\frac{5.0}{6.0} \cdot \frac{5.0}{6.0} - a \cdot a\right) \cdot \left(t \cdot 3.0\right) - \left(\frac{5.0}{6.0} - a\right) \cdot 2.0\right) \cdot \left(b - c\right)}{\left(\frac{5.0}{6.0} - a\right) \cdot \left(t \cdot 3.0\right)}}\right)}\right) + x)_*}\]
    7. Applied frac-sub8.2

      \[\leadsto \frac{x}{(y \cdot \left(e^{2.0 \cdot \color{blue}{\frac{\left(z \cdot \sqrt{a + t}\right) \cdot \left(\left(\frac{5.0}{6.0} - a\right) \cdot \left(t \cdot 3.0\right)\right) - t \cdot \left(\left(\left(\frac{5.0}{6.0} \cdot \frac{5.0}{6.0} - a \cdot a\right) \cdot \left(t \cdot 3.0\right) - \left(\frac{5.0}{6.0} - a\right) \cdot 2.0\right) \cdot \left(b - c\right)\right)}{t \cdot \left(\left(\frac{5.0}{6.0} - a\right) \cdot \left(t \cdot 3.0\right)\right)}}}\right) + x)_*}\]
    8. Simplified4.4

      \[\leadsto \frac{x}{(y \cdot \left(e^{2.0 \cdot \frac{\color{blue}{\left(\left(\sqrt{a + t} \cdot z\right) \cdot \left(t \cdot 3.0\right)\right) \cdot \left(\frac{5.0}{6.0} - a\right) - \left(\left(b - c\right) \cdot t\right) \cdot \left(\left(\frac{5.0}{6.0} - a\right) \cdot \left(\left(a + \frac{5.0}{6.0}\right) \cdot \left(t \cdot 3.0\right) - 2.0\right)\right)}}{t \cdot \left(\left(\frac{5.0}{6.0} - a\right) \cdot \left(t \cdot 3.0\right)\right)}}\right) + x)_*}\]
  3. Recombined 2 regimes into one program.
  4. Final simplification1.8

    \[\leadsto \begin{array}{l} \mathbf{if}\;t \le -1.4498573949395455 \cdot 10^{-37}:\\ \;\;\;\;\frac{x}{(y \cdot \left(e^{\left(\frac{z}{\frac{t}{\sqrt{t + a}}} - \left(\left(\frac{5.0}{6.0} + a\right) - \frac{2.0}{t \cdot 3.0}\right) \cdot \left(b - c\right)\right) \cdot 2.0}\right) + x)_*}\\ \mathbf{elif}\;t \le 4.178590292006644 \cdot 10^{-177}:\\ \;\;\;\;\frac{x}{(y \cdot \left(e^{\frac{\left(\left(t \cdot 3.0\right) \cdot \left(\sqrt{t + a} \cdot z\right)\right) \cdot \left(\frac{5.0}{6.0} - a\right) - \left(\left(\left(\frac{5.0}{6.0} + a\right) \cdot \left(t \cdot 3.0\right) - 2.0\right) \cdot \left(\frac{5.0}{6.0} - a\right)\right) \cdot \left(t \cdot \left(b - c\right)\right)}{t \cdot \left(\left(\frac{5.0}{6.0} - a\right) \cdot \left(t \cdot 3.0\right)\right)} \cdot 2.0}\right) + x)_*}\\ \mathbf{else}:\\ \;\;\;\;\frac{x}{(y \cdot \left(e^{\left(\frac{z}{\frac{t}{\sqrt{t + a}}} - \left(\left(\frac{5.0}{6.0} + a\right) - \frac{2.0}{t \cdot 3.0}\right) \cdot \left(b - c\right)\right) \cdot 2.0}\right) + x)_*}\\ \end{array}\]

Reproduce

herbie shell --seed 2019053 +o rules:numerics
(FPCore (x y z t a b c)
  :name "Numeric.SpecFunctions:invIncompleteBetaWorker from math-functions-0.1.5.2"
  (/ x (+ x (* y (exp (* 2.0 (- (/ (* z (sqrt (+ t a))) t) (* (- b c) (- (+ a (/ 5.0 6.0)) (/ 2.0 (* t 3.0)))))))))))