Average Error: 25.2 → 6.5
Time: 48.3s
Precision: binary64
Cost: 34252
\[ \begin{array}{c}[x, y] = \mathsf{sort}([x, y])\\ [t, a] = \mathsf{sort}([t, a])\\ \end{array} \]
\[\frac{\left(x \cdot y\right) \cdot z}{\sqrt{z \cdot z - t \cdot a}} \]
\[\begin{array}{l} t_1 := {\left(z \cdot z - a \cdot t\right)}^{-0.5}\\ t_2 := {a}^{-0.5} \cdot {\left(\frac{-1}{t}\right)}^{0.5}\\ \mathbf{if}\;z \leq -1.1699102089768085 \cdot 10^{+89}:\\ \;\;\;\;\frac{z}{\frac{a}{\frac{z}{t \cdot 0.5}} - z} \cdot \left(x \cdot y\right)\\ \mathbf{elif}\;z \leq -1 \cdot 10^{-120}:\\ \;\;\;\;z \cdot \left(t_1 \cdot \left(x \cdot y\right)\right)\\ \mathbf{elif}\;z \leq 10^{-135}:\\ \;\;\;\;x \cdot \left(z \cdot \left(y \cdot \mathsf{fma}\left(0.5, \left(\frac{z}{a} \cdot \frac{z}{t}\right) \cdot t_2, t_2\right)\right)\right)\\ \mathbf{elif}\;z \leq 1.75 \cdot 10^{+47}:\\ \;\;\;\;x \cdot \left(z \cdot \left(y \cdot t_1\right)\right)\\ \mathbf{else}:\\ \;\;\;\;\frac{x}{\mathsf{fma}\left(\frac{-0.5}{y}, a \cdot \frac{t}{z \cdot z}, \frac{1}{y}\right)}\\ \end{array} \]
(FPCore (x y z t a)
 :precision binary64
 (/ (* (* x y) z) (sqrt (- (* z z) (* t a)))))
(FPCore (x y z t a)
 :precision binary64
 (let* ((t_1 (pow (- (* z z) (* a t)) -0.5))
        (t_2 (* (pow a -0.5) (pow (/ -1.0 t) 0.5))))
   (if (<= z -1.1699102089768085e+89)
     (* (/ z (- (/ a (/ z (* t 0.5))) z)) (* x y))
     (if (<= z -1e-120)
       (* z (* t_1 (* x y)))
       (if (<= z 1e-135)
         (* x (* z (* y (fma 0.5 (* (* (/ z a) (/ z t)) t_2) t_2))))
         (if (<= z 1.75e+47)
           (* x (* z (* y t_1)))
           (/ x (fma (/ -0.5 y) (* a (/ t (* z z))) (/ 1.0 y)))))))))
double code(double x, double y, double z, double t, double a) {
	return ((x * y) * z) / sqrt(((z * z) - (t * a)));
}
double code(double x, double y, double z, double t, double a) {
	double t_1 = pow(((z * z) - (a * t)), -0.5);
	double t_2 = pow(a, -0.5) * pow((-1.0 / t), 0.5);
	double tmp;
	if (z <= -1.1699102089768085e+89) {
		tmp = (z / ((a / (z / (t * 0.5))) - z)) * (x * y);
	} else if (z <= -1e-120) {
		tmp = z * (t_1 * (x * y));
	} else if (z <= 1e-135) {
		tmp = x * (z * (y * fma(0.5, (((z / a) * (z / t)) * t_2), t_2)));
	} else if (z <= 1.75e+47) {
		tmp = x * (z * (y * t_1));
	} else {
		tmp = x / fma((-0.5 / y), (a * (t / (z * z))), (1.0 / y));
	}
	return tmp;
}
function code(x, y, z, t, a)
	return Float64(Float64(Float64(x * y) * z) / sqrt(Float64(Float64(z * z) - Float64(t * a))))
end
function code(x, y, z, t, a)
	t_1 = Float64(Float64(z * z) - Float64(a * t)) ^ -0.5
	t_2 = Float64((a ^ -0.5) * (Float64(-1.0 / t) ^ 0.5))
	tmp = 0.0
	if (z <= -1.1699102089768085e+89)
		tmp = Float64(Float64(z / Float64(Float64(a / Float64(z / Float64(t * 0.5))) - z)) * Float64(x * y));
	elseif (z <= -1e-120)
		tmp = Float64(z * Float64(t_1 * Float64(x * y)));
	elseif (z <= 1e-135)
		tmp = Float64(x * Float64(z * Float64(y * fma(0.5, Float64(Float64(Float64(z / a) * Float64(z / t)) * t_2), t_2))));
	elseif (z <= 1.75e+47)
		tmp = Float64(x * Float64(z * Float64(y * t_1)));
	else
		tmp = Float64(x / fma(Float64(-0.5 / y), Float64(a * Float64(t / Float64(z * z))), Float64(1.0 / y)));
	end
	return tmp
end
code[x_, y_, z_, t_, a_] := N[(N[(N[(x * y), $MachinePrecision] * z), $MachinePrecision] / N[Sqrt[N[(N[(z * z), $MachinePrecision] - N[(t * a), $MachinePrecision]), $MachinePrecision]], $MachinePrecision]), $MachinePrecision]
code[x_, y_, z_, t_, a_] := Block[{t$95$1 = N[Power[N[(N[(z * z), $MachinePrecision] - N[(a * t), $MachinePrecision]), $MachinePrecision], -0.5], $MachinePrecision]}, Block[{t$95$2 = N[(N[Power[a, -0.5], $MachinePrecision] * N[Power[N[(-1.0 / t), $MachinePrecision], 0.5], $MachinePrecision]), $MachinePrecision]}, If[LessEqual[z, -1.1699102089768085e+89], N[(N[(z / N[(N[(a / N[(z / N[(t * 0.5), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] - z), $MachinePrecision]), $MachinePrecision] * N[(x * y), $MachinePrecision]), $MachinePrecision], If[LessEqual[z, -1e-120], N[(z * N[(t$95$1 * N[(x * y), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[z, 1e-135], N[(x * N[(z * N[(y * N[(0.5 * N[(N[(N[(z / a), $MachinePrecision] * N[(z / t), $MachinePrecision]), $MachinePrecision] * t$95$2), $MachinePrecision] + t$95$2), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[z, 1.75e+47], N[(x * N[(z * N[(y * t$95$1), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], N[(x / N[(N[(-0.5 / y), $MachinePrecision] * N[(a * N[(t / N[(z * z), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + N[(1.0 / y), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]]]]]]]
\frac{\left(x \cdot y\right) \cdot z}{\sqrt{z \cdot z - t \cdot a}}
\begin{array}{l}
t_1 := {\left(z \cdot z - a \cdot t\right)}^{-0.5}\\
t_2 := {a}^{-0.5} \cdot {\left(\frac{-1}{t}\right)}^{0.5}\\
\mathbf{if}\;z \leq -1.1699102089768085 \cdot 10^{+89}:\\
\;\;\;\;\frac{z}{\frac{a}{\frac{z}{t \cdot 0.5}} - z} \cdot \left(x \cdot y\right)\\

\mathbf{elif}\;z \leq -1 \cdot 10^{-120}:\\
\;\;\;\;z \cdot \left(t_1 \cdot \left(x \cdot y\right)\right)\\

\mathbf{elif}\;z \leq 10^{-135}:\\
\;\;\;\;x \cdot \left(z \cdot \left(y \cdot \mathsf{fma}\left(0.5, \left(\frac{z}{a} \cdot \frac{z}{t}\right) \cdot t_2, t_2\right)\right)\right)\\

\mathbf{elif}\;z \leq 1.75 \cdot 10^{+47}:\\
\;\;\;\;x \cdot \left(z \cdot \left(y \cdot t_1\right)\right)\\

\mathbf{else}:\\
\;\;\;\;\frac{x}{\mathsf{fma}\left(\frac{-0.5}{y}, a \cdot \frac{t}{z \cdot z}, \frac{1}{y}\right)}\\


\end{array}

Error

Target

Original25.2
Target7.6
Herbie6.5
\[\begin{array}{l} \mathbf{if}\;z < -3.1921305903852764 \cdot 10^{+46}:\\ \;\;\;\;-y \cdot x\\ \mathbf{elif}\;z < 5.976268120920894 \cdot 10^{+90}:\\ \;\;\;\;\frac{x \cdot z}{\frac{\sqrt{z \cdot z - a \cdot t}}{y}}\\ \mathbf{else}:\\ \;\;\;\;y \cdot x\\ \end{array} \]

Derivation

  1. Split input into 5 regimes
  2. if z < -1.16991020897680846e89

    1. Initial program 42.9

      \[\frac{\left(x \cdot y\right) \cdot z}{\sqrt{z \cdot z - t \cdot a}} \]
    2. Taylor expanded in z around -inf 20.6

      \[\leadsto \frac{\left(x \cdot y\right) \cdot z}{\color{blue}{0.5 \cdot \frac{a \cdot t}{z} + -1 \cdot z}} \]
    3. Simplified20.6

      \[\leadsto \frac{\left(x \cdot y\right) \cdot z}{\color{blue}{\frac{a \cdot \left(t \cdot 0.5\right)}{z} - z}} \]
      Proof
      (-.f64 (/.f64 (*.f64 a (*.f64 t 1/2)) z) z): 0 points increase in error, 0 points decrease in error
      (-.f64 (/.f64 (Rewrite<= associate-*l*_binary64 (*.f64 (*.f64 a t) 1/2)) z) z): 0 points increase in error, 0 points decrease in error
      (-.f64 (/.f64 (Rewrite<= *-commutative_binary64 (*.f64 1/2 (*.f64 a t))) z) z): 0 points increase in error, 0 points decrease in error
      (-.f64 (Rewrite<= associate-*r/_binary64 (*.f64 1/2 (/.f64 (*.f64 a t) z))) z): 0 points increase in error, 0 points decrease in error
      (Rewrite<= unsub-neg_binary64 (+.f64 (*.f64 1/2 (/.f64 (*.f64 a t) z)) (neg.f64 z))): 0 points increase in error, 0 points decrease in error
      (+.f64 (*.f64 1/2 (/.f64 (*.f64 a t) z)) (Rewrite<= mul-1-neg_binary64 (*.f64 -1 z))): 0 points increase in error, 0 points decrease in error
    4. Applied egg-rr2.2

      \[\leadsto \color{blue}{\frac{x \cdot y}{1} \cdot \frac{z}{\frac{a}{\frac{z}{t \cdot 0.5}} - z}} \]

    if -1.16991020897680846e89 < z < -9.99999999999999979e-121

    1. Initial program 7.1

      \[\frac{\left(x \cdot y\right) \cdot z}{\sqrt{z \cdot z - t \cdot a}} \]
    2. Applied egg-rr6.0

      \[\leadsto \color{blue}{z \cdot \left(\left(x \cdot y\right) \cdot {\left(z \cdot z - t \cdot a\right)}^{-0.5}\right)} \]

    if -9.99999999999999979e-121 < z < 1e-135

    1. Initial program 17.2

      \[\frac{\left(x \cdot y\right) \cdot z}{\sqrt{z \cdot z - t \cdot a}} \]
    2. Simplified15.6

      \[\leadsto \color{blue}{x \cdot \frac{y \cdot z}{\sqrt{z \cdot z - t \cdot a}}} \]
      Proof
      (*.f64 x (/.f64 (*.f64 y z) (sqrt.f64 (-.f64 (*.f64 z z) (*.f64 t a))))): 0 points increase in error, 0 points decrease in error
      (Rewrite=> associate-*r/_binary64 (/.f64 (*.f64 x (*.f64 y z)) (sqrt.f64 (-.f64 (*.f64 z z) (*.f64 t a))))): 34 points increase in error, 9 points decrease in error
      (/.f64 (Rewrite<= associate-*l*_binary64 (*.f64 (*.f64 x y) z)) (sqrt.f64 (-.f64 (*.f64 z z) (*.f64 t a)))): 5 points increase in error, 32 points decrease in error
    3. Applied egg-rr16.3

      \[\leadsto x \cdot \color{blue}{\left(z \cdot \left(y \cdot {\left(z \cdot z - t \cdot a\right)}^{-0.5}\right)\right)} \]
    4. Taylor expanded in t around -inf 18.9

      \[\leadsto x \cdot \left(z \cdot \left(y \cdot \color{blue}{\left(0.5 \cdot \frac{{z}^{2} \cdot e^{-0.5 \cdot \left(\log \left(--1 \cdot a\right) + -1 \cdot \log \left(\frac{-1}{t}\right)\right)}}{a \cdot t} + e^{-0.5 \cdot \left(\log \left(--1 \cdot a\right) + -1 \cdot \log \left(\frac{-1}{t}\right)\right)}\right)}\right)\right) \]
    5. Simplified14.1

      \[\leadsto x \cdot \left(z \cdot \left(y \cdot \color{blue}{\mathsf{fma}\left(0.5, \left(\frac{z}{a} \cdot \frac{z}{t}\right) \cdot \left({a}^{-0.5} \cdot {\left(\frac{-1}{t}\right)}^{0.5}\right), {a}^{-0.5} \cdot {\left(\frac{-1}{t}\right)}^{0.5}\right)}\right)\right) \]
      Proof
      (fma.f64 1/2 (*.f64 (*.f64 (/.f64 z a) (/.f64 z t)) (*.f64 (pow.f64 a -1/2) (pow.f64 (/.f64 -1 t) 1/2))) (*.f64 (pow.f64 a -1/2) (pow.f64 (/.f64 -1 t) 1/2))): 0 points increase in error, 0 points decrease in error
      (fma.f64 1/2 (*.f64 (Rewrite<= times-frac_binary64 (/.f64 (*.f64 z z) (*.f64 a t))) (*.f64 (pow.f64 a -1/2) (pow.f64 (/.f64 -1 t) 1/2))) (*.f64 (pow.f64 a -1/2) (pow.f64 (/.f64 -1 t) 1/2))): 25 points increase in error, 6 points decrease in error
      (fma.f64 1/2 (*.f64 (/.f64 (Rewrite<= unpow2_binary64 (pow.f64 z 2)) (*.f64 a t)) (*.f64 (pow.f64 a -1/2) (pow.f64 (/.f64 -1 t) 1/2))) (*.f64 (pow.f64 a -1/2) (pow.f64 (/.f64 -1 t) 1/2))): 0 points increase in error, 0 points decrease in error
      (fma.f64 1/2 (*.f64 (/.f64 (pow.f64 z 2) (*.f64 a t)) (*.f64 (Rewrite<= exp-to-pow_binary64 (exp.f64 (*.f64 (log.f64 a) -1/2))) (pow.f64 (/.f64 -1 t) 1/2))) (*.f64 (pow.f64 a -1/2) (pow.f64 (/.f64 -1 t) 1/2))): 11 points increase in error, 9 points decrease in error
      (fma.f64 1/2 (*.f64 (/.f64 (pow.f64 z 2) (*.f64 a t)) (*.f64 (exp.f64 (Rewrite<= *-commutative_binary64 (*.f64 -1/2 (log.f64 a)))) (pow.f64 (/.f64 -1 t) 1/2))) (*.f64 (pow.f64 a -1/2) (pow.f64 (/.f64 -1 t) 1/2))): 0 points increase in error, 0 points decrease in error
      (fma.f64 1/2 (*.f64 (/.f64 (pow.f64 z 2) (*.f64 a t)) (*.f64 (exp.f64 (*.f64 -1/2 (Rewrite<= remove-double-neg_binary64 (neg.f64 (neg.f64 (log.f64 a)))))) (pow.f64 (/.f64 -1 t) 1/2))) (*.f64 (pow.f64 a -1/2) (pow.f64 (/.f64 -1 t) 1/2))): 0 points increase in error, 0 points decrease in error
      (fma.f64 1/2 (*.f64 (/.f64 (pow.f64 z 2) (*.f64 a t)) (*.f64 (exp.f64 (*.f64 -1/2 (neg.f64 (Rewrite<= log-rec_binary64 (log.f64 (/.f64 1 a)))))) (pow.f64 (/.f64 -1 t) 1/2))) (*.f64 (pow.f64 a -1/2) (pow.f64 (/.f64 -1 t) 1/2))): 0 points increase in error, 0 points decrease in error
      (fma.f64 1/2 (*.f64 (/.f64 (pow.f64 z 2) (*.f64 a t)) (*.f64 (exp.f64 (*.f64 -1/2 (Rewrite<= mul-1-neg_binary64 (*.f64 -1 (log.f64 (/.f64 1 a)))))) (pow.f64 (/.f64 -1 t) 1/2))) (*.f64 (pow.f64 a -1/2) (pow.f64 (/.f64 -1 t) 1/2))): 0 points increase in error, 0 points decrease in error
      (fma.f64 1/2 (*.f64 (/.f64 (pow.f64 z 2) (*.f64 a t)) (*.f64 (exp.f64 (*.f64 -1/2 (Rewrite=> mul-1-neg_binary64 (neg.f64 (log.f64 (/.f64 1 a)))))) (pow.f64 (/.f64 -1 t) 1/2))) (*.f64 (pow.f64 a -1/2) (pow.f64 (/.f64 -1 t) 1/2))): 0 points increase in error, 0 points decrease in error
      (fma.f64 1/2 (*.f64 (/.f64 (pow.f64 z 2) (*.f64 a t)) (*.f64 (exp.f64 (*.f64 -1/2 (neg.f64 (Rewrite=> log-rec_binary64 (neg.f64 (log.f64 a)))))) (pow.f64 (/.f64 -1 t) 1/2))) (*.f64 (pow.f64 a -1/2) (pow.f64 (/.f64 -1 t) 1/2))): 0 points increase in error, 0 points decrease in error
      (fma.f64 1/2 (*.f64 (/.f64 (pow.f64 z 2) (*.f64 a t)) (*.f64 (exp.f64 (*.f64 -1/2 (Rewrite=> remove-double-neg_binary64 (log.f64 a)))) (pow.f64 (/.f64 -1 t) 1/2))) (*.f64 (pow.f64 a -1/2) (pow.f64 (/.f64 -1 t) 1/2))): 0 points increase in error, 0 points decrease in error
      (fma.f64 1/2 (*.f64 (/.f64 (pow.f64 z 2) (*.f64 a t)) (*.f64 (exp.f64 (*.f64 -1/2 (log.f64 (Rewrite<= remove-double-neg_binary64 (neg.f64 (neg.f64 a)))))) (pow.f64 (/.f64 -1 t) 1/2))) (*.f64 (pow.f64 a -1/2) (pow.f64 (/.f64 -1 t) 1/2))): 0 points increase in error, 0 points decrease in error
      (fma.f64 1/2 (*.f64 (/.f64 (pow.f64 z 2) (*.f64 a t)) (*.f64 (exp.f64 (*.f64 -1/2 (log.f64 (neg.f64 (Rewrite=> neg-mul-1_binary64 (*.f64 -1 a)))))) (pow.f64 (/.f64 -1 t) 1/2))) (*.f64 (pow.f64 a -1/2) (pow.f64 (/.f64 -1 t) 1/2))): 0 points increase in error, 0 points decrease in error
      (fma.f64 1/2 (*.f64 (/.f64 (pow.f64 z 2) (*.f64 a t)) (*.f64 (exp.f64 (Rewrite=> *-commutative_binary64 (*.f64 (log.f64 (neg.f64 (*.f64 -1 a))) -1/2))) (pow.f64 (/.f64 -1 t) 1/2))) (*.f64 (pow.f64 a -1/2) (pow.f64 (/.f64 -1 t) 1/2))): 0 points increase in error, 0 points decrease in error
      (fma.f64 1/2 (*.f64 (/.f64 (pow.f64 z 2) (*.f64 a t)) (*.f64 (exp.f64 (*.f64 (log.f64 (neg.f64 (*.f64 -1 a))) -1/2)) (Rewrite<= exp-to-pow_binary64 (exp.f64 (*.f64 (log.f64 (/.f64 -1 t)) 1/2))))) (*.f64 (pow.f64 a -1/2) (pow.f64 (/.f64 -1 t) 1/2))): 10 points increase in error, 10 points decrease in error
      (fma.f64 1/2 (*.f64 (/.f64 (pow.f64 z 2) (*.f64 a t)) (*.f64 (exp.f64 (*.f64 (log.f64 (neg.f64 (*.f64 -1 a))) -1/2)) (exp.f64 (*.f64 (log.f64 (/.f64 -1 t)) (Rewrite<= metadata-eval (*.f64 -1 -1/2)))))) (*.f64 (pow.f64 a -1/2) (pow.f64 (/.f64 -1 t) 1/2))): 0 points increase in error, 0 points decrease in error
      (fma.f64 1/2 (*.f64 (/.f64 (pow.f64 z 2) (*.f64 a t)) (*.f64 (exp.f64 (*.f64 (log.f64 (neg.f64 (*.f64 -1 a))) -1/2)) (exp.f64 (Rewrite<= associate-*l*_binary64 (*.f64 (*.f64 (log.f64 (/.f64 -1 t)) -1) -1/2))))) (*.f64 (pow.f64 a -1/2) (pow.f64 (/.f64 -1 t) 1/2))): 0 points increase in error, 0 points decrease in error
      (fma.f64 1/2 (*.f64 (/.f64 (pow.f64 z 2) (*.f64 a t)) (*.f64 (exp.f64 (*.f64 (log.f64 (neg.f64 (*.f64 -1 a))) -1/2)) (exp.f64 (*.f64 (Rewrite<= *-commutative_binary64 (*.f64 -1 (log.f64 (/.f64 -1 t)))) -1/2)))) (*.f64 (pow.f64 a -1/2) (pow.f64 (/.f64 -1 t) 1/2))): 0 points increase in error, 0 points decrease in error
      (fma.f64 1/2 (*.f64 (/.f64 (pow.f64 z 2) (*.f64 a t)) (Rewrite<= exp-sum_binary64 (exp.f64 (+.f64 (*.f64 (log.f64 (neg.f64 (*.f64 -1 a))) -1/2) (*.f64 (*.f64 -1 (log.f64 (/.f64 -1 t))) -1/2))))) (*.f64 (pow.f64 a -1/2) (pow.f64 (/.f64 -1 t) 1/2))): 5 points increase in error, 7 points decrease in error
      (fma.f64 1/2 (*.f64 (/.f64 (pow.f64 z 2) (*.f64 a t)) (exp.f64 (Rewrite<= distribute-rgt-in_binary64 (*.f64 -1/2 (+.f64 (log.f64 (neg.f64 (*.f64 -1 a))) (*.f64 -1 (log.f64 (/.f64 -1 t)))))))) (*.f64 (pow.f64 a -1/2) (pow.f64 (/.f64 -1 t) 1/2))): 0 points increase in error, 0 points decrease in error
      (fma.f64 1/2 (Rewrite<= associate-/r/_binary64 (/.f64 (pow.f64 z 2) (/.f64 (*.f64 a t) (exp.f64 (*.f64 -1/2 (+.f64 (log.f64 (neg.f64 (*.f64 -1 a))) (*.f64 -1 (log.f64 (/.f64 -1 t))))))))) (*.f64 (pow.f64 a -1/2) (pow.f64 (/.f64 -1 t) 1/2))): 13 points increase in error, 2 points decrease in error
      (fma.f64 1/2 (Rewrite<= associate-/l*_binary64 (/.f64 (*.f64 (pow.f64 z 2) (exp.f64 (*.f64 -1/2 (+.f64 (log.f64 (neg.f64 (*.f64 -1 a))) (*.f64 -1 (log.f64 (/.f64 -1 t))))))) (*.f64 a t))) (*.f64 (pow.f64 a -1/2) (pow.f64 (/.f64 -1 t) 1/2))): 5 points increase in error, 15 points decrease in error
      (fma.f64 1/2 (/.f64 (*.f64 (pow.f64 z 2) (exp.f64 (*.f64 -1/2 (+.f64 (log.f64 (neg.f64 (*.f64 -1 a))) (*.f64 -1 (log.f64 (/.f64 -1 t))))))) (*.f64 a t)) (*.f64 (Rewrite<= exp-to-pow_binary64 (exp.f64 (*.f64 (log.f64 a) -1/2))) (pow.f64 (/.f64 -1 t) 1/2))): 37 points increase in error, 46 points decrease in error
      (fma.f64 1/2 (/.f64 (*.f64 (pow.f64 z 2) (exp.f64 (*.f64 -1/2 (+.f64 (log.f64 (neg.f64 (*.f64 -1 a))) (*.f64 -1 (log.f64 (/.f64 -1 t))))))) (*.f64 a t)) (*.f64 (exp.f64 (Rewrite<= *-commutative_binary64 (*.f64 -1/2 (log.f64 a)))) (pow.f64 (/.f64 -1 t) 1/2))): 0 points increase in error, 0 points decrease in error
      (fma.f64 1/2 (/.f64 (*.f64 (pow.f64 z 2) (exp.f64 (*.f64 -1/2 (+.f64 (log.f64 (neg.f64 (*.f64 -1 a))) (*.f64 -1 (log.f64 (/.f64 -1 t))))))) (*.f64 a t)) (*.f64 (exp.f64 (*.f64 -1/2 (Rewrite<= remove-double-neg_binary64 (neg.f64 (neg.f64 (log.f64 a)))))) (pow.f64 (/.f64 -1 t) 1/2))): 0 points increase in error, 0 points decrease in error
      (fma.f64 1/2 (/.f64 (*.f64 (pow.f64 z 2) (exp.f64 (*.f64 -1/2 (+.f64 (log.f64 (neg.f64 (*.f64 -1 a))) (*.f64 -1 (log.f64 (/.f64 -1 t))))))) (*.f64 a t)) (*.f64 (exp.f64 (*.f64 -1/2 (neg.f64 (Rewrite<= log-rec_binary64 (log.f64 (/.f64 1 a)))))) (pow.f64 (/.f64 -1 t) 1/2))): 0 points increase in error, 0 points decrease in error
      (fma.f64 1/2 (/.f64 (*.f64 (pow.f64 z 2) (exp.f64 (*.f64 -1/2 (+.f64 (log.f64 (neg.f64 (*.f64 -1 a))) (*.f64 -1 (log.f64 (/.f64 -1 t))))))) (*.f64 a t)) (*.f64 (exp.f64 (*.f64 -1/2 (Rewrite<= mul-1-neg_binary64 (*.f64 -1 (log.f64 (/.f64 1 a)))))) (pow.f64 (/.f64 -1 t) 1/2))): 0 points increase in error, 0 points decrease in error
      (fma.f64 1/2 (/.f64 (*.f64 (pow.f64 z 2) (exp.f64 (*.f64 -1/2 (+.f64 (log.f64 (neg.f64 (*.f64 -1 a))) (*.f64 -1 (log.f64 (/.f64 -1 t))))))) (*.f64 a t)) (*.f64 (exp.f64 (*.f64 -1/2 (Rewrite=> mul-1-neg_binary64 (neg.f64 (log.f64 (/.f64 1 a)))))) (pow.f64 (/.f64 -1 t) 1/2))): 0 points increase in error, 0 points decrease in error
      (fma.f64 1/2 (/.f64 (*.f64 (pow.f64 z 2) (exp.f64 (*.f64 -1/2 (+.f64 (log.f64 (neg.f64 (*.f64 -1 a))) (*.f64 -1 (log.f64 (/.f64 -1 t))))))) (*.f64 a t)) (*.f64 (exp.f64 (*.f64 -1/2 (neg.f64 (Rewrite=> log-rec_binary64 (neg.f64 (log.f64 a)))))) (pow.f64 (/.f64 -1 t) 1/2))): 0 points increase in error, 0 points decrease in error
      (fma.f64 1/2 (/.f64 (*.f64 (pow.f64 z 2) (exp.f64 (*.f64 -1/2 (+.f64 (log.f64 (neg.f64 (*.f64 -1 a))) (*.f64 -1 (log.f64 (/.f64 -1 t))))))) (*.f64 a t)) (*.f64 (exp.f64 (*.f64 -1/2 (Rewrite=> remove-double-neg_binary64 (log.f64 a)))) (pow.f64 (/.f64 -1 t) 1/2))): 0 points increase in error, 0 points decrease in error
      (fma.f64 1/2 (/.f64 (*.f64 (pow.f64 z 2) (exp.f64 (*.f64 -1/2 (+.f64 (log.f64 (neg.f64 (*.f64 -1 a))) (*.f64 -1 (log.f64 (/.f64 -1 t))))))) (*.f64 a t)) (*.f64 (exp.f64 (*.f64 -1/2 (log.f64 (Rewrite<= remove-double-neg_binary64 (neg.f64 (neg.f64 a)))))) (pow.f64 (/.f64 -1 t) 1/2))): 0 points increase in error, 0 points decrease in error
      (fma.f64 1/2 (/.f64 (*.f64 (pow.f64 z 2) (exp.f64 (*.f64 -1/2 (+.f64 (log.f64 (neg.f64 (*.f64 -1 a))) (*.f64 -1 (log.f64 (/.f64 -1 t))))))) (*.f64 a t)) (*.f64 (exp.f64 (*.f64 -1/2 (log.f64 (neg.f64 (Rewrite=> neg-mul-1_binary64 (*.f64 -1 a)))))) (pow.f64 (/.f64 -1 t) 1/2))): 0 points increase in error, 0 points decrease in error
      (fma.f64 1/2 (/.f64 (*.f64 (pow.f64 z 2) (exp.f64 (*.f64 -1/2 (+.f64 (log.f64 (neg.f64 (*.f64 -1 a))) (*.f64 -1 (log.f64 (/.f64 -1 t))))))) (*.f64 a t)) (*.f64 (exp.f64 (Rewrite=> *-commutative_binary64 (*.f64 (log.f64 (neg.f64 (*.f64 -1 a))) -1/2))) (pow.f64 (/.f64 -1 t) 1/2))): 0 points increase in error, 0 points decrease in error
      (fma.f64 1/2 (/.f64 (*.f64 (pow.f64 z 2) (exp.f64 (*.f64 -1/2 (+.f64 (log.f64 (neg.f64 (*.f64 -1 a))) (*.f64 -1 (log.f64 (/.f64 -1 t))))))) (*.f64 a t)) (*.f64 (exp.f64 (*.f64 (log.f64 (neg.f64 (*.f64 -1 a))) -1/2)) (Rewrite<= exp-to-pow_binary64 (exp.f64 (*.f64 (log.f64 (/.f64 -1 t)) 1/2))))): 35 points increase in error, 51 points decrease in error
      (fma.f64 1/2 (/.f64 (*.f64 (pow.f64 z 2) (exp.f64 (*.f64 -1/2 (+.f64 (log.f64 (neg.f64 (*.f64 -1 a))) (*.f64 -1 (log.f64 (/.f64 -1 t))))))) (*.f64 a t)) (*.f64 (exp.f64 (*.f64 (log.f64 (neg.f64 (*.f64 -1 a))) -1/2)) (exp.f64 (*.f64 (log.f64 (/.f64 -1 t)) (Rewrite<= metadata-eval (*.f64 -1 -1/2)))))): 0 points increase in error, 0 points decrease in error
      (fma.f64 1/2 (/.f64 (*.f64 (pow.f64 z 2) (exp.f64 (*.f64 -1/2 (+.f64 (log.f64 (neg.f64 (*.f64 -1 a))) (*.f64 -1 (log.f64 (/.f64 -1 t))))))) (*.f64 a t)) (*.f64 (exp.f64 (*.f64 (log.f64 (neg.f64 (*.f64 -1 a))) -1/2)) (exp.f64 (Rewrite<= associate-*l*_binary64 (*.f64 (*.f64 (log.f64 (/.f64 -1 t)) -1) -1/2))))): 0 points increase in error, 0 points decrease in error
      (fma.f64 1/2 (/.f64 (*.f64 (pow.f64 z 2) (exp.f64 (*.f64 -1/2 (+.f64 (log.f64 (neg.f64 (*.f64 -1 a))) (*.f64 -1 (log.f64 (/.f64 -1 t))))))) (*.f64 a t)) (*.f64 (exp.f64 (*.f64 (log.f64 (neg.f64 (*.f64 -1 a))) -1/2)) (exp.f64 (*.f64 (Rewrite<= *-commutative_binary64 (*.f64 -1 (log.f64 (/.f64 -1 t)))) -1/2)))): 0 points increase in error, 0 points decrease in error
      (fma.f64 1/2 (/.f64 (*.f64 (pow.f64 z 2) (exp.f64 (*.f64 -1/2 (+.f64 (log.f64 (neg.f64 (*.f64 -1 a))) (*.f64 -1 (log.f64 (/.f64 -1 t))))))) (*.f64 a t)) (Rewrite<= exp-sum_binary64 (exp.f64 (+.f64 (*.f64 (log.f64 (neg.f64 (*.f64 -1 a))) -1/2) (*.f64 (*.f64 -1 (log.f64 (/.f64 -1 t))) -1/2))))): 39 points increase in error, 27 points decrease in error
      (fma.f64 1/2 (/.f64 (*.f64 (pow.f64 z 2) (exp.f64 (*.f64 -1/2 (+.f64 (log.f64 (neg.f64 (*.f64 -1 a))) (*.f64 -1 (log.f64 (/.f64 -1 t))))))) (*.f64 a t)) (exp.f64 (Rewrite<= distribute-rgt-in_binary64 (*.f64 -1/2 (+.f64 (log.f64 (neg.f64 (*.f64 -1 a))) (*.f64 -1 (log.f64 (/.f64 -1 t)))))))): 0 points increase in error, 0 points decrease in error
      (Rewrite<= fma-def_binary64 (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 z 2) (exp.f64 (*.f64 -1/2 (+.f64 (log.f64 (neg.f64 (*.f64 -1 a))) (*.f64 -1 (log.f64 (/.f64 -1 t))))))) (*.f64 a t))) (exp.f64 (*.f64 -1/2 (+.f64 (log.f64 (neg.f64 (*.f64 -1 a))) (*.f64 -1 (log.f64 (/.f64 -1 t)))))))): 0 points increase in error, 0 points decrease in error

    if 1e-135 < z < 1.75000000000000008e47

    1. Initial program 8.1

      \[\frac{\left(x \cdot y\right) \cdot z}{\sqrt{z \cdot z - t \cdot a}} \]
    2. Simplified6.5

      \[\leadsto \color{blue}{x \cdot \frac{y \cdot z}{\sqrt{z \cdot z - t \cdot a}}} \]
      Proof
      (*.f64 x (/.f64 (*.f64 y z) (sqrt.f64 (-.f64 (*.f64 z z) (*.f64 t a))))): 0 points increase in error, 0 points decrease in error
      (Rewrite=> associate-*r/_binary64 (/.f64 (*.f64 x (*.f64 y z)) (sqrt.f64 (-.f64 (*.f64 z z) (*.f64 t a))))): 34 points increase in error, 9 points decrease in error
      (/.f64 (Rewrite<= associate-*l*_binary64 (*.f64 (*.f64 x y) z)) (sqrt.f64 (-.f64 (*.f64 z z) (*.f64 t a)))): 5 points increase in error, 32 points decrease in error
    3. Applied egg-rr6.8

      \[\leadsto x \cdot \color{blue}{\left(z \cdot \left(y \cdot {\left(z \cdot z - t \cdot a\right)}^{-0.5}\right)\right)} \]

    if 1.75000000000000008e47 < z

    1. Initial program 37.6

      \[\frac{\left(x \cdot y\right) \cdot z}{\sqrt{z \cdot z - t \cdot a}} \]
    2. Simplified37.6

      \[\leadsto \color{blue}{x \cdot \frac{y \cdot z}{\sqrt{z \cdot z - t \cdot a}}} \]
      Proof
      (*.f64 x (/.f64 (*.f64 y z) (sqrt.f64 (-.f64 (*.f64 z z) (*.f64 t a))))): 0 points increase in error, 0 points decrease in error
      (Rewrite=> associate-*r/_binary64 (/.f64 (*.f64 x (*.f64 y z)) (sqrt.f64 (-.f64 (*.f64 z z) (*.f64 t a))))): 34 points increase in error, 9 points decrease in error
      (/.f64 (Rewrite<= associate-*l*_binary64 (*.f64 (*.f64 x y) z)) (sqrt.f64 (-.f64 (*.f64 z z) (*.f64 t a)))): 5 points increase in error, 32 points decrease in error
    3. Applied egg-rr37.3

      \[\leadsto \color{blue}{\frac{x}{\frac{\mathsf{hypot}\left(z, \sqrt{t \cdot \left(-a\right)}\right)}{z \cdot y}}} \]
    4. Taylor expanded in z around inf 64.0

      \[\leadsto \frac{x}{\color{blue}{\frac{1}{y} + 0.5 \cdot \frac{{\left(\sqrt{-1}\right)}^{2} \cdot \left(a \cdot t\right)}{y \cdot {z}^{2}}}} \]
    5. Simplified3.7

      \[\leadsto \frac{x}{\color{blue}{\mathsf{fma}\left(\frac{-0.5}{y}, \frac{t}{z \cdot z} \cdot a, \frac{1}{y}\right)}} \]
      Proof
      (fma.f64 (/.f64 -1/2 y) (*.f64 (/.f64 t (*.f64 z z)) a) (/.f64 1 y)): 0 points increase in error, 0 points decrease in error
      (fma.f64 (/.f64 (Rewrite<= metadata-eval (*.f64 1/2 -1)) y) (*.f64 (/.f64 t (*.f64 z z)) a) (/.f64 1 y)): 0 points increase in error, 0 points decrease in error
      (fma.f64 (Rewrite<= associate-*r/_binary64 (*.f64 1/2 (/.f64 -1 y))) (*.f64 (/.f64 t (*.f64 z z)) a) (/.f64 1 y)): 0 points increase in error, 0 points decrease in error
      (fma.f64 (*.f64 1/2 (/.f64 (Rewrite<= rem-square-sqrt_binary64 (*.f64 (sqrt.f64 -1) (sqrt.f64 -1))) y)) (*.f64 (/.f64 t (*.f64 z z)) a) (/.f64 1 y)): 183 points increase in error, 0 points decrease in error
      (fma.f64 (*.f64 1/2 (/.f64 (Rewrite<= unpow2_binary64 (pow.f64 (sqrt.f64 -1) 2)) y)) (*.f64 (/.f64 t (*.f64 z z)) a) (/.f64 1 y)): 0 points increase in error, 0 points decrease in error
      (fma.f64 (*.f64 1/2 (/.f64 (pow.f64 (sqrt.f64 -1) 2) y)) (*.f64 (/.f64 t (Rewrite<= unpow2_binary64 (pow.f64 z 2))) a) (/.f64 1 y)): 0 points increase in error, 0 points decrease in error
      (fma.f64 (*.f64 1/2 (/.f64 (pow.f64 (sqrt.f64 -1) 2) y)) (Rewrite<= associate-/r/_binary64 (/.f64 t (/.f64 (pow.f64 z 2) a))) (/.f64 1 y)): 0 points increase in error, 0 points decrease in error
      (fma.f64 (*.f64 1/2 (/.f64 (pow.f64 (sqrt.f64 -1) 2) y)) (Rewrite<= associate-/l*_binary64 (/.f64 (*.f64 t a) (pow.f64 z 2))) (/.f64 1 y)): 0 points increase in error, 0 points decrease in error
      (fma.f64 (*.f64 1/2 (/.f64 (pow.f64 (sqrt.f64 -1) 2) y)) (/.f64 (Rewrite<= *-commutative_binary64 (*.f64 a t)) (pow.f64 z 2)) (/.f64 1 y)): 0 points increase in error, 0 points decrease in error
      (Rewrite<= fma-def_binary64 (+.f64 (*.f64 (*.f64 1/2 (/.f64 (pow.f64 (sqrt.f64 -1) 2) y)) (/.f64 (*.f64 a t) (pow.f64 z 2))) (/.f64 1 y))): 0 points increase in error, 0 points decrease in error
      (+.f64 (Rewrite<= associate-*r*_binary64 (*.f64 1/2 (*.f64 (/.f64 (pow.f64 (sqrt.f64 -1) 2) y) (/.f64 (*.f64 a t) (pow.f64 z 2))))) (/.f64 1 y)): 0 points increase in error, 0 points decrease in error
      (+.f64 (*.f64 1/2 (Rewrite<= times-frac_binary64 (/.f64 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 a t)) (*.f64 y (pow.f64 z 2))))) (/.f64 1 y)): 0 points increase in error, 0 points decrease in error
      (Rewrite<= +-commutative_binary64 (+.f64 (/.f64 1 y) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 a t)) (*.f64 y (pow.f64 z 2)))))): 0 points increase in error, 0 points decrease in error
  3. Recombined 5 regimes into one program.
  4. Final simplification6.5

    \[\leadsto \begin{array}{l} \mathbf{if}\;z \leq -1.1699102089768085 \cdot 10^{+89}:\\ \;\;\;\;\frac{z}{\frac{a}{\frac{z}{t \cdot 0.5}} - z} \cdot \left(x \cdot y\right)\\ \mathbf{elif}\;z \leq -1 \cdot 10^{-120}:\\ \;\;\;\;z \cdot \left({\left(z \cdot z - a \cdot t\right)}^{-0.5} \cdot \left(x \cdot y\right)\right)\\ \mathbf{elif}\;z \leq 10^{-135}:\\ \;\;\;\;x \cdot \left(z \cdot \left(y \cdot \mathsf{fma}\left(0.5, \left(\frac{z}{a} \cdot \frac{z}{t}\right) \cdot \left({a}^{-0.5} \cdot {\left(\frac{-1}{t}\right)}^{0.5}\right), {a}^{-0.5} \cdot {\left(\frac{-1}{t}\right)}^{0.5}\right)\right)\right)\\ \mathbf{elif}\;z \leq 1.75 \cdot 10^{+47}:\\ \;\;\;\;x \cdot \left(z \cdot \left(y \cdot {\left(z \cdot z - a \cdot t\right)}^{-0.5}\right)\right)\\ \mathbf{else}:\\ \;\;\;\;\frac{x}{\mathsf{fma}\left(\frac{-0.5}{y}, a \cdot \frac{t}{z \cdot z}, \frac{1}{y}\right)}\\ \end{array} \]

Alternatives

Alternative 1
Error6.4
Cost13964
\[\begin{array}{l} t_1 := {\left(z \cdot z - a \cdot t\right)}^{-0.5}\\ \mathbf{if}\;z \leq -1.1699102089768085 \cdot 10^{+89}:\\ \;\;\;\;\frac{z}{\frac{a}{\frac{z}{t \cdot 0.5}} - z} \cdot \left(x \cdot y\right)\\ \mathbf{elif}\;z \leq -1 \cdot 10^{-120}:\\ \;\;\;\;z \cdot \left(t_1 \cdot \left(x \cdot y\right)\right)\\ \mathbf{elif}\;z \leq 10^{-135}:\\ \;\;\;\;x \cdot \left(z \cdot \left(y \cdot \left({a}^{-0.5} \cdot {\left(-t\right)}^{-0.5}\right)\right)\right)\\ \mathbf{elif}\;z \leq 1.75 \cdot 10^{+47}:\\ \;\;\;\;x \cdot \left(z \cdot \left(y \cdot t_1\right)\right)\\ \mathbf{else}:\\ \;\;\;\;\frac{x}{\mathsf{fma}\left(\frac{-0.5}{y}, a \cdot \frac{t}{z \cdot z}, \frac{1}{y}\right)}\\ \end{array} \]
Alternative 2
Error6.8
Cost13900
\[\begin{array}{l} t_1 := {\left(z \cdot z - a \cdot t\right)}^{-0.5}\\ \mathbf{if}\;z \leq -1.1699102089768085 \cdot 10^{+89}:\\ \;\;\;\;\frac{z}{\frac{a}{\frac{z}{t \cdot 0.5}} - z} \cdot \left(x \cdot y\right)\\ \mathbf{elif}\;z \leq -1.8 \cdot 10^{-232}:\\ \;\;\;\;z \cdot \left(t_1 \cdot \left(x \cdot y\right)\right)\\ \mathbf{elif}\;z \leq 10^{-115}:\\ \;\;\;\;\frac{y}{\mathsf{hypot}\left(z, \sqrt{a \cdot \left(-t\right)}\right)} \cdot \left(z \cdot x\right)\\ \mathbf{elif}\;z \leq 1.75 \cdot 10^{+47}:\\ \;\;\;\;x \cdot \left(z \cdot \left(y \cdot t_1\right)\right)\\ \mathbf{else}:\\ \;\;\;\;\frac{x}{\mathsf{fma}\left(\frac{-0.5}{y}, a \cdot \frac{t}{z \cdot z}, \frac{1}{y}\right)}\\ \end{array} \]
Alternative 3
Error6.5
Cost13900
\[\begin{array}{l} t_1 := {\left(z \cdot z - a \cdot t\right)}^{-0.5}\\ \mathbf{if}\;z \leq -1.1699102089768085 \cdot 10^{+89}:\\ \;\;\;\;\frac{z}{\frac{a}{\frac{z}{t \cdot 0.5}} - z} \cdot \left(x \cdot y\right)\\ \mathbf{elif}\;z \leq -1 \cdot 10^{-61}:\\ \;\;\;\;z \cdot \left(t_1 \cdot \left(x \cdot y\right)\right)\\ \mathbf{elif}\;z \leq 10^{-110}:\\ \;\;\;\;\frac{x}{\frac{\mathsf{hypot}\left(z, \sqrt{a \cdot \left(-t\right)}\right)}{z \cdot y}}\\ \mathbf{elif}\;z \leq 1.75 \cdot 10^{+47}:\\ \;\;\;\;x \cdot \left(z \cdot \left(y \cdot t_1\right)\right)\\ \mathbf{else}:\\ \;\;\;\;\frac{x}{\mathsf{fma}\left(\frac{-0.5}{y}, a \cdot \frac{t}{z \cdot z}, \frac{1}{y}\right)}\\ \end{array} \]
Alternative 4
Error7.2
Cost7888
\[\begin{array}{l} t_1 := {\left(z \cdot z - a \cdot t\right)}^{-0.5}\\ t_2 := y \cdot t_1\\ \mathbf{if}\;z \leq -1.1699102089768085 \cdot 10^{+89}:\\ \;\;\;\;\frac{z}{\frac{a}{\frac{z}{t \cdot 0.5}} - z} \cdot \left(x \cdot y\right)\\ \mathbf{elif}\;z \leq -1 \cdot 10^{-232}:\\ \;\;\;\;z \cdot \left(t_1 \cdot \left(x \cdot y\right)\right)\\ \mathbf{elif}\;z \leq 5 \cdot 10^{-96}:\\ \;\;\;\;t_2 \cdot \left(z \cdot x\right)\\ \mathbf{elif}\;z \leq 1.75 \cdot 10^{+47}:\\ \;\;\;\;x \cdot \left(z \cdot t_2\right)\\ \mathbf{else}:\\ \;\;\;\;\frac{x}{\mathsf{fma}\left(\frac{-0.5}{y}, a \cdot \frac{t}{z \cdot z}, \frac{1}{y}\right)}\\ \end{array} \]
Alternative 5
Error7.3
Cost7824
\[\begin{array}{l} t_1 := {\left(z \cdot z - a \cdot t\right)}^{-0.5}\\ t_2 := y \cdot t_1\\ \mathbf{if}\;z \leq -1.1699102089768085 \cdot 10^{+89}:\\ \;\;\;\;\frac{z}{\frac{a}{\frac{z}{t \cdot 0.5}} - z} \cdot \left(x \cdot y\right)\\ \mathbf{elif}\;z \leq -1 \cdot 10^{-232}:\\ \;\;\;\;z \cdot \left(t_1 \cdot \left(x \cdot y\right)\right)\\ \mathbf{elif}\;z \leq 5 \cdot 10^{-96}:\\ \;\;\;\;t_2 \cdot \left(z \cdot x\right)\\ \mathbf{elif}\;z \leq 1.75 \cdot 10^{+47}:\\ \;\;\;\;x \cdot \left(z \cdot t_2\right)\\ \mathbf{else}:\\ \;\;\;\;x \cdot y\\ \end{array} \]
Alternative 6
Error7.2
Cost7760
\[\begin{array}{l} t_1 := z \cdot z - a \cdot t\\ t_2 := {t_1}^{-0.5}\\ \mathbf{if}\;z \leq -1.1699102089768085 \cdot 10^{+89}:\\ \;\;\;\;\frac{z}{\frac{a}{\frac{z}{t \cdot 0.5}} - z} \cdot \left(x \cdot y\right)\\ \mathbf{elif}\;z \leq -1 \cdot 10^{-232}:\\ \;\;\;\;z \cdot \left(t_2 \cdot \left(x \cdot y\right)\right)\\ \mathbf{elif}\;z \leq 5 \cdot 10^{-96}:\\ \;\;\;\;\left(y \cdot t_2\right) \cdot \left(z \cdot x\right)\\ \mathbf{elif}\;z \leq 2.711092194821958 \cdot 10^{+131}:\\ \;\;\;\;x \cdot \frac{z \cdot y}{\sqrt{t_1}}\\ \mathbf{else}:\\ \;\;\;\;x \cdot y\\ \end{array} \]
Alternative 7
Error7.8
Cost7496
\[\begin{array}{l} \mathbf{if}\;z \leq -2.2 \cdot 10^{+47}:\\ \;\;\;\;\frac{z}{\frac{a}{\frac{z}{t \cdot 0.5}} - z} \cdot \left(x \cdot y\right)\\ \mathbf{elif}\;z \leq 1.75 \cdot 10^{+47}:\\ \;\;\;\;\frac{y \cdot \left(z \cdot x\right)}{\sqrt{z \cdot z - a \cdot t}}\\ \mathbf{else}:\\ \;\;\;\;x \cdot y\\ \end{array} \]
Alternative 8
Error6.8
Cost7496
\[\begin{array}{l} \mathbf{if}\;z \leq -2.027284214230232 \cdot 10^{+110}:\\ \;\;\;\;\frac{z}{\frac{a}{\frac{z}{t \cdot 0.5}} - z} \cdot \left(x \cdot y\right)\\ \mathbf{elif}\;z \leq 2.711092194821958 \cdot 10^{+131}:\\ \;\;\;\;x \cdot \frac{z \cdot y}{\sqrt{z \cdot z - a \cdot t}}\\ \mathbf{else}:\\ \;\;\;\;x \cdot y\\ \end{array} \]
Alternative 9
Error12.3
Cost7304
\[\begin{array}{l} \mathbf{if}\;z \leq -1.85 \cdot 10^{-232}:\\ \;\;\;\;\frac{z}{\frac{a}{\frac{z}{t \cdot 0.5}} - z} \cdot \left(x \cdot y\right)\\ \mathbf{elif}\;z \leq 2.2 \cdot 10^{-79}:\\ \;\;\;\;\frac{y \cdot \left(z \cdot x\right)}{\sqrt{a \cdot \left(-t\right)}}\\ \mathbf{else}:\\ \;\;\;\;x \cdot y\\ \end{array} \]
Alternative 10
Error11.8
Cost7304
\[\begin{array}{l} \mathbf{if}\;z \leq -2.05 \cdot 10^{-209}:\\ \;\;\;\;\frac{z}{\frac{a}{\frac{z}{t \cdot 0.5}} - z} \cdot \left(x \cdot y\right)\\ \mathbf{elif}\;z \leq 3.2 \cdot 10^{-73}:\\ \;\;\;\;x \cdot \frac{z \cdot y}{\sqrt{a \cdot \left(-t\right)}}\\ \mathbf{else}:\\ \;\;\;\;x \cdot y\\ \end{array} \]
Alternative 11
Error16.2
Cost1224
\[\begin{array}{l} \mathbf{if}\;z \leq -2.2 \cdot 10^{+38}:\\ \;\;\;\;x \cdot \left(-y\right)\\ \mathbf{elif}\;z \leq 6.5 \cdot 10^{-213}:\\ \;\;\;\;\frac{z \cdot \left(x \cdot y\right)}{\left(t \cdot 0.5\right) \cdot \frac{a}{z} - z}\\ \mathbf{else}:\\ \;\;\;\;x \cdot y\\ \end{array} \]
Alternative 12
Error16.2
Cost1224
\[\begin{array}{l} \mathbf{if}\;z \leq -2.9608937676596267 \cdot 10^{+100}:\\ \;\;\;\;x \cdot \left(-y\right)\\ \mathbf{elif}\;z \leq 6.5 \cdot 10^{-213}:\\ \;\;\;\;z \cdot \frac{x \cdot y}{\frac{a}{\frac{z}{t \cdot 0.5}} - z}\\ \mathbf{else}:\\ \;\;\;\;x \cdot y\\ \end{array} \]
Alternative 13
Error16.2
Cost1224
\[\begin{array}{l} \mathbf{if}\;z \leq -2.027284214230232 \cdot 10^{+110}:\\ \;\;\;\;x \cdot \left(-y\right)\\ \mathbf{elif}\;z \leq 5.8 \cdot 10^{-202}:\\ \;\;\;\;x \cdot \frac{z \cdot y}{\frac{a \cdot \left(t \cdot 0.5\right)}{z} - z}\\ \mathbf{else}:\\ \;\;\;\;x \cdot y\\ \end{array} \]
Alternative 14
Error17.2
Cost1096
\[\begin{array}{l} \mathbf{if}\;z \leq -1.3 \cdot 10^{-125}:\\ \;\;\;\;x \cdot \left(-y\right)\\ \mathbf{elif}\;z \leq 5.8 \cdot 10^{-202}:\\ \;\;\;\;-2 \cdot \left(\left(x \cdot \left(z \cdot z\right)\right) \cdot \frac{y}{a \cdot t}\right)\\ \mathbf{else}:\\ \;\;\;\;x \cdot y\\ \end{array} \]
Alternative 15
Error17.1
Cost1096
\[\begin{array}{l} \mathbf{if}\;z \leq -1.3 \cdot 10^{-125}:\\ \;\;\;\;x \cdot \left(-y\right)\\ \mathbf{elif}\;z \leq 6.5 \cdot 10^{-213}:\\ \;\;\;\;-2 \cdot \left(y \cdot \frac{\left(z \cdot z\right) \cdot \frac{x}{t}}{a}\right)\\ \mathbf{else}:\\ \;\;\;\;x \cdot y\\ \end{array} \]
Alternative 16
Error16.9
Cost1096
\[\begin{array}{l} \mathbf{if}\;z \leq -1.3 \cdot 10^{-125}:\\ \;\;\;\;x \cdot \left(-y\right)\\ \mathbf{elif}\;z \leq 5.8 \cdot 10^{-202}:\\ \;\;\;\;x \cdot \left(-2 \cdot \left(z \cdot \frac{y}{t \cdot \frac{a}{z}}\right)\right)\\ \mathbf{else}:\\ \;\;\;\;x \cdot y\\ \end{array} \]
Alternative 17
Error15.8
Cost1092
\[\begin{array}{l} \mathbf{if}\;z \leq 6.5 \cdot 10^{-213}:\\ \;\;\;\;\frac{z}{\frac{a}{\frac{z}{t \cdot 0.5}} - z} \cdot \left(x \cdot y\right)\\ \mathbf{else}:\\ \;\;\;\;x \cdot y\\ \end{array} \]
Alternative 18
Error17.6
Cost712
\[\begin{array}{l} \mathbf{if}\;z \leq -5.6 \cdot 10^{-209}:\\ \;\;\;\;x \cdot \left(-y\right)\\ \mathbf{elif}\;z \leq 6.8 \cdot 10^{-247}:\\ \;\;\;\;\frac{y \cdot \left(z \cdot x\right)}{z}\\ \mathbf{else}:\\ \;\;\;\;x \cdot y\\ \end{array} \]
Alternative 19
Error17.2
Cost712
\[\begin{array}{l} \mathbf{if}\;z \leq -1.78 \cdot 10^{-99}:\\ \;\;\;\;x \cdot \left(-y\right)\\ \mathbf{elif}\;z \leq 6.5 \cdot 10^{-213}:\\ \;\;\;\;-1 + \left(1 - x \cdot y\right)\\ \mathbf{else}:\\ \;\;\;\;x \cdot y\\ \end{array} \]
Alternative 20
Error19.1
Cost388
\[\begin{array}{l} \mathbf{if}\;z \leq -3.3 \cdot 10^{-304}:\\ \;\;\;\;x \cdot \left(-y\right)\\ \mathbf{else}:\\ \;\;\;\;x \cdot y\\ \end{array} \]
Alternative 21
Error36.7
Cost192
\[x \cdot y \]

Error

Reproduce

herbie shell --seed 2022300 
(FPCore (x y z t a)
  :name "Statistics.Math.RootFinding:ridders from math-functions-0.1.5.2"
  :precision binary64

  :herbie-target
  (if (< z -3.1921305903852764e+46) (- (* y x)) (if (< z 5.976268120920894e+90) (/ (* x z) (/ (sqrt (- (* z z) (* a t))) y)) (* y x)))

  (/ (* (* x y) z) (sqrt (- (* z z) (* t a)))))