Main:z from

Percentage Accurate: 92.0% → 99.1%
Time: 13.6s
Alternatives: 33
Speedup: 0.6×

Specification

?
\[\left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
(FPCore (x y z t)
  :precision binary64
  :pre TRUE
  (+
 (+
  (+ (- (sqrt (+ x 1.0)) (sqrt x)) (- (sqrt (+ y 1.0)) (sqrt y)))
  (- (sqrt (+ z 1.0)) (sqrt z)))
 (- (sqrt (+ t 1.0)) (sqrt t))))
double code(double x, double y, double z, double t) {
	return (((sqrt((x + 1.0)) - sqrt(x)) + (sqrt((y + 1.0)) - sqrt(y))) + (sqrt((z + 1.0)) - sqrt(z))) + (sqrt((t + 1.0)) - sqrt(t));
}
real(8) function code(x, y, z, t)
use fmin_fmax_functions
    real(8), intent (in) :: x
    real(8), intent (in) :: y
    real(8), intent (in) :: z
    real(8), intent (in) :: t
    code = (((sqrt((x + 1.0d0)) - sqrt(x)) + (sqrt((y + 1.0d0)) - sqrt(y))) + (sqrt((z + 1.0d0)) - sqrt(z))) + (sqrt((t + 1.0d0)) - sqrt(t))
end function
public static double code(double x, double y, double z, double t) {
	return (((Math.sqrt((x + 1.0)) - Math.sqrt(x)) + (Math.sqrt((y + 1.0)) - Math.sqrt(y))) + (Math.sqrt((z + 1.0)) - Math.sqrt(z))) + (Math.sqrt((t + 1.0)) - Math.sqrt(t));
}
def code(x, y, z, t):
	return (((math.sqrt((x + 1.0)) - math.sqrt(x)) + (math.sqrt((y + 1.0)) - math.sqrt(y))) + (math.sqrt((z + 1.0)) - math.sqrt(z))) + (math.sqrt((t + 1.0)) - math.sqrt(t))
function code(x, y, z, t)
	return Float64(Float64(Float64(Float64(sqrt(Float64(x + 1.0)) - sqrt(x)) + Float64(sqrt(Float64(y + 1.0)) - sqrt(y))) + Float64(sqrt(Float64(z + 1.0)) - sqrt(z))) + Float64(sqrt(Float64(t + 1.0)) - sqrt(t)))
end
function tmp = code(x, y, z, t)
	tmp = (((sqrt((x + 1.0)) - sqrt(x)) + (sqrt((y + 1.0)) - sqrt(y))) + (sqrt((z + 1.0)) - sqrt(z))) + (sqrt((t + 1.0)) - sqrt(t));
end
code[x_, y_, z_, t_] := N[(N[(N[(N[(N[Sqrt[N[(x + 1.0), $MachinePrecision]], $MachinePrecision] - N[Sqrt[x], $MachinePrecision]), $MachinePrecision] + N[(N[Sqrt[N[(y + 1.0), $MachinePrecision]], $MachinePrecision] - N[Sqrt[y], $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + N[(N[Sqrt[N[(z + 1.0), $MachinePrecision]], $MachinePrecision] - N[Sqrt[z], $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + N[(N[Sqrt[N[(t + 1.0), $MachinePrecision]], $MachinePrecision] - N[Sqrt[t], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]
f(x, y, z, t):
	x in [-inf, +inf],
	y in [-inf, +inf],
	z in [-inf, +inf],
	t in [-inf, +inf]
code: THEORY
BEGIN
f(x, y, z, t: real): real =
	((((sqrt((x + (1)))) - (sqrt(x))) + ((sqrt((y + (1)))) - (sqrt(y)))) + ((sqrt((z + (1)))) - (sqrt(z)))) + ((sqrt((t + (1)))) - (sqrt(t)))
END code
\left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right)

Local Percentage Accuracy vs ?

The average percentage accuracy by input value. Horizontal axis shows value of an input variable; the variable is choosen in the title. Vertical axis is accuracy; higher is better. Red represent the original program, while blue represents Herbie's suggestion. These can be toggled with buttons below the plot. The line is an average while dots represent individual samples.

Accuracy vs Speed?

Herbie found 33 alternatives:

AlternativeAccuracySpeedup
The accuracy (vertical axis) and speed (horizontal axis) of each alternatives. Up and to the right is better. The red square shows the initial program, and each blue circle shows an alternative.The line shows the best available speed-accuracy tradeoffs.

Initial Program: 92.0% accurate, 1.0× speedup?

\[\left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
(FPCore (x y z t)
  :precision binary64
  :pre TRUE
  (+
 (+
  (+ (- (sqrt (+ x 1.0)) (sqrt x)) (- (sqrt (+ y 1.0)) (sqrt y)))
  (- (sqrt (+ z 1.0)) (sqrt z)))
 (- (sqrt (+ t 1.0)) (sqrt t))))
double code(double x, double y, double z, double t) {
	return (((sqrt((x + 1.0)) - sqrt(x)) + (sqrt((y + 1.0)) - sqrt(y))) + (sqrt((z + 1.0)) - sqrt(z))) + (sqrt((t + 1.0)) - sqrt(t));
}
real(8) function code(x, y, z, t)
use fmin_fmax_functions
    real(8), intent (in) :: x
    real(8), intent (in) :: y
    real(8), intent (in) :: z
    real(8), intent (in) :: t
    code = (((sqrt((x + 1.0d0)) - sqrt(x)) + (sqrt((y + 1.0d0)) - sqrt(y))) + (sqrt((z + 1.0d0)) - sqrt(z))) + (sqrt((t + 1.0d0)) - sqrt(t))
end function
public static double code(double x, double y, double z, double t) {
	return (((Math.sqrt((x + 1.0)) - Math.sqrt(x)) + (Math.sqrt((y + 1.0)) - Math.sqrt(y))) + (Math.sqrt((z + 1.0)) - Math.sqrt(z))) + (Math.sqrt((t + 1.0)) - Math.sqrt(t));
}
def code(x, y, z, t):
	return (((math.sqrt((x + 1.0)) - math.sqrt(x)) + (math.sqrt((y + 1.0)) - math.sqrt(y))) + (math.sqrt((z + 1.0)) - math.sqrt(z))) + (math.sqrt((t + 1.0)) - math.sqrt(t))
function code(x, y, z, t)
	return Float64(Float64(Float64(Float64(sqrt(Float64(x + 1.0)) - sqrt(x)) + Float64(sqrt(Float64(y + 1.0)) - sqrt(y))) + Float64(sqrt(Float64(z + 1.0)) - sqrt(z))) + Float64(sqrt(Float64(t + 1.0)) - sqrt(t)))
end
function tmp = code(x, y, z, t)
	tmp = (((sqrt((x + 1.0)) - sqrt(x)) + (sqrt((y + 1.0)) - sqrt(y))) + (sqrt((z + 1.0)) - sqrt(z))) + (sqrt((t + 1.0)) - sqrt(t));
end
code[x_, y_, z_, t_] := N[(N[(N[(N[(N[Sqrt[N[(x + 1.0), $MachinePrecision]], $MachinePrecision] - N[Sqrt[x], $MachinePrecision]), $MachinePrecision] + N[(N[Sqrt[N[(y + 1.0), $MachinePrecision]], $MachinePrecision] - N[Sqrt[y], $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + N[(N[Sqrt[N[(z + 1.0), $MachinePrecision]], $MachinePrecision] - N[Sqrt[z], $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + N[(N[Sqrt[N[(t + 1.0), $MachinePrecision]], $MachinePrecision] - N[Sqrt[t], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]
f(x, y, z, t):
	x in [-inf, +inf],
	y in [-inf, +inf],
	z in [-inf, +inf],
	t in [-inf, +inf]
code: THEORY
BEGIN
f(x, y, z, t: real): real =
	((((sqrt((x + (1)))) - (sqrt(x))) + ((sqrt((y + (1)))) - (sqrt(y)))) + ((sqrt((z + (1)))) - (sqrt(z)))) + ((sqrt((t + (1)))) - (sqrt(t)))
END code
\left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right)

Alternative 1: 99.1% accurate, 0.1× speedup?

\[\begin{array}{l} t_1 := \mathsf{max}\left(\mathsf{min}\left(x, y\right), z\right)\\ t_2 := \mathsf{min}\left(\mathsf{min}\left(x, y\right), z\right)\\ t_3 := \mathsf{max}\left(t\_2, t\right)\\ t_4 := \mathsf{min}\left(t\_2, t\right)\\ t_5 := \sqrt{t\_4}\\ t_6 := \mathsf{max}\left(\mathsf{max}\left(x, y\right), t\_1\right)\\ t_7 := \mathsf{min}\left(\mathsf{max}\left(x, y\right), t\_1\right)\\ t_8 := \mathsf{min}\left(t\_7, t\_3\right)\\ t_9 := \sqrt{t\_8 + 1} - \sqrt{t\_8}\\ t_10 := \mathsf{max}\left(t\_7, t\_3\right)\\ t_11 := \mathsf{min}\left(t\_6, t\_10\right)\\ t_12 := \sqrt{t\_11}\\ t_13 := \mathsf{max}\left(t\_6, t\_10\right)\\ t_14 := \sqrt{t\_13 + 1} - \sqrt{t\_13}\\ t_15 := \sqrt{t\_11 + 1}\\ \mathbf{if}\;t\_9 \leq 5 \cdot 10^{-5}:\\ \;\;\;\;\left(\mathsf{fma}\left(0.5, \frac{1}{t\_8 \cdot \sqrt{\frac{1}{t\_8}}}, \frac{1}{t\_5 + \sqrt{1 + t\_4}}\right) + \left(t\_15 - t\_12\right)\right) + t\_14\\ \mathbf{else}:\\ \;\;\;\;\left(\left(\left(\sqrt{t\_4 + 1} - t\_5\right) + t\_9\right) + \frac{1}{t\_12 + t\_15}\right) + t\_14\\ \end{array} \]
(FPCore (x y z t)
  :precision binary64
  :pre TRUE
  (let* ((t_1 (fmax (fmin x y) z))
       (t_2 (fmin (fmin x y) z))
       (t_3 (fmax t_2 t))
       (t_4 (fmin t_2 t))
       (t_5 (sqrt t_4))
       (t_6 (fmax (fmax x y) t_1))
       (t_7 (fmin (fmax x y) t_1))
       (t_8 (fmin t_7 t_3))
       (t_9 (- (sqrt (+ t_8 1.0)) (sqrt t_8)))
       (t_10 (fmax t_7 t_3))
       (t_11 (fmin t_6 t_10))
       (t_12 (sqrt t_11))
       (t_13 (fmax t_6 t_10))
       (t_14 (- (sqrt (+ t_13 1.0)) (sqrt t_13)))
       (t_15 (sqrt (+ t_11 1.0))))
  (if (<= t_9 5e-5)
    (+
     (+
      (fma
       0.5
       (/ 1.0 (* t_8 (sqrt (/ 1.0 t_8))))
       (/ 1.0 (+ t_5 (sqrt (+ 1.0 t_4)))))
      (- t_15 t_12))
     t_14)
    (+
     (+ (+ (- (sqrt (+ t_4 1.0)) t_5) t_9) (/ 1.0 (+ t_12 t_15)))
     t_14))))
double code(double x, double y, double z, double t) {
	double t_1 = fmax(fmin(x, y), z);
	double t_2 = fmin(fmin(x, y), z);
	double t_3 = fmax(t_2, t);
	double t_4 = fmin(t_2, t);
	double t_5 = sqrt(t_4);
	double t_6 = fmax(fmax(x, y), t_1);
	double t_7 = fmin(fmax(x, y), t_1);
	double t_8 = fmin(t_7, t_3);
	double t_9 = sqrt((t_8 + 1.0)) - sqrt(t_8);
	double t_10 = fmax(t_7, t_3);
	double t_11 = fmin(t_6, t_10);
	double t_12 = sqrt(t_11);
	double t_13 = fmax(t_6, t_10);
	double t_14 = sqrt((t_13 + 1.0)) - sqrt(t_13);
	double t_15 = sqrt((t_11 + 1.0));
	double tmp;
	if (t_9 <= 5e-5) {
		tmp = (fma(0.5, (1.0 / (t_8 * sqrt((1.0 / t_8)))), (1.0 / (t_5 + sqrt((1.0 + t_4))))) + (t_15 - t_12)) + t_14;
	} else {
		tmp = (((sqrt((t_4 + 1.0)) - t_5) + t_9) + (1.0 / (t_12 + t_15))) + t_14;
	}
	return tmp;
}
function code(x, y, z, t)
	t_1 = fmax(fmin(x, y), z)
	t_2 = fmin(fmin(x, y), z)
	t_3 = fmax(t_2, t)
	t_4 = fmin(t_2, t)
	t_5 = sqrt(t_4)
	t_6 = fmax(fmax(x, y), t_1)
	t_7 = fmin(fmax(x, y), t_1)
	t_8 = fmin(t_7, t_3)
	t_9 = Float64(sqrt(Float64(t_8 + 1.0)) - sqrt(t_8))
	t_10 = fmax(t_7, t_3)
	t_11 = fmin(t_6, t_10)
	t_12 = sqrt(t_11)
	t_13 = fmax(t_6, t_10)
	t_14 = Float64(sqrt(Float64(t_13 + 1.0)) - sqrt(t_13))
	t_15 = sqrt(Float64(t_11 + 1.0))
	tmp = 0.0
	if (t_9 <= 5e-5)
		tmp = Float64(Float64(fma(0.5, Float64(1.0 / Float64(t_8 * sqrt(Float64(1.0 / t_8)))), Float64(1.0 / Float64(t_5 + sqrt(Float64(1.0 + t_4))))) + Float64(t_15 - t_12)) + t_14);
	else
		tmp = Float64(Float64(Float64(Float64(sqrt(Float64(t_4 + 1.0)) - t_5) + t_9) + Float64(1.0 / Float64(t_12 + t_15))) + t_14);
	end
	return tmp
end
code[x_, y_, z_, t_] := Block[{t$95$1 = N[Max[N[Min[x, y], $MachinePrecision], z], $MachinePrecision]}, Block[{t$95$2 = N[Min[N[Min[x, y], $MachinePrecision], z], $MachinePrecision]}, Block[{t$95$3 = N[Max[t$95$2, t], $MachinePrecision]}, Block[{t$95$4 = N[Min[t$95$2, t], $MachinePrecision]}, Block[{t$95$5 = N[Sqrt[t$95$4], $MachinePrecision]}, Block[{t$95$6 = N[Max[N[Max[x, y], $MachinePrecision], t$95$1], $MachinePrecision]}, Block[{t$95$7 = N[Min[N[Max[x, y], $MachinePrecision], t$95$1], $MachinePrecision]}, Block[{t$95$8 = N[Min[t$95$7, t$95$3], $MachinePrecision]}, Block[{t$95$9 = N[(N[Sqrt[N[(t$95$8 + 1.0), $MachinePrecision]], $MachinePrecision] - N[Sqrt[t$95$8], $MachinePrecision]), $MachinePrecision]}, Block[{t$95$10 = N[Max[t$95$7, t$95$3], $MachinePrecision]}, Block[{t$95$11 = N[Min[t$95$6, t$95$10], $MachinePrecision]}, Block[{t$95$12 = N[Sqrt[t$95$11], $MachinePrecision]}, Block[{t$95$13 = N[Max[t$95$6, t$95$10], $MachinePrecision]}, Block[{t$95$14 = N[(N[Sqrt[N[(t$95$13 + 1.0), $MachinePrecision]], $MachinePrecision] - N[Sqrt[t$95$13], $MachinePrecision]), $MachinePrecision]}, Block[{t$95$15 = N[Sqrt[N[(t$95$11 + 1.0), $MachinePrecision]], $MachinePrecision]}, If[LessEqual[t$95$9, 5e-5], N[(N[(N[(0.5 * N[(1.0 / N[(t$95$8 * N[Sqrt[N[(1.0 / t$95$8), $MachinePrecision]], $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + N[(1.0 / N[(t$95$5 + N[Sqrt[N[(1.0 + t$95$4), $MachinePrecision]], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + N[(t$95$15 - t$95$12), $MachinePrecision]), $MachinePrecision] + t$95$14), $MachinePrecision], N[(N[(N[(N[(N[Sqrt[N[(t$95$4 + 1.0), $MachinePrecision]], $MachinePrecision] - t$95$5), $MachinePrecision] + t$95$9), $MachinePrecision] + N[(1.0 / N[(t$95$12 + t$95$15), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + t$95$14), $MachinePrecision]]]]]]]]]]]]]]]]]
f(x, y, z, t):
	x in [-inf, +inf],
	y in [-inf, +inf],
	z in [-inf, +inf],
	t in [-inf, +inf]
code: THEORY
BEGIN
f(x, y, z, t: real): real =
	LET tmp_2 = IF (x < y) THEN x ELSE y ENDIF IN
	LET tmp_3 = IF (x < y) THEN x ELSE y ENDIF IN
	LET tmp_1 = IF (tmp_2 > z) THEN tmp_3 ELSE z ENDIF IN
	LET t_1 = tmp_1 IN
		LET tmp_6 = IF (x < y) THEN x ELSE y ENDIF IN
		LET tmp_7 = IF (x < y) THEN x ELSE y ENDIF IN
		LET tmp_5 = IF (tmp_6 < z) THEN tmp_7 ELSE z ENDIF IN
		LET t_2 = tmp_5 IN
			LET tmp_8 = IF (t_2 > t) THEN t_2 ELSE t ENDIF IN
			LET t_3 = tmp_8 IN
				LET tmp_9 = IF (t_2 < t) THEN t_2 ELSE t ENDIF IN
				LET t_4 = tmp_9 IN
					LET t_5 = (sqrt(t_4)) IN
						LET tmp_12 = IF (x > y) THEN x ELSE y ENDIF IN
						LET tmp_13 = IF (x > y) THEN x ELSE y ENDIF IN
						LET tmp_11 = IF (tmp_12 > t_1) THEN tmp_13 ELSE t_1 ENDIF IN
						LET t_6 = tmp_11 IN
							LET tmp_16 = IF (x > y) THEN x ELSE y ENDIF IN
							LET tmp_17 = IF (x > y) THEN x ELSE y ENDIF IN
							LET tmp_15 = IF (tmp_16 < t_1) THEN tmp_17 ELSE t_1 ENDIF IN
							LET t_7 = tmp_15 IN
								LET tmp_18 = IF (t_7 < t_3) THEN t_7 ELSE t_3 ENDIF IN
								LET t_8 = tmp_18 IN
									LET t_9 = ((sqrt((t_8 + (1)))) - (sqrt(t_8))) IN
										LET tmp_19 = IF (t_7 > t_3) THEN t_7 ELSE t_3 ENDIF IN
										LET t_10 = tmp_19 IN
											LET tmp_20 = IF (t_6 < t_10) THEN t_6 ELSE t_10 ENDIF IN
											LET t_11 = tmp_20 IN
												LET t_12 = (sqrt(t_11)) IN
													LET tmp_21 = IF (t_6 > t_10) THEN t_6 ELSE t_10 ENDIF IN
													LET t_13 = tmp_21 IN
														LET t_14 = ((sqrt((t_13 + (1)))) - (sqrt(t_13))) IN
															LET t_15 = (sqrt((t_11 + (1)))) IN
																LET tmp_22 = IF (t_9 <= (500000000000000023960868011929647991564706899225711822509765625e-67)) THEN (((((5e-1) * ((1) / (t_8 * (sqrt(((1) / t_8)))))) + ((1) / (t_5 + (sqrt(((1) + t_4)))))) + (t_15 - t_12)) + t_14) ELSE (((((sqrt((t_4 + (1)))) - t_5) + t_9) + ((1) / (t_12 + t_15))) + t_14) ENDIF IN
	tmp_22
END code
\begin{array}{l}
t_1 := \mathsf{max}\left(\mathsf{min}\left(x, y\right), z\right)\\
t_2 := \mathsf{min}\left(\mathsf{min}\left(x, y\right), z\right)\\
t_3 := \mathsf{max}\left(t\_2, t\right)\\
t_4 := \mathsf{min}\left(t\_2, t\right)\\
t_5 := \sqrt{t\_4}\\
t_6 := \mathsf{max}\left(\mathsf{max}\left(x, y\right), t\_1\right)\\
t_7 := \mathsf{min}\left(\mathsf{max}\left(x, y\right), t\_1\right)\\
t_8 := \mathsf{min}\left(t\_7, t\_3\right)\\
t_9 := \sqrt{t\_8 + 1} - \sqrt{t\_8}\\
t_10 := \mathsf{max}\left(t\_7, t\_3\right)\\
t_11 := \mathsf{min}\left(t\_6, t\_10\right)\\
t_12 := \sqrt{t\_11}\\
t_13 := \mathsf{max}\left(t\_6, t\_10\right)\\
t_14 := \sqrt{t\_13 + 1} - \sqrt{t\_13}\\
t_15 := \sqrt{t\_11 + 1}\\
\mathbf{if}\;t\_9 \leq 5 \cdot 10^{-5}:\\
\;\;\;\;\left(\mathsf{fma}\left(0.5, \frac{1}{t\_8 \cdot \sqrt{\frac{1}{t\_8}}}, \frac{1}{t\_5 + \sqrt{1 + t\_4}}\right) + \left(t\_15 - t\_12\right)\right) + t\_14\\

\mathbf{else}:\\
\;\;\;\;\left(\left(\left(\sqrt{t\_4 + 1} - t\_5\right) + t\_9\right) + \frac{1}{t\_12 + t\_15}\right) + t\_14\\


\end{array}
Derivation
  1. Split input into 2 regimes
  2. if (-.f64 (sqrt.f64 (+.f64 y #s(literal 1 binary64))) (sqrt.f64 y)) < 5.0000000000000002e-5

    1. Initial program 92.0%

      \[\left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
    2. Step-by-step derivation
      1. Applied rewrites94.0%

        \[\leadsto \left(\left(\frac{1}{\sqrt{x} + \sqrt{1 + x}} + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
      2. Taylor expanded in y around inf

        \[\leadsto \left(\left(\frac{1}{2} \cdot \frac{1}{y \cdot \sqrt{\frac{1}{y}}} + \frac{1}{\sqrt{x} + \sqrt{1 + x}}\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
      3. Step-by-step derivation
        1. Applied rewrites49.2%

          \[\leadsto \left(\mathsf{fma}\left(0.5, \frac{1}{y \cdot \sqrt{\frac{1}{y}}}, \frac{1}{\sqrt{x} + \sqrt{1 + x}}\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]

        if 5.0000000000000002e-5 < (-.f64 (sqrt.f64 (+.f64 y #s(literal 1 binary64))) (sqrt.f64 y))

        1. Initial program 92.0%

          \[\left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
        2. Step-by-step derivation
          1. Applied rewrites93.8%

            \[\leadsto \left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \frac{1}{\sqrt{z} + \sqrt{z + 1}}\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
        3. Recombined 2 regimes into one program.
        4. Add Preprocessing

        Alternative 2: 98.8% accurate, 0.2× speedup?

        \[\begin{array}{l} t_1 := \mathsf{max}\left(\mathsf{min}\left(x, y\right), z\right)\\ t_2 := \mathsf{max}\left(\mathsf{max}\left(x, y\right), t\_1\right)\\ t_3 := \mathsf{min}\left(\mathsf{max}\left(x, y\right), t\_1\right)\\ t_4 := \mathsf{max}\left(t\_3, t\right)\\ t_5 := \mathsf{min}\left(t\_2, t\_4\right)\\ t_6 := \sqrt{t\_5 + 1}\\ t_7 := \sqrt{t\_5}\\ t_8 := \mathsf{min}\left(t\_3, t\right)\\ t_9 := \sqrt{t\_8}\\ t_10 := \mathsf{min}\left(\mathsf{min}\left(x, y\right), z\right)\\ t_11 := \sqrt{t\_10}\\ t_12 := \mathsf{max}\left(t\_2, t\_4\right)\\ t_13 := \sqrt{t\_12 + 1} - \sqrt{t\_12}\\ \mathbf{if}\;t\_8 \leq 38884565.37637351:\\ \;\;\;\;\left(\left(\left(\sqrt{t\_10 + 1} - t\_11\right) + \left(\sqrt{t\_8 + 1} - t\_9\right)\right) + \frac{1}{t\_7 + t\_6}\right) + t\_13\\ \mathbf{else}:\\ \;\;\;\;\left(\left(\frac{1}{\left(\sqrt{1 + t\_10} + t\_11\right) \cdot t\_9} + \frac{0.5}{t\_8}\right) \cdot t\_9 + \left(t\_6 - t\_7\right)\right) + t\_13\\ \end{array} \]
        (FPCore (x y z t)
          :precision binary64
          :pre TRUE
          (let* ((t_1 (fmax (fmin x y) z))
               (t_2 (fmax (fmax x y) t_1))
               (t_3 (fmin (fmax x y) t_1))
               (t_4 (fmax t_3 t))
               (t_5 (fmin t_2 t_4))
               (t_6 (sqrt (+ t_5 1.0)))
               (t_7 (sqrt t_5))
               (t_8 (fmin t_3 t))
               (t_9 (sqrt t_8))
               (t_10 (fmin (fmin x y) z))
               (t_11 (sqrt t_10))
               (t_12 (fmax t_2 t_4))
               (t_13 (- (sqrt (+ t_12 1.0)) (sqrt t_12))))
          (if (<= t_8 38884565.37637351)
            (+
             (+
              (+ (- (sqrt (+ t_10 1.0)) t_11) (- (sqrt (+ t_8 1.0)) t_9))
              (/ 1.0 (+ t_7 t_6)))
             t_13)
            (+
             (+
              (*
               (+ (/ 1.0 (* (+ (sqrt (+ 1.0 t_10)) t_11) t_9)) (/ 0.5 t_8))
               t_9)
              (- t_6 t_7))
             t_13))))
        double code(double x, double y, double z, double t) {
        	double t_1 = fmax(fmin(x, y), z);
        	double t_2 = fmax(fmax(x, y), t_1);
        	double t_3 = fmin(fmax(x, y), t_1);
        	double t_4 = fmax(t_3, t);
        	double t_5 = fmin(t_2, t_4);
        	double t_6 = sqrt((t_5 + 1.0));
        	double t_7 = sqrt(t_5);
        	double t_8 = fmin(t_3, t);
        	double t_9 = sqrt(t_8);
        	double t_10 = fmin(fmin(x, y), z);
        	double t_11 = sqrt(t_10);
        	double t_12 = fmax(t_2, t_4);
        	double t_13 = sqrt((t_12 + 1.0)) - sqrt(t_12);
        	double tmp;
        	if (t_8 <= 38884565.37637351) {
        		tmp = (((sqrt((t_10 + 1.0)) - t_11) + (sqrt((t_8 + 1.0)) - t_9)) + (1.0 / (t_7 + t_6))) + t_13;
        	} else {
        		tmp = ((((1.0 / ((sqrt((1.0 + t_10)) + t_11) * t_9)) + (0.5 / t_8)) * t_9) + (t_6 - t_7)) + t_13;
        	}
        	return tmp;
        }
        
        real(8) function code(x, y, z, t)
        use fmin_fmax_functions
            real(8), intent (in) :: x
            real(8), intent (in) :: y
            real(8), intent (in) :: z
            real(8), intent (in) :: t
            real(8) :: t_1
            real(8) :: t_10
            real(8) :: t_11
            real(8) :: t_12
            real(8) :: t_13
            real(8) :: t_2
            real(8) :: t_3
            real(8) :: t_4
            real(8) :: t_5
            real(8) :: t_6
            real(8) :: t_7
            real(8) :: t_8
            real(8) :: t_9
            real(8) :: tmp
            t_1 = fmax(fmin(x, y), z)
            t_2 = fmax(fmax(x, y), t_1)
            t_3 = fmin(fmax(x, y), t_1)
            t_4 = fmax(t_3, t)
            t_5 = fmin(t_2, t_4)
            t_6 = sqrt((t_5 + 1.0d0))
            t_7 = sqrt(t_5)
            t_8 = fmin(t_3, t)
            t_9 = sqrt(t_8)
            t_10 = fmin(fmin(x, y), z)
            t_11 = sqrt(t_10)
            t_12 = fmax(t_2, t_4)
            t_13 = sqrt((t_12 + 1.0d0)) - sqrt(t_12)
            if (t_8 <= 38884565.37637351d0) then
                tmp = (((sqrt((t_10 + 1.0d0)) - t_11) + (sqrt((t_8 + 1.0d0)) - t_9)) + (1.0d0 / (t_7 + t_6))) + t_13
            else
                tmp = ((((1.0d0 / ((sqrt((1.0d0 + t_10)) + t_11) * t_9)) + (0.5d0 / t_8)) * t_9) + (t_6 - t_7)) + t_13
            end if
            code = tmp
        end function
        
        public static double code(double x, double y, double z, double t) {
        	double t_1 = fmax(fmin(x, y), z);
        	double t_2 = fmax(fmax(x, y), t_1);
        	double t_3 = fmin(fmax(x, y), t_1);
        	double t_4 = fmax(t_3, t);
        	double t_5 = fmin(t_2, t_4);
        	double t_6 = Math.sqrt((t_5 + 1.0));
        	double t_7 = Math.sqrt(t_5);
        	double t_8 = fmin(t_3, t);
        	double t_9 = Math.sqrt(t_8);
        	double t_10 = fmin(fmin(x, y), z);
        	double t_11 = Math.sqrt(t_10);
        	double t_12 = fmax(t_2, t_4);
        	double t_13 = Math.sqrt((t_12 + 1.0)) - Math.sqrt(t_12);
        	double tmp;
        	if (t_8 <= 38884565.37637351) {
        		tmp = (((Math.sqrt((t_10 + 1.0)) - t_11) + (Math.sqrt((t_8 + 1.0)) - t_9)) + (1.0 / (t_7 + t_6))) + t_13;
        	} else {
        		tmp = ((((1.0 / ((Math.sqrt((1.0 + t_10)) + t_11) * t_9)) + (0.5 / t_8)) * t_9) + (t_6 - t_7)) + t_13;
        	}
        	return tmp;
        }
        
        def code(x, y, z, t):
        	t_1 = fmax(fmin(x, y), z)
        	t_2 = fmax(fmax(x, y), t_1)
        	t_3 = fmin(fmax(x, y), t_1)
        	t_4 = fmax(t_3, t)
        	t_5 = fmin(t_2, t_4)
        	t_6 = math.sqrt((t_5 + 1.0))
        	t_7 = math.sqrt(t_5)
        	t_8 = fmin(t_3, t)
        	t_9 = math.sqrt(t_8)
        	t_10 = fmin(fmin(x, y), z)
        	t_11 = math.sqrt(t_10)
        	t_12 = fmax(t_2, t_4)
        	t_13 = math.sqrt((t_12 + 1.0)) - math.sqrt(t_12)
        	tmp = 0
        	if t_8 <= 38884565.37637351:
        		tmp = (((math.sqrt((t_10 + 1.0)) - t_11) + (math.sqrt((t_8 + 1.0)) - t_9)) + (1.0 / (t_7 + t_6))) + t_13
        	else:
        		tmp = ((((1.0 / ((math.sqrt((1.0 + t_10)) + t_11) * t_9)) + (0.5 / t_8)) * t_9) + (t_6 - t_7)) + t_13
        	return tmp
        
        function code(x, y, z, t)
        	t_1 = fmax(fmin(x, y), z)
        	t_2 = fmax(fmax(x, y), t_1)
        	t_3 = fmin(fmax(x, y), t_1)
        	t_4 = fmax(t_3, t)
        	t_5 = fmin(t_2, t_4)
        	t_6 = sqrt(Float64(t_5 + 1.0))
        	t_7 = sqrt(t_5)
        	t_8 = fmin(t_3, t)
        	t_9 = sqrt(t_8)
        	t_10 = fmin(fmin(x, y), z)
        	t_11 = sqrt(t_10)
        	t_12 = fmax(t_2, t_4)
        	t_13 = Float64(sqrt(Float64(t_12 + 1.0)) - sqrt(t_12))
        	tmp = 0.0
        	if (t_8 <= 38884565.37637351)
        		tmp = Float64(Float64(Float64(Float64(sqrt(Float64(t_10 + 1.0)) - t_11) + Float64(sqrt(Float64(t_8 + 1.0)) - t_9)) + Float64(1.0 / Float64(t_7 + t_6))) + t_13);
        	else
        		tmp = Float64(Float64(Float64(Float64(Float64(1.0 / Float64(Float64(sqrt(Float64(1.0 + t_10)) + t_11) * t_9)) + Float64(0.5 / t_8)) * t_9) + Float64(t_6 - t_7)) + t_13);
        	end
        	return tmp
        end
        
        function tmp_2 = code(x, y, z, t)
        	t_1 = max(min(x, y), z);
        	t_2 = max(max(x, y), t_1);
        	t_3 = min(max(x, y), t_1);
        	t_4 = max(t_3, t);
        	t_5 = min(t_2, t_4);
        	t_6 = sqrt((t_5 + 1.0));
        	t_7 = sqrt(t_5);
        	t_8 = min(t_3, t);
        	t_9 = sqrt(t_8);
        	t_10 = min(min(x, y), z);
        	t_11 = sqrt(t_10);
        	t_12 = max(t_2, t_4);
        	t_13 = sqrt((t_12 + 1.0)) - sqrt(t_12);
        	tmp = 0.0;
        	if (t_8 <= 38884565.37637351)
        		tmp = (((sqrt((t_10 + 1.0)) - t_11) + (sqrt((t_8 + 1.0)) - t_9)) + (1.0 / (t_7 + t_6))) + t_13;
        	else
        		tmp = ((((1.0 / ((sqrt((1.0 + t_10)) + t_11) * t_9)) + (0.5 / t_8)) * t_9) + (t_6 - t_7)) + t_13;
        	end
        	tmp_2 = tmp;
        end
        
        code[x_, y_, z_, t_] := Block[{t$95$1 = N[Max[N[Min[x, y], $MachinePrecision], z], $MachinePrecision]}, Block[{t$95$2 = N[Max[N[Max[x, y], $MachinePrecision], t$95$1], $MachinePrecision]}, Block[{t$95$3 = N[Min[N[Max[x, y], $MachinePrecision], t$95$1], $MachinePrecision]}, Block[{t$95$4 = N[Max[t$95$3, t], $MachinePrecision]}, Block[{t$95$5 = N[Min[t$95$2, t$95$4], $MachinePrecision]}, Block[{t$95$6 = N[Sqrt[N[(t$95$5 + 1.0), $MachinePrecision]], $MachinePrecision]}, Block[{t$95$7 = N[Sqrt[t$95$5], $MachinePrecision]}, Block[{t$95$8 = N[Min[t$95$3, t], $MachinePrecision]}, Block[{t$95$9 = N[Sqrt[t$95$8], $MachinePrecision]}, Block[{t$95$10 = N[Min[N[Min[x, y], $MachinePrecision], z], $MachinePrecision]}, Block[{t$95$11 = N[Sqrt[t$95$10], $MachinePrecision]}, Block[{t$95$12 = N[Max[t$95$2, t$95$4], $MachinePrecision]}, Block[{t$95$13 = N[(N[Sqrt[N[(t$95$12 + 1.0), $MachinePrecision]], $MachinePrecision] - N[Sqrt[t$95$12], $MachinePrecision]), $MachinePrecision]}, If[LessEqual[t$95$8, 38884565.37637351], N[(N[(N[(N[(N[Sqrt[N[(t$95$10 + 1.0), $MachinePrecision]], $MachinePrecision] - t$95$11), $MachinePrecision] + N[(N[Sqrt[N[(t$95$8 + 1.0), $MachinePrecision]], $MachinePrecision] - t$95$9), $MachinePrecision]), $MachinePrecision] + N[(1.0 / N[(t$95$7 + t$95$6), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + t$95$13), $MachinePrecision], N[(N[(N[(N[(N[(1.0 / N[(N[(N[Sqrt[N[(1.0 + t$95$10), $MachinePrecision]], $MachinePrecision] + t$95$11), $MachinePrecision] * t$95$9), $MachinePrecision]), $MachinePrecision] + N[(0.5 / t$95$8), $MachinePrecision]), $MachinePrecision] * t$95$9), $MachinePrecision] + N[(t$95$6 - t$95$7), $MachinePrecision]), $MachinePrecision] + t$95$13), $MachinePrecision]]]]]]]]]]]]]]]
        
        f(x, y, z, t):
        	x in [-inf, +inf],
        	y in [-inf, +inf],
        	z in [-inf, +inf],
        	t in [-inf, +inf]
        code: THEORY
        BEGIN
        f(x, y, z, t: real): real =
        	LET tmp_2 = IF (x < y) THEN x ELSE y ENDIF IN
        	LET tmp_3 = IF (x < y) THEN x ELSE y ENDIF IN
        	LET tmp_1 = IF (tmp_2 > z) THEN tmp_3 ELSE z ENDIF IN
        	LET t_1 = tmp_1 IN
        		LET tmp_6 = IF (x > y) THEN x ELSE y ENDIF IN
        		LET tmp_7 = IF (x > y) THEN x ELSE y ENDIF IN
        		LET tmp_5 = IF (tmp_6 > t_1) THEN tmp_7 ELSE t_1 ENDIF IN
        		LET t_2 = tmp_5 IN
        			LET tmp_10 = IF (x > y) THEN x ELSE y ENDIF IN
        			LET tmp_11 = IF (x > y) THEN x ELSE y ENDIF IN
        			LET tmp_9 = IF (tmp_10 < t_1) THEN tmp_11 ELSE t_1 ENDIF IN
        			LET t_3 = tmp_9 IN
        				LET tmp_12 = IF (t_3 > t) THEN t_3 ELSE t ENDIF IN
        				LET t_4 = tmp_12 IN
        					LET tmp_13 = IF (t_2 < t_4) THEN t_2 ELSE t_4 ENDIF IN
        					LET t_5 = tmp_13 IN
        						LET t_6 = (sqrt((t_5 + (1)))) IN
        							LET t_7 = (sqrt(t_5)) IN
        								LET tmp_14 = IF (t_3 < t) THEN t_3 ELSE t ENDIF IN
        								LET t_8 = tmp_14 IN
        									LET t_9 = (sqrt(t_8)) IN
        										LET tmp_17 = IF (x < y) THEN x ELSE y ENDIF IN
        										LET tmp_18 = IF (x < y) THEN x ELSE y ENDIF IN
        										LET tmp_16 = IF (tmp_17 < z) THEN tmp_18 ELSE z ENDIF IN
        										LET t_10 = tmp_16 IN
        											LET t_11 = (sqrt(t_10)) IN
        												LET tmp_19 = IF (t_2 > t_4) THEN t_2 ELSE t_4 ENDIF IN
        												LET t_12 = tmp_19 IN
        													LET t_13 = ((sqrt((t_12 + (1)))) - (sqrt(t_12))) IN
        														LET tmp_20 = IF (t_8 <= (38884565376373507082462310791015625e-27)) THEN (((((sqrt((t_10 + (1)))) - t_11) + ((sqrt((t_8 + (1)))) - t_9)) + ((1) / (t_7 + t_6))) + t_13) ELSE ((((((1) / (((sqrt(((1) + t_10))) + t_11) * t_9)) + ((5e-1) / t_8)) * t_9) + (t_6 - t_7)) + t_13) ENDIF IN
        	tmp_20
        END code
        \begin{array}{l}
        t_1 := \mathsf{max}\left(\mathsf{min}\left(x, y\right), z\right)\\
        t_2 := \mathsf{max}\left(\mathsf{max}\left(x, y\right), t\_1\right)\\
        t_3 := \mathsf{min}\left(\mathsf{max}\left(x, y\right), t\_1\right)\\
        t_4 := \mathsf{max}\left(t\_3, t\right)\\
        t_5 := \mathsf{min}\left(t\_2, t\_4\right)\\
        t_6 := \sqrt{t\_5 + 1}\\
        t_7 := \sqrt{t\_5}\\
        t_8 := \mathsf{min}\left(t\_3, t\right)\\
        t_9 := \sqrt{t\_8}\\
        t_10 := \mathsf{min}\left(\mathsf{min}\left(x, y\right), z\right)\\
        t_11 := \sqrt{t\_10}\\
        t_12 := \mathsf{max}\left(t\_2, t\_4\right)\\
        t_13 := \sqrt{t\_12 + 1} - \sqrt{t\_12}\\
        \mathbf{if}\;t\_8 \leq 38884565.37637351:\\
        \;\;\;\;\left(\left(\left(\sqrt{t\_10 + 1} - t\_11\right) + \left(\sqrt{t\_8 + 1} - t\_9\right)\right) + \frac{1}{t\_7 + t\_6}\right) + t\_13\\
        
        \mathbf{else}:\\
        \;\;\;\;\left(\left(\frac{1}{\left(\sqrt{1 + t\_10} + t\_11\right) \cdot t\_9} + \frac{0.5}{t\_8}\right) \cdot t\_9 + \left(t\_6 - t\_7\right)\right) + t\_13\\
        
        
        \end{array}
        
        Derivation
        1. Split input into 2 regimes
        2. if y < 38884565.376373507

          1. Initial program 92.0%

            \[\left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
          2. Step-by-step derivation
            1. Applied rewrites93.8%

              \[\leadsto \left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \frac{1}{\sqrt{z} + \sqrt{z + 1}}\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]

            if 38884565.376373507 < y

            1. Initial program 92.0%

              \[\left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
            2. Step-by-step derivation
              1. Applied rewrites94.0%

                \[\leadsto \left(\left(\frac{1}{\sqrt{x} + \sqrt{1 + x}} + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
              2. Taylor expanded in y around inf

                \[\leadsto \left(\left(\frac{1}{2} \cdot \frac{1}{y \cdot \sqrt{\frac{1}{y}}} + \frac{1}{\sqrt{x} + \sqrt{1 + x}}\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
              3. Step-by-step derivation
                1. Applied rewrites49.2%

                  \[\leadsto \left(\mathsf{fma}\left(0.5, \frac{1}{y \cdot \sqrt{\frac{1}{y}}}, \frac{1}{\sqrt{x} + \sqrt{1 + x}}\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                2. Step-by-step derivation
                  1. Applied rewrites49.2%

                    \[\leadsto \left(\frac{\mathsf{fma}\left(\frac{1}{\sqrt{1 + x} + \sqrt{x}}, \frac{1}{\sqrt{y}}, \frac{0.5}{y}\right)}{\frac{1}{\sqrt{y}}} + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                  2. Step-by-step derivation
                    1. Applied rewrites49.1%

                      \[\leadsto \left(\left(\frac{1}{\left(\sqrt{1 + x} + \sqrt{x}\right) \cdot \sqrt{y}} + \frac{0.5}{y}\right) \cdot \sqrt{y} + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                  3. Recombined 2 regimes into one program.
                  4. Add Preprocessing

                  Alternative 3: 97.7% accurate, 0.1× speedup?

                  \[\begin{array}{l} t_1 := \mathsf{max}\left(\mathsf{min}\left(x, y\right), z\right)\\ t_2 := \mathsf{max}\left(\mathsf{max}\left(x, y\right), t\_1\right)\\ t_3 := \mathsf{min}\left(\mathsf{max}\left(x, y\right), t\_1\right)\\ t_4 := \mathsf{min}\left(\mathsf{min}\left(x, y\right), z\right)\\ t_5 := \mathsf{min}\left(t\_4, t\right)\\ t_6 := \sqrt{t\_5}\\ t_7 := \sqrt{1 + t\_5}\\ t_8 := \mathsf{max}\left(t\_4, t\right)\\ t_9 := \mathsf{max}\left(t\_3, t\_8\right)\\ t_10 := \mathsf{min}\left(t\_2, t\_9\right)\\ t_11 := \mathsf{min}\left(t\_3, t\_8\right)\\ t_12 := \sqrt{t\_10}\\ t_13 := \sqrt{t\_11}\\ t_14 := \sqrt{t\_11 + 1} - t\_13\\ t_15 := \sqrt{t\_10 + 1} - t\_12\\ t_16 := \left(\left(\sqrt{t\_5 + 1} - t\_6\right) + t\_14\right) + t\_15\\ t_17 := \mathsf{max}\left(t\_2, t\_9\right)\\ t_18 := \sqrt{t\_17}\\ \mathbf{if}\;t\_16 \leq 1:\\ \;\;\;\;\left(\frac{1}{t\_6 + t\_7} + t\_15\right) + \frac{0.5}{t\_18}\\ \mathbf{elif}\;t\_16 \leq 2.999995:\\ \;\;\;\;\left(t\_7 + \left(\sqrt{1 + t\_11} + \frac{1}{t\_12 + \sqrt{1 + t\_10}}\right)\right) - \left(t\_6 + t\_13\right)\\ \mathbf{else}:\\ \;\;\;\;\left(\left(\left(1 - t\_6\right) + t\_14\right) + \left(1 - t\_12\right)\right) + \frac{1}{t\_18 + \sqrt{t\_17 + 1}}\\ \end{array} \]
                  (FPCore (x y z t)
                    :precision binary64
                    :pre TRUE
                    (let* ((t_1 (fmax (fmin x y) z))
                         (t_2 (fmax (fmax x y) t_1))
                         (t_3 (fmin (fmax x y) t_1))
                         (t_4 (fmin (fmin x y) z))
                         (t_5 (fmin t_4 t))
                         (t_6 (sqrt t_5))
                         (t_7 (sqrt (+ 1.0 t_5)))
                         (t_8 (fmax t_4 t))
                         (t_9 (fmax t_3 t_8))
                         (t_10 (fmin t_2 t_9))
                         (t_11 (fmin t_3 t_8))
                         (t_12 (sqrt t_10))
                         (t_13 (sqrt t_11))
                         (t_14 (- (sqrt (+ t_11 1.0)) t_13))
                         (t_15 (- (sqrt (+ t_10 1.0)) t_12))
                         (t_16 (+ (+ (- (sqrt (+ t_5 1.0)) t_6) t_14) t_15))
                         (t_17 (fmax t_2 t_9))
                         (t_18 (sqrt t_17)))
                    (if (<= t_16 1.0)
                      (+ (+ (/ 1.0 (+ t_6 t_7)) t_15) (/ 0.5 t_18))
                      (if (<= t_16 2.999995)
                        (-
                         (+
                          t_7
                          (+ (sqrt (+ 1.0 t_11)) (/ 1.0 (+ t_12 (sqrt (+ 1.0 t_10))))))
                         (+ t_6 t_13))
                        (+
                         (+ (+ (- 1.0 t_6) t_14) (- 1.0 t_12))
                         (/ 1.0 (+ t_18 (sqrt (+ t_17 1.0)))))))))
                  double code(double x, double y, double z, double t) {
                  	double t_1 = fmax(fmin(x, y), z);
                  	double t_2 = fmax(fmax(x, y), t_1);
                  	double t_3 = fmin(fmax(x, y), t_1);
                  	double t_4 = fmin(fmin(x, y), z);
                  	double t_5 = fmin(t_4, t);
                  	double t_6 = sqrt(t_5);
                  	double t_7 = sqrt((1.0 + t_5));
                  	double t_8 = fmax(t_4, t);
                  	double t_9 = fmax(t_3, t_8);
                  	double t_10 = fmin(t_2, t_9);
                  	double t_11 = fmin(t_3, t_8);
                  	double t_12 = sqrt(t_10);
                  	double t_13 = sqrt(t_11);
                  	double t_14 = sqrt((t_11 + 1.0)) - t_13;
                  	double t_15 = sqrt((t_10 + 1.0)) - t_12;
                  	double t_16 = ((sqrt((t_5 + 1.0)) - t_6) + t_14) + t_15;
                  	double t_17 = fmax(t_2, t_9);
                  	double t_18 = sqrt(t_17);
                  	double tmp;
                  	if (t_16 <= 1.0) {
                  		tmp = ((1.0 / (t_6 + t_7)) + t_15) + (0.5 / t_18);
                  	} else if (t_16 <= 2.999995) {
                  		tmp = (t_7 + (sqrt((1.0 + t_11)) + (1.0 / (t_12 + sqrt((1.0 + t_10)))))) - (t_6 + t_13);
                  	} else {
                  		tmp = (((1.0 - t_6) + t_14) + (1.0 - t_12)) + (1.0 / (t_18 + sqrt((t_17 + 1.0))));
                  	}
                  	return tmp;
                  }
                  
                  real(8) function code(x, y, z, t)
                  use fmin_fmax_functions
                      real(8), intent (in) :: x
                      real(8), intent (in) :: y
                      real(8), intent (in) :: z
                      real(8), intent (in) :: t
                      real(8) :: t_1
                      real(8) :: t_10
                      real(8) :: t_11
                      real(8) :: t_12
                      real(8) :: t_13
                      real(8) :: t_14
                      real(8) :: t_15
                      real(8) :: t_16
                      real(8) :: t_17
                      real(8) :: t_18
                      real(8) :: t_2
                      real(8) :: t_3
                      real(8) :: t_4
                      real(8) :: t_5
                      real(8) :: t_6
                      real(8) :: t_7
                      real(8) :: t_8
                      real(8) :: t_9
                      real(8) :: tmp
                      t_1 = fmax(fmin(x, y), z)
                      t_2 = fmax(fmax(x, y), t_1)
                      t_3 = fmin(fmax(x, y), t_1)
                      t_4 = fmin(fmin(x, y), z)
                      t_5 = fmin(t_4, t)
                      t_6 = sqrt(t_5)
                      t_7 = sqrt((1.0d0 + t_5))
                      t_8 = fmax(t_4, t)
                      t_9 = fmax(t_3, t_8)
                      t_10 = fmin(t_2, t_9)
                      t_11 = fmin(t_3, t_8)
                      t_12 = sqrt(t_10)
                      t_13 = sqrt(t_11)
                      t_14 = sqrt((t_11 + 1.0d0)) - t_13
                      t_15 = sqrt((t_10 + 1.0d0)) - t_12
                      t_16 = ((sqrt((t_5 + 1.0d0)) - t_6) + t_14) + t_15
                      t_17 = fmax(t_2, t_9)
                      t_18 = sqrt(t_17)
                      if (t_16 <= 1.0d0) then
                          tmp = ((1.0d0 / (t_6 + t_7)) + t_15) + (0.5d0 / t_18)
                      else if (t_16 <= 2.999995d0) then
                          tmp = (t_7 + (sqrt((1.0d0 + t_11)) + (1.0d0 / (t_12 + sqrt((1.0d0 + t_10)))))) - (t_6 + t_13)
                      else
                          tmp = (((1.0d0 - t_6) + t_14) + (1.0d0 - t_12)) + (1.0d0 / (t_18 + sqrt((t_17 + 1.0d0))))
                      end if
                      code = tmp
                  end function
                  
                  public static double code(double x, double y, double z, double t) {
                  	double t_1 = fmax(fmin(x, y), z);
                  	double t_2 = fmax(fmax(x, y), t_1);
                  	double t_3 = fmin(fmax(x, y), t_1);
                  	double t_4 = fmin(fmin(x, y), z);
                  	double t_5 = fmin(t_4, t);
                  	double t_6 = Math.sqrt(t_5);
                  	double t_7 = Math.sqrt((1.0 + t_5));
                  	double t_8 = fmax(t_4, t);
                  	double t_9 = fmax(t_3, t_8);
                  	double t_10 = fmin(t_2, t_9);
                  	double t_11 = fmin(t_3, t_8);
                  	double t_12 = Math.sqrt(t_10);
                  	double t_13 = Math.sqrt(t_11);
                  	double t_14 = Math.sqrt((t_11 + 1.0)) - t_13;
                  	double t_15 = Math.sqrt((t_10 + 1.0)) - t_12;
                  	double t_16 = ((Math.sqrt((t_5 + 1.0)) - t_6) + t_14) + t_15;
                  	double t_17 = fmax(t_2, t_9);
                  	double t_18 = Math.sqrt(t_17);
                  	double tmp;
                  	if (t_16 <= 1.0) {
                  		tmp = ((1.0 / (t_6 + t_7)) + t_15) + (0.5 / t_18);
                  	} else if (t_16 <= 2.999995) {
                  		tmp = (t_7 + (Math.sqrt((1.0 + t_11)) + (1.0 / (t_12 + Math.sqrt((1.0 + t_10)))))) - (t_6 + t_13);
                  	} else {
                  		tmp = (((1.0 - t_6) + t_14) + (1.0 - t_12)) + (1.0 / (t_18 + Math.sqrt((t_17 + 1.0))));
                  	}
                  	return tmp;
                  }
                  
                  def code(x, y, z, t):
                  	t_1 = fmax(fmin(x, y), z)
                  	t_2 = fmax(fmax(x, y), t_1)
                  	t_3 = fmin(fmax(x, y), t_1)
                  	t_4 = fmin(fmin(x, y), z)
                  	t_5 = fmin(t_4, t)
                  	t_6 = math.sqrt(t_5)
                  	t_7 = math.sqrt((1.0 + t_5))
                  	t_8 = fmax(t_4, t)
                  	t_9 = fmax(t_3, t_8)
                  	t_10 = fmin(t_2, t_9)
                  	t_11 = fmin(t_3, t_8)
                  	t_12 = math.sqrt(t_10)
                  	t_13 = math.sqrt(t_11)
                  	t_14 = math.sqrt((t_11 + 1.0)) - t_13
                  	t_15 = math.sqrt((t_10 + 1.0)) - t_12
                  	t_16 = ((math.sqrt((t_5 + 1.0)) - t_6) + t_14) + t_15
                  	t_17 = fmax(t_2, t_9)
                  	t_18 = math.sqrt(t_17)
                  	tmp = 0
                  	if t_16 <= 1.0:
                  		tmp = ((1.0 / (t_6 + t_7)) + t_15) + (0.5 / t_18)
                  	elif t_16 <= 2.999995:
                  		tmp = (t_7 + (math.sqrt((1.0 + t_11)) + (1.0 / (t_12 + math.sqrt((1.0 + t_10)))))) - (t_6 + t_13)
                  	else:
                  		tmp = (((1.0 - t_6) + t_14) + (1.0 - t_12)) + (1.0 / (t_18 + math.sqrt((t_17 + 1.0))))
                  	return tmp
                  
                  function code(x, y, z, t)
                  	t_1 = fmax(fmin(x, y), z)
                  	t_2 = fmax(fmax(x, y), t_1)
                  	t_3 = fmin(fmax(x, y), t_1)
                  	t_4 = fmin(fmin(x, y), z)
                  	t_5 = fmin(t_4, t)
                  	t_6 = sqrt(t_5)
                  	t_7 = sqrt(Float64(1.0 + t_5))
                  	t_8 = fmax(t_4, t)
                  	t_9 = fmax(t_3, t_8)
                  	t_10 = fmin(t_2, t_9)
                  	t_11 = fmin(t_3, t_8)
                  	t_12 = sqrt(t_10)
                  	t_13 = sqrt(t_11)
                  	t_14 = Float64(sqrt(Float64(t_11 + 1.0)) - t_13)
                  	t_15 = Float64(sqrt(Float64(t_10 + 1.0)) - t_12)
                  	t_16 = Float64(Float64(Float64(sqrt(Float64(t_5 + 1.0)) - t_6) + t_14) + t_15)
                  	t_17 = fmax(t_2, t_9)
                  	t_18 = sqrt(t_17)
                  	tmp = 0.0
                  	if (t_16 <= 1.0)
                  		tmp = Float64(Float64(Float64(1.0 / Float64(t_6 + t_7)) + t_15) + Float64(0.5 / t_18));
                  	elseif (t_16 <= 2.999995)
                  		tmp = Float64(Float64(t_7 + Float64(sqrt(Float64(1.0 + t_11)) + Float64(1.0 / Float64(t_12 + sqrt(Float64(1.0 + t_10)))))) - Float64(t_6 + t_13));
                  	else
                  		tmp = Float64(Float64(Float64(Float64(1.0 - t_6) + t_14) + Float64(1.0 - t_12)) + Float64(1.0 / Float64(t_18 + sqrt(Float64(t_17 + 1.0)))));
                  	end
                  	return tmp
                  end
                  
                  function tmp_2 = code(x, y, z, t)
                  	t_1 = max(min(x, y), z);
                  	t_2 = max(max(x, y), t_1);
                  	t_3 = min(max(x, y), t_1);
                  	t_4 = min(min(x, y), z);
                  	t_5 = min(t_4, t);
                  	t_6 = sqrt(t_5);
                  	t_7 = sqrt((1.0 + t_5));
                  	t_8 = max(t_4, t);
                  	t_9 = max(t_3, t_8);
                  	t_10 = min(t_2, t_9);
                  	t_11 = min(t_3, t_8);
                  	t_12 = sqrt(t_10);
                  	t_13 = sqrt(t_11);
                  	t_14 = sqrt((t_11 + 1.0)) - t_13;
                  	t_15 = sqrt((t_10 + 1.0)) - t_12;
                  	t_16 = ((sqrt((t_5 + 1.0)) - t_6) + t_14) + t_15;
                  	t_17 = max(t_2, t_9);
                  	t_18 = sqrt(t_17);
                  	tmp = 0.0;
                  	if (t_16 <= 1.0)
                  		tmp = ((1.0 / (t_6 + t_7)) + t_15) + (0.5 / t_18);
                  	elseif (t_16 <= 2.999995)
                  		tmp = (t_7 + (sqrt((1.0 + t_11)) + (1.0 / (t_12 + sqrt((1.0 + t_10)))))) - (t_6 + t_13);
                  	else
                  		tmp = (((1.0 - t_6) + t_14) + (1.0 - t_12)) + (1.0 / (t_18 + sqrt((t_17 + 1.0))));
                  	end
                  	tmp_2 = tmp;
                  end
                  
                  code[x_, y_, z_, t_] := Block[{t$95$1 = N[Max[N[Min[x, y], $MachinePrecision], z], $MachinePrecision]}, Block[{t$95$2 = N[Max[N[Max[x, y], $MachinePrecision], t$95$1], $MachinePrecision]}, Block[{t$95$3 = N[Min[N[Max[x, y], $MachinePrecision], t$95$1], $MachinePrecision]}, Block[{t$95$4 = N[Min[N[Min[x, y], $MachinePrecision], z], $MachinePrecision]}, Block[{t$95$5 = N[Min[t$95$4, t], $MachinePrecision]}, Block[{t$95$6 = N[Sqrt[t$95$5], $MachinePrecision]}, Block[{t$95$7 = N[Sqrt[N[(1.0 + t$95$5), $MachinePrecision]], $MachinePrecision]}, Block[{t$95$8 = N[Max[t$95$4, t], $MachinePrecision]}, Block[{t$95$9 = N[Max[t$95$3, t$95$8], $MachinePrecision]}, Block[{t$95$10 = N[Min[t$95$2, t$95$9], $MachinePrecision]}, Block[{t$95$11 = N[Min[t$95$3, t$95$8], $MachinePrecision]}, Block[{t$95$12 = N[Sqrt[t$95$10], $MachinePrecision]}, Block[{t$95$13 = N[Sqrt[t$95$11], $MachinePrecision]}, Block[{t$95$14 = N[(N[Sqrt[N[(t$95$11 + 1.0), $MachinePrecision]], $MachinePrecision] - t$95$13), $MachinePrecision]}, Block[{t$95$15 = N[(N[Sqrt[N[(t$95$10 + 1.0), $MachinePrecision]], $MachinePrecision] - t$95$12), $MachinePrecision]}, Block[{t$95$16 = N[(N[(N[(N[Sqrt[N[(t$95$5 + 1.0), $MachinePrecision]], $MachinePrecision] - t$95$6), $MachinePrecision] + t$95$14), $MachinePrecision] + t$95$15), $MachinePrecision]}, Block[{t$95$17 = N[Max[t$95$2, t$95$9], $MachinePrecision]}, Block[{t$95$18 = N[Sqrt[t$95$17], $MachinePrecision]}, If[LessEqual[t$95$16, 1.0], N[(N[(N[(1.0 / N[(t$95$6 + t$95$7), $MachinePrecision]), $MachinePrecision] + t$95$15), $MachinePrecision] + N[(0.5 / t$95$18), $MachinePrecision]), $MachinePrecision], If[LessEqual[t$95$16, 2.999995], N[(N[(t$95$7 + N[(N[Sqrt[N[(1.0 + t$95$11), $MachinePrecision]], $MachinePrecision] + N[(1.0 / N[(t$95$12 + N[Sqrt[N[(1.0 + t$95$10), $MachinePrecision]], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] - N[(t$95$6 + t$95$13), $MachinePrecision]), $MachinePrecision], N[(N[(N[(N[(1.0 - t$95$6), $MachinePrecision] + t$95$14), $MachinePrecision] + N[(1.0 - t$95$12), $MachinePrecision]), $MachinePrecision] + N[(1.0 / N[(t$95$18 + N[Sqrt[N[(t$95$17 + 1.0), $MachinePrecision]], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]]]]]]]]]]]]]]]]]]]]]
                  
                  f(x, y, z, t):
                  	x in [-inf, +inf],
                  	y in [-inf, +inf],
                  	z in [-inf, +inf],
                  	t in [-inf, +inf]
                  code: THEORY
                  BEGIN
                  f(x, y, z, t: real): real =
                  	LET tmp_2 = IF (x < y) THEN x ELSE y ENDIF IN
                  	LET tmp_3 = IF (x < y) THEN x ELSE y ENDIF IN
                  	LET tmp_1 = IF (tmp_2 > z) THEN tmp_3 ELSE z ENDIF IN
                  	LET t_1 = tmp_1 IN
                  		LET tmp_6 = IF (x > y) THEN x ELSE y ENDIF IN
                  		LET tmp_7 = IF (x > y) THEN x ELSE y ENDIF IN
                  		LET tmp_5 = IF (tmp_6 > t_1) THEN tmp_7 ELSE t_1 ENDIF IN
                  		LET t_2 = tmp_5 IN
                  			LET tmp_10 = IF (x > y) THEN x ELSE y ENDIF IN
                  			LET tmp_11 = IF (x > y) THEN x ELSE y ENDIF IN
                  			LET tmp_9 = IF (tmp_10 < t_1) THEN tmp_11 ELSE t_1 ENDIF IN
                  			LET t_3 = tmp_9 IN
                  				LET tmp_14 = IF (x < y) THEN x ELSE y ENDIF IN
                  				LET tmp_15 = IF (x < y) THEN x ELSE y ENDIF IN
                  				LET tmp_13 = IF (tmp_14 < z) THEN tmp_15 ELSE z ENDIF IN
                  				LET t_4 = tmp_13 IN
                  					LET tmp_16 = IF (t_4 < t) THEN t_4 ELSE t ENDIF IN
                  					LET t_5 = tmp_16 IN
                  						LET t_6 = (sqrt(t_5)) IN
                  							LET t_7 = (sqrt(((1) + t_5))) IN
                  								LET tmp_17 = IF (t_4 > t) THEN t_4 ELSE t ENDIF IN
                  								LET t_8 = tmp_17 IN
                  									LET tmp_18 = IF (t_3 > t_8) THEN t_3 ELSE t_8 ENDIF IN
                  									LET t_9 = tmp_18 IN
                  										LET tmp_19 = IF (t_2 < t_9) THEN t_2 ELSE t_9 ENDIF IN
                  										LET t_10 = tmp_19 IN
                  											LET tmp_20 = IF (t_3 < t_8) THEN t_3 ELSE t_8 ENDIF IN
                  											LET t_11 = tmp_20 IN
                  												LET t_12 = (sqrt(t_10)) IN
                  													LET t_13 = (sqrt(t_11)) IN
                  														LET t_14 = ((sqrt((t_11 + (1)))) - t_13) IN
                  															LET t_15 = ((sqrt((t_10 + (1)))) - t_12) IN
                  																LET t_16 = ((((sqrt((t_5 + (1)))) - t_6) + t_14) + t_15) IN
                  																	LET tmp_21 = IF (t_2 > t_9) THEN t_2 ELSE t_9 ENDIF IN
                  																	LET t_17 = tmp_21 IN
                  																		LET t_18 = (sqrt(t_17)) IN
                  																			LET tmp_23 = IF (t_16 <= (29999950000000001892885848064906895160675048828125e-49)) THEN ((t_7 + ((sqrt(((1) + t_11))) + ((1) / (t_12 + (sqrt(((1) + t_10))))))) - (t_6 + t_13)) ELSE (((((1) - t_6) + t_14) + ((1) - t_12)) + ((1) / (t_18 + (sqrt((t_17 + (1))))))) ENDIF IN
                  																			LET tmp_22 = IF (t_16 <= (1)) THEN ((((1) / (t_6 + t_7)) + t_15) + ((5e-1) / t_18)) ELSE tmp_23 ENDIF IN
                  	tmp_22
                  END code
                  \begin{array}{l}
                  t_1 := \mathsf{max}\left(\mathsf{min}\left(x, y\right), z\right)\\
                  t_2 := \mathsf{max}\left(\mathsf{max}\left(x, y\right), t\_1\right)\\
                  t_3 := \mathsf{min}\left(\mathsf{max}\left(x, y\right), t\_1\right)\\
                  t_4 := \mathsf{min}\left(\mathsf{min}\left(x, y\right), z\right)\\
                  t_5 := \mathsf{min}\left(t\_4, t\right)\\
                  t_6 := \sqrt{t\_5}\\
                  t_7 := \sqrt{1 + t\_5}\\
                  t_8 := \mathsf{max}\left(t\_4, t\right)\\
                  t_9 := \mathsf{max}\left(t\_3, t\_8\right)\\
                  t_10 := \mathsf{min}\left(t\_2, t\_9\right)\\
                  t_11 := \mathsf{min}\left(t\_3, t\_8\right)\\
                  t_12 := \sqrt{t\_10}\\
                  t_13 := \sqrt{t\_11}\\
                  t_14 := \sqrt{t\_11 + 1} - t\_13\\
                  t_15 := \sqrt{t\_10 + 1} - t\_12\\
                  t_16 := \left(\left(\sqrt{t\_5 + 1} - t\_6\right) + t\_14\right) + t\_15\\
                  t_17 := \mathsf{max}\left(t\_2, t\_9\right)\\
                  t_18 := \sqrt{t\_17}\\
                  \mathbf{if}\;t\_16 \leq 1:\\
                  \;\;\;\;\left(\frac{1}{t\_6 + t\_7} + t\_15\right) + \frac{0.5}{t\_18}\\
                  
                  \mathbf{elif}\;t\_16 \leq 2.999995:\\
                  \;\;\;\;\left(t\_7 + \left(\sqrt{1 + t\_11} + \frac{1}{t\_12 + \sqrt{1 + t\_10}}\right)\right) - \left(t\_6 + t\_13\right)\\
                  
                  \mathbf{else}:\\
                  \;\;\;\;\left(\left(\left(1 - t\_6\right) + t\_14\right) + \left(1 - t\_12\right)\right) + \frac{1}{t\_18 + \sqrt{t\_17 + 1}}\\
                  
                  
                  \end{array}
                  
                  Derivation
                  1. Split input into 3 regimes
                  2. if (+.f64 (+.f64 (-.f64 (sqrt.f64 (+.f64 x #s(literal 1 binary64))) (sqrt.f64 x)) (-.f64 (sqrt.f64 (+.f64 y #s(literal 1 binary64))) (sqrt.f64 y))) (-.f64 (sqrt.f64 (+.f64 z #s(literal 1 binary64))) (sqrt.f64 z))) < 1

                    1. Initial program 92.0%

                      \[\left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                    2. Step-by-step derivation
                      1. Applied rewrites94.0%

                        \[\leadsto \left(\left(\frac{1}{\sqrt{x} + \sqrt{1 + x}} + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                      2. Taylor expanded in y around inf

                        \[\leadsto \left(\frac{1}{\sqrt{x} + \sqrt{1 + x}} + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                      3. Step-by-step derivation
                        1. Applied rewrites52.4%

                          \[\leadsto \left(\frac{1}{\sqrt{x} + \sqrt{1 + x}} + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                        2. Taylor expanded in t around inf

                          \[\leadsto \left(\frac{1}{\sqrt{x} + \sqrt{1 + x}} + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \frac{\frac{1}{2}}{t \cdot \sqrt{\frac{1}{t}}} \]
                        3. Step-by-step derivation
                          1. Applied rewrites28.6%

                            \[\leadsto \left(\frac{1}{\sqrt{x} + \sqrt{1 + x}} + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \frac{0.5}{t \cdot \sqrt{\frac{1}{t}}} \]
                          2. Taylor expanded in t around 0

                            \[\leadsto \left(\frac{1}{\sqrt{x} + \sqrt{1 + x}} + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \frac{\frac{1}{2}}{\sqrt{t}} \]
                          3. Step-by-step derivation
                            1. Applied rewrites28.6%

                              \[\leadsto \left(\frac{1}{\sqrt{x} + \sqrt{1 + x}} + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \frac{0.5}{\sqrt{t}} \]

                            if 1 < (+.f64 (+.f64 (-.f64 (sqrt.f64 (+.f64 x #s(literal 1 binary64))) (sqrt.f64 x)) (-.f64 (sqrt.f64 (+.f64 y #s(literal 1 binary64))) (sqrt.f64 y))) (-.f64 (sqrt.f64 (+.f64 z #s(literal 1 binary64))) (sqrt.f64 z))) < 2.9999950000000002

                            1. Initial program 92.0%

                              \[\left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                            2. Step-by-step derivation
                              1. Applied rewrites93.8%

                                \[\leadsto \left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \frac{1}{\sqrt{z} + \sqrt{z + 1}}\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                              2. Taylor expanded in t around inf

                                \[\leadsto \left(\sqrt{1 + x} + \left(\sqrt{1 + y} + \frac{1}{\sqrt{z} + \sqrt{1 + z}}\right)\right) - \left(\sqrt{x} + \sqrt{y}\right) \]
                              3. Step-by-step derivation
                                1. Applied rewrites19.3%

                                  \[\leadsto \left(\sqrt{1 + x} + \left(\sqrt{1 + y} + \frac{1}{\sqrt{z} + \sqrt{1 + z}}\right)\right) - \left(\sqrt{x} + \sqrt{y}\right) \]

                                if 2.9999950000000002 < (+.f64 (+.f64 (-.f64 (sqrt.f64 (+.f64 x #s(literal 1 binary64))) (sqrt.f64 x)) (-.f64 (sqrt.f64 (+.f64 y #s(literal 1 binary64))) (sqrt.f64 y))) (-.f64 (sqrt.f64 (+.f64 z #s(literal 1 binary64))) (sqrt.f64 z)))

                                1. Initial program 92.0%

                                  \[\left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                2. Step-by-step derivation
                                  1. Applied rewrites93.8%

                                    \[\leadsto \left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \frac{1}{\sqrt{t} + \sqrt{t + 1}} \]
                                  2. Taylor expanded in z around 0

                                    \[\leadsto \left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(1 - \sqrt{z}\right)\right) + \frac{1}{\sqrt{t} + \sqrt{t + 1}} \]
                                  3. Step-by-step derivation
                                    1. Applied rewrites49.4%

                                      \[\leadsto \left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(1 - \sqrt{z}\right)\right) + \frac{1}{\sqrt{t} + \sqrt{t + 1}} \]
                                    2. Taylor expanded in x around 0

                                      \[\leadsto \left(\left(\left(1 - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(1 - \sqrt{z}\right)\right) + \frac{1}{\sqrt{t} + \sqrt{t + 1}} \]
                                    3. Step-by-step derivation
                                      1. Applied rewrites25.0%

                                        \[\leadsto \left(\left(\left(1 - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(1 - \sqrt{z}\right)\right) + \frac{1}{\sqrt{t} + \sqrt{t + 1}} \]
                                    4. Recombined 3 regimes into one program.
                                    5. Add Preprocessing

                                    Alternative 4: 97.6% accurate, 0.3× speedup?

                                    \[\begin{array}{l} t_1 := \mathsf{max}\left(\mathsf{min}\left(x, y\right), z\right)\\ t_2 := \mathsf{max}\left(\mathsf{max}\left(x, y\right), t\_1\right)\\ t_3 := \sqrt{t\_2 + 1} - \sqrt{t\_2}\\ t_4 := \mathsf{min}\left(\mathsf{min}\left(x, y\right), z\right)\\ t_5 := \mathsf{max}\left(t\_4, t\right)\\ t_6 := \sqrt{t\_5}\\ t_7 := \mathsf{min}\left(t\_4, t\right)\\ t_8 := \sqrt{t\_7}\\ t_9 := \sqrt{t\_7 + 1} - t\_8\\ t_10 := \mathsf{min}\left(\mathsf{max}\left(x, y\right), t\_1\right)\\ \mathbf{if}\;t\_9 \leq 0.2:\\ \;\;\;\;\left(\frac{1}{t\_8 + \sqrt{1 + t\_7}} + t\_3\right) + \frac{0.5}{t\_6}\\ \mathbf{else}:\\ \;\;\;\;\left(\left(t\_9 + \frac{1}{\sqrt{t\_10} + \sqrt{t\_10 + 1}}\right) + t\_3\right) + \left(\sqrt{t\_5 + 1} - t\_6\right)\\ \end{array} \]
                                    (FPCore (x y z t)
                                      :precision binary64
                                      :pre TRUE
                                      (let* ((t_1 (fmax (fmin x y) z))
                                           (t_2 (fmax (fmax x y) t_1))
                                           (t_3 (- (sqrt (+ t_2 1.0)) (sqrt t_2)))
                                           (t_4 (fmin (fmin x y) z))
                                           (t_5 (fmax t_4 t))
                                           (t_6 (sqrt t_5))
                                           (t_7 (fmin t_4 t))
                                           (t_8 (sqrt t_7))
                                           (t_9 (- (sqrt (+ t_7 1.0)) t_8))
                                           (t_10 (fmin (fmax x y) t_1)))
                                      (if (<= t_9 0.2)
                                        (+ (+ (/ 1.0 (+ t_8 (sqrt (+ 1.0 t_7)))) t_3) (/ 0.5 t_6))
                                        (+
                                         (+ (+ t_9 (/ 1.0 (+ (sqrt t_10) (sqrt (+ t_10 1.0))))) t_3)
                                         (- (sqrt (+ t_5 1.0)) t_6)))))
                                    double code(double x, double y, double z, double t) {
                                    	double t_1 = fmax(fmin(x, y), z);
                                    	double t_2 = fmax(fmax(x, y), t_1);
                                    	double t_3 = sqrt((t_2 + 1.0)) - sqrt(t_2);
                                    	double t_4 = fmin(fmin(x, y), z);
                                    	double t_5 = fmax(t_4, t);
                                    	double t_6 = sqrt(t_5);
                                    	double t_7 = fmin(t_4, t);
                                    	double t_8 = sqrt(t_7);
                                    	double t_9 = sqrt((t_7 + 1.0)) - t_8;
                                    	double t_10 = fmin(fmax(x, y), t_1);
                                    	double tmp;
                                    	if (t_9 <= 0.2) {
                                    		tmp = ((1.0 / (t_8 + sqrt((1.0 + t_7)))) + t_3) + (0.5 / t_6);
                                    	} else {
                                    		tmp = ((t_9 + (1.0 / (sqrt(t_10) + sqrt((t_10 + 1.0))))) + t_3) + (sqrt((t_5 + 1.0)) - t_6);
                                    	}
                                    	return tmp;
                                    }
                                    
                                    real(8) function code(x, y, z, t)
                                    use fmin_fmax_functions
                                        real(8), intent (in) :: x
                                        real(8), intent (in) :: y
                                        real(8), intent (in) :: z
                                        real(8), intent (in) :: t
                                        real(8) :: t_1
                                        real(8) :: t_10
                                        real(8) :: t_2
                                        real(8) :: t_3
                                        real(8) :: t_4
                                        real(8) :: t_5
                                        real(8) :: t_6
                                        real(8) :: t_7
                                        real(8) :: t_8
                                        real(8) :: t_9
                                        real(8) :: tmp
                                        t_1 = fmax(fmin(x, y), z)
                                        t_2 = fmax(fmax(x, y), t_1)
                                        t_3 = sqrt((t_2 + 1.0d0)) - sqrt(t_2)
                                        t_4 = fmin(fmin(x, y), z)
                                        t_5 = fmax(t_4, t)
                                        t_6 = sqrt(t_5)
                                        t_7 = fmin(t_4, t)
                                        t_8 = sqrt(t_7)
                                        t_9 = sqrt((t_7 + 1.0d0)) - t_8
                                        t_10 = fmin(fmax(x, y), t_1)
                                        if (t_9 <= 0.2d0) then
                                            tmp = ((1.0d0 / (t_8 + sqrt((1.0d0 + t_7)))) + t_3) + (0.5d0 / t_6)
                                        else
                                            tmp = ((t_9 + (1.0d0 / (sqrt(t_10) + sqrt((t_10 + 1.0d0))))) + t_3) + (sqrt((t_5 + 1.0d0)) - t_6)
                                        end if
                                        code = tmp
                                    end function
                                    
                                    public static double code(double x, double y, double z, double t) {
                                    	double t_1 = fmax(fmin(x, y), z);
                                    	double t_2 = fmax(fmax(x, y), t_1);
                                    	double t_3 = Math.sqrt((t_2 + 1.0)) - Math.sqrt(t_2);
                                    	double t_4 = fmin(fmin(x, y), z);
                                    	double t_5 = fmax(t_4, t);
                                    	double t_6 = Math.sqrt(t_5);
                                    	double t_7 = fmin(t_4, t);
                                    	double t_8 = Math.sqrt(t_7);
                                    	double t_9 = Math.sqrt((t_7 + 1.0)) - t_8;
                                    	double t_10 = fmin(fmax(x, y), t_1);
                                    	double tmp;
                                    	if (t_9 <= 0.2) {
                                    		tmp = ((1.0 / (t_8 + Math.sqrt((1.0 + t_7)))) + t_3) + (0.5 / t_6);
                                    	} else {
                                    		tmp = ((t_9 + (1.0 / (Math.sqrt(t_10) + Math.sqrt((t_10 + 1.0))))) + t_3) + (Math.sqrt((t_5 + 1.0)) - t_6);
                                    	}
                                    	return tmp;
                                    }
                                    
                                    def code(x, y, z, t):
                                    	t_1 = fmax(fmin(x, y), z)
                                    	t_2 = fmax(fmax(x, y), t_1)
                                    	t_3 = math.sqrt((t_2 + 1.0)) - math.sqrt(t_2)
                                    	t_4 = fmin(fmin(x, y), z)
                                    	t_5 = fmax(t_4, t)
                                    	t_6 = math.sqrt(t_5)
                                    	t_7 = fmin(t_4, t)
                                    	t_8 = math.sqrt(t_7)
                                    	t_9 = math.sqrt((t_7 + 1.0)) - t_8
                                    	t_10 = fmin(fmax(x, y), t_1)
                                    	tmp = 0
                                    	if t_9 <= 0.2:
                                    		tmp = ((1.0 / (t_8 + math.sqrt((1.0 + t_7)))) + t_3) + (0.5 / t_6)
                                    	else:
                                    		tmp = ((t_9 + (1.0 / (math.sqrt(t_10) + math.sqrt((t_10 + 1.0))))) + t_3) + (math.sqrt((t_5 + 1.0)) - t_6)
                                    	return tmp
                                    
                                    function code(x, y, z, t)
                                    	t_1 = fmax(fmin(x, y), z)
                                    	t_2 = fmax(fmax(x, y), t_1)
                                    	t_3 = Float64(sqrt(Float64(t_2 + 1.0)) - sqrt(t_2))
                                    	t_4 = fmin(fmin(x, y), z)
                                    	t_5 = fmax(t_4, t)
                                    	t_6 = sqrt(t_5)
                                    	t_7 = fmin(t_4, t)
                                    	t_8 = sqrt(t_7)
                                    	t_9 = Float64(sqrt(Float64(t_7 + 1.0)) - t_8)
                                    	t_10 = fmin(fmax(x, y), t_1)
                                    	tmp = 0.0
                                    	if (t_9 <= 0.2)
                                    		tmp = Float64(Float64(Float64(1.0 / Float64(t_8 + sqrt(Float64(1.0 + t_7)))) + t_3) + Float64(0.5 / t_6));
                                    	else
                                    		tmp = Float64(Float64(Float64(t_9 + Float64(1.0 / Float64(sqrt(t_10) + sqrt(Float64(t_10 + 1.0))))) + t_3) + Float64(sqrt(Float64(t_5 + 1.0)) - t_6));
                                    	end
                                    	return tmp
                                    end
                                    
                                    function tmp_2 = code(x, y, z, t)
                                    	t_1 = max(min(x, y), z);
                                    	t_2 = max(max(x, y), t_1);
                                    	t_3 = sqrt((t_2 + 1.0)) - sqrt(t_2);
                                    	t_4 = min(min(x, y), z);
                                    	t_5 = max(t_4, t);
                                    	t_6 = sqrt(t_5);
                                    	t_7 = min(t_4, t);
                                    	t_8 = sqrt(t_7);
                                    	t_9 = sqrt((t_7 + 1.0)) - t_8;
                                    	t_10 = min(max(x, y), t_1);
                                    	tmp = 0.0;
                                    	if (t_9 <= 0.2)
                                    		tmp = ((1.0 / (t_8 + sqrt((1.0 + t_7)))) + t_3) + (0.5 / t_6);
                                    	else
                                    		tmp = ((t_9 + (1.0 / (sqrt(t_10) + sqrt((t_10 + 1.0))))) + t_3) + (sqrt((t_5 + 1.0)) - t_6);
                                    	end
                                    	tmp_2 = tmp;
                                    end
                                    
                                    code[x_, y_, z_, t_] := Block[{t$95$1 = N[Max[N[Min[x, y], $MachinePrecision], z], $MachinePrecision]}, Block[{t$95$2 = N[Max[N[Max[x, y], $MachinePrecision], t$95$1], $MachinePrecision]}, Block[{t$95$3 = N[(N[Sqrt[N[(t$95$2 + 1.0), $MachinePrecision]], $MachinePrecision] - N[Sqrt[t$95$2], $MachinePrecision]), $MachinePrecision]}, Block[{t$95$4 = N[Min[N[Min[x, y], $MachinePrecision], z], $MachinePrecision]}, Block[{t$95$5 = N[Max[t$95$4, t], $MachinePrecision]}, Block[{t$95$6 = N[Sqrt[t$95$5], $MachinePrecision]}, Block[{t$95$7 = N[Min[t$95$4, t], $MachinePrecision]}, Block[{t$95$8 = N[Sqrt[t$95$7], $MachinePrecision]}, Block[{t$95$9 = N[(N[Sqrt[N[(t$95$7 + 1.0), $MachinePrecision]], $MachinePrecision] - t$95$8), $MachinePrecision]}, Block[{t$95$10 = N[Min[N[Max[x, y], $MachinePrecision], t$95$1], $MachinePrecision]}, If[LessEqual[t$95$9, 0.2], N[(N[(N[(1.0 / N[(t$95$8 + N[Sqrt[N[(1.0 + t$95$7), $MachinePrecision]], $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + t$95$3), $MachinePrecision] + N[(0.5 / t$95$6), $MachinePrecision]), $MachinePrecision], N[(N[(N[(t$95$9 + N[(1.0 / N[(N[Sqrt[t$95$10], $MachinePrecision] + N[Sqrt[N[(t$95$10 + 1.0), $MachinePrecision]], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + t$95$3), $MachinePrecision] + N[(N[Sqrt[N[(t$95$5 + 1.0), $MachinePrecision]], $MachinePrecision] - t$95$6), $MachinePrecision]), $MachinePrecision]]]]]]]]]]]]
                                    
                                    f(x, y, z, t):
                                    	x in [-inf, +inf],
                                    	y in [-inf, +inf],
                                    	z in [-inf, +inf],
                                    	t in [-inf, +inf]
                                    code: THEORY
                                    BEGIN
                                    f(x, y, z, t: real): real =
                                    	LET tmp_2 = IF (x < y) THEN x ELSE y ENDIF IN
                                    	LET tmp_3 = IF (x < y) THEN x ELSE y ENDIF IN
                                    	LET tmp_1 = IF (tmp_2 > z) THEN tmp_3 ELSE z ENDIF IN
                                    	LET t_1 = tmp_1 IN
                                    		LET tmp_6 = IF (x > y) THEN x ELSE y ENDIF IN
                                    		LET tmp_7 = IF (x > y) THEN x ELSE y ENDIF IN
                                    		LET tmp_5 = IF (tmp_6 > t_1) THEN tmp_7 ELSE t_1 ENDIF IN
                                    		LET t_2 = tmp_5 IN
                                    			LET t_3 = ((sqrt((t_2 + (1)))) - (sqrt(t_2))) IN
                                    				LET tmp_10 = IF (x < y) THEN x ELSE y ENDIF IN
                                    				LET tmp_11 = IF (x < y) THEN x ELSE y ENDIF IN
                                    				LET tmp_9 = IF (tmp_10 < z) THEN tmp_11 ELSE z ENDIF IN
                                    				LET t_4 = tmp_9 IN
                                    					LET tmp_12 = IF (t_4 > t) THEN t_4 ELSE t ENDIF IN
                                    					LET t_5 = tmp_12 IN
                                    						LET t_6 = (sqrt(t_5)) IN
                                    							LET tmp_13 = IF (t_4 < t) THEN t_4 ELSE t ENDIF IN
                                    							LET t_7 = tmp_13 IN
                                    								LET t_8 = (sqrt(t_7)) IN
                                    									LET t_9 = ((sqrt((t_7 + (1)))) - t_8) IN
                                    										LET tmp_16 = IF (x > y) THEN x ELSE y ENDIF IN
                                    										LET tmp_17 = IF (x > y) THEN x ELSE y ENDIF IN
                                    										LET tmp_15 = IF (tmp_16 < t_1) THEN tmp_17 ELSE t_1 ENDIF IN
                                    										LET t_10 = tmp_15 IN
                                    											LET tmp_18 = IF (t_9 <= (200000000000000011102230246251565404236316680908203125e-54)) THEN ((((1) / (t_8 + (sqrt(((1) + t_7))))) + t_3) + ((5e-1) / t_6)) ELSE (((t_9 + ((1) / ((sqrt(t_10)) + (sqrt((t_10 + (1))))))) + t_3) + ((sqrt((t_5 + (1)))) - t_6)) ENDIF IN
                                    	tmp_18
                                    END code
                                    \begin{array}{l}
                                    t_1 := \mathsf{max}\left(\mathsf{min}\left(x, y\right), z\right)\\
                                    t_2 := \mathsf{max}\left(\mathsf{max}\left(x, y\right), t\_1\right)\\
                                    t_3 := \sqrt{t\_2 + 1} - \sqrt{t\_2}\\
                                    t_4 := \mathsf{min}\left(\mathsf{min}\left(x, y\right), z\right)\\
                                    t_5 := \mathsf{max}\left(t\_4, t\right)\\
                                    t_6 := \sqrt{t\_5}\\
                                    t_7 := \mathsf{min}\left(t\_4, t\right)\\
                                    t_8 := \sqrt{t\_7}\\
                                    t_9 := \sqrt{t\_7 + 1} - t\_8\\
                                    t_10 := \mathsf{min}\left(\mathsf{max}\left(x, y\right), t\_1\right)\\
                                    \mathbf{if}\;t\_9 \leq 0.2:\\
                                    \;\;\;\;\left(\frac{1}{t\_8 + \sqrt{1 + t\_7}} + t\_3\right) + \frac{0.5}{t\_6}\\
                                    
                                    \mathbf{else}:\\
                                    \;\;\;\;\left(\left(t\_9 + \frac{1}{\sqrt{t\_10} + \sqrt{t\_10 + 1}}\right) + t\_3\right) + \left(\sqrt{t\_5 + 1} - t\_6\right)\\
                                    
                                    
                                    \end{array}
                                    
                                    Derivation
                                    1. Split input into 2 regimes
                                    2. if (-.f64 (sqrt.f64 (+.f64 x #s(literal 1 binary64))) (sqrt.f64 x)) < 0.20000000000000001

                                      1. Initial program 92.0%

                                        \[\left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                      2. Step-by-step derivation
                                        1. Applied rewrites94.0%

                                          \[\leadsto \left(\left(\frac{1}{\sqrt{x} + \sqrt{1 + x}} + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                        2. Taylor expanded in y around inf

                                          \[\leadsto \left(\frac{1}{\sqrt{x} + \sqrt{1 + x}} + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                        3. Step-by-step derivation
                                          1. Applied rewrites52.4%

                                            \[\leadsto \left(\frac{1}{\sqrt{x} + \sqrt{1 + x}} + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                          2. Taylor expanded in t around inf

                                            \[\leadsto \left(\frac{1}{\sqrt{x} + \sqrt{1 + x}} + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \frac{\frac{1}{2}}{t \cdot \sqrt{\frac{1}{t}}} \]
                                          3. Step-by-step derivation
                                            1. Applied rewrites28.6%

                                              \[\leadsto \left(\frac{1}{\sqrt{x} + \sqrt{1 + x}} + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \frac{0.5}{t \cdot \sqrt{\frac{1}{t}}} \]
                                            2. Taylor expanded in t around 0

                                              \[\leadsto \left(\frac{1}{\sqrt{x} + \sqrt{1 + x}} + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \frac{\frac{1}{2}}{\sqrt{t}} \]
                                            3. Step-by-step derivation
                                              1. Applied rewrites28.6%

                                                \[\leadsto \left(\frac{1}{\sqrt{x} + \sqrt{1 + x}} + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \frac{0.5}{\sqrt{t}} \]

                                              if 0.20000000000000001 < (-.f64 (sqrt.f64 (+.f64 x #s(literal 1 binary64))) (sqrt.f64 x))

                                              1. Initial program 92.0%

                                                \[\left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                              2. Step-by-step derivation
                                                1. Applied rewrites93.9%

                                                  \[\leadsto \left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \frac{1}{\sqrt{y} + \sqrt{y + 1}}\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                              3. Recombined 2 regimes into one program.
                                              4. Add Preprocessing

                                              Alternative 5: 97.3% accurate, 0.1× speedup?

                                              \[\begin{array}{l} t_1 := \mathsf{max}\left(\mathsf{min}\left(x, y\right), z\right)\\ t_2 := \mathsf{max}\left(\mathsf{max}\left(x, y\right), t\_1\right)\\ t_3 := \mathsf{min}\left(\mathsf{max}\left(x, y\right), t\_1\right)\\ t_4 := \mathsf{min}\left(\mathsf{min}\left(x, y\right), z\right)\\ t_5 := \mathsf{min}\left(t\_4, t\right)\\ t_6 := \sqrt{t\_5}\\ t_7 := \sqrt{1 + t\_5}\\ t_8 := \mathsf{max}\left(t\_4, t\right)\\ t_9 := \mathsf{min}\left(t\_3, t\_8\right)\\ t_10 := \mathsf{max}\left(t\_3, t\_8\right)\\ t_11 := \mathsf{min}\left(t\_2, t\_10\right)\\ t_12 := \sqrt{t\_11}\\ t_13 := \sqrt{t\_9}\\ t_14 := t\_6 + t\_13\\ t_15 := \sqrt{t\_11 + 1} - t\_12\\ t_16 := \left(\left(\sqrt{t\_5 + 1} - t\_6\right) + \left(\sqrt{t\_9 + 1} - t\_13\right)\right) + t\_15\\ t_17 := \mathsf{max}\left(t\_2, t\_10\right)\\ t_18 := t\_17 + 1\\ t_19 := \sqrt{t\_17}\\ \mathbf{if}\;t\_16 \leq 1:\\ \;\;\;\;\left(\frac{1}{t\_6 + t\_7} + t\_15\right) + \frac{0.5}{t\_19}\\ \mathbf{elif}\;t\_16 \leq 2.999995:\\ \;\;\;\;\left(t\_7 + \left(\sqrt{1 + t\_9} + \frac{1}{t\_12 + \sqrt{1 + t\_11}}\right)\right) - t\_14\\ \mathbf{else}:\\ \;\;\;\;\left(\left(2 - t\_14\right) + \left(1 - t\_12\right)\right) + \frac{t\_18 - t\_17}{t\_19 + \sqrt{t\_18}}\\ \end{array} \]
                                              (FPCore (x y z t)
                                                :precision binary64
                                                :pre TRUE
                                                (let* ((t_1 (fmax (fmin x y) z))
                                                     (t_2 (fmax (fmax x y) t_1))
                                                     (t_3 (fmin (fmax x y) t_1))
                                                     (t_4 (fmin (fmin x y) z))
                                                     (t_5 (fmin t_4 t))
                                                     (t_6 (sqrt t_5))
                                                     (t_7 (sqrt (+ 1.0 t_5)))
                                                     (t_8 (fmax t_4 t))
                                                     (t_9 (fmin t_3 t_8))
                                                     (t_10 (fmax t_3 t_8))
                                                     (t_11 (fmin t_2 t_10))
                                                     (t_12 (sqrt t_11))
                                                     (t_13 (sqrt t_9))
                                                     (t_14 (+ t_6 t_13))
                                                     (t_15 (- (sqrt (+ t_11 1.0)) t_12))
                                                     (t_16
                                                      (+
                                                       (+ (- (sqrt (+ t_5 1.0)) t_6) (- (sqrt (+ t_9 1.0)) t_13))
                                                       t_15))
                                                     (t_17 (fmax t_2 t_10))
                                                     (t_18 (+ t_17 1.0))
                                                     (t_19 (sqrt t_17)))
                                                (if (<= t_16 1.0)
                                                  (+ (+ (/ 1.0 (+ t_6 t_7)) t_15) (/ 0.5 t_19))
                                                  (if (<= t_16 2.999995)
                                                    (-
                                                     (+
                                                      t_7
                                                      (+ (sqrt (+ 1.0 t_9)) (/ 1.0 (+ t_12 (sqrt (+ 1.0 t_11))))))
                                                     t_14)
                                                    (+
                                                     (+ (- 2.0 t_14) (- 1.0 t_12))
                                                     (/ (- t_18 t_17) (+ t_19 (sqrt t_18))))))))
                                              double code(double x, double y, double z, double t) {
                                              	double t_1 = fmax(fmin(x, y), z);
                                              	double t_2 = fmax(fmax(x, y), t_1);
                                              	double t_3 = fmin(fmax(x, y), t_1);
                                              	double t_4 = fmin(fmin(x, y), z);
                                              	double t_5 = fmin(t_4, t);
                                              	double t_6 = sqrt(t_5);
                                              	double t_7 = sqrt((1.0 + t_5));
                                              	double t_8 = fmax(t_4, t);
                                              	double t_9 = fmin(t_3, t_8);
                                              	double t_10 = fmax(t_3, t_8);
                                              	double t_11 = fmin(t_2, t_10);
                                              	double t_12 = sqrt(t_11);
                                              	double t_13 = sqrt(t_9);
                                              	double t_14 = t_6 + t_13;
                                              	double t_15 = sqrt((t_11 + 1.0)) - t_12;
                                              	double t_16 = ((sqrt((t_5 + 1.0)) - t_6) + (sqrt((t_9 + 1.0)) - t_13)) + t_15;
                                              	double t_17 = fmax(t_2, t_10);
                                              	double t_18 = t_17 + 1.0;
                                              	double t_19 = sqrt(t_17);
                                              	double tmp;
                                              	if (t_16 <= 1.0) {
                                              		tmp = ((1.0 / (t_6 + t_7)) + t_15) + (0.5 / t_19);
                                              	} else if (t_16 <= 2.999995) {
                                              		tmp = (t_7 + (sqrt((1.0 + t_9)) + (1.0 / (t_12 + sqrt((1.0 + t_11)))))) - t_14;
                                              	} else {
                                              		tmp = ((2.0 - t_14) + (1.0 - t_12)) + ((t_18 - t_17) / (t_19 + sqrt(t_18)));
                                              	}
                                              	return tmp;
                                              }
                                              
                                              real(8) function code(x, y, z, t)
                                              use fmin_fmax_functions
                                                  real(8), intent (in) :: x
                                                  real(8), intent (in) :: y
                                                  real(8), intent (in) :: z
                                                  real(8), intent (in) :: t
                                                  real(8) :: t_1
                                                  real(8) :: t_10
                                                  real(8) :: t_11
                                                  real(8) :: t_12
                                                  real(8) :: t_13
                                                  real(8) :: t_14
                                                  real(8) :: t_15
                                                  real(8) :: t_16
                                                  real(8) :: t_17
                                                  real(8) :: t_18
                                                  real(8) :: t_19
                                                  real(8) :: t_2
                                                  real(8) :: t_3
                                                  real(8) :: t_4
                                                  real(8) :: t_5
                                                  real(8) :: t_6
                                                  real(8) :: t_7
                                                  real(8) :: t_8
                                                  real(8) :: t_9
                                                  real(8) :: tmp
                                                  t_1 = fmax(fmin(x, y), z)
                                                  t_2 = fmax(fmax(x, y), t_1)
                                                  t_3 = fmin(fmax(x, y), t_1)
                                                  t_4 = fmin(fmin(x, y), z)
                                                  t_5 = fmin(t_4, t)
                                                  t_6 = sqrt(t_5)
                                                  t_7 = sqrt((1.0d0 + t_5))
                                                  t_8 = fmax(t_4, t)
                                                  t_9 = fmin(t_3, t_8)
                                                  t_10 = fmax(t_3, t_8)
                                                  t_11 = fmin(t_2, t_10)
                                                  t_12 = sqrt(t_11)
                                                  t_13 = sqrt(t_9)
                                                  t_14 = t_6 + t_13
                                                  t_15 = sqrt((t_11 + 1.0d0)) - t_12
                                                  t_16 = ((sqrt((t_5 + 1.0d0)) - t_6) + (sqrt((t_9 + 1.0d0)) - t_13)) + t_15
                                                  t_17 = fmax(t_2, t_10)
                                                  t_18 = t_17 + 1.0d0
                                                  t_19 = sqrt(t_17)
                                                  if (t_16 <= 1.0d0) then
                                                      tmp = ((1.0d0 / (t_6 + t_7)) + t_15) + (0.5d0 / t_19)
                                                  else if (t_16 <= 2.999995d0) then
                                                      tmp = (t_7 + (sqrt((1.0d0 + t_9)) + (1.0d0 / (t_12 + sqrt((1.0d0 + t_11)))))) - t_14
                                                  else
                                                      tmp = ((2.0d0 - t_14) + (1.0d0 - t_12)) + ((t_18 - t_17) / (t_19 + sqrt(t_18)))
                                                  end if
                                                  code = tmp
                                              end function
                                              
                                              public static double code(double x, double y, double z, double t) {
                                              	double t_1 = fmax(fmin(x, y), z);
                                              	double t_2 = fmax(fmax(x, y), t_1);
                                              	double t_3 = fmin(fmax(x, y), t_1);
                                              	double t_4 = fmin(fmin(x, y), z);
                                              	double t_5 = fmin(t_4, t);
                                              	double t_6 = Math.sqrt(t_5);
                                              	double t_7 = Math.sqrt((1.0 + t_5));
                                              	double t_8 = fmax(t_4, t);
                                              	double t_9 = fmin(t_3, t_8);
                                              	double t_10 = fmax(t_3, t_8);
                                              	double t_11 = fmin(t_2, t_10);
                                              	double t_12 = Math.sqrt(t_11);
                                              	double t_13 = Math.sqrt(t_9);
                                              	double t_14 = t_6 + t_13;
                                              	double t_15 = Math.sqrt((t_11 + 1.0)) - t_12;
                                              	double t_16 = ((Math.sqrt((t_5 + 1.0)) - t_6) + (Math.sqrt((t_9 + 1.0)) - t_13)) + t_15;
                                              	double t_17 = fmax(t_2, t_10);
                                              	double t_18 = t_17 + 1.0;
                                              	double t_19 = Math.sqrt(t_17);
                                              	double tmp;
                                              	if (t_16 <= 1.0) {
                                              		tmp = ((1.0 / (t_6 + t_7)) + t_15) + (0.5 / t_19);
                                              	} else if (t_16 <= 2.999995) {
                                              		tmp = (t_7 + (Math.sqrt((1.0 + t_9)) + (1.0 / (t_12 + Math.sqrt((1.0 + t_11)))))) - t_14;
                                              	} else {
                                              		tmp = ((2.0 - t_14) + (1.0 - t_12)) + ((t_18 - t_17) / (t_19 + Math.sqrt(t_18)));
                                              	}
                                              	return tmp;
                                              }
                                              
                                              def code(x, y, z, t):
                                              	t_1 = fmax(fmin(x, y), z)
                                              	t_2 = fmax(fmax(x, y), t_1)
                                              	t_3 = fmin(fmax(x, y), t_1)
                                              	t_4 = fmin(fmin(x, y), z)
                                              	t_5 = fmin(t_4, t)
                                              	t_6 = math.sqrt(t_5)
                                              	t_7 = math.sqrt((1.0 + t_5))
                                              	t_8 = fmax(t_4, t)
                                              	t_9 = fmin(t_3, t_8)
                                              	t_10 = fmax(t_3, t_8)
                                              	t_11 = fmin(t_2, t_10)
                                              	t_12 = math.sqrt(t_11)
                                              	t_13 = math.sqrt(t_9)
                                              	t_14 = t_6 + t_13
                                              	t_15 = math.sqrt((t_11 + 1.0)) - t_12
                                              	t_16 = ((math.sqrt((t_5 + 1.0)) - t_6) + (math.sqrt((t_9 + 1.0)) - t_13)) + t_15
                                              	t_17 = fmax(t_2, t_10)
                                              	t_18 = t_17 + 1.0
                                              	t_19 = math.sqrt(t_17)
                                              	tmp = 0
                                              	if t_16 <= 1.0:
                                              		tmp = ((1.0 / (t_6 + t_7)) + t_15) + (0.5 / t_19)
                                              	elif t_16 <= 2.999995:
                                              		tmp = (t_7 + (math.sqrt((1.0 + t_9)) + (1.0 / (t_12 + math.sqrt((1.0 + t_11)))))) - t_14
                                              	else:
                                              		tmp = ((2.0 - t_14) + (1.0 - t_12)) + ((t_18 - t_17) / (t_19 + math.sqrt(t_18)))
                                              	return tmp
                                              
                                              function code(x, y, z, t)
                                              	t_1 = fmax(fmin(x, y), z)
                                              	t_2 = fmax(fmax(x, y), t_1)
                                              	t_3 = fmin(fmax(x, y), t_1)
                                              	t_4 = fmin(fmin(x, y), z)
                                              	t_5 = fmin(t_4, t)
                                              	t_6 = sqrt(t_5)
                                              	t_7 = sqrt(Float64(1.0 + t_5))
                                              	t_8 = fmax(t_4, t)
                                              	t_9 = fmin(t_3, t_8)
                                              	t_10 = fmax(t_3, t_8)
                                              	t_11 = fmin(t_2, t_10)
                                              	t_12 = sqrt(t_11)
                                              	t_13 = sqrt(t_9)
                                              	t_14 = Float64(t_6 + t_13)
                                              	t_15 = Float64(sqrt(Float64(t_11 + 1.0)) - t_12)
                                              	t_16 = Float64(Float64(Float64(sqrt(Float64(t_5 + 1.0)) - t_6) + Float64(sqrt(Float64(t_9 + 1.0)) - t_13)) + t_15)
                                              	t_17 = fmax(t_2, t_10)
                                              	t_18 = Float64(t_17 + 1.0)
                                              	t_19 = sqrt(t_17)
                                              	tmp = 0.0
                                              	if (t_16 <= 1.0)
                                              		tmp = Float64(Float64(Float64(1.0 / Float64(t_6 + t_7)) + t_15) + Float64(0.5 / t_19));
                                              	elseif (t_16 <= 2.999995)
                                              		tmp = Float64(Float64(t_7 + Float64(sqrt(Float64(1.0 + t_9)) + Float64(1.0 / Float64(t_12 + sqrt(Float64(1.0 + t_11)))))) - t_14);
                                              	else
                                              		tmp = Float64(Float64(Float64(2.0 - t_14) + Float64(1.0 - t_12)) + Float64(Float64(t_18 - t_17) / Float64(t_19 + sqrt(t_18))));
                                              	end
                                              	return tmp
                                              end
                                              
                                              function tmp_2 = code(x, y, z, t)
                                              	t_1 = max(min(x, y), z);
                                              	t_2 = max(max(x, y), t_1);
                                              	t_3 = min(max(x, y), t_1);
                                              	t_4 = min(min(x, y), z);
                                              	t_5 = min(t_4, t);
                                              	t_6 = sqrt(t_5);
                                              	t_7 = sqrt((1.0 + t_5));
                                              	t_8 = max(t_4, t);
                                              	t_9 = min(t_3, t_8);
                                              	t_10 = max(t_3, t_8);
                                              	t_11 = min(t_2, t_10);
                                              	t_12 = sqrt(t_11);
                                              	t_13 = sqrt(t_9);
                                              	t_14 = t_6 + t_13;
                                              	t_15 = sqrt((t_11 + 1.0)) - t_12;
                                              	t_16 = ((sqrt((t_5 + 1.0)) - t_6) + (sqrt((t_9 + 1.0)) - t_13)) + t_15;
                                              	t_17 = max(t_2, t_10);
                                              	t_18 = t_17 + 1.0;
                                              	t_19 = sqrt(t_17);
                                              	tmp = 0.0;
                                              	if (t_16 <= 1.0)
                                              		tmp = ((1.0 / (t_6 + t_7)) + t_15) + (0.5 / t_19);
                                              	elseif (t_16 <= 2.999995)
                                              		tmp = (t_7 + (sqrt((1.0 + t_9)) + (1.0 / (t_12 + sqrt((1.0 + t_11)))))) - t_14;
                                              	else
                                              		tmp = ((2.0 - t_14) + (1.0 - t_12)) + ((t_18 - t_17) / (t_19 + sqrt(t_18)));
                                              	end
                                              	tmp_2 = tmp;
                                              end
                                              
                                              code[x_, y_, z_, t_] := Block[{t$95$1 = N[Max[N[Min[x, y], $MachinePrecision], z], $MachinePrecision]}, Block[{t$95$2 = N[Max[N[Max[x, y], $MachinePrecision], t$95$1], $MachinePrecision]}, Block[{t$95$3 = N[Min[N[Max[x, y], $MachinePrecision], t$95$1], $MachinePrecision]}, Block[{t$95$4 = N[Min[N[Min[x, y], $MachinePrecision], z], $MachinePrecision]}, Block[{t$95$5 = N[Min[t$95$4, t], $MachinePrecision]}, Block[{t$95$6 = N[Sqrt[t$95$5], $MachinePrecision]}, Block[{t$95$7 = N[Sqrt[N[(1.0 + t$95$5), $MachinePrecision]], $MachinePrecision]}, Block[{t$95$8 = N[Max[t$95$4, t], $MachinePrecision]}, Block[{t$95$9 = N[Min[t$95$3, t$95$8], $MachinePrecision]}, Block[{t$95$10 = N[Max[t$95$3, t$95$8], $MachinePrecision]}, Block[{t$95$11 = N[Min[t$95$2, t$95$10], $MachinePrecision]}, Block[{t$95$12 = N[Sqrt[t$95$11], $MachinePrecision]}, Block[{t$95$13 = N[Sqrt[t$95$9], $MachinePrecision]}, Block[{t$95$14 = N[(t$95$6 + t$95$13), $MachinePrecision]}, Block[{t$95$15 = N[(N[Sqrt[N[(t$95$11 + 1.0), $MachinePrecision]], $MachinePrecision] - t$95$12), $MachinePrecision]}, Block[{t$95$16 = N[(N[(N[(N[Sqrt[N[(t$95$5 + 1.0), $MachinePrecision]], $MachinePrecision] - t$95$6), $MachinePrecision] + N[(N[Sqrt[N[(t$95$9 + 1.0), $MachinePrecision]], $MachinePrecision] - t$95$13), $MachinePrecision]), $MachinePrecision] + t$95$15), $MachinePrecision]}, Block[{t$95$17 = N[Max[t$95$2, t$95$10], $MachinePrecision]}, Block[{t$95$18 = N[(t$95$17 + 1.0), $MachinePrecision]}, Block[{t$95$19 = N[Sqrt[t$95$17], $MachinePrecision]}, If[LessEqual[t$95$16, 1.0], N[(N[(N[(1.0 / N[(t$95$6 + t$95$7), $MachinePrecision]), $MachinePrecision] + t$95$15), $MachinePrecision] + N[(0.5 / t$95$19), $MachinePrecision]), $MachinePrecision], If[LessEqual[t$95$16, 2.999995], N[(N[(t$95$7 + N[(N[Sqrt[N[(1.0 + t$95$9), $MachinePrecision]], $MachinePrecision] + N[(1.0 / N[(t$95$12 + N[Sqrt[N[(1.0 + t$95$11), $MachinePrecision]], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] - t$95$14), $MachinePrecision], N[(N[(N[(2.0 - t$95$14), $MachinePrecision] + N[(1.0 - t$95$12), $MachinePrecision]), $MachinePrecision] + N[(N[(t$95$18 - t$95$17), $MachinePrecision] / N[(t$95$19 + N[Sqrt[t$95$18], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]]]]]]]]]]]]]]]]]]]]]]
                                              
                                              f(x, y, z, t):
                                              	x in [-inf, +inf],
                                              	y in [-inf, +inf],
                                              	z in [-inf, +inf],
                                              	t in [-inf, +inf]
                                              code: THEORY
                                              BEGIN
                                              f(x, y, z, t: real): real =
                                              	LET tmp_2 = IF (x < y) THEN x ELSE y ENDIF IN
                                              	LET tmp_3 = IF (x < y) THEN x ELSE y ENDIF IN
                                              	LET tmp_1 = IF (tmp_2 > z) THEN tmp_3 ELSE z ENDIF IN
                                              	LET t_1 = tmp_1 IN
                                              		LET tmp_6 = IF (x > y) THEN x ELSE y ENDIF IN
                                              		LET tmp_7 = IF (x > y) THEN x ELSE y ENDIF IN
                                              		LET tmp_5 = IF (tmp_6 > t_1) THEN tmp_7 ELSE t_1 ENDIF IN
                                              		LET t_2 = tmp_5 IN
                                              			LET tmp_10 = IF (x > y) THEN x ELSE y ENDIF IN
                                              			LET tmp_11 = IF (x > y) THEN x ELSE y ENDIF IN
                                              			LET tmp_9 = IF (tmp_10 < t_1) THEN tmp_11 ELSE t_1 ENDIF IN
                                              			LET t_3 = tmp_9 IN
                                              				LET tmp_14 = IF (x < y) THEN x ELSE y ENDIF IN
                                              				LET tmp_15 = IF (x < y) THEN x ELSE y ENDIF IN
                                              				LET tmp_13 = IF (tmp_14 < z) THEN tmp_15 ELSE z ENDIF IN
                                              				LET t_4 = tmp_13 IN
                                              					LET tmp_16 = IF (t_4 < t) THEN t_4 ELSE t ENDIF IN
                                              					LET t_5 = tmp_16 IN
                                              						LET t_6 = (sqrt(t_5)) IN
                                              							LET t_7 = (sqrt(((1) + t_5))) IN
                                              								LET tmp_17 = IF (t_4 > t) THEN t_4 ELSE t ENDIF IN
                                              								LET t_8 = tmp_17 IN
                                              									LET tmp_18 = IF (t_3 < t_8) THEN t_3 ELSE t_8 ENDIF IN
                                              									LET t_9 = tmp_18 IN
                                              										LET tmp_19 = IF (t_3 > t_8) THEN t_3 ELSE t_8 ENDIF IN
                                              										LET t_10 = tmp_19 IN
                                              											LET tmp_20 = IF (t_2 < t_10) THEN t_2 ELSE t_10 ENDIF IN
                                              											LET t_11 = tmp_20 IN
                                              												LET t_12 = (sqrt(t_11)) IN
                                              													LET t_13 = (sqrt(t_9)) IN
                                              														LET t_14 = (t_6 + t_13) IN
                                              															LET t_15 = ((sqrt((t_11 + (1)))) - t_12) IN
                                              																LET t_16 = ((((sqrt((t_5 + (1)))) - t_6) + ((sqrt((t_9 + (1)))) - t_13)) + t_15) IN
                                              																	LET tmp_21 = IF (t_2 > t_10) THEN t_2 ELSE t_10 ENDIF IN
                                              																	LET t_17 = tmp_21 IN
                                              																		LET t_18 = (t_17 + (1)) IN
                                              																			LET t_19 = (sqrt(t_17)) IN
                                              																				LET tmp_23 = IF (t_16 <= (29999950000000001892885848064906895160675048828125e-49)) THEN ((t_7 + ((sqrt(((1) + t_9))) + ((1) / (t_12 + (sqrt(((1) + t_11))))))) - t_14) ELSE ((((2) - t_14) + ((1) - t_12)) + ((t_18 - t_17) / (t_19 + (sqrt(t_18))))) ENDIF IN
                                              																				LET tmp_22 = IF (t_16 <= (1)) THEN ((((1) / (t_6 + t_7)) + t_15) + ((5e-1) / t_19)) ELSE tmp_23 ENDIF IN
                                              	tmp_22
                                              END code
                                              \begin{array}{l}
                                              t_1 := \mathsf{max}\left(\mathsf{min}\left(x, y\right), z\right)\\
                                              t_2 := \mathsf{max}\left(\mathsf{max}\left(x, y\right), t\_1\right)\\
                                              t_3 := \mathsf{min}\left(\mathsf{max}\left(x, y\right), t\_1\right)\\
                                              t_4 := \mathsf{min}\left(\mathsf{min}\left(x, y\right), z\right)\\
                                              t_5 := \mathsf{min}\left(t\_4, t\right)\\
                                              t_6 := \sqrt{t\_5}\\
                                              t_7 := \sqrt{1 + t\_5}\\
                                              t_8 := \mathsf{max}\left(t\_4, t\right)\\
                                              t_9 := \mathsf{min}\left(t\_3, t\_8\right)\\
                                              t_10 := \mathsf{max}\left(t\_3, t\_8\right)\\
                                              t_11 := \mathsf{min}\left(t\_2, t\_10\right)\\
                                              t_12 := \sqrt{t\_11}\\
                                              t_13 := \sqrt{t\_9}\\
                                              t_14 := t\_6 + t\_13\\
                                              t_15 := \sqrt{t\_11 + 1} - t\_12\\
                                              t_16 := \left(\left(\sqrt{t\_5 + 1} - t\_6\right) + \left(\sqrt{t\_9 + 1} - t\_13\right)\right) + t\_15\\
                                              t_17 := \mathsf{max}\left(t\_2, t\_10\right)\\
                                              t_18 := t\_17 + 1\\
                                              t_19 := \sqrt{t\_17}\\
                                              \mathbf{if}\;t\_16 \leq 1:\\
                                              \;\;\;\;\left(\frac{1}{t\_6 + t\_7} + t\_15\right) + \frac{0.5}{t\_19}\\
                                              
                                              \mathbf{elif}\;t\_16 \leq 2.999995:\\
                                              \;\;\;\;\left(t\_7 + \left(\sqrt{1 + t\_9} + \frac{1}{t\_12 + \sqrt{1 + t\_11}}\right)\right) - t\_14\\
                                              
                                              \mathbf{else}:\\
                                              \;\;\;\;\left(\left(2 - t\_14\right) + \left(1 - t\_12\right)\right) + \frac{t\_18 - t\_17}{t\_19 + \sqrt{t\_18}}\\
                                              
                                              
                                              \end{array}
                                              
                                              Derivation
                                              1. Split input into 3 regimes
                                              2. if (+.f64 (+.f64 (-.f64 (sqrt.f64 (+.f64 x #s(literal 1 binary64))) (sqrt.f64 x)) (-.f64 (sqrt.f64 (+.f64 y #s(literal 1 binary64))) (sqrt.f64 y))) (-.f64 (sqrt.f64 (+.f64 z #s(literal 1 binary64))) (sqrt.f64 z))) < 1

                                                1. Initial program 92.0%

                                                  \[\left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                2. Step-by-step derivation
                                                  1. Applied rewrites94.0%

                                                    \[\leadsto \left(\left(\frac{1}{\sqrt{x} + \sqrt{1 + x}} + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                  2. Taylor expanded in y around inf

                                                    \[\leadsto \left(\frac{1}{\sqrt{x} + \sqrt{1 + x}} + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                  3. Step-by-step derivation
                                                    1. Applied rewrites52.4%

                                                      \[\leadsto \left(\frac{1}{\sqrt{x} + \sqrt{1 + x}} + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                    2. Taylor expanded in t around inf

                                                      \[\leadsto \left(\frac{1}{\sqrt{x} + \sqrt{1 + x}} + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \frac{\frac{1}{2}}{t \cdot \sqrt{\frac{1}{t}}} \]
                                                    3. Step-by-step derivation
                                                      1. Applied rewrites28.6%

                                                        \[\leadsto \left(\frac{1}{\sqrt{x} + \sqrt{1 + x}} + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \frac{0.5}{t \cdot \sqrt{\frac{1}{t}}} \]
                                                      2. Taylor expanded in t around 0

                                                        \[\leadsto \left(\frac{1}{\sqrt{x} + \sqrt{1 + x}} + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \frac{\frac{1}{2}}{\sqrt{t}} \]
                                                      3. Step-by-step derivation
                                                        1. Applied rewrites28.6%

                                                          \[\leadsto \left(\frac{1}{\sqrt{x} + \sqrt{1 + x}} + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \frac{0.5}{\sqrt{t}} \]

                                                        if 1 < (+.f64 (+.f64 (-.f64 (sqrt.f64 (+.f64 x #s(literal 1 binary64))) (sqrt.f64 x)) (-.f64 (sqrt.f64 (+.f64 y #s(literal 1 binary64))) (sqrt.f64 y))) (-.f64 (sqrt.f64 (+.f64 z #s(literal 1 binary64))) (sqrt.f64 z))) < 2.9999950000000002

                                                        1. Initial program 92.0%

                                                          \[\left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                        2. Step-by-step derivation
                                                          1. Applied rewrites93.8%

                                                            \[\leadsto \left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \frac{1}{\sqrt{z} + \sqrt{z + 1}}\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                          2. Taylor expanded in t around inf

                                                            \[\leadsto \left(\sqrt{1 + x} + \left(\sqrt{1 + y} + \frac{1}{\sqrt{z} + \sqrt{1 + z}}\right)\right) - \left(\sqrt{x} + \sqrt{y}\right) \]
                                                          3. Step-by-step derivation
                                                            1. Applied rewrites19.3%

                                                              \[\leadsto \left(\sqrt{1 + x} + \left(\sqrt{1 + y} + \frac{1}{\sqrt{z} + \sqrt{1 + z}}\right)\right) - \left(\sqrt{x} + \sqrt{y}\right) \]

                                                            if 2.9999950000000002 < (+.f64 (+.f64 (-.f64 (sqrt.f64 (+.f64 x #s(literal 1 binary64))) (sqrt.f64 x)) (-.f64 (sqrt.f64 (+.f64 y #s(literal 1 binary64))) (sqrt.f64 y))) (-.f64 (sqrt.f64 (+.f64 z #s(literal 1 binary64))) (sqrt.f64 z)))

                                                            1. Initial program 92.0%

                                                              \[\left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                            2. Taylor expanded in y around 0

                                                              \[\leadsto \left(\left(\left(1 + \sqrt{1 + x}\right) - \left(\sqrt{x} + \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                            3. Step-by-step derivation
                                                              1. Applied rewrites36.9%

                                                                \[\leadsto \left(\left(\left(1 + \sqrt{1 + x}\right) - \left(\sqrt{x} + \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                              2. Taylor expanded in x around 0

                                                                \[\leadsto \left(\left(2 - \left(\sqrt{x} + \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                              3. Step-by-step derivation
                                                                1. Applied rewrites24.5%

                                                                  \[\leadsto \left(\left(2 - \left(\sqrt{x} + \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                2. Taylor expanded in z around 0

                                                                  \[\leadsto \left(\left(2 - \left(\sqrt{x} + \sqrt{y}\right)\right) + \left(1 - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                3. Step-by-step derivation
                                                                  1. Applied rewrites13.0%

                                                                    \[\leadsto \left(\left(2 - \left(\sqrt{x} + \sqrt{y}\right)\right) + \left(1 - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                  2. Step-by-step derivation
                                                                    1. Applied rewrites13.0%

                                                                      \[\leadsto \left(\left(2 - \left(\sqrt{x} + \sqrt{y}\right)\right) + \left(1 - \sqrt{z}\right)\right) + \frac{\left(t + 1\right) - t}{\sqrt{t} + \sqrt{t + 1}} \]
                                                                  3. Recombined 3 regimes into one program.
                                                                  4. Add Preprocessing

                                                                  Alternative 6: 97.3% accurate, 0.2× speedup?

                                                                  \[\begin{array}{l} t_1 := \mathsf{min}\left(\mathsf{min}\left(x, y\right), z\right)\\ t_2 := \mathsf{min}\left(t\_1, t\right)\\ t_3 := \sqrt{t\_2}\\ t_4 := \sqrt{1 + t\_2}\\ t_5 := \mathsf{max}\left(\mathsf{min}\left(x, y\right), z\right)\\ t_6 := \mathsf{max}\left(\mathsf{max}\left(x, y\right), t\_5\right)\\ t_7 := \sqrt{t\_6 + 1} - \sqrt{t\_6}\\ t_8 := \mathsf{min}\left(\mathsf{max}\left(x, y\right), t\_5\right)\\ t_9 := \sqrt{t\_8}\\ t_10 := \left(\sqrt{t\_2 + 1} - t\_3\right) + \left(\sqrt{t\_8 + 1} - t\_9\right)\\ t_11 := \mathsf{max}\left(t\_1, t\right)\\ t_12 := \sqrt{t\_11}\\ t_13 := \sqrt{t\_11 + 1} - t\_12\\ \mathbf{if}\;t\_10 \leq 0.2:\\ \;\;\;\;\left(\frac{1}{t\_3 + t\_4} + t\_7\right) + \frac{0.5}{t\_12}\\ \mathbf{elif}\;t\_10 \leq 1.999998:\\ \;\;\;\;\left(\left(t\_4 + \frac{1}{t\_9 + \sqrt{1 + t\_8}}\right) - t\_3\right) + t\_13\\ \mathbf{else}:\\ \;\;\;\;\left(\left(2 - \left(t\_3 + t\_9\right)\right) + t\_7\right) + t\_13\\ \end{array} \]
                                                                  (FPCore (x y z t)
                                                                    :precision binary64
                                                                    :pre TRUE
                                                                    (let* ((t_1 (fmin (fmin x y) z))
                                                                         (t_2 (fmin t_1 t))
                                                                         (t_3 (sqrt t_2))
                                                                         (t_4 (sqrt (+ 1.0 t_2)))
                                                                         (t_5 (fmax (fmin x y) z))
                                                                         (t_6 (fmax (fmax x y) t_5))
                                                                         (t_7 (- (sqrt (+ t_6 1.0)) (sqrt t_6)))
                                                                         (t_8 (fmin (fmax x y) t_5))
                                                                         (t_9 (sqrt t_8))
                                                                         (t_10
                                                                          (+ (- (sqrt (+ t_2 1.0)) t_3) (- (sqrt (+ t_8 1.0)) t_9)))
                                                                         (t_11 (fmax t_1 t))
                                                                         (t_12 (sqrt t_11))
                                                                         (t_13 (- (sqrt (+ t_11 1.0)) t_12)))
                                                                    (if (<= t_10 0.2)
                                                                      (+ (+ (/ 1.0 (+ t_3 t_4)) t_7) (/ 0.5 t_12))
                                                                      (if (<= t_10 1.999998)
                                                                        (+ (- (+ t_4 (/ 1.0 (+ t_9 (sqrt (+ 1.0 t_8))))) t_3) t_13)
                                                                        (+ (+ (- 2.0 (+ t_3 t_9)) t_7) t_13)))))
                                                                  double code(double x, double y, double z, double t) {
                                                                  	double t_1 = fmin(fmin(x, y), z);
                                                                  	double t_2 = fmin(t_1, t);
                                                                  	double t_3 = sqrt(t_2);
                                                                  	double t_4 = sqrt((1.0 + t_2));
                                                                  	double t_5 = fmax(fmin(x, y), z);
                                                                  	double t_6 = fmax(fmax(x, y), t_5);
                                                                  	double t_7 = sqrt((t_6 + 1.0)) - sqrt(t_6);
                                                                  	double t_8 = fmin(fmax(x, y), t_5);
                                                                  	double t_9 = sqrt(t_8);
                                                                  	double t_10 = (sqrt((t_2 + 1.0)) - t_3) + (sqrt((t_8 + 1.0)) - t_9);
                                                                  	double t_11 = fmax(t_1, t);
                                                                  	double t_12 = sqrt(t_11);
                                                                  	double t_13 = sqrt((t_11 + 1.0)) - t_12;
                                                                  	double tmp;
                                                                  	if (t_10 <= 0.2) {
                                                                  		tmp = ((1.0 / (t_3 + t_4)) + t_7) + (0.5 / t_12);
                                                                  	} else if (t_10 <= 1.999998) {
                                                                  		tmp = ((t_4 + (1.0 / (t_9 + sqrt((1.0 + t_8))))) - t_3) + t_13;
                                                                  	} else {
                                                                  		tmp = ((2.0 - (t_3 + t_9)) + t_7) + t_13;
                                                                  	}
                                                                  	return tmp;
                                                                  }
                                                                  
                                                                  real(8) function code(x, y, z, t)
                                                                  use fmin_fmax_functions
                                                                      real(8), intent (in) :: x
                                                                      real(8), intent (in) :: y
                                                                      real(8), intent (in) :: z
                                                                      real(8), intent (in) :: t
                                                                      real(8) :: t_1
                                                                      real(8) :: t_10
                                                                      real(8) :: t_11
                                                                      real(8) :: t_12
                                                                      real(8) :: t_13
                                                                      real(8) :: t_2
                                                                      real(8) :: t_3
                                                                      real(8) :: t_4
                                                                      real(8) :: t_5
                                                                      real(8) :: t_6
                                                                      real(8) :: t_7
                                                                      real(8) :: t_8
                                                                      real(8) :: t_9
                                                                      real(8) :: tmp
                                                                      t_1 = fmin(fmin(x, y), z)
                                                                      t_2 = fmin(t_1, t)
                                                                      t_3 = sqrt(t_2)
                                                                      t_4 = sqrt((1.0d0 + t_2))
                                                                      t_5 = fmax(fmin(x, y), z)
                                                                      t_6 = fmax(fmax(x, y), t_5)
                                                                      t_7 = sqrt((t_6 + 1.0d0)) - sqrt(t_6)
                                                                      t_8 = fmin(fmax(x, y), t_5)
                                                                      t_9 = sqrt(t_8)
                                                                      t_10 = (sqrt((t_2 + 1.0d0)) - t_3) + (sqrt((t_8 + 1.0d0)) - t_9)
                                                                      t_11 = fmax(t_1, t)
                                                                      t_12 = sqrt(t_11)
                                                                      t_13 = sqrt((t_11 + 1.0d0)) - t_12
                                                                      if (t_10 <= 0.2d0) then
                                                                          tmp = ((1.0d0 / (t_3 + t_4)) + t_7) + (0.5d0 / t_12)
                                                                      else if (t_10 <= 1.999998d0) then
                                                                          tmp = ((t_4 + (1.0d0 / (t_9 + sqrt((1.0d0 + t_8))))) - t_3) + t_13
                                                                      else
                                                                          tmp = ((2.0d0 - (t_3 + t_9)) + t_7) + t_13
                                                                      end if
                                                                      code = tmp
                                                                  end function
                                                                  
                                                                  public static double code(double x, double y, double z, double t) {
                                                                  	double t_1 = fmin(fmin(x, y), z);
                                                                  	double t_2 = fmin(t_1, t);
                                                                  	double t_3 = Math.sqrt(t_2);
                                                                  	double t_4 = Math.sqrt((1.0 + t_2));
                                                                  	double t_5 = fmax(fmin(x, y), z);
                                                                  	double t_6 = fmax(fmax(x, y), t_5);
                                                                  	double t_7 = Math.sqrt((t_6 + 1.0)) - Math.sqrt(t_6);
                                                                  	double t_8 = fmin(fmax(x, y), t_5);
                                                                  	double t_9 = Math.sqrt(t_8);
                                                                  	double t_10 = (Math.sqrt((t_2 + 1.0)) - t_3) + (Math.sqrt((t_8 + 1.0)) - t_9);
                                                                  	double t_11 = fmax(t_1, t);
                                                                  	double t_12 = Math.sqrt(t_11);
                                                                  	double t_13 = Math.sqrt((t_11 + 1.0)) - t_12;
                                                                  	double tmp;
                                                                  	if (t_10 <= 0.2) {
                                                                  		tmp = ((1.0 / (t_3 + t_4)) + t_7) + (0.5 / t_12);
                                                                  	} else if (t_10 <= 1.999998) {
                                                                  		tmp = ((t_4 + (1.0 / (t_9 + Math.sqrt((1.0 + t_8))))) - t_3) + t_13;
                                                                  	} else {
                                                                  		tmp = ((2.0 - (t_3 + t_9)) + t_7) + t_13;
                                                                  	}
                                                                  	return tmp;
                                                                  }
                                                                  
                                                                  def code(x, y, z, t):
                                                                  	t_1 = fmin(fmin(x, y), z)
                                                                  	t_2 = fmin(t_1, t)
                                                                  	t_3 = math.sqrt(t_2)
                                                                  	t_4 = math.sqrt((1.0 + t_2))
                                                                  	t_5 = fmax(fmin(x, y), z)
                                                                  	t_6 = fmax(fmax(x, y), t_5)
                                                                  	t_7 = math.sqrt((t_6 + 1.0)) - math.sqrt(t_6)
                                                                  	t_8 = fmin(fmax(x, y), t_5)
                                                                  	t_9 = math.sqrt(t_8)
                                                                  	t_10 = (math.sqrt((t_2 + 1.0)) - t_3) + (math.sqrt((t_8 + 1.0)) - t_9)
                                                                  	t_11 = fmax(t_1, t)
                                                                  	t_12 = math.sqrt(t_11)
                                                                  	t_13 = math.sqrt((t_11 + 1.0)) - t_12
                                                                  	tmp = 0
                                                                  	if t_10 <= 0.2:
                                                                  		tmp = ((1.0 / (t_3 + t_4)) + t_7) + (0.5 / t_12)
                                                                  	elif t_10 <= 1.999998:
                                                                  		tmp = ((t_4 + (1.0 / (t_9 + math.sqrt((1.0 + t_8))))) - t_3) + t_13
                                                                  	else:
                                                                  		tmp = ((2.0 - (t_3 + t_9)) + t_7) + t_13
                                                                  	return tmp
                                                                  
                                                                  function code(x, y, z, t)
                                                                  	t_1 = fmin(fmin(x, y), z)
                                                                  	t_2 = fmin(t_1, t)
                                                                  	t_3 = sqrt(t_2)
                                                                  	t_4 = sqrt(Float64(1.0 + t_2))
                                                                  	t_5 = fmax(fmin(x, y), z)
                                                                  	t_6 = fmax(fmax(x, y), t_5)
                                                                  	t_7 = Float64(sqrt(Float64(t_6 + 1.0)) - sqrt(t_6))
                                                                  	t_8 = fmin(fmax(x, y), t_5)
                                                                  	t_9 = sqrt(t_8)
                                                                  	t_10 = Float64(Float64(sqrt(Float64(t_2 + 1.0)) - t_3) + Float64(sqrt(Float64(t_8 + 1.0)) - t_9))
                                                                  	t_11 = fmax(t_1, t)
                                                                  	t_12 = sqrt(t_11)
                                                                  	t_13 = Float64(sqrt(Float64(t_11 + 1.0)) - t_12)
                                                                  	tmp = 0.0
                                                                  	if (t_10 <= 0.2)
                                                                  		tmp = Float64(Float64(Float64(1.0 / Float64(t_3 + t_4)) + t_7) + Float64(0.5 / t_12));
                                                                  	elseif (t_10 <= 1.999998)
                                                                  		tmp = Float64(Float64(Float64(t_4 + Float64(1.0 / Float64(t_9 + sqrt(Float64(1.0 + t_8))))) - t_3) + t_13);
                                                                  	else
                                                                  		tmp = Float64(Float64(Float64(2.0 - Float64(t_3 + t_9)) + t_7) + t_13);
                                                                  	end
                                                                  	return tmp
                                                                  end
                                                                  
                                                                  function tmp_2 = code(x, y, z, t)
                                                                  	t_1 = min(min(x, y), z);
                                                                  	t_2 = min(t_1, t);
                                                                  	t_3 = sqrt(t_2);
                                                                  	t_4 = sqrt((1.0 + t_2));
                                                                  	t_5 = max(min(x, y), z);
                                                                  	t_6 = max(max(x, y), t_5);
                                                                  	t_7 = sqrt((t_6 + 1.0)) - sqrt(t_6);
                                                                  	t_8 = min(max(x, y), t_5);
                                                                  	t_9 = sqrt(t_8);
                                                                  	t_10 = (sqrt((t_2 + 1.0)) - t_3) + (sqrt((t_8 + 1.0)) - t_9);
                                                                  	t_11 = max(t_1, t);
                                                                  	t_12 = sqrt(t_11);
                                                                  	t_13 = sqrt((t_11 + 1.0)) - t_12;
                                                                  	tmp = 0.0;
                                                                  	if (t_10 <= 0.2)
                                                                  		tmp = ((1.0 / (t_3 + t_4)) + t_7) + (0.5 / t_12);
                                                                  	elseif (t_10 <= 1.999998)
                                                                  		tmp = ((t_4 + (1.0 / (t_9 + sqrt((1.0 + t_8))))) - t_3) + t_13;
                                                                  	else
                                                                  		tmp = ((2.0 - (t_3 + t_9)) + t_7) + t_13;
                                                                  	end
                                                                  	tmp_2 = tmp;
                                                                  end
                                                                  
                                                                  code[x_, y_, z_, t_] := Block[{t$95$1 = N[Min[N[Min[x, y], $MachinePrecision], z], $MachinePrecision]}, Block[{t$95$2 = N[Min[t$95$1, t], $MachinePrecision]}, Block[{t$95$3 = N[Sqrt[t$95$2], $MachinePrecision]}, Block[{t$95$4 = N[Sqrt[N[(1.0 + t$95$2), $MachinePrecision]], $MachinePrecision]}, Block[{t$95$5 = N[Max[N[Min[x, y], $MachinePrecision], z], $MachinePrecision]}, Block[{t$95$6 = N[Max[N[Max[x, y], $MachinePrecision], t$95$5], $MachinePrecision]}, Block[{t$95$7 = N[(N[Sqrt[N[(t$95$6 + 1.0), $MachinePrecision]], $MachinePrecision] - N[Sqrt[t$95$6], $MachinePrecision]), $MachinePrecision]}, Block[{t$95$8 = N[Min[N[Max[x, y], $MachinePrecision], t$95$5], $MachinePrecision]}, Block[{t$95$9 = N[Sqrt[t$95$8], $MachinePrecision]}, Block[{t$95$10 = N[(N[(N[Sqrt[N[(t$95$2 + 1.0), $MachinePrecision]], $MachinePrecision] - t$95$3), $MachinePrecision] + N[(N[Sqrt[N[(t$95$8 + 1.0), $MachinePrecision]], $MachinePrecision] - t$95$9), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$11 = N[Max[t$95$1, t], $MachinePrecision]}, Block[{t$95$12 = N[Sqrt[t$95$11], $MachinePrecision]}, Block[{t$95$13 = N[(N[Sqrt[N[(t$95$11 + 1.0), $MachinePrecision]], $MachinePrecision] - t$95$12), $MachinePrecision]}, If[LessEqual[t$95$10, 0.2], N[(N[(N[(1.0 / N[(t$95$3 + t$95$4), $MachinePrecision]), $MachinePrecision] + t$95$7), $MachinePrecision] + N[(0.5 / t$95$12), $MachinePrecision]), $MachinePrecision], If[LessEqual[t$95$10, 1.999998], N[(N[(N[(t$95$4 + N[(1.0 / N[(t$95$9 + N[Sqrt[N[(1.0 + t$95$8), $MachinePrecision]], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] - t$95$3), $MachinePrecision] + t$95$13), $MachinePrecision], N[(N[(N[(2.0 - N[(t$95$3 + t$95$9), $MachinePrecision]), $MachinePrecision] + t$95$7), $MachinePrecision] + t$95$13), $MachinePrecision]]]]]]]]]]]]]]]]
                                                                  
                                                                  f(x, y, z, t):
                                                                  	x in [-inf, +inf],
                                                                  	y in [-inf, +inf],
                                                                  	z in [-inf, +inf],
                                                                  	t in [-inf, +inf]
                                                                  code: THEORY
                                                                  BEGIN
                                                                  f(x, y, z, t: real): real =
                                                                  	LET tmp_2 = IF (x < y) THEN x ELSE y ENDIF IN
                                                                  	LET tmp_3 = IF (x < y) THEN x ELSE y ENDIF IN
                                                                  	LET tmp_1 = IF (tmp_2 < z) THEN tmp_3 ELSE z ENDIF IN
                                                                  	LET t_1 = tmp_1 IN
                                                                  		LET tmp_4 = IF (t_1 < t) THEN t_1 ELSE t ENDIF IN
                                                                  		LET t_2 = tmp_4 IN
                                                                  			LET t_3 = (sqrt(t_2)) IN
                                                                  				LET t_4 = (sqrt(((1) + t_2))) IN
                                                                  					LET tmp_7 = IF (x < y) THEN x ELSE y ENDIF IN
                                                                  					LET tmp_8 = IF (x < y) THEN x ELSE y ENDIF IN
                                                                  					LET tmp_6 = IF (tmp_7 > z) THEN tmp_8 ELSE z ENDIF IN
                                                                  					LET t_5 = tmp_6 IN
                                                                  						LET tmp_11 = IF (x > y) THEN x ELSE y ENDIF IN
                                                                  						LET tmp_12 = IF (x > y) THEN x ELSE y ENDIF IN
                                                                  						LET tmp_10 = IF (tmp_11 > t_5) THEN tmp_12 ELSE t_5 ENDIF IN
                                                                  						LET t_6 = tmp_10 IN
                                                                  							LET t_7 = ((sqrt((t_6 + (1)))) - (sqrt(t_6))) IN
                                                                  								LET tmp_15 = IF (x > y) THEN x ELSE y ENDIF IN
                                                                  								LET tmp_16 = IF (x > y) THEN x ELSE y ENDIF IN
                                                                  								LET tmp_14 = IF (tmp_15 < t_5) THEN tmp_16 ELSE t_5 ENDIF IN
                                                                  								LET t_8 = tmp_14 IN
                                                                  									LET t_9 = (sqrt(t_8)) IN
                                                                  										LET t_10 = (((sqrt((t_2 + (1)))) - t_3) + ((sqrt((t_8 + (1)))) - t_9)) IN
                                                                  											LET tmp_17 = IF (t_1 > t) THEN t_1 ELSE t ENDIF IN
                                                                  											LET t_11 = tmp_17 IN
                                                                  												LET t_12 = (sqrt(t_11)) IN
                                                                  													LET t_13 = ((sqrt((t_11 + (1)))) - t_12) IN
                                                                  														LET tmp_19 = IF (t_10 <= (19999979999999999424886709675774909555912017822265625e-52)) THEN (((t_4 + ((1) / (t_9 + (sqrt(((1) + t_8)))))) - t_3) + t_13) ELSE ((((2) - (t_3 + t_9)) + t_7) + t_13) ENDIF IN
                                                                  														LET tmp_18 = IF (t_10 <= (200000000000000011102230246251565404236316680908203125e-54)) THEN ((((1) / (t_3 + t_4)) + t_7) + ((5e-1) / t_12)) ELSE tmp_19 ENDIF IN
                                                                  	tmp_18
                                                                  END code
                                                                  \begin{array}{l}
                                                                  t_1 := \mathsf{min}\left(\mathsf{min}\left(x, y\right), z\right)\\
                                                                  t_2 := \mathsf{min}\left(t\_1, t\right)\\
                                                                  t_3 := \sqrt{t\_2}\\
                                                                  t_4 := \sqrt{1 + t\_2}\\
                                                                  t_5 := \mathsf{max}\left(\mathsf{min}\left(x, y\right), z\right)\\
                                                                  t_6 := \mathsf{max}\left(\mathsf{max}\left(x, y\right), t\_5\right)\\
                                                                  t_7 := \sqrt{t\_6 + 1} - \sqrt{t\_6}\\
                                                                  t_8 := \mathsf{min}\left(\mathsf{max}\left(x, y\right), t\_5\right)\\
                                                                  t_9 := \sqrt{t\_8}\\
                                                                  t_10 := \left(\sqrt{t\_2 + 1} - t\_3\right) + \left(\sqrt{t\_8 + 1} - t\_9\right)\\
                                                                  t_11 := \mathsf{max}\left(t\_1, t\right)\\
                                                                  t_12 := \sqrt{t\_11}\\
                                                                  t_13 := \sqrt{t\_11 + 1} - t\_12\\
                                                                  \mathbf{if}\;t\_10 \leq 0.2:\\
                                                                  \;\;\;\;\left(\frac{1}{t\_3 + t\_4} + t\_7\right) + \frac{0.5}{t\_12}\\
                                                                  
                                                                  \mathbf{elif}\;t\_10 \leq 1.999998:\\
                                                                  \;\;\;\;\left(\left(t\_4 + \frac{1}{t\_9 + \sqrt{1 + t\_8}}\right) - t\_3\right) + t\_13\\
                                                                  
                                                                  \mathbf{else}:\\
                                                                  \;\;\;\;\left(\left(2 - \left(t\_3 + t\_9\right)\right) + t\_7\right) + t\_13\\
                                                                  
                                                                  
                                                                  \end{array}
                                                                  
                                                                  Derivation
                                                                  1. Split input into 3 regimes
                                                                  2. if (+.f64 (-.f64 (sqrt.f64 (+.f64 x #s(literal 1 binary64))) (sqrt.f64 x)) (-.f64 (sqrt.f64 (+.f64 y #s(literal 1 binary64))) (sqrt.f64 y))) < 0.20000000000000001

                                                                    1. Initial program 92.0%

                                                                      \[\left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                    2. Step-by-step derivation
                                                                      1. Applied rewrites94.0%

                                                                        \[\leadsto \left(\left(\frac{1}{\sqrt{x} + \sqrt{1 + x}} + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                      2. Taylor expanded in y around inf

                                                                        \[\leadsto \left(\frac{1}{\sqrt{x} + \sqrt{1 + x}} + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                      3. Step-by-step derivation
                                                                        1. Applied rewrites52.4%

                                                                          \[\leadsto \left(\frac{1}{\sqrt{x} + \sqrt{1 + x}} + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                        2. Taylor expanded in t around inf

                                                                          \[\leadsto \left(\frac{1}{\sqrt{x} + \sqrt{1 + x}} + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \frac{\frac{1}{2}}{t \cdot \sqrt{\frac{1}{t}}} \]
                                                                        3. Step-by-step derivation
                                                                          1. Applied rewrites28.6%

                                                                            \[\leadsto \left(\frac{1}{\sqrt{x} + \sqrt{1 + x}} + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \frac{0.5}{t \cdot \sqrt{\frac{1}{t}}} \]
                                                                          2. Taylor expanded in t around 0

                                                                            \[\leadsto \left(\frac{1}{\sqrt{x} + \sqrt{1 + x}} + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \frac{\frac{1}{2}}{\sqrt{t}} \]
                                                                          3. Step-by-step derivation
                                                                            1. Applied rewrites28.6%

                                                                              \[\leadsto \left(\frac{1}{\sqrt{x} + \sqrt{1 + x}} + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \frac{0.5}{\sqrt{t}} \]

                                                                            if 0.20000000000000001 < (+.f64 (-.f64 (sqrt.f64 (+.f64 x #s(literal 1 binary64))) (sqrt.f64 x)) (-.f64 (sqrt.f64 (+.f64 y #s(literal 1 binary64))) (sqrt.f64 y))) < 1.9999979999999999

                                                                            1. Initial program 92.0%

                                                                              \[\left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                            2. Step-by-step derivation
                                                                              1. Applied rewrites93.9%

                                                                                \[\leadsto \left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \frac{1}{\sqrt{y} + \sqrt{y + 1}}\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                              2. Taylor expanded in z around inf

                                                                                \[\leadsto \left(\left(\sqrt{1 + x} + \frac{1}{\sqrt{y} + \sqrt{1 + y}}\right) - \sqrt{x}\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                              3. Step-by-step derivation
                                                                                1. Applied rewrites40.0%

                                                                                  \[\leadsto \left(\left(\sqrt{1 + x} + \frac{1}{\sqrt{y} + \sqrt{1 + y}}\right) - \sqrt{x}\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]

                                                                                if 1.9999979999999999 < (+.f64 (-.f64 (sqrt.f64 (+.f64 x #s(literal 1 binary64))) (sqrt.f64 x)) (-.f64 (sqrt.f64 (+.f64 y #s(literal 1 binary64))) (sqrt.f64 y)))

                                                                                1. Initial program 92.0%

                                                                                  \[\left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                2. Taylor expanded in y around 0

                                                                                  \[\leadsto \left(\left(\left(1 + \sqrt{1 + x}\right) - \left(\sqrt{x} + \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                3. Step-by-step derivation
                                                                                  1. Applied rewrites36.9%

                                                                                    \[\leadsto \left(\left(\left(1 + \sqrt{1 + x}\right) - \left(\sqrt{x} + \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                  2. Taylor expanded in x around 0

                                                                                    \[\leadsto \left(\left(2 - \left(\sqrt{x} + \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                  3. Step-by-step derivation
                                                                                    1. Applied rewrites24.5%

                                                                                      \[\leadsto \left(\left(2 - \left(\sqrt{x} + \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                  4. Recombined 3 regimes into one program.
                                                                                  5. Add Preprocessing

                                                                                  Alternative 7: 97.3% accurate, 0.2× speedup?

                                                                                  \[\begin{array}{l} t_1 := \mathsf{min}\left(\mathsf{min}\left(x, y\right), z\right)\\ t_2 := \mathsf{min}\left(t\_1, t\right)\\ t_3 := \sqrt{t\_2}\\ t_4 := \mathsf{max}\left(\mathsf{min}\left(x, y\right), z\right)\\ t_5 := \mathsf{max}\left(\mathsf{max}\left(x, y\right), t\_4\right)\\ t_6 := \sqrt{t\_5 + 1} - \sqrt{t\_5}\\ t_7 := \mathsf{min}\left(\mathsf{max}\left(x, y\right), t\_4\right)\\ t_8 := \sqrt{t\_7}\\ t_9 := \left(\sqrt{t\_2 + 1} - t\_3\right) + \left(\sqrt{t\_7 + 1} - t\_8\right)\\ t_10 := \mathsf{max}\left(t\_1, t\right)\\ t_11 := \sqrt{t\_10}\\ t_12 := \sqrt{t\_10 + 1} - t\_11\\ \mathbf{if}\;t\_9 \leq 0.9995:\\ \;\;\;\;\left(\frac{1}{t\_3 + \sqrt{1 + t\_2}} + t\_6\right) + \frac{0.5}{t\_11}\\ \mathbf{elif}\;t\_9 \leq 1.999998:\\ \;\;\;\;\left(\left(1 + \frac{1}{t\_8 + \sqrt{1 + t\_7}}\right) - t\_3\right) + t\_12\\ \mathbf{else}:\\ \;\;\;\;\left(\left(2 - \left(t\_3 + t\_8\right)\right) + t\_6\right) + t\_12\\ \end{array} \]
                                                                                  (FPCore (x y z t)
                                                                                    :precision binary64
                                                                                    :pre TRUE
                                                                                    (let* ((t_1 (fmin (fmin x y) z))
                                                                                         (t_2 (fmin t_1 t))
                                                                                         (t_3 (sqrt t_2))
                                                                                         (t_4 (fmax (fmin x y) z))
                                                                                         (t_5 (fmax (fmax x y) t_4))
                                                                                         (t_6 (- (sqrt (+ t_5 1.0)) (sqrt t_5)))
                                                                                         (t_7 (fmin (fmax x y) t_4))
                                                                                         (t_8 (sqrt t_7))
                                                                                         (t_9 (+ (- (sqrt (+ t_2 1.0)) t_3) (- (sqrt (+ t_7 1.0)) t_8)))
                                                                                         (t_10 (fmax t_1 t))
                                                                                         (t_11 (sqrt t_10))
                                                                                         (t_12 (- (sqrt (+ t_10 1.0)) t_11)))
                                                                                    (if (<= t_9 0.9995)
                                                                                      (+ (+ (/ 1.0 (+ t_3 (sqrt (+ 1.0 t_2)))) t_6) (/ 0.5 t_11))
                                                                                      (if (<= t_9 1.999998)
                                                                                        (+ (- (+ 1.0 (/ 1.0 (+ t_8 (sqrt (+ 1.0 t_7))))) t_3) t_12)
                                                                                        (+ (+ (- 2.0 (+ t_3 t_8)) t_6) t_12)))))
                                                                                  double code(double x, double y, double z, double t) {
                                                                                  	double t_1 = fmin(fmin(x, y), z);
                                                                                  	double t_2 = fmin(t_1, t);
                                                                                  	double t_3 = sqrt(t_2);
                                                                                  	double t_4 = fmax(fmin(x, y), z);
                                                                                  	double t_5 = fmax(fmax(x, y), t_4);
                                                                                  	double t_6 = sqrt((t_5 + 1.0)) - sqrt(t_5);
                                                                                  	double t_7 = fmin(fmax(x, y), t_4);
                                                                                  	double t_8 = sqrt(t_7);
                                                                                  	double t_9 = (sqrt((t_2 + 1.0)) - t_3) + (sqrt((t_7 + 1.0)) - t_8);
                                                                                  	double t_10 = fmax(t_1, t);
                                                                                  	double t_11 = sqrt(t_10);
                                                                                  	double t_12 = sqrt((t_10 + 1.0)) - t_11;
                                                                                  	double tmp;
                                                                                  	if (t_9 <= 0.9995) {
                                                                                  		tmp = ((1.0 / (t_3 + sqrt((1.0 + t_2)))) + t_6) + (0.5 / t_11);
                                                                                  	} else if (t_9 <= 1.999998) {
                                                                                  		tmp = ((1.0 + (1.0 / (t_8 + sqrt((1.0 + t_7))))) - t_3) + t_12;
                                                                                  	} else {
                                                                                  		tmp = ((2.0 - (t_3 + t_8)) + t_6) + t_12;
                                                                                  	}
                                                                                  	return tmp;
                                                                                  }
                                                                                  
                                                                                  real(8) function code(x, y, z, t)
                                                                                  use fmin_fmax_functions
                                                                                      real(8), intent (in) :: x
                                                                                      real(8), intent (in) :: y
                                                                                      real(8), intent (in) :: z
                                                                                      real(8), intent (in) :: t
                                                                                      real(8) :: t_1
                                                                                      real(8) :: t_10
                                                                                      real(8) :: t_11
                                                                                      real(8) :: t_12
                                                                                      real(8) :: t_2
                                                                                      real(8) :: t_3
                                                                                      real(8) :: t_4
                                                                                      real(8) :: t_5
                                                                                      real(8) :: t_6
                                                                                      real(8) :: t_7
                                                                                      real(8) :: t_8
                                                                                      real(8) :: t_9
                                                                                      real(8) :: tmp
                                                                                      t_1 = fmin(fmin(x, y), z)
                                                                                      t_2 = fmin(t_1, t)
                                                                                      t_3 = sqrt(t_2)
                                                                                      t_4 = fmax(fmin(x, y), z)
                                                                                      t_5 = fmax(fmax(x, y), t_4)
                                                                                      t_6 = sqrt((t_5 + 1.0d0)) - sqrt(t_5)
                                                                                      t_7 = fmin(fmax(x, y), t_4)
                                                                                      t_8 = sqrt(t_7)
                                                                                      t_9 = (sqrt((t_2 + 1.0d0)) - t_3) + (sqrt((t_7 + 1.0d0)) - t_8)
                                                                                      t_10 = fmax(t_1, t)
                                                                                      t_11 = sqrt(t_10)
                                                                                      t_12 = sqrt((t_10 + 1.0d0)) - t_11
                                                                                      if (t_9 <= 0.9995d0) then
                                                                                          tmp = ((1.0d0 / (t_3 + sqrt((1.0d0 + t_2)))) + t_6) + (0.5d0 / t_11)
                                                                                      else if (t_9 <= 1.999998d0) then
                                                                                          tmp = ((1.0d0 + (1.0d0 / (t_8 + sqrt((1.0d0 + t_7))))) - t_3) + t_12
                                                                                      else
                                                                                          tmp = ((2.0d0 - (t_3 + t_8)) + t_6) + t_12
                                                                                      end if
                                                                                      code = tmp
                                                                                  end function
                                                                                  
                                                                                  public static double code(double x, double y, double z, double t) {
                                                                                  	double t_1 = fmin(fmin(x, y), z);
                                                                                  	double t_2 = fmin(t_1, t);
                                                                                  	double t_3 = Math.sqrt(t_2);
                                                                                  	double t_4 = fmax(fmin(x, y), z);
                                                                                  	double t_5 = fmax(fmax(x, y), t_4);
                                                                                  	double t_6 = Math.sqrt((t_5 + 1.0)) - Math.sqrt(t_5);
                                                                                  	double t_7 = fmin(fmax(x, y), t_4);
                                                                                  	double t_8 = Math.sqrt(t_7);
                                                                                  	double t_9 = (Math.sqrt((t_2 + 1.0)) - t_3) + (Math.sqrt((t_7 + 1.0)) - t_8);
                                                                                  	double t_10 = fmax(t_1, t);
                                                                                  	double t_11 = Math.sqrt(t_10);
                                                                                  	double t_12 = Math.sqrt((t_10 + 1.0)) - t_11;
                                                                                  	double tmp;
                                                                                  	if (t_9 <= 0.9995) {
                                                                                  		tmp = ((1.0 / (t_3 + Math.sqrt((1.0 + t_2)))) + t_6) + (0.5 / t_11);
                                                                                  	} else if (t_9 <= 1.999998) {
                                                                                  		tmp = ((1.0 + (1.0 / (t_8 + Math.sqrt((1.0 + t_7))))) - t_3) + t_12;
                                                                                  	} else {
                                                                                  		tmp = ((2.0 - (t_3 + t_8)) + t_6) + t_12;
                                                                                  	}
                                                                                  	return tmp;
                                                                                  }
                                                                                  
                                                                                  def code(x, y, z, t):
                                                                                  	t_1 = fmin(fmin(x, y), z)
                                                                                  	t_2 = fmin(t_1, t)
                                                                                  	t_3 = math.sqrt(t_2)
                                                                                  	t_4 = fmax(fmin(x, y), z)
                                                                                  	t_5 = fmax(fmax(x, y), t_4)
                                                                                  	t_6 = math.sqrt((t_5 + 1.0)) - math.sqrt(t_5)
                                                                                  	t_7 = fmin(fmax(x, y), t_4)
                                                                                  	t_8 = math.sqrt(t_7)
                                                                                  	t_9 = (math.sqrt((t_2 + 1.0)) - t_3) + (math.sqrt((t_7 + 1.0)) - t_8)
                                                                                  	t_10 = fmax(t_1, t)
                                                                                  	t_11 = math.sqrt(t_10)
                                                                                  	t_12 = math.sqrt((t_10 + 1.0)) - t_11
                                                                                  	tmp = 0
                                                                                  	if t_9 <= 0.9995:
                                                                                  		tmp = ((1.0 / (t_3 + math.sqrt((1.0 + t_2)))) + t_6) + (0.5 / t_11)
                                                                                  	elif t_9 <= 1.999998:
                                                                                  		tmp = ((1.0 + (1.0 / (t_8 + math.sqrt((1.0 + t_7))))) - t_3) + t_12
                                                                                  	else:
                                                                                  		tmp = ((2.0 - (t_3 + t_8)) + t_6) + t_12
                                                                                  	return tmp
                                                                                  
                                                                                  function code(x, y, z, t)
                                                                                  	t_1 = fmin(fmin(x, y), z)
                                                                                  	t_2 = fmin(t_1, t)
                                                                                  	t_3 = sqrt(t_2)
                                                                                  	t_4 = fmax(fmin(x, y), z)
                                                                                  	t_5 = fmax(fmax(x, y), t_4)
                                                                                  	t_6 = Float64(sqrt(Float64(t_5 + 1.0)) - sqrt(t_5))
                                                                                  	t_7 = fmin(fmax(x, y), t_4)
                                                                                  	t_8 = sqrt(t_7)
                                                                                  	t_9 = Float64(Float64(sqrt(Float64(t_2 + 1.0)) - t_3) + Float64(sqrt(Float64(t_7 + 1.0)) - t_8))
                                                                                  	t_10 = fmax(t_1, t)
                                                                                  	t_11 = sqrt(t_10)
                                                                                  	t_12 = Float64(sqrt(Float64(t_10 + 1.0)) - t_11)
                                                                                  	tmp = 0.0
                                                                                  	if (t_9 <= 0.9995)
                                                                                  		tmp = Float64(Float64(Float64(1.0 / Float64(t_3 + sqrt(Float64(1.0 + t_2)))) + t_6) + Float64(0.5 / t_11));
                                                                                  	elseif (t_9 <= 1.999998)
                                                                                  		tmp = Float64(Float64(Float64(1.0 + Float64(1.0 / Float64(t_8 + sqrt(Float64(1.0 + t_7))))) - t_3) + t_12);
                                                                                  	else
                                                                                  		tmp = Float64(Float64(Float64(2.0 - Float64(t_3 + t_8)) + t_6) + t_12);
                                                                                  	end
                                                                                  	return tmp
                                                                                  end
                                                                                  
                                                                                  function tmp_2 = code(x, y, z, t)
                                                                                  	t_1 = min(min(x, y), z);
                                                                                  	t_2 = min(t_1, t);
                                                                                  	t_3 = sqrt(t_2);
                                                                                  	t_4 = max(min(x, y), z);
                                                                                  	t_5 = max(max(x, y), t_4);
                                                                                  	t_6 = sqrt((t_5 + 1.0)) - sqrt(t_5);
                                                                                  	t_7 = min(max(x, y), t_4);
                                                                                  	t_8 = sqrt(t_7);
                                                                                  	t_9 = (sqrt((t_2 + 1.0)) - t_3) + (sqrt((t_7 + 1.0)) - t_8);
                                                                                  	t_10 = max(t_1, t);
                                                                                  	t_11 = sqrt(t_10);
                                                                                  	t_12 = sqrt((t_10 + 1.0)) - t_11;
                                                                                  	tmp = 0.0;
                                                                                  	if (t_9 <= 0.9995)
                                                                                  		tmp = ((1.0 / (t_3 + sqrt((1.0 + t_2)))) + t_6) + (0.5 / t_11);
                                                                                  	elseif (t_9 <= 1.999998)
                                                                                  		tmp = ((1.0 + (1.0 / (t_8 + sqrt((1.0 + t_7))))) - t_3) + t_12;
                                                                                  	else
                                                                                  		tmp = ((2.0 - (t_3 + t_8)) + t_6) + t_12;
                                                                                  	end
                                                                                  	tmp_2 = tmp;
                                                                                  end
                                                                                  
                                                                                  code[x_, y_, z_, t_] := Block[{t$95$1 = N[Min[N[Min[x, y], $MachinePrecision], z], $MachinePrecision]}, Block[{t$95$2 = N[Min[t$95$1, t], $MachinePrecision]}, Block[{t$95$3 = N[Sqrt[t$95$2], $MachinePrecision]}, Block[{t$95$4 = N[Max[N[Min[x, y], $MachinePrecision], z], $MachinePrecision]}, Block[{t$95$5 = N[Max[N[Max[x, y], $MachinePrecision], t$95$4], $MachinePrecision]}, Block[{t$95$6 = N[(N[Sqrt[N[(t$95$5 + 1.0), $MachinePrecision]], $MachinePrecision] - N[Sqrt[t$95$5], $MachinePrecision]), $MachinePrecision]}, Block[{t$95$7 = N[Min[N[Max[x, y], $MachinePrecision], t$95$4], $MachinePrecision]}, Block[{t$95$8 = N[Sqrt[t$95$7], $MachinePrecision]}, Block[{t$95$9 = N[(N[(N[Sqrt[N[(t$95$2 + 1.0), $MachinePrecision]], $MachinePrecision] - t$95$3), $MachinePrecision] + N[(N[Sqrt[N[(t$95$7 + 1.0), $MachinePrecision]], $MachinePrecision] - t$95$8), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$10 = N[Max[t$95$1, t], $MachinePrecision]}, Block[{t$95$11 = N[Sqrt[t$95$10], $MachinePrecision]}, Block[{t$95$12 = N[(N[Sqrt[N[(t$95$10 + 1.0), $MachinePrecision]], $MachinePrecision] - t$95$11), $MachinePrecision]}, If[LessEqual[t$95$9, 0.9995], N[(N[(N[(1.0 / N[(t$95$3 + N[Sqrt[N[(1.0 + t$95$2), $MachinePrecision]], $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + t$95$6), $MachinePrecision] + N[(0.5 / t$95$11), $MachinePrecision]), $MachinePrecision], If[LessEqual[t$95$9, 1.999998], N[(N[(N[(1.0 + N[(1.0 / N[(t$95$8 + N[Sqrt[N[(1.0 + t$95$7), $MachinePrecision]], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] - t$95$3), $MachinePrecision] + t$95$12), $MachinePrecision], N[(N[(N[(2.0 - N[(t$95$3 + t$95$8), $MachinePrecision]), $MachinePrecision] + t$95$6), $MachinePrecision] + t$95$12), $MachinePrecision]]]]]]]]]]]]]]]
                                                                                  
                                                                                  f(x, y, z, t):
                                                                                  	x in [-inf, +inf],
                                                                                  	y in [-inf, +inf],
                                                                                  	z in [-inf, +inf],
                                                                                  	t in [-inf, +inf]
                                                                                  code: THEORY
                                                                                  BEGIN
                                                                                  f(x, y, z, t: real): real =
                                                                                  	LET tmp_2 = IF (x < y) THEN x ELSE y ENDIF IN
                                                                                  	LET tmp_3 = IF (x < y) THEN x ELSE y ENDIF IN
                                                                                  	LET tmp_1 = IF (tmp_2 < z) THEN tmp_3 ELSE z ENDIF IN
                                                                                  	LET t_1 = tmp_1 IN
                                                                                  		LET tmp_4 = IF (t_1 < t) THEN t_1 ELSE t ENDIF IN
                                                                                  		LET t_2 = tmp_4 IN
                                                                                  			LET t_3 = (sqrt(t_2)) IN
                                                                                  				LET tmp_7 = IF (x < y) THEN x ELSE y ENDIF IN
                                                                                  				LET tmp_8 = IF (x < y) THEN x ELSE y ENDIF IN
                                                                                  				LET tmp_6 = IF (tmp_7 > z) THEN tmp_8 ELSE z ENDIF IN
                                                                                  				LET t_4 = tmp_6 IN
                                                                                  					LET tmp_11 = IF (x > y) THEN x ELSE y ENDIF IN
                                                                                  					LET tmp_12 = IF (x > y) THEN x ELSE y ENDIF IN
                                                                                  					LET tmp_10 = IF (tmp_11 > t_4) THEN tmp_12 ELSE t_4 ENDIF IN
                                                                                  					LET t_5 = tmp_10 IN
                                                                                  						LET t_6 = ((sqrt((t_5 + (1)))) - (sqrt(t_5))) IN
                                                                                  							LET tmp_15 = IF (x > y) THEN x ELSE y ENDIF IN
                                                                                  							LET tmp_16 = IF (x > y) THEN x ELSE y ENDIF IN
                                                                                  							LET tmp_14 = IF (tmp_15 < t_4) THEN tmp_16 ELSE t_4 ENDIF IN
                                                                                  							LET t_7 = tmp_14 IN
                                                                                  								LET t_8 = (sqrt(t_7)) IN
                                                                                  									LET t_9 = (((sqrt((t_2 + (1)))) - t_3) + ((sqrt((t_7 + (1)))) - t_8)) IN
                                                                                  										LET tmp_17 = IF (t_1 > t) THEN t_1 ELSE t ENDIF IN
                                                                                  										LET t_10 = tmp_17 IN
                                                                                  											LET t_11 = (sqrt(t_10)) IN
                                                                                  												LET t_12 = ((sqrt((t_10 + (1)))) - t_11) IN
                                                                                  													LET tmp_19 = IF (t_9 <= (19999979999999999424886709675774909555912017822265625e-52)) THEN ((((1) + ((1) / (t_8 + (sqrt(((1) + t_7)))))) - t_3) + t_12) ELSE ((((2) - (t_3 + t_8)) + t_6) + t_12) ENDIF IN
                                                                                  													LET tmp_18 = IF (t_9 <= (9995000000000000550670620214077644050121307373046875e-52)) THEN ((((1) / (t_3 + (sqrt(((1) + t_2))))) + t_6) + ((5e-1) / t_11)) ELSE tmp_19 ENDIF IN
                                                                                  	tmp_18
                                                                                  END code
                                                                                  \begin{array}{l}
                                                                                  t_1 := \mathsf{min}\left(\mathsf{min}\left(x, y\right), z\right)\\
                                                                                  t_2 := \mathsf{min}\left(t\_1, t\right)\\
                                                                                  t_3 := \sqrt{t\_2}\\
                                                                                  t_4 := \mathsf{max}\left(\mathsf{min}\left(x, y\right), z\right)\\
                                                                                  t_5 := \mathsf{max}\left(\mathsf{max}\left(x, y\right), t\_4\right)\\
                                                                                  t_6 := \sqrt{t\_5 + 1} - \sqrt{t\_5}\\
                                                                                  t_7 := \mathsf{min}\left(\mathsf{max}\left(x, y\right), t\_4\right)\\
                                                                                  t_8 := \sqrt{t\_7}\\
                                                                                  t_9 := \left(\sqrt{t\_2 + 1} - t\_3\right) + \left(\sqrt{t\_7 + 1} - t\_8\right)\\
                                                                                  t_10 := \mathsf{max}\left(t\_1, t\right)\\
                                                                                  t_11 := \sqrt{t\_10}\\
                                                                                  t_12 := \sqrt{t\_10 + 1} - t\_11\\
                                                                                  \mathbf{if}\;t\_9 \leq 0.9995:\\
                                                                                  \;\;\;\;\left(\frac{1}{t\_3 + \sqrt{1 + t\_2}} + t\_6\right) + \frac{0.5}{t\_11}\\
                                                                                  
                                                                                  \mathbf{elif}\;t\_9 \leq 1.999998:\\
                                                                                  \;\;\;\;\left(\left(1 + \frac{1}{t\_8 + \sqrt{1 + t\_7}}\right) - t\_3\right) + t\_12\\
                                                                                  
                                                                                  \mathbf{else}:\\
                                                                                  \;\;\;\;\left(\left(2 - \left(t\_3 + t\_8\right)\right) + t\_6\right) + t\_12\\
                                                                                  
                                                                                  
                                                                                  \end{array}
                                                                                  
                                                                                  Derivation
                                                                                  1. Split input into 3 regimes
                                                                                  2. if (+.f64 (-.f64 (sqrt.f64 (+.f64 x #s(literal 1 binary64))) (sqrt.f64 x)) (-.f64 (sqrt.f64 (+.f64 y #s(literal 1 binary64))) (sqrt.f64 y))) < 0.99950000000000006

                                                                                    1. Initial program 92.0%

                                                                                      \[\left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                    2. Step-by-step derivation
                                                                                      1. Applied rewrites94.0%

                                                                                        \[\leadsto \left(\left(\frac{1}{\sqrt{x} + \sqrt{1 + x}} + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                      2. Taylor expanded in y around inf

                                                                                        \[\leadsto \left(\frac{1}{\sqrt{x} + \sqrt{1 + x}} + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                      3. Step-by-step derivation
                                                                                        1. Applied rewrites52.4%

                                                                                          \[\leadsto \left(\frac{1}{\sqrt{x} + \sqrt{1 + x}} + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                        2. Taylor expanded in t around inf

                                                                                          \[\leadsto \left(\frac{1}{\sqrt{x} + \sqrt{1 + x}} + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \frac{\frac{1}{2}}{t \cdot \sqrt{\frac{1}{t}}} \]
                                                                                        3. Step-by-step derivation
                                                                                          1. Applied rewrites28.6%

                                                                                            \[\leadsto \left(\frac{1}{\sqrt{x} + \sqrt{1 + x}} + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \frac{0.5}{t \cdot \sqrt{\frac{1}{t}}} \]
                                                                                          2. Taylor expanded in t around 0

                                                                                            \[\leadsto \left(\frac{1}{\sqrt{x} + \sqrt{1 + x}} + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \frac{\frac{1}{2}}{\sqrt{t}} \]
                                                                                          3. Step-by-step derivation
                                                                                            1. Applied rewrites28.6%

                                                                                              \[\leadsto \left(\frac{1}{\sqrt{x} + \sqrt{1 + x}} + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \frac{0.5}{\sqrt{t}} \]

                                                                                            if 0.99950000000000006 < (+.f64 (-.f64 (sqrt.f64 (+.f64 x #s(literal 1 binary64))) (sqrt.f64 x)) (-.f64 (sqrt.f64 (+.f64 y #s(literal 1 binary64))) (sqrt.f64 y))) < 1.9999979999999999

                                                                                            1. Initial program 92.0%

                                                                                              \[\left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                            2. Step-by-step derivation
                                                                                              1. Applied rewrites93.9%

                                                                                                \[\leadsto \left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \frac{1}{\sqrt{y} + \sqrt{y + 1}}\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                              2. Taylor expanded in z around inf

                                                                                                \[\leadsto \left(\left(\sqrt{1 + x} + \frac{1}{\sqrt{y} + \sqrt{1 + y}}\right) - \sqrt{x}\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                              3. Step-by-step derivation
                                                                                                1. Applied rewrites40.0%

                                                                                                  \[\leadsto \left(\left(\sqrt{1 + x} + \frac{1}{\sqrt{y} + \sqrt{1 + y}}\right) - \sqrt{x}\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                2. Taylor expanded in x around 0

                                                                                                  \[\leadsto \left(\left(1 + \frac{1}{\sqrt{y} + \sqrt{1 + y}}\right) - \sqrt{x}\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                3. Step-by-step derivation
                                                                                                  1. Applied rewrites28.9%

                                                                                                    \[\leadsto \left(\left(1 + \frac{1}{\sqrt{y} + \sqrt{1 + y}}\right) - \sqrt{x}\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]

                                                                                                  if 1.9999979999999999 < (+.f64 (-.f64 (sqrt.f64 (+.f64 x #s(literal 1 binary64))) (sqrt.f64 x)) (-.f64 (sqrt.f64 (+.f64 y #s(literal 1 binary64))) (sqrt.f64 y)))

                                                                                                  1. Initial program 92.0%

                                                                                                    \[\left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                  2. Taylor expanded in y around 0

                                                                                                    \[\leadsto \left(\left(\left(1 + \sqrt{1 + x}\right) - \left(\sqrt{x} + \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                  3. Step-by-step derivation
                                                                                                    1. Applied rewrites36.9%

                                                                                                      \[\leadsto \left(\left(\left(1 + \sqrt{1 + x}\right) - \left(\sqrt{x} + \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                    2. Taylor expanded in x around 0

                                                                                                      \[\leadsto \left(\left(2 - \left(\sqrt{x} + \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                    3. Step-by-step derivation
                                                                                                      1. Applied rewrites24.5%

                                                                                                        \[\leadsto \left(\left(2 - \left(\sqrt{x} + \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                    4. Recombined 3 regimes into one program.
                                                                                                    5. Add Preprocessing

                                                                                                    Alternative 8: 97.2% accurate, 0.2× speedup?

                                                                                                    \[\begin{array}{l} t_1 := \mathsf{min}\left(\mathsf{min}\left(x, y\right), z\right)\\ t_2 := \mathsf{max}\left(t\_1, t\right)\\ t_3 := \mathsf{min}\left(t\_1, t\right)\\ t_4 := \sqrt{t\_3}\\ t_5 := \mathsf{max}\left(\mathsf{min}\left(x, y\right), z\right)\\ t_6 := \mathsf{max}\left(\mathsf{max}\left(x, y\right), t\_5\right)\\ t_7 := \mathsf{min}\left(\mathsf{max}\left(x, y\right), t\_5\right)\\ t_8 := \mathsf{max}\left(t\_7, t\_2\right)\\ t_9 := \mathsf{min}\left(t\_6, t\_8\right)\\ t_10 := \sqrt{t\_9}\\ t_11 := \sqrt{t\_9 + 1}\\ t_12 := \mathsf{min}\left(t\_7, t\_2\right)\\ t_13 := \mathsf{max}\left(t\_6, t\_8\right)\\ t_14 := \sqrt{t\_13 + 1}\\ t_15 := \sqrt{t\_13}\\ \mathbf{if}\;t\_12 \leq 2.0660407187798852 \cdot 10^{+30}:\\ \;\;\;\;\left(\left(\left(\sqrt{t\_3 + 1} - t\_4\right) + \left(\sqrt{t\_12 + 1} - \sqrt{t\_12}\right)\right) + \frac{1}{t\_10 + t\_11}\right) + \left(t\_14 - t\_15\right)\\ \mathbf{else}:\\ \;\;\;\;\frac{1}{\sqrt{1 + t\_3} + t\_4} + \left(\left(t\_11 - t\_10\right) - \left(t\_15 - t\_14\right)\right)\\ \end{array} \]
                                                                                                    (FPCore (x y z t)
                                                                                                      :precision binary64
                                                                                                      :pre TRUE
                                                                                                      (let* ((t_1 (fmin (fmin x y) z))
                                                                                                           (t_2 (fmax t_1 t))
                                                                                                           (t_3 (fmin t_1 t))
                                                                                                           (t_4 (sqrt t_3))
                                                                                                           (t_5 (fmax (fmin x y) z))
                                                                                                           (t_6 (fmax (fmax x y) t_5))
                                                                                                           (t_7 (fmin (fmax x y) t_5))
                                                                                                           (t_8 (fmax t_7 t_2))
                                                                                                           (t_9 (fmin t_6 t_8))
                                                                                                           (t_10 (sqrt t_9))
                                                                                                           (t_11 (sqrt (+ t_9 1.0)))
                                                                                                           (t_12 (fmin t_7 t_2))
                                                                                                           (t_13 (fmax t_6 t_8))
                                                                                                           (t_14 (sqrt (+ t_13 1.0)))
                                                                                                           (t_15 (sqrt t_13)))
                                                                                                      (if (<= t_12 2.0660407187798852e+30)
                                                                                                        (+
                                                                                                         (+
                                                                                                          (+
                                                                                                           (- (sqrt (+ t_3 1.0)) t_4)
                                                                                                           (- (sqrt (+ t_12 1.0)) (sqrt t_12)))
                                                                                                          (/ 1.0 (+ t_10 t_11)))
                                                                                                         (- t_14 t_15))
                                                                                                        (+
                                                                                                         (/ 1.0 (+ (sqrt (+ 1.0 t_3)) t_4))
                                                                                                         (- (- t_11 t_10) (- t_15 t_14))))))
                                                                                                    double code(double x, double y, double z, double t) {
                                                                                                    	double t_1 = fmin(fmin(x, y), z);
                                                                                                    	double t_2 = fmax(t_1, t);
                                                                                                    	double t_3 = fmin(t_1, t);
                                                                                                    	double t_4 = sqrt(t_3);
                                                                                                    	double t_5 = fmax(fmin(x, y), z);
                                                                                                    	double t_6 = fmax(fmax(x, y), t_5);
                                                                                                    	double t_7 = fmin(fmax(x, y), t_5);
                                                                                                    	double t_8 = fmax(t_7, t_2);
                                                                                                    	double t_9 = fmin(t_6, t_8);
                                                                                                    	double t_10 = sqrt(t_9);
                                                                                                    	double t_11 = sqrt((t_9 + 1.0));
                                                                                                    	double t_12 = fmin(t_7, t_2);
                                                                                                    	double t_13 = fmax(t_6, t_8);
                                                                                                    	double t_14 = sqrt((t_13 + 1.0));
                                                                                                    	double t_15 = sqrt(t_13);
                                                                                                    	double tmp;
                                                                                                    	if (t_12 <= 2.0660407187798852e+30) {
                                                                                                    		tmp = (((sqrt((t_3 + 1.0)) - t_4) + (sqrt((t_12 + 1.0)) - sqrt(t_12))) + (1.0 / (t_10 + t_11))) + (t_14 - t_15);
                                                                                                    	} else {
                                                                                                    		tmp = (1.0 / (sqrt((1.0 + t_3)) + t_4)) + ((t_11 - t_10) - (t_15 - t_14));
                                                                                                    	}
                                                                                                    	return tmp;
                                                                                                    }
                                                                                                    
                                                                                                    real(8) function code(x, y, z, t)
                                                                                                    use fmin_fmax_functions
                                                                                                        real(8), intent (in) :: x
                                                                                                        real(8), intent (in) :: y
                                                                                                        real(8), intent (in) :: z
                                                                                                        real(8), intent (in) :: t
                                                                                                        real(8) :: t_1
                                                                                                        real(8) :: t_10
                                                                                                        real(8) :: t_11
                                                                                                        real(8) :: t_12
                                                                                                        real(8) :: t_13
                                                                                                        real(8) :: t_14
                                                                                                        real(8) :: t_15
                                                                                                        real(8) :: t_2
                                                                                                        real(8) :: t_3
                                                                                                        real(8) :: t_4
                                                                                                        real(8) :: t_5
                                                                                                        real(8) :: t_6
                                                                                                        real(8) :: t_7
                                                                                                        real(8) :: t_8
                                                                                                        real(8) :: t_9
                                                                                                        real(8) :: tmp
                                                                                                        t_1 = fmin(fmin(x, y), z)
                                                                                                        t_2 = fmax(t_1, t)
                                                                                                        t_3 = fmin(t_1, t)
                                                                                                        t_4 = sqrt(t_3)
                                                                                                        t_5 = fmax(fmin(x, y), z)
                                                                                                        t_6 = fmax(fmax(x, y), t_5)
                                                                                                        t_7 = fmin(fmax(x, y), t_5)
                                                                                                        t_8 = fmax(t_7, t_2)
                                                                                                        t_9 = fmin(t_6, t_8)
                                                                                                        t_10 = sqrt(t_9)
                                                                                                        t_11 = sqrt((t_9 + 1.0d0))
                                                                                                        t_12 = fmin(t_7, t_2)
                                                                                                        t_13 = fmax(t_6, t_8)
                                                                                                        t_14 = sqrt((t_13 + 1.0d0))
                                                                                                        t_15 = sqrt(t_13)
                                                                                                        if (t_12 <= 2.0660407187798852d+30) then
                                                                                                            tmp = (((sqrt((t_3 + 1.0d0)) - t_4) + (sqrt((t_12 + 1.0d0)) - sqrt(t_12))) + (1.0d0 / (t_10 + t_11))) + (t_14 - t_15)
                                                                                                        else
                                                                                                            tmp = (1.0d0 / (sqrt((1.0d0 + t_3)) + t_4)) + ((t_11 - t_10) - (t_15 - t_14))
                                                                                                        end if
                                                                                                        code = tmp
                                                                                                    end function
                                                                                                    
                                                                                                    public static double code(double x, double y, double z, double t) {
                                                                                                    	double t_1 = fmin(fmin(x, y), z);
                                                                                                    	double t_2 = fmax(t_1, t);
                                                                                                    	double t_3 = fmin(t_1, t);
                                                                                                    	double t_4 = Math.sqrt(t_3);
                                                                                                    	double t_5 = fmax(fmin(x, y), z);
                                                                                                    	double t_6 = fmax(fmax(x, y), t_5);
                                                                                                    	double t_7 = fmin(fmax(x, y), t_5);
                                                                                                    	double t_8 = fmax(t_7, t_2);
                                                                                                    	double t_9 = fmin(t_6, t_8);
                                                                                                    	double t_10 = Math.sqrt(t_9);
                                                                                                    	double t_11 = Math.sqrt((t_9 + 1.0));
                                                                                                    	double t_12 = fmin(t_7, t_2);
                                                                                                    	double t_13 = fmax(t_6, t_8);
                                                                                                    	double t_14 = Math.sqrt((t_13 + 1.0));
                                                                                                    	double t_15 = Math.sqrt(t_13);
                                                                                                    	double tmp;
                                                                                                    	if (t_12 <= 2.0660407187798852e+30) {
                                                                                                    		tmp = (((Math.sqrt((t_3 + 1.0)) - t_4) + (Math.sqrt((t_12 + 1.0)) - Math.sqrt(t_12))) + (1.0 / (t_10 + t_11))) + (t_14 - t_15);
                                                                                                    	} else {
                                                                                                    		tmp = (1.0 / (Math.sqrt((1.0 + t_3)) + t_4)) + ((t_11 - t_10) - (t_15 - t_14));
                                                                                                    	}
                                                                                                    	return tmp;
                                                                                                    }
                                                                                                    
                                                                                                    def code(x, y, z, t):
                                                                                                    	t_1 = fmin(fmin(x, y), z)
                                                                                                    	t_2 = fmax(t_1, t)
                                                                                                    	t_3 = fmin(t_1, t)
                                                                                                    	t_4 = math.sqrt(t_3)
                                                                                                    	t_5 = fmax(fmin(x, y), z)
                                                                                                    	t_6 = fmax(fmax(x, y), t_5)
                                                                                                    	t_7 = fmin(fmax(x, y), t_5)
                                                                                                    	t_8 = fmax(t_7, t_2)
                                                                                                    	t_9 = fmin(t_6, t_8)
                                                                                                    	t_10 = math.sqrt(t_9)
                                                                                                    	t_11 = math.sqrt((t_9 + 1.0))
                                                                                                    	t_12 = fmin(t_7, t_2)
                                                                                                    	t_13 = fmax(t_6, t_8)
                                                                                                    	t_14 = math.sqrt((t_13 + 1.0))
                                                                                                    	t_15 = math.sqrt(t_13)
                                                                                                    	tmp = 0
                                                                                                    	if t_12 <= 2.0660407187798852e+30:
                                                                                                    		tmp = (((math.sqrt((t_3 + 1.0)) - t_4) + (math.sqrt((t_12 + 1.0)) - math.sqrt(t_12))) + (1.0 / (t_10 + t_11))) + (t_14 - t_15)
                                                                                                    	else:
                                                                                                    		tmp = (1.0 / (math.sqrt((1.0 + t_3)) + t_4)) + ((t_11 - t_10) - (t_15 - t_14))
                                                                                                    	return tmp
                                                                                                    
                                                                                                    function code(x, y, z, t)
                                                                                                    	t_1 = fmin(fmin(x, y), z)
                                                                                                    	t_2 = fmax(t_1, t)
                                                                                                    	t_3 = fmin(t_1, t)
                                                                                                    	t_4 = sqrt(t_3)
                                                                                                    	t_5 = fmax(fmin(x, y), z)
                                                                                                    	t_6 = fmax(fmax(x, y), t_5)
                                                                                                    	t_7 = fmin(fmax(x, y), t_5)
                                                                                                    	t_8 = fmax(t_7, t_2)
                                                                                                    	t_9 = fmin(t_6, t_8)
                                                                                                    	t_10 = sqrt(t_9)
                                                                                                    	t_11 = sqrt(Float64(t_9 + 1.0))
                                                                                                    	t_12 = fmin(t_7, t_2)
                                                                                                    	t_13 = fmax(t_6, t_8)
                                                                                                    	t_14 = sqrt(Float64(t_13 + 1.0))
                                                                                                    	t_15 = sqrt(t_13)
                                                                                                    	tmp = 0.0
                                                                                                    	if (t_12 <= 2.0660407187798852e+30)
                                                                                                    		tmp = Float64(Float64(Float64(Float64(sqrt(Float64(t_3 + 1.0)) - t_4) + Float64(sqrt(Float64(t_12 + 1.0)) - sqrt(t_12))) + Float64(1.0 / Float64(t_10 + t_11))) + Float64(t_14 - t_15));
                                                                                                    	else
                                                                                                    		tmp = Float64(Float64(1.0 / Float64(sqrt(Float64(1.0 + t_3)) + t_4)) + Float64(Float64(t_11 - t_10) - Float64(t_15 - t_14)));
                                                                                                    	end
                                                                                                    	return tmp
                                                                                                    end
                                                                                                    
                                                                                                    function tmp_2 = code(x, y, z, t)
                                                                                                    	t_1 = min(min(x, y), z);
                                                                                                    	t_2 = max(t_1, t);
                                                                                                    	t_3 = min(t_1, t);
                                                                                                    	t_4 = sqrt(t_3);
                                                                                                    	t_5 = max(min(x, y), z);
                                                                                                    	t_6 = max(max(x, y), t_5);
                                                                                                    	t_7 = min(max(x, y), t_5);
                                                                                                    	t_8 = max(t_7, t_2);
                                                                                                    	t_9 = min(t_6, t_8);
                                                                                                    	t_10 = sqrt(t_9);
                                                                                                    	t_11 = sqrt((t_9 + 1.0));
                                                                                                    	t_12 = min(t_7, t_2);
                                                                                                    	t_13 = max(t_6, t_8);
                                                                                                    	t_14 = sqrt((t_13 + 1.0));
                                                                                                    	t_15 = sqrt(t_13);
                                                                                                    	tmp = 0.0;
                                                                                                    	if (t_12 <= 2.0660407187798852e+30)
                                                                                                    		tmp = (((sqrt((t_3 + 1.0)) - t_4) + (sqrt((t_12 + 1.0)) - sqrt(t_12))) + (1.0 / (t_10 + t_11))) + (t_14 - t_15);
                                                                                                    	else
                                                                                                    		tmp = (1.0 / (sqrt((1.0 + t_3)) + t_4)) + ((t_11 - t_10) - (t_15 - t_14));
                                                                                                    	end
                                                                                                    	tmp_2 = tmp;
                                                                                                    end
                                                                                                    
                                                                                                    code[x_, y_, z_, t_] := Block[{t$95$1 = N[Min[N[Min[x, y], $MachinePrecision], z], $MachinePrecision]}, Block[{t$95$2 = N[Max[t$95$1, t], $MachinePrecision]}, Block[{t$95$3 = N[Min[t$95$1, t], $MachinePrecision]}, Block[{t$95$4 = N[Sqrt[t$95$3], $MachinePrecision]}, Block[{t$95$5 = N[Max[N[Min[x, y], $MachinePrecision], z], $MachinePrecision]}, Block[{t$95$6 = N[Max[N[Max[x, y], $MachinePrecision], t$95$5], $MachinePrecision]}, Block[{t$95$7 = N[Min[N[Max[x, y], $MachinePrecision], t$95$5], $MachinePrecision]}, Block[{t$95$8 = N[Max[t$95$7, t$95$2], $MachinePrecision]}, Block[{t$95$9 = N[Min[t$95$6, t$95$8], $MachinePrecision]}, Block[{t$95$10 = N[Sqrt[t$95$9], $MachinePrecision]}, Block[{t$95$11 = N[Sqrt[N[(t$95$9 + 1.0), $MachinePrecision]], $MachinePrecision]}, Block[{t$95$12 = N[Min[t$95$7, t$95$2], $MachinePrecision]}, Block[{t$95$13 = N[Max[t$95$6, t$95$8], $MachinePrecision]}, Block[{t$95$14 = N[Sqrt[N[(t$95$13 + 1.0), $MachinePrecision]], $MachinePrecision]}, Block[{t$95$15 = N[Sqrt[t$95$13], $MachinePrecision]}, If[LessEqual[t$95$12, 2.0660407187798852e+30], N[(N[(N[(N[(N[Sqrt[N[(t$95$3 + 1.0), $MachinePrecision]], $MachinePrecision] - t$95$4), $MachinePrecision] + N[(N[Sqrt[N[(t$95$12 + 1.0), $MachinePrecision]], $MachinePrecision] - N[Sqrt[t$95$12], $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + N[(1.0 / N[(t$95$10 + t$95$11), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + N[(t$95$14 - t$95$15), $MachinePrecision]), $MachinePrecision], N[(N[(1.0 / N[(N[Sqrt[N[(1.0 + t$95$3), $MachinePrecision]], $MachinePrecision] + t$95$4), $MachinePrecision]), $MachinePrecision] + N[(N[(t$95$11 - t$95$10), $MachinePrecision] - N[(t$95$15 - t$95$14), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]]]]]]]]]]]]]]]]]
                                                                                                    
                                                                                                    f(x, y, z, t):
                                                                                                    	x in [-inf, +inf],
                                                                                                    	y in [-inf, +inf],
                                                                                                    	z in [-inf, +inf],
                                                                                                    	t in [-inf, +inf]
                                                                                                    code: THEORY
                                                                                                    BEGIN
                                                                                                    f(x, y, z, t: real): real =
                                                                                                    	LET tmp_2 = IF (x < y) THEN x ELSE y ENDIF IN
                                                                                                    	LET tmp_3 = IF (x < y) THEN x ELSE y ENDIF IN
                                                                                                    	LET tmp_1 = IF (tmp_2 < z) THEN tmp_3 ELSE z ENDIF IN
                                                                                                    	LET t_1 = tmp_1 IN
                                                                                                    		LET tmp_4 = IF (t_1 > t) THEN t_1 ELSE t ENDIF IN
                                                                                                    		LET t_2 = tmp_4 IN
                                                                                                    			LET tmp_5 = IF (t_1 < t) THEN t_1 ELSE t ENDIF IN
                                                                                                    			LET t_3 = tmp_5 IN
                                                                                                    				LET t_4 = (sqrt(t_3)) IN
                                                                                                    					LET tmp_8 = IF (x < y) THEN x ELSE y ENDIF IN
                                                                                                    					LET tmp_9 = IF (x < y) THEN x ELSE y ENDIF IN
                                                                                                    					LET tmp_7 = IF (tmp_8 > z) THEN tmp_9 ELSE z ENDIF IN
                                                                                                    					LET t_5 = tmp_7 IN
                                                                                                    						LET tmp_12 = IF (x > y) THEN x ELSE y ENDIF IN
                                                                                                    						LET tmp_13 = IF (x > y) THEN x ELSE y ENDIF IN
                                                                                                    						LET tmp_11 = IF (tmp_12 > t_5) THEN tmp_13 ELSE t_5 ENDIF IN
                                                                                                    						LET t_6 = tmp_11 IN
                                                                                                    							LET tmp_16 = IF (x > y) THEN x ELSE y ENDIF IN
                                                                                                    							LET tmp_17 = IF (x > y) THEN x ELSE y ENDIF IN
                                                                                                    							LET tmp_15 = IF (tmp_16 < t_5) THEN tmp_17 ELSE t_5 ENDIF IN
                                                                                                    							LET t_7 = tmp_15 IN
                                                                                                    								LET tmp_18 = IF (t_7 > t_2) THEN t_7 ELSE t_2 ENDIF IN
                                                                                                    								LET t_8 = tmp_18 IN
                                                                                                    									LET tmp_19 = IF (t_6 < t_8) THEN t_6 ELSE t_8 ENDIF IN
                                                                                                    									LET t_9 = tmp_19 IN
                                                                                                    										LET t_10 = (sqrt(t_9)) IN
                                                                                                    											LET t_11 = (sqrt((t_9 + (1)))) IN
                                                                                                    												LET tmp_20 = IF (t_7 < t_2) THEN t_7 ELSE t_2 ENDIF IN
                                                                                                    												LET t_12 = tmp_20 IN
                                                                                                    													LET tmp_21 = IF (t_6 > t_8) THEN t_6 ELSE t_8 ENDIF IN
                                                                                                    													LET t_13 = tmp_21 IN
                                                                                                    														LET t_14 = (sqrt((t_13 + (1)))) IN
                                                                                                    															LET t_15 = (sqrt(t_13)) IN
                                                                                                    																LET tmp_22 = IF (t_12 <= (2066040718779885161499959754752)) THEN (((((sqrt((t_3 + (1)))) - t_4) + ((sqrt((t_12 + (1)))) - (sqrt(t_12)))) + ((1) / (t_10 + t_11))) + (t_14 - t_15)) ELSE (((1) / ((sqrt(((1) + t_3))) + t_4)) + ((t_11 - t_10) - (t_15 - t_14))) ENDIF IN
                                                                                                    	tmp_22
                                                                                                    END code
                                                                                                    \begin{array}{l}
                                                                                                    t_1 := \mathsf{min}\left(\mathsf{min}\left(x, y\right), z\right)\\
                                                                                                    t_2 := \mathsf{max}\left(t\_1, t\right)\\
                                                                                                    t_3 := \mathsf{min}\left(t\_1, t\right)\\
                                                                                                    t_4 := \sqrt{t\_3}\\
                                                                                                    t_5 := \mathsf{max}\left(\mathsf{min}\left(x, y\right), z\right)\\
                                                                                                    t_6 := \mathsf{max}\left(\mathsf{max}\left(x, y\right), t\_5\right)\\
                                                                                                    t_7 := \mathsf{min}\left(\mathsf{max}\left(x, y\right), t\_5\right)\\
                                                                                                    t_8 := \mathsf{max}\left(t\_7, t\_2\right)\\
                                                                                                    t_9 := \mathsf{min}\left(t\_6, t\_8\right)\\
                                                                                                    t_10 := \sqrt{t\_9}\\
                                                                                                    t_11 := \sqrt{t\_9 + 1}\\
                                                                                                    t_12 := \mathsf{min}\left(t\_7, t\_2\right)\\
                                                                                                    t_13 := \mathsf{max}\left(t\_6, t\_8\right)\\
                                                                                                    t_14 := \sqrt{t\_13 + 1}\\
                                                                                                    t_15 := \sqrt{t\_13}\\
                                                                                                    \mathbf{if}\;t\_12 \leq 2.0660407187798852 \cdot 10^{+30}:\\
                                                                                                    \;\;\;\;\left(\left(\left(\sqrt{t\_3 + 1} - t\_4\right) + \left(\sqrt{t\_12 + 1} - \sqrt{t\_12}\right)\right) + \frac{1}{t\_10 + t\_11}\right) + \left(t\_14 - t\_15\right)\\
                                                                                                    
                                                                                                    \mathbf{else}:\\
                                                                                                    \;\;\;\;\frac{1}{\sqrt{1 + t\_3} + t\_4} + \left(\left(t\_11 - t\_10\right) - \left(t\_15 - t\_14\right)\right)\\
                                                                                                    
                                                                                                    
                                                                                                    \end{array}
                                                                                                    
                                                                                                    Derivation
                                                                                                    1. Split input into 2 regimes
                                                                                                    2. if y < 2.0660407187798852e30

                                                                                                      1. Initial program 92.0%

                                                                                                        \[\left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                      2. Step-by-step derivation
                                                                                                        1. Applied rewrites93.8%

                                                                                                          \[\leadsto \left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \frac{1}{\sqrt{z} + \sqrt{z + 1}}\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]

                                                                                                        if 2.0660407187798852e30 < y

                                                                                                        1. Initial program 92.0%

                                                                                                          \[\left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                        2. Step-by-step derivation
                                                                                                          1. Applied rewrites94.0%

                                                                                                            \[\leadsto \left(\left(\frac{1}{\sqrt{x} + \sqrt{1 + x}} + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                          2. Taylor expanded in y around inf

                                                                                                            \[\leadsto \left(\frac{1}{\sqrt{x} + \sqrt{1 + x}} + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                          3. Step-by-step derivation
                                                                                                            1. Applied rewrites52.4%

                                                                                                              \[\leadsto \left(\frac{1}{\sqrt{x} + \sqrt{1 + x}} + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                            2. Applied rewrites52.4%

                                                                                                              \[\leadsto \frac{1}{\sqrt{1 + x} + \sqrt{x}} + \left(\left(\sqrt{z + 1} - \sqrt{z}\right) - \left(\sqrt{t} - \sqrt{t + 1}\right)\right) \]
                                                                                                          4. Recombined 2 regimes into one program.
                                                                                                          5. Add Preprocessing

                                                                                                          Alternative 9: 96.9% accurate, 0.1× speedup?

                                                                                                          \[\begin{array}{l} t_1 := \mathsf{max}\left(\mathsf{min}\left(x, y\right), z\right)\\ t_2 := \mathsf{max}\left(\mathsf{max}\left(x, y\right), t\_1\right)\\ t_3 := \mathsf{min}\left(\mathsf{max}\left(x, y\right), t\_1\right)\\ t_4 := \mathsf{min}\left(\mathsf{min}\left(x, y\right), z\right)\\ t_5 := \mathsf{min}\left(t\_4, t\right)\\ t_6 := \sqrt{t\_5}\\ t_7 := \mathsf{max}\left(t\_4, t\right)\\ t_8 := \mathsf{max}\left(t\_3, t\_7\right)\\ t_9 := \mathsf{min}\left(t\_2, t\_8\right)\\ t_10 := \mathsf{min}\left(t\_3, t\_7\right)\\ t_11 := \sqrt{t\_9}\\ t_12 := \frac{1}{t\_11 + \sqrt{1 + t\_9}}\\ t_13 := \sqrt{t\_10}\\ t_14 := \left(\left(\sqrt{t\_5 + 1} - t\_6\right) + \left(\sqrt{t\_10 + 1} - t\_13\right)\right) + \left(\sqrt{t\_9 + 1} - t\_11\right)\\ t_15 := t\_6 + t\_13\\ t_16 := \mathsf{max}\left(t\_2, t\_8\right)\\ t_17 := \sqrt{t\_16 + 1} - \sqrt{t\_16}\\ \mathbf{if}\;t\_14 \leq 0.2:\\ \;\;\;\;\mathsf{fma}\left(0.5, \frac{1}{t\_5 \cdot \sqrt{\frac{1}{t\_5}}}, t\_12\right)\\ \mathbf{elif}\;t\_14 \leq 1.999998:\\ \;\;\;\;\left(\left(1 + \frac{1}{t\_13 + \sqrt{1 + t\_10}}\right) - t\_6\right) + t\_17\\ \mathbf{elif}\;t\_14 \leq 2.999995:\\ \;\;\;\;\left(\sqrt{1 + t\_5} + \left(1 + t\_12\right)\right) - t\_15\\ \mathbf{else}:\\ \;\;\;\;\left(\left(2 - t\_15\right) + \left(1 - t\_11\right)\right) + t\_17\\ \end{array} \]
                                                                                                          (FPCore (x y z t)
                                                                                                            :precision binary64
                                                                                                            :pre TRUE
                                                                                                            (let* ((t_1 (fmax (fmin x y) z))
                                                                                                                 (t_2 (fmax (fmax x y) t_1))
                                                                                                                 (t_3 (fmin (fmax x y) t_1))
                                                                                                                 (t_4 (fmin (fmin x y) z))
                                                                                                                 (t_5 (fmin t_4 t))
                                                                                                                 (t_6 (sqrt t_5))
                                                                                                                 (t_7 (fmax t_4 t))
                                                                                                                 (t_8 (fmax t_3 t_7))
                                                                                                                 (t_9 (fmin t_2 t_8))
                                                                                                                 (t_10 (fmin t_3 t_7))
                                                                                                                 (t_11 (sqrt t_9))
                                                                                                                 (t_12 (/ 1.0 (+ t_11 (sqrt (+ 1.0 t_9)))))
                                                                                                                 (t_13 (sqrt t_10))
                                                                                                                 (t_14
                                                                                                                  (+
                                                                                                                   (+ (- (sqrt (+ t_5 1.0)) t_6) (- (sqrt (+ t_10 1.0)) t_13))
                                                                                                                   (- (sqrt (+ t_9 1.0)) t_11)))
                                                                                                                 (t_15 (+ t_6 t_13))
                                                                                                                 (t_16 (fmax t_2 t_8))
                                                                                                                 (t_17 (- (sqrt (+ t_16 1.0)) (sqrt t_16))))
                                                                                                            (if (<= t_14 0.2)
                                                                                                              (fma 0.5 (/ 1.0 (* t_5 (sqrt (/ 1.0 t_5)))) t_12)
                                                                                                              (if (<= t_14 1.999998)
                                                                                                                (+ (- (+ 1.0 (/ 1.0 (+ t_13 (sqrt (+ 1.0 t_10))))) t_6) t_17)
                                                                                                                (if (<= t_14 2.999995)
                                                                                                                  (- (+ (sqrt (+ 1.0 t_5)) (+ 1.0 t_12)) t_15)
                                                                                                                  (+ (+ (- 2.0 t_15) (- 1.0 t_11)) t_17))))))
                                                                                                          double code(double x, double y, double z, double t) {
                                                                                                          	double t_1 = fmax(fmin(x, y), z);
                                                                                                          	double t_2 = fmax(fmax(x, y), t_1);
                                                                                                          	double t_3 = fmin(fmax(x, y), t_1);
                                                                                                          	double t_4 = fmin(fmin(x, y), z);
                                                                                                          	double t_5 = fmin(t_4, t);
                                                                                                          	double t_6 = sqrt(t_5);
                                                                                                          	double t_7 = fmax(t_4, t);
                                                                                                          	double t_8 = fmax(t_3, t_7);
                                                                                                          	double t_9 = fmin(t_2, t_8);
                                                                                                          	double t_10 = fmin(t_3, t_7);
                                                                                                          	double t_11 = sqrt(t_9);
                                                                                                          	double t_12 = 1.0 / (t_11 + sqrt((1.0 + t_9)));
                                                                                                          	double t_13 = sqrt(t_10);
                                                                                                          	double t_14 = ((sqrt((t_5 + 1.0)) - t_6) + (sqrt((t_10 + 1.0)) - t_13)) + (sqrt((t_9 + 1.0)) - t_11);
                                                                                                          	double t_15 = t_6 + t_13;
                                                                                                          	double t_16 = fmax(t_2, t_8);
                                                                                                          	double t_17 = sqrt((t_16 + 1.0)) - sqrt(t_16);
                                                                                                          	double tmp;
                                                                                                          	if (t_14 <= 0.2) {
                                                                                                          		tmp = fma(0.5, (1.0 / (t_5 * sqrt((1.0 / t_5)))), t_12);
                                                                                                          	} else if (t_14 <= 1.999998) {
                                                                                                          		tmp = ((1.0 + (1.0 / (t_13 + sqrt((1.0 + t_10))))) - t_6) + t_17;
                                                                                                          	} else if (t_14 <= 2.999995) {
                                                                                                          		tmp = (sqrt((1.0 + t_5)) + (1.0 + t_12)) - t_15;
                                                                                                          	} else {
                                                                                                          		tmp = ((2.0 - t_15) + (1.0 - t_11)) + t_17;
                                                                                                          	}
                                                                                                          	return tmp;
                                                                                                          }
                                                                                                          
                                                                                                          function code(x, y, z, t)
                                                                                                          	t_1 = fmax(fmin(x, y), z)
                                                                                                          	t_2 = fmax(fmax(x, y), t_1)
                                                                                                          	t_3 = fmin(fmax(x, y), t_1)
                                                                                                          	t_4 = fmin(fmin(x, y), z)
                                                                                                          	t_5 = fmin(t_4, t)
                                                                                                          	t_6 = sqrt(t_5)
                                                                                                          	t_7 = fmax(t_4, t)
                                                                                                          	t_8 = fmax(t_3, t_7)
                                                                                                          	t_9 = fmin(t_2, t_8)
                                                                                                          	t_10 = fmin(t_3, t_7)
                                                                                                          	t_11 = sqrt(t_9)
                                                                                                          	t_12 = Float64(1.0 / Float64(t_11 + sqrt(Float64(1.0 + t_9))))
                                                                                                          	t_13 = sqrt(t_10)
                                                                                                          	t_14 = Float64(Float64(Float64(sqrt(Float64(t_5 + 1.0)) - t_6) + Float64(sqrt(Float64(t_10 + 1.0)) - t_13)) + Float64(sqrt(Float64(t_9 + 1.0)) - t_11))
                                                                                                          	t_15 = Float64(t_6 + t_13)
                                                                                                          	t_16 = fmax(t_2, t_8)
                                                                                                          	t_17 = Float64(sqrt(Float64(t_16 + 1.0)) - sqrt(t_16))
                                                                                                          	tmp = 0.0
                                                                                                          	if (t_14 <= 0.2)
                                                                                                          		tmp = fma(0.5, Float64(1.0 / Float64(t_5 * sqrt(Float64(1.0 / t_5)))), t_12);
                                                                                                          	elseif (t_14 <= 1.999998)
                                                                                                          		tmp = Float64(Float64(Float64(1.0 + Float64(1.0 / Float64(t_13 + sqrt(Float64(1.0 + t_10))))) - t_6) + t_17);
                                                                                                          	elseif (t_14 <= 2.999995)
                                                                                                          		tmp = Float64(Float64(sqrt(Float64(1.0 + t_5)) + Float64(1.0 + t_12)) - t_15);
                                                                                                          	else
                                                                                                          		tmp = Float64(Float64(Float64(2.0 - t_15) + Float64(1.0 - t_11)) + t_17);
                                                                                                          	end
                                                                                                          	return tmp
                                                                                                          end
                                                                                                          
                                                                                                          code[x_, y_, z_, t_] := Block[{t$95$1 = N[Max[N[Min[x, y], $MachinePrecision], z], $MachinePrecision]}, Block[{t$95$2 = N[Max[N[Max[x, y], $MachinePrecision], t$95$1], $MachinePrecision]}, Block[{t$95$3 = N[Min[N[Max[x, y], $MachinePrecision], t$95$1], $MachinePrecision]}, Block[{t$95$4 = N[Min[N[Min[x, y], $MachinePrecision], z], $MachinePrecision]}, Block[{t$95$5 = N[Min[t$95$4, t], $MachinePrecision]}, Block[{t$95$6 = N[Sqrt[t$95$5], $MachinePrecision]}, Block[{t$95$7 = N[Max[t$95$4, t], $MachinePrecision]}, Block[{t$95$8 = N[Max[t$95$3, t$95$7], $MachinePrecision]}, Block[{t$95$9 = N[Min[t$95$2, t$95$8], $MachinePrecision]}, Block[{t$95$10 = N[Min[t$95$3, t$95$7], $MachinePrecision]}, Block[{t$95$11 = N[Sqrt[t$95$9], $MachinePrecision]}, Block[{t$95$12 = N[(1.0 / N[(t$95$11 + N[Sqrt[N[(1.0 + t$95$9), $MachinePrecision]], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$13 = N[Sqrt[t$95$10], $MachinePrecision]}, Block[{t$95$14 = N[(N[(N[(N[Sqrt[N[(t$95$5 + 1.0), $MachinePrecision]], $MachinePrecision] - t$95$6), $MachinePrecision] + N[(N[Sqrt[N[(t$95$10 + 1.0), $MachinePrecision]], $MachinePrecision] - t$95$13), $MachinePrecision]), $MachinePrecision] + N[(N[Sqrt[N[(t$95$9 + 1.0), $MachinePrecision]], $MachinePrecision] - t$95$11), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$15 = N[(t$95$6 + t$95$13), $MachinePrecision]}, Block[{t$95$16 = N[Max[t$95$2, t$95$8], $MachinePrecision]}, Block[{t$95$17 = N[(N[Sqrt[N[(t$95$16 + 1.0), $MachinePrecision]], $MachinePrecision] - N[Sqrt[t$95$16], $MachinePrecision]), $MachinePrecision]}, If[LessEqual[t$95$14, 0.2], N[(0.5 * N[(1.0 / N[(t$95$5 * N[Sqrt[N[(1.0 / t$95$5), $MachinePrecision]], $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + t$95$12), $MachinePrecision], If[LessEqual[t$95$14, 1.999998], N[(N[(N[(1.0 + N[(1.0 / N[(t$95$13 + N[Sqrt[N[(1.0 + t$95$10), $MachinePrecision]], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] - t$95$6), $MachinePrecision] + t$95$17), $MachinePrecision], If[LessEqual[t$95$14, 2.999995], N[(N[(N[Sqrt[N[(1.0 + t$95$5), $MachinePrecision]], $MachinePrecision] + N[(1.0 + t$95$12), $MachinePrecision]), $MachinePrecision] - t$95$15), $MachinePrecision], N[(N[(N[(2.0 - t$95$15), $MachinePrecision] + N[(1.0 - t$95$11), $MachinePrecision]), $MachinePrecision] + t$95$17), $MachinePrecision]]]]]]]]]]]]]]]]]]]]]
                                                                                                          
                                                                                                          f(x, y, z, t):
                                                                                                          	x in [-inf, +inf],
                                                                                                          	y in [-inf, +inf],
                                                                                                          	z in [-inf, +inf],
                                                                                                          	t in [-inf, +inf]
                                                                                                          code: THEORY
                                                                                                          BEGIN
                                                                                                          f(x, y, z, t: real): real =
                                                                                                          	LET tmp_2 = IF (x < y) THEN x ELSE y ENDIF IN
                                                                                                          	LET tmp_3 = IF (x < y) THEN x ELSE y ENDIF IN
                                                                                                          	LET tmp_1 = IF (tmp_2 > z) THEN tmp_3 ELSE z ENDIF IN
                                                                                                          	LET t_1 = tmp_1 IN
                                                                                                          		LET tmp_6 = IF (x > y) THEN x ELSE y ENDIF IN
                                                                                                          		LET tmp_7 = IF (x > y) THEN x ELSE y ENDIF IN
                                                                                                          		LET tmp_5 = IF (tmp_6 > t_1) THEN tmp_7 ELSE t_1 ENDIF IN
                                                                                                          		LET t_2 = tmp_5 IN
                                                                                                          			LET tmp_10 = IF (x > y) THEN x ELSE y ENDIF IN
                                                                                                          			LET tmp_11 = IF (x > y) THEN x ELSE y ENDIF IN
                                                                                                          			LET tmp_9 = IF (tmp_10 < t_1) THEN tmp_11 ELSE t_1 ENDIF IN
                                                                                                          			LET t_3 = tmp_9 IN
                                                                                                          				LET tmp_14 = IF (x < y) THEN x ELSE y ENDIF IN
                                                                                                          				LET tmp_15 = IF (x < y) THEN x ELSE y ENDIF IN
                                                                                                          				LET tmp_13 = IF (tmp_14 < z) THEN tmp_15 ELSE z ENDIF IN
                                                                                                          				LET t_4 = tmp_13 IN
                                                                                                          					LET tmp_16 = IF (t_4 < t) THEN t_4 ELSE t ENDIF IN
                                                                                                          					LET t_5 = tmp_16 IN
                                                                                                          						LET t_6 = (sqrt(t_5)) IN
                                                                                                          							LET tmp_17 = IF (t_4 > t) THEN t_4 ELSE t ENDIF IN
                                                                                                          							LET t_7 = tmp_17 IN
                                                                                                          								LET tmp_18 = IF (t_3 > t_7) THEN t_3 ELSE t_7 ENDIF IN
                                                                                                          								LET t_8 = tmp_18 IN
                                                                                                          									LET tmp_19 = IF (t_2 < t_8) THEN t_2 ELSE t_8 ENDIF IN
                                                                                                          									LET t_9 = tmp_19 IN
                                                                                                          										LET tmp_20 = IF (t_3 < t_7) THEN t_3 ELSE t_7 ENDIF IN
                                                                                                          										LET t_10 = tmp_20 IN
                                                                                                          											LET t_11 = (sqrt(t_9)) IN
                                                                                                          												LET t_12 = ((1) / (t_11 + (sqrt(((1) + t_9))))) IN
                                                                                                          													LET t_13 = (sqrt(t_10)) IN
                                                                                                          														LET t_14 = ((((sqrt((t_5 + (1)))) - t_6) + ((sqrt((t_10 + (1)))) - t_13)) + ((sqrt((t_9 + (1)))) - t_11)) IN
                                                                                                          															LET t_15 = (t_6 + t_13) IN
                                                                                                          																LET tmp_21 = IF (t_2 > t_8) THEN t_2 ELSE t_8 ENDIF IN
                                                                                                          																LET t_16 = tmp_21 IN
                                                                                                          																	LET t_17 = ((sqrt((t_16 + (1)))) - (sqrt(t_16))) IN
                                                                                                          																		LET tmp_24 = IF (t_14 <= (29999950000000001892885848064906895160675048828125e-49)) THEN (((sqrt(((1) + t_5))) + ((1) + t_12)) - t_15) ELSE ((((2) - t_15) + ((1) - t_11)) + t_17) ENDIF IN
                                                                                                          																		LET tmp_23 = IF (t_14 <= (19999979999999999424886709675774909555912017822265625e-52)) THEN ((((1) + ((1) / (t_13 + (sqrt(((1) + t_10)))))) - t_6) + t_17) ELSE tmp_24 ENDIF IN
                                                                                                          																		LET tmp_22 = IF (t_14 <= (200000000000000011102230246251565404236316680908203125e-54)) THEN (((5e-1) * ((1) / (t_5 * (sqrt(((1) / t_5)))))) + t_12) ELSE tmp_23 ENDIF IN
                                                                                                          	tmp_22
                                                                                                          END code
                                                                                                          \begin{array}{l}
                                                                                                          t_1 := \mathsf{max}\left(\mathsf{min}\left(x, y\right), z\right)\\
                                                                                                          t_2 := \mathsf{max}\left(\mathsf{max}\left(x, y\right), t\_1\right)\\
                                                                                                          t_3 := \mathsf{min}\left(\mathsf{max}\left(x, y\right), t\_1\right)\\
                                                                                                          t_4 := \mathsf{min}\left(\mathsf{min}\left(x, y\right), z\right)\\
                                                                                                          t_5 := \mathsf{min}\left(t\_4, t\right)\\
                                                                                                          t_6 := \sqrt{t\_5}\\
                                                                                                          t_7 := \mathsf{max}\left(t\_4, t\right)\\
                                                                                                          t_8 := \mathsf{max}\left(t\_3, t\_7\right)\\
                                                                                                          t_9 := \mathsf{min}\left(t\_2, t\_8\right)\\
                                                                                                          t_10 := \mathsf{min}\left(t\_3, t\_7\right)\\
                                                                                                          t_11 := \sqrt{t\_9}\\
                                                                                                          t_12 := \frac{1}{t\_11 + \sqrt{1 + t\_9}}\\
                                                                                                          t_13 := \sqrt{t\_10}\\
                                                                                                          t_14 := \left(\left(\sqrt{t\_5 + 1} - t\_6\right) + \left(\sqrt{t\_10 + 1} - t\_13\right)\right) + \left(\sqrt{t\_9 + 1} - t\_11\right)\\
                                                                                                          t_15 := t\_6 + t\_13\\
                                                                                                          t_16 := \mathsf{max}\left(t\_2, t\_8\right)\\
                                                                                                          t_17 := \sqrt{t\_16 + 1} - \sqrt{t\_16}\\
                                                                                                          \mathbf{if}\;t\_14 \leq 0.2:\\
                                                                                                          \;\;\;\;\mathsf{fma}\left(0.5, \frac{1}{t\_5 \cdot \sqrt{\frac{1}{t\_5}}}, t\_12\right)\\
                                                                                                          
                                                                                                          \mathbf{elif}\;t\_14 \leq 1.999998:\\
                                                                                                          \;\;\;\;\left(\left(1 + \frac{1}{t\_13 + \sqrt{1 + t\_10}}\right) - t\_6\right) + t\_17\\
                                                                                                          
                                                                                                          \mathbf{elif}\;t\_14 \leq 2.999995:\\
                                                                                                          \;\;\;\;\left(\sqrt{1 + t\_5} + \left(1 + t\_12\right)\right) - t\_15\\
                                                                                                          
                                                                                                          \mathbf{else}:\\
                                                                                                          \;\;\;\;\left(\left(2 - t\_15\right) + \left(1 - t\_11\right)\right) + t\_17\\
                                                                                                          
                                                                                                          
                                                                                                          \end{array}
                                                                                                          
                                                                                                          Derivation
                                                                                                          1. Split input into 4 regimes
                                                                                                          2. if (+.f64 (+.f64 (-.f64 (sqrt.f64 (+.f64 x #s(literal 1 binary64))) (sqrt.f64 x)) (-.f64 (sqrt.f64 (+.f64 y #s(literal 1 binary64))) (sqrt.f64 y))) (-.f64 (sqrt.f64 (+.f64 z #s(literal 1 binary64))) (sqrt.f64 z))) < 0.20000000000000001

                                                                                                            1. Initial program 92.0%

                                                                                                              \[\left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                            2. Step-by-step derivation
                                                                                                              1. Applied rewrites93.8%

                                                                                                                \[\leadsto \left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \frac{1}{\sqrt{z} + \sqrt{z + 1}}\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                              2. Taylor expanded in t around inf

                                                                                                                \[\leadsto \left(\sqrt{1 + x} + \left(\sqrt{1 + y} + \frac{1}{\sqrt{z} + \sqrt{1 + z}}\right)\right) - \left(\sqrt{x} + \sqrt{y}\right) \]
                                                                                                              3. Step-by-step derivation
                                                                                                                1. Applied rewrites19.3%

                                                                                                                  \[\leadsto \left(\sqrt{1 + x} + \left(\sqrt{1 + y} + \frac{1}{\sqrt{z} + \sqrt{1 + z}}\right)\right) - \left(\sqrt{x} + \sqrt{y}\right) \]
                                                                                                                2. Taylor expanded in y around inf

                                                                                                                  \[\leadsto \left(\sqrt{1 + x} + \frac{1}{\sqrt{z} + \sqrt{1 + z}}\right) - \sqrt{x} \]
                                                                                                                3. Step-by-step derivation
                                                                                                                  1. Applied rewrites21.6%

                                                                                                                    \[\leadsto \left(\sqrt{1 + x} + \frac{1}{\sqrt{z} + \sqrt{1 + z}}\right) - \sqrt{x} \]
                                                                                                                  2. Taylor expanded in x around inf

                                                                                                                    \[\leadsto \frac{1}{2} \cdot \frac{1}{x \cdot \sqrt{\frac{1}{x}}} + \frac{1}{\sqrt{z} + \sqrt{1 + z}} \]
                                                                                                                  3. Step-by-step derivation
                                                                                                                    1. Applied rewrites17.0%

                                                                                                                      \[\leadsto \mathsf{fma}\left(0.5, \frac{1}{x \cdot \sqrt{\frac{1}{x}}}, \frac{1}{\sqrt{z} + \sqrt{1 + z}}\right) \]

                                                                                                                    if 0.20000000000000001 < (+.f64 (+.f64 (-.f64 (sqrt.f64 (+.f64 x #s(literal 1 binary64))) (sqrt.f64 x)) (-.f64 (sqrt.f64 (+.f64 y #s(literal 1 binary64))) (sqrt.f64 y))) (-.f64 (sqrt.f64 (+.f64 z #s(literal 1 binary64))) (sqrt.f64 z))) < 1.9999979999999999

                                                                                                                    1. Initial program 92.0%

                                                                                                                      \[\left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                    2. Step-by-step derivation
                                                                                                                      1. Applied rewrites93.9%

                                                                                                                        \[\leadsto \left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \frac{1}{\sqrt{y} + \sqrt{y + 1}}\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                      2. Taylor expanded in z around inf

                                                                                                                        \[\leadsto \left(\left(\sqrt{1 + x} + \frac{1}{\sqrt{y} + \sqrt{1 + y}}\right) - \sqrt{x}\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                      3. Step-by-step derivation
                                                                                                                        1. Applied rewrites40.0%

                                                                                                                          \[\leadsto \left(\left(\sqrt{1 + x} + \frac{1}{\sqrt{y} + \sqrt{1 + y}}\right) - \sqrt{x}\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                        2. Taylor expanded in x around 0

                                                                                                                          \[\leadsto \left(\left(1 + \frac{1}{\sqrt{y} + \sqrt{1 + y}}\right) - \sqrt{x}\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                        3. Step-by-step derivation
                                                                                                                          1. Applied rewrites28.9%

                                                                                                                            \[\leadsto \left(\left(1 + \frac{1}{\sqrt{y} + \sqrt{1 + y}}\right) - \sqrt{x}\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]

                                                                                                                          if 1.9999979999999999 < (+.f64 (+.f64 (-.f64 (sqrt.f64 (+.f64 x #s(literal 1 binary64))) (sqrt.f64 x)) (-.f64 (sqrt.f64 (+.f64 y #s(literal 1 binary64))) (sqrt.f64 y))) (-.f64 (sqrt.f64 (+.f64 z #s(literal 1 binary64))) (sqrt.f64 z))) < 2.9999950000000002

                                                                                                                          1. Initial program 92.0%

                                                                                                                            \[\left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                          2. Step-by-step derivation
                                                                                                                            1. Applied rewrites93.8%

                                                                                                                              \[\leadsto \left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \frac{1}{\sqrt{z} + \sqrt{z + 1}}\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                            2. Taylor expanded in t around inf

                                                                                                                              \[\leadsto \left(\sqrt{1 + x} + \left(\sqrt{1 + y} + \frac{1}{\sqrt{z} + \sqrt{1 + z}}\right)\right) - \left(\sqrt{x} + \sqrt{y}\right) \]
                                                                                                                            3. Step-by-step derivation
                                                                                                                              1. Applied rewrites19.3%

                                                                                                                                \[\leadsto \left(\sqrt{1 + x} + \left(\sqrt{1 + y} + \frac{1}{\sqrt{z} + \sqrt{1 + z}}\right)\right) - \left(\sqrt{x} + \sqrt{y}\right) \]
                                                                                                                              2. Taylor expanded in y around 0

                                                                                                                                \[\leadsto \left(\sqrt{1 + x} + \left(1 + \frac{1}{\sqrt{z} + \sqrt{1 + z}}\right)\right) - \left(\sqrt{x} + \sqrt{y}\right) \]
                                                                                                                              3. Step-by-step derivation
                                                                                                                                1. Applied rewrites17.0%

                                                                                                                                  \[\leadsto \left(\sqrt{1 + x} + \left(1 + \frac{1}{\sqrt{z} + \sqrt{1 + z}}\right)\right) - \left(\sqrt{x} + \sqrt{y}\right) \]

                                                                                                                                if 2.9999950000000002 < (+.f64 (+.f64 (-.f64 (sqrt.f64 (+.f64 x #s(literal 1 binary64))) (sqrt.f64 x)) (-.f64 (sqrt.f64 (+.f64 y #s(literal 1 binary64))) (sqrt.f64 y))) (-.f64 (sqrt.f64 (+.f64 z #s(literal 1 binary64))) (sqrt.f64 z)))

                                                                                                                                1. Initial program 92.0%

                                                                                                                                  \[\left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                2. Taylor expanded in y around 0

                                                                                                                                  \[\leadsto \left(\left(\left(1 + \sqrt{1 + x}\right) - \left(\sqrt{x} + \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                3. Step-by-step derivation
                                                                                                                                  1. Applied rewrites36.9%

                                                                                                                                    \[\leadsto \left(\left(\left(1 + \sqrt{1 + x}\right) - \left(\sqrt{x} + \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                  2. Taylor expanded in x around 0

                                                                                                                                    \[\leadsto \left(\left(2 - \left(\sqrt{x} + \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                  3. Step-by-step derivation
                                                                                                                                    1. Applied rewrites24.5%

                                                                                                                                      \[\leadsto \left(\left(2 - \left(\sqrt{x} + \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                    2. Taylor expanded in z around 0

                                                                                                                                      \[\leadsto \left(\left(2 - \left(\sqrt{x} + \sqrt{y}\right)\right) + \left(1 - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                    3. Step-by-step derivation
                                                                                                                                      1. Applied rewrites13.0%

                                                                                                                                        \[\leadsto \left(\left(2 - \left(\sqrt{x} + \sqrt{y}\right)\right) + \left(1 - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                    4. Recombined 4 regimes into one program.
                                                                                                                                    5. Add Preprocessing

                                                                                                                                    Alternative 10: 96.4% accurate, 0.0× speedup?

                                                                                                                                    \[\begin{array}{l} t_1 := \mathsf{max}\left(\mathsf{min}\left(x, y\right), z\right)\\ t_2 := \mathsf{max}\left(\mathsf{max}\left(x, y\right), t\_1\right)\\ t_3 := \mathsf{min}\left(\mathsf{max}\left(x, y\right), t\_1\right)\\ t_4 := \mathsf{min}\left(\mathsf{min}\left(x, y\right), z\right)\\ t_5 := \mathsf{min}\left(t\_4, t\right)\\ t_6 := \sqrt{t\_5}\\ t_7 := \mathsf{max}\left(t\_4, t\right)\\ t_8 := \mathsf{max}\left(t\_3, t\_7\right)\\ t_9 := \mathsf{min}\left(t\_2, t\_8\right)\\ t_10 := \sqrt{t\_9}\\ t_11 := \sqrt{t\_9 + 1} - t\_10\\ t_12 := \mathsf{min}\left(t\_3, t\_7\right)\\ t_13 := \mathsf{max}\left(t\_2, t\_8\right)\\ t_14 := \sqrt{t\_13}\\ t_15 := \sqrt{t\_13 + 1} - t\_14\\ t_16 := \sqrt{t\_12}\\ t_17 := \left(\left(\left(\sqrt{t\_5 + 1} - t\_6\right) + \left(\sqrt{t\_12 + 1} - t\_16\right)\right) + t\_11\right) + t\_15\\ t_18 := 2 - \left(t\_6 + t\_16\right)\\ \mathbf{if}\;t\_17 \leq 0.2:\\ \;\;\;\;\mathsf{fma}\left(0.5, \frac{1}{t\_5 \cdot \sqrt{\frac{1}{t\_5}}}, \frac{1}{t\_10 + \sqrt{1 + t\_9}}\right)\\ \mathbf{elif}\;t\_17 \leq 1.999998:\\ \;\;\;\;\left(\left(1 + \frac{1}{t\_16 + \sqrt{1 + t\_12}}\right) - t\_6\right) + t\_15\\ \mathbf{elif}\;t\_17 \leq 3.0001:\\ \;\;\;\;\left(t\_18 + t\_11\right) + \frac{0.5}{t\_14}\\ \mathbf{else}:\\ \;\;\;\;\left(t\_18 + \left(1 - t\_10\right)\right) + t\_15\\ \end{array} \]
                                                                                                                                    (FPCore (x y z t)
                                                                                                                                      :precision binary64
                                                                                                                                      :pre TRUE
                                                                                                                                      (let* ((t_1 (fmax (fmin x y) z))
                                                                                                                                           (t_2 (fmax (fmax x y) t_1))
                                                                                                                                           (t_3 (fmin (fmax x y) t_1))
                                                                                                                                           (t_4 (fmin (fmin x y) z))
                                                                                                                                           (t_5 (fmin t_4 t))
                                                                                                                                           (t_6 (sqrt t_5))
                                                                                                                                           (t_7 (fmax t_4 t))
                                                                                                                                           (t_8 (fmax t_3 t_7))
                                                                                                                                           (t_9 (fmin t_2 t_8))
                                                                                                                                           (t_10 (sqrt t_9))
                                                                                                                                           (t_11 (- (sqrt (+ t_9 1.0)) t_10))
                                                                                                                                           (t_12 (fmin t_3 t_7))
                                                                                                                                           (t_13 (fmax t_2 t_8))
                                                                                                                                           (t_14 (sqrt t_13))
                                                                                                                                           (t_15 (- (sqrt (+ t_13 1.0)) t_14))
                                                                                                                                           (t_16 (sqrt t_12))
                                                                                                                                           (t_17
                                                                                                                                            (+
                                                                                                                                             (+
                                                                                                                                              (+ (- (sqrt (+ t_5 1.0)) t_6) (- (sqrt (+ t_12 1.0)) t_16))
                                                                                                                                              t_11)
                                                                                                                                             t_15))
                                                                                                                                           (t_18 (- 2.0 (+ t_6 t_16))))
                                                                                                                                      (if (<= t_17 0.2)
                                                                                                                                        (fma
                                                                                                                                         0.5
                                                                                                                                         (/ 1.0 (* t_5 (sqrt (/ 1.0 t_5))))
                                                                                                                                         (/ 1.0 (+ t_10 (sqrt (+ 1.0 t_9)))))
                                                                                                                                        (if (<= t_17 1.999998)
                                                                                                                                          (+ (- (+ 1.0 (/ 1.0 (+ t_16 (sqrt (+ 1.0 t_12))))) t_6) t_15)
                                                                                                                                          (if (<= t_17 3.0001)
                                                                                                                                            (+ (+ t_18 t_11) (/ 0.5 t_14))
                                                                                                                                            (+ (+ t_18 (- 1.0 t_10)) t_15))))))
                                                                                                                                    double code(double x, double y, double z, double t) {
                                                                                                                                    	double t_1 = fmax(fmin(x, y), z);
                                                                                                                                    	double t_2 = fmax(fmax(x, y), t_1);
                                                                                                                                    	double t_3 = fmin(fmax(x, y), t_1);
                                                                                                                                    	double t_4 = fmin(fmin(x, y), z);
                                                                                                                                    	double t_5 = fmin(t_4, t);
                                                                                                                                    	double t_6 = sqrt(t_5);
                                                                                                                                    	double t_7 = fmax(t_4, t);
                                                                                                                                    	double t_8 = fmax(t_3, t_7);
                                                                                                                                    	double t_9 = fmin(t_2, t_8);
                                                                                                                                    	double t_10 = sqrt(t_9);
                                                                                                                                    	double t_11 = sqrt((t_9 + 1.0)) - t_10;
                                                                                                                                    	double t_12 = fmin(t_3, t_7);
                                                                                                                                    	double t_13 = fmax(t_2, t_8);
                                                                                                                                    	double t_14 = sqrt(t_13);
                                                                                                                                    	double t_15 = sqrt((t_13 + 1.0)) - t_14;
                                                                                                                                    	double t_16 = sqrt(t_12);
                                                                                                                                    	double t_17 = (((sqrt((t_5 + 1.0)) - t_6) + (sqrt((t_12 + 1.0)) - t_16)) + t_11) + t_15;
                                                                                                                                    	double t_18 = 2.0 - (t_6 + t_16);
                                                                                                                                    	double tmp;
                                                                                                                                    	if (t_17 <= 0.2) {
                                                                                                                                    		tmp = fma(0.5, (1.0 / (t_5 * sqrt((1.0 / t_5)))), (1.0 / (t_10 + sqrt((1.0 + t_9)))));
                                                                                                                                    	} else if (t_17 <= 1.999998) {
                                                                                                                                    		tmp = ((1.0 + (1.0 / (t_16 + sqrt((1.0 + t_12))))) - t_6) + t_15;
                                                                                                                                    	} else if (t_17 <= 3.0001) {
                                                                                                                                    		tmp = (t_18 + t_11) + (0.5 / t_14);
                                                                                                                                    	} else {
                                                                                                                                    		tmp = (t_18 + (1.0 - t_10)) + t_15;
                                                                                                                                    	}
                                                                                                                                    	return tmp;
                                                                                                                                    }
                                                                                                                                    
                                                                                                                                    function code(x, y, z, t)
                                                                                                                                    	t_1 = fmax(fmin(x, y), z)
                                                                                                                                    	t_2 = fmax(fmax(x, y), t_1)
                                                                                                                                    	t_3 = fmin(fmax(x, y), t_1)
                                                                                                                                    	t_4 = fmin(fmin(x, y), z)
                                                                                                                                    	t_5 = fmin(t_4, t)
                                                                                                                                    	t_6 = sqrt(t_5)
                                                                                                                                    	t_7 = fmax(t_4, t)
                                                                                                                                    	t_8 = fmax(t_3, t_7)
                                                                                                                                    	t_9 = fmin(t_2, t_8)
                                                                                                                                    	t_10 = sqrt(t_9)
                                                                                                                                    	t_11 = Float64(sqrt(Float64(t_9 + 1.0)) - t_10)
                                                                                                                                    	t_12 = fmin(t_3, t_7)
                                                                                                                                    	t_13 = fmax(t_2, t_8)
                                                                                                                                    	t_14 = sqrt(t_13)
                                                                                                                                    	t_15 = Float64(sqrt(Float64(t_13 + 1.0)) - t_14)
                                                                                                                                    	t_16 = sqrt(t_12)
                                                                                                                                    	t_17 = Float64(Float64(Float64(Float64(sqrt(Float64(t_5 + 1.0)) - t_6) + Float64(sqrt(Float64(t_12 + 1.0)) - t_16)) + t_11) + t_15)
                                                                                                                                    	t_18 = Float64(2.0 - Float64(t_6 + t_16))
                                                                                                                                    	tmp = 0.0
                                                                                                                                    	if (t_17 <= 0.2)
                                                                                                                                    		tmp = fma(0.5, Float64(1.0 / Float64(t_5 * sqrt(Float64(1.0 / t_5)))), Float64(1.0 / Float64(t_10 + sqrt(Float64(1.0 + t_9)))));
                                                                                                                                    	elseif (t_17 <= 1.999998)
                                                                                                                                    		tmp = Float64(Float64(Float64(1.0 + Float64(1.0 / Float64(t_16 + sqrt(Float64(1.0 + t_12))))) - t_6) + t_15);
                                                                                                                                    	elseif (t_17 <= 3.0001)
                                                                                                                                    		tmp = Float64(Float64(t_18 + t_11) + Float64(0.5 / t_14));
                                                                                                                                    	else
                                                                                                                                    		tmp = Float64(Float64(t_18 + Float64(1.0 - t_10)) + t_15);
                                                                                                                                    	end
                                                                                                                                    	return tmp
                                                                                                                                    end
                                                                                                                                    
                                                                                                                                    code[x_, y_, z_, t_] := Block[{t$95$1 = N[Max[N[Min[x, y], $MachinePrecision], z], $MachinePrecision]}, Block[{t$95$2 = N[Max[N[Max[x, y], $MachinePrecision], t$95$1], $MachinePrecision]}, Block[{t$95$3 = N[Min[N[Max[x, y], $MachinePrecision], t$95$1], $MachinePrecision]}, Block[{t$95$4 = N[Min[N[Min[x, y], $MachinePrecision], z], $MachinePrecision]}, Block[{t$95$5 = N[Min[t$95$4, t], $MachinePrecision]}, Block[{t$95$6 = N[Sqrt[t$95$5], $MachinePrecision]}, Block[{t$95$7 = N[Max[t$95$4, t], $MachinePrecision]}, Block[{t$95$8 = N[Max[t$95$3, t$95$7], $MachinePrecision]}, Block[{t$95$9 = N[Min[t$95$2, t$95$8], $MachinePrecision]}, Block[{t$95$10 = N[Sqrt[t$95$9], $MachinePrecision]}, Block[{t$95$11 = N[(N[Sqrt[N[(t$95$9 + 1.0), $MachinePrecision]], $MachinePrecision] - t$95$10), $MachinePrecision]}, Block[{t$95$12 = N[Min[t$95$3, t$95$7], $MachinePrecision]}, Block[{t$95$13 = N[Max[t$95$2, t$95$8], $MachinePrecision]}, Block[{t$95$14 = N[Sqrt[t$95$13], $MachinePrecision]}, Block[{t$95$15 = N[(N[Sqrt[N[(t$95$13 + 1.0), $MachinePrecision]], $MachinePrecision] - t$95$14), $MachinePrecision]}, Block[{t$95$16 = N[Sqrt[t$95$12], $MachinePrecision]}, Block[{t$95$17 = N[(N[(N[(N[(N[Sqrt[N[(t$95$5 + 1.0), $MachinePrecision]], $MachinePrecision] - t$95$6), $MachinePrecision] + N[(N[Sqrt[N[(t$95$12 + 1.0), $MachinePrecision]], $MachinePrecision] - t$95$16), $MachinePrecision]), $MachinePrecision] + t$95$11), $MachinePrecision] + t$95$15), $MachinePrecision]}, Block[{t$95$18 = N[(2.0 - N[(t$95$6 + t$95$16), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[t$95$17, 0.2], N[(0.5 * N[(1.0 / N[(t$95$5 * N[Sqrt[N[(1.0 / t$95$5), $MachinePrecision]], $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + N[(1.0 / N[(t$95$10 + N[Sqrt[N[(1.0 + t$95$9), $MachinePrecision]], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[t$95$17, 1.999998], N[(N[(N[(1.0 + N[(1.0 / N[(t$95$16 + N[Sqrt[N[(1.0 + t$95$12), $MachinePrecision]], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] - t$95$6), $MachinePrecision] + t$95$15), $MachinePrecision], If[LessEqual[t$95$17, 3.0001], N[(N[(t$95$18 + t$95$11), $MachinePrecision] + N[(0.5 / t$95$14), $MachinePrecision]), $MachinePrecision], N[(N[(t$95$18 + N[(1.0 - t$95$10), $MachinePrecision]), $MachinePrecision] + t$95$15), $MachinePrecision]]]]]]]]]]]]]]]]]]]]]]
                                                                                                                                    
                                                                                                                                    f(x, y, z, t):
                                                                                                                                    	x in [-inf, +inf],
                                                                                                                                    	y in [-inf, +inf],
                                                                                                                                    	z in [-inf, +inf],
                                                                                                                                    	t in [-inf, +inf]
                                                                                                                                    code: THEORY
                                                                                                                                    BEGIN
                                                                                                                                    f(x, y, z, t: real): real =
                                                                                                                                    	LET tmp_2 = IF (x < y) THEN x ELSE y ENDIF IN
                                                                                                                                    	LET tmp_3 = IF (x < y) THEN x ELSE y ENDIF IN
                                                                                                                                    	LET tmp_1 = IF (tmp_2 > z) THEN tmp_3 ELSE z ENDIF IN
                                                                                                                                    	LET t_1 = tmp_1 IN
                                                                                                                                    		LET tmp_6 = IF (x > y) THEN x ELSE y ENDIF IN
                                                                                                                                    		LET tmp_7 = IF (x > y) THEN x ELSE y ENDIF IN
                                                                                                                                    		LET tmp_5 = IF (tmp_6 > t_1) THEN tmp_7 ELSE t_1 ENDIF IN
                                                                                                                                    		LET t_2 = tmp_5 IN
                                                                                                                                    			LET tmp_10 = IF (x > y) THEN x ELSE y ENDIF IN
                                                                                                                                    			LET tmp_11 = IF (x > y) THEN x ELSE y ENDIF IN
                                                                                                                                    			LET tmp_9 = IF (tmp_10 < t_1) THEN tmp_11 ELSE t_1 ENDIF IN
                                                                                                                                    			LET t_3 = tmp_9 IN
                                                                                                                                    				LET tmp_14 = IF (x < y) THEN x ELSE y ENDIF IN
                                                                                                                                    				LET tmp_15 = IF (x < y) THEN x ELSE y ENDIF IN
                                                                                                                                    				LET tmp_13 = IF (tmp_14 < z) THEN tmp_15 ELSE z ENDIF IN
                                                                                                                                    				LET t_4 = tmp_13 IN
                                                                                                                                    					LET tmp_16 = IF (t_4 < t) THEN t_4 ELSE t ENDIF IN
                                                                                                                                    					LET t_5 = tmp_16 IN
                                                                                                                                    						LET t_6 = (sqrt(t_5)) IN
                                                                                                                                    							LET tmp_17 = IF (t_4 > t) THEN t_4 ELSE t ENDIF IN
                                                                                                                                    							LET t_7 = tmp_17 IN
                                                                                                                                    								LET tmp_18 = IF (t_3 > t_7) THEN t_3 ELSE t_7 ENDIF IN
                                                                                                                                    								LET t_8 = tmp_18 IN
                                                                                                                                    									LET tmp_19 = IF (t_2 < t_8) THEN t_2 ELSE t_8 ENDIF IN
                                                                                                                                    									LET t_9 = tmp_19 IN
                                                                                                                                    										LET t_10 = (sqrt(t_9)) IN
                                                                                                                                    											LET t_11 = ((sqrt((t_9 + (1)))) - t_10) IN
                                                                                                                                    												LET tmp_20 = IF (t_3 < t_7) THEN t_3 ELSE t_7 ENDIF IN
                                                                                                                                    												LET t_12 = tmp_20 IN
                                                                                                                                    													LET tmp_21 = IF (t_2 > t_8) THEN t_2 ELSE t_8 ENDIF IN
                                                                                                                                    													LET t_13 = tmp_21 IN
                                                                                                                                    														LET t_14 = (sqrt(t_13)) IN
                                                                                                                                    															LET t_15 = ((sqrt((t_13 + (1)))) - t_14) IN
                                                                                                                                    																LET t_16 = (sqrt(t_12)) IN
                                                                                                                                    																	LET t_17 = (((((sqrt((t_5 + (1)))) - t_6) + ((sqrt((t_12 + (1)))) - t_16)) + t_11) + t_15) IN
                                                                                                                                    																		LET t_18 = ((2) - (t_6 + t_16)) IN
                                                                                                                                    																			LET tmp_24 = IF (t_17 <= (3000100000000000211031192520749755203723907470703125e-51)) THEN ((t_18 + t_11) + ((5e-1) / t_14)) ELSE ((t_18 + ((1) - t_10)) + t_15) ENDIF IN
                                                                                                                                    																			LET tmp_23 = IF (t_17 <= (19999979999999999424886709675774909555912017822265625e-52)) THEN ((((1) + ((1) / (t_16 + (sqrt(((1) + t_12)))))) - t_6) + t_15) ELSE tmp_24 ENDIF IN
                                                                                                                                    																			LET tmp_22 = IF (t_17 <= (200000000000000011102230246251565404236316680908203125e-54)) THEN (((5e-1) * ((1) / (t_5 * (sqrt(((1) / t_5)))))) + ((1) / (t_10 + (sqrt(((1) + t_9)))))) ELSE tmp_23 ENDIF IN
                                                                                                                                    	tmp_22
                                                                                                                                    END code
                                                                                                                                    \begin{array}{l}
                                                                                                                                    t_1 := \mathsf{max}\left(\mathsf{min}\left(x, y\right), z\right)\\
                                                                                                                                    t_2 := \mathsf{max}\left(\mathsf{max}\left(x, y\right), t\_1\right)\\
                                                                                                                                    t_3 := \mathsf{min}\left(\mathsf{max}\left(x, y\right), t\_1\right)\\
                                                                                                                                    t_4 := \mathsf{min}\left(\mathsf{min}\left(x, y\right), z\right)\\
                                                                                                                                    t_5 := \mathsf{min}\left(t\_4, t\right)\\
                                                                                                                                    t_6 := \sqrt{t\_5}\\
                                                                                                                                    t_7 := \mathsf{max}\left(t\_4, t\right)\\
                                                                                                                                    t_8 := \mathsf{max}\left(t\_3, t\_7\right)\\
                                                                                                                                    t_9 := \mathsf{min}\left(t\_2, t\_8\right)\\
                                                                                                                                    t_10 := \sqrt{t\_9}\\
                                                                                                                                    t_11 := \sqrt{t\_9 + 1} - t\_10\\
                                                                                                                                    t_12 := \mathsf{min}\left(t\_3, t\_7\right)\\
                                                                                                                                    t_13 := \mathsf{max}\left(t\_2, t\_8\right)\\
                                                                                                                                    t_14 := \sqrt{t\_13}\\
                                                                                                                                    t_15 := \sqrt{t\_13 + 1} - t\_14\\
                                                                                                                                    t_16 := \sqrt{t\_12}\\
                                                                                                                                    t_17 := \left(\left(\left(\sqrt{t\_5 + 1} - t\_6\right) + \left(\sqrt{t\_12 + 1} - t\_16\right)\right) + t\_11\right) + t\_15\\
                                                                                                                                    t_18 := 2 - \left(t\_6 + t\_16\right)\\
                                                                                                                                    \mathbf{if}\;t\_17 \leq 0.2:\\
                                                                                                                                    \;\;\;\;\mathsf{fma}\left(0.5, \frac{1}{t\_5 \cdot \sqrt{\frac{1}{t\_5}}}, \frac{1}{t\_10 + \sqrt{1 + t\_9}}\right)\\
                                                                                                                                    
                                                                                                                                    \mathbf{elif}\;t\_17 \leq 1.999998:\\
                                                                                                                                    \;\;\;\;\left(\left(1 + \frac{1}{t\_16 + \sqrt{1 + t\_12}}\right) - t\_6\right) + t\_15\\
                                                                                                                                    
                                                                                                                                    \mathbf{elif}\;t\_17 \leq 3.0001:\\
                                                                                                                                    \;\;\;\;\left(t\_18 + t\_11\right) + \frac{0.5}{t\_14}\\
                                                                                                                                    
                                                                                                                                    \mathbf{else}:\\
                                                                                                                                    \;\;\;\;\left(t\_18 + \left(1 - t\_10\right)\right) + t\_15\\
                                                                                                                                    
                                                                                                                                    
                                                                                                                                    \end{array}
                                                                                                                                    
                                                                                                                                    Derivation
                                                                                                                                    1. Split input into 4 regimes
                                                                                                                                    2. if (+.f64 (+.f64 (+.f64 (-.f64 (sqrt.f64 (+.f64 x #s(literal 1 binary64))) (sqrt.f64 x)) (-.f64 (sqrt.f64 (+.f64 y #s(literal 1 binary64))) (sqrt.f64 y))) (-.f64 (sqrt.f64 (+.f64 z #s(literal 1 binary64))) (sqrt.f64 z))) (-.f64 (sqrt.f64 (+.f64 t #s(literal 1 binary64))) (sqrt.f64 t))) < 0.20000000000000001

                                                                                                                                      1. Initial program 92.0%

                                                                                                                                        \[\left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                      2. Step-by-step derivation
                                                                                                                                        1. Applied rewrites93.8%

                                                                                                                                          \[\leadsto \left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \frac{1}{\sqrt{z} + \sqrt{z + 1}}\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                        2. Taylor expanded in t around inf

                                                                                                                                          \[\leadsto \left(\sqrt{1 + x} + \left(\sqrt{1 + y} + \frac{1}{\sqrt{z} + \sqrt{1 + z}}\right)\right) - \left(\sqrt{x} + \sqrt{y}\right) \]
                                                                                                                                        3. Step-by-step derivation
                                                                                                                                          1. Applied rewrites19.3%

                                                                                                                                            \[\leadsto \left(\sqrt{1 + x} + \left(\sqrt{1 + y} + \frac{1}{\sqrt{z} + \sqrt{1 + z}}\right)\right) - \left(\sqrt{x} + \sqrt{y}\right) \]
                                                                                                                                          2. Taylor expanded in y around inf

                                                                                                                                            \[\leadsto \left(\sqrt{1 + x} + \frac{1}{\sqrt{z} + \sqrt{1 + z}}\right) - \sqrt{x} \]
                                                                                                                                          3. Step-by-step derivation
                                                                                                                                            1. Applied rewrites21.6%

                                                                                                                                              \[\leadsto \left(\sqrt{1 + x} + \frac{1}{\sqrt{z} + \sqrt{1 + z}}\right) - \sqrt{x} \]
                                                                                                                                            2. Taylor expanded in x around inf

                                                                                                                                              \[\leadsto \frac{1}{2} \cdot \frac{1}{x \cdot \sqrt{\frac{1}{x}}} + \frac{1}{\sqrt{z} + \sqrt{1 + z}} \]
                                                                                                                                            3. Step-by-step derivation
                                                                                                                                              1. Applied rewrites17.0%

                                                                                                                                                \[\leadsto \mathsf{fma}\left(0.5, \frac{1}{x \cdot \sqrt{\frac{1}{x}}}, \frac{1}{\sqrt{z} + \sqrt{1 + z}}\right) \]

                                                                                                                                              if 0.20000000000000001 < (+.f64 (+.f64 (+.f64 (-.f64 (sqrt.f64 (+.f64 x #s(literal 1 binary64))) (sqrt.f64 x)) (-.f64 (sqrt.f64 (+.f64 y #s(literal 1 binary64))) (sqrt.f64 y))) (-.f64 (sqrt.f64 (+.f64 z #s(literal 1 binary64))) (sqrt.f64 z))) (-.f64 (sqrt.f64 (+.f64 t #s(literal 1 binary64))) (sqrt.f64 t))) < 1.9999979999999999

                                                                                                                                              1. Initial program 92.0%

                                                                                                                                                \[\left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                              2. Step-by-step derivation
                                                                                                                                                1. Applied rewrites93.9%

                                                                                                                                                  \[\leadsto \left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \frac{1}{\sqrt{y} + \sqrt{y + 1}}\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                2. Taylor expanded in z around inf

                                                                                                                                                  \[\leadsto \left(\left(\sqrt{1 + x} + \frac{1}{\sqrt{y} + \sqrt{1 + y}}\right) - \sqrt{x}\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                3. Step-by-step derivation
                                                                                                                                                  1. Applied rewrites40.0%

                                                                                                                                                    \[\leadsto \left(\left(\sqrt{1 + x} + \frac{1}{\sqrt{y} + \sqrt{1 + y}}\right) - \sqrt{x}\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                  2. Taylor expanded in x around 0

                                                                                                                                                    \[\leadsto \left(\left(1 + \frac{1}{\sqrt{y} + \sqrt{1 + y}}\right) - \sqrt{x}\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                  3. Step-by-step derivation
                                                                                                                                                    1. Applied rewrites28.9%

                                                                                                                                                      \[\leadsto \left(\left(1 + \frac{1}{\sqrt{y} + \sqrt{1 + y}}\right) - \sqrt{x}\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]

                                                                                                                                                    if 1.9999979999999999 < (+.f64 (+.f64 (+.f64 (-.f64 (sqrt.f64 (+.f64 x #s(literal 1 binary64))) (sqrt.f64 x)) (-.f64 (sqrt.f64 (+.f64 y #s(literal 1 binary64))) (sqrt.f64 y))) (-.f64 (sqrt.f64 (+.f64 z #s(literal 1 binary64))) (sqrt.f64 z))) (-.f64 (sqrt.f64 (+.f64 t #s(literal 1 binary64))) (sqrt.f64 t))) < 3.0001000000000002

                                                                                                                                                    1. Initial program 92.0%

                                                                                                                                                      \[\left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                    2. Taylor expanded in y around 0

                                                                                                                                                      \[\leadsto \left(\left(\left(1 + \sqrt{1 + x}\right) - \left(\sqrt{x} + \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                    3. Step-by-step derivation
                                                                                                                                                      1. Applied rewrites36.9%

                                                                                                                                                        \[\leadsto \left(\left(\left(1 + \sqrt{1 + x}\right) - \left(\sqrt{x} + \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                      2. Taylor expanded in x around 0

                                                                                                                                                        \[\leadsto \left(\left(2 - \left(\sqrt{x} + \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                      3. Step-by-step derivation
                                                                                                                                                        1. Applied rewrites24.5%

                                                                                                                                                          \[\leadsto \left(\left(2 - \left(\sqrt{x} + \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                        2. Taylor expanded in t around inf

                                                                                                                                                          \[\leadsto \left(\left(2 - \left(\sqrt{x} + \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \frac{\frac{1}{2}}{t \cdot \sqrt{\frac{1}{t}}} \]
                                                                                                                                                        3. Step-by-step derivation
                                                                                                                                                          1. Applied rewrites14.1%

                                                                                                                                                            \[\leadsto \left(\left(2 - \left(\sqrt{x} + \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \frac{0.5}{t \cdot \sqrt{\frac{1}{t}}} \]
                                                                                                                                                          2. Taylor expanded in t around 0

                                                                                                                                                            \[\leadsto \left(\left(2 - \left(\sqrt{x} + \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \frac{\frac{1}{2}}{\sqrt{t}} \]
                                                                                                                                                          3. Step-by-step derivation
                                                                                                                                                            1. Applied rewrites14.1%

                                                                                                                                                              \[\leadsto \left(\left(2 - \left(\sqrt{x} + \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \frac{0.5}{\sqrt{t}} \]

                                                                                                                                                            if 3.0001000000000002 < (+.f64 (+.f64 (+.f64 (-.f64 (sqrt.f64 (+.f64 x #s(literal 1 binary64))) (sqrt.f64 x)) (-.f64 (sqrt.f64 (+.f64 y #s(literal 1 binary64))) (sqrt.f64 y))) (-.f64 (sqrt.f64 (+.f64 z #s(literal 1 binary64))) (sqrt.f64 z))) (-.f64 (sqrt.f64 (+.f64 t #s(literal 1 binary64))) (sqrt.f64 t)))

                                                                                                                                                            1. Initial program 92.0%

                                                                                                                                                              \[\left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                            2. Taylor expanded in y around 0

                                                                                                                                                              \[\leadsto \left(\left(\left(1 + \sqrt{1 + x}\right) - \left(\sqrt{x} + \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                            3. Step-by-step derivation
                                                                                                                                                              1. Applied rewrites36.9%

                                                                                                                                                                \[\leadsto \left(\left(\left(1 + \sqrt{1 + x}\right) - \left(\sqrt{x} + \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                              2. Taylor expanded in x around 0

                                                                                                                                                                \[\leadsto \left(\left(2 - \left(\sqrt{x} + \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                              3. Step-by-step derivation
                                                                                                                                                                1. Applied rewrites24.5%

                                                                                                                                                                  \[\leadsto \left(\left(2 - \left(\sqrt{x} + \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                2. Taylor expanded in z around 0

                                                                                                                                                                  \[\leadsto \left(\left(2 - \left(\sqrt{x} + \sqrt{y}\right)\right) + \left(1 - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                3. Step-by-step derivation
                                                                                                                                                                  1. Applied rewrites13.0%

                                                                                                                                                                    \[\leadsto \left(\left(2 - \left(\sqrt{x} + \sqrt{y}\right)\right) + \left(1 - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                4. Recombined 4 regimes into one program.
                                                                                                                                                                5. Add Preprocessing

                                                                                                                                                                Alternative 11: 96.3% accurate, 0.5× speedup?

                                                                                                                                                                \[\begin{array}{l} t_1 := \mathsf{max}\left(\mathsf{min}\left(x, y\right), z\right)\\ t_2 := \sqrt{t\_1 + 1} - \sqrt{t\_1}\\ t_3 := \mathsf{min}\left(\mathsf{min}\left(x, y\right), z\right)\\ t_4 := \mathsf{min}\left(t\_3, t\right)\\ t_5 := \mathsf{max}\left(t\_3, t\right)\\ t_6 := \sqrt{t\_5}\\ t_7 := \sqrt{t\_4}\\ t_8 := \sqrt{t\_5 + 1}\\ \mathbf{if}\;\mathsf{max}\left(x, y\right) \leq 4062571952146190:\\ \;\;\;\;\left(\left(\left(1 - t\_7\right) + \left(\sqrt{\mathsf{max}\left(x, y\right) + 1} - \sqrt{\mathsf{max}\left(x, y\right)}\right)\right) + t\_2\right) + \left(t\_8 - t\_6\right)\\ \mathbf{else}:\\ \;\;\;\;\frac{1}{\sqrt{1 + t\_4} + t\_7} + \left(t\_2 - \left(t\_6 - t\_8\right)\right)\\ \end{array} \]
                                                                                                                                                                (FPCore (x y z t)
                                                                                                                                                                  :precision binary64
                                                                                                                                                                  :pre TRUE
                                                                                                                                                                  (let* ((t_1 (fmax (fmin x y) z))
                                                                                                                                                                       (t_2 (- (sqrt (+ t_1 1.0)) (sqrt t_1)))
                                                                                                                                                                       (t_3 (fmin (fmin x y) z))
                                                                                                                                                                       (t_4 (fmin t_3 t))
                                                                                                                                                                       (t_5 (fmax t_3 t))
                                                                                                                                                                       (t_6 (sqrt t_5))
                                                                                                                                                                       (t_7 (sqrt t_4))
                                                                                                                                                                       (t_8 (sqrt (+ t_5 1.0))))
                                                                                                                                                                  (if (<= (fmax x y) 4062571952146190.0)
                                                                                                                                                                    (+
                                                                                                                                                                     (+
                                                                                                                                                                      (+ (- 1.0 t_7) (- (sqrt (+ (fmax x y) 1.0)) (sqrt (fmax x y))))
                                                                                                                                                                      t_2)
                                                                                                                                                                     (- t_8 t_6))
                                                                                                                                                                    (+ (/ 1.0 (+ (sqrt (+ 1.0 t_4)) t_7)) (- t_2 (- t_6 t_8))))))
                                                                                                                                                                double code(double x, double y, double z, double t) {
                                                                                                                                                                	double t_1 = fmax(fmin(x, y), z);
                                                                                                                                                                	double t_2 = sqrt((t_1 + 1.0)) - sqrt(t_1);
                                                                                                                                                                	double t_3 = fmin(fmin(x, y), z);
                                                                                                                                                                	double t_4 = fmin(t_3, t);
                                                                                                                                                                	double t_5 = fmax(t_3, t);
                                                                                                                                                                	double t_6 = sqrt(t_5);
                                                                                                                                                                	double t_7 = sqrt(t_4);
                                                                                                                                                                	double t_8 = sqrt((t_5 + 1.0));
                                                                                                                                                                	double tmp;
                                                                                                                                                                	if (fmax(x, y) <= 4062571952146190.0) {
                                                                                                                                                                		tmp = (((1.0 - t_7) + (sqrt((fmax(x, y) + 1.0)) - sqrt(fmax(x, y)))) + t_2) + (t_8 - t_6);
                                                                                                                                                                	} else {
                                                                                                                                                                		tmp = (1.0 / (sqrt((1.0 + t_4)) + t_7)) + (t_2 - (t_6 - t_8));
                                                                                                                                                                	}
                                                                                                                                                                	return tmp;
                                                                                                                                                                }
                                                                                                                                                                
                                                                                                                                                                real(8) function code(x, y, z, t)
                                                                                                                                                                use fmin_fmax_functions
                                                                                                                                                                    real(8), intent (in) :: x
                                                                                                                                                                    real(8), intent (in) :: y
                                                                                                                                                                    real(8), intent (in) :: z
                                                                                                                                                                    real(8), intent (in) :: t
                                                                                                                                                                    real(8) :: t_1
                                                                                                                                                                    real(8) :: t_2
                                                                                                                                                                    real(8) :: t_3
                                                                                                                                                                    real(8) :: t_4
                                                                                                                                                                    real(8) :: t_5
                                                                                                                                                                    real(8) :: t_6
                                                                                                                                                                    real(8) :: t_7
                                                                                                                                                                    real(8) :: t_8
                                                                                                                                                                    real(8) :: tmp
                                                                                                                                                                    t_1 = fmax(fmin(x, y), z)
                                                                                                                                                                    t_2 = sqrt((t_1 + 1.0d0)) - sqrt(t_1)
                                                                                                                                                                    t_3 = fmin(fmin(x, y), z)
                                                                                                                                                                    t_4 = fmin(t_3, t)
                                                                                                                                                                    t_5 = fmax(t_3, t)
                                                                                                                                                                    t_6 = sqrt(t_5)
                                                                                                                                                                    t_7 = sqrt(t_4)
                                                                                                                                                                    t_8 = sqrt((t_5 + 1.0d0))
                                                                                                                                                                    if (fmax(x, y) <= 4062571952146190.0d0) then
                                                                                                                                                                        tmp = (((1.0d0 - t_7) + (sqrt((fmax(x, y) + 1.0d0)) - sqrt(fmax(x, y)))) + t_2) + (t_8 - t_6)
                                                                                                                                                                    else
                                                                                                                                                                        tmp = (1.0d0 / (sqrt((1.0d0 + t_4)) + t_7)) + (t_2 - (t_6 - t_8))
                                                                                                                                                                    end if
                                                                                                                                                                    code = tmp
                                                                                                                                                                end function
                                                                                                                                                                
                                                                                                                                                                public static double code(double x, double y, double z, double t) {
                                                                                                                                                                	double t_1 = fmax(fmin(x, y), z);
                                                                                                                                                                	double t_2 = Math.sqrt((t_1 + 1.0)) - Math.sqrt(t_1);
                                                                                                                                                                	double t_3 = fmin(fmin(x, y), z);
                                                                                                                                                                	double t_4 = fmin(t_3, t);
                                                                                                                                                                	double t_5 = fmax(t_3, t);
                                                                                                                                                                	double t_6 = Math.sqrt(t_5);
                                                                                                                                                                	double t_7 = Math.sqrt(t_4);
                                                                                                                                                                	double t_8 = Math.sqrt((t_5 + 1.0));
                                                                                                                                                                	double tmp;
                                                                                                                                                                	if (fmax(x, y) <= 4062571952146190.0) {
                                                                                                                                                                		tmp = (((1.0 - t_7) + (Math.sqrt((fmax(x, y) + 1.0)) - Math.sqrt(fmax(x, y)))) + t_2) + (t_8 - t_6);
                                                                                                                                                                	} else {
                                                                                                                                                                		tmp = (1.0 / (Math.sqrt((1.0 + t_4)) + t_7)) + (t_2 - (t_6 - t_8));
                                                                                                                                                                	}
                                                                                                                                                                	return tmp;
                                                                                                                                                                }
                                                                                                                                                                
                                                                                                                                                                def code(x, y, z, t):
                                                                                                                                                                	t_1 = fmax(fmin(x, y), z)
                                                                                                                                                                	t_2 = math.sqrt((t_1 + 1.0)) - math.sqrt(t_1)
                                                                                                                                                                	t_3 = fmin(fmin(x, y), z)
                                                                                                                                                                	t_4 = fmin(t_3, t)
                                                                                                                                                                	t_5 = fmax(t_3, t)
                                                                                                                                                                	t_6 = math.sqrt(t_5)
                                                                                                                                                                	t_7 = math.sqrt(t_4)
                                                                                                                                                                	t_8 = math.sqrt((t_5 + 1.0))
                                                                                                                                                                	tmp = 0
                                                                                                                                                                	if fmax(x, y) <= 4062571952146190.0:
                                                                                                                                                                		tmp = (((1.0 - t_7) + (math.sqrt((fmax(x, y) + 1.0)) - math.sqrt(fmax(x, y)))) + t_2) + (t_8 - t_6)
                                                                                                                                                                	else:
                                                                                                                                                                		tmp = (1.0 / (math.sqrt((1.0 + t_4)) + t_7)) + (t_2 - (t_6 - t_8))
                                                                                                                                                                	return tmp
                                                                                                                                                                
                                                                                                                                                                function code(x, y, z, t)
                                                                                                                                                                	t_1 = fmax(fmin(x, y), z)
                                                                                                                                                                	t_2 = Float64(sqrt(Float64(t_1 + 1.0)) - sqrt(t_1))
                                                                                                                                                                	t_3 = fmin(fmin(x, y), z)
                                                                                                                                                                	t_4 = fmin(t_3, t)
                                                                                                                                                                	t_5 = fmax(t_3, t)
                                                                                                                                                                	t_6 = sqrt(t_5)
                                                                                                                                                                	t_7 = sqrt(t_4)
                                                                                                                                                                	t_8 = sqrt(Float64(t_5 + 1.0))
                                                                                                                                                                	tmp = 0.0
                                                                                                                                                                	if (fmax(x, y) <= 4062571952146190.0)
                                                                                                                                                                		tmp = Float64(Float64(Float64(Float64(1.0 - t_7) + Float64(sqrt(Float64(fmax(x, y) + 1.0)) - sqrt(fmax(x, y)))) + t_2) + Float64(t_8 - t_6));
                                                                                                                                                                	else
                                                                                                                                                                		tmp = Float64(Float64(1.0 / Float64(sqrt(Float64(1.0 + t_4)) + t_7)) + Float64(t_2 - Float64(t_6 - t_8)));
                                                                                                                                                                	end
                                                                                                                                                                	return tmp
                                                                                                                                                                end
                                                                                                                                                                
                                                                                                                                                                function tmp_2 = code(x, y, z, t)
                                                                                                                                                                	t_1 = max(min(x, y), z);
                                                                                                                                                                	t_2 = sqrt((t_1 + 1.0)) - sqrt(t_1);
                                                                                                                                                                	t_3 = min(min(x, y), z);
                                                                                                                                                                	t_4 = min(t_3, t);
                                                                                                                                                                	t_5 = max(t_3, t);
                                                                                                                                                                	t_6 = sqrt(t_5);
                                                                                                                                                                	t_7 = sqrt(t_4);
                                                                                                                                                                	t_8 = sqrt((t_5 + 1.0));
                                                                                                                                                                	tmp = 0.0;
                                                                                                                                                                	if (max(x, y) <= 4062571952146190.0)
                                                                                                                                                                		tmp = (((1.0 - t_7) + (sqrt((max(x, y) + 1.0)) - sqrt(max(x, y)))) + t_2) + (t_8 - t_6);
                                                                                                                                                                	else
                                                                                                                                                                		tmp = (1.0 / (sqrt((1.0 + t_4)) + t_7)) + (t_2 - (t_6 - t_8));
                                                                                                                                                                	end
                                                                                                                                                                	tmp_2 = tmp;
                                                                                                                                                                end
                                                                                                                                                                
                                                                                                                                                                code[x_, y_, z_, t_] := Block[{t$95$1 = N[Max[N[Min[x, y], $MachinePrecision], z], $MachinePrecision]}, Block[{t$95$2 = N[(N[Sqrt[N[(t$95$1 + 1.0), $MachinePrecision]], $MachinePrecision] - N[Sqrt[t$95$1], $MachinePrecision]), $MachinePrecision]}, Block[{t$95$3 = N[Min[N[Min[x, y], $MachinePrecision], z], $MachinePrecision]}, Block[{t$95$4 = N[Min[t$95$3, t], $MachinePrecision]}, Block[{t$95$5 = N[Max[t$95$3, t], $MachinePrecision]}, Block[{t$95$6 = N[Sqrt[t$95$5], $MachinePrecision]}, Block[{t$95$7 = N[Sqrt[t$95$4], $MachinePrecision]}, Block[{t$95$8 = N[Sqrt[N[(t$95$5 + 1.0), $MachinePrecision]], $MachinePrecision]}, If[LessEqual[N[Max[x, y], $MachinePrecision], 4062571952146190.0], N[(N[(N[(N[(1.0 - t$95$7), $MachinePrecision] + N[(N[Sqrt[N[(N[Max[x, y], $MachinePrecision] + 1.0), $MachinePrecision]], $MachinePrecision] - N[Sqrt[N[Max[x, y], $MachinePrecision]], $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + t$95$2), $MachinePrecision] + N[(t$95$8 - t$95$6), $MachinePrecision]), $MachinePrecision], N[(N[(1.0 / N[(N[Sqrt[N[(1.0 + t$95$4), $MachinePrecision]], $MachinePrecision] + t$95$7), $MachinePrecision]), $MachinePrecision] + N[(t$95$2 - N[(t$95$6 - t$95$8), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]]]]]]]]]]
                                                                                                                                                                
                                                                                                                                                                f(x, y, z, t):
                                                                                                                                                                	x in [-inf, +inf],
                                                                                                                                                                	y in [-inf, +inf],
                                                                                                                                                                	z in [-inf, +inf],
                                                                                                                                                                	t in [-inf, +inf]
                                                                                                                                                                code: THEORY
                                                                                                                                                                BEGIN
                                                                                                                                                                f(x, y, z, t: real): real =
                                                                                                                                                                	LET tmp_2 = IF (x < y) THEN x ELSE y ENDIF IN
                                                                                                                                                                	LET tmp_3 = IF (x < y) THEN x ELSE y ENDIF IN
                                                                                                                                                                	LET tmp_1 = IF (tmp_2 > z) THEN tmp_3 ELSE z ENDIF IN
                                                                                                                                                                	LET t_1 = tmp_1 IN
                                                                                                                                                                		LET t_2 = ((sqrt((t_1 + (1)))) - (sqrt(t_1))) IN
                                                                                                                                                                			LET tmp_6 = IF (x < y) THEN x ELSE y ENDIF IN
                                                                                                                                                                			LET tmp_7 = IF (x < y) THEN x ELSE y ENDIF IN
                                                                                                                                                                			LET tmp_5 = IF (tmp_6 < z) THEN tmp_7 ELSE z ENDIF IN
                                                                                                                                                                			LET t_3 = tmp_5 IN
                                                                                                                                                                				LET tmp_8 = IF (t_3 < t) THEN t_3 ELSE t ENDIF IN
                                                                                                                                                                				LET t_4 = tmp_8 IN
                                                                                                                                                                					LET tmp_9 = IF (t_3 > t) THEN t_3 ELSE t ENDIF IN
                                                                                                                                                                					LET t_5 = tmp_9 IN
                                                                                                                                                                						LET t_6 = (sqrt(t_5)) IN
                                                                                                                                                                							LET t_7 = (sqrt(t_4)) IN
                                                                                                                                                                								LET t_8 = (sqrt((t_5 + (1)))) IN
                                                                                                                                                                									LET tmp_13 = IF (x > y) THEN x ELSE y ENDIF IN
                                                                                                                                                                									LET tmp_14 = IF (x > y) THEN x ELSE y ENDIF IN
                                                                                                                                                                									LET tmp_15 = IF (x > y) THEN x ELSE y ENDIF IN
                                                                                                                                                                									LET tmp_12 = IF (tmp_13 <= (4062571952146190)) THEN (((((1) - t_7) + ((sqrt((tmp_14 + (1)))) - (sqrt(tmp_15)))) + t_2) + (t_8 - t_6)) ELSE (((1) / ((sqrt(((1) + t_4))) + t_7)) + (t_2 - (t_6 - t_8))) ENDIF IN
                                                                                                                                                                	tmp_12
                                                                                                                                                                END code
                                                                                                                                                                \begin{array}{l}
                                                                                                                                                                t_1 := \mathsf{max}\left(\mathsf{min}\left(x, y\right), z\right)\\
                                                                                                                                                                t_2 := \sqrt{t\_1 + 1} - \sqrt{t\_1}\\
                                                                                                                                                                t_3 := \mathsf{min}\left(\mathsf{min}\left(x, y\right), z\right)\\
                                                                                                                                                                t_4 := \mathsf{min}\left(t\_3, t\right)\\
                                                                                                                                                                t_5 := \mathsf{max}\left(t\_3, t\right)\\
                                                                                                                                                                t_6 := \sqrt{t\_5}\\
                                                                                                                                                                t_7 := \sqrt{t\_4}\\
                                                                                                                                                                t_8 := \sqrt{t\_5 + 1}\\
                                                                                                                                                                \mathbf{if}\;\mathsf{max}\left(x, y\right) \leq 4062571952146190:\\
                                                                                                                                                                \;\;\;\;\left(\left(\left(1 - t\_7\right) + \left(\sqrt{\mathsf{max}\left(x, y\right) + 1} - \sqrt{\mathsf{max}\left(x, y\right)}\right)\right) + t\_2\right) + \left(t\_8 - t\_6\right)\\
                                                                                                                                                                
                                                                                                                                                                \mathbf{else}:\\
                                                                                                                                                                \;\;\;\;\frac{1}{\sqrt{1 + t\_4} + t\_7} + \left(t\_2 - \left(t\_6 - t\_8\right)\right)\\
                                                                                                                                                                
                                                                                                                                                                
                                                                                                                                                                \end{array}
                                                                                                                                                                
                                                                                                                                                                Derivation
                                                                                                                                                                1. Split input into 2 regimes
                                                                                                                                                                2. if y < 4062571952146190

                                                                                                                                                                  1. Initial program 92.0%

                                                                                                                                                                    \[\left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                  2. Taylor expanded in x around 0

                                                                                                                                                                    \[\leadsto \left(\left(\left(1 - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                  3. Step-by-step derivation
                                                                                                                                                                    1. Applied rewrites48.4%

                                                                                                                                                                      \[\leadsto \left(\left(\left(1 - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]

                                                                                                                                                                    if 4062571952146190 < y

                                                                                                                                                                    1. Initial program 92.0%

                                                                                                                                                                      \[\left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                    2. Step-by-step derivation
                                                                                                                                                                      1. Applied rewrites94.0%

                                                                                                                                                                        \[\leadsto \left(\left(\frac{1}{\sqrt{x} + \sqrt{1 + x}} + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                      2. Taylor expanded in y around inf

                                                                                                                                                                        \[\leadsto \left(\frac{1}{\sqrt{x} + \sqrt{1 + x}} + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                      3. Step-by-step derivation
                                                                                                                                                                        1. Applied rewrites52.4%

                                                                                                                                                                          \[\leadsto \left(\frac{1}{\sqrt{x} + \sqrt{1 + x}} + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                        2. Applied rewrites52.4%

                                                                                                                                                                          \[\leadsto \frac{1}{\sqrt{1 + x} + \sqrt{x}} + \left(\left(\sqrt{z + 1} - \sqrt{z}\right) - \left(\sqrt{t} - \sqrt{t + 1}\right)\right) \]
                                                                                                                                                                      4. Recombined 2 regimes into one program.
                                                                                                                                                                      5. Add Preprocessing

                                                                                                                                                                      Alternative 12: 96.1% accurate, 0.6× speedup?

                                                                                                                                                                      \[\begin{array}{l} t_1 := \mathsf{min}\left(\mathsf{min}\left(x, z\right), t\right)\\ t_2 := \mathsf{max}\left(\mathsf{min}\left(x, z\right), t\right)\\ \left(\left(\frac{1}{\sqrt{t\_1} + \sqrt{1 + t\_1}} + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{\mathsf{max}\left(x, z\right) + 1} - \sqrt{\mathsf{max}\left(x, z\right)}\right)\right) + \left(\sqrt{t\_2 + 1} - \sqrt{t\_2}\right) \end{array} \]
                                                                                                                                                                      (FPCore (x y z t)
                                                                                                                                                                        :precision binary64
                                                                                                                                                                        :pre TRUE
                                                                                                                                                                        (let* ((t_1 (fmin (fmin x z) t)) (t_2 (fmax (fmin x z) t)))
                                                                                                                                                                        (+
                                                                                                                                                                         (+
                                                                                                                                                                          (+
                                                                                                                                                                           (/ 1.0 (+ (sqrt t_1) (sqrt (+ 1.0 t_1))))
                                                                                                                                                                           (- (sqrt (+ y 1.0)) (sqrt y)))
                                                                                                                                                                          (- (sqrt (+ (fmax x z) 1.0)) (sqrt (fmax x z))))
                                                                                                                                                                         (- (sqrt (+ t_2 1.0)) (sqrt t_2)))))
                                                                                                                                                                      double code(double x, double y, double z, double t) {
                                                                                                                                                                      	double t_1 = fmin(fmin(x, z), t);
                                                                                                                                                                      	double t_2 = fmax(fmin(x, z), t);
                                                                                                                                                                      	return (((1.0 / (sqrt(t_1) + sqrt((1.0 + t_1)))) + (sqrt((y + 1.0)) - sqrt(y))) + (sqrt((fmax(x, z) + 1.0)) - sqrt(fmax(x, z)))) + (sqrt((t_2 + 1.0)) - sqrt(t_2));
                                                                                                                                                                      }
                                                                                                                                                                      
                                                                                                                                                                      real(8) function code(x, y, z, t)
                                                                                                                                                                      use fmin_fmax_functions
                                                                                                                                                                          real(8), intent (in) :: x
                                                                                                                                                                          real(8), intent (in) :: y
                                                                                                                                                                          real(8), intent (in) :: z
                                                                                                                                                                          real(8), intent (in) :: t
                                                                                                                                                                          real(8) :: t_1
                                                                                                                                                                          real(8) :: t_2
                                                                                                                                                                          t_1 = fmin(fmin(x, z), t)
                                                                                                                                                                          t_2 = fmax(fmin(x, z), t)
                                                                                                                                                                          code = (((1.0d0 / (sqrt(t_1) + sqrt((1.0d0 + t_1)))) + (sqrt((y + 1.0d0)) - sqrt(y))) + (sqrt((fmax(x, z) + 1.0d0)) - sqrt(fmax(x, z)))) + (sqrt((t_2 + 1.0d0)) - sqrt(t_2))
                                                                                                                                                                      end function
                                                                                                                                                                      
                                                                                                                                                                      public static double code(double x, double y, double z, double t) {
                                                                                                                                                                      	double t_1 = fmin(fmin(x, z), t);
                                                                                                                                                                      	double t_2 = fmax(fmin(x, z), t);
                                                                                                                                                                      	return (((1.0 / (Math.sqrt(t_1) + Math.sqrt((1.0 + t_1)))) + (Math.sqrt((y + 1.0)) - Math.sqrt(y))) + (Math.sqrt((fmax(x, z) + 1.0)) - Math.sqrt(fmax(x, z)))) + (Math.sqrt((t_2 + 1.0)) - Math.sqrt(t_2));
                                                                                                                                                                      }
                                                                                                                                                                      
                                                                                                                                                                      def code(x, y, z, t):
                                                                                                                                                                      	t_1 = fmin(fmin(x, z), t)
                                                                                                                                                                      	t_2 = fmax(fmin(x, z), t)
                                                                                                                                                                      	return (((1.0 / (math.sqrt(t_1) + math.sqrt((1.0 + t_1)))) + (math.sqrt((y + 1.0)) - math.sqrt(y))) + (math.sqrt((fmax(x, z) + 1.0)) - math.sqrt(fmax(x, z)))) + (math.sqrt((t_2 + 1.0)) - math.sqrt(t_2))
                                                                                                                                                                      
                                                                                                                                                                      function code(x, y, z, t)
                                                                                                                                                                      	t_1 = fmin(fmin(x, z), t)
                                                                                                                                                                      	t_2 = fmax(fmin(x, z), t)
                                                                                                                                                                      	return Float64(Float64(Float64(Float64(1.0 / Float64(sqrt(t_1) + sqrt(Float64(1.0 + t_1)))) + Float64(sqrt(Float64(y + 1.0)) - sqrt(y))) + Float64(sqrt(Float64(fmax(x, z) + 1.0)) - sqrt(fmax(x, z)))) + Float64(sqrt(Float64(t_2 + 1.0)) - sqrt(t_2)))
                                                                                                                                                                      end
                                                                                                                                                                      
                                                                                                                                                                      function tmp = code(x, y, z, t)
                                                                                                                                                                      	t_1 = min(min(x, z), t);
                                                                                                                                                                      	t_2 = max(min(x, z), t);
                                                                                                                                                                      	tmp = (((1.0 / (sqrt(t_1) + sqrt((1.0 + t_1)))) + (sqrt((y + 1.0)) - sqrt(y))) + (sqrt((max(x, z) + 1.0)) - sqrt(max(x, z)))) + (sqrt((t_2 + 1.0)) - sqrt(t_2));
                                                                                                                                                                      end
                                                                                                                                                                      
                                                                                                                                                                      code[x_, y_, z_, t_] := Block[{t$95$1 = N[Min[N[Min[x, z], $MachinePrecision], t], $MachinePrecision]}, Block[{t$95$2 = N[Max[N[Min[x, z], $MachinePrecision], t], $MachinePrecision]}, N[(N[(N[(N[(1.0 / N[(N[Sqrt[t$95$1], $MachinePrecision] + N[Sqrt[N[(1.0 + t$95$1), $MachinePrecision]], $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + N[(N[Sqrt[N[(y + 1.0), $MachinePrecision]], $MachinePrecision] - N[Sqrt[y], $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + N[(N[Sqrt[N[(N[Max[x, z], $MachinePrecision] + 1.0), $MachinePrecision]], $MachinePrecision] - N[Sqrt[N[Max[x, z], $MachinePrecision]], $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + N[(N[Sqrt[N[(t$95$2 + 1.0), $MachinePrecision]], $MachinePrecision] - N[Sqrt[t$95$2], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]]]
                                                                                                                                                                      
                                                                                                                                                                      f(x, y, z, t):
                                                                                                                                                                      	x in [-inf, +inf],
                                                                                                                                                                      	y in [-inf, +inf],
                                                                                                                                                                      	z in [-inf, +inf],
                                                                                                                                                                      	t in [-inf, +inf]
                                                                                                                                                                      code: THEORY
                                                                                                                                                                      BEGIN
                                                                                                                                                                      f(x, y, z, t: real): real =
                                                                                                                                                                      	LET tmp_2 = IF (x < z) THEN x ELSE z ENDIF IN
                                                                                                                                                                      	LET tmp_3 = IF (x < z) THEN x ELSE z ENDIF IN
                                                                                                                                                                      	LET tmp_1 = IF (tmp_2 < t) THEN tmp_3 ELSE t ENDIF IN
                                                                                                                                                                      	LET t_1 = tmp_1 IN
                                                                                                                                                                      		LET tmp_6 = IF (x < z) THEN x ELSE z ENDIF IN
                                                                                                                                                                      		LET tmp_7 = IF (x < z) THEN x ELSE z ENDIF IN
                                                                                                                                                                      		LET tmp_5 = IF (tmp_6 > t) THEN tmp_7 ELSE t ENDIF IN
                                                                                                                                                                      		LET t_2 = tmp_5 IN
                                                                                                                                                                      			LET tmp_8 = IF (x > z) THEN x ELSE z ENDIF IN
                                                                                                                                                                      			LET tmp_9 = IF (x > z) THEN x ELSE z ENDIF IN
                                                                                                                                                                      	((((1) / ((sqrt(t_1)) + (sqrt(((1) + t_1))))) + ((sqrt((y + (1)))) - (sqrt(y)))) + ((sqrt((tmp_8 + (1)))) - (sqrt(tmp_9)))) + ((sqrt((t_2 + (1)))) - (sqrt(t_2)))
                                                                                                                                                                      END code
                                                                                                                                                                      \begin{array}{l}
                                                                                                                                                                      t_1 := \mathsf{min}\left(\mathsf{min}\left(x, z\right), t\right)\\
                                                                                                                                                                      t_2 := \mathsf{max}\left(\mathsf{min}\left(x, z\right), t\right)\\
                                                                                                                                                                      \left(\left(\frac{1}{\sqrt{t\_1} + \sqrt{1 + t\_1}} + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{\mathsf{max}\left(x, z\right) + 1} - \sqrt{\mathsf{max}\left(x, z\right)}\right)\right) + \left(\sqrt{t\_2 + 1} - \sqrt{t\_2}\right)
                                                                                                                                                                      \end{array}
                                                                                                                                                                      
                                                                                                                                                                      Derivation
                                                                                                                                                                      1. Initial program 92.0%

                                                                                                                                                                        \[\left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                      2. Step-by-step derivation
                                                                                                                                                                        1. Applied rewrites94.0%

                                                                                                                                                                          \[\leadsto \left(\left(\frac{1}{\sqrt{x} + \sqrt{1 + x}} + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                        2. Add Preprocessing

                                                                                                                                                                        Alternative 13: 96.1% accurate, 0.4× speedup?

                                                                                                                                                                        \[\begin{array}{l} t_1 := \mathsf{max}\left(\mathsf{min}\left(x, y\right), z\right)\\ t_2 := \sqrt{t\_1 + 1} - \sqrt{t\_1}\\ t_3 := \mathsf{min}\left(\mathsf{min}\left(x, y\right), z\right)\\ t_4 := \mathsf{min}\left(t\_3, t\right)\\ t_5 := \mathsf{max}\left(t\_3, t\right)\\ t_6 := \sqrt{t\_5}\\ t_7 := \sqrt{t\_4}\\ t_8 := \sqrt{t\_5 + 1}\\ \mathbf{if}\;\mathsf{max}\left(x, y\right) \leq 1.2000225462603408 \cdot 10^{+30}:\\ \;\;\;\;\left(\left(\left(\sqrt{t\_4 + 1} - t\_7\right) + \left(\sqrt{\mathsf{max}\left(x, y\right) + 1} - \sqrt{\mathsf{max}\left(x, y\right)}\right)\right) + t\_2\right) + \left(t\_8 - t\_6\right)\\ \mathbf{else}:\\ \;\;\;\;\frac{1}{\sqrt{1 + t\_4} + t\_7} + \left(t\_2 - \left(t\_6 - t\_8\right)\right)\\ \end{array} \]
                                                                                                                                                                        (FPCore (x y z t)
                                                                                                                                                                          :precision binary64
                                                                                                                                                                          :pre TRUE
                                                                                                                                                                          (let* ((t_1 (fmax (fmin x y) z))
                                                                                                                                                                               (t_2 (- (sqrt (+ t_1 1.0)) (sqrt t_1)))
                                                                                                                                                                               (t_3 (fmin (fmin x y) z))
                                                                                                                                                                               (t_4 (fmin t_3 t))
                                                                                                                                                                               (t_5 (fmax t_3 t))
                                                                                                                                                                               (t_6 (sqrt t_5))
                                                                                                                                                                               (t_7 (sqrt t_4))
                                                                                                                                                                               (t_8 (sqrt (+ t_5 1.0))))
                                                                                                                                                                          (if (<= (fmax x y) 1.2000225462603408e+30)
                                                                                                                                                                            (+
                                                                                                                                                                             (+
                                                                                                                                                                              (+
                                                                                                                                                                               (- (sqrt (+ t_4 1.0)) t_7)
                                                                                                                                                                               (- (sqrt (+ (fmax x y) 1.0)) (sqrt (fmax x y))))
                                                                                                                                                                              t_2)
                                                                                                                                                                             (- t_8 t_6))
                                                                                                                                                                            (+ (/ 1.0 (+ (sqrt (+ 1.0 t_4)) t_7)) (- t_2 (- t_6 t_8))))))
                                                                                                                                                                        double code(double x, double y, double z, double t) {
                                                                                                                                                                        	double t_1 = fmax(fmin(x, y), z);
                                                                                                                                                                        	double t_2 = sqrt((t_1 + 1.0)) - sqrt(t_1);
                                                                                                                                                                        	double t_3 = fmin(fmin(x, y), z);
                                                                                                                                                                        	double t_4 = fmin(t_3, t);
                                                                                                                                                                        	double t_5 = fmax(t_3, t);
                                                                                                                                                                        	double t_6 = sqrt(t_5);
                                                                                                                                                                        	double t_7 = sqrt(t_4);
                                                                                                                                                                        	double t_8 = sqrt((t_5 + 1.0));
                                                                                                                                                                        	double tmp;
                                                                                                                                                                        	if (fmax(x, y) <= 1.2000225462603408e+30) {
                                                                                                                                                                        		tmp = (((sqrt((t_4 + 1.0)) - t_7) + (sqrt((fmax(x, y) + 1.0)) - sqrt(fmax(x, y)))) + t_2) + (t_8 - t_6);
                                                                                                                                                                        	} else {
                                                                                                                                                                        		tmp = (1.0 / (sqrt((1.0 + t_4)) + t_7)) + (t_2 - (t_6 - t_8));
                                                                                                                                                                        	}
                                                                                                                                                                        	return tmp;
                                                                                                                                                                        }
                                                                                                                                                                        
                                                                                                                                                                        real(8) function code(x, y, z, t)
                                                                                                                                                                        use fmin_fmax_functions
                                                                                                                                                                            real(8), intent (in) :: x
                                                                                                                                                                            real(8), intent (in) :: y
                                                                                                                                                                            real(8), intent (in) :: z
                                                                                                                                                                            real(8), intent (in) :: t
                                                                                                                                                                            real(8) :: t_1
                                                                                                                                                                            real(8) :: t_2
                                                                                                                                                                            real(8) :: t_3
                                                                                                                                                                            real(8) :: t_4
                                                                                                                                                                            real(8) :: t_5
                                                                                                                                                                            real(8) :: t_6
                                                                                                                                                                            real(8) :: t_7
                                                                                                                                                                            real(8) :: t_8
                                                                                                                                                                            real(8) :: tmp
                                                                                                                                                                            t_1 = fmax(fmin(x, y), z)
                                                                                                                                                                            t_2 = sqrt((t_1 + 1.0d0)) - sqrt(t_1)
                                                                                                                                                                            t_3 = fmin(fmin(x, y), z)
                                                                                                                                                                            t_4 = fmin(t_3, t)
                                                                                                                                                                            t_5 = fmax(t_3, t)
                                                                                                                                                                            t_6 = sqrt(t_5)
                                                                                                                                                                            t_7 = sqrt(t_4)
                                                                                                                                                                            t_8 = sqrt((t_5 + 1.0d0))
                                                                                                                                                                            if (fmax(x, y) <= 1.2000225462603408d+30) then
                                                                                                                                                                                tmp = (((sqrt((t_4 + 1.0d0)) - t_7) + (sqrt((fmax(x, y) + 1.0d0)) - sqrt(fmax(x, y)))) + t_2) + (t_8 - t_6)
                                                                                                                                                                            else
                                                                                                                                                                                tmp = (1.0d0 / (sqrt((1.0d0 + t_4)) + t_7)) + (t_2 - (t_6 - t_8))
                                                                                                                                                                            end if
                                                                                                                                                                            code = tmp
                                                                                                                                                                        end function
                                                                                                                                                                        
                                                                                                                                                                        public static double code(double x, double y, double z, double t) {
                                                                                                                                                                        	double t_1 = fmax(fmin(x, y), z);
                                                                                                                                                                        	double t_2 = Math.sqrt((t_1 + 1.0)) - Math.sqrt(t_1);
                                                                                                                                                                        	double t_3 = fmin(fmin(x, y), z);
                                                                                                                                                                        	double t_4 = fmin(t_3, t);
                                                                                                                                                                        	double t_5 = fmax(t_3, t);
                                                                                                                                                                        	double t_6 = Math.sqrt(t_5);
                                                                                                                                                                        	double t_7 = Math.sqrt(t_4);
                                                                                                                                                                        	double t_8 = Math.sqrt((t_5 + 1.0));
                                                                                                                                                                        	double tmp;
                                                                                                                                                                        	if (fmax(x, y) <= 1.2000225462603408e+30) {
                                                                                                                                                                        		tmp = (((Math.sqrt((t_4 + 1.0)) - t_7) + (Math.sqrt((fmax(x, y) + 1.0)) - Math.sqrt(fmax(x, y)))) + t_2) + (t_8 - t_6);
                                                                                                                                                                        	} else {
                                                                                                                                                                        		tmp = (1.0 / (Math.sqrt((1.0 + t_4)) + t_7)) + (t_2 - (t_6 - t_8));
                                                                                                                                                                        	}
                                                                                                                                                                        	return tmp;
                                                                                                                                                                        }
                                                                                                                                                                        
                                                                                                                                                                        def code(x, y, z, t):
                                                                                                                                                                        	t_1 = fmax(fmin(x, y), z)
                                                                                                                                                                        	t_2 = math.sqrt((t_1 + 1.0)) - math.sqrt(t_1)
                                                                                                                                                                        	t_3 = fmin(fmin(x, y), z)
                                                                                                                                                                        	t_4 = fmin(t_3, t)
                                                                                                                                                                        	t_5 = fmax(t_3, t)
                                                                                                                                                                        	t_6 = math.sqrt(t_5)
                                                                                                                                                                        	t_7 = math.sqrt(t_4)
                                                                                                                                                                        	t_8 = math.sqrt((t_5 + 1.0))
                                                                                                                                                                        	tmp = 0
                                                                                                                                                                        	if fmax(x, y) <= 1.2000225462603408e+30:
                                                                                                                                                                        		tmp = (((math.sqrt((t_4 + 1.0)) - t_7) + (math.sqrt((fmax(x, y) + 1.0)) - math.sqrt(fmax(x, y)))) + t_2) + (t_8 - t_6)
                                                                                                                                                                        	else:
                                                                                                                                                                        		tmp = (1.0 / (math.sqrt((1.0 + t_4)) + t_7)) + (t_2 - (t_6 - t_8))
                                                                                                                                                                        	return tmp
                                                                                                                                                                        
                                                                                                                                                                        function code(x, y, z, t)
                                                                                                                                                                        	t_1 = fmax(fmin(x, y), z)
                                                                                                                                                                        	t_2 = Float64(sqrt(Float64(t_1 + 1.0)) - sqrt(t_1))
                                                                                                                                                                        	t_3 = fmin(fmin(x, y), z)
                                                                                                                                                                        	t_4 = fmin(t_3, t)
                                                                                                                                                                        	t_5 = fmax(t_3, t)
                                                                                                                                                                        	t_6 = sqrt(t_5)
                                                                                                                                                                        	t_7 = sqrt(t_4)
                                                                                                                                                                        	t_8 = sqrt(Float64(t_5 + 1.0))
                                                                                                                                                                        	tmp = 0.0
                                                                                                                                                                        	if (fmax(x, y) <= 1.2000225462603408e+30)
                                                                                                                                                                        		tmp = Float64(Float64(Float64(Float64(sqrt(Float64(t_4 + 1.0)) - t_7) + Float64(sqrt(Float64(fmax(x, y) + 1.0)) - sqrt(fmax(x, y)))) + t_2) + Float64(t_8 - t_6));
                                                                                                                                                                        	else
                                                                                                                                                                        		tmp = Float64(Float64(1.0 / Float64(sqrt(Float64(1.0 + t_4)) + t_7)) + Float64(t_2 - Float64(t_6 - t_8)));
                                                                                                                                                                        	end
                                                                                                                                                                        	return tmp
                                                                                                                                                                        end
                                                                                                                                                                        
                                                                                                                                                                        function tmp_2 = code(x, y, z, t)
                                                                                                                                                                        	t_1 = max(min(x, y), z);
                                                                                                                                                                        	t_2 = sqrt((t_1 + 1.0)) - sqrt(t_1);
                                                                                                                                                                        	t_3 = min(min(x, y), z);
                                                                                                                                                                        	t_4 = min(t_3, t);
                                                                                                                                                                        	t_5 = max(t_3, t);
                                                                                                                                                                        	t_6 = sqrt(t_5);
                                                                                                                                                                        	t_7 = sqrt(t_4);
                                                                                                                                                                        	t_8 = sqrt((t_5 + 1.0));
                                                                                                                                                                        	tmp = 0.0;
                                                                                                                                                                        	if (max(x, y) <= 1.2000225462603408e+30)
                                                                                                                                                                        		tmp = (((sqrt((t_4 + 1.0)) - t_7) + (sqrt((max(x, y) + 1.0)) - sqrt(max(x, y)))) + t_2) + (t_8 - t_6);
                                                                                                                                                                        	else
                                                                                                                                                                        		tmp = (1.0 / (sqrt((1.0 + t_4)) + t_7)) + (t_2 - (t_6 - t_8));
                                                                                                                                                                        	end
                                                                                                                                                                        	tmp_2 = tmp;
                                                                                                                                                                        end
                                                                                                                                                                        
                                                                                                                                                                        code[x_, y_, z_, t_] := Block[{t$95$1 = N[Max[N[Min[x, y], $MachinePrecision], z], $MachinePrecision]}, Block[{t$95$2 = N[(N[Sqrt[N[(t$95$1 + 1.0), $MachinePrecision]], $MachinePrecision] - N[Sqrt[t$95$1], $MachinePrecision]), $MachinePrecision]}, Block[{t$95$3 = N[Min[N[Min[x, y], $MachinePrecision], z], $MachinePrecision]}, Block[{t$95$4 = N[Min[t$95$3, t], $MachinePrecision]}, Block[{t$95$5 = N[Max[t$95$3, t], $MachinePrecision]}, Block[{t$95$6 = N[Sqrt[t$95$5], $MachinePrecision]}, Block[{t$95$7 = N[Sqrt[t$95$4], $MachinePrecision]}, Block[{t$95$8 = N[Sqrt[N[(t$95$5 + 1.0), $MachinePrecision]], $MachinePrecision]}, If[LessEqual[N[Max[x, y], $MachinePrecision], 1.2000225462603408e+30], N[(N[(N[(N[(N[Sqrt[N[(t$95$4 + 1.0), $MachinePrecision]], $MachinePrecision] - t$95$7), $MachinePrecision] + N[(N[Sqrt[N[(N[Max[x, y], $MachinePrecision] + 1.0), $MachinePrecision]], $MachinePrecision] - N[Sqrt[N[Max[x, y], $MachinePrecision]], $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + t$95$2), $MachinePrecision] + N[(t$95$8 - t$95$6), $MachinePrecision]), $MachinePrecision], N[(N[(1.0 / N[(N[Sqrt[N[(1.0 + t$95$4), $MachinePrecision]], $MachinePrecision] + t$95$7), $MachinePrecision]), $MachinePrecision] + N[(t$95$2 - N[(t$95$6 - t$95$8), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]]]]]]]]]]
                                                                                                                                                                        
                                                                                                                                                                        f(x, y, z, t):
                                                                                                                                                                        	x in [-inf, +inf],
                                                                                                                                                                        	y in [-inf, +inf],
                                                                                                                                                                        	z in [-inf, +inf],
                                                                                                                                                                        	t in [-inf, +inf]
                                                                                                                                                                        code: THEORY
                                                                                                                                                                        BEGIN
                                                                                                                                                                        f(x, y, z, t: real): real =
                                                                                                                                                                        	LET tmp_2 = IF (x < y) THEN x ELSE y ENDIF IN
                                                                                                                                                                        	LET tmp_3 = IF (x < y) THEN x ELSE y ENDIF IN
                                                                                                                                                                        	LET tmp_1 = IF (tmp_2 > z) THEN tmp_3 ELSE z ENDIF IN
                                                                                                                                                                        	LET t_1 = tmp_1 IN
                                                                                                                                                                        		LET t_2 = ((sqrt((t_1 + (1)))) - (sqrt(t_1))) IN
                                                                                                                                                                        			LET tmp_6 = IF (x < y) THEN x ELSE y ENDIF IN
                                                                                                                                                                        			LET tmp_7 = IF (x < y) THEN x ELSE y ENDIF IN
                                                                                                                                                                        			LET tmp_5 = IF (tmp_6 < z) THEN tmp_7 ELSE z ENDIF IN
                                                                                                                                                                        			LET t_3 = tmp_5 IN
                                                                                                                                                                        				LET tmp_8 = IF (t_3 < t) THEN t_3 ELSE t ENDIF IN
                                                                                                                                                                        				LET t_4 = tmp_8 IN
                                                                                                                                                                        					LET tmp_9 = IF (t_3 > t) THEN t_3 ELSE t ENDIF IN
                                                                                                                                                                        					LET t_5 = tmp_9 IN
                                                                                                                                                                        						LET t_6 = (sqrt(t_5)) IN
                                                                                                                                                                        							LET t_7 = (sqrt(t_4)) IN
                                                                                                                                                                        								LET t_8 = (sqrt((t_5 + (1)))) IN
                                                                                                                                                                        									LET tmp_13 = IF (x > y) THEN x ELSE y ENDIF IN
                                                                                                                                                                        									LET tmp_14 = IF (x > y) THEN x ELSE y ENDIF IN
                                                                                                                                                                        									LET tmp_15 = IF (x > y) THEN x ELSE y ENDIF IN
                                                                                                                                                                        									LET tmp_12 = IF (tmp_13 <= (1200022546260340751408815931392)) THEN (((((sqrt((t_4 + (1)))) - t_7) + ((sqrt((tmp_14 + (1)))) - (sqrt(tmp_15)))) + t_2) + (t_8 - t_6)) ELSE (((1) / ((sqrt(((1) + t_4))) + t_7)) + (t_2 - (t_6 - t_8))) ENDIF IN
                                                                                                                                                                        	tmp_12
                                                                                                                                                                        END code
                                                                                                                                                                        \begin{array}{l}
                                                                                                                                                                        t_1 := \mathsf{max}\left(\mathsf{min}\left(x, y\right), z\right)\\
                                                                                                                                                                        t_2 := \sqrt{t\_1 + 1} - \sqrt{t\_1}\\
                                                                                                                                                                        t_3 := \mathsf{min}\left(\mathsf{min}\left(x, y\right), z\right)\\
                                                                                                                                                                        t_4 := \mathsf{min}\left(t\_3, t\right)\\
                                                                                                                                                                        t_5 := \mathsf{max}\left(t\_3, t\right)\\
                                                                                                                                                                        t_6 := \sqrt{t\_5}\\
                                                                                                                                                                        t_7 := \sqrt{t\_4}\\
                                                                                                                                                                        t_8 := \sqrt{t\_5 + 1}\\
                                                                                                                                                                        \mathbf{if}\;\mathsf{max}\left(x, y\right) \leq 1.2000225462603408 \cdot 10^{+30}:\\
                                                                                                                                                                        \;\;\;\;\left(\left(\left(\sqrt{t\_4 + 1} - t\_7\right) + \left(\sqrt{\mathsf{max}\left(x, y\right) + 1} - \sqrt{\mathsf{max}\left(x, y\right)}\right)\right) + t\_2\right) + \left(t\_8 - t\_6\right)\\
                                                                                                                                                                        
                                                                                                                                                                        \mathbf{else}:\\
                                                                                                                                                                        \;\;\;\;\frac{1}{\sqrt{1 + t\_4} + t\_7} + \left(t\_2 - \left(t\_6 - t\_8\right)\right)\\
                                                                                                                                                                        
                                                                                                                                                                        
                                                                                                                                                                        \end{array}
                                                                                                                                                                        
                                                                                                                                                                        Derivation
                                                                                                                                                                        1. Split input into 2 regimes
                                                                                                                                                                        2. if y < 1.2000225462603408e30

                                                                                                                                                                          1. Initial program 92.0%

                                                                                                                                                                            \[\left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]

                                                                                                                                                                          if 1.2000225462603408e30 < y

                                                                                                                                                                          1. Initial program 92.0%

                                                                                                                                                                            \[\left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                          2. Step-by-step derivation
                                                                                                                                                                            1. Applied rewrites94.0%

                                                                                                                                                                              \[\leadsto \left(\left(\frac{1}{\sqrt{x} + \sqrt{1 + x}} + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                            2. Taylor expanded in y around inf

                                                                                                                                                                              \[\leadsto \left(\frac{1}{\sqrt{x} + \sqrt{1 + x}} + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                            3. Step-by-step derivation
                                                                                                                                                                              1. Applied rewrites52.4%

                                                                                                                                                                                \[\leadsto \left(\frac{1}{\sqrt{x} + \sqrt{1 + x}} + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                              2. Applied rewrites52.4%

                                                                                                                                                                                \[\leadsto \frac{1}{\sqrt{1 + x} + \sqrt{x}} + \left(\left(\sqrt{z + 1} - \sqrt{z}\right) - \left(\sqrt{t} - \sqrt{t + 1}\right)\right) \]
                                                                                                                                                                            4. Recombined 2 regimes into one program.
                                                                                                                                                                            5. Add Preprocessing

                                                                                                                                                                            Alternative 14: 95.4% accurate, 0.1× speedup?

                                                                                                                                                                            \[\begin{array}{l} t_1 := \mathsf{max}\left(\mathsf{min}\left(x, y\right), z\right)\\ t_2 := \mathsf{max}\left(\mathsf{max}\left(x, y\right), t\_1\right)\\ t_3 := \mathsf{min}\left(\mathsf{max}\left(x, y\right), t\_1\right)\\ t_4 := \mathsf{min}\left(\mathsf{min}\left(x, y\right), z\right)\\ t_5 := \mathsf{min}\left(t\_4, t\right)\\ t_6 := \sqrt{t\_5}\\ t_7 := \mathsf{max}\left(t\_4, t\right)\\ t_8 := \mathsf{max}\left(t\_3, t\_7\right)\\ t_9 := \mathsf{min}\left(t\_2, t\_8\right)\\ t_10 := \mathsf{min}\left(t\_3, t\_7\right)\\ t_11 := \mathsf{max}\left(t\_2, t\_8\right)\\ t_12 := \sqrt{t\_9}\\ t_13 := \sqrt{t\_9 + 1} - t\_12\\ t_14 := \sqrt{t\_10}\\ t_15 := \left(\left(\sqrt{t\_5 + 1} - t\_6\right) + \left(\sqrt{t\_10 + 1} - t\_14\right)\right) + t\_13\\ \mathbf{if}\;t\_15 \leq 0:\\ \;\;\;\;\mathsf{fma}\left(0.5, \frac{1}{t\_5 \cdot \sqrt{\frac{1}{t\_5}}}, \frac{1}{t\_12 + \sqrt{1 + t\_9}}\right)\\ \mathbf{elif}\;t\_15 \leq 1:\\ \;\;\;\;\left(\sqrt{1 + t\_5} + \frac{1}{1 + t\_12}\right) - t\_6\\ \mathbf{elif}\;t\_15 \leq 2.999995:\\ \;\;\;\;\left(\left(1 + \sqrt{1 + t\_10}\right) - t\_6\right) - \left(t\_14 - t\_13\right)\\ \mathbf{else}:\\ \;\;\;\;\left(\left(2 - \left(t\_6 + t\_14\right)\right) + \left(1 - t\_12\right)\right) + \left(\sqrt{t\_11 + 1} - \sqrt{t\_11}\right)\\ \end{array} \]
                                                                                                                                                                            (FPCore (x y z t)
                                                                                                                                                                              :precision binary64
                                                                                                                                                                              :pre TRUE
                                                                                                                                                                              (let* ((t_1 (fmax (fmin x y) z))
                                                                                                                                                                                   (t_2 (fmax (fmax x y) t_1))
                                                                                                                                                                                   (t_3 (fmin (fmax x y) t_1))
                                                                                                                                                                                   (t_4 (fmin (fmin x y) z))
                                                                                                                                                                                   (t_5 (fmin t_4 t))
                                                                                                                                                                                   (t_6 (sqrt t_5))
                                                                                                                                                                                   (t_7 (fmax t_4 t))
                                                                                                                                                                                   (t_8 (fmax t_3 t_7))
                                                                                                                                                                                   (t_9 (fmin t_2 t_8))
                                                                                                                                                                                   (t_10 (fmin t_3 t_7))
                                                                                                                                                                                   (t_11 (fmax t_2 t_8))
                                                                                                                                                                                   (t_12 (sqrt t_9))
                                                                                                                                                                                   (t_13 (- (sqrt (+ t_9 1.0)) t_12))
                                                                                                                                                                                   (t_14 (sqrt t_10))
                                                                                                                                                                                   (t_15
                                                                                                                                                                                    (+
                                                                                                                                                                                     (+ (- (sqrt (+ t_5 1.0)) t_6) (- (sqrt (+ t_10 1.0)) t_14))
                                                                                                                                                                                     t_13)))
                                                                                                                                                                              (if (<= t_15 0.0)
                                                                                                                                                                                (fma
                                                                                                                                                                                 0.5
                                                                                                                                                                                 (/ 1.0 (* t_5 (sqrt (/ 1.0 t_5))))
                                                                                                                                                                                 (/ 1.0 (+ t_12 (sqrt (+ 1.0 t_9)))))
                                                                                                                                                                                (if (<= t_15 1.0)
                                                                                                                                                                                  (- (+ (sqrt (+ 1.0 t_5)) (/ 1.0 (+ 1.0 t_12))) t_6)
                                                                                                                                                                                  (if (<= t_15 2.999995)
                                                                                                                                                                                    (- (- (+ 1.0 (sqrt (+ 1.0 t_10))) t_6) (- t_14 t_13))
                                                                                                                                                                                    (+
                                                                                                                                                                                     (+ (- 2.0 (+ t_6 t_14)) (- 1.0 t_12))
                                                                                                                                                                                     (- (sqrt (+ t_11 1.0)) (sqrt t_11))))))))
                                                                                                                                                                            double code(double x, double y, double z, double t) {
                                                                                                                                                                            	double t_1 = fmax(fmin(x, y), z);
                                                                                                                                                                            	double t_2 = fmax(fmax(x, y), t_1);
                                                                                                                                                                            	double t_3 = fmin(fmax(x, y), t_1);
                                                                                                                                                                            	double t_4 = fmin(fmin(x, y), z);
                                                                                                                                                                            	double t_5 = fmin(t_4, t);
                                                                                                                                                                            	double t_6 = sqrt(t_5);
                                                                                                                                                                            	double t_7 = fmax(t_4, t);
                                                                                                                                                                            	double t_8 = fmax(t_3, t_7);
                                                                                                                                                                            	double t_9 = fmin(t_2, t_8);
                                                                                                                                                                            	double t_10 = fmin(t_3, t_7);
                                                                                                                                                                            	double t_11 = fmax(t_2, t_8);
                                                                                                                                                                            	double t_12 = sqrt(t_9);
                                                                                                                                                                            	double t_13 = sqrt((t_9 + 1.0)) - t_12;
                                                                                                                                                                            	double t_14 = sqrt(t_10);
                                                                                                                                                                            	double t_15 = ((sqrt((t_5 + 1.0)) - t_6) + (sqrt((t_10 + 1.0)) - t_14)) + t_13;
                                                                                                                                                                            	double tmp;
                                                                                                                                                                            	if (t_15 <= 0.0) {
                                                                                                                                                                            		tmp = fma(0.5, (1.0 / (t_5 * sqrt((1.0 / t_5)))), (1.0 / (t_12 + sqrt((1.0 + t_9)))));
                                                                                                                                                                            	} else if (t_15 <= 1.0) {
                                                                                                                                                                            		tmp = (sqrt((1.0 + t_5)) + (1.0 / (1.0 + t_12))) - t_6;
                                                                                                                                                                            	} else if (t_15 <= 2.999995) {
                                                                                                                                                                            		tmp = ((1.0 + sqrt((1.0 + t_10))) - t_6) - (t_14 - t_13);
                                                                                                                                                                            	} else {
                                                                                                                                                                            		tmp = ((2.0 - (t_6 + t_14)) + (1.0 - t_12)) + (sqrt((t_11 + 1.0)) - sqrt(t_11));
                                                                                                                                                                            	}
                                                                                                                                                                            	return tmp;
                                                                                                                                                                            }
                                                                                                                                                                            
                                                                                                                                                                            function code(x, y, z, t)
                                                                                                                                                                            	t_1 = fmax(fmin(x, y), z)
                                                                                                                                                                            	t_2 = fmax(fmax(x, y), t_1)
                                                                                                                                                                            	t_3 = fmin(fmax(x, y), t_1)
                                                                                                                                                                            	t_4 = fmin(fmin(x, y), z)
                                                                                                                                                                            	t_5 = fmin(t_4, t)
                                                                                                                                                                            	t_6 = sqrt(t_5)
                                                                                                                                                                            	t_7 = fmax(t_4, t)
                                                                                                                                                                            	t_8 = fmax(t_3, t_7)
                                                                                                                                                                            	t_9 = fmin(t_2, t_8)
                                                                                                                                                                            	t_10 = fmin(t_3, t_7)
                                                                                                                                                                            	t_11 = fmax(t_2, t_8)
                                                                                                                                                                            	t_12 = sqrt(t_9)
                                                                                                                                                                            	t_13 = Float64(sqrt(Float64(t_9 + 1.0)) - t_12)
                                                                                                                                                                            	t_14 = sqrt(t_10)
                                                                                                                                                                            	t_15 = Float64(Float64(Float64(sqrt(Float64(t_5 + 1.0)) - t_6) + Float64(sqrt(Float64(t_10 + 1.0)) - t_14)) + t_13)
                                                                                                                                                                            	tmp = 0.0
                                                                                                                                                                            	if (t_15 <= 0.0)
                                                                                                                                                                            		tmp = fma(0.5, Float64(1.0 / Float64(t_5 * sqrt(Float64(1.0 / t_5)))), Float64(1.0 / Float64(t_12 + sqrt(Float64(1.0 + t_9)))));
                                                                                                                                                                            	elseif (t_15 <= 1.0)
                                                                                                                                                                            		tmp = Float64(Float64(sqrt(Float64(1.0 + t_5)) + Float64(1.0 / Float64(1.0 + t_12))) - t_6);
                                                                                                                                                                            	elseif (t_15 <= 2.999995)
                                                                                                                                                                            		tmp = Float64(Float64(Float64(1.0 + sqrt(Float64(1.0 + t_10))) - t_6) - Float64(t_14 - t_13));
                                                                                                                                                                            	else
                                                                                                                                                                            		tmp = Float64(Float64(Float64(2.0 - Float64(t_6 + t_14)) + Float64(1.0 - t_12)) + Float64(sqrt(Float64(t_11 + 1.0)) - sqrt(t_11)));
                                                                                                                                                                            	end
                                                                                                                                                                            	return tmp
                                                                                                                                                                            end
                                                                                                                                                                            
                                                                                                                                                                            code[x_, y_, z_, t_] := Block[{t$95$1 = N[Max[N[Min[x, y], $MachinePrecision], z], $MachinePrecision]}, Block[{t$95$2 = N[Max[N[Max[x, y], $MachinePrecision], t$95$1], $MachinePrecision]}, Block[{t$95$3 = N[Min[N[Max[x, y], $MachinePrecision], t$95$1], $MachinePrecision]}, Block[{t$95$4 = N[Min[N[Min[x, y], $MachinePrecision], z], $MachinePrecision]}, Block[{t$95$5 = N[Min[t$95$4, t], $MachinePrecision]}, Block[{t$95$6 = N[Sqrt[t$95$5], $MachinePrecision]}, Block[{t$95$7 = N[Max[t$95$4, t], $MachinePrecision]}, Block[{t$95$8 = N[Max[t$95$3, t$95$7], $MachinePrecision]}, Block[{t$95$9 = N[Min[t$95$2, t$95$8], $MachinePrecision]}, Block[{t$95$10 = N[Min[t$95$3, t$95$7], $MachinePrecision]}, Block[{t$95$11 = N[Max[t$95$2, t$95$8], $MachinePrecision]}, Block[{t$95$12 = N[Sqrt[t$95$9], $MachinePrecision]}, Block[{t$95$13 = N[(N[Sqrt[N[(t$95$9 + 1.0), $MachinePrecision]], $MachinePrecision] - t$95$12), $MachinePrecision]}, Block[{t$95$14 = N[Sqrt[t$95$10], $MachinePrecision]}, Block[{t$95$15 = N[(N[(N[(N[Sqrt[N[(t$95$5 + 1.0), $MachinePrecision]], $MachinePrecision] - t$95$6), $MachinePrecision] + N[(N[Sqrt[N[(t$95$10 + 1.0), $MachinePrecision]], $MachinePrecision] - t$95$14), $MachinePrecision]), $MachinePrecision] + t$95$13), $MachinePrecision]}, If[LessEqual[t$95$15, 0.0], N[(0.5 * N[(1.0 / N[(t$95$5 * N[Sqrt[N[(1.0 / t$95$5), $MachinePrecision]], $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + N[(1.0 / N[(t$95$12 + N[Sqrt[N[(1.0 + t$95$9), $MachinePrecision]], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[t$95$15, 1.0], N[(N[(N[Sqrt[N[(1.0 + t$95$5), $MachinePrecision]], $MachinePrecision] + N[(1.0 / N[(1.0 + t$95$12), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] - t$95$6), $MachinePrecision], If[LessEqual[t$95$15, 2.999995], N[(N[(N[(1.0 + N[Sqrt[N[(1.0 + t$95$10), $MachinePrecision]], $MachinePrecision]), $MachinePrecision] - t$95$6), $MachinePrecision] - N[(t$95$14 - t$95$13), $MachinePrecision]), $MachinePrecision], N[(N[(N[(2.0 - N[(t$95$6 + t$95$14), $MachinePrecision]), $MachinePrecision] + N[(1.0 - t$95$12), $MachinePrecision]), $MachinePrecision] + N[(N[Sqrt[N[(t$95$11 + 1.0), $MachinePrecision]], $MachinePrecision] - N[Sqrt[t$95$11], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]]]]]]]]]]]]]]]]]]]
                                                                                                                                                                            
                                                                                                                                                                            f(x, y, z, t):
                                                                                                                                                                            	x in [-inf, +inf],
                                                                                                                                                                            	y in [-inf, +inf],
                                                                                                                                                                            	z in [-inf, +inf],
                                                                                                                                                                            	t in [-inf, +inf]
                                                                                                                                                                            code: THEORY
                                                                                                                                                                            BEGIN
                                                                                                                                                                            f(x, y, z, t: real): real =
                                                                                                                                                                            	LET tmp_2 = IF (x < y) THEN x ELSE y ENDIF IN
                                                                                                                                                                            	LET tmp_3 = IF (x < y) THEN x ELSE y ENDIF IN
                                                                                                                                                                            	LET tmp_1 = IF (tmp_2 > z) THEN tmp_3 ELSE z ENDIF IN
                                                                                                                                                                            	LET t_1 = tmp_1 IN
                                                                                                                                                                            		LET tmp_6 = IF (x > y) THEN x ELSE y ENDIF IN
                                                                                                                                                                            		LET tmp_7 = IF (x > y) THEN x ELSE y ENDIF IN
                                                                                                                                                                            		LET tmp_5 = IF (tmp_6 > t_1) THEN tmp_7 ELSE t_1 ENDIF IN
                                                                                                                                                                            		LET t_2 = tmp_5 IN
                                                                                                                                                                            			LET tmp_10 = IF (x > y) THEN x ELSE y ENDIF IN
                                                                                                                                                                            			LET tmp_11 = IF (x > y) THEN x ELSE y ENDIF IN
                                                                                                                                                                            			LET tmp_9 = IF (tmp_10 < t_1) THEN tmp_11 ELSE t_1 ENDIF IN
                                                                                                                                                                            			LET t_3 = tmp_9 IN
                                                                                                                                                                            				LET tmp_14 = IF (x < y) THEN x ELSE y ENDIF IN
                                                                                                                                                                            				LET tmp_15 = IF (x < y) THEN x ELSE y ENDIF IN
                                                                                                                                                                            				LET tmp_13 = IF (tmp_14 < z) THEN tmp_15 ELSE z ENDIF IN
                                                                                                                                                                            				LET t_4 = tmp_13 IN
                                                                                                                                                                            					LET tmp_16 = IF (t_4 < t) THEN t_4 ELSE t ENDIF IN
                                                                                                                                                                            					LET t_5 = tmp_16 IN
                                                                                                                                                                            						LET t_6 = (sqrt(t_5)) IN
                                                                                                                                                                            							LET tmp_17 = IF (t_4 > t) THEN t_4 ELSE t ENDIF IN
                                                                                                                                                                            							LET t_7 = tmp_17 IN
                                                                                                                                                                            								LET tmp_18 = IF (t_3 > t_7) THEN t_3 ELSE t_7 ENDIF IN
                                                                                                                                                                            								LET t_8 = tmp_18 IN
                                                                                                                                                                            									LET tmp_19 = IF (t_2 < t_8) THEN t_2 ELSE t_8 ENDIF IN
                                                                                                                                                                            									LET t_9 = tmp_19 IN
                                                                                                                                                                            										LET tmp_20 = IF (t_3 < t_7) THEN t_3 ELSE t_7 ENDIF IN
                                                                                                                                                                            										LET t_10 = tmp_20 IN
                                                                                                                                                                            											LET tmp_21 = IF (t_2 > t_8) THEN t_2 ELSE t_8 ENDIF IN
                                                                                                                                                                            											LET t_11 = tmp_21 IN
                                                                                                                                                                            												LET t_12 = (sqrt(t_9)) IN
                                                                                                                                                                            													LET t_13 = ((sqrt((t_9 + (1)))) - t_12) IN
                                                                                                                                                                            														LET t_14 = (sqrt(t_10)) IN
                                                                                                                                                                            															LET t_15 = ((((sqrt((t_5 + (1)))) - t_6) + ((sqrt((t_10 + (1)))) - t_14)) + t_13) IN
                                                                                                                                                                            																LET tmp_24 = IF (t_15 <= (29999950000000001892885848064906895160675048828125e-49)) THEN ((((1) + (sqrt(((1) + t_10)))) - t_6) - (t_14 - t_13)) ELSE ((((2) - (t_6 + t_14)) + ((1) - t_12)) + ((sqrt((t_11 + (1)))) - (sqrt(t_11)))) ENDIF IN
                                                                                                                                                                            																LET tmp_23 = IF (t_15 <= (1)) THEN (((sqrt(((1) + t_5))) + ((1) / ((1) + t_12))) - t_6) ELSE tmp_24 ENDIF IN
                                                                                                                                                                            																LET tmp_22 = IF (t_15 <= (0)) THEN (((5e-1) * ((1) / (t_5 * (sqrt(((1) / t_5)))))) + ((1) / (t_12 + (sqrt(((1) + t_9)))))) ELSE tmp_23 ENDIF IN
                                                                                                                                                                            	tmp_22
                                                                                                                                                                            END code
                                                                                                                                                                            \begin{array}{l}
                                                                                                                                                                            t_1 := \mathsf{max}\left(\mathsf{min}\left(x, y\right), z\right)\\
                                                                                                                                                                            t_2 := \mathsf{max}\left(\mathsf{max}\left(x, y\right), t\_1\right)\\
                                                                                                                                                                            t_3 := \mathsf{min}\left(\mathsf{max}\left(x, y\right), t\_1\right)\\
                                                                                                                                                                            t_4 := \mathsf{min}\left(\mathsf{min}\left(x, y\right), z\right)\\
                                                                                                                                                                            t_5 := \mathsf{min}\left(t\_4, t\right)\\
                                                                                                                                                                            t_6 := \sqrt{t\_5}\\
                                                                                                                                                                            t_7 := \mathsf{max}\left(t\_4, t\right)\\
                                                                                                                                                                            t_8 := \mathsf{max}\left(t\_3, t\_7\right)\\
                                                                                                                                                                            t_9 := \mathsf{min}\left(t\_2, t\_8\right)\\
                                                                                                                                                                            t_10 := \mathsf{min}\left(t\_3, t\_7\right)\\
                                                                                                                                                                            t_11 := \mathsf{max}\left(t\_2, t\_8\right)\\
                                                                                                                                                                            t_12 := \sqrt{t\_9}\\
                                                                                                                                                                            t_13 := \sqrt{t\_9 + 1} - t\_12\\
                                                                                                                                                                            t_14 := \sqrt{t\_10}\\
                                                                                                                                                                            t_15 := \left(\left(\sqrt{t\_5 + 1} - t\_6\right) + \left(\sqrt{t\_10 + 1} - t\_14\right)\right) + t\_13\\
                                                                                                                                                                            \mathbf{if}\;t\_15 \leq 0:\\
                                                                                                                                                                            \;\;\;\;\mathsf{fma}\left(0.5, \frac{1}{t\_5 \cdot \sqrt{\frac{1}{t\_5}}}, \frac{1}{t\_12 + \sqrt{1 + t\_9}}\right)\\
                                                                                                                                                                            
                                                                                                                                                                            \mathbf{elif}\;t\_15 \leq 1:\\
                                                                                                                                                                            \;\;\;\;\left(\sqrt{1 + t\_5} + \frac{1}{1 + t\_12}\right) - t\_6\\
                                                                                                                                                                            
                                                                                                                                                                            \mathbf{elif}\;t\_15 \leq 2.999995:\\
                                                                                                                                                                            \;\;\;\;\left(\left(1 + \sqrt{1 + t\_10}\right) - t\_6\right) - \left(t\_14 - t\_13\right)\\
                                                                                                                                                                            
                                                                                                                                                                            \mathbf{else}:\\
                                                                                                                                                                            \;\;\;\;\left(\left(2 - \left(t\_6 + t\_14\right)\right) + \left(1 - t\_12\right)\right) + \left(\sqrt{t\_11 + 1} - \sqrt{t\_11}\right)\\
                                                                                                                                                                            
                                                                                                                                                                            
                                                                                                                                                                            \end{array}
                                                                                                                                                                            
                                                                                                                                                                            Derivation
                                                                                                                                                                            1. Split input into 4 regimes
                                                                                                                                                                            2. if (+.f64 (+.f64 (-.f64 (sqrt.f64 (+.f64 x #s(literal 1 binary64))) (sqrt.f64 x)) (-.f64 (sqrt.f64 (+.f64 y #s(literal 1 binary64))) (sqrt.f64 y))) (-.f64 (sqrt.f64 (+.f64 z #s(literal 1 binary64))) (sqrt.f64 z))) < 0.0

                                                                                                                                                                              1. Initial program 92.0%

                                                                                                                                                                                \[\left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                              2. Step-by-step derivation
                                                                                                                                                                                1. Applied rewrites93.8%

                                                                                                                                                                                  \[\leadsto \left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \frac{1}{\sqrt{z} + \sqrt{z + 1}}\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                2. Taylor expanded in t around inf

                                                                                                                                                                                  \[\leadsto \left(\sqrt{1 + x} + \left(\sqrt{1 + y} + \frac{1}{\sqrt{z} + \sqrt{1 + z}}\right)\right) - \left(\sqrt{x} + \sqrt{y}\right) \]
                                                                                                                                                                                3. Step-by-step derivation
                                                                                                                                                                                  1. Applied rewrites19.3%

                                                                                                                                                                                    \[\leadsto \left(\sqrt{1 + x} + \left(\sqrt{1 + y} + \frac{1}{\sqrt{z} + \sqrt{1 + z}}\right)\right) - \left(\sqrt{x} + \sqrt{y}\right) \]
                                                                                                                                                                                  2. Taylor expanded in y around inf

                                                                                                                                                                                    \[\leadsto \left(\sqrt{1 + x} + \frac{1}{\sqrt{z} + \sqrt{1 + z}}\right) - \sqrt{x} \]
                                                                                                                                                                                  3. Step-by-step derivation
                                                                                                                                                                                    1. Applied rewrites21.6%

                                                                                                                                                                                      \[\leadsto \left(\sqrt{1 + x} + \frac{1}{\sqrt{z} + \sqrt{1 + z}}\right) - \sqrt{x} \]
                                                                                                                                                                                    2. Taylor expanded in x around inf

                                                                                                                                                                                      \[\leadsto \frac{1}{2} \cdot \frac{1}{x \cdot \sqrt{\frac{1}{x}}} + \frac{1}{\sqrt{z} + \sqrt{1 + z}} \]
                                                                                                                                                                                    3. Step-by-step derivation
                                                                                                                                                                                      1. Applied rewrites17.0%

                                                                                                                                                                                        \[\leadsto \mathsf{fma}\left(0.5, \frac{1}{x \cdot \sqrt{\frac{1}{x}}}, \frac{1}{\sqrt{z} + \sqrt{1 + z}}\right) \]

                                                                                                                                                                                      if 0.0 < (+.f64 (+.f64 (-.f64 (sqrt.f64 (+.f64 x #s(literal 1 binary64))) (sqrt.f64 x)) (-.f64 (sqrt.f64 (+.f64 y #s(literal 1 binary64))) (sqrt.f64 y))) (-.f64 (sqrt.f64 (+.f64 z #s(literal 1 binary64))) (sqrt.f64 z))) < 1

                                                                                                                                                                                      1. Initial program 92.0%

                                                                                                                                                                                        \[\left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                      2. Step-by-step derivation
                                                                                                                                                                                        1. Applied rewrites93.8%

                                                                                                                                                                                          \[\leadsto \left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \frac{1}{\sqrt{z} + \sqrt{z + 1}}\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                        2. Taylor expanded in t around inf

                                                                                                                                                                                          \[\leadsto \left(\sqrt{1 + x} + \left(\sqrt{1 + y} + \frac{1}{\sqrt{z} + \sqrt{1 + z}}\right)\right) - \left(\sqrt{x} + \sqrt{y}\right) \]
                                                                                                                                                                                        3. Step-by-step derivation
                                                                                                                                                                                          1. Applied rewrites19.3%

                                                                                                                                                                                            \[\leadsto \left(\sqrt{1 + x} + \left(\sqrt{1 + y} + \frac{1}{\sqrt{z} + \sqrt{1 + z}}\right)\right) - \left(\sqrt{x} + \sqrt{y}\right) \]
                                                                                                                                                                                          2. Taylor expanded in y around inf

                                                                                                                                                                                            \[\leadsto \left(\sqrt{1 + x} + \frac{1}{\sqrt{z} + \sqrt{1 + z}}\right) - \sqrt{x} \]
                                                                                                                                                                                          3. Step-by-step derivation
                                                                                                                                                                                            1. Applied rewrites21.6%

                                                                                                                                                                                              \[\leadsto \left(\sqrt{1 + x} + \frac{1}{\sqrt{z} + \sqrt{1 + z}}\right) - \sqrt{x} \]
                                                                                                                                                                                            2. Taylor expanded in z around 0

                                                                                                                                                                                              \[\leadsto \left(\sqrt{1 + x} + \frac{1}{1 + \sqrt{z}}\right) - \sqrt{x} \]
                                                                                                                                                                                            3. Step-by-step derivation
                                                                                                                                                                                              1. Applied rewrites21.3%

                                                                                                                                                                                                \[\leadsto \left(\sqrt{1 + x} + \frac{1}{1 + \sqrt{z}}\right) - \sqrt{x} \]

                                                                                                                                                                                              if 1 < (+.f64 (+.f64 (-.f64 (sqrt.f64 (+.f64 x #s(literal 1 binary64))) (sqrt.f64 x)) (-.f64 (sqrt.f64 (+.f64 y #s(literal 1 binary64))) (sqrt.f64 y))) (-.f64 (sqrt.f64 (+.f64 z #s(literal 1 binary64))) (sqrt.f64 z))) < 2.9999950000000002

                                                                                                                                                                                              1. Initial program 92.0%

                                                                                                                                                                                                \[\left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                              2. Step-by-step derivation
                                                                                                                                                                                                1. Applied rewrites54.5%

                                                                                                                                                                                                  \[\leadsto \left(\left(\sqrt{t + 1} - \sqrt{t}\right) + \left(\sqrt{y + 1} - \left(\sqrt{x} - \sqrt{1 + x}\right)\right)\right) - \left(\sqrt{y} - \left(\sqrt{z + 1} - \sqrt{z}\right)\right) \]
                                                                                                                                                                                                2. Taylor expanded in t around inf

                                                                                                                                                                                                  \[\leadsto \left(\left(\sqrt{1 + x} + \sqrt{1 + y}\right) - \sqrt{x}\right) - \left(\sqrt{y} - \left(\sqrt{z + 1} - \sqrt{z}\right)\right) \]
                                                                                                                                                                                                3. Step-by-step derivation
                                                                                                                                                                                                  1. Applied rewrites20.8%

                                                                                                                                                                                                    \[\leadsto \left(\left(\sqrt{1 + x} + \sqrt{1 + y}\right) - \sqrt{x}\right) - \left(\sqrt{y} - \left(\sqrt{z + 1} - \sqrt{z}\right)\right) \]
                                                                                                                                                                                                  2. Taylor expanded in x around 0

                                                                                                                                                                                                    \[\leadsto \left(\left(1 + \sqrt{1 + y}\right) - \sqrt{x}\right) - \left(\sqrt{y} - \left(\sqrt{z + 1} - \sqrt{z}\right)\right) \]
                                                                                                                                                                                                  3. Step-by-step derivation
                                                                                                                                                                                                    1. Applied rewrites16.9%

                                                                                                                                                                                                      \[\leadsto \left(\left(1 + \sqrt{1 + y}\right) - \sqrt{x}\right) - \left(\sqrt{y} - \left(\sqrt{z + 1} - \sqrt{z}\right)\right) \]

                                                                                                                                                                                                    if 2.9999950000000002 < (+.f64 (+.f64 (-.f64 (sqrt.f64 (+.f64 x #s(literal 1 binary64))) (sqrt.f64 x)) (-.f64 (sqrt.f64 (+.f64 y #s(literal 1 binary64))) (sqrt.f64 y))) (-.f64 (sqrt.f64 (+.f64 z #s(literal 1 binary64))) (sqrt.f64 z)))

                                                                                                                                                                                                    1. Initial program 92.0%

                                                                                                                                                                                                      \[\left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                    2. Taylor expanded in y around 0

                                                                                                                                                                                                      \[\leadsto \left(\left(\left(1 + \sqrt{1 + x}\right) - \left(\sqrt{x} + \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                    3. Step-by-step derivation
                                                                                                                                                                                                      1. Applied rewrites36.9%

                                                                                                                                                                                                        \[\leadsto \left(\left(\left(1 + \sqrt{1 + x}\right) - \left(\sqrt{x} + \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                      2. Taylor expanded in x around 0

                                                                                                                                                                                                        \[\leadsto \left(\left(2 - \left(\sqrt{x} + \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                      3. Step-by-step derivation
                                                                                                                                                                                                        1. Applied rewrites24.5%

                                                                                                                                                                                                          \[\leadsto \left(\left(2 - \left(\sqrt{x} + \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                        2. Taylor expanded in z around 0

                                                                                                                                                                                                          \[\leadsto \left(\left(2 - \left(\sqrt{x} + \sqrt{y}\right)\right) + \left(1 - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                        3. Step-by-step derivation
                                                                                                                                                                                                          1. Applied rewrites13.0%

                                                                                                                                                                                                            \[\leadsto \left(\left(2 - \left(\sqrt{x} + \sqrt{y}\right)\right) + \left(1 - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                        4. Recombined 4 regimes into one program.
                                                                                                                                                                                                        5. Add Preprocessing

                                                                                                                                                                                                        Alternative 15: 95.4% accurate, 0.2× speedup?

                                                                                                                                                                                                        \[\begin{array}{l} t_1 := \mathsf{max}\left(\mathsf{min}\left(x, y\right), z\right)\\ t_2 := \mathsf{min}\left(\mathsf{min}\left(x, y\right), z\right)\\ t_3 := \mathsf{min}\left(t\_2, t\right)\\ t_4 := \sqrt{t\_3}\\ t_5 := \mathsf{max}\left(\mathsf{max}\left(x, y\right), t\_1\right)\\ t_6 := \sqrt{t\_5}\\ t_7 := \mathsf{max}\left(t\_2, t\right)\\ t_8 := \sqrt{t\_7 + 1} - \sqrt{t\_7}\\ t_9 := \mathsf{min}\left(\mathsf{max}\left(x, y\right), t\_1\right)\\ t_10 := \sqrt{t\_9}\\ t_11 := \left(\sqrt{t\_3 + 1} - t\_4\right) + \left(\sqrt{t\_9 + 1} - t\_10\right)\\ \mathbf{if}\;t\_11 \leq 0.2:\\ \;\;\;\;\mathsf{fma}\left(0.5, \frac{1}{t\_3 \cdot \sqrt{\frac{1}{t\_3}}}, \frac{1}{t\_6 + \sqrt{1 + t\_5}}\right)\\ \mathbf{elif}\;t\_11 \leq 1.999998:\\ \;\;\;\;\left(\left(1 + \frac{1}{t\_10 + \sqrt{1 + t\_9}}\right) - t\_4\right) + t\_8\\ \mathbf{else}:\\ \;\;\;\;\left(\left(2 - \left(t\_4 + t\_10\right)\right) + \left(\sqrt{t\_5 + 1} - t\_6\right)\right) + t\_8\\ \end{array} \]
                                                                                                                                                                                                        (FPCore (x y z t)
                                                                                                                                                                                                          :precision binary64
                                                                                                                                                                                                          :pre TRUE
                                                                                                                                                                                                          (let* ((t_1 (fmax (fmin x y) z))
                                                                                                                                                                                                               (t_2 (fmin (fmin x y) z))
                                                                                                                                                                                                               (t_3 (fmin t_2 t))
                                                                                                                                                                                                               (t_4 (sqrt t_3))
                                                                                                                                                                                                               (t_5 (fmax (fmax x y) t_1))
                                                                                                                                                                                                               (t_6 (sqrt t_5))
                                                                                                                                                                                                               (t_7 (fmax t_2 t))
                                                                                                                                                                                                               (t_8 (- (sqrt (+ t_7 1.0)) (sqrt t_7)))
                                                                                                                                                                                                               (t_9 (fmin (fmax x y) t_1))
                                                                                                                                                                                                               (t_10 (sqrt t_9))
                                                                                                                                                                                                               (t_11
                                                                                                                                                                                                                (+ (- (sqrt (+ t_3 1.0)) t_4) (- (sqrt (+ t_9 1.0)) t_10))))
                                                                                                                                                                                                          (if (<= t_11 0.2)
                                                                                                                                                                                                            (fma
                                                                                                                                                                                                             0.5
                                                                                                                                                                                                             (/ 1.0 (* t_3 (sqrt (/ 1.0 t_3))))
                                                                                                                                                                                                             (/ 1.0 (+ t_6 (sqrt (+ 1.0 t_5)))))
                                                                                                                                                                                                            (if (<= t_11 1.999998)
                                                                                                                                                                                                              (+ (- (+ 1.0 (/ 1.0 (+ t_10 (sqrt (+ 1.0 t_9))))) t_4) t_8)
                                                                                                                                                                                                              (+ (+ (- 2.0 (+ t_4 t_10)) (- (sqrt (+ t_5 1.0)) t_6)) t_8)))))
                                                                                                                                                                                                        double code(double x, double y, double z, double t) {
                                                                                                                                                                                                        	double t_1 = fmax(fmin(x, y), z);
                                                                                                                                                                                                        	double t_2 = fmin(fmin(x, y), z);
                                                                                                                                                                                                        	double t_3 = fmin(t_2, t);
                                                                                                                                                                                                        	double t_4 = sqrt(t_3);
                                                                                                                                                                                                        	double t_5 = fmax(fmax(x, y), t_1);
                                                                                                                                                                                                        	double t_6 = sqrt(t_5);
                                                                                                                                                                                                        	double t_7 = fmax(t_2, t);
                                                                                                                                                                                                        	double t_8 = sqrt((t_7 + 1.0)) - sqrt(t_7);
                                                                                                                                                                                                        	double t_9 = fmin(fmax(x, y), t_1);
                                                                                                                                                                                                        	double t_10 = sqrt(t_9);
                                                                                                                                                                                                        	double t_11 = (sqrt((t_3 + 1.0)) - t_4) + (sqrt((t_9 + 1.0)) - t_10);
                                                                                                                                                                                                        	double tmp;
                                                                                                                                                                                                        	if (t_11 <= 0.2) {
                                                                                                                                                                                                        		tmp = fma(0.5, (1.0 / (t_3 * sqrt((1.0 / t_3)))), (1.0 / (t_6 + sqrt((1.0 + t_5)))));
                                                                                                                                                                                                        	} else if (t_11 <= 1.999998) {
                                                                                                                                                                                                        		tmp = ((1.0 + (1.0 / (t_10 + sqrt((1.0 + t_9))))) - t_4) + t_8;
                                                                                                                                                                                                        	} else {
                                                                                                                                                                                                        		tmp = ((2.0 - (t_4 + t_10)) + (sqrt((t_5 + 1.0)) - t_6)) + t_8;
                                                                                                                                                                                                        	}
                                                                                                                                                                                                        	return tmp;
                                                                                                                                                                                                        }
                                                                                                                                                                                                        
                                                                                                                                                                                                        function code(x, y, z, t)
                                                                                                                                                                                                        	t_1 = fmax(fmin(x, y), z)
                                                                                                                                                                                                        	t_2 = fmin(fmin(x, y), z)
                                                                                                                                                                                                        	t_3 = fmin(t_2, t)
                                                                                                                                                                                                        	t_4 = sqrt(t_3)
                                                                                                                                                                                                        	t_5 = fmax(fmax(x, y), t_1)
                                                                                                                                                                                                        	t_6 = sqrt(t_5)
                                                                                                                                                                                                        	t_7 = fmax(t_2, t)
                                                                                                                                                                                                        	t_8 = Float64(sqrt(Float64(t_7 + 1.0)) - sqrt(t_7))
                                                                                                                                                                                                        	t_9 = fmin(fmax(x, y), t_1)
                                                                                                                                                                                                        	t_10 = sqrt(t_9)
                                                                                                                                                                                                        	t_11 = Float64(Float64(sqrt(Float64(t_3 + 1.0)) - t_4) + Float64(sqrt(Float64(t_9 + 1.0)) - t_10))
                                                                                                                                                                                                        	tmp = 0.0
                                                                                                                                                                                                        	if (t_11 <= 0.2)
                                                                                                                                                                                                        		tmp = fma(0.5, Float64(1.0 / Float64(t_3 * sqrt(Float64(1.0 / t_3)))), Float64(1.0 / Float64(t_6 + sqrt(Float64(1.0 + t_5)))));
                                                                                                                                                                                                        	elseif (t_11 <= 1.999998)
                                                                                                                                                                                                        		tmp = Float64(Float64(Float64(1.0 + Float64(1.0 / Float64(t_10 + sqrt(Float64(1.0 + t_9))))) - t_4) + t_8);
                                                                                                                                                                                                        	else
                                                                                                                                                                                                        		tmp = Float64(Float64(Float64(2.0 - Float64(t_4 + t_10)) + Float64(sqrt(Float64(t_5 + 1.0)) - t_6)) + t_8);
                                                                                                                                                                                                        	end
                                                                                                                                                                                                        	return tmp
                                                                                                                                                                                                        end
                                                                                                                                                                                                        
                                                                                                                                                                                                        code[x_, y_, z_, t_] := Block[{t$95$1 = N[Max[N[Min[x, y], $MachinePrecision], z], $MachinePrecision]}, Block[{t$95$2 = N[Min[N[Min[x, y], $MachinePrecision], z], $MachinePrecision]}, Block[{t$95$3 = N[Min[t$95$2, t], $MachinePrecision]}, Block[{t$95$4 = N[Sqrt[t$95$3], $MachinePrecision]}, Block[{t$95$5 = N[Max[N[Max[x, y], $MachinePrecision], t$95$1], $MachinePrecision]}, Block[{t$95$6 = N[Sqrt[t$95$5], $MachinePrecision]}, Block[{t$95$7 = N[Max[t$95$2, t], $MachinePrecision]}, Block[{t$95$8 = N[(N[Sqrt[N[(t$95$7 + 1.0), $MachinePrecision]], $MachinePrecision] - N[Sqrt[t$95$7], $MachinePrecision]), $MachinePrecision]}, Block[{t$95$9 = N[Min[N[Max[x, y], $MachinePrecision], t$95$1], $MachinePrecision]}, Block[{t$95$10 = N[Sqrt[t$95$9], $MachinePrecision]}, Block[{t$95$11 = N[(N[(N[Sqrt[N[(t$95$3 + 1.0), $MachinePrecision]], $MachinePrecision] - t$95$4), $MachinePrecision] + N[(N[Sqrt[N[(t$95$9 + 1.0), $MachinePrecision]], $MachinePrecision] - t$95$10), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[t$95$11, 0.2], N[(0.5 * N[(1.0 / N[(t$95$3 * N[Sqrt[N[(1.0 / t$95$3), $MachinePrecision]], $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + N[(1.0 / N[(t$95$6 + N[Sqrt[N[(1.0 + t$95$5), $MachinePrecision]], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[t$95$11, 1.999998], N[(N[(N[(1.0 + N[(1.0 / N[(t$95$10 + N[Sqrt[N[(1.0 + t$95$9), $MachinePrecision]], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] - t$95$4), $MachinePrecision] + t$95$8), $MachinePrecision], N[(N[(N[(2.0 - N[(t$95$4 + t$95$10), $MachinePrecision]), $MachinePrecision] + N[(N[Sqrt[N[(t$95$5 + 1.0), $MachinePrecision]], $MachinePrecision] - t$95$6), $MachinePrecision]), $MachinePrecision] + t$95$8), $MachinePrecision]]]]]]]]]]]]]]
                                                                                                                                                                                                        
                                                                                                                                                                                                        f(x, y, z, t):
                                                                                                                                                                                                        	x in [-inf, +inf],
                                                                                                                                                                                                        	y in [-inf, +inf],
                                                                                                                                                                                                        	z in [-inf, +inf],
                                                                                                                                                                                                        	t in [-inf, +inf]
                                                                                                                                                                                                        code: THEORY
                                                                                                                                                                                                        BEGIN
                                                                                                                                                                                                        f(x, y, z, t: real): real =
                                                                                                                                                                                                        	LET tmp_2 = IF (x < y) THEN x ELSE y ENDIF IN
                                                                                                                                                                                                        	LET tmp_3 = IF (x < y) THEN x ELSE y ENDIF IN
                                                                                                                                                                                                        	LET tmp_1 = IF (tmp_2 > z) THEN tmp_3 ELSE z ENDIF IN
                                                                                                                                                                                                        	LET t_1 = tmp_1 IN
                                                                                                                                                                                                        		LET tmp_6 = IF (x < y) THEN x ELSE y ENDIF IN
                                                                                                                                                                                                        		LET tmp_7 = IF (x < y) THEN x ELSE y ENDIF IN
                                                                                                                                                                                                        		LET tmp_5 = IF (tmp_6 < z) THEN tmp_7 ELSE z ENDIF IN
                                                                                                                                                                                                        		LET t_2 = tmp_5 IN
                                                                                                                                                                                                        			LET tmp_8 = IF (t_2 < t) THEN t_2 ELSE t ENDIF IN
                                                                                                                                                                                                        			LET t_3 = tmp_8 IN
                                                                                                                                                                                                        				LET t_4 = (sqrt(t_3)) IN
                                                                                                                                                                                                        					LET tmp_11 = IF (x > y) THEN x ELSE y ENDIF IN
                                                                                                                                                                                                        					LET tmp_12 = IF (x > y) THEN x ELSE y ENDIF IN
                                                                                                                                                                                                        					LET tmp_10 = IF (tmp_11 > t_1) THEN tmp_12 ELSE t_1 ENDIF IN
                                                                                                                                                                                                        					LET t_5 = tmp_10 IN
                                                                                                                                                                                                        						LET t_6 = (sqrt(t_5)) IN
                                                                                                                                                                                                        							LET tmp_13 = IF (t_2 > t) THEN t_2 ELSE t ENDIF IN
                                                                                                                                                                                                        							LET t_7 = tmp_13 IN
                                                                                                                                                                                                        								LET t_8 = ((sqrt((t_7 + (1)))) - (sqrt(t_7))) IN
                                                                                                                                                                                                        									LET tmp_16 = IF (x > y) THEN x ELSE y ENDIF IN
                                                                                                                                                                                                        									LET tmp_17 = IF (x > y) THEN x ELSE y ENDIF IN
                                                                                                                                                                                                        									LET tmp_15 = IF (tmp_16 < t_1) THEN tmp_17 ELSE t_1 ENDIF IN
                                                                                                                                                                                                        									LET t_9 = tmp_15 IN
                                                                                                                                                                                                        										LET t_10 = (sqrt(t_9)) IN
                                                                                                                                                                                                        											LET t_11 = (((sqrt((t_3 + (1)))) - t_4) + ((sqrt((t_9 + (1)))) - t_10)) IN
                                                                                                                                                                                                        												LET tmp_19 = IF (t_11 <= (19999979999999999424886709675774909555912017822265625e-52)) THEN ((((1) + ((1) / (t_10 + (sqrt(((1) + t_9)))))) - t_4) + t_8) ELSE ((((2) - (t_4 + t_10)) + ((sqrt((t_5 + (1)))) - t_6)) + t_8) ENDIF IN
                                                                                                                                                                                                        												LET tmp_18 = IF (t_11 <= (200000000000000011102230246251565404236316680908203125e-54)) THEN (((5e-1) * ((1) / (t_3 * (sqrt(((1) / t_3)))))) + ((1) / (t_6 + (sqrt(((1) + t_5)))))) ELSE tmp_19 ENDIF IN
                                                                                                                                                                                                        	tmp_18
                                                                                                                                                                                                        END code
                                                                                                                                                                                                        \begin{array}{l}
                                                                                                                                                                                                        t_1 := \mathsf{max}\left(\mathsf{min}\left(x, y\right), z\right)\\
                                                                                                                                                                                                        t_2 := \mathsf{min}\left(\mathsf{min}\left(x, y\right), z\right)\\
                                                                                                                                                                                                        t_3 := \mathsf{min}\left(t\_2, t\right)\\
                                                                                                                                                                                                        t_4 := \sqrt{t\_3}\\
                                                                                                                                                                                                        t_5 := \mathsf{max}\left(\mathsf{max}\left(x, y\right), t\_1\right)\\
                                                                                                                                                                                                        t_6 := \sqrt{t\_5}\\
                                                                                                                                                                                                        t_7 := \mathsf{max}\left(t\_2, t\right)\\
                                                                                                                                                                                                        t_8 := \sqrt{t\_7 + 1} - \sqrt{t\_7}\\
                                                                                                                                                                                                        t_9 := \mathsf{min}\left(\mathsf{max}\left(x, y\right), t\_1\right)\\
                                                                                                                                                                                                        t_10 := \sqrt{t\_9}\\
                                                                                                                                                                                                        t_11 := \left(\sqrt{t\_3 + 1} - t\_4\right) + \left(\sqrt{t\_9 + 1} - t\_10\right)\\
                                                                                                                                                                                                        \mathbf{if}\;t\_11 \leq 0.2:\\
                                                                                                                                                                                                        \;\;\;\;\mathsf{fma}\left(0.5, \frac{1}{t\_3 \cdot \sqrt{\frac{1}{t\_3}}}, \frac{1}{t\_6 + \sqrt{1 + t\_5}}\right)\\
                                                                                                                                                                                                        
                                                                                                                                                                                                        \mathbf{elif}\;t\_11 \leq 1.999998:\\
                                                                                                                                                                                                        \;\;\;\;\left(\left(1 + \frac{1}{t\_10 + \sqrt{1 + t\_9}}\right) - t\_4\right) + t\_8\\
                                                                                                                                                                                                        
                                                                                                                                                                                                        \mathbf{else}:\\
                                                                                                                                                                                                        \;\;\;\;\left(\left(2 - \left(t\_4 + t\_10\right)\right) + \left(\sqrt{t\_5 + 1} - t\_6\right)\right) + t\_8\\
                                                                                                                                                                                                        
                                                                                                                                                                                                        
                                                                                                                                                                                                        \end{array}
                                                                                                                                                                                                        
                                                                                                                                                                                                        Derivation
                                                                                                                                                                                                        1. Split input into 3 regimes
                                                                                                                                                                                                        2. if (+.f64 (-.f64 (sqrt.f64 (+.f64 x #s(literal 1 binary64))) (sqrt.f64 x)) (-.f64 (sqrt.f64 (+.f64 y #s(literal 1 binary64))) (sqrt.f64 y))) < 0.20000000000000001

                                                                                                                                                                                                          1. Initial program 92.0%

                                                                                                                                                                                                            \[\left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                          2. Step-by-step derivation
                                                                                                                                                                                                            1. Applied rewrites93.8%

                                                                                                                                                                                                              \[\leadsto \left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \frac{1}{\sqrt{z} + \sqrt{z + 1}}\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                            2. Taylor expanded in t around inf

                                                                                                                                                                                                              \[\leadsto \left(\sqrt{1 + x} + \left(\sqrt{1 + y} + \frac{1}{\sqrt{z} + \sqrt{1 + z}}\right)\right) - \left(\sqrt{x} + \sqrt{y}\right) \]
                                                                                                                                                                                                            3. Step-by-step derivation
                                                                                                                                                                                                              1. Applied rewrites19.3%

                                                                                                                                                                                                                \[\leadsto \left(\sqrt{1 + x} + \left(\sqrt{1 + y} + \frac{1}{\sqrt{z} + \sqrt{1 + z}}\right)\right) - \left(\sqrt{x} + \sqrt{y}\right) \]
                                                                                                                                                                                                              2. Taylor expanded in y around inf

                                                                                                                                                                                                                \[\leadsto \left(\sqrt{1 + x} + \frac{1}{\sqrt{z} + \sqrt{1 + z}}\right) - \sqrt{x} \]
                                                                                                                                                                                                              3. Step-by-step derivation
                                                                                                                                                                                                                1. Applied rewrites21.6%

                                                                                                                                                                                                                  \[\leadsto \left(\sqrt{1 + x} + \frac{1}{\sqrt{z} + \sqrt{1 + z}}\right) - \sqrt{x} \]
                                                                                                                                                                                                                2. Taylor expanded in x around inf

                                                                                                                                                                                                                  \[\leadsto \frac{1}{2} \cdot \frac{1}{x \cdot \sqrt{\frac{1}{x}}} + \frac{1}{\sqrt{z} + \sqrt{1 + z}} \]
                                                                                                                                                                                                                3. Step-by-step derivation
                                                                                                                                                                                                                  1. Applied rewrites17.0%

                                                                                                                                                                                                                    \[\leadsto \mathsf{fma}\left(0.5, \frac{1}{x \cdot \sqrt{\frac{1}{x}}}, \frac{1}{\sqrt{z} + \sqrt{1 + z}}\right) \]

                                                                                                                                                                                                                  if 0.20000000000000001 < (+.f64 (-.f64 (sqrt.f64 (+.f64 x #s(literal 1 binary64))) (sqrt.f64 x)) (-.f64 (sqrt.f64 (+.f64 y #s(literal 1 binary64))) (sqrt.f64 y))) < 1.9999979999999999

                                                                                                                                                                                                                  1. Initial program 92.0%

                                                                                                                                                                                                                    \[\left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                  2. Step-by-step derivation
                                                                                                                                                                                                                    1. Applied rewrites93.9%

                                                                                                                                                                                                                      \[\leadsto \left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \frac{1}{\sqrt{y} + \sqrt{y + 1}}\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                    2. Taylor expanded in z around inf

                                                                                                                                                                                                                      \[\leadsto \left(\left(\sqrt{1 + x} + \frac{1}{\sqrt{y} + \sqrt{1 + y}}\right) - \sqrt{x}\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                    3. Step-by-step derivation
                                                                                                                                                                                                                      1. Applied rewrites40.0%

                                                                                                                                                                                                                        \[\leadsto \left(\left(\sqrt{1 + x} + \frac{1}{\sqrt{y} + \sqrt{1 + y}}\right) - \sqrt{x}\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                      2. Taylor expanded in x around 0

                                                                                                                                                                                                                        \[\leadsto \left(\left(1 + \frac{1}{\sqrt{y} + \sqrt{1 + y}}\right) - \sqrt{x}\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                      3. Step-by-step derivation
                                                                                                                                                                                                                        1. Applied rewrites28.9%

                                                                                                                                                                                                                          \[\leadsto \left(\left(1 + \frac{1}{\sqrt{y} + \sqrt{1 + y}}\right) - \sqrt{x}\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]

                                                                                                                                                                                                                        if 1.9999979999999999 < (+.f64 (-.f64 (sqrt.f64 (+.f64 x #s(literal 1 binary64))) (sqrt.f64 x)) (-.f64 (sqrt.f64 (+.f64 y #s(literal 1 binary64))) (sqrt.f64 y)))

                                                                                                                                                                                                                        1. Initial program 92.0%

                                                                                                                                                                                                                          \[\left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                        2. Taylor expanded in y around 0

                                                                                                                                                                                                                          \[\leadsto \left(\left(\left(1 + \sqrt{1 + x}\right) - \left(\sqrt{x} + \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                        3. Step-by-step derivation
                                                                                                                                                                                                                          1. Applied rewrites36.9%

                                                                                                                                                                                                                            \[\leadsto \left(\left(\left(1 + \sqrt{1 + x}\right) - \left(\sqrt{x} + \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                          2. Taylor expanded in x around 0

                                                                                                                                                                                                                            \[\leadsto \left(\left(2 - \left(\sqrt{x} + \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                          3. Step-by-step derivation
                                                                                                                                                                                                                            1. Applied rewrites24.5%

                                                                                                                                                                                                                              \[\leadsto \left(\left(2 - \left(\sqrt{x} + \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                          4. Recombined 3 regimes into one program.
                                                                                                                                                                                                                          5. Add Preprocessing

                                                                                                                                                                                                                          Alternative 16: 91.9% accurate, 0.1× speedup?

                                                                                                                                                                                                                          \[\begin{array}{l} t_1 := \mathsf{max}\left(\mathsf{min}\left(x, y\right), z\right)\\ t_2 := \mathsf{max}\left(\mathsf{max}\left(x, y\right), t\_1\right)\\ t_3 := \mathsf{min}\left(\mathsf{max}\left(x, y\right), t\_1\right)\\ t_4 := \mathsf{min}\left(\mathsf{min}\left(x, y\right), z\right)\\ t_5 := \mathsf{min}\left(t\_4, t\right)\\ t_6 := \sqrt{t\_5}\\ t_7 := \mathsf{max}\left(t\_4, t\right)\\ t_8 := \mathsf{max}\left(t\_3, t\_7\right)\\ t_9 := \mathsf{min}\left(t\_2, t\_8\right)\\ t_10 := \mathsf{min}\left(t\_3, t\_7\right)\\ t_11 := \mathsf{max}\left(t\_2, t\_8\right)\\ t_12 := \sqrt{t\_9}\\ t_13 := \sqrt{t\_9 + 1} - t\_12\\ t_14 := \sqrt{t\_11 + 1} - \sqrt{t\_11}\\ t_15 := \sqrt{t\_10}\\ t_16 := \left(\left(\sqrt{t\_5 + 1} - t\_6\right) + \left(\sqrt{t\_10 + 1} - t\_15\right)\right) + t\_13\\ \mathbf{if}\;t\_16 \leq 1:\\ \;\;\;\;\left(\left(\sqrt{1 + t\_5} - t\_6\right) + \frac{0.5}{t\_12}\right) + t\_14\\ \mathbf{elif}\;t\_16 \leq 2.999995:\\ \;\;\;\;\left(\left(1 + \sqrt{1 + t\_10}\right) - t\_6\right) - \left(t\_15 - t\_13\right)\\ \mathbf{else}:\\ \;\;\;\;\left(\left(2 - \left(t\_6 + t\_15\right)\right) + \left(1 - t\_12\right)\right) + t\_14\\ \end{array} \]
                                                                                                                                                                                                                          (FPCore (x y z t)
                                                                                                                                                                                                                            :precision binary64
                                                                                                                                                                                                                            :pre TRUE
                                                                                                                                                                                                                            (let* ((t_1 (fmax (fmin x y) z))
                                                                                                                                                                                                                                 (t_2 (fmax (fmax x y) t_1))
                                                                                                                                                                                                                                 (t_3 (fmin (fmax x y) t_1))
                                                                                                                                                                                                                                 (t_4 (fmin (fmin x y) z))
                                                                                                                                                                                                                                 (t_5 (fmin t_4 t))
                                                                                                                                                                                                                                 (t_6 (sqrt t_5))
                                                                                                                                                                                                                                 (t_7 (fmax t_4 t))
                                                                                                                                                                                                                                 (t_8 (fmax t_3 t_7))
                                                                                                                                                                                                                                 (t_9 (fmin t_2 t_8))
                                                                                                                                                                                                                                 (t_10 (fmin t_3 t_7))
                                                                                                                                                                                                                                 (t_11 (fmax t_2 t_8))
                                                                                                                                                                                                                                 (t_12 (sqrt t_9))
                                                                                                                                                                                                                                 (t_13 (- (sqrt (+ t_9 1.0)) t_12))
                                                                                                                                                                                                                                 (t_14 (- (sqrt (+ t_11 1.0)) (sqrt t_11)))
                                                                                                                                                                                                                                 (t_15 (sqrt t_10))
                                                                                                                                                                                                                                 (t_16
                                                                                                                                                                                                                                  (+
                                                                                                                                                                                                                                   (+ (- (sqrt (+ t_5 1.0)) t_6) (- (sqrt (+ t_10 1.0)) t_15))
                                                                                                                                                                                                                                   t_13)))
                                                                                                                                                                                                                            (if (<= t_16 1.0)
                                                                                                                                                                                                                              (+ (+ (- (sqrt (+ 1.0 t_5)) t_6) (/ 0.5 t_12)) t_14)
                                                                                                                                                                                                                              (if (<= t_16 2.999995)
                                                                                                                                                                                                                                (- (- (+ 1.0 (sqrt (+ 1.0 t_10))) t_6) (- t_15 t_13))
                                                                                                                                                                                                                                (+ (+ (- 2.0 (+ t_6 t_15)) (- 1.0 t_12)) t_14)))))
                                                                                                                                                                                                                          double code(double x, double y, double z, double t) {
                                                                                                                                                                                                                          	double t_1 = fmax(fmin(x, y), z);
                                                                                                                                                                                                                          	double t_2 = fmax(fmax(x, y), t_1);
                                                                                                                                                                                                                          	double t_3 = fmin(fmax(x, y), t_1);
                                                                                                                                                                                                                          	double t_4 = fmin(fmin(x, y), z);
                                                                                                                                                                                                                          	double t_5 = fmin(t_4, t);
                                                                                                                                                                                                                          	double t_6 = sqrt(t_5);
                                                                                                                                                                                                                          	double t_7 = fmax(t_4, t);
                                                                                                                                                                                                                          	double t_8 = fmax(t_3, t_7);
                                                                                                                                                                                                                          	double t_9 = fmin(t_2, t_8);
                                                                                                                                                                                                                          	double t_10 = fmin(t_3, t_7);
                                                                                                                                                                                                                          	double t_11 = fmax(t_2, t_8);
                                                                                                                                                                                                                          	double t_12 = sqrt(t_9);
                                                                                                                                                                                                                          	double t_13 = sqrt((t_9 + 1.0)) - t_12;
                                                                                                                                                                                                                          	double t_14 = sqrt((t_11 + 1.0)) - sqrt(t_11);
                                                                                                                                                                                                                          	double t_15 = sqrt(t_10);
                                                                                                                                                                                                                          	double t_16 = ((sqrt((t_5 + 1.0)) - t_6) + (sqrt((t_10 + 1.0)) - t_15)) + t_13;
                                                                                                                                                                                                                          	double tmp;
                                                                                                                                                                                                                          	if (t_16 <= 1.0) {
                                                                                                                                                                                                                          		tmp = ((sqrt((1.0 + t_5)) - t_6) + (0.5 / t_12)) + t_14;
                                                                                                                                                                                                                          	} else if (t_16 <= 2.999995) {
                                                                                                                                                                                                                          		tmp = ((1.0 + sqrt((1.0 + t_10))) - t_6) - (t_15 - t_13);
                                                                                                                                                                                                                          	} else {
                                                                                                                                                                                                                          		tmp = ((2.0 - (t_6 + t_15)) + (1.0 - t_12)) + t_14;
                                                                                                                                                                                                                          	}
                                                                                                                                                                                                                          	return tmp;
                                                                                                                                                                                                                          }
                                                                                                                                                                                                                          
                                                                                                                                                                                                                          real(8) function code(x, y, z, t)
                                                                                                                                                                                                                          use fmin_fmax_functions
                                                                                                                                                                                                                              real(8), intent (in) :: x
                                                                                                                                                                                                                              real(8), intent (in) :: y
                                                                                                                                                                                                                              real(8), intent (in) :: z
                                                                                                                                                                                                                              real(8), intent (in) :: t
                                                                                                                                                                                                                              real(8) :: t_1
                                                                                                                                                                                                                              real(8) :: t_10
                                                                                                                                                                                                                              real(8) :: t_11
                                                                                                                                                                                                                              real(8) :: t_12
                                                                                                                                                                                                                              real(8) :: t_13
                                                                                                                                                                                                                              real(8) :: t_14
                                                                                                                                                                                                                              real(8) :: t_15
                                                                                                                                                                                                                              real(8) :: t_16
                                                                                                                                                                                                                              real(8) :: t_2
                                                                                                                                                                                                                              real(8) :: t_3
                                                                                                                                                                                                                              real(8) :: t_4
                                                                                                                                                                                                                              real(8) :: t_5
                                                                                                                                                                                                                              real(8) :: t_6
                                                                                                                                                                                                                              real(8) :: t_7
                                                                                                                                                                                                                              real(8) :: t_8
                                                                                                                                                                                                                              real(8) :: t_9
                                                                                                                                                                                                                              real(8) :: tmp
                                                                                                                                                                                                                              t_1 = fmax(fmin(x, y), z)
                                                                                                                                                                                                                              t_2 = fmax(fmax(x, y), t_1)
                                                                                                                                                                                                                              t_3 = fmin(fmax(x, y), t_1)
                                                                                                                                                                                                                              t_4 = fmin(fmin(x, y), z)
                                                                                                                                                                                                                              t_5 = fmin(t_4, t)
                                                                                                                                                                                                                              t_6 = sqrt(t_5)
                                                                                                                                                                                                                              t_7 = fmax(t_4, t)
                                                                                                                                                                                                                              t_8 = fmax(t_3, t_7)
                                                                                                                                                                                                                              t_9 = fmin(t_2, t_8)
                                                                                                                                                                                                                              t_10 = fmin(t_3, t_7)
                                                                                                                                                                                                                              t_11 = fmax(t_2, t_8)
                                                                                                                                                                                                                              t_12 = sqrt(t_9)
                                                                                                                                                                                                                              t_13 = sqrt((t_9 + 1.0d0)) - t_12
                                                                                                                                                                                                                              t_14 = sqrt((t_11 + 1.0d0)) - sqrt(t_11)
                                                                                                                                                                                                                              t_15 = sqrt(t_10)
                                                                                                                                                                                                                              t_16 = ((sqrt((t_5 + 1.0d0)) - t_6) + (sqrt((t_10 + 1.0d0)) - t_15)) + t_13
                                                                                                                                                                                                                              if (t_16 <= 1.0d0) then
                                                                                                                                                                                                                                  tmp = ((sqrt((1.0d0 + t_5)) - t_6) + (0.5d0 / t_12)) + t_14
                                                                                                                                                                                                                              else if (t_16 <= 2.999995d0) then
                                                                                                                                                                                                                                  tmp = ((1.0d0 + sqrt((1.0d0 + t_10))) - t_6) - (t_15 - t_13)
                                                                                                                                                                                                                              else
                                                                                                                                                                                                                                  tmp = ((2.0d0 - (t_6 + t_15)) + (1.0d0 - t_12)) + t_14
                                                                                                                                                                                                                              end if
                                                                                                                                                                                                                              code = tmp
                                                                                                                                                                                                                          end function
                                                                                                                                                                                                                          
                                                                                                                                                                                                                          public static double code(double x, double y, double z, double t) {
                                                                                                                                                                                                                          	double t_1 = fmax(fmin(x, y), z);
                                                                                                                                                                                                                          	double t_2 = fmax(fmax(x, y), t_1);
                                                                                                                                                                                                                          	double t_3 = fmin(fmax(x, y), t_1);
                                                                                                                                                                                                                          	double t_4 = fmin(fmin(x, y), z);
                                                                                                                                                                                                                          	double t_5 = fmin(t_4, t);
                                                                                                                                                                                                                          	double t_6 = Math.sqrt(t_5);
                                                                                                                                                                                                                          	double t_7 = fmax(t_4, t);
                                                                                                                                                                                                                          	double t_8 = fmax(t_3, t_7);
                                                                                                                                                                                                                          	double t_9 = fmin(t_2, t_8);
                                                                                                                                                                                                                          	double t_10 = fmin(t_3, t_7);
                                                                                                                                                                                                                          	double t_11 = fmax(t_2, t_8);
                                                                                                                                                                                                                          	double t_12 = Math.sqrt(t_9);
                                                                                                                                                                                                                          	double t_13 = Math.sqrt((t_9 + 1.0)) - t_12;
                                                                                                                                                                                                                          	double t_14 = Math.sqrt((t_11 + 1.0)) - Math.sqrt(t_11);
                                                                                                                                                                                                                          	double t_15 = Math.sqrt(t_10);
                                                                                                                                                                                                                          	double t_16 = ((Math.sqrt((t_5 + 1.0)) - t_6) + (Math.sqrt((t_10 + 1.0)) - t_15)) + t_13;
                                                                                                                                                                                                                          	double tmp;
                                                                                                                                                                                                                          	if (t_16 <= 1.0) {
                                                                                                                                                                                                                          		tmp = ((Math.sqrt((1.0 + t_5)) - t_6) + (0.5 / t_12)) + t_14;
                                                                                                                                                                                                                          	} else if (t_16 <= 2.999995) {
                                                                                                                                                                                                                          		tmp = ((1.0 + Math.sqrt((1.0 + t_10))) - t_6) - (t_15 - t_13);
                                                                                                                                                                                                                          	} else {
                                                                                                                                                                                                                          		tmp = ((2.0 - (t_6 + t_15)) + (1.0 - t_12)) + t_14;
                                                                                                                                                                                                                          	}
                                                                                                                                                                                                                          	return tmp;
                                                                                                                                                                                                                          }
                                                                                                                                                                                                                          
                                                                                                                                                                                                                          def code(x, y, z, t):
                                                                                                                                                                                                                          	t_1 = fmax(fmin(x, y), z)
                                                                                                                                                                                                                          	t_2 = fmax(fmax(x, y), t_1)
                                                                                                                                                                                                                          	t_3 = fmin(fmax(x, y), t_1)
                                                                                                                                                                                                                          	t_4 = fmin(fmin(x, y), z)
                                                                                                                                                                                                                          	t_5 = fmin(t_4, t)
                                                                                                                                                                                                                          	t_6 = math.sqrt(t_5)
                                                                                                                                                                                                                          	t_7 = fmax(t_4, t)
                                                                                                                                                                                                                          	t_8 = fmax(t_3, t_7)
                                                                                                                                                                                                                          	t_9 = fmin(t_2, t_8)
                                                                                                                                                                                                                          	t_10 = fmin(t_3, t_7)
                                                                                                                                                                                                                          	t_11 = fmax(t_2, t_8)
                                                                                                                                                                                                                          	t_12 = math.sqrt(t_9)
                                                                                                                                                                                                                          	t_13 = math.sqrt((t_9 + 1.0)) - t_12
                                                                                                                                                                                                                          	t_14 = math.sqrt((t_11 + 1.0)) - math.sqrt(t_11)
                                                                                                                                                                                                                          	t_15 = math.sqrt(t_10)
                                                                                                                                                                                                                          	t_16 = ((math.sqrt((t_5 + 1.0)) - t_6) + (math.sqrt((t_10 + 1.0)) - t_15)) + t_13
                                                                                                                                                                                                                          	tmp = 0
                                                                                                                                                                                                                          	if t_16 <= 1.0:
                                                                                                                                                                                                                          		tmp = ((math.sqrt((1.0 + t_5)) - t_6) + (0.5 / t_12)) + t_14
                                                                                                                                                                                                                          	elif t_16 <= 2.999995:
                                                                                                                                                                                                                          		tmp = ((1.0 + math.sqrt((1.0 + t_10))) - t_6) - (t_15 - t_13)
                                                                                                                                                                                                                          	else:
                                                                                                                                                                                                                          		tmp = ((2.0 - (t_6 + t_15)) + (1.0 - t_12)) + t_14
                                                                                                                                                                                                                          	return tmp
                                                                                                                                                                                                                          
                                                                                                                                                                                                                          function code(x, y, z, t)
                                                                                                                                                                                                                          	t_1 = fmax(fmin(x, y), z)
                                                                                                                                                                                                                          	t_2 = fmax(fmax(x, y), t_1)
                                                                                                                                                                                                                          	t_3 = fmin(fmax(x, y), t_1)
                                                                                                                                                                                                                          	t_4 = fmin(fmin(x, y), z)
                                                                                                                                                                                                                          	t_5 = fmin(t_4, t)
                                                                                                                                                                                                                          	t_6 = sqrt(t_5)
                                                                                                                                                                                                                          	t_7 = fmax(t_4, t)
                                                                                                                                                                                                                          	t_8 = fmax(t_3, t_7)
                                                                                                                                                                                                                          	t_9 = fmin(t_2, t_8)
                                                                                                                                                                                                                          	t_10 = fmin(t_3, t_7)
                                                                                                                                                                                                                          	t_11 = fmax(t_2, t_8)
                                                                                                                                                                                                                          	t_12 = sqrt(t_9)
                                                                                                                                                                                                                          	t_13 = Float64(sqrt(Float64(t_9 + 1.0)) - t_12)
                                                                                                                                                                                                                          	t_14 = Float64(sqrt(Float64(t_11 + 1.0)) - sqrt(t_11))
                                                                                                                                                                                                                          	t_15 = sqrt(t_10)
                                                                                                                                                                                                                          	t_16 = Float64(Float64(Float64(sqrt(Float64(t_5 + 1.0)) - t_6) + Float64(sqrt(Float64(t_10 + 1.0)) - t_15)) + t_13)
                                                                                                                                                                                                                          	tmp = 0.0
                                                                                                                                                                                                                          	if (t_16 <= 1.0)
                                                                                                                                                                                                                          		tmp = Float64(Float64(Float64(sqrt(Float64(1.0 + t_5)) - t_6) + Float64(0.5 / t_12)) + t_14);
                                                                                                                                                                                                                          	elseif (t_16 <= 2.999995)
                                                                                                                                                                                                                          		tmp = Float64(Float64(Float64(1.0 + sqrt(Float64(1.0 + t_10))) - t_6) - Float64(t_15 - t_13));
                                                                                                                                                                                                                          	else
                                                                                                                                                                                                                          		tmp = Float64(Float64(Float64(2.0 - Float64(t_6 + t_15)) + Float64(1.0 - t_12)) + t_14);
                                                                                                                                                                                                                          	end
                                                                                                                                                                                                                          	return tmp
                                                                                                                                                                                                                          end
                                                                                                                                                                                                                          
                                                                                                                                                                                                                          function tmp_2 = code(x, y, z, t)
                                                                                                                                                                                                                          	t_1 = max(min(x, y), z);
                                                                                                                                                                                                                          	t_2 = max(max(x, y), t_1);
                                                                                                                                                                                                                          	t_3 = min(max(x, y), t_1);
                                                                                                                                                                                                                          	t_4 = min(min(x, y), z);
                                                                                                                                                                                                                          	t_5 = min(t_4, t);
                                                                                                                                                                                                                          	t_6 = sqrt(t_5);
                                                                                                                                                                                                                          	t_7 = max(t_4, t);
                                                                                                                                                                                                                          	t_8 = max(t_3, t_7);
                                                                                                                                                                                                                          	t_9 = min(t_2, t_8);
                                                                                                                                                                                                                          	t_10 = min(t_3, t_7);
                                                                                                                                                                                                                          	t_11 = max(t_2, t_8);
                                                                                                                                                                                                                          	t_12 = sqrt(t_9);
                                                                                                                                                                                                                          	t_13 = sqrt((t_9 + 1.0)) - t_12;
                                                                                                                                                                                                                          	t_14 = sqrt((t_11 + 1.0)) - sqrt(t_11);
                                                                                                                                                                                                                          	t_15 = sqrt(t_10);
                                                                                                                                                                                                                          	t_16 = ((sqrt((t_5 + 1.0)) - t_6) + (sqrt((t_10 + 1.0)) - t_15)) + t_13;
                                                                                                                                                                                                                          	tmp = 0.0;
                                                                                                                                                                                                                          	if (t_16 <= 1.0)
                                                                                                                                                                                                                          		tmp = ((sqrt((1.0 + t_5)) - t_6) + (0.5 / t_12)) + t_14;
                                                                                                                                                                                                                          	elseif (t_16 <= 2.999995)
                                                                                                                                                                                                                          		tmp = ((1.0 + sqrt((1.0 + t_10))) - t_6) - (t_15 - t_13);
                                                                                                                                                                                                                          	else
                                                                                                                                                                                                                          		tmp = ((2.0 - (t_6 + t_15)) + (1.0 - t_12)) + t_14;
                                                                                                                                                                                                                          	end
                                                                                                                                                                                                                          	tmp_2 = tmp;
                                                                                                                                                                                                                          end
                                                                                                                                                                                                                          
                                                                                                                                                                                                                          code[x_, y_, z_, t_] := Block[{t$95$1 = N[Max[N[Min[x, y], $MachinePrecision], z], $MachinePrecision]}, Block[{t$95$2 = N[Max[N[Max[x, y], $MachinePrecision], t$95$1], $MachinePrecision]}, Block[{t$95$3 = N[Min[N[Max[x, y], $MachinePrecision], t$95$1], $MachinePrecision]}, Block[{t$95$4 = N[Min[N[Min[x, y], $MachinePrecision], z], $MachinePrecision]}, Block[{t$95$5 = N[Min[t$95$4, t], $MachinePrecision]}, Block[{t$95$6 = N[Sqrt[t$95$5], $MachinePrecision]}, Block[{t$95$7 = N[Max[t$95$4, t], $MachinePrecision]}, Block[{t$95$8 = N[Max[t$95$3, t$95$7], $MachinePrecision]}, Block[{t$95$9 = N[Min[t$95$2, t$95$8], $MachinePrecision]}, Block[{t$95$10 = N[Min[t$95$3, t$95$7], $MachinePrecision]}, Block[{t$95$11 = N[Max[t$95$2, t$95$8], $MachinePrecision]}, Block[{t$95$12 = N[Sqrt[t$95$9], $MachinePrecision]}, Block[{t$95$13 = N[(N[Sqrt[N[(t$95$9 + 1.0), $MachinePrecision]], $MachinePrecision] - t$95$12), $MachinePrecision]}, Block[{t$95$14 = N[(N[Sqrt[N[(t$95$11 + 1.0), $MachinePrecision]], $MachinePrecision] - N[Sqrt[t$95$11], $MachinePrecision]), $MachinePrecision]}, Block[{t$95$15 = N[Sqrt[t$95$10], $MachinePrecision]}, Block[{t$95$16 = N[(N[(N[(N[Sqrt[N[(t$95$5 + 1.0), $MachinePrecision]], $MachinePrecision] - t$95$6), $MachinePrecision] + N[(N[Sqrt[N[(t$95$10 + 1.0), $MachinePrecision]], $MachinePrecision] - t$95$15), $MachinePrecision]), $MachinePrecision] + t$95$13), $MachinePrecision]}, If[LessEqual[t$95$16, 1.0], N[(N[(N[(N[Sqrt[N[(1.0 + t$95$5), $MachinePrecision]], $MachinePrecision] - t$95$6), $MachinePrecision] + N[(0.5 / t$95$12), $MachinePrecision]), $MachinePrecision] + t$95$14), $MachinePrecision], If[LessEqual[t$95$16, 2.999995], N[(N[(N[(1.0 + N[Sqrt[N[(1.0 + t$95$10), $MachinePrecision]], $MachinePrecision]), $MachinePrecision] - t$95$6), $MachinePrecision] - N[(t$95$15 - t$95$13), $MachinePrecision]), $MachinePrecision], N[(N[(N[(2.0 - N[(t$95$6 + t$95$15), $MachinePrecision]), $MachinePrecision] + N[(1.0 - t$95$12), $MachinePrecision]), $MachinePrecision] + t$95$14), $MachinePrecision]]]]]]]]]]]]]]]]]]]
                                                                                                                                                                                                                          
                                                                                                                                                                                                                          f(x, y, z, t):
                                                                                                                                                                                                                          	x in [-inf, +inf],
                                                                                                                                                                                                                          	y in [-inf, +inf],
                                                                                                                                                                                                                          	z in [-inf, +inf],
                                                                                                                                                                                                                          	t in [-inf, +inf]
                                                                                                                                                                                                                          code: THEORY
                                                                                                                                                                                                                          BEGIN
                                                                                                                                                                                                                          f(x, y, z, t: real): real =
                                                                                                                                                                                                                          	LET tmp_2 = IF (x < y) THEN x ELSE y ENDIF IN
                                                                                                                                                                                                                          	LET tmp_3 = IF (x < y) THEN x ELSE y ENDIF IN
                                                                                                                                                                                                                          	LET tmp_1 = IF (tmp_2 > z) THEN tmp_3 ELSE z ENDIF IN
                                                                                                                                                                                                                          	LET t_1 = tmp_1 IN
                                                                                                                                                                                                                          		LET tmp_6 = IF (x > y) THEN x ELSE y ENDIF IN
                                                                                                                                                                                                                          		LET tmp_7 = IF (x > y) THEN x ELSE y ENDIF IN
                                                                                                                                                                                                                          		LET tmp_5 = IF (tmp_6 > t_1) THEN tmp_7 ELSE t_1 ENDIF IN
                                                                                                                                                                                                                          		LET t_2 = tmp_5 IN
                                                                                                                                                                                                                          			LET tmp_10 = IF (x > y) THEN x ELSE y ENDIF IN
                                                                                                                                                                                                                          			LET tmp_11 = IF (x > y) THEN x ELSE y ENDIF IN
                                                                                                                                                                                                                          			LET tmp_9 = IF (tmp_10 < t_1) THEN tmp_11 ELSE t_1 ENDIF IN
                                                                                                                                                                                                                          			LET t_3 = tmp_9 IN
                                                                                                                                                                                                                          				LET tmp_14 = IF (x < y) THEN x ELSE y ENDIF IN
                                                                                                                                                                                                                          				LET tmp_15 = IF (x < y) THEN x ELSE y ENDIF IN
                                                                                                                                                                                                                          				LET tmp_13 = IF (tmp_14 < z) THEN tmp_15 ELSE z ENDIF IN
                                                                                                                                                                                                                          				LET t_4 = tmp_13 IN
                                                                                                                                                                                                                          					LET tmp_16 = IF (t_4 < t) THEN t_4 ELSE t ENDIF IN
                                                                                                                                                                                                                          					LET t_5 = tmp_16 IN
                                                                                                                                                                                                                          						LET t_6 = (sqrt(t_5)) IN
                                                                                                                                                                                                                          							LET tmp_17 = IF (t_4 > t) THEN t_4 ELSE t ENDIF IN
                                                                                                                                                                                                                          							LET t_7 = tmp_17 IN
                                                                                                                                                                                                                          								LET tmp_18 = IF (t_3 > t_7) THEN t_3 ELSE t_7 ENDIF IN
                                                                                                                                                                                                                          								LET t_8 = tmp_18 IN
                                                                                                                                                                                                                          									LET tmp_19 = IF (t_2 < t_8) THEN t_2 ELSE t_8 ENDIF IN
                                                                                                                                                                                                                          									LET t_9 = tmp_19 IN
                                                                                                                                                                                                                          										LET tmp_20 = IF (t_3 < t_7) THEN t_3 ELSE t_7 ENDIF IN
                                                                                                                                                                                                                          										LET t_10 = tmp_20 IN
                                                                                                                                                                                                                          											LET tmp_21 = IF (t_2 > t_8) THEN t_2 ELSE t_8 ENDIF IN
                                                                                                                                                                                                                          											LET t_11 = tmp_21 IN
                                                                                                                                                                                                                          												LET t_12 = (sqrt(t_9)) IN
                                                                                                                                                                                                                          													LET t_13 = ((sqrt((t_9 + (1)))) - t_12) IN
                                                                                                                                                                                                                          														LET t_14 = ((sqrt((t_11 + (1)))) - (sqrt(t_11))) IN
                                                                                                                                                                                                                          															LET t_15 = (sqrt(t_10)) IN
                                                                                                                                                                                                                          																LET t_16 = ((((sqrt((t_5 + (1)))) - t_6) + ((sqrt((t_10 + (1)))) - t_15)) + t_13) IN
                                                                                                                                                                                                                          																	LET tmp_23 = IF (t_16 <= (29999950000000001892885848064906895160675048828125e-49)) THEN ((((1) + (sqrt(((1) + t_10)))) - t_6) - (t_15 - t_13)) ELSE ((((2) - (t_6 + t_15)) + ((1) - t_12)) + t_14) ENDIF IN
                                                                                                                                                                                                                          																	LET tmp_22 = IF (t_16 <= (1)) THEN ((((sqrt(((1) + t_5))) - t_6) + ((5e-1) / t_12)) + t_14) ELSE tmp_23 ENDIF IN
                                                                                                                                                                                                                          	tmp_22
                                                                                                                                                                                                                          END code
                                                                                                                                                                                                                          \begin{array}{l}
                                                                                                                                                                                                                          t_1 := \mathsf{max}\left(\mathsf{min}\left(x, y\right), z\right)\\
                                                                                                                                                                                                                          t_2 := \mathsf{max}\left(\mathsf{max}\left(x, y\right), t\_1\right)\\
                                                                                                                                                                                                                          t_3 := \mathsf{min}\left(\mathsf{max}\left(x, y\right), t\_1\right)\\
                                                                                                                                                                                                                          t_4 := \mathsf{min}\left(\mathsf{min}\left(x, y\right), z\right)\\
                                                                                                                                                                                                                          t_5 := \mathsf{min}\left(t\_4, t\right)\\
                                                                                                                                                                                                                          t_6 := \sqrt{t\_5}\\
                                                                                                                                                                                                                          t_7 := \mathsf{max}\left(t\_4, t\right)\\
                                                                                                                                                                                                                          t_8 := \mathsf{max}\left(t\_3, t\_7\right)\\
                                                                                                                                                                                                                          t_9 := \mathsf{min}\left(t\_2, t\_8\right)\\
                                                                                                                                                                                                                          t_10 := \mathsf{min}\left(t\_3, t\_7\right)\\
                                                                                                                                                                                                                          t_11 := \mathsf{max}\left(t\_2, t\_8\right)\\
                                                                                                                                                                                                                          t_12 := \sqrt{t\_9}\\
                                                                                                                                                                                                                          t_13 := \sqrt{t\_9 + 1} - t\_12\\
                                                                                                                                                                                                                          t_14 := \sqrt{t\_11 + 1} - \sqrt{t\_11}\\
                                                                                                                                                                                                                          t_15 := \sqrt{t\_10}\\
                                                                                                                                                                                                                          t_16 := \left(\left(\sqrt{t\_5 + 1} - t\_6\right) + \left(\sqrt{t\_10 + 1} - t\_15\right)\right) + t\_13\\
                                                                                                                                                                                                                          \mathbf{if}\;t\_16 \leq 1:\\
                                                                                                                                                                                                                          \;\;\;\;\left(\left(\sqrt{1 + t\_5} - t\_6\right) + \frac{0.5}{t\_12}\right) + t\_14\\
                                                                                                                                                                                                                          
                                                                                                                                                                                                                          \mathbf{elif}\;t\_16 \leq 2.999995:\\
                                                                                                                                                                                                                          \;\;\;\;\left(\left(1 + \sqrt{1 + t\_10}\right) - t\_6\right) - \left(t\_15 - t\_13\right)\\
                                                                                                                                                                                                                          
                                                                                                                                                                                                                          \mathbf{else}:\\
                                                                                                                                                                                                                          \;\;\;\;\left(\left(2 - \left(t\_6 + t\_15\right)\right) + \left(1 - t\_12\right)\right) + t\_14\\
                                                                                                                                                                                                                          
                                                                                                                                                                                                                          
                                                                                                                                                                                                                          \end{array}
                                                                                                                                                                                                                          
                                                                                                                                                                                                                          Derivation
                                                                                                                                                                                                                          1. Split input into 3 regimes
                                                                                                                                                                                                                          2. if (+.f64 (+.f64 (-.f64 (sqrt.f64 (+.f64 x #s(literal 1 binary64))) (sqrt.f64 x)) (-.f64 (sqrt.f64 (+.f64 y #s(literal 1 binary64))) (sqrt.f64 y))) (-.f64 (sqrt.f64 (+.f64 z #s(literal 1 binary64))) (sqrt.f64 z))) < 1

                                                                                                                                                                                                                            1. Initial program 92.0%

                                                                                                                                                                                                                              \[\left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                            2. Taylor expanded in z around inf

                                                                                                                                                                                                                              \[\leadsto \left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \frac{\frac{1}{2}}{z \cdot \sqrt{\frac{1}{z}}}\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                            3. Step-by-step derivation
                                                                                                                                                                                                                              1. Applied rewrites47.5%

                                                                                                                                                                                                                                \[\leadsto \left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \frac{0.5}{z \cdot \sqrt{\frac{1}{z}}}\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                              2. Taylor expanded in z around 0

                                                                                                                                                                                                                                \[\leadsto \left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \frac{\frac{1}{2}}{\sqrt{z}}\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                              3. Step-by-step derivation
                                                                                                                                                                                                                                1. Applied rewrites47.5%

                                                                                                                                                                                                                                  \[\leadsto \left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \frac{0.5}{\sqrt{z}}\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                                2. Taylor expanded in y around inf

                                                                                                                                                                                                                                  \[\leadsto \left(\left(\sqrt{1 + x} - \sqrt{x}\right) + \frac{0.5}{\sqrt{z}}\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                                3. Step-by-step derivation
                                                                                                                                                                                                                                  1. Applied rewrites26.9%

                                                                                                                                                                                                                                    \[\leadsto \left(\left(\sqrt{1 + x} - \sqrt{x}\right) + \frac{0.5}{\sqrt{z}}\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]

                                                                                                                                                                                                                                  if 1 < (+.f64 (+.f64 (-.f64 (sqrt.f64 (+.f64 x #s(literal 1 binary64))) (sqrt.f64 x)) (-.f64 (sqrt.f64 (+.f64 y #s(literal 1 binary64))) (sqrt.f64 y))) (-.f64 (sqrt.f64 (+.f64 z #s(literal 1 binary64))) (sqrt.f64 z))) < 2.9999950000000002

                                                                                                                                                                                                                                  1. Initial program 92.0%

                                                                                                                                                                                                                                    \[\left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                                  2. Step-by-step derivation
                                                                                                                                                                                                                                    1. Applied rewrites54.5%

                                                                                                                                                                                                                                      \[\leadsto \left(\left(\sqrt{t + 1} - \sqrt{t}\right) + \left(\sqrt{y + 1} - \left(\sqrt{x} - \sqrt{1 + x}\right)\right)\right) - \left(\sqrt{y} - \left(\sqrt{z + 1} - \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                    2. Taylor expanded in t around inf

                                                                                                                                                                                                                                      \[\leadsto \left(\left(\sqrt{1 + x} + \sqrt{1 + y}\right) - \sqrt{x}\right) - \left(\sqrt{y} - \left(\sqrt{z + 1} - \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                    3. Step-by-step derivation
                                                                                                                                                                                                                                      1. Applied rewrites20.8%

                                                                                                                                                                                                                                        \[\leadsto \left(\left(\sqrt{1 + x} + \sqrt{1 + y}\right) - \sqrt{x}\right) - \left(\sqrt{y} - \left(\sqrt{z + 1} - \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                      2. Taylor expanded in x around 0

                                                                                                                                                                                                                                        \[\leadsto \left(\left(1 + \sqrt{1 + y}\right) - \sqrt{x}\right) - \left(\sqrt{y} - \left(\sqrt{z + 1} - \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                      3. Step-by-step derivation
                                                                                                                                                                                                                                        1. Applied rewrites16.9%

                                                                                                                                                                                                                                          \[\leadsto \left(\left(1 + \sqrt{1 + y}\right) - \sqrt{x}\right) - \left(\sqrt{y} - \left(\sqrt{z + 1} - \sqrt{z}\right)\right) \]

                                                                                                                                                                                                                                        if 2.9999950000000002 < (+.f64 (+.f64 (-.f64 (sqrt.f64 (+.f64 x #s(literal 1 binary64))) (sqrt.f64 x)) (-.f64 (sqrt.f64 (+.f64 y #s(literal 1 binary64))) (sqrt.f64 y))) (-.f64 (sqrt.f64 (+.f64 z #s(literal 1 binary64))) (sqrt.f64 z)))

                                                                                                                                                                                                                                        1. Initial program 92.0%

                                                                                                                                                                                                                                          \[\left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                                        2. Taylor expanded in y around 0

                                                                                                                                                                                                                                          \[\leadsto \left(\left(\left(1 + \sqrt{1 + x}\right) - \left(\sqrt{x} + \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                                        3. Step-by-step derivation
                                                                                                                                                                                                                                          1. Applied rewrites36.9%

                                                                                                                                                                                                                                            \[\leadsto \left(\left(\left(1 + \sqrt{1 + x}\right) - \left(\sqrt{x} + \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                                          2. Taylor expanded in x around 0

                                                                                                                                                                                                                                            \[\leadsto \left(\left(2 - \left(\sqrt{x} + \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                                          3. Step-by-step derivation
                                                                                                                                                                                                                                            1. Applied rewrites24.5%

                                                                                                                                                                                                                                              \[\leadsto \left(\left(2 - \left(\sqrt{x} + \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                                            2. Taylor expanded in z around 0

                                                                                                                                                                                                                                              \[\leadsto \left(\left(2 - \left(\sqrt{x} + \sqrt{y}\right)\right) + \left(1 - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                                            3. Step-by-step derivation
                                                                                                                                                                                                                                              1. Applied rewrites13.0%

                                                                                                                                                                                                                                                \[\leadsto \left(\left(2 - \left(\sqrt{x} + \sqrt{y}\right)\right) + \left(1 - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                                            4. Recombined 3 regimes into one program.
                                                                                                                                                                                                                                            5. Add Preprocessing

                                                                                                                                                                                                                                            Alternative 17: 91.7% accurate, 0.1× speedup?

                                                                                                                                                                                                                                            \[\begin{array}{l} t_1 := \mathsf{max}\left(\mathsf{min}\left(x, y\right), z\right)\\ t_2 := \mathsf{max}\left(\mathsf{max}\left(x, y\right), t\_1\right)\\ t_3 := \mathsf{min}\left(\mathsf{max}\left(x, y\right), t\_1\right)\\ t_4 := \mathsf{min}\left(\mathsf{min}\left(x, y\right), z\right)\\ t_5 := \mathsf{min}\left(t\_4, t\right)\\ t_6 := \sqrt{t\_5}\\ t_7 := \mathsf{max}\left(t\_4, t\right)\\ t_8 := \mathsf{max}\left(t\_3, t\_7\right)\\ t_9 := \mathsf{min}\left(t\_2, t\_8\right)\\ t_10 := \mathsf{min}\left(t\_3, t\_7\right)\\ t_11 := \sqrt{t\_9}\\ t_12 := \sqrt{t\_9 + 1} - t\_11\\ t_13 := \sqrt{t\_10}\\ t_14 := \left(\left(\sqrt{t\_5 + 1} - t\_6\right) + \left(\sqrt{t\_10 + 1} - t\_13\right)\right) + t\_12\\ t_15 := \mathsf{max}\left(t\_2, t\_8\right)\\ \mathbf{if}\;t\_14 \leq 1:\\ \;\;\;\;\left(\sqrt{1 + t\_5} + \frac{1}{1 + t\_11}\right) - t\_6\\ \mathbf{elif}\;t\_14 \leq 2.999995:\\ \;\;\;\;\left(\left(1 + \sqrt{1 + t\_10}\right) - t\_6\right) - \left(t\_13 - t\_12\right)\\ \mathbf{else}:\\ \;\;\;\;\left(\left(2 - \left(t\_6 + t\_13\right)\right) + \left(1 - t\_11\right)\right) + \left(\sqrt{t\_15 + 1} - \sqrt{t\_15}\right)\\ \end{array} \]
                                                                                                                                                                                                                                            (FPCore (x y z t)
                                                                                                                                                                                                                                              :precision binary64
                                                                                                                                                                                                                                              :pre TRUE
                                                                                                                                                                                                                                              (let* ((t_1 (fmax (fmin x y) z))
                                                                                                                                                                                                                                                   (t_2 (fmax (fmax x y) t_1))
                                                                                                                                                                                                                                                   (t_3 (fmin (fmax x y) t_1))
                                                                                                                                                                                                                                                   (t_4 (fmin (fmin x y) z))
                                                                                                                                                                                                                                                   (t_5 (fmin t_4 t))
                                                                                                                                                                                                                                                   (t_6 (sqrt t_5))
                                                                                                                                                                                                                                                   (t_7 (fmax t_4 t))
                                                                                                                                                                                                                                                   (t_8 (fmax t_3 t_7))
                                                                                                                                                                                                                                                   (t_9 (fmin t_2 t_8))
                                                                                                                                                                                                                                                   (t_10 (fmin t_3 t_7))
                                                                                                                                                                                                                                                   (t_11 (sqrt t_9))
                                                                                                                                                                                                                                                   (t_12 (- (sqrt (+ t_9 1.0)) t_11))
                                                                                                                                                                                                                                                   (t_13 (sqrt t_10))
                                                                                                                                                                                                                                                   (t_14
                                                                                                                                                                                                                                                    (+
                                                                                                                                                                                                                                                     (+ (- (sqrt (+ t_5 1.0)) t_6) (- (sqrt (+ t_10 1.0)) t_13))
                                                                                                                                                                                                                                                     t_12))
                                                                                                                                                                                                                                                   (t_15 (fmax t_2 t_8)))
                                                                                                                                                                                                                                              (if (<= t_14 1.0)
                                                                                                                                                                                                                                                (- (+ (sqrt (+ 1.0 t_5)) (/ 1.0 (+ 1.0 t_11))) t_6)
                                                                                                                                                                                                                                                (if (<= t_14 2.999995)
                                                                                                                                                                                                                                                  (- (- (+ 1.0 (sqrt (+ 1.0 t_10))) t_6) (- t_13 t_12))
                                                                                                                                                                                                                                                  (+
                                                                                                                                                                                                                                                   (+ (- 2.0 (+ t_6 t_13)) (- 1.0 t_11))
                                                                                                                                                                                                                                                   (- (sqrt (+ t_15 1.0)) (sqrt t_15)))))))
                                                                                                                                                                                                                                            double code(double x, double y, double z, double t) {
                                                                                                                                                                                                                                            	double t_1 = fmax(fmin(x, y), z);
                                                                                                                                                                                                                                            	double t_2 = fmax(fmax(x, y), t_1);
                                                                                                                                                                                                                                            	double t_3 = fmin(fmax(x, y), t_1);
                                                                                                                                                                                                                                            	double t_4 = fmin(fmin(x, y), z);
                                                                                                                                                                                                                                            	double t_5 = fmin(t_4, t);
                                                                                                                                                                                                                                            	double t_6 = sqrt(t_5);
                                                                                                                                                                                                                                            	double t_7 = fmax(t_4, t);
                                                                                                                                                                                                                                            	double t_8 = fmax(t_3, t_7);
                                                                                                                                                                                                                                            	double t_9 = fmin(t_2, t_8);
                                                                                                                                                                                                                                            	double t_10 = fmin(t_3, t_7);
                                                                                                                                                                                                                                            	double t_11 = sqrt(t_9);
                                                                                                                                                                                                                                            	double t_12 = sqrt((t_9 + 1.0)) - t_11;
                                                                                                                                                                                                                                            	double t_13 = sqrt(t_10);
                                                                                                                                                                                                                                            	double t_14 = ((sqrt((t_5 + 1.0)) - t_6) + (sqrt((t_10 + 1.0)) - t_13)) + t_12;
                                                                                                                                                                                                                                            	double t_15 = fmax(t_2, t_8);
                                                                                                                                                                                                                                            	double tmp;
                                                                                                                                                                                                                                            	if (t_14 <= 1.0) {
                                                                                                                                                                                                                                            		tmp = (sqrt((1.0 + t_5)) + (1.0 / (1.0 + t_11))) - t_6;
                                                                                                                                                                                                                                            	} else if (t_14 <= 2.999995) {
                                                                                                                                                                                                                                            		tmp = ((1.0 + sqrt((1.0 + t_10))) - t_6) - (t_13 - t_12);
                                                                                                                                                                                                                                            	} else {
                                                                                                                                                                                                                                            		tmp = ((2.0 - (t_6 + t_13)) + (1.0 - t_11)) + (sqrt((t_15 + 1.0)) - sqrt(t_15));
                                                                                                                                                                                                                                            	}
                                                                                                                                                                                                                                            	return tmp;
                                                                                                                                                                                                                                            }
                                                                                                                                                                                                                                            
                                                                                                                                                                                                                                            real(8) function code(x, y, z, t)
                                                                                                                                                                                                                                            use fmin_fmax_functions
                                                                                                                                                                                                                                                real(8), intent (in) :: x
                                                                                                                                                                                                                                                real(8), intent (in) :: y
                                                                                                                                                                                                                                                real(8), intent (in) :: z
                                                                                                                                                                                                                                                real(8), intent (in) :: t
                                                                                                                                                                                                                                                real(8) :: t_1
                                                                                                                                                                                                                                                real(8) :: t_10
                                                                                                                                                                                                                                                real(8) :: t_11
                                                                                                                                                                                                                                                real(8) :: t_12
                                                                                                                                                                                                                                                real(8) :: t_13
                                                                                                                                                                                                                                                real(8) :: t_14
                                                                                                                                                                                                                                                real(8) :: t_15
                                                                                                                                                                                                                                                real(8) :: t_2
                                                                                                                                                                                                                                                real(8) :: t_3
                                                                                                                                                                                                                                                real(8) :: t_4
                                                                                                                                                                                                                                                real(8) :: t_5
                                                                                                                                                                                                                                                real(8) :: t_6
                                                                                                                                                                                                                                                real(8) :: t_7
                                                                                                                                                                                                                                                real(8) :: t_8
                                                                                                                                                                                                                                                real(8) :: t_9
                                                                                                                                                                                                                                                real(8) :: tmp
                                                                                                                                                                                                                                                t_1 = fmax(fmin(x, y), z)
                                                                                                                                                                                                                                                t_2 = fmax(fmax(x, y), t_1)
                                                                                                                                                                                                                                                t_3 = fmin(fmax(x, y), t_1)
                                                                                                                                                                                                                                                t_4 = fmin(fmin(x, y), z)
                                                                                                                                                                                                                                                t_5 = fmin(t_4, t)
                                                                                                                                                                                                                                                t_6 = sqrt(t_5)
                                                                                                                                                                                                                                                t_7 = fmax(t_4, t)
                                                                                                                                                                                                                                                t_8 = fmax(t_3, t_7)
                                                                                                                                                                                                                                                t_9 = fmin(t_2, t_8)
                                                                                                                                                                                                                                                t_10 = fmin(t_3, t_7)
                                                                                                                                                                                                                                                t_11 = sqrt(t_9)
                                                                                                                                                                                                                                                t_12 = sqrt((t_9 + 1.0d0)) - t_11
                                                                                                                                                                                                                                                t_13 = sqrt(t_10)
                                                                                                                                                                                                                                                t_14 = ((sqrt((t_5 + 1.0d0)) - t_6) + (sqrt((t_10 + 1.0d0)) - t_13)) + t_12
                                                                                                                                                                                                                                                t_15 = fmax(t_2, t_8)
                                                                                                                                                                                                                                                if (t_14 <= 1.0d0) then
                                                                                                                                                                                                                                                    tmp = (sqrt((1.0d0 + t_5)) + (1.0d0 / (1.0d0 + t_11))) - t_6
                                                                                                                                                                                                                                                else if (t_14 <= 2.999995d0) then
                                                                                                                                                                                                                                                    tmp = ((1.0d0 + sqrt((1.0d0 + t_10))) - t_6) - (t_13 - t_12)
                                                                                                                                                                                                                                                else
                                                                                                                                                                                                                                                    tmp = ((2.0d0 - (t_6 + t_13)) + (1.0d0 - t_11)) + (sqrt((t_15 + 1.0d0)) - sqrt(t_15))
                                                                                                                                                                                                                                                end if
                                                                                                                                                                                                                                                code = tmp
                                                                                                                                                                                                                                            end function
                                                                                                                                                                                                                                            
                                                                                                                                                                                                                                            public static double code(double x, double y, double z, double t) {
                                                                                                                                                                                                                                            	double t_1 = fmax(fmin(x, y), z);
                                                                                                                                                                                                                                            	double t_2 = fmax(fmax(x, y), t_1);
                                                                                                                                                                                                                                            	double t_3 = fmin(fmax(x, y), t_1);
                                                                                                                                                                                                                                            	double t_4 = fmin(fmin(x, y), z);
                                                                                                                                                                                                                                            	double t_5 = fmin(t_4, t);
                                                                                                                                                                                                                                            	double t_6 = Math.sqrt(t_5);
                                                                                                                                                                                                                                            	double t_7 = fmax(t_4, t);
                                                                                                                                                                                                                                            	double t_8 = fmax(t_3, t_7);
                                                                                                                                                                                                                                            	double t_9 = fmin(t_2, t_8);
                                                                                                                                                                                                                                            	double t_10 = fmin(t_3, t_7);
                                                                                                                                                                                                                                            	double t_11 = Math.sqrt(t_9);
                                                                                                                                                                                                                                            	double t_12 = Math.sqrt((t_9 + 1.0)) - t_11;
                                                                                                                                                                                                                                            	double t_13 = Math.sqrt(t_10);
                                                                                                                                                                                                                                            	double t_14 = ((Math.sqrt((t_5 + 1.0)) - t_6) + (Math.sqrt((t_10 + 1.0)) - t_13)) + t_12;
                                                                                                                                                                                                                                            	double t_15 = fmax(t_2, t_8);
                                                                                                                                                                                                                                            	double tmp;
                                                                                                                                                                                                                                            	if (t_14 <= 1.0) {
                                                                                                                                                                                                                                            		tmp = (Math.sqrt((1.0 + t_5)) + (1.0 / (1.0 + t_11))) - t_6;
                                                                                                                                                                                                                                            	} else if (t_14 <= 2.999995) {
                                                                                                                                                                                                                                            		tmp = ((1.0 + Math.sqrt((1.0 + t_10))) - t_6) - (t_13 - t_12);
                                                                                                                                                                                                                                            	} else {
                                                                                                                                                                                                                                            		tmp = ((2.0 - (t_6 + t_13)) + (1.0 - t_11)) + (Math.sqrt((t_15 + 1.0)) - Math.sqrt(t_15));
                                                                                                                                                                                                                                            	}
                                                                                                                                                                                                                                            	return tmp;
                                                                                                                                                                                                                                            }
                                                                                                                                                                                                                                            
                                                                                                                                                                                                                                            def code(x, y, z, t):
                                                                                                                                                                                                                                            	t_1 = fmax(fmin(x, y), z)
                                                                                                                                                                                                                                            	t_2 = fmax(fmax(x, y), t_1)
                                                                                                                                                                                                                                            	t_3 = fmin(fmax(x, y), t_1)
                                                                                                                                                                                                                                            	t_4 = fmin(fmin(x, y), z)
                                                                                                                                                                                                                                            	t_5 = fmin(t_4, t)
                                                                                                                                                                                                                                            	t_6 = math.sqrt(t_5)
                                                                                                                                                                                                                                            	t_7 = fmax(t_4, t)
                                                                                                                                                                                                                                            	t_8 = fmax(t_3, t_7)
                                                                                                                                                                                                                                            	t_9 = fmin(t_2, t_8)
                                                                                                                                                                                                                                            	t_10 = fmin(t_3, t_7)
                                                                                                                                                                                                                                            	t_11 = math.sqrt(t_9)
                                                                                                                                                                                                                                            	t_12 = math.sqrt((t_9 + 1.0)) - t_11
                                                                                                                                                                                                                                            	t_13 = math.sqrt(t_10)
                                                                                                                                                                                                                                            	t_14 = ((math.sqrt((t_5 + 1.0)) - t_6) + (math.sqrt((t_10 + 1.0)) - t_13)) + t_12
                                                                                                                                                                                                                                            	t_15 = fmax(t_2, t_8)
                                                                                                                                                                                                                                            	tmp = 0
                                                                                                                                                                                                                                            	if t_14 <= 1.0:
                                                                                                                                                                                                                                            		tmp = (math.sqrt((1.0 + t_5)) + (1.0 / (1.0 + t_11))) - t_6
                                                                                                                                                                                                                                            	elif t_14 <= 2.999995:
                                                                                                                                                                                                                                            		tmp = ((1.0 + math.sqrt((1.0 + t_10))) - t_6) - (t_13 - t_12)
                                                                                                                                                                                                                                            	else:
                                                                                                                                                                                                                                            		tmp = ((2.0 - (t_6 + t_13)) + (1.0 - t_11)) + (math.sqrt((t_15 + 1.0)) - math.sqrt(t_15))
                                                                                                                                                                                                                                            	return tmp
                                                                                                                                                                                                                                            
                                                                                                                                                                                                                                            function code(x, y, z, t)
                                                                                                                                                                                                                                            	t_1 = fmax(fmin(x, y), z)
                                                                                                                                                                                                                                            	t_2 = fmax(fmax(x, y), t_1)
                                                                                                                                                                                                                                            	t_3 = fmin(fmax(x, y), t_1)
                                                                                                                                                                                                                                            	t_4 = fmin(fmin(x, y), z)
                                                                                                                                                                                                                                            	t_5 = fmin(t_4, t)
                                                                                                                                                                                                                                            	t_6 = sqrt(t_5)
                                                                                                                                                                                                                                            	t_7 = fmax(t_4, t)
                                                                                                                                                                                                                                            	t_8 = fmax(t_3, t_7)
                                                                                                                                                                                                                                            	t_9 = fmin(t_2, t_8)
                                                                                                                                                                                                                                            	t_10 = fmin(t_3, t_7)
                                                                                                                                                                                                                                            	t_11 = sqrt(t_9)
                                                                                                                                                                                                                                            	t_12 = Float64(sqrt(Float64(t_9 + 1.0)) - t_11)
                                                                                                                                                                                                                                            	t_13 = sqrt(t_10)
                                                                                                                                                                                                                                            	t_14 = Float64(Float64(Float64(sqrt(Float64(t_5 + 1.0)) - t_6) + Float64(sqrt(Float64(t_10 + 1.0)) - t_13)) + t_12)
                                                                                                                                                                                                                                            	t_15 = fmax(t_2, t_8)
                                                                                                                                                                                                                                            	tmp = 0.0
                                                                                                                                                                                                                                            	if (t_14 <= 1.0)
                                                                                                                                                                                                                                            		tmp = Float64(Float64(sqrt(Float64(1.0 + t_5)) + Float64(1.0 / Float64(1.0 + t_11))) - t_6);
                                                                                                                                                                                                                                            	elseif (t_14 <= 2.999995)
                                                                                                                                                                                                                                            		tmp = Float64(Float64(Float64(1.0 + sqrt(Float64(1.0 + t_10))) - t_6) - Float64(t_13 - t_12));
                                                                                                                                                                                                                                            	else
                                                                                                                                                                                                                                            		tmp = Float64(Float64(Float64(2.0 - Float64(t_6 + t_13)) + Float64(1.0 - t_11)) + Float64(sqrt(Float64(t_15 + 1.0)) - sqrt(t_15)));
                                                                                                                                                                                                                                            	end
                                                                                                                                                                                                                                            	return tmp
                                                                                                                                                                                                                                            end
                                                                                                                                                                                                                                            
                                                                                                                                                                                                                                            function tmp_2 = code(x, y, z, t)
                                                                                                                                                                                                                                            	t_1 = max(min(x, y), z);
                                                                                                                                                                                                                                            	t_2 = max(max(x, y), t_1);
                                                                                                                                                                                                                                            	t_3 = min(max(x, y), t_1);
                                                                                                                                                                                                                                            	t_4 = min(min(x, y), z);
                                                                                                                                                                                                                                            	t_5 = min(t_4, t);
                                                                                                                                                                                                                                            	t_6 = sqrt(t_5);
                                                                                                                                                                                                                                            	t_7 = max(t_4, t);
                                                                                                                                                                                                                                            	t_8 = max(t_3, t_7);
                                                                                                                                                                                                                                            	t_9 = min(t_2, t_8);
                                                                                                                                                                                                                                            	t_10 = min(t_3, t_7);
                                                                                                                                                                                                                                            	t_11 = sqrt(t_9);
                                                                                                                                                                                                                                            	t_12 = sqrt((t_9 + 1.0)) - t_11;
                                                                                                                                                                                                                                            	t_13 = sqrt(t_10);
                                                                                                                                                                                                                                            	t_14 = ((sqrt((t_5 + 1.0)) - t_6) + (sqrt((t_10 + 1.0)) - t_13)) + t_12;
                                                                                                                                                                                                                                            	t_15 = max(t_2, t_8);
                                                                                                                                                                                                                                            	tmp = 0.0;
                                                                                                                                                                                                                                            	if (t_14 <= 1.0)
                                                                                                                                                                                                                                            		tmp = (sqrt((1.0 + t_5)) + (1.0 / (1.0 + t_11))) - t_6;
                                                                                                                                                                                                                                            	elseif (t_14 <= 2.999995)
                                                                                                                                                                                                                                            		tmp = ((1.0 + sqrt((1.0 + t_10))) - t_6) - (t_13 - t_12);
                                                                                                                                                                                                                                            	else
                                                                                                                                                                                                                                            		tmp = ((2.0 - (t_6 + t_13)) + (1.0 - t_11)) + (sqrt((t_15 + 1.0)) - sqrt(t_15));
                                                                                                                                                                                                                                            	end
                                                                                                                                                                                                                                            	tmp_2 = tmp;
                                                                                                                                                                                                                                            end
                                                                                                                                                                                                                                            
                                                                                                                                                                                                                                            code[x_, y_, z_, t_] := Block[{t$95$1 = N[Max[N[Min[x, y], $MachinePrecision], z], $MachinePrecision]}, Block[{t$95$2 = N[Max[N[Max[x, y], $MachinePrecision], t$95$1], $MachinePrecision]}, Block[{t$95$3 = N[Min[N[Max[x, y], $MachinePrecision], t$95$1], $MachinePrecision]}, Block[{t$95$4 = N[Min[N[Min[x, y], $MachinePrecision], z], $MachinePrecision]}, Block[{t$95$5 = N[Min[t$95$4, t], $MachinePrecision]}, Block[{t$95$6 = N[Sqrt[t$95$5], $MachinePrecision]}, Block[{t$95$7 = N[Max[t$95$4, t], $MachinePrecision]}, Block[{t$95$8 = N[Max[t$95$3, t$95$7], $MachinePrecision]}, Block[{t$95$9 = N[Min[t$95$2, t$95$8], $MachinePrecision]}, Block[{t$95$10 = N[Min[t$95$3, t$95$7], $MachinePrecision]}, Block[{t$95$11 = N[Sqrt[t$95$9], $MachinePrecision]}, Block[{t$95$12 = N[(N[Sqrt[N[(t$95$9 + 1.0), $MachinePrecision]], $MachinePrecision] - t$95$11), $MachinePrecision]}, Block[{t$95$13 = N[Sqrt[t$95$10], $MachinePrecision]}, Block[{t$95$14 = N[(N[(N[(N[Sqrt[N[(t$95$5 + 1.0), $MachinePrecision]], $MachinePrecision] - t$95$6), $MachinePrecision] + N[(N[Sqrt[N[(t$95$10 + 1.0), $MachinePrecision]], $MachinePrecision] - t$95$13), $MachinePrecision]), $MachinePrecision] + t$95$12), $MachinePrecision]}, Block[{t$95$15 = N[Max[t$95$2, t$95$8], $MachinePrecision]}, If[LessEqual[t$95$14, 1.0], N[(N[(N[Sqrt[N[(1.0 + t$95$5), $MachinePrecision]], $MachinePrecision] + N[(1.0 / N[(1.0 + t$95$11), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] - t$95$6), $MachinePrecision], If[LessEqual[t$95$14, 2.999995], N[(N[(N[(1.0 + N[Sqrt[N[(1.0 + t$95$10), $MachinePrecision]], $MachinePrecision]), $MachinePrecision] - t$95$6), $MachinePrecision] - N[(t$95$13 - t$95$12), $MachinePrecision]), $MachinePrecision], N[(N[(N[(2.0 - N[(t$95$6 + t$95$13), $MachinePrecision]), $MachinePrecision] + N[(1.0 - t$95$11), $MachinePrecision]), $MachinePrecision] + N[(N[Sqrt[N[(t$95$15 + 1.0), $MachinePrecision]], $MachinePrecision] - N[Sqrt[t$95$15], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]]]]]]]]]]]]]]]]]]
                                                                                                                                                                                                                                            
                                                                                                                                                                                                                                            f(x, y, z, t):
                                                                                                                                                                                                                                            	x in [-inf, +inf],
                                                                                                                                                                                                                                            	y in [-inf, +inf],
                                                                                                                                                                                                                                            	z in [-inf, +inf],
                                                                                                                                                                                                                                            	t in [-inf, +inf]
                                                                                                                                                                                                                                            code: THEORY
                                                                                                                                                                                                                                            BEGIN
                                                                                                                                                                                                                                            f(x, y, z, t: real): real =
                                                                                                                                                                                                                                            	LET tmp_2 = IF (x < y) THEN x ELSE y ENDIF IN
                                                                                                                                                                                                                                            	LET tmp_3 = IF (x < y) THEN x ELSE y ENDIF IN
                                                                                                                                                                                                                                            	LET tmp_1 = IF (tmp_2 > z) THEN tmp_3 ELSE z ENDIF IN
                                                                                                                                                                                                                                            	LET t_1 = tmp_1 IN
                                                                                                                                                                                                                                            		LET tmp_6 = IF (x > y) THEN x ELSE y ENDIF IN
                                                                                                                                                                                                                                            		LET tmp_7 = IF (x > y) THEN x ELSE y ENDIF IN
                                                                                                                                                                                                                                            		LET tmp_5 = IF (tmp_6 > t_1) THEN tmp_7 ELSE t_1 ENDIF IN
                                                                                                                                                                                                                                            		LET t_2 = tmp_5 IN
                                                                                                                                                                                                                                            			LET tmp_10 = IF (x > y) THEN x ELSE y ENDIF IN
                                                                                                                                                                                                                                            			LET tmp_11 = IF (x > y) THEN x ELSE y ENDIF IN
                                                                                                                                                                                                                                            			LET tmp_9 = IF (tmp_10 < t_1) THEN tmp_11 ELSE t_1 ENDIF IN
                                                                                                                                                                                                                                            			LET t_3 = tmp_9 IN
                                                                                                                                                                                                                                            				LET tmp_14 = IF (x < y) THEN x ELSE y ENDIF IN
                                                                                                                                                                                                                                            				LET tmp_15 = IF (x < y) THEN x ELSE y ENDIF IN
                                                                                                                                                                                                                                            				LET tmp_13 = IF (tmp_14 < z) THEN tmp_15 ELSE z ENDIF IN
                                                                                                                                                                                                                                            				LET t_4 = tmp_13 IN
                                                                                                                                                                                                                                            					LET tmp_16 = IF (t_4 < t) THEN t_4 ELSE t ENDIF IN
                                                                                                                                                                                                                                            					LET t_5 = tmp_16 IN
                                                                                                                                                                                                                                            						LET t_6 = (sqrt(t_5)) IN
                                                                                                                                                                                                                                            							LET tmp_17 = IF (t_4 > t) THEN t_4 ELSE t ENDIF IN
                                                                                                                                                                                                                                            							LET t_7 = tmp_17 IN
                                                                                                                                                                                                                                            								LET tmp_18 = IF (t_3 > t_7) THEN t_3 ELSE t_7 ENDIF IN
                                                                                                                                                                                                                                            								LET t_8 = tmp_18 IN
                                                                                                                                                                                                                                            									LET tmp_19 = IF (t_2 < t_8) THEN t_2 ELSE t_8 ENDIF IN
                                                                                                                                                                                                                                            									LET t_9 = tmp_19 IN
                                                                                                                                                                                                                                            										LET tmp_20 = IF (t_3 < t_7) THEN t_3 ELSE t_7 ENDIF IN
                                                                                                                                                                                                                                            										LET t_10 = tmp_20 IN
                                                                                                                                                                                                                                            											LET t_11 = (sqrt(t_9)) IN
                                                                                                                                                                                                                                            												LET t_12 = ((sqrt((t_9 + (1)))) - t_11) IN
                                                                                                                                                                                                                                            													LET t_13 = (sqrt(t_10)) IN
                                                                                                                                                                                                                                            														LET t_14 = ((((sqrt((t_5 + (1)))) - t_6) + ((sqrt((t_10 + (1)))) - t_13)) + t_12) IN
                                                                                                                                                                                                                                            															LET tmp_21 = IF (t_2 > t_8) THEN t_2 ELSE t_8 ENDIF IN
                                                                                                                                                                                                                                            															LET t_15 = tmp_21 IN
                                                                                                                                                                                                                                            																LET tmp_23 = IF (t_14 <= (29999950000000001892885848064906895160675048828125e-49)) THEN ((((1) + (sqrt(((1) + t_10)))) - t_6) - (t_13 - t_12)) ELSE ((((2) - (t_6 + t_13)) + ((1) - t_11)) + ((sqrt((t_15 + (1)))) - (sqrt(t_15)))) ENDIF IN
                                                                                                                                                                                                                                            																LET tmp_22 = IF (t_14 <= (1)) THEN (((sqrt(((1) + t_5))) + ((1) / ((1) + t_11))) - t_6) ELSE tmp_23 ENDIF IN
                                                                                                                                                                                                                                            	tmp_22
                                                                                                                                                                                                                                            END code
                                                                                                                                                                                                                                            \begin{array}{l}
                                                                                                                                                                                                                                            t_1 := \mathsf{max}\left(\mathsf{min}\left(x, y\right), z\right)\\
                                                                                                                                                                                                                                            t_2 := \mathsf{max}\left(\mathsf{max}\left(x, y\right), t\_1\right)\\
                                                                                                                                                                                                                                            t_3 := \mathsf{min}\left(\mathsf{max}\left(x, y\right), t\_1\right)\\
                                                                                                                                                                                                                                            t_4 := \mathsf{min}\left(\mathsf{min}\left(x, y\right), z\right)\\
                                                                                                                                                                                                                                            t_5 := \mathsf{min}\left(t\_4, t\right)\\
                                                                                                                                                                                                                                            t_6 := \sqrt{t\_5}\\
                                                                                                                                                                                                                                            t_7 := \mathsf{max}\left(t\_4, t\right)\\
                                                                                                                                                                                                                                            t_8 := \mathsf{max}\left(t\_3, t\_7\right)\\
                                                                                                                                                                                                                                            t_9 := \mathsf{min}\left(t\_2, t\_8\right)\\
                                                                                                                                                                                                                                            t_10 := \mathsf{min}\left(t\_3, t\_7\right)\\
                                                                                                                                                                                                                                            t_11 := \sqrt{t\_9}\\
                                                                                                                                                                                                                                            t_12 := \sqrt{t\_9 + 1} - t\_11\\
                                                                                                                                                                                                                                            t_13 := \sqrt{t\_10}\\
                                                                                                                                                                                                                                            t_14 := \left(\left(\sqrt{t\_5 + 1} - t\_6\right) + \left(\sqrt{t\_10 + 1} - t\_13\right)\right) + t\_12\\
                                                                                                                                                                                                                                            t_15 := \mathsf{max}\left(t\_2, t\_8\right)\\
                                                                                                                                                                                                                                            \mathbf{if}\;t\_14 \leq 1:\\
                                                                                                                                                                                                                                            \;\;\;\;\left(\sqrt{1 + t\_5} + \frac{1}{1 + t\_11}\right) - t\_6\\
                                                                                                                                                                                                                                            
                                                                                                                                                                                                                                            \mathbf{elif}\;t\_14 \leq 2.999995:\\
                                                                                                                                                                                                                                            \;\;\;\;\left(\left(1 + \sqrt{1 + t\_10}\right) - t\_6\right) - \left(t\_13 - t\_12\right)\\
                                                                                                                                                                                                                                            
                                                                                                                                                                                                                                            \mathbf{else}:\\
                                                                                                                                                                                                                                            \;\;\;\;\left(\left(2 - \left(t\_6 + t\_13\right)\right) + \left(1 - t\_11\right)\right) + \left(\sqrt{t\_15 + 1} - \sqrt{t\_15}\right)\\
                                                                                                                                                                                                                                            
                                                                                                                                                                                                                                            
                                                                                                                                                                                                                                            \end{array}
                                                                                                                                                                                                                                            
                                                                                                                                                                                                                                            Derivation
                                                                                                                                                                                                                                            1. Split input into 3 regimes
                                                                                                                                                                                                                                            2. if (+.f64 (+.f64 (-.f64 (sqrt.f64 (+.f64 x #s(literal 1 binary64))) (sqrt.f64 x)) (-.f64 (sqrt.f64 (+.f64 y #s(literal 1 binary64))) (sqrt.f64 y))) (-.f64 (sqrt.f64 (+.f64 z #s(literal 1 binary64))) (sqrt.f64 z))) < 1

                                                                                                                                                                                                                                              1. Initial program 92.0%

                                                                                                                                                                                                                                                \[\left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                                              2. Step-by-step derivation
                                                                                                                                                                                                                                                1. Applied rewrites93.8%

                                                                                                                                                                                                                                                  \[\leadsto \left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \frac{1}{\sqrt{z} + \sqrt{z + 1}}\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                                                2. Taylor expanded in t around inf

                                                                                                                                                                                                                                                  \[\leadsto \left(\sqrt{1 + x} + \left(\sqrt{1 + y} + \frac{1}{\sqrt{z} + \sqrt{1 + z}}\right)\right) - \left(\sqrt{x} + \sqrt{y}\right) \]
                                                                                                                                                                                                                                                3. Step-by-step derivation
                                                                                                                                                                                                                                                  1. Applied rewrites19.3%

                                                                                                                                                                                                                                                    \[\leadsto \left(\sqrt{1 + x} + \left(\sqrt{1 + y} + \frac{1}{\sqrt{z} + \sqrt{1 + z}}\right)\right) - \left(\sqrt{x} + \sqrt{y}\right) \]
                                                                                                                                                                                                                                                  2. Taylor expanded in y around inf

                                                                                                                                                                                                                                                    \[\leadsto \left(\sqrt{1 + x} + \frac{1}{\sqrt{z} + \sqrt{1 + z}}\right) - \sqrt{x} \]
                                                                                                                                                                                                                                                  3. Step-by-step derivation
                                                                                                                                                                                                                                                    1. Applied rewrites21.6%

                                                                                                                                                                                                                                                      \[\leadsto \left(\sqrt{1 + x} + \frac{1}{\sqrt{z} + \sqrt{1 + z}}\right) - \sqrt{x} \]
                                                                                                                                                                                                                                                    2. Taylor expanded in z around 0

                                                                                                                                                                                                                                                      \[\leadsto \left(\sqrt{1 + x} + \frac{1}{1 + \sqrt{z}}\right) - \sqrt{x} \]
                                                                                                                                                                                                                                                    3. Step-by-step derivation
                                                                                                                                                                                                                                                      1. Applied rewrites21.3%

                                                                                                                                                                                                                                                        \[\leadsto \left(\sqrt{1 + x} + \frac{1}{1 + \sqrt{z}}\right) - \sqrt{x} \]

                                                                                                                                                                                                                                                      if 1 < (+.f64 (+.f64 (-.f64 (sqrt.f64 (+.f64 x #s(literal 1 binary64))) (sqrt.f64 x)) (-.f64 (sqrt.f64 (+.f64 y #s(literal 1 binary64))) (sqrt.f64 y))) (-.f64 (sqrt.f64 (+.f64 z #s(literal 1 binary64))) (sqrt.f64 z))) < 2.9999950000000002

                                                                                                                                                                                                                                                      1. Initial program 92.0%

                                                                                                                                                                                                                                                        \[\left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                                                      2. Step-by-step derivation
                                                                                                                                                                                                                                                        1. Applied rewrites54.5%

                                                                                                                                                                                                                                                          \[\leadsto \left(\left(\sqrt{t + 1} - \sqrt{t}\right) + \left(\sqrt{y + 1} - \left(\sqrt{x} - \sqrt{1 + x}\right)\right)\right) - \left(\sqrt{y} - \left(\sqrt{z + 1} - \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                        2. Taylor expanded in t around inf

                                                                                                                                                                                                                                                          \[\leadsto \left(\left(\sqrt{1 + x} + \sqrt{1 + y}\right) - \sqrt{x}\right) - \left(\sqrt{y} - \left(\sqrt{z + 1} - \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                        3. Step-by-step derivation
                                                                                                                                                                                                                                                          1. Applied rewrites20.8%

                                                                                                                                                                                                                                                            \[\leadsto \left(\left(\sqrt{1 + x} + \sqrt{1 + y}\right) - \sqrt{x}\right) - \left(\sqrt{y} - \left(\sqrt{z + 1} - \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                          2. Taylor expanded in x around 0

                                                                                                                                                                                                                                                            \[\leadsto \left(\left(1 + \sqrt{1 + y}\right) - \sqrt{x}\right) - \left(\sqrt{y} - \left(\sqrt{z + 1} - \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                          3. Step-by-step derivation
                                                                                                                                                                                                                                                            1. Applied rewrites16.9%

                                                                                                                                                                                                                                                              \[\leadsto \left(\left(1 + \sqrt{1 + y}\right) - \sqrt{x}\right) - \left(\sqrt{y} - \left(\sqrt{z + 1} - \sqrt{z}\right)\right) \]

                                                                                                                                                                                                                                                            if 2.9999950000000002 < (+.f64 (+.f64 (-.f64 (sqrt.f64 (+.f64 x #s(literal 1 binary64))) (sqrt.f64 x)) (-.f64 (sqrt.f64 (+.f64 y #s(literal 1 binary64))) (sqrt.f64 y))) (-.f64 (sqrt.f64 (+.f64 z #s(literal 1 binary64))) (sqrt.f64 z)))

                                                                                                                                                                                                                                                            1. Initial program 92.0%

                                                                                                                                                                                                                                                              \[\left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                                                            2. Taylor expanded in y around 0

                                                                                                                                                                                                                                                              \[\leadsto \left(\left(\left(1 + \sqrt{1 + x}\right) - \left(\sqrt{x} + \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                                                            3. Step-by-step derivation
                                                                                                                                                                                                                                                              1. Applied rewrites36.9%

                                                                                                                                                                                                                                                                \[\leadsto \left(\left(\left(1 + \sqrt{1 + x}\right) - \left(\sqrt{x} + \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                                                              2. Taylor expanded in x around 0

                                                                                                                                                                                                                                                                \[\leadsto \left(\left(2 - \left(\sqrt{x} + \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                                                              3. Step-by-step derivation
                                                                                                                                                                                                                                                                1. Applied rewrites24.5%

                                                                                                                                                                                                                                                                  \[\leadsto \left(\left(2 - \left(\sqrt{x} + \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                                                                2. Taylor expanded in z around 0

                                                                                                                                                                                                                                                                  \[\leadsto \left(\left(2 - \left(\sqrt{x} + \sqrt{y}\right)\right) + \left(1 - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                                                                3. Step-by-step derivation
                                                                                                                                                                                                                                                                  1. Applied rewrites13.0%

                                                                                                                                                                                                                                                                    \[\leadsto \left(\left(2 - \left(\sqrt{x} + \sqrt{y}\right)\right) + \left(1 - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                                                                4. Recombined 3 regimes into one program.
                                                                                                                                                                                                                                                                5. Add Preprocessing

                                                                                                                                                                                                                                                                Alternative 18: 91.6% accurate, 0.1× speedup?

                                                                                                                                                                                                                                                                \[\begin{array}{l} t_1 := \mathsf{max}\left(\mathsf{min}\left(x, y\right), z\right)\\ t_2 := \mathsf{min}\left(\mathsf{max}\left(x, y\right), t\_1\right)\\ t_3 := \mathsf{max}\left(\mathsf{max}\left(x, y\right), t\_1\right)\\ t_4 := \mathsf{min}\left(\mathsf{min}\left(x, y\right), z\right)\\ t_5 := \mathsf{min}\left(t\_4, t\right)\\ t_6 := \sqrt{t\_5}\\ t_7 := \mathsf{max}\left(t\_4, t\right)\\ t_8 := \mathsf{max}\left(t\_2, t\_7\right)\\ t_9 := \mathsf{min}\left(t\_3, t\_8\right)\\ t_10 := \mathsf{min}\left(t\_2, t\_7\right)\\ t_11 := \sqrt{t\_9}\\ t_12 := \sqrt{t\_9 + 1} - t\_11\\ t_13 := \mathsf{max}\left(t\_3, t\_8\right)\\ t_14 := \sqrt{t\_10}\\ t_15 := \left(\left(\sqrt{t\_5 + 1} - t\_6\right) + \left(\sqrt{t\_10 + 1} - t\_14\right)\right) + t\_12\\ t_16 := t\_6 + t\_14\\ \mathbf{if}\;t\_15 \leq 1:\\ \;\;\;\;\left(\sqrt{1 + t\_5} + \frac{1}{1 + t\_11}\right) - t\_6\\ \mathbf{elif}\;t\_15 \leq 1.9998:\\ \;\;\;\;\left(1 + \sqrt{1 + t\_10}\right) - t\_16\\ \mathbf{elif}\;t\_15 \leq 2.999995:\\ \;\;\;\;\left(\left(2 + 0.5 \cdot t\_10\right) - t\_6\right) - \left(t\_14 - t\_12\right)\\ \mathbf{else}:\\ \;\;\;\;\left(\left(2 - t\_16\right) + \left(1 - t\_11\right)\right) + \left(\sqrt{t\_13 + 1} - \sqrt{t\_13}\right)\\ \end{array} \]
                                                                                                                                                                                                                                                                (FPCore (x y z t)
                                                                                                                                                                                                                                                                  :precision binary64
                                                                                                                                                                                                                                                                  :pre TRUE
                                                                                                                                                                                                                                                                  (let* ((t_1 (fmax (fmin x y) z))
                                                                                                                                                                                                                                                                       (t_2 (fmin (fmax x y) t_1))
                                                                                                                                                                                                                                                                       (t_3 (fmax (fmax x y) t_1))
                                                                                                                                                                                                                                                                       (t_4 (fmin (fmin x y) z))
                                                                                                                                                                                                                                                                       (t_5 (fmin t_4 t))
                                                                                                                                                                                                                                                                       (t_6 (sqrt t_5))
                                                                                                                                                                                                                                                                       (t_7 (fmax t_4 t))
                                                                                                                                                                                                                                                                       (t_8 (fmax t_2 t_7))
                                                                                                                                                                                                                                                                       (t_9 (fmin t_3 t_8))
                                                                                                                                                                                                                                                                       (t_10 (fmin t_2 t_7))
                                                                                                                                                                                                                                                                       (t_11 (sqrt t_9))
                                                                                                                                                                                                                                                                       (t_12 (- (sqrt (+ t_9 1.0)) t_11))
                                                                                                                                                                                                                                                                       (t_13 (fmax t_3 t_8))
                                                                                                                                                                                                                                                                       (t_14 (sqrt t_10))
                                                                                                                                                                                                                                                                       (t_15
                                                                                                                                                                                                                                                                        (+
                                                                                                                                                                                                                                                                         (+ (- (sqrt (+ t_5 1.0)) t_6) (- (sqrt (+ t_10 1.0)) t_14))
                                                                                                                                                                                                                                                                         t_12))
                                                                                                                                                                                                                                                                       (t_16 (+ t_6 t_14)))
                                                                                                                                                                                                                                                                  (if (<= t_15 1.0)
                                                                                                                                                                                                                                                                    (- (+ (sqrt (+ 1.0 t_5)) (/ 1.0 (+ 1.0 t_11))) t_6)
                                                                                                                                                                                                                                                                    (if (<= t_15 1.9998)
                                                                                                                                                                                                                                                                      (- (+ 1.0 (sqrt (+ 1.0 t_10))) t_16)
                                                                                                                                                                                                                                                                      (if (<= t_15 2.999995)
                                                                                                                                                                                                                                                                        (- (- (+ 2.0 (* 0.5 t_10)) t_6) (- t_14 t_12))
                                                                                                                                                                                                                                                                        (+
                                                                                                                                                                                                                                                                         (+ (- 2.0 t_16) (- 1.0 t_11))
                                                                                                                                                                                                                                                                         (- (sqrt (+ t_13 1.0)) (sqrt t_13))))))))
                                                                                                                                                                                                                                                                double code(double x, double y, double z, double t) {
                                                                                                                                                                                                                                                                	double t_1 = fmax(fmin(x, y), z);
                                                                                                                                                                                                                                                                	double t_2 = fmin(fmax(x, y), t_1);
                                                                                                                                                                                                                                                                	double t_3 = fmax(fmax(x, y), t_1);
                                                                                                                                                                                                                                                                	double t_4 = fmin(fmin(x, y), z);
                                                                                                                                                                                                                                                                	double t_5 = fmin(t_4, t);
                                                                                                                                                                                                                                                                	double t_6 = sqrt(t_5);
                                                                                                                                                                                                                                                                	double t_7 = fmax(t_4, t);
                                                                                                                                                                                                                                                                	double t_8 = fmax(t_2, t_7);
                                                                                                                                                                                                                                                                	double t_9 = fmin(t_3, t_8);
                                                                                                                                                                                                                                                                	double t_10 = fmin(t_2, t_7);
                                                                                                                                                                                                                                                                	double t_11 = sqrt(t_9);
                                                                                                                                                                                                                                                                	double t_12 = sqrt((t_9 + 1.0)) - t_11;
                                                                                                                                                                                                                                                                	double t_13 = fmax(t_3, t_8);
                                                                                                                                                                                                                                                                	double t_14 = sqrt(t_10);
                                                                                                                                                                                                                                                                	double t_15 = ((sqrt((t_5 + 1.0)) - t_6) + (sqrt((t_10 + 1.0)) - t_14)) + t_12;
                                                                                                                                                                                                                                                                	double t_16 = t_6 + t_14;
                                                                                                                                                                                                                                                                	double tmp;
                                                                                                                                                                                                                                                                	if (t_15 <= 1.0) {
                                                                                                                                                                                                                                                                		tmp = (sqrt((1.0 + t_5)) + (1.0 / (1.0 + t_11))) - t_6;
                                                                                                                                                                                                                                                                	} else if (t_15 <= 1.9998) {
                                                                                                                                                                                                                                                                		tmp = (1.0 + sqrt((1.0 + t_10))) - t_16;
                                                                                                                                                                                                                                                                	} else if (t_15 <= 2.999995) {
                                                                                                                                                                                                                                                                		tmp = ((2.0 + (0.5 * t_10)) - t_6) - (t_14 - t_12);
                                                                                                                                                                                                                                                                	} else {
                                                                                                                                                                                                                                                                		tmp = ((2.0 - t_16) + (1.0 - t_11)) + (sqrt((t_13 + 1.0)) - sqrt(t_13));
                                                                                                                                                                                                                                                                	}
                                                                                                                                                                                                                                                                	return tmp;
                                                                                                                                                                                                                                                                }
                                                                                                                                                                                                                                                                
                                                                                                                                                                                                                                                                real(8) function code(x, y, z, t)
                                                                                                                                                                                                                                                                use fmin_fmax_functions
                                                                                                                                                                                                                                                                    real(8), intent (in) :: x
                                                                                                                                                                                                                                                                    real(8), intent (in) :: y
                                                                                                                                                                                                                                                                    real(8), intent (in) :: z
                                                                                                                                                                                                                                                                    real(8), intent (in) :: t
                                                                                                                                                                                                                                                                    real(8) :: t_1
                                                                                                                                                                                                                                                                    real(8) :: t_10
                                                                                                                                                                                                                                                                    real(8) :: t_11
                                                                                                                                                                                                                                                                    real(8) :: t_12
                                                                                                                                                                                                                                                                    real(8) :: t_13
                                                                                                                                                                                                                                                                    real(8) :: t_14
                                                                                                                                                                                                                                                                    real(8) :: t_15
                                                                                                                                                                                                                                                                    real(8) :: t_16
                                                                                                                                                                                                                                                                    real(8) :: t_2
                                                                                                                                                                                                                                                                    real(8) :: t_3
                                                                                                                                                                                                                                                                    real(8) :: t_4
                                                                                                                                                                                                                                                                    real(8) :: t_5
                                                                                                                                                                                                                                                                    real(8) :: t_6
                                                                                                                                                                                                                                                                    real(8) :: t_7
                                                                                                                                                                                                                                                                    real(8) :: t_8
                                                                                                                                                                                                                                                                    real(8) :: t_9
                                                                                                                                                                                                                                                                    real(8) :: tmp
                                                                                                                                                                                                                                                                    t_1 = fmax(fmin(x, y), z)
                                                                                                                                                                                                                                                                    t_2 = fmin(fmax(x, y), t_1)
                                                                                                                                                                                                                                                                    t_3 = fmax(fmax(x, y), t_1)
                                                                                                                                                                                                                                                                    t_4 = fmin(fmin(x, y), z)
                                                                                                                                                                                                                                                                    t_5 = fmin(t_4, t)
                                                                                                                                                                                                                                                                    t_6 = sqrt(t_5)
                                                                                                                                                                                                                                                                    t_7 = fmax(t_4, t)
                                                                                                                                                                                                                                                                    t_8 = fmax(t_2, t_7)
                                                                                                                                                                                                                                                                    t_9 = fmin(t_3, t_8)
                                                                                                                                                                                                                                                                    t_10 = fmin(t_2, t_7)
                                                                                                                                                                                                                                                                    t_11 = sqrt(t_9)
                                                                                                                                                                                                                                                                    t_12 = sqrt((t_9 + 1.0d0)) - t_11
                                                                                                                                                                                                                                                                    t_13 = fmax(t_3, t_8)
                                                                                                                                                                                                                                                                    t_14 = sqrt(t_10)
                                                                                                                                                                                                                                                                    t_15 = ((sqrt((t_5 + 1.0d0)) - t_6) + (sqrt((t_10 + 1.0d0)) - t_14)) + t_12
                                                                                                                                                                                                                                                                    t_16 = t_6 + t_14
                                                                                                                                                                                                                                                                    if (t_15 <= 1.0d0) then
                                                                                                                                                                                                                                                                        tmp = (sqrt((1.0d0 + t_5)) + (1.0d0 / (1.0d0 + t_11))) - t_6
                                                                                                                                                                                                                                                                    else if (t_15 <= 1.9998d0) then
                                                                                                                                                                                                                                                                        tmp = (1.0d0 + sqrt((1.0d0 + t_10))) - t_16
                                                                                                                                                                                                                                                                    else if (t_15 <= 2.999995d0) then
                                                                                                                                                                                                                                                                        tmp = ((2.0d0 + (0.5d0 * t_10)) - t_6) - (t_14 - t_12)
                                                                                                                                                                                                                                                                    else
                                                                                                                                                                                                                                                                        tmp = ((2.0d0 - t_16) + (1.0d0 - t_11)) + (sqrt((t_13 + 1.0d0)) - sqrt(t_13))
                                                                                                                                                                                                                                                                    end if
                                                                                                                                                                                                                                                                    code = tmp
                                                                                                                                                                                                                                                                end function
                                                                                                                                                                                                                                                                
                                                                                                                                                                                                                                                                public static double code(double x, double y, double z, double t) {
                                                                                                                                                                                                                                                                	double t_1 = fmax(fmin(x, y), z);
                                                                                                                                                                                                                                                                	double t_2 = fmin(fmax(x, y), t_1);
                                                                                                                                                                                                                                                                	double t_3 = fmax(fmax(x, y), t_1);
                                                                                                                                                                                                                                                                	double t_4 = fmin(fmin(x, y), z);
                                                                                                                                                                                                                                                                	double t_5 = fmin(t_4, t);
                                                                                                                                                                                                                                                                	double t_6 = Math.sqrt(t_5);
                                                                                                                                                                                                                                                                	double t_7 = fmax(t_4, t);
                                                                                                                                                                                                                                                                	double t_8 = fmax(t_2, t_7);
                                                                                                                                                                                                                                                                	double t_9 = fmin(t_3, t_8);
                                                                                                                                                                                                                                                                	double t_10 = fmin(t_2, t_7);
                                                                                                                                                                                                                                                                	double t_11 = Math.sqrt(t_9);
                                                                                                                                                                                                                                                                	double t_12 = Math.sqrt((t_9 + 1.0)) - t_11;
                                                                                                                                                                                                                                                                	double t_13 = fmax(t_3, t_8);
                                                                                                                                                                                                                                                                	double t_14 = Math.sqrt(t_10);
                                                                                                                                                                                                                                                                	double t_15 = ((Math.sqrt((t_5 + 1.0)) - t_6) + (Math.sqrt((t_10 + 1.0)) - t_14)) + t_12;
                                                                                                                                                                                                                                                                	double t_16 = t_6 + t_14;
                                                                                                                                                                                                                                                                	double tmp;
                                                                                                                                                                                                                                                                	if (t_15 <= 1.0) {
                                                                                                                                                                                                                                                                		tmp = (Math.sqrt((1.0 + t_5)) + (1.0 / (1.0 + t_11))) - t_6;
                                                                                                                                                                                                                                                                	} else if (t_15 <= 1.9998) {
                                                                                                                                                                                                                                                                		tmp = (1.0 + Math.sqrt((1.0 + t_10))) - t_16;
                                                                                                                                                                                                                                                                	} else if (t_15 <= 2.999995) {
                                                                                                                                                                                                                                                                		tmp = ((2.0 + (0.5 * t_10)) - t_6) - (t_14 - t_12);
                                                                                                                                                                                                                                                                	} else {
                                                                                                                                                                                                                                                                		tmp = ((2.0 - t_16) + (1.0 - t_11)) + (Math.sqrt((t_13 + 1.0)) - Math.sqrt(t_13));
                                                                                                                                                                                                                                                                	}
                                                                                                                                                                                                                                                                	return tmp;
                                                                                                                                                                                                                                                                }
                                                                                                                                                                                                                                                                
                                                                                                                                                                                                                                                                def code(x, y, z, t):
                                                                                                                                                                                                                                                                	t_1 = fmax(fmin(x, y), z)
                                                                                                                                                                                                                                                                	t_2 = fmin(fmax(x, y), t_1)
                                                                                                                                                                                                                                                                	t_3 = fmax(fmax(x, y), t_1)
                                                                                                                                                                                                                                                                	t_4 = fmin(fmin(x, y), z)
                                                                                                                                                                                                                                                                	t_5 = fmin(t_4, t)
                                                                                                                                                                                                                                                                	t_6 = math.sqrt(t_5)
                                                                                                                                                                                                                                                                	t_7 = fmax(t_4, t)
                                                                                                                                                                                                                                                                	t_8 = fmax(t_2, t_7)
                                                                                                                                                                                                                                                                	t_9 = fmin(t_3, t_8)
                                                                                                                                                                                                                                                                	t_10 = fmin(t_2, t_7)
                                                                                                                                                                                                                                                                	t_11 = math.sqrt(t_9)
                                                                                                                                                                                                                                                                	t_12 = math.sqrt((t_9 + 1.0)) - t_11
                                                                                                                                                                                                                                                                	t_13 = fmax(t_3, t_8)
                                                                                                                                                                                                                                                                	t_14 = math.sqrt(t_10)
                                                                                                                                                                                                                                                                	t_15 = ((math.sqrt((t_5 + 1.0)) - t_6) + (math.sqrt((t_10 + 1.0)) - t_14)) + t_12
                                                                                                                                                                                                                                                                	t_16 = t_6 + t_14
                                                                                                                                                                                                                                                                	tmp = 0
                                                                                                                                                                                                                                                                	if t_15 <= 1.0:
                                                                                                                                                                                                                                                                		tmp = (math.sqrt((1.0 + t_5)) + (1.0 / (1.0 + t_11))) - t_6
                                                                                                                                                                                                                                                                	elif t_15 <= 1.9998:
                                                                                                                                                                                                                                                                		tmp = (1.0 + math.sqrt((1.0 + t_10))) - t_16
                                                                                                                                                                                                                                                                	elif t_15 <= 2.999995:
                                                                                                                                                                                                                                                                		tmp = ((2.0 + (0.5 * t_10)) - t_6) - (t_14 - t_12)
                                                                                                                                                                                                                                                                	else:
                                                                                                                                                                                                                                                                		tmp = ((2.0 - t_16) + (1.0 - t_11)) + (math.sqrt((t_13 + 1.0)) - math.sqrt(t_13))
                                                                                                                                                                                                                                                                	return tmp
                                                                                                                                                                                                                                                                
                                                                                                                                                                                                                                                                function code(x, y, z, t)
                                                                                                                                                                                                                                                                	t_1 = fmax(fmin(x, y), z)
                                                                                                                                                                                                                                                                	t_2 = fmin(fmax(x, y), t_1)
                                                                                                                                                                                                                                                                	t_3 = fmax(fmax(x, y), t_1)
                                                                                                                                                                                                                                                                	t_4 = fmin(fmin(x, y), z)
                                                                                                                                                                                                                                                                	t_5 = fmin(t_4, t)
                                                                                                                                                                                                                                                                	t_6 = sqrt(t_5)
                                                                                                                                                                                                                                                                	t_7 = fmax(t_4, t)
                                                                                                                                                                                                                                                                	t_8 = fmax(t_2, t_7)
                                                                                                                                                                                                                                                                	t_9 = fmin(t_3, t_8)
                                                                                                                                                                                                                                                                	t_10 = fmin(t_2, t_7)
                                                                                                                                                                                                                                                                	t_11 = sqrt(t_9)
                                                                                                                                                                                                                                                                	t_12 = Float64(sqrt(Float64(t_9 + 1.0)) - t_11)
                                                                                                                                                                                                                                                                	t_13 = fmax(t_3, t_8)
                                                                                                                                                                                                                                                                	t_14 = sqrt(t_10)
                                                                                                                                                                                                                                                                	t_15 = Float64(Float64(Float64(sqrt(Float64(t_5 + 1.0)) - t_6) + Float64(sqrt(Float64(t_10 + 1.0)) - t_14)) + t_12)
                                                                                                                                                                                                                                                                	t_16 = Float64(t_6 + t_14)
                                                                                                                                                                                                                                                                	tmp = 0.0
                                                                                                                                                                                                                                                                	if (t_15 <= 1.0)
                                                                                                                                                                                                                                                                		tmp = Float64(Float64(sqrt(Float64(1.0 + t_5)) + Float64(1.0 / Float64(1.0 + t_11))) - t_6);
                                                                                                                                                                                                                                                                	elseif (t_15 <= 1.9998)
                                                                                                                                                                                                                                                                		tmp = Float64(Float64(1.0 + sqrt(Float64(1.0 + t_10))) - t_16);
                                                                                                                                                                                                                                                                	elseif (t_15 <= 2.999995)
                                                                                                                                                                                                                                                                		tmp = Float64(Float64(Float64(2.0 + Float64(0.5 * t_10)) - t_6) - Float64(t_14 - t_12));
                                                                                                                                                                                                                                                                	else
                                                                                                                                                                                                                                                                		tmp = Float64(Float64(Float64(2.0 - t_16) + Float64(1.0 - t_11)) + Float64(sqrt(Float64(t_13 + 1.0)) - sqrt(t_13)));
                                                                                                                                                                                                                                                                	end
                                                                                                                                                                                                                                                                	return tmp
                                                                                                                                                                                                                                                                end
                                                                                                                                                                                                                                                                
                                                                                                                                                                                                                                                                function tmp_2 = code(x, y, z, t)
                                                                                                                                                                                                                                                                	t_1 = max(min(x, y), z);
                                                                                                                                                                                                                                                                	t_2 = min(max(x, y), t_1);
                                                                                                                                                                                                                                                                	t_3 = max(max(x, y), t_1);
                                                                                                                                                                                                                                                                	t_4 = min(min(x, y), z);
                                                                                                                                                                                                                                                                	t_5 = min(t_4, t);
                                                                                                                                                                                                                                                                	t_6 = sqrt(t_5);
                                                                                                                                                                                                                                                                	t_7 = max(t_4, t);
                                                                                                                                                                                                                                                                	t_8 = max(t_2, t_7);
                                                                                                                                                                                                                                                                	t_9 = min(t_3, t_8);
                                                                                                                                                                                                                                                                	t_10 = min(t_2, t_7);
                                                                                                                                                                                                                                                                	t_11 = sqrt(t_9);
                                                                                                                                                                                                                                                                	t_12 = sqrt((t_9 + 1.0)) - t_11;
                                                                                                                                                                                                                                                                	t_13 = max(t_3, t_8);
                                                                                                                                                                                                                                                                	t_14 = sqrt(t_10);
                                                                                                                                                                                                                                                                	t_15 = ((sqrt((t_5 + 1.0)) - t_6) + (sqrt((t_10 + 1.0)) - t_14)) + t_12;
                                                                                                                                                                                                                                                                	t_16 = t_6 + t_14;
                                                                                                                                                                                                                                                                	tmp = 0.0;
                                                                                                                                                                                                                                                                	if (t_15 <= 1.0)
                                                                                                                                                                                                                                                                		tmp = (sqrt((1.0 + t_5)) + (1.0 / (1.0 + t_11))) - t_6;
                                                                                                                                                                                                                                                                	elseif (t_15 <= 1.9998)
                                                                                                                                                                                                                                                                		tmp = (1.0 + sqrt((1.0 + t_10))) - t_16;
                                                                                                                                                                                                                                                                	elseif (t_15 <= 2.999995)
                                                                                                                                                                                                                                                                		tmp = ((2.0 + (0.5 * t_10)) - t_6) - (t_14 - t_12);
                                                                                                                                                                                                                                                                	else
                                                                                                                                                                                                                                                                		tmp = ((2.0 - t_16) + (1.0 - t_11)) + (sqrt((t_13 + 1.0)) - sqrt(t_13));
                                                                                                                                                                                                                                                                	end
                                                                                                                                                                                                                                                                	tmp_2 = tmp;
                                                                                                                                                                                                                                                                end
                                                                                                                                                                                                                                                                
                                                                                                                                                                                                                                                                code[x_, y_, z_, t_] := Block[{t$95$1 = N[Max[N[Min[x, y], $MachinePrecision], z], $MachinePrecision]}, Block[{t$95$2 = N[Min[N[Max[x, y], $MachinePrecision], t$95$1], $MachinePrecision]}, Block[{t$95$3 = N[Max[N[Max[x, y], $MachinePrecision], t$95$1], $MachinePrecision]}, Block[{t$95$4 = N[Min[N[Min[x, y], $MachinePrecision], z], $MachinePrecision]}, Block[{t$95$5 = N[Min[t$95$4, t], $MachinePrecision]}, Block[{t$95$6 = N[Sqrt[t$95$5], $MachinePrecision]}, Block[{t$95$7 = N[Max[t$95$4, t], $MachinePrecision]}, Block[{t$95$8 = N[Max[t$95$2, t$95$7], $MachinePrecision]}, Block[{t$95$9 = N[Min[t$95$3, t$95$8], $MachinePrecision]}, Block[{t$95$10 = N[Min[t$95$2, t$95$7], $MachinePrecision]}, Block[{t$95$11 = N[Sqrt[t$95$9], $MachinePrecision]}, Block[{t$95$12 = N[(N[Sqrt[N[(t$95$9 + 1.0), $MachinePrecision]], $MachinePrecision] - t$95$11), $MachinePrecision]}, Block[{t$95$13 = N[Max[t$95$3, t$95$8], $MachinePrecision]}, Block[{t$95$14 = N[Sqrt[t$95$10], $MachinePrecision]}, Block[{t$95$15 = N[(N[(N[(N[Sqrt[N[(t$95$5 + 1.0), $MachinePrecision]], $MachinePrecision] - t$95$6), $MachinePrecision] + N[(N[Sqrt[N[(t$95$10 + 1.0), $MachinePrecision]], $MachinePrecision] - t$95$14), $MachinePrecision]), $MachinePrecision] + t$95$12), $MachinePrecision]}, Block[{t$95$16 = N[(t$95$6 + t$95$14), $MachinePrecision]}, If[LessEqual[t$95$15, 1.0], N[(N[(N[Sqrt[N[(1.0 + t$95$5), $MachinePrecision]], $MachinePrecision] + N[(1.0 / N[(1.0 + t$95$11), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] - t$95$6), $MachinePrecision], If[LessEqual[t$95$15, 1.9998], N[(N[(1.0 + N[Sqrt[N[(1.0 + t$95$10), $MachinePrecision]], $MachinePrecision]), $MachinePrecision] - t$95$16), $MachinePrecision], If[LessEqual[t$95$15, 2.999995], N[(N[(N[(2.0 + N[(0.5 * t$95$10), $MachinePrecision]), $MachinePrecision] - t$95$6), $MachinePrecision] - N[(t$95$14 - t$95$12), $MachinePrecision]), $MachinePrecision], N[(N[(N[(2.0 - t$95$16), $MachinePrecision] + N[(1.0 - t$95$11), $MachinePrecision]), $MachinePrecision] + N[(N[Sqrt[N[(t$95$13 + 1.0), $MachinePrecision]], $MachinePrecision] - N[Sqrt[t$95$13], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]]]]]]]]]]]]]]]]]]]]
                                                                                                                                                                                                                                                                
                                                                                                                                                                                                                                                                f(x, y, z, t):
                                                                                                                                                                                                                                                                	x in [-inf, +inf],
                                                                                                                                                                                                                                                                	y in [-inf, +inf],
                                                                                                                                                                                                                                                                	z in [-inf, +inf],
                                                                                                                                                                                                                                                                	t in [-inf, +inf]
                                                                                                                                                                                                                                                                code: THEORY
                                                                                                                                                                                                                                                                BEGIN
                                                                                                                                                                                                                                                                f(x, y, z, t: real): real =
                                                                                                                                                                                                                                                                	LET tmp_2 = IF (x < y) THEN x ELSE y ENDIF IN
                                                                                                                                                                                                                                                                	LET tmp_3 = IF (x < y) THEN x ELSE y ENDIF IN
                                                                                                                                                                                                                                                                	LET tmp_1 = IF (tmp_2 > z) THEN tmp_3 ELSE z ENDIF IN
                                                                                                                                                                                                                                                                	LET t_1 = tmp_1 IN
                                                                                                                                                                                                                                                                		LET tmp_6 = IF (x > y) THEN x ELSE y ENDIF IN
                                                                                                                                                                                                                                                                		LET tmp_7 = IF (x > y) THEN x ELSE y ENDIF IN
                                                                                                                                                                                                                                                                		LET tmp_5 = IF (tmp_6 < t_1) THEN tmp_7 ELSE t_1 ENDIF IN
                                                                                                                                                                                                                                                                		LET t_2 = tmp_5 IN
                                                                                                                                                                                                                                                                			LET tmp_10 = IF (x > y) THEN x ELSE y ENDIF IN
                                                                                                                                                                                                                                                                			LET tmp_11 = IF (x > y) THEN x ELSE y ENDIF IN
                                                                                                                                                                                                                                                                			LET tmp_9 = IF (tmp_10 > t_1) THEN tmp_11 ELSE t_1 ENDIF IN
                                                                                                                                                                                                                                                                			LET t_3 = tmp_9 IN
                                                                                                                                                                                                                                                                				LET tmp_14 = IF (x < y) THEN x ELSE y ENDIF IN
                                                                                                                                                                                                                                                                				LET tmp_15 = IF (x < y) THEN x ELSE y ENDIF IN
                                                                                                                                                                                                                                                                				LET tmp_13 = IF (tmp_14 < z) THEN tmp_15 ELSE z ENDIF IN
                                                                                                                                                                                                                                                                				LET t_4 = tmp_13 IN
                                                                                                                                                                                                                                                                					LET tmp_16 = IF (t_4 < t) THEN t_4 ELSE t ENDIF IN
                                                                                                                                                                                                                                                                					LET t_5 = tmp_16 IN
                                                                                                                                                                                                                                                                						LET t_6 = (sqrt(t_5)) IN
                                                                                                                                                                                                                                                                							LET tmp_17 = IF (t_4 > t) THEN t_4 ELSE t ENDIF IN
                                                                                                                                                                                                                                                                							LET t_7 = tmp_17 IN
                                                                                                                                                                                                                                                                								LET tmp_18 = IF (t_2 > t_7) THEN t_2 ELSE t_7 ENDIF IN
                                                                                                                                                                                                                                                                								LET t_8 = tmp_18 IN
                                                                                                                                                                                                                                                                									LET tmp_19 = IF (t_3 < t_8) THEN t_3 ELSE t_8 ENDIF IN
                                                                                                                                                                                                                                                                									LET t_9 = tmp_19 IN
                                                                                                                                                                                                                                                                										LET tmp_20 = IF (t_2 < t_7) THEN t_2 ELSE t_7 ENDIF IN
                                                                                                                                                                                                                                                                										LET t_10 = tmp_20 IN
                                                                                                                                                                                                                                                                											LET t_11 = (sqrt(t_9)) IN
                                                                                                                                                                                                                                                                												LET t_12 = ((sqrt((t_9 + (1)))) - t_11) IN
                                                                                                                                                                                                                                                                													LET tmp_21 = IF (t_3 > t_8) THEN t_3 ELSE t_8 ENDIF IN
                                                                                                                                                                                                                                                                													LET t_13 = tmp_21 IN
                                                                                                                                                                                                                                                                														LET t_14 = (sqrt(t_10)) IN
                                                                                                                                                                                                                                                                															LET t_15 = ((((sqrt((t_5 + (1)))) - t_6) + ((sqrt((t_10 + (1)))) - t_14)) + t_12) IN
                                                                                                                                                                                                                                                                																LET t_16 = (t_6 + t_14) IN
                                                                                                                                                                                                                                                                																	LET tmp_24 = IF (t_15 <= (29999950000000001892885848064906895160675048828125e-49)) THEN ((((2) + ((5e-1) * t_10)) - t_6) - (t_14 - t_12)) ELSE ((((2) - t_16) + ((1) - t_11)) + ((sqrt((t_13 + (1)))) - (sqrt(t_13)))) ENDIF IN
                                                                                                                                                                                                                                                                																	LET tmp_23 = IF (t_15 <= (1999800000000000022026824808563105762004852294921875e-51)) THEN (((1) + (sqrt(((1) + t_10)))) - t_16) ELSE tmp_24 ENDIF IN
                                                                                                                                                                                                                                                                																	LET tmp_22 = IF (t_15 <= (1)) THEN (((sqrt(((1) + t_5))) + ((1) / ((1) + t_11))) - t_6) ELSE tmp_23 ENDIF IN
                                                                                                                                                                                                                                                                	tmp_22
                                                                                                                                                                                                                                                                END code
                                                                                                                                                                                                                                                                \begin{array}{l}
                                                                                                                                                                                                                                                                t_1 := \mathsf{max}\left(\mathsf{min}\left(x, y\right), z\right)\\
                                                                                                                                                                                                                                                                t_2 := \mathsf{min}\left(\mathsf{max}\left(x, y\right), t\_1\right)\\
                                                                                                                                                                                                                                                                t_3 := \mathsf{max}\left(\mathsf{max}\left(x, y\right), t\_1\right)\\
                                                                                                                                                                                                                                                                t_4 := \mathsf{min}\left(\mathsf{min}\left(x, y\right), z\right)\\
                                                                                                                                                                                                                                                                t_5 := \mathsf{min}\left(t\_4, t\right)\\
                                                                                                                                                                                                                                                                t_6 := \sqrt{t\_5}\\
                                                                                                                                                                                                                                                                t_7 := \mathsf{max}\left(t\_4, t\right)\\
                                                                                                                                                                                                                                                                t_8 := \mathsf{max}\left(t\_2, t\_7\right)\\
                                                                                                                                                                                                                                                                t_9 := \mathsf{min}\left(t\_3, t\_8\right)\\
                                                                                                                                                                                                                                                                t_10 := \mathsf{min}\left(t\_2, t\_7\right)\\
                                                                                                                                                                                                                                                                t_11 := \sqrt{t\_9}\\
                                                                                                                                                                                                                                                                t_12 := \sqrt{t\_9 + 1} - t\_11\\
                                                                                                                                                                                                                                                                t_13 := \mathsf{max}\left(t\_3, t\_8\right)\\
                                                                                                                                                                                                                                                                t_14 := \sqrt{t\_10}\\
                                                                                                                                                                                                                                                                t_15 := \left(\left(\sqrt{t\_5 + 1} - t\_6\right) + \left(\sqrt{t\_10 + 1} - t\_14\right)\right) + t\_12\\
                                                                                                                                                                                                                                                                t_16 := t\_6 + t\_14\\
                                                                                                                                                                                                                                                                \mathbf{if}\;t\_15 \leq 1:\\
                                                                                                                                                                                                                                                                \;\;\;\;\left(\sqrt{1 + t\_5} + \frac{1}{1 + t\_11}\right) - t\_6\\
                                                                                                                                                                                                                                                                
                                                                                                                                                                                                                                                                \mathbf{elif}\;t\_15 \leq 1.9998:\\
                                                                                                                                                                                                                                                                \;\;\;\;\left(1 + \sqrt{1 + t\_10}\right) - t\_16\\
                                                                                                                                                                                                                                                                
                                                                                                                                                                                                                                                                \mathbf{elif}\;t\_15 \leq 2.999995:\\
                                                                                                                                                                                                                                                                \;\;\;\;\left(\left(2 + 0.5 \cdot t\_10\right) - t\_6\right) - \left(t\_14 - t\_12\right)\\
                                                                                                                                                                                                                                                                
                                                                                                                                                                                                                                                                \mathbf{else}:\\
                                                                                                                                                                                                                                                                \;\;\;\;\left(\left(2 - t\_16\right) + \left(1 - t\_11\right)\right) + \left(\sqrt{t\_13 + 1} - \sqrt{t\_13}\right)\\
                                                                                                                                                                                                                                                                
                                                                                                                                                                                                                                                                
                                                                                                                                                                                                                                                                \end{array}
                                                                                                                                                                                                                                                                
                                                                                                                                                                                                                                                                Derivation
                                                                                                                                                                                                                                                                1. Split input into 4 regimes
                                                                                                                                                                                                                                                                2. if (+.f64 (+.f64 (-.f64 (sqrt.f64 (+.f64 x #s(literal 1 binary64))) (sqrt.f64 x)) (-.f64 (sqrt.f64 (+.f64 y #s(literal 1 binary64))) (sqrt.f64 y))) (-.f64 (sqrt.f64 (+.f64 z #s(literal 1 binary64))) (sqrt.f64 z))) < 1

                                                                                                                                                                                                                                                                  1. Initial program 92.0%

                                                                                                                                                                                                                                                                    \[\left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                                                                  2. Step-by-step derivation
                                                                                                                                                                                                                                                                    1. Applied rewrites93.8%

                                                                                                                                                                                                                                                                      \[\leadsto \left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \frac{1}{\sqrt{z} + \sqrt{z + 1}}\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                                                                    2. Taylor expanded in t around inf

                                                                                                                                                                                                                                                                      \[\leadsto \left(\sqrt{1 + x} + \left(\sqrt{1 + y} + \frac{1}{\sqrt{z} + \sqrt{1 + z}}\right)\right) - \left(\sqrt{x} + \sqrt{y}\right) \]
                                                                                                                                                                                                                                                                    3. Step-by-step derivation
                                                                                                                                                                                                                                                                      1. Applied rewrites19.3%

                                                                                                                                                                                                                                                                        \[\leadsto \left(\sqrt{1 + x} + \left(\sqrt{1 + y} + \frac{1}{\sqrt{z} + \sqrt{1 + z}}\right)\right) - \left(\sqrt{x} + \sqrt{y}\right) \]
                                                                                                                                                                                                                                                                      2. Taylor expanded in y around inf

                                                                                                                                                                                                                                                                        \[\leadsto \left(\sqrt{1 + x} + \frac{1}{\sqrt{z} + \sqrt{1 + z}}\right) - \sqrt{x} \]
                                                                                                                                                                                                                                                                      3. Step-by-step derivation
                                                                                                                                                                                                                                                                        1. Applied rewrites21.6%

                                                                                                                                                                                                                                                                          \[\leadsto \left(\sqrt{1 + x} + \frac{1}{\sqrt{z} + \sqrt{1 + z}}\right) - \sqrt{x} \]
                                                                                                                                                                                                                                                                        2. Taylor expanded in z around 0

                                                                                                                                                                                                                                                                          \[\leadsto \left(\sqrt{1 + x} + \frac{1}{1 + \sqrt{z}}\right) - \sqrt{x} \]
                                                                                                                                                                                                                                                                        3. Step-by-step derivation
                                                                                                                                                                                                                                                                          1. Applied rewrites21.3%

                                                                                                                                                                                                                                                                            \[\leadsto \left(\sqrt{1 + x} + \frac{1}{1 + \sqrt{z}}\right) - \sqrt{x} \]

                                                                                                                                                                                                                                                                          if 1 < (+.f64 (+.f64 (-.f64 (sqrt.f64 (+.f64 x #s(literal 1 binary64))) (sqrt.f64 x)) (-.f64 (sqrt.f64 (+.f64 y #s(literal 1 binary64))) (sqrt.f64 y))) (-.f64 (sqrt.f64 (+.f64 z #s(literal 1 binary64))) (sqrt.f64 z))) < 1.9998

                                                                                                                                                                                                                                                                          1. Initial program 92.0%

                                                                                                                                                                                                                                                                            \[\left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                                                                          2. Step-by-step derivation
                                                                                                                                                                                                                                                                            1. Applied rewrites93.8%

                                                                                                                                                                                                                                                                              \[\leadsto \left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \frac{1}{\sqrt{z} + \sqrt{z + 1}}\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                                                                            2. Taylor expanded in t around inf

                                                                                                                                                                                                                                                                              \[\leadsto \left(\sqrt{1 + x} + \left(\sqrt{1 + y} + \frac{1}{\sqrt{z} + \sqrt{1 + z}}\right)\right) - \left(\sqrt{x} + \sqrt{y}\right) \]
                                                                                                                                                                                                                                                                            3. Step-by-step derivation
                                                                                                                                                                                                                                                                              1. Applied rewrites19.3%

                                                                                                                                                                                                                                                                                \[\leadsto \left(\sqrt{1 + x} + \left(\sqrt{1 + y} + \frac{1}{\sqrt{z} + \sqrt{1 + z}}\right)\right) - \left(\sqrt{x} + \sqrt{y}\right) \]
                                                                                                                                                                                                                                                                              2. Taylor expanded in z around inf

                                                                                                                                                                                                                                                                                \[\leadsto \left(\sqrt{1 + x} + \sqrt{1 + y}\right) - \left(\sqrt{x} + \sqrt{y}\right) \]
                                                                                                                                                                                                                                                                              3. Step-by-step derivation
                                                                                                                                                                                                                                                                                1. Applied rewrites13.3%

                                                                                                                                                                                                                                                                                  \[\leadsto \left(\sqrt{1 + x} + \sqrt{1 + y}\right) - \left(\sqrt{x} + \sqrt{y}\right) \]
                                                                                                                                                                                                                                                                                2. Taylor expanded in x around 0

                                                                                                                                                                                                                                                                                  \[\leadsto \left(1 + \sqrt{1 + y}\right) - \left(\sqrt{x} + \sqrt{y}\right) \]
                                                                                                                                                                                                                                                                                3. Step-by-step derivation
                                                                                                                                                                                                                                                                                  1. Applied rewrites11.6%

                                                                                                                                                                                                                                                                                    \[\leadsto \left(1 + \sqrt{1 + y}\right) - \left(\sqrt{x} + \sqrt{y}\right) \]

                                                                                                                                                                                                                                                                                  if 1.9998 < (+.f64 (+.f64 (-.f64 (sqrt.f64 (+.f64 x #s(literal 1 binary64))) (sqrt.f64 x)) (-.f64 (sqrt.f64 (+.f64 y #s(literal 1 binary64))) (sqrt.f64 y))) (-.f64 (sqrt.f64 (+.f64 z #s(literal 1 binary64))) (sqrt.f64 z))) < 2.9999950000000002

                                                                                                                                                                                                                                                                                  1. Initial program 92.0%

                                                                                                                                                                                                                                                                                    \[\left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                                                                                  2. Step-by-step derivation
                                                                                                                                                                                                                                                                                    1. Applied rewrites54.5%

                                                                                                                                                                                                                                                                                      \[\leadsto \left(\left(\sqrt{t + 1} - \sqrt{t}\right) + \left(\sqrt{y + 1} - \left(\sqrt{x} - \sqrt{1 + x}\right)\right)\right) - \left(\sqrt{y} - \left(\sqrt{z + 1} - \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                                                    2. Taylor expanded in t around inf

                                                                                                                                                                                                                                                                                      \[\leadsto \left(\left(\sqrt{1 + x} + \sqrt{1 + y}\right) - \sqrt{x}\right) - \left(\sqrt{y} - \left(\sqrt{z + 1} - \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                                                    3. Step-by-step derivation
                                                                                                                                                                                                                                                                                      1. Applied rewrites20.8%

                                                                                                                                                                                                                                                                                        \[\leadsto \left(\left(\sqrt{1 + x} + \sqrt{1 + y}\right) - \sqrt{x}\right) - \left(\sqrt{y} - \left(\sqrt{z + 1} - \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                                                      2. Taylor expanded in x around 0

                                                                                                                                                                                                                                                                                        \[\leadsto \left(\left(1 + \sqrt{1 + y}\right) - \sqrt{x}\right) - \left(\sqrt{y} - \left(\sqrt{z + 1} - \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                                                      3. Step-by-step derivation
                                                                                                                                                                                                                                                                                        1. Applied rewrites16.9%

                                                                                                                                                                                                                                                                                          \[\leadsto \left(\left(1 + \sqrt{1 + y}\right) - \sqrt{x}\right) - \left(\sqrt{y} - \left(\sqrt{z + 1} - \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                                                        2. Taylor expanded in y around 0

                                                                                                                                                                                                                                                                                          \[\leadsto \left(\left(2 + \frac{1}{2} \cdot y\right) - \sqrt{x}\right) - \left(\sqrt{y} - \left(\sqrt{z + 1} - \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                                                        3. Step-by-step derivation
                                                                                                                                                                                                                                                                                          1. Applied rewrites16.5%

                                                                                                                                                                                                                                                                                            \[\leadsto \left(\left(2 + 0.5 \cdot y\right) - \sqrt{x}\right) - \left(\sqrt{y} - \left(\sqrt{z + 1} - \sqrt{z}\right)\right) \]

                                                                                                                                                                                                                                                                                          if 2.9999950000000002 < (+.f64 (+.f64 (-.f64 (sqrt.f64 (+.f64 x #s(literal 1 binary64))) (sqrt.f64 x)) (-.f64 (sqrt.f64 (+.f64 y #s(literal 1 binary64))) (sqrt.f64 y))) (-.f64 (sqrt.f64 (+.f64 z #s(literal 1 binary64))) (sqrt.f64 z)))

                                                                                                                                                                                                                                                                                          1. Initial program 92.0%

                                                                                                                                                                                                                                                                                            \[\left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                                                                                          2. Taylor expanded in y around 0

                                                                                                                                                                                                                                                                                            \[\leadsto \left(\left(\left(1 + \sqrt{1 + x}\right) - \left(\sqrt{x} + \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                                                                                          3. Step-by-step derivation
                                                                                                                                                                                                                                                                                            1. Applied rewrites36.9%

                                                                                                                                                                                                                                                                                              \[\leadsto \left(\left(\left(1 + \sqrt{1 + x}\right) - \left(\sqrt{x} + \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                                                                                            2. Taylor expanded in x around 0

                                                                                                                                                                                                                                                                                              \[\leadsto \left(\left(2 - \left(\sqrt{x} + \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                                                                                            3. Step-by-step derivation
                                                                                                                                                                                                                                                                                              1. Applied rewrites24.5%

                                                                                                                                                                                                                                                                                                \[\leadsto \left(\left(2 - \left(\sqrt{x} + \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                                                                                              2. Taylor expanded in z around 0

                                                                                                                                                                                                                                                                                                \[\leadsto \left(\left(2 - \left(\sqrt{x} + \sqrt{y}\right)\right) + \left(1 - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                                                                                              3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                1. Applied rewrites13.0%

                                                                                                                                                                                                                                                                                                  \[\leadsto \left(\left(2 - \left(\sqrt{x} + \sqrt{y}\right)\right) + \left(1 - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                                                                                              4. Recombined 4 regimes into one program.
                                                                                                                                                                                                                                                                                              5. Add Preprocessing

                                                                                                                                                                                                                                                                                              Alternative 19: 90.7% accurate, 0.0× speedup?

                                                                                                                                                                                                                                                                                              \[\begin{array}{l} t_1 := \mathsf{max}\left(\mathsf{min}\left(x, y\right), z\right)\\ t_2 := \mathsf{max}\left(\mathsf{max}\left(x, y\right), t\_1\right)\\ t_3 := \mathsf{min}\left(\mathsf{max}\left(x, y\right), t\_1\right)\\ t_4 := \mathsf{min}\left(\mathsf{min}\left(x, y\right), z\right)\\ t_5 := \mathsf{min}\left(t\_4, t\right)\\ t_6 := \sqrt{t\_5}\\ t_7 := \mathsf{max}\left(t\_4, t\right)\\ t_8 := \mathsf{max}\left(t\_3, t\_7\right)\\ t_9 := \mathsf{min}\left(t\_2, t\_8\right)\\ t_10 := \sqrt{t\_9}\\ t_11 := \sqrt{t\_9 + 1} - t\_10\\ t_12 := \mathsf{min}\left(t\_3, t\_7\right)\\ t_13 := \mathsf{max}\left(t\_2, t\_8\right)\\ t_14 := \sqrt{t\_13}\\ t_15 := \sqrt{t\_12}\\ t_16 := \left(\left(\left(\sqrt{t\_5 + 1} - t\_6\right) + \left(\sqrt{t\_12 + 1} - t\_15\right)\right) + t\_11\right) + \left(\sqrt{t\_13 + 1} - t\_14\right)\\ \mathbf{if}\;t\_16 \leq 1:\\ \;\;\;\;\left(\sqrt{1 + t\_5} + \frac{1}{1 + t\_10}\right) - t\_6\\ \mathbf{elif}\;t\_16 \leq 1.9998:\\ \;\;\;\;\left(1 + \sqrt{1 + t\_12}\right) - \left(t\_6 + t\_15\right)\\ \mathbf{elif}\;t\_16 \leq 3.5:\\ \;\;\;\;\left(\left(2 + 0.5 \cdot t\_12\right) - t\_6\right) - \left(t\_15 - t\_11\right)\\ \mathbf{else}:\\ \;\;\;\;\left(4 + 0.5 \cdot t\_5\right) - \left(t\_14 + \left(t\_6 + \left(t\_15 + t\_10\right)\right)\right)\\ \end{array} \]
                                                                                                                                                                                                                                                                                              (FPCore (x y z t)
                                                                                                                                                                                                                                                                                                :precision binary64
                                                                                                                                                                                                                                                                                                :pre TRUE
                                                                                                                                                                                                                                                                                                (let* ((t_1 (fmax (fmin x y) z))
                                                                                                                                                                                                                                                                                                     (t_2 (fmax (fmax x y) t_1))
                                                                                                                                                                                                                                                                                                     (t_3 (fmin (fmax x y) t_1))
                                                                                                                                                                                                                                                                                                     (t_4 (fmin (fmin x y) z))
                                                                                                                                                                                                                                                                                                     (t_5 (fmin t_4 t))
                                                                                                                                                                                                                                                                                                     (t_6 (sqrt t_5))
                                                                                                                                                                                                                                                                                                     (t_7 (fmax t_4 t))
                                                                                                                                                                                                                                                                                                     (t_8 (fmax t_3 t_7))
                                                                                                                                                                                                                                                                                                     (t_9 (fmin t_2 t_8))
                                                                                                                                                                                                                                                                                                     (t_10 (sqrt t_9))
                                                                                                                                                                                                                                                                                                     (t_11 (- (sqrt (+ t_9 1.0)) t_10))
                                                                                                                                                                                                                                                                                                     (t_12 (fmin t_3 t_7))
                                                                                                                                                                                                                                                                                                     (t_13 (fmax t_2 t_8))
                                                                                                                                                                                                                                                                                                     (t_14 (sqrt t_13))
                                                                                                                                                                                                                                                                                                     (t_15 (sqrt t_12))
                                                                                                                                                                                                                                                                                                     (t_16
                                                                                                                                                                                                                                                                                                      (+
                                                                                                                                                                                                                                                                                                       (+
                                                                                                                                                                                                                                                                                                        (+ (- (sqrt (+ t_5 1.0)) t_6) (- (sqrt (+ t_12 1.0)) t_15))
                                                                                                                                                                                                                                                                                                        t_11)
                                                                                                                                                                                                                                                                                                       (- (sqrt (+ t_13 1.0)) t_14))))
                                                                                                                                                                                                                                                                                                (if (<= t_16 1.0)
                                                                                                                                                                                                                                                                                                  (- (+ (sqrt (+ 1.0 t_5)) (/ 1.0 (+ 1.0 t_10))) t_6)
                                                                                                                                                                                                                                                                                                  (if (<= t_16 1.9998)
                                                                                                                                                                                                                                                                                                    (- (+ 1.0 (sqrt (+ 1.0 t_12))) (+ t_6 t_15))
                                                                                                                                                                                                                                                                                                    (if (<= t_16 3.5)
                                                                                                                                                                                                                                                                                                      (- (- (+ 2.0 (* 0.5 t_12)) t_6) (- t_15 t_11))
                                                                                                                                                                                                                                                                                                      (- (+ 4.0 (* 0.5 t_5)) (+ t_14 (+ t_6 (+ t_15 t_10)))))))))
                                                                                                                                                                                                                                                                                              double code(double x, double y, double z, double t) {
                                                                                                                                                                                                                                                                                              	double t_1 = fmax(fmin(x, y), z);
                                                                                                                                                                                                                                                                                              	double t_2 = fmax(fmax(x, y), t_1);
                                                                                                                                                                                                                                                                                              	double t_3 = fmin(fmax(x, y), t_1);
                                                                                                                                                                                                                                                                                              	double t_4 = fmin(fmin(x, y), z);
                                                                                                                                                                                                                                                                                              	double t_5 = fmin(t_4, t);
                                                                                                                                                                                                                                                                                              	double t_6 = sqrt(t_5);
                                                                                                                                                                                                                                                                                              	double t_7 = fmax(t_4, t);
                                                                                                                                                                                                                                                                                              	double t_8 = fmax(t_3, t_7);
                                                                                                                                                                                                                                                                                              	double t_9 = fmin(t_2, t_8);
                                                                                                                                                                                                                                                                                              	double t_10 = sqrt(t_9);
                                                                                                                                                                                                                                                                                              	double t_11 = sqrt((t_9 + 1.0)) - t_10;
                                                                                                                                                                                                                                                                                              	double t_12 = fmin(t_3, t_7);
                                                                                                                                                                                                                                                                                              	double t_13 = fmax(t_2, t_8);
                                                                                                                                                                                                                                                                                              	double t_14 = sqrt(t_13);
                                                                                                                                                                                                                                                                                              	double t_15 = sqrt(t_12);
                                                                                                                                                                                                                                                                                              	double t_16 = (((sqrt((t_5 + 1.0)) - t_6) + (sqrt((t_12 + 1.0)) - t_15)) + t_11) + (sqrt((t_13 + 1.0)) - t_14);
                                                                                                                                                                                                                                                                                              	double tmp;
                                                                                                                                                                                                                                                                                              	if (t_16 <= 1.0) {
                                                                                                                                                                                                                                                                                              		tmp = (sqrt((1.0 + t_5)) + (1.0 / (1.0 + t_10))) - t_6;
                                                                                                                                                                                                                                                                                              	} else if (t_16 <= 1.9998) {
                                                                                                                                                                                                                                                                                              		tmp = (1.0 + sqrt((1.0 + t_12))) - (t_6 + t_15);
                                                                                                                                                                                                                                                                                              	} else if (t_16 <= 3.5) {
                                                                                                                                                                                                                                                                                              		tmp = ((2.0 + (0.5 * t_12)) - t_6) - (t_15 - t_11);
                                                                                                                                                                                                                                                                                              	} else {
                                                                                                                                                                                                                                                                                              		tmp = (4.0 + (0.5 * t_5)) - (t_14 + (t_6 + (t_15 + t_10)));
                                                                                                                                                                                                                                                                                              	}
                                                                                                                                                                                                                                                                                              	return tmp;
                                                                                                                                                                                                                                                                                              }
                                                                                                                                                                                                                                                                                              
                                                                                                                                                                                                                                                                                              real(8) function code(x, y, z, t)
                                                                                                                                                                                                                                                                                              use fmin_fmax_functions
                                                                                                                                                                                                                                                                                                  real(8), intent (in) :: x
                                                                                                                                                                                                                                                                                                  real(8), intent (in) :: y
                                                                                                                                                                                                                                                                                                  real(8), intent (in) :: z
                                                                                                                                                                                                                                                                                                  real(8), intent (in) :: t
                                                                                                                                                                                                                                                                                                  real(8) :: t_1
                                                                                                                                                                                                                                                                                                  real(8) :: t_10
                                                                                                                                                                                                                                                                                                  real(8) :: t_11
                                                                                                                                                                                                                                                                                                  real(8) :: t_12
                                                                                                                                                                                                                                                                                                  real(8) :: t_13
                                                                                                                                                                                                                                                                                                  real(8) :: t_14
                                                                                                                                                                                                                                                                                                  real(8) :: t_15
                                                                                                                                                                                                                                                                                                  real(8) :: t_16
                                                                                                                                                                                                                                                                                                  real(8) :: t_2
                                                                                                                                                                                                                                                                                                  real(8) :: t_3
                                                                                                                                                                                                                                                                                                  real(8) :: t_4
                                                                                                                                                                                                                                                                                                  real(8) :: t_5
                                                                                                                                                                                                                                                                                                  real(8) :: t_6
                                                                                                                                                                                                                                                                                                  real(8) :: t_7
                                                                                                                                                                                                                                                                                                  real(8) :: t_8
                                                                                                                                                                                                                                                                                                  real(8) :: t_9
                                                                                                                                                                                                                                                                                                  real(8) :: tmp
                                                                                                                                                                                                                                                                                                  t_1 = fmax(fmin(x, y), z)
                                                                                                                                                                                                                                                                                                  t_2 = fmax(fmax(x, y), t_1)
                                                                                                                                                                                                                                                                                                  t_3 = fmin(fmax(x, y), t_1)
                                                                                                                                                                                                                                                                                                  t_4 = fmin(fmin(x, y), z)
                                                                                                                                                                                                                                                                                                  t_5 = fmin(t_4, t)
                                                                                                                                                                                                                                                                                                  t_6 = sqrt(t_5)
                                                                                                                                                                                                                                                                                                  t_7 = fmax(t_4, t)
                                                                                                                                                                                                                                                                                                  t_8 = fmax(t_3, t_7)
                                                                                                                                                                                                                                                                                                  t_9 = fmin(t_2, t_8)
                                                                                                                                                                                                                                                                                                  t_10 = sqrt(t_9)
                                                                                                                                                                                                                                                                                                  t_11 = sqrt((t_9 + 1.0d0)) - t_10
                                                                                                                                                                                                                                                                                                  t_12 = fmin(t_3, t_7)
                                                                                                                                                                                                                                                                                                  t_13 = fmax(t_2, t_8)
                                                                                                                                                                                                                                                                                                  t_14 = sqrt(t_13)
                                                                                                                                                                                                                                                                                                  t_15 = sqrt(t_12)
                                                                                                                                                                                                                                                                                                  t_16 = (((sqrt((t_5 + 1.0d0)) - t_6) + (sqrt((t_12 + 1.0d0)) - t_15)) + t_11) + (sqrt((t_13 + 1.0d0)) - t_14)
                                                                                                                                                                                                                                                                                                  if (t_16 <= 1.0d0) then
                                                                                                                                                                                                                                                                                                      tmp = (sqrt((1.0d0 + t_5)) + (1.0d0 / (1.0d0 + t_10))) - t_6
                                                                                                                                                                                                                                                                                                  else if (t_16 <= 1.9998d0) then
                                                                                                                                                                                                                                                                                                      tmp = (1.0d0 + sqrt((1.0d0 + t_12))) - (t_6 + t_15)
                                                                                                                                                                                                                                                                                                  else if (t_16 <= 3.5d0) then
                                                                                                                                                                                                                                                                                                      tmp = ((2.0d0 + (0.5d0 * t_12)) - t_6) - (t_15 - t_11)
                                                                                                                                                                                                                                                                                                  else
                                                                                                                                                                                                                                                                                                      tmp = (4.0d0 + (0.5d0 * t_5)) - (t_14 + (t_6 + (t_15 + t_10)))
                                                                                                                                                                                                                                                                                                  end if
                                                                                                                                                                                                                                                                                                  code = tmp
                                                                                                                                                                                                                                                                                              end function
                                                                                                                                                                                                                                                                                              
                                                                                                                                                                                                                                                                                              public static double code(double x, double y, double z, double t) {
                                                                                                                                                                                                                                                                                              	double t_1 = fmax(fmin(x, y), z);
                                                                                                                                                                                                                                                                                              	double t_2 = fmax(fmax(x, y), t_1);
                                                                                                                                                                                                                                                                                              	double t_3 = fmin(fmax(x, y), t_1);
                                                                                                                                                                                                                                                                                              	double t_4 = fmin(fmin(x, y), z);
                                                                                                                                                                                                                                                                                              	double t_5 = fmin(t_4, t);
                                                                                                                                                                                                                                                                                              	double t_6 = Math.sqrt(t_5);
                                                                                                                                                                                                                                                                                              	double t_7 = fmax(t_4, t);
                                                                                                                                                                                                                                                                                              	double t_8 = fmax(t_3, t_7);
                                                                                                                                                                                                                                                                                              	double t_9 = fmin(t_2, t_8);
                                                                                                                                                                                                                                                                                              	double t_10 = Math.sqrt(t_9);
                                                                                                                                                                                                                                                                                              	double t_11 = Math.sqrt((t_9 + 1.0)) - t_10;
                                                                                                                                                                                                                                                                                              	double t_12 = fmin(t_3, t_7);
                                                                                                                                                                                                                                                                                              	double t_13 = fmax(t_2, t_8);
                                                                                                                                                                                                                                                                                              	double t_14 = Math.sqrt(t_13);
                                                                                                                                                                                                                                                                                              	double t_15 = Math.sqrt(t_12);
                                                                                                                                                                                                                                                                                              	double t_16 = (((Math.sqrt((t_5 + 1.0)) - t_6) + (Math.sqrt((t_12 + 1.0)) - t_15)) + t_11) + (Math.sqrt((t_13 + 1.0)) - t_14);
                                                                                                                                                                                                                                                                                              	double tmp;
                                                                                                                                                                                                                                                                                              	if (t_16 <= 1.0) {
                                                                                                                                                                                                                                                                                              		tmp = (Math.sqrt((1.0 + t_5)) + (1.0 / (1.0 + t_10))) - t_6;
                                                                                                                                                                                                                                                                                              	} else if (t_16 <= 1.9998) {
                                                                                                                                                                                                                                                                                              		tmp = (1.0 + Math.sqrt((1.0 + t_12))) - (t_6 + t_15);
                                                                                                                                                                                                                                                                                              	} else if (t_16 <= 3.5) {
                                                                                                                                                                                                                                                                                              		tmp = ((2.0 + (0.5 * t_12)) - t_6) - (t_15 - t_11);
                                                                                                                                                                                                                                                                                              	} else {
                                                                                                                                                                                                                                                                                              		tmp = (4.0 + (0.5 * t_5)) - (t_14 + (t_6 + (t_15 + t_10)));
                                                                                                                                                                                                                                                                                              	}
                                                                                                                                                                                                                                                                                              	return tmp;
                                                                                                                                                                                                                                                                                              }
                                                                                                                                                                                                                                                                                              
                                                                                                                                                                                                                                                                                              def code(x, y, z, t):
                                                                                                                                                                                                                                                                                              	t_1 = fmax(fmin(x, y), z)
                                                                                                                                                                                                                                                                                              	t_2 = fmax(fmax(x, y), t_1)
                                                                                                                                                                                                                                                                                              	t_3 = fmin(fmax(x, y), t_1)
                                                                                                                                                                                                                                                                                              	t_4 = fmin(fmin(x, y), z)
                                                                                                                                                                                                                                                                                              	t_5 = fmin(t_4, t)
                                                                                                                                                                                                                                                                                              	t_6 = math.sqrt(t_5)
                                                                                                                                                                                                                                                                                              	t_7 = fmax(t_4, t)
                                                                                                                                                                                                                                                                                              	t_8 = fmax(t_3, t_7)
                                                                                                                                                                                                                                                                                              	t_9 = fmin(t_2, t_8)
                                                                                                                                                                                                                                                                                              	t_10 = math.sqrt(t_9)
                                                                                                                                                                                                                                                                                              	t_11 = math.sqrt((t_9 + 1.0)) - t_10
                                                                                                                                                                                                                                                                                              	t_12 = fmin(t_3, t_7)
                                                                                                                                                                                                                                                                                              	t_13 = fmax(t_2, t_8)
                                                                                                                                                                                                                                                                                              	t_14 = math.sqrt(t_13)
                                                                                                                                                                                                                                                                                              	t_15 = math.sqrt(t_12)
                                                                                                                                                                                                                                                                                              	t_16 = (((math.sqrt((t_5 + 1.0)) - t_6) + (math.sqrt((t_12 + 1.0)) - t_15)) + t_11) + (math.sqrt((t_13 + 1.0)) - t_14)
                                                                                                                                                                                                                                                                                              	tmp = 0
                                                                                                                                                                                                                                                                                              	if t_16 <= 1.0:
                                                                                                                                                                                                                                                                                              		tmp = (math.sqrt((1.0 + t_5)) + (1.0 / (1.0 + t_10))) - t_6
                                                                                                                                                                                                                                                                                              	elif t_16 <= 1.9998:
                                                                                                                                                                                                                                                                                              		tmp = (1.0 + math.sqrt((1.0 + t_12))) - (t_6 + t_15)
                                                                                                                                                                                                                                                                                              	elif t_16 <= 3.5:
                                                                                                                                                                                                                                                                                              		tmp = ((2.0 + (0.5 * t_12)) - t_6) - (t_15 - t_11)
                                                                                                                                                                                                                                                                                              	else:
                                                                                                                                                                                                                                                                                              		tmp = (4.0 + (0.5 * t_5)) - (t_14 + (t_6 + (t_15 + t_10)))
                                                                                                                                                                                                                                                                                              	return tmp
                                                                                                                                                                                                                                                                                              
                                                                                                                                                                                                                                                                                              function code(x, y, z, t)
                                                                                                                                                                                                                                                                                              	t_1 = fmax(fmin(x, y), z)
                                                                                                                                                                                                                                                                                              	t_2 = fmax(fmax(x, y), t_1)
                                                                                                                                                                                                                                                                                              	t_3 = fmin(fmax(x, y), t_1)
                                                                                                                                                                                                                                                                                              	t_4 = fmin(fmin(x, y), z)
                                                                                                                                                                                                                                                                                              	t_5 = fmin(t_4, t)
                                                                                                                                                                                                                                                                                              	t_6 = sqrt(t_5)
                                                                                                                                                                                                                                                                                              	t_7 = fmax(t_4, t)
                                                                                                                                                                                                                                                                                              	t_8 = fmax(t_3, t_7)
                                                                                                                                                                                                                                                                                              	t_9 = fmin(t_2, t_8)
                                                                                                                                                                                                                                                                                              	t_10 = sqrt(t_9)
                                                                                                                                                                                                                                                                                              	t_11 = Float64(sqrt(Float64(t_9 + 1.0)) - t_10)
                                                                                                                                                                                                                                                                                              	t_12 = fmin(t_3, t_7)
                                                                                                                                                                                                                                                                                              	t_13 = fmax(t_2, t_8)
                                                                                                                                                                                                                                                                                              	t_14 = sqrt(t_13)
                                                                                                                                                                                                                                                                                              	t_15 = sqrt(t_12)
                                                                                                                                                                                                                                                                                              	t_16 = Float64(Float64(Float64(Float64(sqrt(Float64(t_5 + 1.0)) - t_6) + Float64(sqrt(Float64(t_12 + 1.0)) - t_15)) + t_11) + Float64(sqrt(Float64(t_13 + 1.0)) - t_14))
                                                                                                                                                                                                                                                                                              	tmp = 0.0
                                                                                                                                                                                                                                                                                              	if (t_16 <= 1.0)
                                                                                                                                                                                                                                                                                              		tmp = Float64(Float64(sqrt(Float64(1.0 + t_5)) + Float64(1.0 / Float64(1.0 + t_10))) - t_6);
                                                                                                                                                                                                                                                                                              	elseif (t_16 <= 1.9998)
                                                                                                                                                                                                                                                                                              		tmp = Float64(Float64(1.0 + sqrt(Float64(1.0 + t_12))) - Float64(t_6 + t_15));
                                                                                                                                                                                                                                                                                              	elseif (t_16 <= 3.5)
                                                                                                                                                                                                                                                                                              		tmp = Float64(Float64(Float64(2.0 + Float64(0.5 * t_12)) - t_6) - Float64(t_15 - t_11));
                                                                                                                                                                                                                                                                                              	else
                                                                                                                                                                                                                                                                                              		tmp = Float64(Float64(4.0 + Float64(0.5 * t_5)) - Float64(t_14 + Float64(t_6 + Float64(t_15 + t_10))));
                                                                                                                                                                                                                                                                                              	end
                                                                                                                                                                                                                                                                                              	return tmp
                                                                                                                                                                                                                                                                                              end
                                                                                                                                                                                                                                                                                              
                                                                                                                                                                                                                                                                                              function tmp_2 = code(x, y, z, t)
                                                                                                                                                                                                                                                                                              	t_1 = max(min(x, y), z);
                                                                                                                                                                                                                                                                                              	t_2 = max(max(x, y), t_1);
                                                                                                                                                                                                                                                                                              	t_3 = min(max(x, y), t_1);
                                                                                                                                                                                                                                                                                              	t_4 = min(min(x, y), z);
                                                                                                                                                                                                                                                                                              	t_5 = min(t_4, t);
                                                                                                                                                                                                                                                                                              	t_6 = sqrt(t_5);
                                                                                                                                                                                                                                                                                              	t_7 = max(t_4, t);
                                                                                                                                                                                                                                                                                              	t_8 = max(t_3, t_7);
                                                                                                                                                                                                                                                                                              	t_9 = min(t_2, t_8);
                                                                                                                                                                                                                                                                                              	t_10 = sqrt(t_9);
                                                                                                                                                                                                                                                                                              	t_11 = sqrt((t_9 + 1.0)) - t_10;
                                                                                                                                                                                                                                                                                              	t_12 = min(t_3, t_7);
                                                                                                                                                                                                                                                                                              	t_13 = max(t_2, t_8);
                                                                                                                                                                                                                                                                                              	t_14 = sqrt(t_13);
                                                                                                                                                                                                                                                                                              	t_15 = sqrt(t_12);
                                                                                                                                                                                                                                                                                              	t_16 = (((sqrt((t_5 + 1.0)) - t_6) + (sqrt((t_12 + 1.0)) - t_15)) + t_11) + (sqrt((t_13 + 1.0)) - t_14);
                                                                                                                                                                                                                                                                                              	tmp = 0.0;
                                                                                                                                                                                                                                                                                              	if (t_16 <= 1.0)
                                                                                                                                                                                                                                                                                              		tmp = (sqrt((1.0 + t_5)) + (1.0 / (1.0 + t_10))) - t_6;
                                                                                                                                                                                                                                                                                              	elseif (t_16 <= 1.9998)
                                                                                                                                                                                                                                                                                              		tmp = (1.0 + sqrt((1.0 + t_12))) - (t_6 + t_15);
                                                                                                                                                                                                                                                                                              	elseif (t_16 <= 3.5)
                                                                                                                                                                                                                                                                                              		tmp = ((2.0 + (0.5 * t_12)) - t_6) - (t_15 - t_11);
                                                                                                                                                                                                                                                                                              	else
                                                                                                                                                                                                                                                                                              		tmp = (4.0 + (0.5 * t_5)) - (t_14 + (t_6 + (t_15 + t_10)));
                                                                                                                                                                                                                                                                                              	end
                                                                                                                                                                                                                                                                                              	tmp_2 = tmp;
                                                                                                                                                                                                                                                                                              end
                                                                                                                                                                                                                                                                                              
                                                                                                                                                                                                                                                                                              code[x_, y_, z_, t_] := Block[{t$95$1 = N[Max[N[Min[x, y], $MachinePrecision], z], $MachinePrecision]}, Block[{t$95$2 = N[Max[N[Max[x, y], $MachinePrecision], t$95$1], $MachinePrecision]}, Block[{t$95$3 = N[Min[N[Max[x, y], $MachinePrecision], t$95$1], $MachinePrecision]}, Block[{t$95$4 = N[Min[N[Min[x, y], $MachinePrecision], z], $MachinePrecision]}, Block[{t$95$5 = N[Min[t$95$4, t], $MachinePrecision]}, Block[{t$95$6 = N[Sqrt[t$95$5], $MachinePrecision]}, Block[{t$95$7 = N[Max[t$95$4, t], $MachinePrecision]}, Block[{t$95$8 = N[Max[t$95$3, t$95$7], $MachinePrecision]}, Block[{t$95$9 = N[Min[t$95$2, t$95$8], $MachinePrecision]}, Block[{t$95$10 = N[Sqrt[t$95$9], $MachinePrecision]}, Block[{t$95$11 = N[(N[Sqrt[N[(t$95$9 + 1.0), $MachinePrecision]], $MachinePrecision] - t$95$10), $MachinePrecision]}, Block[{t$95$12 = N[Min[t$95$3, t$95$7], $MachinePrecision]}, Block[{t$95$13 = N[Max[t$95$2, t$95$8], $MachinePrecision]}, Block[{t$95$14 = N[Sqrt[t$95$13], $MachinePrecision]}, Block[{t$95$15 = N[Sqrt[t$95$12], $MachinePrecision]}, Block[{t$95$16 = N[(N[(N[(N[(N[Sqrt[N[(t$95$5 + 1.0), $MachinePrecision]], $MachinePrecision] - t$95$6), $MachinePrecision] + N[(N[Sqrt[N[(t$95$12 + 1.0), $MachinePrecision]], $MachinePrecision] - t$95$15), $MachinePrecision]), $MachinePrecision] + t$95$11), $MachinePrecision] + N[(N[Sqrt[N[(t$95$13 + 1.0), $MachinePrecision]], $MachinePrecision] - t$95$14), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[t$95$16, 1.0], N[(N[(N[Sqrt[N[(1.0 + t$95$5), $MachinePrecision]], $MachinePrecision] + N[(1.0 / N[(1.0 + t$95$10), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] - t$95$6), $MachinePrecision], If[LessEqual[t$95$16, 1.9998], N[(N[(1.0 + N[Sqrt[N[(1.0 + t$95$12), $MachinePrecision]], $MachinePrecision]), $MachinePrecision] - N[(t$95$6 + t$95$15), $MachinePrecision]), $MachinePrecision], If[LessEqual[t$95$16, 3.5], N[(N[(N[(2.0 + N[(0.5 * t$95$12), $MachinePrecision]), $MachinePrecision] - t$95$6), $MachinePrecision] - N[(t$95$15 - t$95$11), $MachinePrecision]), $MachinePrecision], N[(N[(4.0 + N[(0.5 * t$95$5), $MachinePrecision]), $MachinePrecision] - N[(t$95$14 + N[(t$95$6 + N[(t$95$15 + t$95$10), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]]]]]]]]]]]]]]]]]]]]
                                                                                                                                                                                                                                                                                              
                                                                                                                                                                                                                                                                                              f(x, y, z, t):
                                                                                                                                                                                                                                                                                              	x in [-inf, +inf],
                                                                                                                                                                                                                                                                                              	y in [-inf, +inf],
                                                                                                                                                                                                                                                                                              	z in [-inf, +inf],
                                                                                                                                                                                                                                                                                              	t in [-inf, +inf]
                                                                                                                                                                                                                                                                                              code: THEORY
                                                                                                                                                                                                                                                                                              BEGIN
                                                                                                                                                                                                                                                                                              f(x, y, z, t: real): real =
                                                                                                                                                                                                                                                                                              	LET tmp_2 = IF (x < y) THEN x ELSE y ENDIF IN
                                                                                                                                                                                                                                                                                              	LET tmp_3 = IF (x < y) THEN x ELSE y ENDIF IN
                                                                                                                                                                                                                                                                                              	LET tmp_1 = IF (tmp_2 > z) THEN tmp_3 ELSE z ENDIF IN
                                                                                                                                                                                                                                                                                              	LET t_1 = tmp_1 IN
                                                                                                                                                                                                                                                                                              		LET tmp_6 = IF (x > y) THEN x ELSE y ENDIF IN
                                                                                                                                                                                                                                                                                              		LET tmp_7 = IF (x > y) THEN x ELSE y ENDIF IN
                                                                                                                                                                                                                                                                                              		LET tmp_5 = IF (tmp_6 > t_1) THEN tmp_7 ELSE t_1 ENDIF IN
                                                                                                                                                                                                                                                                                              		LET t_2 = tmp_5 IN
                                                                                                                                                                                                                                                                                              			LET tmp_10 = IF (x > y) THEN x ELSE y ENDIF IN
                                                                                                                                                                                                                                                                                              			LET tmp_11 = IF (x > y) THEN x ELSE y ENDIF IN
                                                                                                                                                                                                                                                                                              			LET tmp_9 = IF (tmp_10 < t_1) THEN tmp_11 ELSE t_1 ENDIF IN
                                                                                                                                                                                                                                                                                              			LET t_3 = tmp_9 IN
                                                                                                                                                                                                                                                                                              				LET tmp_14 = IF (x < y) THEN x ELSE y ENDIF IN
                                                                                                                                                                                                                                                                                              				LET tmp_15 = IF (x < y) THEN x ELSE y ENDIF IN
                                                                                                                                                                                                                                                                                              				LET tmp_13 = IF (tmp_14 < z) THEN tmp_15 ELSE z ENDIF IN
                                                                                                                                                                                                                                                                                              				LET t_4 = tmp_13 IN
                                                                                                                                                                                                                                                                                              					LET tmp_16 = IF (t_4 < t) THEN t_4 ELSE t ENDIF IN
                                                                                                                                                                                                                                                                                              					LET t_5 = tmp_16 IN
                                                                                                                                                                                                                                                                                              						LET t_6 = (sqrt(t_5)) IN
                                                                                                                                                                                                                                                                                              							LET tmp_17 = IF (t_4 > t) THEN t_4 ELSE t ENDIF IN
                                                                                                                                                                                                                                                                                              							LET t_7 = tmp_17 IN
                                                                                                                                                                                                                                                                                              								LET tmp_18 = IF (t_3 > t_7) THEN t_3 ELSE t_7 ENDIF IN
                                                                                                                                                                                                                                                                                              								LET t_8 = tmp_18 IN
                                                                                                                                                                                                                                                                                              									LET tmp_19 = IF (t_2 < t_8) THEN t_2 ELSE t_8 ENDIF IN
                                                                                                                                                                                                                                                                                              									LET t_9 = tmp_19 IN
                                                                                                                                                                                                                                                                                              										LET t_10 = (sqrt(t_9)) IN
                                                                                                                                                                                                                                                                                              											LET t_11 = ((sqrt((t_9 + (1)))) - t_10) IN
                                                                                                                                                                                                                                                                                              												LET tmp_20 = IF (t_3 < t_7) THEN t_3 ELSE t_7 ENDIF IN
                                                                                                                                                                                                                                                                                              												LET t_12 = tmp_20 IN
                                                                                                                                                                                                                                                                                              													LET tmp_21 = IF (t_2 > t_8) THEN t_2 ELSE t_8 ENDIF IN
                                                                                                                                                                                                                                                                                              													LET t_13 = tmp_21 IN
                                                                                                                                                                                                                                                                                              														LET t_14 = (sqrt(t_13)) IN
                                                                                                                                                                                                                                                                                              															LET t_15 = (sqrt(t_12)) IN
                                                                                                                                                                                                                                                                                              																LET t_16 = (((((sqrt((t_5 + (1)))) - t_6) + ((sqrt((t_12 + (1)))) - t_15)) + t_11) + ((sqrt((t_13 + (1)))) - t_14)) IN
                                                                                                                                                                                                                                                                                              																	LET tmp_24 = IF (t_16 <= (35e-1)) THEN ((((2) + ((5e-1) * t_12)) - t_6) - (t_15 - t_11)) ELSE (((4) + ((5e-1) * t_5)) - (t_14 + (t_6 + (t_15 + t_10)))) ENDIF IN
                                                                                                                                                                                                                                                                                              																	LET tmp_23 = IF (t_16 <= (1999800000000000022026824808563105762004852294921875e-51)) THEN (((1) + (sqrt(((1) + t_12)))) - (t_6 + t_15)) ELSE tmp_24 ENDIF IN
                                                                                                                                                                                                                                                                                              																	LET tmp_22 = IF (t_16 <= (1)) THEN (((sqrt(((1) + t_5))) + ((1) / ((1) + t_10))) - t_6) ELSE tmp_23 ENDIF IN
                                                                                                                                                                                                                                                                                              	tmp_22
                                                                                                                                                                                                                                                                                              END code
                                                                                                                                                                                                                                                                                              \begin{array}{l}
                                                                                                                                                                                                                                                                                              t_1 := \mathsf{max}\left(\mathsf{min}\left(x, y\right), z\right)\\
                                                                                                                                                                                                                                                                                              t_2 := \mathsf{max}\left(\mathsf{max}\left(x, y\right), t\_1\right)\\
                                                                                                                                                                                                                                                                                              t_3 := \mathsf{min}\left(\mathsf{max}\left(x, y\right), t\_1\right)\\
                                                                                                                                                                                                                                                                                              t_4 := \mathsf{min}\left(\mathsf{min}\left(x, y\right), z\right)\\
                                                                                                                                                                                                                                                                                              t_5 := \mathsf{min}\left(t\_4, t\right)\\
                                                                                                                                                                                                                                                                                              t_6 := \sqrt{t\_5}\\
                                                                                                                                                                                                                                                                                              t_7 := \mathsf{max}\left(t\_4, t\right)\\
                                                                                                                                                                                                                                                                                              t_8 := \mathsf{max}\left(t\_3, t\_7\right)\\
                                                                                                                                                                                                                                                                                              t_9 := \mathsf{min}\left(t\_2, t\_8\right)\\
                                                                                                                                                                                                                                                                                              t_10 := \sqrt{t\_9}\\
                                                                                                                                                                                                                                                                                              t_11 := \sqrt{t\_9 + 1} - t\_10\\
                                                                                                                                                                                                                                                                                              t_12 := \mathsf{min}\left(t\_3, t\_7\right)\\
                                                                                                                                                                                                                                                                                              t_13 := \mathsf{max}\left(t\_2, t\_8\right)\\
                                                                                                                                                                                                                                                                                              t_14 := \sqrt{t\_13}\\
                                                                                                                                                                                                                                                                                              t_15 := \sqrt{t\_12}\\
                                                                                                                                                                                                                                                                                              t_16 := \left(\left(\left(\sqrt{t\_5 + 1} - t\_6\right) + \left(\sqrt{t\_12 + 1} - t\_15\right)\right) + t\_11\right) + \left(\sqrt{t\_13 + 1} - t\_14\right)\\
                                                                                                                                                                                                                                                                                              \mathbf{if}\;t\_16 \leq 1:\\
                                                                                                                                                                                                                                                                                              \;\;\;\;\left(\sqrt{1 + t\_5} + \frac{1}{1 + t\_10}\right) - t\_6\\
                                                                                                                                                                                                                                                                                              
                                                                                                                                                                                                                                                                                              \mathbf{elif}\;t\_16 \leq 1.9998:\\
                                                                                                                                                                                                                                                                                              \;\;\;\;\left(1 + \sqrt{1 + t\_12}\right) - \left(t\_6 + t\_15\right)\\
                                                                                                                                                                                                                                                                                              
                                                                                                                                                                                                                                                                                              \mathbf{elif}\;t\_16 \leq 3.5:\\
                                                                                                                                                                                                                                                                                              \;\;\;\;\left(\left(2 + 0.5 \cdot t\_12\right) - t\_6\right) - \left(t\_15 - t\_11\right)\\
                                                                                                                                                                                                                                                                                              
                                                                                                                                                                                                                                                                                              \mathbf{else}:\\
                                                                                                                                                                                                                                                                                              \;\;\;\;\left(4 + 0.5 \cdot t\_5\right) - \left(t\_14 + \left(t\_6 + \left(t\_15 + t\_10\right)\right)\right)\\
                                                                                                                                                                                                                                                                                              
                                                                                                                                                                                                                                                                                              
                                                                                                                                                                                                                                                                                              \end{array}
                                                                                                                                                                                                                                                                                              
                                                                                                                                                                                                                                                                                              Derivation
                                                                                                                                                                                                                                                                                              1. Split input into 4 regimes
                                                                                                                                                                                                                                                                                              2. if (+.f64 (+.f64 (+.f64 (-.f64 (sqrt.f64 (+.f64 x #s(literal 1 binary64))) (sqrt.f64 x)) (-.f64 (sqrt.f64 (+.f64 y #s(literal 1 binary64))) (sqrt.f64 y))) (-.f64 (sqrt.f64 (+.f64 z #s(literal 1 binary64))) (sqrt.f64 z))) (-.f64 (sqrt.f64 (+.f64 t #s(literal 1 binary64))) (sqrt.f64 t))) < 1

                                                                                                                                                                                                                                                                                                1. Initial program 92.0%

                                                                                                                                                                                                                                                                                                  \[\left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                                                                                                2. Step-by-step derivation
                                                                                                                                                                                                                                                                                                  1. Applied rewrites93.8%

                                                                                                                                                                                                                                                                                                    \[\leadsto \left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \frac{1}{\sqrt{z} + \sqrt{z + 1}}\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                                                                                                  2. Taylor expanded in t around inf

                                                                                                                                                                                                                                                                                                    \[\leadsto \left(\sqrt{1 + x} + \left(\sqrt{1 + y} + \frac{1}{\sqrt{z} + \sqrt{1 + z}}\right)\right) - \left(\sqrt{x} + \sqrt{y}\right) \]
                                                                                                                                                                                                                                                                                                  3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                    1. Applied rewrites19.3%

                                                                                                                                                                                                                                                                                                      \[\leadsto \left(\sqrt{1 + x} + \left(\sqrt{1 + y} + \frac{1}{\sqrt{z} + \sqrt{1 + z}}\right)\right) - \left(\sqrt{x} + \sqrt{y}\right) \]
                                                                                                                                                                                                                                                                                                    2. Taylor expanded in y around inf

                                                                                                                                                                                                                                                                                                      \[\leadsto \left(\sqrt{1 + x} + \frac{1}{\sqrt{z} + \sqrt{1 + z}}\right) - \sqrt{x} \]
                                                                                                                                                                                                                                                                                                    3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                      1. Applied rewrites21.6%

                                                                                                                                                                                                                                                                                                        \[\leadsto \left(\sqrt{1 + x} + \frac{1}{\sqrt{z} + \sqrt{1 + z}}\right) - \sqrt{x} \]
                                                                                                                                                                                                                                                                                                      2. Taylor expanded in z around 0

                                                                                                                                                                                                                                                                                                        \[\leadsto \left(\sqrt{1 + x} + \frac{1}{1 + \sqrt{z}}\right) - \sqrt{x} \]
                                                                                                                                                                                                                                                                                                      3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                        1. Applied rewrites21.3%

                                                                                                                                                                                                                                                                                                          \[\leadsto \left(\sqrt{1 + x} + \frac{1}{1 + \sqrt{z}}\right) - \sqrt{x} \]

                                                                                                                                                                                                                                                                                                        if 1 < (+.f64 (+.f64 (+.f64 (-.f64 (sqrt.f64 (+.f64 x #s(literal 1 binary64))) (sqrt.f64 x)) (-.f64 (sqrt.f64 (+.f64 y #s(literal 1 binary64))) (sqrt.f64 y))) (-.f64 (sqrt.f64 (+.f64 z #s(literal 1 binary64))) (sqrt.f64 z))) (-.f64 (sqrt.f64 (+.f64 t #s(literal 1 binary64))) (sqrt.f64 t))) < 1.9998

                                                                                                                                                                                                                                                                                                        1. Initial program 92.0%

                                                                                                                                                                                                                                                                                                          \[\left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                                                                                                        2. Step-by-step derivation
                                                                                                                                                                                                                                                                                                          1. Applied rewrites93.8%

                                                                                                                                                                                                                                                                                                            \[\leadsto \left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \frac{1}{\sqrt{z} + \sqrt{z + 1}}\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                                                                                                          2. Taylor expanded in t around inf

                                                                                                                                                                                                                                                                                                            \[\leadsto \left(\sqrt{1 + x} + \left(\sqrt{1 + y} + \frac{1}{\sqrt{z} + \sqrt{1 + z}}\right)\right) - \left(\sqrt{x} + \sqrt{y}\right) \]
                                                                                                                                                                                                                                                                                                          3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                            1. Applied rewrites19.3%

                                                                                                                                                                                                                                                                                                              \[\leadsto \left(\sqrt{1 + x} + \left(\sqrt{1 + y} + \frac{1}{\sqrt{z} + \sqrt{1 + z}}\right)\right) - \left(\sqrt{x} + \sqrt{y}\right) \]
                                                                                                                                                                                                                                                                                                            2. Taylor expanded in z around inf

                                                                                                                                                                                                                                                                                                              \[\leadsto \left(\sqrt{1 + x} + \sqrt{1 + y}\right) - \left(\sqrt{x} + \sqrt{y}\right) \]
                                                                                                                                                                                                                                                                                                            3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                              1. Applied rewrites13.3%

                                                                                                                                                                                                                                                                                                                \[\leadsto \left(\sqrt{1 + x} + \sqrt{1 + y}\right) - \left(\sqrt{x} + \sqrt{y}\right) \]
                                                                                                                                                                                                                                                                                                              2. Taylor expanded in x around 0

                                                                                                                                                                                                                                                                                                                \[\leadsto \left(1 + \sqrt{1 + y}\right) - \left(\sqrt{x} + \sqrt{y}\right) \]
                                                                                                                                                                                                                                                                                                              3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                1. Applied rewrites11.6%

                                                                                                                                                                                                                                                                                                                  \[\leadsto \left(1 + \sqrt{1 + y}\right) - \left(\sqrt{x} + \sqrt{y}\right) \]

                                                                                                                                                                                                                                                                                                                if 1.9998 < (+.f64 (+.f64 (+.f64 (-.f64 (sqrt.f64 (+.f64 x #s(literal 1 binary64))) (sqrt.f64 x)) (-.f64 (sqrt.f64 (+.f64 y #s(literal 1 binary64))) (sqrt.f64 y))) (-.f64 (sqrt.f64 (+.f64 z #s(literal 1 binary64))) (sqrt.f64 z))) (-.f64 (sqrt.f64 (+.f64 t #s(literal 1 binary64))) (sqrt.f64 t))) < 3.5

                                                                                                                                                                                                                                                                                                                1. Initial program 92.0%

                                                                                                                                                                                                                                                                                                                  \[\left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                                                                                                                2. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                  1. Applied rewrites54.5%

                                                                                                                                                                                                                                                                                                                    \[\leadsto \left(\left(\sqrt{t + 1} - \sqrt{t}\right) + \left(\sqrt{y + 1} - \left(\sqrt{x} - \sqrt{1 + x}\right)\right)\right) - \left(\sqrt{y} - \left(\sqrt{z + 1} - \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                                                                                  2. Taylor expanded in t around inf

                                                                                                                                                                                                                                                                                                                    \[\leadsto \left(\left(\sqrt{1 + x} + \sqrt{1 + y}\right) - \sqrt{x}\right) - \left(\sqrt{y} - \left(\sqrt{z + 1} - \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                                                                                  3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                    1. Applied rewrites20.8%

                                                                                                                                                                                                                                                                                                                      \[\leadsto \left(\left(\sqrt{1 + x} + \sqrt{1 + y}\right) - \sqrt{x}\right) - \left(\sqrt{y} - \left(\sqrt{z + 1} - \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                                                                                    2. Taylor expanded in x around 0

                                                                                                                                                                                                                                                                                                                      \[\leadsto \left(\left(1 + \sqrt{1 + y}\right) - \sqrt{x}\right) - \left(\sqrt{y} - \left(\sqrt{z + 1} - \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                                                                                    3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                      1. Applied rewrites16.9%

                                                                                                                                                                                                                                                                                                                        \[\leadsto \left(\left(1 + \sqrt{1 + y}\right) - \sqrt{x}\right) - \left(\sqrt{y} - \left(\sqrt{z + 1} - \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                                                                                      2. Taylor expanded in y around 0

                                                                                                                                                                                                                                                                                                                        \[\leadsto \left(\left(2 + \frac{1}{2} \cdot y\right) - \sqrt{x}\right) - \left(\sqrt{y} - \left(\sqrt{z + 1} - \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                                                                                      3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                        1. Applied rewrites16.5%

                                                                                                                                                                                                                                                                                                                          \[\leadsto \left(\left(2 + 0.5 \cdot y\right) - \sqrt{x}\right) - \left(\sqrt{y} - \left(\sqrt{z + 1} - \sqrt{z}\right)\right) \]

                                                                                                                                                                                                                                                                                                                        if 3.5 < (+.f64 (+.f64 (+.f64 (-.f64 (sqrt.f64 (+.f64 x #s(literal 1 binary64))) (sqrt.f64 x)) (-.f64 (sqrt.f64 (+.f64 y #s(literal 1 binary64))) (sqrt.f64 y))) (-.f64 (sqrt.f64 (+.f64 z #s(literal 1 binary64))) (sqrt.f64 z))) (-.f64 (sqrt.f64 (+.f64 t #s(literal 1 binary64))) (sqrt.f64 t)))

                                                                                                                                                                                                                                                                                                                        1. Initial program 92.0%

                                                                                                                                                                                                                                                                                                                          \[\left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                                                                                                                        2. Taylor expanded in t around 0

                                                                                                                                                                                                                                                                                                                          \[\leadsto \left(1 + \left(\sqrt{1 + x} + \left(\sqrt{1 + y} + \sqrt{1 + z}\right)\right)\right) - \left(\sqrt{t} + \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right)\right) \]
                                                                                                                                                                                                                                                                                                                        3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                          1. Applied rewrites10.2%

                                                                                                                                                                                                                                                                                                                            \[\leadsto \left(1 + \left(\sqrt{1 + x} + \left(\sqrt{1 + y} + \sqrt{1 + z}\right)\right)\right) - \left(\sqrt{t} + \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right)\right) \]
                                                                                                                                                                                                                                                                                                                          2. Taylor expanded in z around 0

                                                                                                                                                                                                                                                                                                                            \[\leadsto \left(2 + \left(\sqrt{1 + x} + \sqrt{1 + y}\right)\right) - \left(\sqrt{t} + \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right)\right) \]
                                                                                                                                                                                                                                                                                                                          3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                            1. Applied rewrites9.1%

                                                                                                                                                                                                                                                                                                                              \[\leadsto \left(2 + \left(\sqrt{1 + x} + \sqrt{1 + y}\right)\right) - \left(\sqrt{t} + \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right)\right) \]
                                                                                                                                                                                                                                                                                                                            2. Taylor expanded in y around 0

                                                                                                                                                                                                                                                                                                                              \[\leadsto \left(3 + \sqrt{1 + x}\right) - \left(\sqrt{t} + \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right)\right) \]
                                                                                                                                                                                                                                                                                                                            3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                              1. Applied rewrites8.0%

                                                                                                                                                                                                                                                                                                                                \[\leadsto \left(3 + \sqrt{1 + x}\right) - \left(\sqrt{t} + \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right)\right) \]
                                                                                                                                                                                                                                                                                                                              2. Taylor expanded in x around 0

                                                                                                                                                                                                                                                                                                                                \[\leadsto \left(4 + \frac{1}{2} \cdot x\right) - \left(\sqrt{t} + \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right)\right) \]
                                                                                                                                                                                                                                                                                                                              3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                1. Applied rewrites8.2%

                                                                                                                                                                                                                                                                                                                                  \[\leadsto \left(4 + 0.5 \cdot x\right) - \left(\sqrt{t} + \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right)\right) \]
                                                                                                                                                                                                                                                                                                                              4. Recombined 4 regimes into one program.
                                                                                                                                                                                                                                                                                                                              5. Add Preprocessing

                                                                                                                                                                                                                                                                                                                              Alternative 20: 90.6% accurate, 0.0× speedup?

                                                                                                                                                                                                                                                                                                                              \[\begin{array}{l} t_1 := \mathsf{max}\left(\mathsf{min}\left(x, y\right), z\right)\\ t_2 := \mathsf{max}\left(\mathsf{max}\left(x, y\right), t\_1\right)\\ t_3 := \mathsf{min}\left(\mathsf{max}\left(x, y\right), t\_1\right)\\ t_4 := \mathsf{min}\left(\mathsf{min}\left(x, y\right), z\right)\\ t_5 := \mathsf{min}\left(t\_4, t\right)\\ t_6 := \sqrt{t\_5}\\ t_7 := \mathsf{max}\left(t\_4, t\right)\\ t_8 := \mathsf{max}\left(t\_3, t\_7\right)\\ t_9 := \mathsf{min}\left(t\_2, t\_8\right)\\ t_10 := \sqrt{t\_9}\\ t_11 := \mathsf{min}\left(t\_3, t\_7\right)\\ t_12 := \mathsf{max}\left(t\_2, t\_8\right)\\ t_13 := \sqrt{t\_12}\\ t_14 := \sqrt{t\_11}\\ t_15 := \left(\left(\left(\sqrt{t\_5 + 1} - t\_6\right) + \left(\sqrt{t\_11 + 1} - t\_14\right)\right) + \left(\sqrt{t\_9 + 1} - t\_10\right)\right) + \left(\sqrt{t\_12 + 1} - t\_13\right)\\ t_16 := t\_6 + \left(t\_14 + t\_10\right)\\ \mathbf{if}\;t\_15 \leq 1:\\ \;\;\;\;\left(\sqrt{1 + t\_5} + \frac{1}{1 + t\_10}\right) - t\_6\\ \mathbf{elif}\;t\_15 \leq 2:\\ \;\;\;\;\left(1 + \sqrt{1 + t\_11}\right) - \left(t\_6 + t\_14\right)\\ \mathbf{elif}\;t\_15 \leq 3.5:\\ \;\;\;\;\left(2 + \sqrt{1 + t\_9}\right) - t\_16\\ \mathbf{else}:\\ \;\;\;\;4 - \left(t\_13 + t\_16\right)\\ \end{array} \]
                                                                                                                                                                                                                                                                                                                              (FPCore (x y z t)
                                                                                                                                                                                                                                                                                                                                :precision binary64
                                                                                                                                                                                                                                                                                                                                :pre TRUE
                                                                                                                                                                                                                                                                                                                                (let* ((t_1 (fmax (fmin x y) z))
                                                                                                                                                                                                                                                                                                                                     (t_2 (fmax (fmax x y) t_1))
                                                                                                                                                                                                                                                                                                                                     (t_3 (fmin (fmax x y) t_1))
                                                                                                                                                                                                                                                                                                                                     (t_4 (fmin (fmin x y) z))
                                                                                                                                                                                                                                                                                                                                     (t_5 (fmin t_4 t))
                                                                                                                                                                                                                                                                                                                                     (t_6 (sqrt t_5))
                                                                                                                                                                                                                                                                                                                                     (t_7 (fmax t_4 t))
                                                                                                                                                                                                                                                                                                                                     (t_8 (fmax t_3 t_7))
                                                                                                                                                                                                                                                                                                                                     (t_9 (fmin t_2 t_8))
                                                                                                                                                                                                                                                                                                                                     (t_10 (sqrt t_9))
                                                                                                                                                                                                                                                                                                                                     (t_11 (fmin t_3 t_7))
                                                                                                                                                                                                                                                                                                                                     (t_12 (fmax t_2 t_8))
                                                                                                                                                                                                                                                                                                                                     (t_13 (sqrt t_12))
                                                                                                                                                                                                                                                                                                                                     (t_14 (sqrt t_11))
                                                                                                                                                                                                                                                                                                                                     (t_15
                                                                                                                                                                                                                                                                                                                                      (+
                                                                                                                                                                                                                                                                                                                                       (+
                                                                                                                                                                                                                                                                                                                                        (+ (- (sqrt (+ t_5 1.0)) t_6) (- (sqrt (+ t_11 1.0)) t_14))
                                                                                                                                                                                                                                                                                                                                        (- (sqrt (+ t_9 1.0)) t_10))
                                                                                                                                                                                                                                                                                                                                       (- (sqrt (+ t_12 1.0)) t_13)))
                                                                                                                                                                                                                                                                                                                                     (t_16 (+ t_6 (+ t_14 t_10))))
                                                                                                                                                                                                                                                                                                                                (if (<= t_15 1.0)
                                                                                                                                                                                                                                                                                                                                  (- (+ (sqrt (+ 1.0 t_5)) (/ 1.0 (+ 1.0 t_10))) t_6)
                                                                                                                                                                                                                                                                                                                                  (if (<= t_15 2.0)
                                                                                                                                                                                                                                                                                                                                    (- (+ 1.0 (sqrt (+ 1.0 t_11))) (+ t_6 t_14))
                                                                                                                                                                                                                                                                                                                                    (if (<= t_15 3.5)
                                                                                                                                                                                                                                                                                                                                      (- (+ 2.0 (sqrt (+ 1.0 t_9))) t_16)
                                                                                                                                                                                                                                                                                                                                      (- 4.0 (+ t_13 t_16)))))))
                                                                                                                                                                                                                                                                                                                              double code(double x, double y, double z, double t) {
                                                                                                                                                                                                                                                                                                                              	double t_1 = fmax(fmin(x, y), z);
                                                                                                                                                                                                                                                                                                                              	double t_2 = fmax(fmax(x, y), t_1);
                                                                                                                                                                                                                                                                                                                              	double t_3 = fmin(fmax(x, y), t_1);
                                                                                                                                                                                                                                                                                                                              	double t_4 = fmin(fmin(x, y), z);
                                                                                                                                                                                                                                                                                                                              	double t_5 = fmin(t_4, t);
                                                                                                                                                                                                                                                                                                                              	double t_6 = sqrt(t_5);
                                                                                                                                                                                                                                                                                                                              	double t_7 = fmax(t_4, t);
                                                                                                                                                                                                                                                                                                                              	double t_8 = fmax(t_3, t_7);
                                                                                                                                                                                                                                                                                                                              	double t_9 = fmin(t_2, t_8);
                                                                                                                                                                                                                                                                                                                              	double t_10 = sqrt(t_9);
                                                                                                                                                                                                                                                                                                                              	double t_11 = fmin(t_3, t_7);
                                                                                                                                                                                                                                                                                                                              	double t_12 = fmax(t_2, t_8);
                                                                                                                                                                                                                                                                                                                              	double t_13 = sqrt(t_12);
                                                                                                                                                                                                                                                                                                                              	double t_14 = sqrt(t_11);
                                                                                                                                                                                                                                                                                                                              	double t_15 = (((sqrt((t_5 + 1.0)) - t_6) + (sqrt((t_11 + 1.0)) - t_14)) + (sqrt((t_9 + 1.0)) - t_10)) + (sqrt((t_12 + 1.0)) - t_13);
                                                                                                                                                                                                                                                                                                                              	double t_16 = t_6 + (t_14 + t_10);
                                                                                                                                                                                                                                                                                                                              	double tmp;
                                                                                                                                                                                                                                                                                                                              	if (t_15 <= 1.0) {
                                                                                                                                                                                                                                                                                                                              		tmp = (sqrt((1.0 + t_5)) + (1.0 / (1.0 + t_10))) - t_6;
                                                                                                                                                                                                                                                                                                                              	} else if (t_15 <= 2.0) {
                                                                                                                                                                                                                                                                                                                              		tmp = (1.0 + sqrt((1.0 + t_11))) - (t_6 + t_14);
                                                                                                                                                                                                                                                                                                                              	} else if (t_15 <= 3.5) {
                                                                                                                                                                                                                                                                                                                              		tmp = (2.0 + sqrt((1.0 + t_9))) - t_16;
                                                                                                                                                                                                                                                                                                                              	} else {
                                                                                                                                                                                                                                                                                                                              		tmp = 4.0 - (t_13 + t_16);
                                                                                                                                                                                                                                                                                                                              	}
                                                                                                                                                                                                                                                                                                                              	return tmp;
                                                                                                                                                                                                                                                                                                                              }
                                                                                                                                                                                                                                                                                                                              
                                                                                                                                                                                                                                                                                                                              real(8) function code(x, y, z, t)
                                                                                                                                                                                                                                                                                                                              use fmin_fmax_functions
                                                                                                                                                                                                                                                                                                                                  real(8), intent (in) :: x
                                                                                                                                                                                                                                                                                                                                  real(8), intent (in) :: y
                                                                                                                                                                                                                                                                                                                                  real(8), intent (in) :: z
                                                                                                                                                                                                                                                                                                                                  real(8), intent (in) :: t
                                                                                                                                                                                                                                                                                                                                  real(8) :: t_1
                                                                                                                                                                                                                                                                                                                                  real(8) :: t_10
                                                                                                                                                                                                                                                                                                                                  real(8) :: t_11
                                                                                                                                                                                                                                                                                                                                  real(8) :: t_12
                                                                                                                                                                                                                                                                                                                                  real(8) :: t_13
                                                                                                                                                                                                                                                                                                                                  real(8) :: t_14
                                                                                                                                                                                                                                                                                                                                  real(8) :: t_15
                                                                                                                                                                                                                                                                                                                                  real(8) :: t_16
                                                                                                                                                                                                                                                                                                                                  real(8) :: t_2
                                                                                                                                                                                                                                                                                                                                  real(8) :: t_3
                                                                                                                                                                                                                                                                                                                                  real(8) :: t_4
                                                                                                                                                                                                                                                                                                                                  real(8) :: t_5
                                                                                                                                                                                                                                                                                                                                  real(8) :: t_6
                                                                                                                                                                                                                                                                                                                                  real(8) :: t_7
                                                                                                                                                                                                                                                                                                                                  real(8) :: t_8
                                                                                                                                                                                                                                                                                                                                  real(8) :: t_9
                                                                                                                                                                                                                                                                                                                                  real(8) :: tmp
                                                                                                                                                                                                                                                                                                                                  t_1 = fmax(fmin(x, y), z)
                                                                                                                                                                                                                                                                                                                                  t_2 = fmax(fmax(x, y), t_1)
                                                                                                                                                                                                                                                                                                                                  t_3 = fmin(fmax(x, y), t_1)
                                                                                                                                                                                                                                                                                                                                  t_4 = fmin(fmin(x, y), z)
                                                                                                                                                                                                                                                                                                                                  t_5 = fmin(t_4, t)
                                                                                                                                                                                                                                                                                                                                  t_6 = sqrt(t_5)
                                                                                                                                                                                                                                                                                                                                  t_7 = fmax(t_4, t)
                                                                                                                                                                                                                                                                                                                                  t_8 = fmax(t_3, t_7)
                                                                                                                                                                                                                                                                                                                                  t_9 = fmin(t_2, t_8)
                                                                                                                                                                                                                                                                                                                                  t_10 = sqrt(t_9)
                                                                                                                                                                                                                                                                                                                                  t_11 = fmin(t_3, t_7)
                                                                                                                                                                                                                                                                                                                                  t_12 = fmax(t_2, t_8)
                                                                                                                                                                                                                                                                                                                                  t_13 = sqrt(t_12)
                                                                                                                                                                                                                                                                                                                                  t_14 = sqrt(t_11)
                                                                                                                                                                                                                                                                                                                                  t_15 = (((sqrt((t_5 + 1.0d0)) - t_6) + (sqrt((t_11 + 1.0d0)) - t_14)) + (sqrt((t_9 + 1.0d0)) - t_10)) + (sqrt((t_12 + 1.0d0)) - t_13)
                                                                                                                                                                                                                                                                                                                                  t_16 = t_6 + (t_14 + t_10)
                                                                                                                                                                                                                                                                                                                                  if (t_15 <= 1.0d0) then
                                                                                                                                                                                                                                                                                                                                      tmp = (sqrt((1.0d0 + t_5)) + (1.0d0 / (1.0d0 + t_10))) - t_6
                                                                                                                                                                                                                                                                                                                                  else if (t_15 <= 2.0d0) then
                                                                                                                                                                                                                                                                                                                                      tmp = (1.0d0 + sqrt((1.0d0 + t_11))) - (t_6 + t_14)
                                                                                                                                                                                                                                                                                                                                  else if (t_15 <= 3.5d0) then
                                                                                                                                                                                                                                                                                                                                      tmp = (2.0d0 + sqrt((1.0d0 + t_9))) - t_16
                                                                                                                                                                                                                                                                                                                                  else
                                                                                                                                                                                                                                                                                                                                      tmp = 4.0d0 - (t_13 + t_16)
                                                                                                                                                                                                                                                                                                                                  end if
                                                                                                                                                                                                                                                                                                                                  code = tmp
                                                                                                                                                                                                                                                                                                                              end function
                                                                                                                                                                                                                                                                                                                              
                                                                                                                                                                                                                                                                                                                              public static double code(double x, double y, double z, double t) {
                                                                                                                                                                                                                                                                                                                              	double t_1 = fmax(fmin(x, y), z);
                                                                                                                                                                                                                                                                                                                              	double t_2 = fmax(fmax(x, y), t_1);
                                                                                                                                                                                                                                                                                                                              	double t_3 = fmin(fmax(x, y), t_1);
                                                                                                                                                                                                                                                                                                                              	double t_4 = fmin(fmin(x, y), z);
                                                                                                                                                                                                                                                                                                                              	double t_5 = fmin(t_4, t);
                                                                                                                                                                                                                                                                                                                              	double t_6 = Math.sqrt(t_5);
                                                                                                                                                                                                                                                                                                                              	double t_7 = fmax(t_4, t);
                                                                                                                                                                                                                                                                                                                              	double t_8 = fmax(t_3, t_7);
                                                                                                                                                                                                                                                                                                                              	double t_9 = fmin(t_2, t_8);
                                                                                                                                                                                                                                                                                                                              	double t_10 = Math.sqrt(t_9);
                                                                                                                                                                                                                                                                                                                              	double t_11 = fmin(t_3, t_7);
                                                                                                                                                                                                                                                                                                                              	double t_12 = fmax(t_2, t_8);
                                                                                                                                                                                                                                                                                                                              	double t_13 = Math.sqrt(t_12);
                                                                                                                                                                                                                                                                                                                              	double t_14 = Math.sqrt(t_11);
                                                                                                                                                                                                                                                                                                                              	double t_15 = (((Math.sqrt((t_5 + 1.0)) - t_6) + (Math.sqrt((t_11 + 1.0)) - t_14)) + (Math.sqrt((t_9 + 1.0)) - t_10)) + (Math.sqrt((t_12 + 1.0)) - t_13);
                                                                                                                                                                                                                                                                                                                              	double t_16 = t_6 + (t_14 + t_10);
                                                                                                                                                                                                                                                                                                                              	double tmp;
                                                                                                                                                                                                                                                                                                                              	if (t_15 <= 1.0) {
                                                                                                                                                                                                                                                                                                                              		tmp = (Math.sqrt((1.0 + t_5)) + (1.0 / (1.0 + t_10))) - t_6;
                                                                                                                                                                                                                                                                                                                              	} else if (t_15 <= 2.0) {
                                                                                                                                                                                                                                                                                                                              		tmp = (1.0 + Math.sqrt((1.0 + t_11))) - (t_6 + t_14);
                                                                                                                                                                                                                                                                                                                              	} else if (t_15 <= 3.5) {
                                                                                                                                                                                                                                                                                                                              		tmp = (2.0 + Math.sqrt((1.0 + t_9))) - t_16;
                                                                                                                                                                                                                                                                                                                              	} else {
                                                                                                                                                                                                                                                                                                                              		tmp = 4.0 - (t_13 + t_16);
                                                                                                                                                                                                                                                                                                                              	}
                                                                                                                                                                                                                                                                                                                              	return tmp;
                                                                                                                                                                                                                                                                                                                              }
                                                                                                                                                                                                                                                                                                                              
                                                                                                                                                                                                                                                                                                                              def code(x, y, z, t):
                                                                                                                                                                                                                                                                                                                              	t_1 = fmax(fmin(x, y), z)
                                                                                                                                                                                                                                                                                                                              	t_2 = fmax(fmax(x, y), t_1)
                                                                                                                                                                                                                                                                                                                              	t_3 = fmin(fmax(x, y), t_1)
                                                                                                                                                                                                                                                                                                                              	t_4 = fmin(fmin(x, y), z)
                                                                                                                                                                                                                                                                                                                              	t_5 = fmin(t_4, t)
                                                                                                                                                                                                                                                                                                                              	t_6 = math.sqrt(t_5)
                                                                                                                                                                                                                                                                                                                              	t_7 = fmax(t_4, t)
                                                                                                                                                                                                                                                                                                                              	t_8 = fmax(t_3, t_7)
                                                                                                                                                                                                                                                                                                                              	t_9 = fmin(t_2, t_8)
                                                                                                                                                                                                                                                                                                                              	t_10 = math.sqrt(t_9)
                                                                                                                                                                                                                                                                                                                              	t_11 = fmin(t_3, t_7)
                                                                                                                                                                                                                                                                                                                              	t_12 = fmax(t_2, t_8)
                                                                                                                                                                                                                                                                                                                              	t_13 = math.sqrt(t_12)
                                                                                                                                                                                                                                                                                                                              	t_14 = math.sqrt(t_11)
                                                                                                                                                                                                                                                                                                                              	t_15 = (((math.sqrt((t_5 + 1.0)) - t_6) + (math.sqrt((t_11 + 1.0)) - t_14)) + (math.sqrt((t_9 + 1.0)) - t_10)) + (math.sqrt((t_12 + 1.0)) - t_13)
                                                                                                                                                                                                                                                                                                                              	t_16 = t_6 + (t_14 + t_10)
                                                                                                                                                                                                                                                                                                                              	tmp = 0
                                                                                                                                                                                                                                                                                                                              	if t_15 <= 1.0:
                                                                                                                                                                                                                                                                                                                              		tmp = (math.sqrt((1.0 + t_5)) + (1.0 / (1.0 + t_10))) - t_6
                                                                                                                                                                                                                                                                                                                              	elif t_15 <= 2.0:
                                                                                                                                                                                                                                                                                                                              		tmp = (1.0 + math.sqrt((1.0 + t_11))) - (t_6 + t_14)
                                                                                                                                                                                                                                                                                                                              	elif t_15 <= 3.5:
                                                                                                                                                                                                                                                                                                                              		tmp = (2.0 + math.sqrt((1.0 + t_9))) - t_16
                                                                                                                                                                                                                                                                                                                              	else:
                                                                                                                                                                                                                                                                                                                              		tmp = 4.0 - (t_13 + t_16)
                                                                                                                                                                                                                                                                                                                              	return tmp
                                                                                                                                                                                                                                                                                                                              
                                                                                                                                                                                                                                                                                                                              function code(x, y, z, t)
                                                                                                                                                                                                                                                                                                                              	t_1 = fmax(fmin(x, y), z)
                                                                                                                                                                                                                                                                                                                              	t_2 = fmax(fmax(x, y), t_1)
                                                                                                                                                                                                                                                                                                                              	t_3 = fmin(fmax(x, y), t_1)
                                                                                                                                                                                                                                                                                                                              	t_4 = fmin(fmin(x, y), z)
                                                                                                                                                                                                                                                                                                                              	t_5 = fmin(t_4, t)
                                                                                                                                                                                                                                                                                                                              	t_6 = sqrt(t_5)
                                                                                                                                                                                                                                                                                                                              	t_7 = fmax(t_4, t)
                                                                                                                                                                                                                                                                                                                              	t_8 = fmax(t_3, t_7)
                                                                                                                                                                                                                                                                                                                              	t_9 = fmin(t_2, t_8)
                                                                                                                                                                                                                                                                                                                              	t_10 = sqrt(t_9)
                                                                                                                                                                                                                                                                                                                              	t_11 = fmin(t_3, t_7)
                                                                                                                                                                                                                                                                                                                              	t_12 = fmax(t_2, t_8)
                                                                                                                                                                                                                                                                                                                              	t_13 = sqrt(t_12)
                                                                                                                                                                                                                                                                                                                              	t_14 = sqrt(t_11)
                                                                                                                                                                                                                                                                                                                              	t_15 = Float64(Float64(Float64(Float64(sqrt(Float64(t_5 + 1.0)) - t_6) + Float64(sqrt(Float64(t_11 + 1.0)) - t_14)) + Float64(sqrt(Float64(t_9 + 1.0)) - t_10)) + Float64(sqrt(Float64(t_12 + 1.0)) - t_13))
                                                                                                                                                                                                                                                                                                                              	t_16 = Float64(t_6 + Float64(t_14 + t_10))
                                                                                                                                                                                                                                                                                                                              	tmp = 0.0
                                                                                                                                                                                                                                                                                                                              	if (t_15 <= 1.0)
                                                                                                                                                                                                                                                                                                                              		tmp = Float64(Float64(sqrt(Float64(1.0 + t_5)) + Float64(1.0 / Float64(1.0 + t_10))) - t_6);
                                                                                                                                                                                                                                                                                                                              	elseif (t_15 <= 2.0)
                                                                                                                                                                                                                                                                                                                              		tmp = Float64(Float64(1.0 + sqrt(Float64(1.0 + t_11))) - Float64(t_6 + t_14));
                                                                                                                                                                                                                                                                                                                              	elseif (t_15 <= 3.5)
                                                                                                                                                                                                                                                                                                                              		tmp = Float64(Float64(2.0 + sqrt(Float64(1.0 + t_9))) - t_16);
                                                                                                                                                                                                                                                                                                                              	else
                                                                                                                                                                                                                                                                                                                              		tmp = Float64(4.0 - Float64(t_13 + t_16));
                                                                                                                                                                                                                                                                                                                              	end
                                                                                                                                                                                                                                                                                                                              	return tmp
                                                                                                                                                                                                                                                                                                                              end
                                                                                                                                                                                                                                                                                                                              
                                                                                                                                                                                                                                                                                                                              function tmp_2 = code(x, y, z, t)
                                                                                                                                                                                                                                                                                                                              	t_1 = max(min(x, y), z);
                                                                                                                                                                                                                                                                                                                              	t_2 = max(max(x, y), t_1);
                                                                                                                                                                                                                                                                                                                              	t_3 = min(max(x, y), t_1);
                                                                                                                                                                                                                                                                                                                              	t_4 = min(min(x, y), z);
                                                                                                                                                                                                                                                                                                                              	t_5 = min(t_4, t);
                                                                                                                                                                                                                                                                                                                              	t_6 = sqrt(t_5);
                                                                                                                                                                                                                                                                                                                              	t_7 = max(t_4, t);
                                                                                                                                                                                                                                                                                                                              	t_8 = max(t_3, t_7);
                                                                                                                                                                                                                                                                                                                              	t_9 = min(t_2, t_8);
                                                                                                                                                                                                                                                                                                                              	t_10 = sqrt(t_9);
                                                                                                                                                                                                                                                                                                                              	t_11 = min(t_3, t_7);
                                                                                                                                                                                                                                                                                                                              	t_12 = max(t_2, t_8);
                                                                                                                                                                                                                                                                                                                              	t_13 = sqrt(t_12);
                                                                                                                                                                                                                                                                                                                              	t_14 = sqrt(t_11);
                                                                                                                                                                                                                                                                                                                              	t_15 = (((sqrt((t_5 + 1.0)) - t_6) + (sqrt((t_11 + 1.0)) - t_14)) + (sqrt((t_9 + 1.0)) - t_10)) + (sqrt((t_12 + 1.0)) - t_13);
                                                                                                                                                                                                                                                                                                                              	t_16 = t_6 + (t_14 + t_10);
                                                                                                                                                                                                                                                                                                                              	tmp = 0.0;
                                                                                                                                                                                                                                                                                                                              	if (t_15 <= 1.0)
                                                                                                                                                                                                                                                                                                                              		tmp = (sqrt((1.0 + t_5)) + (1.0 / (1.0 + t_10))) - t_6;
                                                                                                                                                                                                                                                                                                                              	elseif (t_15 <= 2.0)
                                                                                                                                                                                                                                                                                                                              		tmp = (1.0 + sqrt((1.0 + t_11))) - (t_6 + t_14);
                                                                                                                                                                                                                                                                                                                              	elseif (t_15 <= 3.5)
                                                                                                                                                                                                                                                                                                                              		tmp = (2.0 + sqrt((1.0 + t_9))) - t_16;
                                                                                                                                                                                                                                                                                                                              	else
                                                                                                                                                                                                                                                                                                                              		tmp = 4.0 - (t_13 + t_16);
                                                                                                                                                                                                                                                                                                                              	end
                                                                                                                                                                                                                                                                                                                              	tmp_2 = tmp;
                                                                                                                                                                                                                                                                                                                              end
                                                                                                                                                                                                                                                                                                                              
                                                                                                                                                                                                                                                                                                                              code[x_, y_, z_, t_] := Block[{t$95$1 = N[Max[N[Min[x, y], $MachinePrecision], z], $MachinePrecision]}, Block[{t$95$2 = N[Max[N[Max[x, y], $MachinePrecision], t$95$1], $MachinePrecision]}, Block[{t$95$3 = N[Min[N[Max[x, y], $MachinePrecision], t$95$1], $MachinePrecision]}, Block[{t$95$4 = N[Min[N[Min[x, y], $MachinePrecision], z], $MachinePrecision]}, Block[{t$95$5 = N[Min[t$95$4, t], $MachinePrecision]}, Block[{t$95$6 = N[Sqrt[t$95$5], $MachinePrecision]}, Block[{t$95$7 = N[Max[t$95$4, t], $MachinePrecision]}, Block[{t$95$8 = N[Max[t$95$3, t$95$7], $MachinePrecision]}, Block[{t$95$9 = N[Min[t$95$2, t$95$8], $MachinePrecision]}, Block[{t$95$10 = N[Sqrt[t$95$9], $MachinePrecision]}, Block[{t$95$11 = N[Min[t$95$3, t$95$7], $MachinePrecision]}, Block[{t$95$12 = N[Max[t$95$2, t$95$8], $MachinePrecision]}, Block[{t$95$13 = N[Sqrt[t$95$12], $MachinePrecision]}, Block[{t$95$14 = N[Sqrt[t$95$11], $MachinePrecision]}, Block[{t$95$15 = N[(N[(N[(N[(N[Sqrt[N[(t$95$5 + 1.0), $MachinePrecision]], $MachinePrecision] - t$95$6), $MachinePrecision] + N[(N[Sqrt[N[(t$95$11 + 1.0), $MachinePrecision]], $MachinePrecision] - t$95$14), $MachinePrecision]), $MachinePrecision] + N[(N[Sqrt[N[(t$95$9 + 1.0), $MachinePrecision]], $MachinePrecision] - t$95$10), $MachinePrecision]), $MachinePrecision] + N[(N[Sqrt[N[(t$95$12 + 1.0), $MachinePrecision]], $MachinePrecision] - t$95$13), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$16 = N[(t$95$6 + N[(t$95$14 + t$95$10), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[t$95$15, 1.0], N[(N[(N[Sqrt[N[(1.0 + t$95$5), $MachinePrecision]], $MachinePrecision] + N[(1.0 / N[(1.0 + t$95$10), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] - t$95$6), $MachinePrecision], If[LessEqual[t$95$15, 2.0], N[(N[(1.0 + N[Sqrt[N[(1.0 + t$95$11), $MachinePrecision]], $MachinePrecision]), $MachinePrecision] - N[(t$95$6 + t$95$14), $MachinePrecision]), $MachinePrecision], If[LessEqual[t$95$15, 3.5], N[(N[(2.0 + N[Sqrt[N[(1.0 + t$95$9), $MachinePrecision]], $MachinePrecision]), $MachinePrecision] - t$95$16), $MachinePrecision], N[(4.0 - N[(t$95$13 + t$95$16), $MachinePrecision]), $MachinePrecision]]]]]]]]]]]]]]]]]]]]
                                                                                                                                                                                                                                                                                                                              
                                                                                                                                                                                                                                                                                                                              f(x, y, z, t):
                                                                                                                                                                                                                                                                                                                              	x in [-inf, +inf],
                                                                                                                                                                                                                                                                                                                              	y in [-inf, +inf],
                                                                                                                                                                                                                                                                                                                              	z in [-inf, +inf],
                                                                                                                                                                                                                                                                                                                              	t in [-inf, +inf]
                                                                                                                                                                                                                                                                                                                              code: THEORY
                                                                                                                                                                                                                                                                                                                              BEGIN
                                                                                                                                                                                                                                                                                                                              f(x, y, z, t: real): real =
                                                                                                                                                                                                                                                                                                                              	LET tmp_2 = IF (x < y) THEN x ELSE y ENDIF IN
                                                                                                                                                                                                                                                                                                                              	LET tmp_3 = IF (x < y) THEN x ELSE y ENDIF IN
                                                                                                                                                                                                                                                                                                                              	LET tmp_1 = IF (tmp_2 > z) THEN tmp_3 ELSE z ENDIF IN
                                                                                                                                                                                                                                                                                                                              	LET t_1 = tmp_1 IN
                                                                                                                                                                                                                                                                                                                              		LET tmp_6 = IF (x > y) THEN x ELSE y ENDIF IN
                                                                                                                                                                                                                                                                                                                              		LET tmp_7 = IF (x > y) THEN x ELSE y ENDIF IN
                                                                                                                                                                                                                                                                                                                              		LET tmp_5 = IF (tmp_6 > t_1) THEN tmp_7 ELSE t_1 ENDIF IN
                                                                                                                                                                                                                                                                                                                              		LET t_2 = tmp_5 IN
                                                                                                                                                                                                                                                                                                                              			LET tmp_10 = IF (x > y) THEN x ELSE y ENDIF IN
                                                                                                                                                                                                                                                                                                                              			LET tmp_11 = IF (x > y) THEN x ELSE y ENDIF IN
                                                                                                                                                                                                                                                                                                                              			LET tmp_9 = IF (tmp_10 < t_1) THEN tmp_11 ELSE t_1 ENDIF IN
                                                                                                                                                                                                                                                                                                                              			LET t_3 = tmp_9 IN
                                                                                                                                                                                                                                                                                                                              				LET tmp_14 = IF (x < y) THEN x ELSE y ENDIF IN
                                                                                                                                                                                                                                                                                                                              				LET tmp_15 = IF (x < y) THEN x ELSE y ENDIF IN
                                                                                                                                                                                                                                                                                                                              				LET tmp_13 = IF (tmp_14 < z) THEN tmp_15 ELSE z ENDIF IN
                                                                                                                                                                                                                                                                                                                              				LET t_4 = tmp_13 IN
                                                                                                                                                                                                                                                                                                                              					LET tmp_16 = IF (t_4 < t) THEN t_4 ELSE t ENDIF IN
                                                                                                                                                                                                                                                                                                                              					LET t_5 = tmp_16 IN
                                                                                                                                                                                                                                                                                                                              						LET t_6 = (sqrt(t_5)) IN
                                                                                                                                                                                                                                                                                                                              							LET tmp_17 = IF (t_4 > t) THEN t_4 ELSE t ENDIF IN
                                                                                                                                                                                                                                                                                                                              							LET t_7 = tmp_17 IN
                                                                                                                                                                                                                                                                                                                              								LET tmp_18 = IF (t_3 > t_7) THEN t_3 ELSE t_7 ENDIF IN
                                                                                                                                                                                                                                                                                                                              								LET t_8 = tmp_18 IN
                                                                                                                                                                                                                                                                                                                              									LET tmp_19 = IF (t_2 < t_8) THEN t_2 ELSE t_8 ENDIF IN
                                                                                                                                                                                                                                                                                                                              									LET t_9 = tmp_19 IN
                                                                                                                                                                                                                                                                                                                              										LET t_10 = (sqrt(t_9)) IN
                                                                                                                                                                                                                                                                                                                              											LET tmp_20 = IF (t_3 < t_7) THEN t_3 ELSE t_7 ENDIF IN
                                                                                                                                                                                                                                                                                                                              											LET t_11 = tmp_20 IN
                                                                                                                                                                                                                                                                                                                              												LET tmp_21 = IF (t_2 > t_8) THEN t_2 ELSE t_8 ENDIF IN
                                                                                                                                                                                                                                                                                                                              												LET t_12 = tmp_21 IN
                                                                                                                                                                                                                                                                                                                              													LET t_13 = (sqrt(t_12)) IN
                                                                                                                                                                                                                                                                                                                              														LET t_14 = (sqrt(t_11)) IN
                                                                                                                                                                                                                                                                                                                              															LET t_15 = (((((sqrt((t_5 + (1)))) - t_6) + ((sqrt((t_11 + (1)))) - t_14)) + ((sqrt((t_9 + (1)))) - t_10)) + ((sqrt((t_12 + (1)))) - t_13)) IN
                                                                                                                                                                                                                                                                                                                              																LET t_16 = (t_6 + (t_14 + t_10)) IN
                                                                                                                                                                                                                                                                                                                              																	LET tmp_24 = IF (t_15 <= (35e-1)) THEN (((2) + (sqrt(((1) + t_9)))) - t_16) ELSE ((4) - (t_13 + t_16)) ENDIF IN
                                                                                                                                                                                                                                                                                                                              																	LET tmp_23 = IF (t_15 <= (2)) THEN (((1) + (sqrt(((1) + t_11)))) - (t_6 + t_14)) ELSE tmp_24 ENDIF IN
                                                                                                                                                                                                                                                                                                                              																	LET tmp_22 = IF (t_15 <= (1)) THEN (((sqrt(((1) + t_5))) + ((1) / ((1) + t_10))) - t_6) ELSE tmp_23 ENDIF IN
                                                                                                                                                                                                                                                                                                                              	tmp_22
                                                                                                                                                                                                                                                                                                                              END code
                                                                                                                                                                                                                                                                                                                              \begin{array}{l}
                                                                                                                                                                                                                                                                                                                              t_1 := \mathsf{max}\left(\mathsf{min}\left(x, y\right), z\right)\\
                                                                                                                                                                                                                                                                                                                              t_2 := \mathsf{max}\left(\mathsf{max}\left(x, y\right), t\_1\right)\\
                                                                                                                                                                                                                                                                                                                              t_3 := \mathsf{min}\left(\mathsf{max}\left(x, y\right), t\_1\right)\\
                                                                                                                                                                                                                                                                                                                              t_4 := \mathsf{min}\left(\mathsf{min}\left(x, y\right), z\right)\\
                                                                                                                                                                                                                                                                                                                              t_5 := \mathsf{min}\left(t\_4, t\right)\\
                                                                                                                                                                                                                                                                                                                              t_6 := \sqrt{t\_5}\\
                                                                                                                                                                                                                                                                                                                              t_7 := \mathsf{max}\left(t\_4, t\right)\\
                                                                                                                                                                                                                                                                                                                              t_8 := \mathsf{max}\left(t\_3, t\_7\right)\\
                                                                                                                                                                                                                                                                                                                              t_9 := \mathsf{min}\left(t\_2, t\_8\right)\\
                                                                                                                                                                                                                                                                                                                              t_10 := \sqrt{t\_9}\\
                                                                                                                                                                                                                                                                                                                              t_11 := \mathsf{min}\left(t\_3, t\_7\right)\\
                                                                                                                                                                                                                                                                                                                              t_12 := \mathsf{max}\left(t\_2, t\_8\right)\\
                                                                                                                                                                                                                                                                                                                              t_13 := \sqrt{t\_12}\\
                                                                                                                                                                                                                                                                                                                              t_14 := \sqrt{t\_11}\\
                                                                                                                                                                                                                                                                                                                              t_15 := \left(\left(\left(\sqrt{t\_5 + 1} - t\_6\right) + \left(\sqrt{t\_11 + 1} - t\_14\right)\right) + \left(\sqrt{t\_9 + 1} - t\_10\right)\right) + \left(\sqrt{t\_12 + 1} - t\_13\right)\\
                                                                                                                                                                                                                                                                                                                              t_16 := t\_6 + \left(t\_14 + t\_10\right)\\
                                                                                                                                                                                                                                                                                                                              \mathbf{if}\;t\_15 \leq 1:\\
                                                                                                                                                                                                                                                                                                                              \;\;\;\;\left(\sqrt{1 + t\_5} + \frac{1}{1 + t\_10}\right) - t\_6\\
                                                                                                                                                                                                                                                                                                                              
                                                                                                                                                                                                                                                                                                                              \mathbf{elif}\;t\_15 \leq 2:\\
                                                                                                                                                                                                                                                                                                                              \;\;\;\;\left(1 + \sqrt{1 + t\_11}\right) - \left(t\_6 + t\_14\right)\\
                                                                                                                                                                                                                                                                                                                              
                                                                                                                                                                                                                                                                                                                              \mathbf{elif}\;t\_15 \leq 3.5:\\
                                                                                                                                                                                                                                                                                                                              \;\;\;\;\left(2 + \sqrt{1 + t\_9}\right) - t\_16\\
                                                                                                                                                                                                                                                                                                                              
                                                                                                                                                                                                                                                                                                                              \mathbf{else}:\\
                                                                                                                                                                                                                                                                                                                              \;\;\;\;4 - \left(t\_13 + t\_16\right)\\
                                                                                                                                                                                                                                                                                                                              
                                                                                                                                                                                                                                                                                                                              
                                                                                                                                                                                                                                                                                                                              \end{array}
                                                                                                                                                                                                                                                                                                                              
                                                                                                                                                                                                                                                                                                                              Derivation
                                                                                                                                                                                                                                                                                                                              1. Split input into 4 regimes
                                                                                                                                                                                                                                                                                                                              2. if (+.f64 (+.f64 (+.f64 (-.f64 (sqrt.f64 (+.f64 x #s(literal 1 binary64))) (sqrt.f64 x)) (-.f64 (sqrt.f64 (+.f64 y #s(literal 1 binary64))) (sqrt.f64 y))) (-.f64 (sqrt.f64 (+.f64 z #s(literal 1 binary64))) (sqrt.f64 z))) (-.f64 (sqrt.f64 (+.f64 t #s(literal 1 binary64))) (sqrt.f64 t))) < 1

                                                                                                                                                                                                                                                                                                                                1. Initial program 92.0%

                                                                                                                                                                                                                                                                                                                                  \[\left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                                                                                                                                2. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                  1. Applied rewrites93.8%

                                                                                                                                                                                                                                                                                                                                    \[\leadsto \left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \frac{1}{\sqrt{z} + \sqrt{z + 1}}\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                                                                                                                                  2. Taylor expanded in t around inf

                                                                                                                                                                                                                                                                                                                                    \[\leadsto \left(\sqrt{1 + x} + \left(\sqrt{1 + y} + \frac{1}{\sqrt{z} + \sqrt{1 + z}}\right)\right) - \left(\sqrt{x} + \sqrt{y}\right) \]
                                                                                                                                                                                                                                                                                                                                  3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                    1. Applied rewrites19.3%

                                                                                                                                                                                                                                                                                                                                      \[\leadsto \left(\sqrt{1 + x} + \left(\sqrt{1 + y} + \frac{1}{\sqrt{z} + \sqrt{1 + z}}\right)\right) - \left(\sqrt{x} + \sqrt{y}\right) \]
                                                                                                                                                                                                                                                                                                                                    2. Taylor expanded in y around inf

                                                                                                                                                                                                                                                                                                                                      \[\leadsto \left(\sqrt{1 + x} + \frac{1}{\sqrt{z} + \sqrt{1 + z}}\right) - \sqrt{x} \]
                                                                                                                                                                                                                                                                                                                                    3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                      1. Applied rewrites21.6%

                                                                                                                                                                                                                                                                                                                                        \[\leadsto \left(\sqrt{1 + x} + \frac{1}{\sqrt{z} + \sqrt{1 + z}}\right) - \sqrt{x} \]
                                                                                                                                                                                                                                                                                                                                      2. Taylor expanded in z around 0

                                                                                                                                                                                                                                                                                                                                        \[\leadsto \left(\sqrt{1 + x} + \frac{1}{1 + \sqrt{z}}\right) - \sqrt{x} \]
                                                                                                                                                                                                                                                                                                                                      3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                        1. Applied rewrites21.3%

                                                                                                                                                                                                                                                                                                                                          \[\leadsto \left(\sqrt{1 + x} + \frac{1}{1 + \sqrt{z}}\right) - \sqrt{x} \]

                                                                                                                                                                                                                                                                                                                                        if 1 < (+.f64 (+.f64 (+.f64 (-.f64 (sqrt.f64 (+.f64 x #s(literal 1 binary64))) (sqrt.f64 x)) (-.f64 (sqrt.f64 (+.f64 y #s(literal 1 binary64))) (sqrt.f64 y))) (-.f64 (sqrt.f64 (+.f64 z #s(literal 1 binary64))) (sqrt.f64 z))) (-.f64 (sqrt.f64 (+.f64 t #s(literal 1 binary64))) (sqrt.f64 t))) < 2

                                                                                                                                                                                                                                                                                                                                        1. Initial program 92.0%

                                                                                                                                                                                                                                                                                                                                          \[\left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                                                                                                                                        2. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                          1. Applied rewrites93.8%

                                                                                                                                                                                                                                                                                                                                            \[\leadsto \left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \frac{1}{\sqrt{z} + \sqrt{z + 1}}\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                                                                                                                                          2. Taylor expanded in t around inf

                                                                                                                                                                                                                                                                                                                                            \[\leadsto \left(\sqrt{1 + x} + \left(\sqrt{1 + y} + \frac{1}{\sqrt{z} + \sqrt{1 + z}}\right)\right) - \left(\sqrt{x} + \sqrt{y}\right) \]
                                                                                                                                                                                                                                                                                                                                          3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                            1. Applied rewrites19.3%

                                                                                                                                                                                                                                                                                                                                              \[\leadsto \left(\sqrt{1 + x} + \left(\sqrt{1 + y} + \frac{1}{\sqrt{z} + \sqrt{1 + z}}\right)\right) - \left(\sqrt{x} + \sqrt{y}\right) \]
                                                                                                                                                                                                                                                                                                                                            2. Taylor expanded in z around inf

                                                                                                                                                                                                                                                                                                                                              \[\leadsto \left(\sqrt{1 + x} + \sqrt{1 + y}\right) - \left(\sqrt{x} + \sqrt{y}\right) \]
                                                                                                                                                                                                                                                                                                                                            3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                              1. Applied rewrites13.3%

                                                                                                                                                                                                                                                                                                                                                \[\leadsto \left(\sqrt{1 + x} + \sqrt{1 + y}\right) - \left(\sqrt{x} + \sqrt{y}\right) \]
                                                                                                                                                                                                                                                                                                                                              2. Taylor expanded in x around 0

                                                                                                                                                                                                                                                                                                                                                \[\leadsto \left(1 + \sqrt{1 + y}\right) - \left(\sqrt{x} + \sqrt{y}\right) \]
                                                                                                                                                                                                                                                                                                                                              3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                1. Applied rewrites11.6%

                                                                                                                                                                                                                                                                                                                                                  \[\leadsto \left(1 + \sqrt{1 + y}\right) - \left(\sqrt{x} + \sqrt{y}\right) \]

                                                                                                                                                                                                                                                                                                                                                if 2 < (+.f64 (+.f64 (+.f64 (-.f64 (sqrt.f64 (+.f64 x #s(literal 1 binary64))) (sqrt.f64 x)) (-.f64 (sqrt.f64 (+.f64 y #s(literal 1 binary64))) (sqrt.f64 y))) (-.f64 (sqrt.f64 (+.f64 z #s(literal 1 binary64))) (sqrt.f64 z))) (-.f64 (sqrt.f64 (+.f64 t #s(literal 1 binary64))) (sqrt.f64 t))) < 3.5

                                                                                                                                                                                                                                                                                                                                                1. Initial program 92.0%

                                                                                                                                                                                                                                                                                                                                                  \[\left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                                                                                                                                                2. Taylor expanded in t around inf

                                                                                                                                                                                                                                                                                                                                                  \[\leadsto \left(\sqrt{1 + x} + \left(\sqrt{1 + y} + \sqrt{1 + z}\right)\right) - \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                  1. Applied rewrites12.2%

                                                                                                                                                                                                                                                                                                                                                    \[\leadsto \left(\sqrt{1 + x} + \left(\sqrt{1 + y} + \sqrt{1 + z}\right)\right) - \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                  2. Taylor expanded in y around 0

                                                                                                                                                                                                                                                                                                                                                    \[\leadsto \left(1 + \left(\sqrt{1 + x} + \sqrt{1 + z}\right)\right) - \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                  3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                    1. Applied rewrites10.7%

                                                                                                                                                                                                                                                                                                                                                      \[\leadsto \left(1 + \left(\sqrt{1 + x} + \sqrt{1 + z}\right)\right) - \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                    2. Taylor expanded in x around 0

                                                                                                                                                                                                                                                                                                                                                      \[\leadsto \left(2 + \sqrt{1 + z}\right) - \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                    3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                      1. Applied rewrites9.4%

                                                                                                                                                                                                                                                                                                                                                        \[\leadsto \left(2 + \sqrt{1 + z}\right) - \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right) \]

                                                                                                                                                                                                                                                                                                                                                      if 3.5 < (+.f64 (+.f64 (+.f64 (-.f64 (sqrt.f64 (+.f64 x #s(literal 1 binary64))) (sqrt.f64 x)) (-.f64 (sqrt.f64 (+.f64 y #s(literal 1 binary64))) (sqrt.f64 y))) (-.f64 (sqrt.f64 (+.f64 z #s(literal 1 binary64))) (sqrt.f64 z))) (-.f64 (sqrt.f64 (+.f64 t #s(literal 1 binary64))) (sqrt.f64 t)))

                                                                                                                                                                                                                                                                                                                                                      1. Initial program 92.0%

                                                                                                                                                                                                                                                                                                                                                        \[\left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                                                                                                                                                      2. Taylor expanded in t around 0

                                                                                                                                                                                                                                                                                                                                                        \[\leadsto \left(1 + \left(\sqrt{1 + x} + \left(\sqrt{1 + y} + \sqrt{1 + z}\right)\right)\right) - \left(\sqrt{t} + \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                      3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                        1. Applied rewrites10.2%

                                                                                                                                                                                                                                                                                                                                                          \[\leadsto \left(1 + \left(\sqrt{1 + x} + \left(\sqrt{1 + y} + \sqrt{1 + z}\right)\right)\right) - \left(\sqrt{t} + \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                        2. Taylor expanded in z around 0

                                                                                                                                                                                                                                                                                                                                                          \[\leadsto \left(2 + \left(\sqrt{1 + x} + \sqrt{1 + y}\right)\right) - \left(\sqrt{t} + \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                        3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                          1. Applied rewrites9.1%

                                                                                                                                                                                                                                                                                                                                                            \[\leadsto \left(2 + \left(\sqrt{1 + x} + \sqrt{1 + y}\right)\right) - \left(\sqrt{t} + \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                          2. Taylor expanded in y around 0

                                                                                                                                                                                                                                                                                                                                                            \[\leadsto \left(3 + \sqrt{1 + x}\right) - \left(\sqrt{t} + \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                          3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                            1. Applied rewrites8.0%

                                                                                                                                                                                                                                                                                                                                                              \[\leadsto \left(3 + \sqrt{1 + x}\right) - \left(\sqrt{t} + \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                            2. Taylor expanded in x around 0

                                                                                                                                                                                                                                                                                                                                                              \[\leadsto 4 - \left(\sqrt{t} + \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                            3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                              1. Applied rewrites7.0%

                                                                                                                                                                                                                                                                                                                                                                \[\leadsto 4 - \left(\sqrt{t} + \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                            4. Recombined 4 regimes into one program.
                                                                                                                                                                                                                                                                                                                                                            5. Add Preprocessing

                                                                                                                                                                                                                                                                                                                                                            Alternative 21: 90.6% accurate, 0.0× speedup?

                                                                                                                                                                                                                                                                                                                                                            \[\begin{array}{l} t_1 := \mathsf{max}\left(\mathsf{min}\left(x, y\right), z\right)\\ t_2 := \mathsf{max}\left(\mathsf{max}\left(x, y\right), t\_1\right)\\ t_3 := \mathsf{min}\left(\mathsf{max}\left(x, y\right), t\_1\right)\\ t_4 := \mathsf{min}\left(\mathsf{min}\left(x, y\right), z\right)\\ t_5 := \mathsf{min}\left(t\_4, t\right)\\ t_6 := \sqrt{t\_5}\\ t_7 := \mathsf{max}\left(t\_4, t\right)\\ t_8 := \mathsf{max}\left(t\_3, t\_7\right)\\ t_9 := \mathsf{min}\left(t\_2, t\_8\right)\\ t_10 := \sqrt{t\_9}\\ t_11 := \mathsf{min}\left(t\_3, t\_7\right)\\ t_12 := \mathsf{max}\left(t\_2, t\_8\right)\\ t_13 := \sqrt{t\_12}\\ t_14 := \sqrt{t\_11}\\ t_15 := \left(\left(\left(\sqrt{t\_5 + 1} - t\_6\right) + \left(\sqrt{t\_11 + 1} - t\_14\right)\right) + \left(\sqrt{t\_9 + 1} - t\_10\right)\right) + \left(\sqrt{t\_12 + 1} - t\_13\right)\\ t_16 := t\_6 + \left(t\_14 + t\_10\right)\\ \mathbf{if}\;t\_15 \leq 1:\\ \;\;\;\;\left(\sqrt{1 + t\_5} + \frac{1}{1 + t\_10}\right) - t\_6\\ \mathbf{elif}\;t\_15 \leq 2:\\ \;\;\;\;\left(1 + \sqrt{1 + t\_11}\right) - \left(t\_6 + t\_14\right)\\ \mathbf{elif}\;t\_15 \leq 3.5:\\ \;\;\;\;\left(2 + \sqrt{1 + t\_9}\right) - t\_16\\ \mathbf{else}:\\ \;\;\;\;\left(4 + 0.5 \cdot t\_5\right) - \left(t\_13 + t\_16\right)\\ \end{array} \]
                                                                                                                                                                                                                                                                                                                                                            (FPCore (x y z t)
                                                                                                                                                                                                                                                                                                                                                              :precision binary64
                                                                                                                                                                                                                                                                                                                                                              :pre TRUE
                                                                                                                                                                                                                                                                                                                                                              (let* ((t_1 (fmax (fmin x y) z))
                                                                                                                                                                                                                                                                                                                                                                   (t_2 (fmax (fmax x y) t_1))
                                                                                                                                                                                                                                                                                                                                                                   (t_3 (fmin (fmax x y) t_1))
                                                                                                                                                                                                                                                                                                                                                                   (t_4 (fmin (fmin x y) z))
                                                                                                                                                                                                                                                                                                                                                                   (t_5 (fmin t_4 t))
                                                                                                                                                                                                                                                                                                                                                                   (t_6 (sqrt t_5))
                                                                                                                                                                                                                                                                                                                                                                   (t_7 (fmax t_4 t))
                                                                                                                                                                                                                                                                                                                                                                   (t_8 (fmax t_3 t_7))
                                                                                                                                                                                                                                                                                                                                                                   (t_9 (fmin t_2 t_8))
                                                                                                                                                                                                                                                                                                                                                                   (t_10 (sqrt t_9))
                                                                                                                                                                                                                                                                                                                                                                   (t_11 (fmin t_3 t_7))
                                                                                                                                                                                                                                                                                                                                                                   (t_12 (fmax t_2 t_8))
                                                                                                                                                                                                                                                                                                                                                                   (t_13 (sqrt t_12))
                                                                                                                                                                                                                                                                                                                                                                   (t_14 (sqrt t_11))
                                                                                                                                                                                                                                                                                                                                                                   (t_15
                                                                                                                                                                                                                                                                                                                                                                    (+
                                                                                                                                                                                                                                                                                                                                                                     (+
                                                                                                                                                                                                                                                                                                                                                                      (+ (- (sqrt (+ t_5 1.0)) t_6) (- (sqrt (+ t_11 1.0)) t_14))
                                                                                                                                                                                                                                                                                                                                                                      (- (sqrt (+ t_9 1.0)) t_10))
                                                                                                                                                                                                                                                                                                                                                                     (- (sqrt (+ t_12 1.0)) t_13)))
                                                                                                                                                                                                                                                                                                                                                                   (t_16 (+ t_6 (+ t_14 t_10))))
                                                                                                                                                                                                                                                                                                                                                              (if (<= t_15 1.0)
                                                                                                                                                                                                                                                                                                                                                                (- (+ (sqrt (+ 1.0 t_5)) (/ 1.0 (+ 1.0 t_10))) t_6)
                                                                                                                                                                                                                                                                                                                                                                (if (<= t_15 2.0)
                                                                                                                                                                                                                                                                                                                                                                  (- (+ 1.0 (sqrt (+ 1.0 t_11))) (+ t_6 t_14))
                                                                                                                                                                                                                                                                                                                                                                  (if (<= t_15 3.5)
                                                                                                                                                                                                                                                                                                                                                                    (- (+ 2.0 (sqrt (+ 1.0 t_9))) t_16)
                                                                                                                                                                                                                                                                                                                                                                    (- (+ 4.0 (* 0.5 t_5)) (+ t_13 t_16)))))))
                                                                                                                                                                                                                                                                                                                                                            double code(double x, double y, double z, double t) {
                                                                                                                                                                                                                                                                                                                                                            	double t_1 = fmax(fmin(x, y), z);
                                                                                                                                                                                                                                                                                                                                                            	double t_2 = fmax(fmax(x, y), t_1);
                                                                                                                                                                                                                                                                                                                                                            	double t_3 = fmin(fmax(x, y), t_1);
                                                                                                                                                                                                                                                                                                                                                            	double t_4 = fmin(fmin(x, y), z);
                                                                                                                                                                                                                                                                                                                                                            	double t_5 = fmin(t_4, t);
                                                                                                                                                                                                                                                                                                                                                            	double t_6 = sqrt(t_5);
                                                                                                                                                                                                                                                                                                                                                            	double t_7 = fmax(t_4, t);
                                                                                                                                                                                                                                                                                                                                                            	double t_8 = fmax(t_3, t_7);
                                                                                                                                                                                                                                                                                                                                                            	double t_9 = fmin(t_2, t_8);
                                                                                                                                                                                                                                                                                                                                                            	double t_10 = sqrt(t_9);
                                                                                                                                                                                                                                                                                                                                                            	double t_11 = fmin(t_3, t_7);
                                                                                                                                                                                                                                                                                                                                                            	double t_12 = fmax(t_2, t_8);
                                                                                                                                                                                                                                                                                                                                                            	double t_13 = sqrt(t_12);
                                                                                                                                                                                                                                                                                                                                                            	double t_14 = sqrt(t_11);
                                                                                                                                                                                                                                                                                                                                                            	double t_15 = (((sqrt((t_5 + 1.0)) - t_6) + (sqrt((t_11 + 1.0)) - t_14)) + (sqrt((t_9 + 1.0)) - t_10)) + (sqrt((t_12 + 1.0)) - t_13);
                                                                                                                                                                                                                                                                                                                                                            	double t_16 = t_6 + (t_14 + t_10);
                                                                                                                                                                                                                                                                                                                                                            	double tmp;
                                                                                                                                                                                                                                                                                                                                                            	if (t_15 <= 1.0) {
                                                                                                                                                                                                                                                                                                                                                            		tmp = (sqrt((1.0 + t_5)) + (1.0 / (1.0 + t_10))) - t_6;
                                                                                                                                                                                                                                                                                                                                                            	} else if (t_15 <= 2.0) {
                                                                                                                                                                                                                                                                                                                                                            		tmp = (1.0 + sqrt((1.0 + t_11))) - (t_6 + t_14);
                                                                                                                                                                                                                                                                                                                                                            	} else if (t_15 <= 3.5) {
                                                                                                                                                                                                                                                                                                                                                            		tmp = (2.0 + sqrt((1.0 + t_9))) - t_16;
                                                                                                                                                                                                                                                                                                                                                            	} else {
                                                                                                                                                                                                                                                                                                                                                            		tmp = (4.0 + (0.5 * t_5)) - (t_13 + t_16);
                                                                                                                                                                                                                                                                                                                                                            	}
                                                                                                                                                                                                                                                                                                                                                            	return tmp;
                                                                                                                                                                                                                                                                                                                                                            }
                                                                                                                                                                                                                                                                                                                                                            
                                                                                                                                                                                                                                                                                                                                                            real(8) function code(x, y, z, t)
                                                                                                                                                                                                                                                                                                                                                            use fmin_fmax_functions
                                                                                                                                                                                                                                                                                                                                                                real(8), intent (in) :: x
                                                                                                                                                                                                                                                                                                                                                                real(8), intent (in) :: y
                                                                                                                                                                                                                                                                                                                                                                real(8), intent (in) :: z
                                                                                                                                                                                                                                                                                                                                                                real(8), intent (in) :: t
                                                                                                                                                                                                                                                                                                                                                                real(8) :: t_1
                                                                                                                                                                                                                                                                                                                                                                real(8) :: t_10
                                                                                                                                                                                                                                                                                                                                                                real(8) :: t_11
                                                                                                                                                                                                                                                                                                                                                                real(8) :: t_12
                                                                                                                                                                                                                                                                                                                                                                real(8) :: t_13
                                                                                                                                                                                                                                                                                                                                                                real(8) :: t_14
                                                                                                                                                                                                                                                                                                                                                                real(8) :: t_15
                                                                                                                                                                                                                                                                                                                                                                real(8) :: t_16
                                                                                                                                                                                                                                                                                                                                                                real(8) :: t_2
                                                                                                                                                                                                                                                                                                                                                                real(8) :: t_3
                                                                                                                                                                                                                                                                                                                                                                real(8) :: t_4
                                                                                                                                                                                                                                                                                                                                                                real(8) :: t_5
                                                                                                                                                                                                                                                                                                                                                                real(8) :: t_6
                                                                                                                                                                                                                                                                                                                                                                real(8) :: t_7
                                                                                                                                                                                                                                                                                                                                                                real(8) :: t_8
                                                                                                                                                                                                                                                                                                                                                                real(8) :: t_9
                                                                                                                                                                                                                                                                                                                                                                real(8) :: tmp
                                                                                                                                                                                                                                                                                                                                                                t_1 = fmax(fmin(x, y), z)
                                                                                                                                                                                                                                                                                                                                                                t_2 = fmax(fmax(x, y), t_1)
                                                                                                                                                                                                                                                                                                                                                                t_3 = fmin(fmax(x, y), t_1)
                                                                                                                                                                                                                                                                                                                                                                t_4 = fmin(fmin(x, y), z)
                                                                                                                                                                                                                                                                                                                                                                t_5 = fmin(t_4, t)
                                                                                                                                                                                                                                                                                                                                                                t_6 = sqrt(t_5)
                                                                                                                                                                                                                                                                                                                                                                t_7 = fmax(t_4, t)
                                                                                                                                                                                                                                                                                                                                                                t_8 = fmax(t_3, t_7)
                                                                                                                                                                                                                                                                                                                                                                t_9 = fmin(t_2, t_8)
                                                                                                                                                                                                                                                                                                                                                                t_10 = sqrt(t_9)
                                                                                                                                                                                                                                                                                                                                                                t_11 = fmin(t_3, t_7)
                                                                                                                                                                                                                                                                                                                                                                t_12 = fmax(t_2, t_8)
                                                                                                                                                                                                                                                                                                                                                                t_13 = sqrt(t_12)
                                                                                                                                                                                                                                                                                                                                                                t_14 = sqrt(t_11)
                                                                                                                                                                                                                                                                                                                                                                t_15 = (((sqrt((t_5 + 1.0d0)) - t_6) + (sqrt((t_11 + 1.0d0)) - t_14)) + (sqrt((t_9 + 1.0d0)) - t_10)) + (sqrt((t_12 + 1.0d0)) - t_13)
                                                                                                                                                                                                                                                                                                                                                                t_16 = t_6 + (t_14 + t_10)
                                                                                                                                                                                                                                                                                                                                                                if (t_15 <= 1.0d0) then
                                                                                                                                                                                                                                                                                                                                                                    tmp = (sqrt((1.0d0 + t_5)) + (1.0d0 / (1.0d0 + t_10))) - t_6
                                                                                                                                                                                                                                                                                                                                                                else if (t_15 <= 2.0d0) then
                                                                                                                                                                                                                                                                                                                                                                    tmp = (1.0d0 + sqrt((1.0d0 + t_11))) - (t_6 + t_14)
                                                                                                                                                                                                                                                                                                                                                                else if (t_15 <= 3.5d0) then
                                                                                                                                                                                                                                                                                                                                                                    tmp = (2.0d0 + sqrt((1.0d0 + t_9))) - t_16
                                                                                                                                                                                                                                                                                                                                                                else
                                                                                                                                                                                                                                                                                                                                                                    tmp = (4.0d0 + (0.5d0 * t_5)) - (t_13 + t_16)
                                                                                                                                                                                                                                                                                                                                                                end if
                                                                                                                                                                                                                                                                                                                                                                code = tmp
                                                                                                                                                                                                                                                                                                                                                            end function
                                                                                                                                                                                                                                                                                                                                                            
                                                                                                                                                                                                                                                                                                                                                            public static double code(double x, double y, double z, double t) {
                                                                                                                                                                                                                                                                                                                                                            	double t_1 = fmax(fmin(x, y), z);
                                                                                                                                                                                                                                                                                                                                                            	double t_2 = fmax(fmax(x, y), t_1);
                                                                                                                                                                                                                                                                                                                                                            	double t_3 = fmin(fmax(x, y), t_1);
                                                                                                                                                                                                                                                                                                                                                            	double t_4 = fmin(fmin(x, y), z);
                                                                                                                                                                                                                                                                                                                                                            	double t_5 = fmin(t_4, t);
                                                                                                                                                                                                                                                                                                                                                            	double t_6 = Math.sqrt(t_5);
                                                                                                                                                                                                                                                                                                                                                            	double t_7 = fmax(t_4, t);
                                                                                                                                                                                                                                                                                                                                                            	double t_8 = fmax(t_3, t_7);
                                                                                                                                                                                                                                                                                                                                                            	double t_9 = fmin(t_2, t_8);
                                                                                                                                                                                                                                                                                                                                                            	double t_10 = Math.sqrt(t_9);
                                                                                                                                                                                                                                                                                                                                                            	double t_11 = fmin(t_3, t_7);
                                                                                                                                                                                                                                                                                                                                                            	double t_12 = fmax(t_2, t_8);
                                                                                                                                                                                                                                                                                                                                                            	double t_13 = Math.sqrt(t_12);
                                                                                                                                                                                                                                                                                                                                                            	double t_14 = Math.sqrt(t_11);
                                                                                                                                                                                                                                                                                                                                                            	double t_15 = (((Math.sqrt((t_5 + 1.0)) - t_6) + (Math.sqrt((t_11 + 1.0)) - t_14)) + (Math.sqrt((t_9 + 1.0)) - t_10)) + (Math.sqrt((t_12 + 1.0)) - t_13);
                                                                                                                                                                                                                                                                                                                                                            	double t_16 = t_6 + (t_14 + t_10);
                                                                                                                                                                                                                                                                                                                                                            	double tmp;
                                                                                                                                                                                                                                                                                                                                                            	if (t_15 <= 1.0) {
                                                                                                                                                                                                                                                                                                                                                            		tmp = (Math.sqrt((1.0 + t_5)) + (1.0 / (1.0 + t_10))) - t_6;
                                                                                                                                                                                                                                                                                                                                                            	} else if (t_15 <= 2.0) {
                                                                                                                                                                                                                                                                                                                                                            		tmp = (1.0 + Math.sqrt((1.0 + t_11))) - (t_6 + t_14);
                                                                                                                                                                                                                                                                                                                                                            	} else if (t_15 <= 3.5) {
                                                                                                                                                                                                                                                                                                                                                            		tmp = (2.0 + Math.sqrt((1.0 + t_9))) - t_16;
                                                                                                                                                                                                                                                                                                                                                            	} else {
                                                                                                                                                                                                                                                                                                                                                            		tmp = (4.0 + (0.5 * t_5)) - (t_13 + t_16);
                                                                                                                                                                                                                                                                                                                                                            	}
                                                                                                                                                                                                                                                                                                                                                            	return tmp;
                                                                                                                                                                                                                                                                                                                                                            }
                                                                                                                                                                                                                                                                                                                                                            
                                                                                                                                                                                                                                                                                                                                                            def code(x, y, z, t):
                                                                                                                                                                                                                                                                                                                                                            	t_1 = fmax(fmin(x, y), z)
                                                                                                                                                                                                                                                                                                                                                            	t_2 = fmax(fmax(x, y), t_1)
                                                                                                                                                                                                                                                                                                                                                            	t_3 = fmin(fmax(x, y), t_1)
                                                                                                                                                                                                                                                                                                                                                            	t_4 = fmin(fmin(x, y), z)
                                                                                                                                                                                                                                                                                                                                                            	t_5 = fmin(t_4, t)
                                                                                                                                                                                                                                                                                                                                                            	t_6 = math.sqrt(t_5)
                                                                                                                                                                                                                                                                                                                                                            	t_7 = fmax(t_4, t)
                                                                                                                                                                                                                                                                                                                                                            	t_8 = fmax(t_3, t_7)
                                                                                                                                                                                                                                                                                                                                                            	t_9 = fmin(t_2, t_8)
                                                                                                                                                                                                                                                                                                                                                            	t_10 = math.sqrt(t_9)
                                                                                                                                                                                                                                                                                                                                                            	t_11 = fmin(t_3, t_7)
                                                                                                                                                                                                                                                                                                                                                            	t_12 = fmax(t_2, t_8)
                                                                                                                                                                                                                                                                                                                                                            	t_13 = math.sqrt(t_12)
                                                                                                                                                                                                                                                                                                                                                            	t_14 = math.sqrt(t_11)
                                                                                                                                                                                                                                                                                                                                                            	t_15 = (((math.sqrt((t_5 + 1.0)) - t_6) + (math.sqrt((t_11 + 1.0)) - t_14)) + (math.sqrt((t_9 + 1.0)) - t_10)) + (math.sqrt((t_12 + 1.0)) - t_13)
                                                                                                                                                                                                                                                                                                                                                            	t_16 = t_6 + (t_14 + t_10)
                                                                                                                                                                                                                                                                                                                                                            	tmp = 0
                                                                                                                                                                                                                                                                                                                                                            	if t_15 <= 1.0:
                                                                                                                                                                                                                                                                                                                                                            		tmp = (math.sqrt((1.0 + t_5)) + (1.0 / (1.0 + t_10))) - t_6
                                                                                                                                                                                                                                                                                                                                                            	elif t_15 <= 2.0:
                                                                                                                                                                                                                                                                                                                                                            		tmp = (1.0 + math.sqrt((1.0 + t_11))) - (t_6 + t_14)
                                                                                                                                                                                                                                                                                                                                                            	elif t_15 <= 3.5:
                                                                                                                                                                                                                                                                                                                                                            		tmp = (2.0 + math.sqrt((1.0 + t_9))) - t_16
                                                                                                                                                                                                                                                                                                                                                            	else:
                                                                                                                                                                                                                                                                                                                                                            		tmp = (4.0 + (0.5 * t_5)) - (t_13 + t_16)
                                                                                                                                                                                                                                                                                                                                                            	return tmp
                                                                                                                                                                                                                                                                                                                                                            
                                                                                                                                                                                                                                                                                                                                                            function code(x, y, z, t)
                                                                                                                                                                                                                                                                                                                                                            	t_1 = fmax(fmin(x, y), z)
                                                                                                                                                                                                                                                                                                                                                            	t_2 = fmax(fmax(x, y), t_1)
                                                                                                                                                                                                                                                                                                                                                            	t_3 = fmin(fmax(x, y), t_1)
                                                                                                                                                                                                                                                                                                                                                            	t_4 = fmin(fmin(x, y), z)
                                                                                                                                                                                                                                                                                                                                                            	t_5 = fmin(t_4, t)
                                                                                                                                                                                                                                                                                                                                                            	t_6 = sqrt(t_5)
                                                                                                                                                                                                                                                                                                                                                            	t_7 = fmax(t_4, t)
                                                                                                                                                                                                                                                                                                                                                            	t_8 = fmax(t_3, t_7)
                                                                                                                                                                                                                                                                                                                                                            	t_9 = fmin(t_2, t_8)
                                                                                                                                                                                                                                                                                                                                                            	t_10 = sqrt(t_9)
                                                                                                                                                                                                                                                                                                                                                            	t_11 = fmin(t_3, t_7)
                                                                                                                                                                                                                                                                                                                                                            	t_12 = fmax(t_2, t_8)
                                                                                                                                                                                                                                                                                                                                                            	t_13 = sqrt(t_12)
                                                                                                                                                                                                                                                                                                                                                            	t_14 = sqrt(t_11)
                                                                                                                                                                                                                                                                                                                                                            	t_15 = Float64(Float64(Float64(Float64(sqrt(Float64(t_5 + 1.0)) - t_6) + Float64(sqrt(Float64(t_11 + 1.0)) - t_14)) + Float64(sqrt(Float64(t_9 + 1.0)) - t_10)) + Float64(sqrt(Float64(t_12 + 1.0)) - t_13))
                                                                                                                                                                                                                                                                                                                                                            	t_16 = Float64(t_6 + Float64(t_14 + t_10))
                                                                                                                                                                                                                                                                                                                                                            	tmp = 0.0
                                                                                                                                                                                                                                                                                                                                                            	if (t_15 <= 1.0)
                                                                                                                                                                                                                                                                                                                                                            		tmp = Float64(Float64(sqrt(Float64(1.0 + t_5)) + Float64(1.0 / Float64(1.0 + t_10))) - t_6);
                                                                                                                                                                                                                                                                                                                                                            	elseif (t_15 <= 2.0)
                                                                                                                                                                                                                                                                                                                                                            		tmp = Float64(Float64(1.0 + sqrt(Float64(1.0 + t_11))) - Float64(t_6 + t_14));
                                                                                                                                                                                                                                                                                                                                                            	elseif (t_15 <= 3.5)
                                                                                                                                                                                                                                                                                                                                                            		tmp = Float64(Float64(2.0 + sqrt(Float64(1.0 + t_9))) - t_16);
                                                                                                                                                                                                                                                                                                                                                            	else
                                                                                                                                                                                                                                                                                                                                                            		tmp = Float64(Float64(4.0 + Float64(0.5 * t_5)) - Float64(t_13 + t_16));
                                                                                                                                                                                                                                                                                                                                                            	end
                                                                                                                                                                                                                                                                                                                                                            	return tmp
                                                                                                                                                                                                                                                                                                                                                            end
                                                                                                                                                                                                                                                                                                                                                            
                                                                                                                                                                                                                                                                                                                                                            function tmp_2 = code(x, y, z, t)
                                                                                                                                                                                                                                                                                                                                                            	t_1 = max(min(x, y), z);
                                                                                                                                                                                                                                                                                                                                                            	t_2 = max(max(x, y), t_1);
                                                                                                                                                                                                                                                                                                                                                            	t_3 = min(max(x, y), t_1);
                                                                                                                                                                                                                                                                                                                                                            	t_4 = min(min(x, y), z);
                                                                                                                                                                                                                                                                                                                                                            	t_5 = min(t_4, t);
                                                                                                                                                                                                                                                                                                                                                            	t_6 = sqrt(t_5);
                                                                                                                                                                                                                                                                                                                                                            	t_7 = max(t_4, t);
                                                                                                                                                                                                                                                                                                                                                            	t_8 = max(t_3, t_7);
                                                                                                                                                                                                                                                                                                                                                            	t_9 = min(t_2, t_8);
                                                                                                                                                                                                                                                                                                                                                            	t_10 = sqrt(t_9);
                                                                                                                                                                                                                                                                                                                                                            	t_11 = min(t_3, t_7);
                                                                                                                                                                                                                                                                                                                                                            	t_12 = max(t_2, t_8);
                                                                                                                                                                                                                                                                                                                                                            	t_13 = sqrt(t_12);
                                                                                                                                                                                                                                                                                                                                                            	t_14 = sqrt(t_11);
                                                                                                                                                                                                                                                                                                                                                            	t_15 = (((sqrt((t_5 + 1.0)) - t_6) + (sqrt((t_11 + 1.0)) - t_14)) + (sqrt((t_9 + 1.0)) - t_10)) + (sqrt((t_12 + 1.0)) - t_13);
                                                                                                                                                                                                                                                                                                                                                            	t_16 = t_6 + (t_14 + t_10);
                                                                                                                                                                                                                                                                                                                                                            	tmp = 0.0;
                                                                                                                                                                                                                                                                                                                                                            	if (t_15 <= 1.0)
                                                                                                                                                                                                                                                                                                                                                            		tmp = (sqrt((1.0 + t_5)) + (1.0 / (1.0 + t_10))) - t_6;
                                                                                                                                                                                                                                                                                                                                                            	elseif (t_15 <= 2.0)
                                                                                                                                                                                                                                                                                                                                                            		tmp = (1.0 + sqrt((1.0 + t_11))) - (t_6 + t_14);
                                                                                                                                                                                                                                                                                                                                                            	elseif (t_15 <= 3.5)
                                                                                                                                                                                                                                                                                                                                                            		tmp = (2.0 + sqrt((1.0 + t_9))) - t_16;
                                                                                                                                                                                                                                                                                                                                                            	else
                                                                                                                                                                                                                                                                                                                                                            		tmp = (4.0 + (0.5 * t_5)) - (t_13 + t_16);
                                                                                                                                                                                                                                                                                                                                                            	end
                                                                                                                                                                                                                                                                                                                                                            	tmp_2 = tmp;
                                                                                                                                                                                                                                                                                                                                                            end
                                                                                                                                                                                                                                                                                                                                                            
                                                                                                                                                                                                                                                                                                                                                            code[x_, y_, z_, t_] := Block[{t$95$1 = N[Max[N[Min[x, y], $MachinePrecision], z], $MachinePrecision]}, Block[{t$95$2 = N[Max[N[Max[x, y], $MachinePrecision], t$95$1], $MachinePrecision]}, Block[{t$95$3 = N[Min[N[Max[x, y], $MachinePrecision], t$95$1], $MachinePrecision]}, Block[{t$95$4 = N[Min[N[Min[x, y], $MachinePrecision], z], $MachinePrecision]}, Block[{t$95$5 = N[Min[t$95$4, t], $MachinePrecision]}, Block[{t$95$6 = N[Sqrt[t$95$5], $MachinePrecision]}, Block[{t$95$7 = N[Max[t$95$4, t], $MachinePrecision]}, Block[{t$95$8 = N[Max[t$95$3, t$95$7], $MachinePrecision]}, Block[{t$95$9 = N[Min[t$95$2, t$95$8], $MachinePrecision]}, Block[{t$95$10 = N[Sqrt[t$95$9], $MachinePrecision]}, Block[{t$95$11 = N[Min[t$95$3, t$95$7], $MachinePrecision]}, Block[{t$95$12 = N[Max[t$95$2, t$95$8], $MachinePrecision]}, Block[{t$95$13 = N[Sqrt[t$95$12], $MachinePrecision]}, Block[{t$95$14 = N[Sqrt[t$95$11], $MachinePrecision]}, Block[{t$95$15 = N[(N[(N[(N[(N[Sqrt[N[(t$95$5 + 1.0), $MachinePrecision]], $MachinePrecision] - t$95$6), $MachinePrecision] + N[(N[Sqrt[N[(t$95$11 + 1.0), $MachinePrecision]], $MachinePrecision] - t$95$14), $MachinePrecision]), $MachinePrecision] + N[(N[Sqrt[N[(t$95$9 + 1.0), $MachinePrecision]], $MachinePrecision] - t$95$10), $MachinePrecision]), $MachinePrecision] + N[(N[Sqrt[N[(t$95$12 + 1.0), $MachinePrecision]], $MachinePrecision] - t$95$13), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$16 = N[(t$95$6 + N[(t$95$14 + t$95$10), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[t$95$15, 1.0], N[(N[(N[Sqrt[N[(1.0 + t$95$5), $MachinePrecision]], $MachinePrecision] + N[(1.0 / N[(1.0 + t$95$10), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] - t$95$6), $MachinePrecision], If[LessEqual[t$95$15, 2.0], N[(N[(1.0 + N[Sqrt[N[(1.0 + t$95$11), $MachinePrecision]], $MachinePrecision]), $MachinePrecision] - N[(t$95$6 + t$95$14), $MachinePrecision]), $MachinePrecision], If[LessEqual[t$95$15, 3.5], N[(N[(2.0 + N[Sqrt[N[(1.0 + t$95$9), $MachinePrecision]], $MachinePrecision]), $MachinePrecision] - t$95$16), $MachinePrecision], N[(N[(4.0 + N[(0.5 * t$95$5), $MachinePrecision]), $MachinePrecision] - N[(t$95$13 + t$95$16), $MachinePrecision]), $MachinePrecision]]]]]]]]]]]]]]]]]]]]
                                                                                                                                                                                                                                                                                                                                                            
                                                                                                                                                                                                                                                                                                                                                            f(x, y, z, t):
                                                                                                                                                                                                                                                                                                                                                            	x in [-inf, +inf],
                                                                                                                                                                                                                                                                                                                                                            	y in [-inf, +inf],
                                                                                                                                                                                                                                                                                                                                                            	z in [-inf, +inf],
                                                                                                                                                                                                                                                                                                                                                            	t in [-inf, +inf]
                                                                                                                                                                                                                                                                                                                                                            code: THEORY
                                                                                                                                                                                                                                                                                                                                                            BEGIN
                                                                                                                                                                                                                                                                                                                                                            f(x, y, z, t: real): real =
                                                                                                                                                                                                                                                                                                                                                            	LET tmp_2 = IF (x < y) THEN x ELSE y ENDIF IN
                                                                                                                                                                                                                                                                                                                                                            	LET tmp_3 = IF (x < y) THEN x ELSE y ENDIF IN
                                                                                                                                                                                                                                                                                                                                                            	LET tmp_1 = IF (tmp_2 > z) THEN tmp_3 ELSE z ENDIF IN
                                                                                                                                                                                                                                                                                                                                                            	LET t_1 = tmp_1 IN
                                                                                                                                                                                                                                                                                                                                                            		LET tmp_6 = IF (x > y) THEN x ELSE y ENDIF IN
                                                                                                                                                                                                                                                                                                                                                            		LET tmp_7 = IF (x > y) THEN x ELSE y ENDIF IN
                                                                                                                                                                                                                                                                                                                                                            		LET tmp_5 = IF (tmp_6 > t_1) THEN tmp_7 ELSE t_1 ENDIF IN
                                                                                                                                                                                                                                                                                                                                                            		LET t_2 = tmp_5 IN
                                                                                                                                                                                                                                                                                                                                                            			LET tmp_10 = IF (x > y) THEN x ELSE y ENDIF IN
                                                                                                                                                                                                                                                                                                                                                            			LET tmp_11 = IF (x > y) THEN x ELSE y ENDIF IN
                                                                                                                                                                                                                                                                                                                                                            			LET tmp_9 = IF (tmp_10 < t_1) THEN tmp_11 ELSE t_1 ENDIF IN
                                                                                                                                                                                                                                                                                                                                                            			LET t_3 = tmp_9 IN
                                                                                                                                                                                                                                                                                                                                                            				LET tmp_14 = IF (x < y) THEN x ELSE y ENDIF IN
                                                                                                                                                                                                                                                                                                                                                            				LET tmp_15 = IF (x < y) THEN x ELSE y ENDIF IN
                                                                                                                                                                                                                                                                                                                                                            				LET tmp_13 = IF (tmp_14 < z) THEN tmp_15 ELSE z ENDIF IN
                                                                                                                                                                                                                                                                                                                                                            				LET t_4 = tmp_13 IN
                                                                                                                                                                                                                                                                                                                                                            					LET tmp_16 = IF (t_4 < t) THEN t_4 ELSE t ENDIF IN
                                                                                                                                                                                                                                                                                                                                                            					LET t_5 = tmp_16 IN
                                                                                                                                                                                                                                                                                                                                                            						LET t_6 = (sqrt(t_5)) IN
                                                                                                                                                                                                                                                                                                                                                            							LET tmp_17 = IF (t_4 > t) THEN t_4 ELSE t ENDIF IN
                                                                                                                                                                                                                                                                                                                                                            							LET t_7 = tmp_17 IN
                                                                                                                                                                                                                                                                                                                                                            								LET tmp_18 = IF (t_3 > t_7) THEN t_3 ELSE t_7 ENDIF IN
                                                                                                                                                                                                                                                                                                                                                            								LET t_8 = tmp_18 IN
                                                                                                                                                                                                                                                                                                                                                            									LET tmp_19 = IF (t_2 < t_8) THEN t_2 ELSE t_8 ENDIF IN
                                                                                                                                                                                                                                                                                                                                                            									LET t_9 = tmp_19 IN
                                                                                                                                                                                                                                                                                                                                                            										LET t_10 = (sqrt(t_9)) IN
                                                                                                                                                                                                                                                                                                                                                            											LET tmp_20 = IF (t_3 < t_7) THEN t_3 ELSE t_7 ENDIF IN
                                                                                                                                                                                                                                                                                                                                                            											LET t_11 = tmp_20 IN
                                                                                                                                                                                                                                                                                                                                                            												LET tmp_21 = IF (t_2 > t_8) THEN t_2 ELSE t_8 ENDIF IN
                                                                                                                                                                                                                                                                                                                                                            												LET t_12 = tmp_21 IN
                                                                                                                                                                                                                                                                                                                                                            													LET t_13 = (sqrt(t_12)) IN
                                                                                                                                                                                                                                                                                                                                                            														LET t_14 = (sqrt(t_11)) IN
                                                                                                                                                                                                                                                                                                                                                            															LET t_15 = (((((sqrt((t_5 + (1)))) - t_6) + ((sqrt((t_11 + (1)))) - t_14)) + ((sqrt((t_9 + (1)))) - t_10)) + ((sqrt((t_12 + (1)))) - t_13)) IN
                                                                                                                                                                                                                                                                                                                                                            																LET t_16 = (t_6 + (t_14 + t_10)) IN
                                                                                                                                                                                                                                                                                                                                                            																	LET tmp_24 = IF (t_15 <= (35e-1)) THEN (((2) + (sqrt(((1) + t_9)))) - t_16) ELSE (((4) + ((5e-1) * t_5)) - (t_13 + t_16)) ENDIF IN
                                                                                                                                                                                                                                                                                                                                                            																	LET tmp_23 = IF (t_15 <= (2)) THEN (((1) + (sqrt(((1) + t_11)))) - (t_6 + t_14)) ELSE tmp_24 ENDIF IN
                                                                                                                                                                                                                                                                                                                                                            																	LET tmp_22 = IF (t_15 <= (1)) THEN (((sqrt(((1) + t_5))) + ((1) / ((1) + t_10))) - t_6) ELSE tmp_23 ENDIF IN
                                                                                                                                                                                                                                                                                                                                                            	tmp_22
                                                                                                                                                                                                                                                                                                                                                            END code
                                                                                                                                                                                                                                                                                                                                                            \begin{array}{l}
                                                                                                                                                                                                                                                                                                                                                            t_1 := \mathsf{max}\left(\mathsf{min}\left(x, y\right), z\right)\\
                                                                                                                                                                                                                                                                                                                                                            t_2 := \mathsf{max}\left(\mathsf{max}\left(x, y\right), t\_1\right)\\
                                                                                                                                                                                                                                                                                                                                                            t_3 := \mathsf{min}\left(\mathsf{max}\left(x, y\right), t\_1\right)\\
                                                                                                                                                                                                                                                                                                                                                            t_4 := \mathsf{min}\left(\mathsf{min}\left(x, y\right), z\right)\\
                                                                                                                                                                                                                                                                                                                                                            t_5 := \mathsf{min}\left(t\_4, t\right)\\
                                                                                                                                                                                                                                                                                                                                                            t_6 := \sqrt{t\_5}\\
                                                                                                                                                                                                                                                                                                                                                            t_7 := \mathsf{max}\left(t\_4, t\right)\\
                                                                                                                                                                                                                                                                                                                                                            t_8 := \mathsf{max}\left(t\_3, t\_7\right)\\
                                                                                                                                                                                                                                                                                                                                                            t_9 := \mathsf{min}\left(t\_2, t\_8\right)\\
                                                                                                                                                                                                                                                                                                                                                            t_10 := \sqrt{t\_9}\\
                                                                                                                                                                                                                                                                                                                                                            t_11 := \mathsf{min}\left(t\_3, t\_7\right)\\
                                                                                                                                                                                                                                                                                                                                                            t_12 := \mathsf{max}\left(t\_2, t\_8\right)\\
                                                                                                                                                                                                                                                                                                                                                            t_13 := \sqrt{t\_12}\\
                                                                                                                                                                                                                                                                                                                                                            t_14 := \sqrt{t\_11}\\
                                                                                                                                                                                                                                                                                                                                                            t_15 := \left(\left(\left(\sqrt{t\_5 + 1} - t\_6\right) + \left(\sqrt{t\_11 + 1} - t\_14\right)\right) + \left(\sqrt{t\_9 + 1} - t\_10\right)\right) + \left(\sqrt{t\_12 + 1} - t\_13\right)\\
                                                                                                                                                                                                                                                                                                                                                            t_16 := t\_6 + \left(t\_14 + t\_10\right)\\
                                                                                                                                                                                                                                                                                                                                                            \mathbf{if}\;t\_15 \leq 1:\\
                                                                                                                                                                                                                                                                                                                                                            \;\;\;\;\left(\sqrt{1 + t\_5} + \frac{1}{1 + t\_10}\right) - t\_6\\
                                                                                                                                                                                                                                                                                                                                                            
                                                                                                                                                                                                                                                                                                                                                            \mathbf{elif}\;t\_15 \leq 2:\\
                                                                                                                                                                                                                                                                                                                                                            \;\;\;\;\left(1 + \sqrt{1 + t\_11}\right) - \left(t\_6 + t\_14\right)\\
                                                                                                                                                                                                                                                                                                                                                            
                                                                                                                                                                                                                                                                                                                                                            \mathbf{elif}\;t\_15 \leq 3.5:\\
                                                                                                                                                                                                                                                                                                                                                            \;\;\;\;\left(2 + \sqrt{1 + t\_9}\right) - t\_16\\
                                                                                                                                                                                                                                                                                                                                                            
                                                                                                                                                                                                                                                                                                                                                            \mathbf{else}:\\
                                                                                                                                                                                                                                                                                                                                                            \;\;\;\;\left(4 + 0.5 \cdot t\_5\right) - \left(t\_13 + t\_16\right)\\
                                                                                                                                                                                                                                                                                                                                                            
                                                                                                                                                                                                                                                                                                                                                            
                                                                                                                                                                                                                                                                                                                                                            \end{array}
                                                                                                                                                                                                                                                                                                                                                            
                                                                                                                                                                                                                                                                                                                                                            Derivation
                                                                                                                                                                                                                                                                                                                                                            1. Split input into 4 regimes
                                                                                                                                                                                                                                                                                                                                                            2. if (+.f64 (+.f64 (+.f64 (-.f64 (sqrt.f64 (+.f64 x #s(literal 1 binary64))) (sqrt.f64 x)) (-.f64 (sqrt.f64 (+.f64 y #s(literal 1 binary64))) (sqrt.f64 y))) (-.f64 (sqrt.f64 (+.f64 z #s(literal 1 binary64))) (sqrt.f64 z))) (-.f64 (sqrt.f64 (+.f64 t #s(literal 1 binary64))) (sqrt.f64 t))) < 1

                                                                                                                                                                                                                                                                                                                                                              1. Initial program 92.0%

                                                                                                                                                                                                                                                                                                                                                                \[\left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                                                                                                                                                              2. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                1. Applied rewrites93.8%

                                                                                                                                                                                                                                                                                                                                                                  \[\leadsto \left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \frac{1}{\sqrt{z} + \sqrt{z + 1}}\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                                                                                                                                                                2. Taylor expanded in t around inf

                                                                                                                                                                                                                                                                                                                                                                  \[\leadsto \left(\sqrt{1 + x} + \left(\sqrt{1 + y} + \frac{1}{\sqrt{z} + \sqrt{1 + z}}\right)\right) - \left(\sqrt{x} + \sqrt{y}\right) \]
                                                                                                                                                                                                                                                                                                                                                                3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                  1. Applied rewrites19.3%

                                                                                                                                                                                                                                                                                                                                                                    \[\leadsto \left(\sqrt{1 + x} + \left(\sqrt{1 + y} + \frac{1}{\sqrt{z} + \sqrt{1 + z}}\right)\right) - \left(\sqrt{x} + \sqrt{y}\right) \]
                                                                                                                                                                                                                                                                                                                                                                  2. Taylor expanded in y around inf

                                                                                                                                                                                                                                                                                                                                                                    \[\leadsto \left(\sqrt{1 + x} + \frac{1}{\sqrt{z} + \sqrt{1 + z}}\right) - \sqrt{x} \]
                                                                                                                                                                                                                                                                                                                                                                  3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                    1. Applied rewrites21.6%

                                                                                                                                                                                                                                                                                                                                                                      \[\leadsto \left(\sqrt{1 + x} + \frac{1}{\sqrt{z} + \sqrt{1 + z}}\right) - \sqrt{x} \]
                                                                                                                                                                                                                                                                                                                                                                    2. Taylor expanded in z around 0

                                                                                                                                                                                                                                                                                                                                                                      \[\leadsto \left(\sqrt{1 + x} + \frac{1}{1 + \sqrt{z}}\right) - \sqrt{x} \]
                                                                                                                                                                                                                                                                                                                                                                    3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                      1. Applied rewrites21.3%

                                                                                                                                                                                                                                                                                                                                                                        \[\leadsto \left(\sqrt{1 + x} + \frac{1}{1 + \sqrt{z}}\right) - \sqrt{x} \]

                                                                                                                                                                                                                                                                                                                                                                      if 1 < (+.f64 (+.f64 (+.f64 (-.f64 (sqrt.f64 (+.f64 x #s(literal 1 binary64))) (sqrt.f64 x)) (-.f64 (sqrt.f64 (+.f64 y #s(literal 1 binary64))) (sqrt.f64 y))) (-.f64 (sqrt.f64 (+.f64 z #s(literal 1 binary64))) (sqrt.f64 z))) (-.f64 (sqrt.f64 (+.f64 t #s(literal 1 binary64))) (sqrt.f64 t))) < 2

                                                                                                                                                                                                                                                                                                                                                                      1. Initial program 92.0%

                                                                                                                                                                                                                                                                                                                                                                        \[\left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                                                                                                                                                                      2. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                        1. Applied rewrites93.8%

                                                                                                                                                                                                                                                                                                                                                                          \[\leadsto \left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \frac{1}{\sqrt{z} + \sqrt{z + 1}}\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                                                                                                                                                                        2. Taylor expanded in t around inf

                                                                                                                                                                                                                                                                                                                                                                          \[\leadsto \left(\sqrt{1 + x} + \left(\sqrt{1 + y} + \frac{1}{\sqrt{z} + \sqrt{1 + z}}\right)\right) - \left(\sqrt{x} + \sqrt{y}\right) \]
                                                                                                                                                                                                                                                                                                                                                                        3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                          1. Applied rewrites19.3%

                                                                                                                                                                                                                                                                                                                                                                            \[\leadsto \left(\sqrt{1 + x} + \left(\sqrt{1 + y} + \frac{1}{\sqrt{z} + \sqrt{1 + z}}\right)\right) - \left(\sqrt{x} + \sqrt{y}\right) \]
                                                                                                                                                                                                                                                                                                                                                                          2. Taylor expanded in z around inf

                                                                                                                                                                                                                                                                                                                                                                            \[\leadsto \left(\sqrt{1 + x} + \sqrt{1 + y}\right) - \left(\sqrt{x} + \sqrt{y}\right) \]
                                                                                                                                                                                                                                                                                                                                                                          3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                            1. Applied rewrites13.3%

                                                                                                                                                                                                                                                                                                                                                                              \[\leadsto \left(\sqrt{1 + x} + \sqrt{1 + y}\right) - \left(\sqrt{x} + \sqrt{y}\right) \]
                                                                                                                                                                                                                                                                                                                                                                            2. Taylor expanded in x around 0

                                                                                                                                                                                                                                                                                                                                                                              \[\leadsto \left(1 + \sqrt{1 + y}\right) - \left(\sqrt{x} + \sqrt{y}\right) \]
                                                                                                                                                                                                                                                                                                                                                                            3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                              1. Applied rewrites11.6%

                                                                                                                                                                                                                                                                                                                                                                                \[\leadsto \left(1 + \sqrt{1 + y}\right) - \left(\sqrt{x} + \sqrt{y}\right) \]

                                                                                                                                                                                                                                                                                                                                                                              if 2 < (+.f64 (+.f64 (+.f64 (-.f64 (sqrt.f64 (+.f64 x #s(literal 1 binary64))) (sqrt.f64 x)) (-.f64 (sqrt.f64 (+.f64 y #s(literal 1 binary64))) (sqrt.f64 y))) (-.f64 (sqrt.f64 (+.f64 z #s(literal 1 binary64))) (sqrt.f64 z))) (-.f64 (sqrt.f64 (+.f64 t #s(literal 1 binary64))) (sqrt.f64 t))) < 3.5

                                                                                                                                                                                                                                                                                                                                                                              1. Initial program 92.0%

                                                                                                                                                                                                                                                                                                                                                                                \[\left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                                                                                                                                                                              2. Taylor expanded in t around inf

                                                                                                                                                                                                                                                                                                                                                                                \[\leadsto \left(\sqrt{1 + x} + \left(\sqrt{1 + y} + \sqrt{1 + z}\right)\right) - \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                              3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                1. Applied rewrites12.2%

                                                                                                                                                                                                                                                                                                                                                                                  \[\leadsto \left(\sqrt{1 + x} + \left(\sqrt{1 + y} + \sqrt{1 + z}\right)\right) - \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                2. Taylor expanded in y around 0

                                                                                                                                                                                                                                                                                                                                                                                  \[\leadsto \left(1 + \left(\sqrt{1 + x} + \sqrt{1 + z}\right)\right) - \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                  1. Applied rewrites10.7%

                                                                                                                                                                                                                                                                                                                                                                                    \[\leadsto \left(1 + \left(\sqrt{1 + x} + \sqrt{1 + z}\right)\right) - \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                  2. Taylor expanded in x around 0

                                                                                                                                                                                                                                                                                                                                                                                    \[\leadsto \left(2 + \sqrt{1 + z}\right) - \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                  3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                    1. Applied rewrites9.4%

                                                                                                                                                                                                                                                                                                                                                                                      \[\leadsto \left(2 + \sqrt{1 + z}\right) - \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right) \]

                                                                                                                                                                                                                                                                                                                                                                                    if 3.5 < (+.f64 (+.f64 (+.f64 (-.f64 (sqrt.f64 (+.f64 x #s(literal 1 binary64))) (sqrt.f64 x)) (-.f64 (sqrt.f64 (+.f64 y #s(literal 1 binary64))) (sqrt.f64 y))) (-.f64 (sqrt.f64 (+.f64 z #s(literal 1 binary64))) (sqrt.f64 z))) (-.f64 (sqrt.f64 (+.f64 t #s(literal 1 binary64))) (sqrt.f64 t)))

                                                                                                                                                                                                                                                                                                                                                                                    1. Initial program 92.0%

                                                                                                                                                                                                                                                                                                                                                                                      \[\left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                    2. Taylor expanded in t around 0

                                                                                                                                                                                                                                                                                                                                                                                      \[\leadsto \left(1 + \left(\sqrt{1 + x} + \left(\sqrt{1 + y} + \sqrt{1 + z}\right)\right)\right) - \left(\sqrt{t} + \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                    3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                      1. Applied rewrites10.2%

                                                                                                                                                                                                                                                                                                                                                                                        \[\leadsto \left(1 + \left(\sqrt{1 + x} + \left(\sqrt{1 + y} + \sqrt{1 + z}\right)\right)\right) - \left(\sqrt{t} + \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                      2. Taylor expanded in z around 0

                                                                                                                                                                                                                                                                                                                                                                                        \[\leadsto \left(2 + \left(\sqrt{1 + x} + \sqrt{1 + y}\right)\right) - \left(\sqrt{t} + \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                      3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                        1. Applied rewrites9.1%

                                                                                                                                                                                                                                                                                                                                                                                          \[\leadsto \left(2 + \left(\sqrt{1 + x} + \sqrt{1 + y}\right)\right) - \left(\sqrt{t} + \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                        2. Taylor expanded in y around 0

                                                                                                                                                                                                                                                                                                                                                                                          \[\leadsto \left(3 + \sqrt{1 + x}\right) - \left(\sqrt{t} + \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                        3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                          1. Applied rewrites8.0%

                                                                                                                                                                                                                                                                                                                                                                                            \[\leadsto \left(3 + \sqrt{1 + x}\right) - \left(\sqrt{t} + \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                          2. Taylor expanded in x around 0

                                                                                                                                                                                                                                                                                                                                                                                            \[\leadsto \left(4 + \frac{1}{2} \cdot x\right) - \left(\sqrt{t} + \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                          3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                            1. Applied rewrites8.2%

                                                                                                                                                                                                                                                                                                                                                                                              \[\leadsto \left(4 + 0.5 \cdot x\right) - \left(\sqrt{t} + \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                          4. Recombined 4 regimes into one program.
                                                                                                                                                                                                                                                                                                                                                                                          5. Add Preprocessing

                                                                                                                                                                                                                                                                                                                                                                                          Alternative 22: 88.8% accurate, 0.0× speedup?

                                                                                                                                                                                                                                                                                                                                                                                          \[\begin{array}{l} t_1 := \mathsf{max}\left(\mathsf{min}\left(x, y\right), z\right)\\ t_2 := \mathsf{max}\left(\mathsf{max}\left(x, y\right), t\_1\right)\\ t_3 := \mathsf{min}\left(\mathsf{max}\left(x, y\right), t\_1\right)\\ t_4 := \mathsf{min}\left(\mathsf{min}\left(x, y\right), z\right)\\ t_5 := \mathsf{min}\left(t\_4, t\right)\\ t_6 := \sqrt{t\_5}\\ t_7 := \mathsf{max}\left(t\_4, t\right)\\ t_8 := \mathsf{max}\left(t\_3, t\_7\right)\\ t_9 := \mathsf{min}\left(t\_2, t\_8\right)\\ t_10 := \sqrt{t\_9}\\ t_11 := \mathsf{min}\left(t\_3, t\_7\right)\\ t_12 := \mathsf{max}\left(t\_2, t\_8\right)\\ t_13 := \sqrt{t\_12}\\ t_14 := \sqrt{t\_11}\\ t_15 := t\_6 + \left(t\_14 + t\_10\right)\\ t_16 := \left(\left(\left(\sqrt{t\_5 + 1} - t\_6\right) + \left(\sqrt{t\_11 + 1} - t\_14\right)\right) + \left(\sqrt{t\_9 + 1} - t\_10\right)\right) + \left(\sqrt{t\_12 + 1} - t\_13\right)\\ \mathbf{if}\;t\_16 \leq 1:\\ \;\;\;\;\left(\sqrt{1 + t\_5} + \frac{1}{1 + t\_10}\right) - t\_6\\ \mathbf{elif}\;t\_16 \leq 2.5:\\ \;\;\;\;\left(1 + \sqrt{1 + t\_11}\right) - \left(t\_6 + t\_14\right)\\ \mathbf{elif}\;t\_16 \leq 3.5:\\ \;\;\;\;\left(3 + 0.5 \cdot t\_9\right) - t\_15\\ \mathbf{else}:\\ \;\;\;\;4 - \left(t\_13 + t\_15\right)\\ \end{array} \]
                                                                                                                                                                                                                                                                                                                                                                                          (FPCore (x y z t)
                                                                                                                                                                                                                                                                                                                                                                                            :precision binary64
                                                                                                                                                                                                                                                                                                                                                                                            :pre TRUE
                                                                                                                                                                                                                                                                                                                                                                                            (let* ((t_1 (fmax (fmin x y) z))
                                                                                                                                                                                                                                                                                                                                                                                                 (t_2 (fmax (fmax x y) t_1))
                                                                                                                                                                                                                                                                                                                                                                                                 (t_3 (fmin (fmax x y) t_1))
                                                                                                                                                                                                                                                                                                                                                                                                 (t_4 (fmin (fmin x y) z))
                                                                                                                                                                                                                                                                                                                                                                                                 (t_5 (fmin t_4 t))
                                                                                                                                                                                                                                                                                                                                                                                                 (t_6 (sqrt t_5))
                                                                                                                                                                                                                                                                                                                                                                                                 (t_7 (fmax t_4 t))
                                                                                                                                                                                                                                                                                                                                                                                                 (t_8 (fmax t_3 t_7))
                                                                                                                                                                                                                                                                                                                                                                                                 (t_9 (fmin t_2 t_8))
                                                                                                                                                                                                                                                                                                                                                                                                 (t_10 (sqrt t_9))
                                                                                                                                                                                                                                                                                                                                                                                                 (t_11 (fmin t_3 t_7))
                                                                                                                                                                                                                                                                                                                                                                                                 (t_12 (fmax t_2 t_8))
                                                                                                                                                                                                                                                                                                                                                                                                 (t_13 (sqrt t_12))
                                                                                                                                                                                                                                                                                                                                                                                                 (t_14 (sqrt t_11))
                                                                                                                                                                                                                                                                                                                                                                                                 (t_15 (+ t_6 (+ t_14 t_10)))
                                                                                                                                                                                                                                                                                                                                                                                                 (t_16
                                                                                                                                                                                                                                                                                                                                                                                                  (+
                                                                                                                                                                                                                                                                                                                                                                                                   (+
                                                                                                                                                                                                                                                                                                                                                                                                    (+ (- (sqrt (+ t_5 1.0)) t_6) (- (sqrt (+ t_11 1.0)) t_14))
                                                                                                                                                                                                                                                                                                                                                                                                    (- (sqrt (+ t_9 1.0)) t_10))
                                                                                                                                                                                                                                                                                                                                                                                                   (- (sqrt (+ t_12 1.0)) t_13))))
                                                                                                                                                                                                                                                                                                                                                                                            (if (<= t_16 1.0)
                                                                                                                                                                                                                                                                                                                                                                                              (- (+ (sqrt (+ 1.0 t_5)) (/ 1.0 (+ 1.0 t_10))) t_6)
                                                                                                                                                                                                                                                                                                                                                                                              (if (<= t_16 2.5)
                                                                                                                                                                                                                                                                                                                                                                                                (- (+ 1.0 (sqrt (+ 1.0 t_11))) (+ t_6 t_14))
                                                                                                                                                                                                                                                                                                                                                                                                (if (<= t_16 3.5)
                                                                                                                                                                                                                                                                                                                                                                                                  (- (+ 3.0 (* 0.5 t_9)) t_15)
                                                                                                                                                                                                                                                                                                                                                                                                  (- 4.0 (+ t_13 t_15)))))))
                                                                                                                                                                                                                                                                                                                                                                                          double code(double x, double y, double z, double t) {
                                                                                                                                                                                                                                                                                                                                                                                          	double t_1 = fmax(fmin(x, y), z);
                                                                                                                                                                                                                                                                                                                                                                                          	double t_2 = fmax(fmax(x, y), t_1);
                                                                                                                                                                                                                                                                                                                                                                                          	double t_3 = fmin(fmax(x, y), t_1);
                                                                                                                                                                                                                                                                                                                                                                                          	double t_4 = fmin(fmin(x, y), z);
                                                                                                                                                                                                                                                                                                                                                                                          	double t_5 = fmin(t_4, t);
                                                                                                                                                                                                                                                                                                                                                                                          	double t_6 = sqrt(t_5);
                                                                                                                                                                                                                                                                                                                                                                                          	double t_7 = fmax(t_4, t);
                                                                                                                                                                                                                                                                                                                                                                                          	double t_8 = fmax(t_3, t_7);
                                                                                                                                                                                                                                                                                                                                                                                          	double t_9 = fmin(t_2, t_8);
                                                                                                                                                                                                                                                                                                                                                                                          	double t_10 = sqrt(t_9);
                                                                                                                                                                                                                                                                                                                                                                                          	double t_11 = fmin(t_3, t_7);
                                                                                                                                                                                                                                                                                                                                                                                          	double t_12 = fmax(t_2, t_8);
                                                                                                                                                                                                                                                                                                                                                                                          	double t_13 = sqrt(t_12);
                                                                                                                                                                                                                                                                                                                                                                                          	double t_14 = sqrt(t_11);
                                                                                                                                                                                                                                                                                                                                                                                          	double t_15 = t_6 + (t_14 + t_10);
                                                                                                                                                                                                                                                                                                                                                                                          	double t_16 = (((sqrt((t_5 + 1.0)) - t_6) + (sqrt((t_11 + 1.0)) - t_14)) + (sqrt((t_9 + 1.0)) - t_10)) + (sqrt((t_12 + 1.0)) - t_13);
                                                                                                                                                                                                                                                                                                                                                                                          	double tmp;
                                                                                                                                                                                                                                                                                                                                                                                          	if (t_16 <= 1.0) {
                                                                                                                                                                                                                                                                                                                                                                                          		tmp = (sqrt((1.0 + t_5)) + (1.0 / (1.0 + t_10))) - t_6;
                                                                                                                                                                                                                                                                                                                                                                                          	} else if (t_16 <= 2.5) {
                                                                                                                                                                                                                                                                                                                                                                                          		tmp = (1.0 + sqrt((1.0 + t_11))) - (t_6 + t_14);
                                                                                                                                                                                                                                                                                                                                                                                          	} else if (t_16 <= 3.5) {
                                                                                                                                                                                                                                                                                                                                                                                          		tmp = (3.0 + (0.5 * t_9)) - t_15;
                                                                                                                                                                                                                                                                                                                                                                                          	} else {
                                                                                                                                                                                                                                                                                                                                                                                          		tmp = 4.0 - (t_13 + t_15);
                                                                                                                                                                                                                                                                                                                                                                                          	}
                                                                                                                                                                                                                                                                                                                                                                                          	return tmp;
                                                                                                                                                                                                                                                                                                                                                                                          }
                                                                                                                                                                                                                                                                                                                                                                                          
                                                                                                                                                                                                                                                                                                                                                                                          real(8) function code(x, y, z, t)
                                                                                                                                                                                                                                                                                                                                                                                          use fmin_fmax_functions
                                                                                                                                                                                                                                                                                                                                                                                              real(8), intent (in) :: x
                                                                                                                                                                                                                                                                                                                                                                                              real(8), intent (in) :: y
                                                                                                                                                                                                                                                                                                                                                                                              real(8), intent (in) :: z
                                                                                                                                                                                                                                                                                                                                                                                              real(8), intent (in) :: t
                                                                                                                                                                                                                                                                                                                                                                                              real(8) :: t_1
                                                                                                                                                                                                                                                                                                                                                                                              real(8) :: t_10
                                                                                                                                                                                                                                                                                                                                                                                              real(8) :: t_11
                                                                                                                                                                                                                                                                                                                                                                                              real(8) :: t_12
                                                                                                                                                                                                                                                                                                                                                                                              real(8) :: t_13
                                                                                                                                                                                                                                                                                                                                                                                              real(8) :: t_14
                                                                                                                                                                                                                                                                                                                                                                                              real(8) :: t_15
                                                                                                                                                                                                                                                                                                                                                                                              real(8) :: t_16
                                                                                                                                                                                                                                                                                                                                                                                              real(8) :: t_2
                                                                                                                                                                                                                                                                                                                                                                                              real(8) :: t_3
                                                                                                                                                                                                                                                                                                                                                                                              real(8) :: t_4
                                                                                                                                                                                                                                                                                                                                                                                              real(8) :: t_5
                                                                                                                                                                                                                                                                                                                                                                                              real(8) :: t_6
                                                                                                                                                                                                                                                                                                                                                                                              real(8) :: t_7
                                                                                                                                                                                                                                                                                                                                                                                              real(8) :: t_8
                                                                                                                                                                                                                                                                                                                                                                                              real(8) :: t_9
                                                                                                                                                                                                                                                                                                                                                                                              real(8) :: tmp
                                                                                                                                                                                                                                                                                                                                                                                              t_1 = fmax(fmin(x, y), z)
                                                                                                                                                                                                                                                                                                                                                                                              t_2 = fmax(fmax(x, y), t_1)
                                                                                                                                                                                                                                                                                                                                                                                              t_3 = fmin(fmax(x, y), t_1)
                                                                                                                                                                                                                                                                                                                                                                                              t_4 = fmin(fmin(x, y), z)
                                                                                                                                                                                                                                                                                                                                                                                              t_5 = fmin(t_4, t)
                                                                                                                                                                                                                                                                                                                                                                                              t_6 = sqrt(t_5)
                                                                                                                                                                                                                                                                                                                                                                                              t_7 = fmax(t_4, t)
                                                                                                                                                                                                                                                                                                                                                                                              t_8 = fmax(t_3, t_7)
                                                                                                                                                                                                                                                                                                                                                                                              t_9 = fmin(t_2, t_8)
                                                                                                                                                                                                                                                                                                                                                                                              t_10 = sqrt(t_9)
                                                                                                                                                                                                                                                                                                                                                                                              t_11 = fmin(t_3, t_7)
                                                                                                                                                                                                                                                                                                                                                                                              t_12 = fmax(t_2, t_8)
                                                                                                                                                                                                                                                                                                                                                                                              t_13 = sqrt(t_12)
                                                                                                                                                                                                                                                                                                                                                                                              t_14 = sqrt(t_11)
                                                                                                                                                                                                                                                                                                                                                                                              t_15 = t_6 + (t_14 + t_10)
                                                                                                                                                                                                                                                                                                                                                                                              t_16 = (((sqrt((t_5 + 1.0d0)) - t_6) + (sqrt((t_11 + 1.0d0)) - t_14)) + (sqrt((t_9 + 1.0d0)) - t_10)) + (sqrt((t_12 + 1.0d0)) - t_13)
                                                                                                                                                                                                                                                                                                                                                                                              if (t_16 <= 1.0d0) then
                                                                                                                                                                                                                                                                                                                                                                                                  tmp = (sqrt((1.0d0 + t_5)) + (1.0d0 / (1.0d0 + t_10))) - t_6
                                                                                                                                                                                                                                                                                                                                                                                              else if (t_16 <= 2.5d0) then
                                                                                                                                                                                                                                                                                                                                                                                                  tmp = (1.0d0 + sqrt((1.0d0 + t_11))) - (t_6 + t_14)
                                                                                                                                                                                                                                                                                                                                                                                              else if (t_16 <= 3.5d0) then
                                                                                                                                                                                                                                                                                                                                                                                                  tmp = (3.0d0 + (0.5d0 * t_9)) - t_15
                                                                                                                                                                                                                                                                                                                                                                                              else
                                                                                                                                                                                                                                                                                                                                                                                                  tmp = 4.0d0 - (t_13 + t_15)
                                                                                                                                                                                                                                                                                                                                                                                              end if
                                                                                                                                                                                                                                                                                                                                                                                              code = tmp
                                                                                                                                                                                                                                                                                                                                                                                          end function
                                                                                                                                                                                                                                                                                                                                                                                          
                                                                                                                                                                                                                                                                                                                                                                                          public static double code(double x, double y, double z, double t) {
                                                                                                                                                                                                                                                                                                                                                                                          	double t_1 = fmax(fmin(x, y), z);
                                                                                                                                                                                                                                                                                                                                                                                          	double t_2 = fmax(fmax(x, y), t_1);
                                                                                                                                                                                                                                                                                                                                                                                          	double t_3 = fmin(fmax(x, y), t_1);
                                                                                                                                                                                                                                                                                                                                                                                          	double t_4 = fmin(fmin(x, y), z);
                                                                                                                                                                                                                                                                                                                                                                                          	double t_5 = fmin(t_4, t);
                                                                                                                                                                                                                                                                                                                                                                                          	double t_6 = Math.sqrt(t_5);
                                                                                                                                                                                                                                                                                                                                                                                          	double t_7 = fmax(t_4, t);
                                                                                                                                                                                                                                                                                                                                                                                          	double t_8 = fmax(t_3, t_7);
                                                                                                                                                                                                                                                                                                                                                                                          	double t_9 = fmin(t_2, t_8);
                                                                                                                                                                                                                                                                                                                                                                                          	double t_10 = Math.sqrt(t_9);
                                                                                                                                                                                                                                                                                                                                                                                          	double t_11 = fmin(t_3, t_7);
                                                                                                                                                                                                                                                                                                                                                                                          	double t_12 = fmax(t_2, t_8);
                                                                                                                                                                                                                                                                                                                                                                                          	double t_13 = Math.sqrt(t_12);
                                                                                                                                                                                                                                                                                                                                                                                          	double t_14 = Math.sqrt(t_11);
                                                                                                                                                                                                                                                                                                                                                                                          	double t_15 = t_6 + (t_14 + t_10);
                                                                                                                                                                                                                                                                                                                                                                                          	double t_16 = (((Math.sqrt((t_5 + 1.0)) - t_6) + (Math.sqrt((t_11 + 1.0)) - t_14)) + (Math.sqrt((t_9 + 1.0)) - t_10)) + (Math.sqrt((t_12 + 1.0)) - t_13);
                                                                                                                                                                                                                                                                                                                                                                                          	double tmp;
                                                                                                                                                                                                                                                                                                                                                                                          	if (t_16 <= 1.0) {
                                                                                                                                                                                                                                                                                                                                                                                          		tmp = (Math.sqrt((1.0 + t_5)) + (1.0 / (1.0 + t_10))) - t_6;
                                                                                                                                                                                                                                                                                                                                                                                          	} else if (t_16 <= 2.5) {
                                                                                                                                                                                                                                                                                                                                                                                          		tmp = (1.0 + Math.sqrt((1.0 + t_11))) - (t_6 + t_14);
                                                                                                                                                                                                                                                                                                                                                                                          	} else if (t_16 <= 3.5) {
                                                                                                                                                                                                                                                                                                                                                                                          		tmp = (3.0 + (0.5 * t_9)) - t_15;
                                                                                                                                                                                                                                                                                                                                                                                          	} else {
                                                                                                                                                                                                                                                                                                                                                                                          		tmp = 4.0 - (t_13 + t_15);
                                                                                                                                                                                                                                                                                                                                                                                          	}
                                                                                                                                                                                                                                                                                                                                                                                          	return tmp;
                                                                                                                                                                                                                                                                                                                                                                                          }
                                                                                                                                                                                                                                                                                                                                                                                          
                                                                                                                                                                                                                                                                                                                                                                                          def code(x, y, z, t):
                                                                                                                                                                                                                                                                                                                                                                                          	t_1 = fmax(fmin(x, y), z)
                                                                                                                                                                                                                                                                                                                                                                                          	t_2 = fmax(fmax(x, y), t_1)
                                                                                                                                                                                                                                                                                                                                                                                          	t_3 = fmin(fmax(x, y), t_1)
                                                                                                                                                                                                                                                                                                                                                                                          	t_4 = fmin(fmin(x, y), z)
                                                                                                                                                                                                                                                                                                                                                                                          	t_5 = fmin(t_4, t)
                                                                                                                                                                                                                                                                                                                                                                                          	t_6 = math.sqrt(t_5)
                                                                                                                                                                                                                                                                                                                                                                                          	t_7 = fmax(t_4, t)
                                                                                                                                                                                                                                                                                                                                                                                          	t_8 = fmax(t_3, t_7)
                                                                                                                                                                                                                                                                                                                                                                                          	t_9 = fmin(t_2, t_8)
                                                                                                                                                                                                                                                                                                                                                                                          	t_10 = math.sqrt(t_9)
                                                                                                                                                                                                                                                                                                                                                                                          	t_11 = fmin(t_3, t_7)
                                                                                                                                                                                                                                                                                                                                                                                          	t_12 = fmax(t_2, t_8)
                                                                                                                                                                                                                                                                                                                                                                                          	t_13 = math.sqrt(t_12)
                                                                                                                                                                                                                                                                                                                                                                                          	t_14 = math.sqrt(t_11)
                                                                                                                                                                                                                                                                                                                                                                                          	t_15 = t_6 + (t_14 + t_10)
                                                                                                                                                                                                                                                                                                                                                                                          	t_16 = (((math.sqrt((t_5 + 1.0)) - t_6) + (math.sqrt((t_11 + 1.0)) - t_14)) + (math.sqrt((t_9 + 1.0)) - t_10)) + (math.sqrt((t_12 + 1.0)) - t_13)
                                                                                                                                                                                                                                                                                                                                                                                          	tmp = 0
                                                                                                                                                                                                                                                                                                                                                                                          	if t_16 <= 1.0:
                                                                                                                                                                                                                                                                                                                                                                                          		tmp = (math.sqrt((1.0 + t_5)) + (1.0 / (1.0 + t_10))) - t_6
                                                                                                                                                                                                                                                                                                                                                                                          	elif t_16 <= 2.5:
                                                                                                                                                                                                                                                                                                                                                                                          		tmp = (1.0 + math.sqrt((1.0 + t_11))) - (t_6 + t_14)
                                                                                                                                                                                                                                                                                                                                                                                          	elif t_16 <= 3.5:
                                                                                                                                                                                                                                                                                                                                                                                          		tmp = (3.0 + (0.5 * t_9)) - t_15
                                                                                                                                                                                                                                                                                                                                                                                          	else:
                                                                                                                                                                                                                                                                                                                                                                                          		tmp = 4.0 - (t_13 + t_15)
                                                                                                                                                                                                                                                                                                                                                                                          	return tmp
                                                                                                                                                                                                                                                                                                                                                                                          
                                                                                                                                                                                                                                                                                                                                                                                          function code(x, y, z, t)
                                                                                                                                                                                                                                                                                                                                                                                          	t_1 = fmax(fmin(x, y), z)
                                                                                                                                                                                                                                                                                                                                                                                          	t_2 = fmax(fmax(x, y), t_1)
                                                                                                                                                                                                                                                                                                                                                                                          	t_3 = fmin(fmax(x, y), t_1)
                                                                                                                                                                                                                                                                                                                                                                                          	t_4 = fmin(fmin(x, y), z)
                                                                                                                                                                                                                                                                                                                                                                                          	t_5 = fmin(t_4, t)
                                                                                                                                                                                                                                                                                                                                                                                          	t_6 = sqrt(t_5)
                                                                                                                                                                                                                                                                                                                                                                                          	t_7 = fmax(t_4, t)
                                                                                                                                                                                                                                                                                                                                                                                          	t_8 = fmax(t_3, t_7)
                                                                                                                                                                                                                                                                                                                                                                                          	t_9 = fmin(t_2, t_8)
                                                                                                                                                                                                                                                                                                                                                                                          	t_10 = sqrt(t_9)
                                                                                                                                                                                                                                                                                                                                                                                          	t_11 = fmin(t_3, t_7)
                                                                                                                                                                                                                                                                                                                                                                                          	t_12 = fmax(t_2, t_8)
                                                                                                                                                                                                                                                                                                                                                                                          	t_13 = sqrt(t_12)
                                                                                                                                                                                                                                                                                                                                                                                          	t_14 = sqrt(t_11)
                                                                                                                                                                                                                                                                                                                                                                                          	t_15 = Float64(t_6 + Float64(t_14 + t_10))
                                                                                                                                                                                                                                                                                                                                                                                          	t_16 = Float64(Float64(Float64(Float64(sqrt(Float64(t_5 + 1.0)) - t_6) + Float64(sqrt(Float64(t_11 + 1.0)) - t_14)) + Float64(sqrt(Float64(t_9 + 1.0)) - t_10)) + Float64(sqrt(Float64(t_12 + 1.0)) - t_13))
                                                                                                                                                                                                                                                                                                                                                                                          	tmp = 0.0
                                                                                                                                                                                                                                                                                                                                                                                          	if (t_16 <= 1.0)
                                                                                                                                                                                                                                                                                                                                                                                          		tmp = Float64(Float64(sqrt(Float64(1.0 + t_5)) + Float64(1.0 / Float64(1.0 + t_10))) - t_6);
                                                                                                                                                                                                                                                                                                                                                                                          	elseif (t_16 <= 2.5)
                                                                                                                                                                                                                                                                                                                                                                                          		tmp = Float64(Float64(1.0 + sqrt(Float64(1.0 + t_11))) - Float64(t_6 + t_14));
                                                                                                                                                                                                                                                                                                                                                                                          	elseif (t_16 <= 3.5)
                                                                                                                                                                                                                                                                                                                                                                                          		tmp = Float64(Float64(3.0 + Float64(0.5 * t_9)) - t_15);
                                                                                                                                                                                                                                                                                                                                                                                          	else
                                                                                                                                                                                                                                                                                                                                                                                          		tmp = Float64(4.0 - Float64(t_13 + t_15));
                                                                                                                                                                                                                                                                                                                                                                                          	end
                                                                                                                                                                                                                                                                                                                                                                                          	return tmp
                                                                                                                                                                                                                                                                                                                                                                                          end
                                                                                                                                                                                                                                                                                                                                                                                          
                                                                                                                                                                                                                                                                                                                                                                                          function tmp_2 = code(x, y, z, t)
                                                                                                                                                                                                                                                                                                                                                                                          	t_1 = max(min(x, y), z);
                                                                                                                                                                                                                                                                                                                                                                                          	t_2 = max(max(x, y), t_1);
                                                                                                                                                                                                                                                                                                                                                                                          	t_3 = min(max(x, y), t_1);
                                                                                                                                                                                                                                                                                                                                                                                          	t_4 = min(min(x, y), z);
                                                                                                                                                                                                                                                                                                                                                                                          	t_5 = min(t_4, t);
                                                                                                                                                                                                                                                                                                                                                                                          	t_6 = sqrt(t_5);
                                                                                                                                                                                                                                                                                                                                                                                          	t_7 = max(t_4, t);
                                                                                                                                                                                                                                                                                                                                                                                          	t_8 = max(t_3, t_7);
                                                                                                                                                                                                                                                                                                                                                                                          	t_9 = min(t_2, t_8);
                                                                                                                                                                                                                                                                                                                                                                                          	t_10 = sqrt(t_9);
                                                                                                                                                                                                                                                                                                                                                                                          	t_11 = min(t_3, t_7);
                                                                                                                                                                                                                                                                                                                                                                                          	t_12 = max(t_2, t_8);
                                                                                                                                                                                                                                                                                                                                                                                          	t_13 = sqrt(t_12);
                                                                                                                                                                                                                                                                                                                                                                                          	t_14 = sqrt(t_11);
                                                                                                                                                                                                                                                                                                                                                                                          	t_15 = t_6 + (t_14 + t_10);
                                                                                                                                                                                                                                                                                                                                                                                          	t_16 = (((sqrt((t_5 + 1.0)) - t_6) + (sqrt((t_11 + 1.0)) - t_14)) + (sqrt((t_9 + 1.0)) - t_10)) + (sqrt((t_12 + 1.0)) - t_13);
                                                                                                                                                                                                                                                                                                                                                                                          	tmp = 0.0;
                                                                                                                                                                                                                                                                                                                                                                                          	if (t_16 <= 1.0)
                                                                                                                                                                                                                                                                                                                                                                                          		tmp = (sqrt((1.0 + t_5)) + (1.0 / (1.0 + t_10))) - t_6;
                                                                                                                                                                                                                                                                                                                                                                                          	elseif (t_16 <= 2.5)
                                                                                                                                                                                                                                                                                                                                                                                          		tmp = (1.0 + sqrt((1.0 + t_11))) - (t_6 + t_14);
                                                                                                                                                                                                                                                                                                                                                                                          	elseif (t_16 <= 3.5)
                                                                                                                                                                                                                                                                                                                                                                                          		tmp = (3.0 + (0.5 * t_9)) - t_15;
                                                                                                                                                                                                                                                                                                                                                                                          	else
                                                                                                                                                                                                                                                                                                                                                                                          		tmp = 4.0 - (t_13 + t_15);
                                                                                                                                                                                                                                                                                                                                                                                          	end
                                                                                                                                                                                                                                                                                                                                                                                          	tmp_2 = tmp;
                                                                                                                                                                                                                                                                                                                                                                                          end
                                                                                                                                                                                                                                                                                                                                                                                          
                                                                                                                                                                                                                                                                                                                                                                                          code[x_, y_, z_, t_] := Block[{t$95$1 = N[Max[N[Min[x, y], $MachinePrecision], z], $MachinePrecision]}, Block[{t$95$2 = N[Max[N[Max[x, y], $MachinePrecision], t$95$1], $MachinePrecision]}, Block[{t$95$3 = N[Min[N[Max[x, y], $MachinePrecision], t$95$1], $MachinePrecision]}, Block[{t$95$4 = N[Min[N[Min[x, y], $MachinePrecision], z], $MachinePrecision]}, Block[{t$95$5 = N[Min[t$95$4, t], $MachinePrecision]}, Block[{t$95$6 = N[Sqrt[t$95$5], $MachinePrecision]}, Block[{t$95$7 = N[Max[t$95$4, t], $MachinePrecision]}, Block[{t$95$8 = N[Max[t$95$3, t$95$7], $MachinePrecision]}, Block[{t$95$9 = N[Min[t$95$2, t$95$8], $MachinePrecision]}, Block[{t$95$10 = N[Sqrt[t$95$9], $MachinePrecision]}, Block[{t$95$11 = N[Min[t$95$3, t$95$7], $MachinePrecision]}, Block[{t$95$12 = N[Max[t$95$2, t$95$8], $MachinePrecision]}, Block[{t$95$13 = N[Sqrt[t$95$12], $MachinePrecision]}, Block[{t$95$14 = N[Sqrt[t$95$11], $MachinePrecision]}, Block[{t$95$15 = N[(t$95$6 + N[(t$95$14 + t$95$10), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$16 = N[(N[(N[(N[(N[Sqrt[N[(t$95$5 + 1.0), $MachinePrecision]], $MachinePrecision] - t$95$6), $MachinePrecision] + N[(N[Sqrt[N[(t$95$11 + 1.0), $MachinePrecision]], $MachinePrecision] - t$95$14), $MachinePrecision]), $MachinePrecision] + N[(N[Sqrt[N[(t$95$9 + 1.0), $MachinePrecision]], $MachinePrecision] - t$95$10), $MachinePrecision]), $MachinePrecision] + N[(N[Sqrt[N[(t$95$12 + 1.0), $MachinePrecision]], $MachinePrecision] - t$95$13), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[t$95$16, 1.0], N[(N[(N[Sqrt[N[(1.0 + t$95$5), $MachinePrecision]], $MachinePrecision] + N[(1.0 / N[(1.0 + t$95$10), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] - t$95$6), $MachinePrecision], If[LessEqual[t$95$16, 2.5], N[(N[(1.0 + N[Sqrt[N[(1.0 + t$95$11), $MachinePrecision]], $MachinePrecision]), $MachinePrecision] - N[(t$95$6 + t$95$14), $MachinePrecision]), $MachinePrecision], If[LessEqual[t$95$16, 3.5], N[(N[(3.0 + N[(0.5 * t$95$9), $MachinePrecision]), $MachinePrecision] - t$95$15), $MachinePrecision], N[(4.0 - N[(t$95$13 + t$95$15), $MachinePrecision]), $MachinePrecision]]]]]]]]]]]]]]]]]]]]
                                                                                                                                                                                                                                                                                                                                                                                          
                                                                                                                                                                                                                                                                                                                                                                                          f(x, y, z, t):
                                                                                                                                                                                                                                                                                                                                                                                          	x in [-inf, +inf],
                                                                                                                                                                                                                                                                                                                                                                                          	y in [-inf, +inf],
                                                                                                                                                                                                                                                                                                                                                                                          	z in [-inf, +inf],
                                                                                                                                                                                                                                                                                                                                                                                          	t in [-inf, +inf]
                                                                                                                                                                                                                                                                                                                                                                                          code: THEORY
                                                                                                                                                                                                                                                                                                                                                                                          BEGIN
                                                                                                                                                                                                                                                                                                                                                                                          f(x, y, z, t: real): real =
                                                                                                                                                                                                                                                                                                                                                                                          	LET tmp_2 = IF (x < y) THEN x ELSE y ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                          	LET tmp_3 = IF (x < y) THEN x ELSE y ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                          	LET tmp_1 = IF (tmp_2 > z) THEN tmp_3 ELSE z ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                          	LET t_1 = tmp_1 IN
                                                                                                                                                                                                                                                                                                                                                                                          		LET tmp_6 = IF (x > y) THEN x ELSE y ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                          		LET tmp_7 = IF (x > y) THEN x ELSE y ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                          		LET tmp_5 = IF (tmp_6 > t_1) THEN tmp_7 ELSE t_1 ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                          		LET t_2 = tmp_5 IN
                                                                                                                                                                                                                                                                                                                                                                                          			LET tmp_10 = IF (x > y) THEN x ELSE y ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                          			LET tmp_11 = IF (x > y) THEN x ELSE y ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                          			LET tmp_9 = IF (tmp_10 < t_1) THEN tmp_11 ELSE t_1 ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                          			LET t_3 = tmp_9 IN
                                                                                                                                                                                                                                                                                                                                                                                          				LET tmp_14 = IF (x < y) THEN x ELSE y ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                          				LET tmp_15 = IF (x < y) THEN x ELSE y ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                          				LET tmp_13 = IF (tmp_14 < z) THEN tmp_15 ELSE z ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                          				LET t_4 = tmp_13 IN
                                                                                                                                                                                                                                                                                                                                                                                          					LET tmp_16 = IF (t_4 < t) THEN t_4 ELSE t ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                          					LET t_5 = tmp_16 IN
                                                                                                                                                                                                                                                                                                                                                                                          						LET t_6 = (sqrt(t_5)) IN
                                                                                                                                                                                                                                                                                                                                                                                          							LET tmp_17 = IF (t_4 > t) THEN t_4 ELSE t ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                          							LET t_7 = tmp_17 IN
                                                                                                                                                                                                                                                                                                                                                                                          								LET tmp_18 = IF (t_3 > t_7) THEN t_3 ELSE t_7 ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                          								LET t_8 = tmp_18 IN
                                                                                                                                                                                                                                                                                                                                                                                          									LET tmp_19 = IF (t_2 < t_8) THEN t_2 ELSE t_8 ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                          									LET t_9 = tmp_19 IN
                                                                                                                                                                                                                                                                                                                                                                                          										LET t_10 = (sqrt(t_9)) IN
                                                                                                                                                                                                                                                                                                                                                                                          											LET tmp_20 = IF (t_3 < t_7) THEN t_3 ELSE t_7 ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                          											LET t_11 = tmp_20 IN
                                                                                                                                                                                                                                                                                                                                                                                          												LET tmp_21 = IF (t_2 > t_8) THEN t_2 ELSE t_8 ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                          												LET t_12 = tmp_21 IN
                                                                                                                                                                                                                                                                                                                                                                                          													LET t_13 = (sqrt(t_12)) IN
                                                                                                                                                                                                                                                                                                                                                                                          														LET t_14 = (sqrt(t_11)) IN
                                                                                                                                                                                                                                                                                                                                                                                          															LET t_15 = (t_6 + (t_14 + t_10)) IN
                                                                                                                                                                                                                                                                                                                                                                                          																LET t_16 = (((((sqrt((t_5 + (1)))) - t_6) + ((sqrt((t_11 + (1)))) - t_14)) + ((sqrt((t_9 + (1)))) - t_10)) + ((sqrt((t_12 + (1)))) - t_13)) IN
                                                                                                                                                                                                                                                                                                                                                                                          																	LET tmp_24 = IF (t_16 <= (35e-1)) THEN (((3) + ((5e-1) * t_9)) - t_15) ELSE ((4) - (t_13 + t_15)) ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                          																	LET tmp_23 = IF (t_16 <= (25e-1)) THEN (((1) + (sqrt(((1) + t_11)))) - (t_6 + t_14)) ELSE tmp_24 ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                          																	LET tmp_22 = IF (t_16 <= (1)) THEN (((sqrt(((1) + t_5))) + ((1) / ((1) + t_10))) - t_6) ELSE tmp_23 ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                          	tmp_22
                                                                                                                                                                                                                                                                                                                                                                                          END code
                                                                                                                                                                                                                                                                                                                                                                                          \begin{array}{l}
                                                                                                                                                                                                                                                                                                                                                                                          t_1 := \mathsf{max}\left(\mathsf{min}\left(x, y\right), z\right)\\
                                                                                                                                                                                                                                                                                                                                                                                          t_2 := \mathsf{max}\left(\mathsf{max}\left(x, y\right), t\_1\right)\\
                                                                                                                                                                                                                                                                                                                                                                                          t_3 := \mathsf{min}\left(\mathsf{max}\left(x, y\right), t\_1\right)\\
                                                                                                                                                                                                                                                                                                                                                                                          t_4 := \mathsf{min}\left(\mathsf{min}\left(x, y\right), z\right)\\
                                                                                                                                                                                                                                                                                                                                                                                          t_5 := \mathsf{min}\left(t\_4, t\right)\\
                                                                                                                                                                                                                                                                                                                                                                                          t_6 := \sqrt{t\_5}\\
                                                                                                                                                                                                                                                                                                                                                                                          t_7 := \mathsf{max}\left(t\_4, t\right)\\
                                                                                                                                                                                                                                                                                                                                                                                          t_8 := \mathsf{max}\left(t\_3, t\_7\right)\\
                                                                                                                                                                                                                                                                                                                                                                                          t_9 := \mathsf{min}\left(t\_2, t\_8\right)\\
                                                                                                                                                                                                                                                                                                                                                                                          t_10 := \sqrt{t\_9}\\
                                                                                                                                                                                                                                                                                                                                                                                          t_11 := \mathsf{min}\left(t\_3, t\_7\right)\\
                                                                                                                                                                                                                                                                                                                                                                                          t_12 := \mathsf{max}\left(t\_2, t\_8\right)\\
                                                                                                                                                                                                                                                                                                                                                                                          t_13 := \sqrt{t\_12}\\
                                                                                                                                                                                                                                                                                                                                                                                          t_14 := \sqrt{t\_11}\\
                                                                                                                                                                                                                                                                                                                                                                                          t_15 := t\_6 + \left(t\_14 + t\_10\right)\\
                                                                                                                                                                                                                                                                                                                                                                                          t_16 := \left(\left(\left(\sqrt{t\_5 + 1} - t\_6\right) + \left(\sqrt{t\_11 + 1} - t\_14\right)\right) + \left(\sqrt{t\_9 + 1} - t\_10\right)\right) + \left(\sqrt{t\_12 + 1} - t\_13\right)\\
                                                                                                                                                                                                                                                                                                                                                                                          \mathbf{if}\;t\_16 \leq 1:\\
                                                                                                                                                                                                                                                                                                                                                                                          \;\;\;\;\left(\sqrt{1 + t\_5} + \frac{1}{1 + t\_10}\right) - t\_6\\
                                                                                                                                                                                                                                                                                                                                                                                          
                                                                                                                                                                                                                                                                                                                                                                                          \mathbf{elif}\;t\_16 \leq 2.5:\\
                                                                                                                                                                                                                                                                                                                                                                                          \;\;\;\;\left(1 + \sqrt{1 + t\_11}\right) - \left(t\_6 + t\_14\right)\\
                                                                                                                                                                                                                                                                                                                                                                                          
                                                                                                                                                                                                                                                                                                                                                                                          \mathbf{elif}\;t\_16 \leq 3.5:\\
                                                                                                                                                                                                                                                                                                                                                                                          \;\;\;\;\left(3 + 0.5 \cdot t\_9\right) - t\_15\\
                                                                                                                                                                                                                                                                                                                                                                                          
                                                                                                                                                                                                                                                                                                                                                                                          \mathbf{else}:\\
                                                                                                                                                                                                                                                                                                                                                                                          \;\;\;\;4 - \left(t\_13 + t\_15\right)\\
                                                                                                                                                                                                                                                                                                                                                                                          
                                                                                                                                                                                                                                                                                                                                                                                          
                                                                                                                                                                                                                                                                                                                                                                                          \end{array}
                                                                                                                                                                                                                                                                                                                                                                                          
                                                                                                                                                                                                                                                                                                                                                                                          Derivation
                                                                                                                                                                                                                                                                                                                                                                                          1. Split input into 4 regimes
                                                                                                                                                                                                                                                                                                                                                                                          2. if (+.f64 (+.f64 (+.f64 (-.f64 (sqrt.f64 (+.f64 x #s(literal 1 binary64))) (sqrt.f64 x)) (-.f64 (sqrt.f64 (+.f64 y #s(literal 1 binary64))) (sqrt.f64 y))) (-.f64 (sqrt.f64 (+.f64 z #s(literal 1 binary64))) (sqrt.f64 z))) (-.f64 (sqrt.f64 (+.f64 t #s(literal 1 binary64))) (sqrt.f64 t))) < 1

                                                                                                                                                                                                                                                                                                                                                                                            1. Initial program 92.0%

                                                                                                                                                                                                                                                                                                                                                                                              \[\left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                            2. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                              1. Applied rewrites93.8%

                                                                                                                                                                                                                                                                                                                                                                                                \[\leadsto \left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \frac{1}{\sqrt{z} + \sqrt{z + 1}}\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                              2. Taylor expanded in t around inf

                                                                                                                                                                                                                                                                                                                                                                                                \[\leadsto \left(\sqrt{1 + x} + \left(\sqrt{1 + y} + \frac{1}{\sqrt{z} + \sqrt{1 + z}}\right)\right) - \left(\sqrt{x} + \sqrt{y}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                              3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                1. Applied rewrites19.3%

                                                                                                                                                                                                                                                                                                                                                                                                  \[\leadsto \left(\sqrt{1 + x} + \left(\sqrt{1 + y} + \frac{1}{\sqrt{z} + \sqrt{1 + z}}\right)\right) - \left(\sqrt{x} + \sqrt{y}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                2. Taylor expanded in y around inf

                                                                                                                                                                                                                                                                                                                                                                                                  \[\leadsto \left(\sqrt{1 + x} + \frac{1}{\sqrt{z} + \sqrt{1 + z}}\right) - \sqrt{x} \]
                                                                                                                                                                                                                                                                                                                                                                                                3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                  1. Applied rewrites21.6%

                                                                                                                                                                                                                                                                                                                                                                                                    \[\leadsto \left(\sqrt{1 + x} + \frac{1}{\sqrt{z} + \sqrt{1 + z}}\right) - \sqrt{x} \]
                                                                                                                                                                                                                                                                                                                                                                                                  2. Taylor expanded in z around 0

                                                                                                                                                                                                                                                                                                                                                                                                    \[\leadsto \left(\sqrt{1 + x} + \frac{1}{1 + \sqrt{z}}\right) - \sqrt{x} \]
                                                                                                                                                                                                                                                                                                                                                                                                  3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                    1. Applied rewrites21.3%

                                                                                                                                                                                                                                                                                                                                                                                                      \[\leadsto \left(\sqrt{1 + x} + \frac{1}{1 + \sqrt{z}}\right) - \sqrt{x} \]

                                                                                                                                                                                                                                                                                                                                                                                                    if 1 < (+.f64 (+.f64 (+.f64 (-.f64 (sqrt.f64 (+.f64 x #s(literal 1 binary64))) (sqrt.f64 x)) (-.f64 (sqrt.f64 (+.f64 y #s(literal 1 binary64))) (sqrt.f64 y))) (-.f64 (sqrt.f64 (+.f64 z #s(literal 1 binary64))) (sqrt.f64 z))) (-.f64 (sqrt.f64 (+.f64 t #s(literal 1 binary64))) (sqrt.f64 t))) < 2.5

                                                                                                                                                                                                                                                                                                                                                                                                    1. Initial program 92.0%

                                                                                                                                                                                                                                                                                                                                                                                                      \[\left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                    2. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                      1. Applied rewrites93.8%

                                                                                                                                                                                                                                                                                                                                                                                                        \[\leadsto \left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \frac{1}{\sqrt{z} + \sqrt{z + 1}}\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                      2. Taylor expanded in t around inf

                                                                                                                                                                                                                                                                                                                                                                                                        \[\leadsto \left(\sqrt{1 + x} + \left(\sqrt{1 + y} + \frac{1}{\sqrt{z} + \sqrt{1 + z}}\right)\right) - \left(\sqrt{x} + \sqrt{y}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                      3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                        1. Applied rewrites19.3%

                                                                                                                                                                                                                                                                                                                                                                                                          \[\leadsto \left(\sqrt{1 + x} + \left(\sqrt{1 + y} + \frac{1}{\sqrt{z} + \sqrt{1 + z}}\right)\right) - \left(\sqrt{x} + \sqrt{y}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                        2. Taylor expanded in z around inf

                                                                                                                                                                                                                                                                                                                                                                                                          \[\leadsto \left(\sqrt{1 + x} + \sqrt{1 + y}\right) - \left(\sqrt{x} + \sqrt{y}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                        3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                          1. Applied rewrites13.3%

                                                                                                                                                                                                                                                                                                                                                                                                            \[\leadsto \left(\sqrt{1 + x} + \sqrt{1 + y}\right) - \left(\sqrt{x} + \sqrt{y}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                          2. Taylor expanded in x around 0

                                                                                                                                                                                                                                                                                                                                                                                                            \[\leadsto \left(1 + \sqrt{1 + y}\right) - \left(\sqrt{x} + \sqrt{y}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                          3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                            1. Applied rewrites11.6%

                                                                                                                                                                                                                                                                                                                                                                                                              \[\leadsto \left(1 + \sqrt{1 + y}\right) - \left(\sqrt{x} + \sqrt{y}\right) \]

                                                                                                                                                                                                                                                                                                                                                                                                            if 2.5 < (+.f64 (+.f64 (+.f64 (-.f64 (sqrt.f64 (+.f64 x #s(literal 1 binary64))) (sqrt.f64 x)) (-.f64 (sqrt.f64 (+.f64 y #s(literal 1 binary64))) (sqrt.f64 y))) (-.f64 (sqrt.f64 (+.f64 z #s(literal 1 binary64))) (sqrt.f64 z))) (-.f64 (sqrt.f64 (+.f64 t #s(literal 1 binary64))) (sqrt.f64 t))) < 3.5

                                                                                                                                                                                                                                                                                                                                                                                                            1. Initial program 92.0%

                                                                                                                                                                                                                                                                                                                                                                                                              \[\left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                            2. Taylor expanded in t around inf

                                                                                                                                                                                                                                                                                                                                                                                                              \[\leadsto \left(\sqrt{1 + x} + \left(\sqrt{1 + y} + \sqrt{1 + z}\right)\right) - \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                            3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                              1. Applied rewrites12.2%

                                                                                                                                                                                                                                                                                                                                                                                                                \[\leadsto \left(\sqrt{1 + x} + \left(\sqrt{1 + y} + \sqrt{1 + z}\right)\right) - \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                              2. Taylor expanded in y around 0

                                                                                                                                                                                                                                                                                                                                                                                                                \[\leadsto \left(1 + \left(\sqrt{1 + x} + \sqrt{1 + z}\right)\right) - \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                              3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                1. Applied rewrites10.7%

                                                                                                                                                                                                                                                                                                                                                                                                                  \[\leadsto \left(1 + \left(\sqrt{1 + x} + \sqrt{1 + z}\right)\right) - \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                2. Taylor expanded in x around 0

                                                                                                                                                                                                                                                                                                                                                                                                                  \[\leadsto \left(2 + \sqrt{1 + z}\right) - \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                  1. Applied rewrites9.4%

                                                                                                                                                                                                                                                                                                                                                                                                                    \[\leadsto \left(2 + \sqrt{1 + z}\right) - \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                  2. Taylor expanded in z around 0

                                                                                                                                                                                                                                                                                                                                                                                                                    \[\leadsto \left(3 + \frac{1}{2} \cdot z\right) - \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                  3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                    1. Applied rewrites9.6%

                                                                                                                                                                                                                                                                                                                                                                                                                      \[\leadsto \left(3 + 0.5 \cdot z\right) - \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right) \]

                                                                                                                                                                                                                                                                                                                                                                                                                    if 3.5 < (+.f64 (+.f64 (+.f64 (-.f64 (sqrt.f64 (+.f64 x #s(literal 1 binary64))) (sqrt.f64 x)) (-.f64 (sqrt.f64 (+.f64 y #s(literal 1 binary64))) (sqrt.f64 y))) (-.f64 (sqrt.f64 (+.f64 z #s(literal 1 binary64))) (sqrt.f64 z))) (-.f64 (sqrt.f64 (+.f64 t #s(literal 1 binary64))) (sqrt.f64 t)))

                                                                                                                                                                                                                                                                                                                                                                                                                    1. Initial program 92.0%

                                                                                                                                                                                                                                                                                                                                                                                                                      \[\left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                    2. Taylor expanded in t around 0

                                                                                                                                                                                                                                                                                                                                                                                                                      \[\leadsto \left(1 + \left(\sqrt{1 + x} + \left(\sqrt{1 + y} + \sqrt{1 + z}\right)\right)\right) - \left(\sqrt{t} + \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                    3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                      1. Applied rewrites10.2%

                                                                                                                                                                                                                                                                                                                                                                                                                        \[\leadsto \left(1 + \left(\sqrt{1 + x} + \left(\sqrt{1 + y} + \sqrt{1 + z}\right)\right)\right) - \left(\sqrt{t} + \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                      2. Taylor expanded in z around 0

                                                                                                                                                                                                                                                                                                                                                                                                                        \[\leadsto \left(2 + \left(\sqrt{1 + x} + \sqrt{1 + y}\right)\right) - \left(\sqrt{t} + \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                      3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                        1. Applied rewrites9.1%

                                                                                                                                                                                                                                                                                                                                                                                                                          \[\leadsto \left(2 + \left(\sqrt{1 + x} + \sqrt{1 + y}\right)\right) - \left(\sqrt{t} + \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                        2. Taylor expanded in y around 0

                                                                                                                                                                                                                                                                                                                                                                                                                          \[\leadsto \left(3 + \sqrt{1 + x}\right) - \left(\sqrt{t} + \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                        3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                          1. Applied rewrites8.0%

                                                                                                                                                                                                                                                                                                                                                                                                                            \[\leadsto \left(3 + \sqrt{1 + x}\right) - \left(\sqrt{t} + \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                          2. Taylor expanded in x around 0

                                                                                                                                                                                                                                                                                                                                                                                                                            \[\leadsto 4 - \left(\sqrt{t} + \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                          3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                            1. Applied rewrites7.0%

                                                                                                                                                                                                                                                                                                                                                                                                                              \[\leadsto 4 - \left(\sqrt{t} + \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                          4. Recombined 4 regimes into one program.
                                                                                                                                                                                                                                                                                                                                                                                                                          5. Add Preprocessing

                                                                                                                                                                                                                                                                                                                                                                                                                          Alternative 23: 81.6% accurate, 0.0× speedup?

                                                                                                                                                                                                                                                                                                                                                                                                                          \[\begin{array}{l} t_1 := \mathsf{max}\left(\mathsf{min}\left(x, y\right), z\right)\\ t_2 := \mathsf{max}\left(\mathsf{max}\left(x, y\right), t\_1\right)\\ t_3 := \mathsf{min}\left(\mathsf{max}\left(x, y\right), t\_1\right)\\ t_4 := \mathsf{min}\left(\mathsf{min}\left(x, y\right), z\right)\\ t_5 := \mathsf{min}\left(t\_4, t\right)\\ t_6 := \sqrt{t\_5}\\ t_7 := \mathsf{max}\left(t\_4, t\right)\\ t_8 := \mathsf{max}\left(t\_3, t\_7\right)\\ t_9 := \mathsf{min}\left(t\_2, t\_8\right)\\ t_10 := \sqrt{t\_9}\\ t_11 := \mathsf{min}\left(t\_3, t\_7\right)\\ t_12 := \mathsf{max}\left(t\_2, t\_8\right)\\ t_13 := \sqrt{t\_12 + 1}\\ t_14 := \sqrt{t\_12}\\ t_15 := \sqrt{t\_11}\\ t_16 := \left(\left(\left(\sqrt{t\_5 + 1} - t\_6\right) + \left(\sqrt{t\_11 + 1} - t\_15\right)\right) + \left(\sqrt{t\_9 + 1} - t\_10\right)\right) + \left(t\_13 - t\_14\right)\\ t_17 := t\_6 + \left(t\_15 + t\_10\right)\\ \mathbf{if}\;t\_16 \leq 1:\\ \;\;\;\;1 + \left(t\_13 - \left(t\_14 + t\_10\right)\right)\\ \mathbf{elif}\;t\_16 \leq 2.5:\\ \;\;\;\;\left(1 + \sqrt{1 + t\_11}\right) - \left(t\_6 + t\_15\right)\\ \mathbf{elif}\;t\_16 \leq 3.5:\\ \;\;\;\;\left(3 + 0.5 \cdot t\_9\right) - t\_17\\ \mathbf{else}:\\ \;\;\;\;4 - \left(t\_14 + t\_17\right)\\ \end{array} \]
                                                                                                                                                                                                                                                                                                                                                                                                                          (FPCore (x y z t)
                                                                                                                                                                                                                                                                                                                                                                                                                            :precision binary64
                                                                                                                                                                                                                                                                                                                                                                                                                            :pre TRUE
                                                                                                                                                                                                                                                                                                                                                                                                                            (let* ((t_1 (fmax (fmin x y) z))
                                                                                                                                                                                                                                                                                                                                                                                                                                 (t_2 (fmax (fmax x y) t_1))
                                                                                                                                                                                                                                                                                                                                                                                                                                 (t_3 (fmin (fmax x y) t_1))
                                                                                                                                                                                                                                                                                                                                                                                                                                 (t_4 (fmin (fmin x y) z))
                                                                                                                                                                                                                                                                                                                                                                                                                                 (t_5 (fmin t_4 t))
                                                                                                                                                                                                                                                                                                                                                                                                                                 (t_6 (sqrt t_5))
                                                                                                                                                                                                                                                                                                                                                                                                                                 (t_7 (fmax t_4 t))
                                                                                                                                                                                                                                                                                                                                                                                                                                 (t_8 (fmax t_3 t_7))
                                                                                                                                                                                                                                                                                                                                                                                                                                 (t_9 (fmin t_2 t_8))
                                                                                                                                                                                                                                                                                                                                                                                                                                 (t_10 (sqrt t_9))
                                                                                                                                                                                                                                                                                                                                                                                                                                 (t_11 (fmin t_3 t_7))
                                                                                                                                                                                                                                                                                                                                                                                                                                 (t_12 (fmax t_2 t_8))
                                                                                                                                                                                                                                                                                                                                                                                                                                 (t_13 (sqrt (+ t_12 1.0)))
                                                                                                                                                                                                                                                                                                                                                                                                                                 (t_14 (sqrt t_12))
                                                                                                                                                                                                                                                                                                                                                                                                                                 (t_15 (sqrt t_11))
                                                                                                                                                                                                                                                                                                                                                                                                                                 (t_16
                                                                                                                                                                                                                                                                                                                                                                                                                                  (+
                                                                                                                                                                                                                                                                                                                                                                                                                                   (+
                                                                                                                                                                                                                                                                                                                                                                                                                                    (+ (- (sqrt (+ t_5 1.0)) t_6) (- (sqrt (+ t_11 1.0)) t_15))
                                                                                                                                                                                                                                                                                                                                                                                                                                    (- (sqrt (+ t_9 1.0)) t_10))
                                                                                                                                                                                                                                                                                                                                                                                                                                   (- t_13 t_14)))
                                                                                                                                                                                                                                                                                                                                                                                                                                 (t_17 (+ t_6 (+ t_15 t_10))))
                                                                                                                                                                                                                                                                                                                                                                                                                            (if (<= t_16 1.0)
                                                                                                                                                                                                                                                                                                                                                                                                                              (+ 1.0 (- t_13 (+ t_14 t_10)))
                                                                                                                                                                                                                                                                                                                                                                                                                              (if (<= t_16 2.5)
                                                                                                                                                                                                                                                                                                                                                                                                                                (- (+ 1.0 (sqrt (+ 1.0 t_11))) (+ t_6 t_15))
                                                                                                                                                                                                                                                                                                                                                                                                                                (if (<= t_16 3.5)
                                                                                                                                                                                                                                                                                                                                                                                                                                  (- (+ 3.0 (* 0.5 t_9)) t_17)
                                                                                                                                                                                                                                                                                                                                                                                                                                  (- 4.0 (+ t_14 t_17)))))))
                                                                                                                                                                                                                                                                                                                                                                                                                          double code(double x, double y, double z, double t) {
                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_1 = fmax(fmin(x, y), z);
                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_2 = fmax(fmax(x, y), t_1);
                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_3 = fmin(fmax(x, y), t_1);
                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_4 = fmin(fmin(x, y), z);
                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_5 = fmin(t_4, t);
                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_6 = sqrt(t_5);
                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_7 = fmax(t_4, t);
                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_8 = fmax(t_3, t_7);
                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_9 = fmin(t_2, t_8);
                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_10 = sqrt(t_9);
                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_11 = fmin(t_3, t_7);
                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_12 = fmax(t_2, t_8);
                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_13 = sqrt((t_12 + 1.0));
                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_14 = sqrt(t_12);
                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_15 = sqrt(t_11);
                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_16 = (((sqrt((t_5 + 1.0)) - t_6) + (sqrt((t_11 + 1.0)) - t_15)) + (sqrt((t_9 + 1.0)) - t_10)) + (t_13 - t_14);
                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_17 = t_6 + (t_15 + t_10);
                                                                                                                                                                                                                                                                                                                                                                                                                          	double tmp;
                                                                                                                                                                                                                                                                                                                                                                                                                          	if (t_16 <= 1.0) {
                                                                                                                                                                                                                                                                                                                                                                                                                          		tmp = 1.0 + (t_13 - (t_14 + t_10));
                                                                                                                                                                                                                                                                                                                                                                                                                          	} else if (t_16 <= 2.5) {
                                                                                                                                                                                                                                                                                                                                                                                                                          		tmp = (1.0 + sqrt((1.0 + t_11))) - (t_6 + t_15);
                                                                                                                                                                                                                                                                                                                                                                                                                          	} else if (t_16 <= 3.5) {
                                                                                                                                                                                                                                                                                                                                                                                                                          		tmp = (3.0 + (0.5 * t_9)) - t_17;
                                                                                                                                                                                                                                                                                                                                                                                                                          	} else {
                                                                                                                                                                                                                                                                                                                                                                                                                          		tmp = 4.0 - (t_14 + t_17);
                                                                                                                                                                                                                                                                                                                                                                                                                          	}
                                                                                                                                                                                                                                                                                                                                                                                                                          	return tmp;
                                                                                                                                                                                                                                                                                                                                                                                                                          }
                                                                                                                                                                                                                                                                                                                                                                                                                          
                                                                                                                                                                                                                                                                                                                                                                                                                          real(8) function code(x, y, z, t)
                                                                                                                                                                                                                                                                                                                                                                                                                          use fmin_fmax_functions
                                                                                                                                                                                                                                                                                                                                                                                                                              real(8), intent (in) :: x
                                                                                                                                                                                                                                                                                                                                                                                                                              real(8), intent (in) :: y
                                                                                                                                                                                                                                                                                                                                                                                                                              real(8), intent (in) :: z
                                                                                                                                                                                                                                                                                                                                                                                                                              real(8), intent (in) :: t
                                                                                                                                                                                                                                                                                                                                                                                                                              real(8) :: t_1
                                                                                                                                                                                                                                                                                                                                                                                                                              real(8) :: t_10
                                                                                                                                                                                                                                                                                                                                                                                                                              real(8) :: t_11
                                                                                                                                                                                                                                                                                                                                                                                                                              real(8) :: t_12
                                                                                                                                                                                                                                                                                                                                                                                                                              real(8) :: t_13
                                                                                                                                                                                                                                                                                                                                                                                                                              real(8) :: t_14
                                                                                                                                                                                                                                                                                                                                                                                                                              real(8) :: t_15
                                                                                                                                                                                                                                                                                                                                                                                                                              real(8) :: t_16
                                                                                                                                                                                                                                                                                                                                                                                                                              real(8) :: t_17
                                                                                                                                                                                                                                                                                                                                                                                                                              real(8) :: t_2
                                                                                                                                                                                                                                                                                                                                                                                                                              real(8) :: t_3
                                                                                                                                                                                                                                                                                                                                                                                                                              real(8) :: t_4
                                                                                                                                                                                                                                                                                                                                                                                                                              real(8) :: t_5
                                                                                                                                                                                                                                                                                                                                                                                                                              real(8) :: t_6
                                                                                                                                                                                                                                                                                                                                                                                                                              real(8) :: t_7
                                                                                                                                                                                                                                                                                                                                                                                                                              real(8) :: t_8
                                                                                                                                                                                                                                                                                                                                                                                                                              real(8) :: t_9
                                                                                                                                                                                                                                                                                                                                                                                                                              real(8) :: tmp
                                                                                                                                                                                                                                                                                                                                                                                                                              t_1 = fmax(fmin(x, y), z)
                                                                                                                                                                                                                                                                                                                                                                                                                              t_2 = fmax(fmax(x, y), t_1)
                                                                                                                                                                                                                                                                                                                                                                                                                              t_3 = fmin(fmax(x, y), t_1)
                                                                                                                                                                                                                                                                                                                                                                                                                              t_4 = fmin(fmin(x, y), z)
                                                                                                                                                                                                                                                                                                                                                                                                                              t_5 = fmin(t_4, t)
                                                                                                                                                                                                                                                                                                                                                                                                                              t_6 = sqrt(t_5)
                                                                                                                                                                                                                                                                                                                                                                                                                              t_7 = fmax(t_4, t)
                                                                                                                                                                                                                                                                                                                                                                                                                              t_8 = fmax(t_3, t_7)
                                                                                                                                                                                                                                                                                                                                                                                                                              t_9 = fmin(t_2, t_8)
                                                                                                                                                                                                                                                                                                                                                                                                                              t_10 = sqrt(t_9)
                                                                                                                                                                                                                                                                                                                                                                                                                              t_11 = fmin(t_3, t_7)
                                                                                                                                                                                                                                                                                                                                                                                                                              t_12 = fmax(t_2, t_8)
                                                                                                                                                                                                                                                                                                                                                                                                                              t_13 = sqrt((t_12 + 1.0d0))
                                                                                                                                                                                                                                                                                                                                                                                                                              t_14 = sqrt(t_12)
                                                                                                                                                                                                                                                                                                                                                                                                                              t_15 = sqrt(t_11)
                                                                                                                                                                                                                                                                                                                                                                                                                              t_16 = (((sqrt((t_5 + 1.0d0)) - t_6) + (sqrt((t_11 + 1.0d0)) - t_15)) + (sqrt((t_9 + 1.0d0)) - t_10)) + (t_13 - t_14)
                                                                                                                                                                                                                                                                                                                                                                                                                              t_17 = t_6 + (t_15 + t_10)
                                                                                                                                                                                                                                                                                                                                                                                                                              if (t_16 <= 1.0d0) then
                                                                                                                                                                                                                                                                                                                                                                                                                                  tmp = 1.0d0 + (t_13 - (t_14 + t_10))
                                                                                                                                                                                                                                                                                                                                                                                                                              else if (t_16 <= 2.5d0) then
                                                                                                                                                                                                                                                                                                                                                                                                                                  tmp = (1.0d0 + sqrt((1.0d0 + t_11))) - (t_6 + t_15)
                                                                                                                                                                                                                                                                                                                                                                                                                              else if (t_16 <= 3.5d0) then
                                                                                                                                                                                                                                                                                                                                                                                                                                  tmp = (3.0d0 + (0.5d0 * t_9)) - t_17
                                                                                                                                                                                                                                                                                                                                                                                                                              else
                                                                                                                                                                                                                                                                                                                                                                                                                                  tmp = 4.0d0 - (t_14 + t_17)
                                                                                                                                                                                                                                                                                                                                                                                                                              end if
                                                                                                                                                                                                                                                                                                                                                                                                                              code = tmp
                                                                                                                                                                                                                                                                                                                                                                                                                          end function
                                                                                                                                                                                                                                                                                                                                                                                                                          
                                                                                                                                                                                                                                                                                                                                                                                                                          public static double code(double x, double y, double z, double t) {
                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_1 = fmax(fmin(x, y), z);
                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_2 = fmax(fmax(x, y), t_1);
                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_3 = fmin(fmax(x, y), t_1);
                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_4 = fmin(fmin(x, y), z);
                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_5 = fmin(t_4, t);
                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_6 = Math.sqrt(t_5);
                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_7 = fmax(t_4, t);
                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_8 = fmax(t_3, t_7);
                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_9 = fmin(t_2, t_8);
                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_10 = Math.sqrt(t_9);
                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_11 = fmin(t_3, t_7);
                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_12 = fmax(t_2, t_8);
                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_13 = Math.sqrt((t_12 + 1.0));
                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_14 = Math.sqrt(t_12);
                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_15 = Math.sqrt(t_11);
                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_16 = (((Math.sqrt((t_5 + 1.0)) - t_6) + (Math.sqrt((t_11 + 1.0)) - t_15)) + (Math.sqrt((t_9 + 1.0)) - t_10)) + (t_13 - t_14);
                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_17 = t_6 + (t_15 + t_10);
                                                                                                                                                                                                                                                                                                                                                                                                                          	double tmp;
                                                                                                                                                                                                                                                                                                                                                                                                                          	if (t_16 <= 1.0) {
                                                                                                                                                                                                                                                                                                                                                                                                                          		tmp = 1.0 + (t_13 - (t_14 + t_10));
                                                                                                                                                                                                                                                                                                                                                                                                                          	} else if (t_16 <= 2.5) {
                                                                                                                                                                                                                                                                                                                                                                                                                          		tmp = (1.0 + Math.sqrt((1.0 + t_11))) - (t_6 + t_15);
                                                                                                                                                                                                                                                                                                                                                                                                                          	} else if (t_16 <= 3.5) {
                                                                                                                                                                                                                                                                                                                                                                                                                          		tmp = (3.0 + (0.5 * t_9)) - t_17;
                                                                                                                                                                                                                                                                                                                                                                                                                          	} else {
                                                                                                                                                                                                                                                                                                                                                                                                                          		tmp = 4.0 - (t_14 + t_17);
                                                                                                                                                                                                                                                                                                                                                                                                                          	}
                                                                                                                                                                                                                                                                                                                                                                                                                          	return tmp;
                                                                                                                                                                                                                                                                                                                                                                                                                          }
                                                                                                                                                                                                                                                                                                                                                                                                                          
                                                                                                                                                                                                                                                                                                                                                                                                                          def code(x, y, z, t):
                                                                                                                                                                                                                                                                                                                                                                                                                          	t_1 = fmax(fmin(x, y), z)
                                                                                                                                                                                                                                                                                                                                                                                                                          	t_2 = fmax(fmax(x, y), t_1)
                                                                                                                                                                                                                                                                                                                                                                                                                          	t_3 = fmin(fmax(x, y), t_1)
                                                                                                                                                                                                                                                                                                                                                                                                                          	t_4 = fmin(fmin(x, y), z)
                                                                                                                                                                                                                                                                                                                                                                                                                          	t_5 = fmin(t_4, t)
                                                                                                                                                                                                                                                                                                                                                                                                                          	t_6 = math.sqrt(t_5)
                                                                                                                                                                                                                                                                                                                                                                                                                          	t_7 = fmax(t_4, t)
                                                                                                                                                                                                                                                                                                                                                                                                                          	t_8 = fmax(t_3, t_7)
                                                                                                                                                                                                                                                                                                                                                                                                                          	t_9 = fmin(t_2, t_8)
                                                                                                                                                                                                                                                                                                                                                                                                                          	t_10 = math.sqrt(t_9)
                                                                                                                                                                                                                                                                                                                                                                                                                          	t_11 = fmin(t_3, t_7)
                                                                                                                                                                                                                                                                                                                                                                                                                          	t_12 = fmax(t_2, t_8)
                                                                                                                                                                                                                                                                                                                                                                                                                          	t_13 = math.sqrt((t_12 + 1.0))
                                                                                                                                                                                                                                                                                                                                                                                                                          	t_14 = math.sqrt(t_12)
                                                                                                                                                                                                                                                                                                                                                                                                                          	t_15 = math.sqrt(t_11)
                                                                                                                                                                                                                                                                                                                                                                                                                          	t_16 = (((math.sqrt((t_5 + 1.0)) - t_6) + (math.sqrt((t_11 + 1.0)) - t_15)) + (math.sqrt((t_9 + 1.0)) - t_10)) + (t_13 - t_14)
                                                                                                                                                                                                                                                                                                                                                                                                                          	t_17 = t_6 + (t_15 + t_10)
                                                                                                                                                                                                                                                                                                                                                                                                                          	tmp = 0
                                                                                                                                                                                                                                                                                                                                                                                                                          	if t_16 <= 1.0:
                                                                                                                                                                                                                                                                                                                                                                                                                          		tmp = 1.0 + (t_13 - (t_14 + t_10))
                                                                                                                                                                                                                                                                                                                                                                                                                          	elif t_16 <= 2.5:
                                                                                                                                                                                                                                                                                                                                                                                                                          		tmp = (1.0 + math.sqrt((1.0 + t_11))) - (t_6 + t_15)
                                                                                                                                                                                                                                                                                                                                                                                                                          	elif t_16 <= 3.5:
                                                                                                                                                                                                                                                                                                                                                                                                                          		tmp = (3.0 + (0.5 * t_9)) - t_17
                                                                                                                                                                                                                                                                                                                                                                                                                          	else:
                                                                                                                                                                                                                                                                                                                                                                                                                          		tmp = 4.0 - (t_14 + t_17)
                                                                                                                                                                                                                                                                                                                                                                                                                          	return tmp
                                                                                                                                                                                                                                                                                                                                                                                                                          
                                                                                                                                                                                                                                                                                                                                                                                                                          function code(x, y, z, t)
                                                                                                                                                                                                                                                                                                                                                                                                                          	t_1 = fmax(fmin(x, y), z)
                                                                                                                                                                                                                                                                                                                                                                                                                          	t_2 = fmax(fmax(x, y), t_1)
                                                                                                                                                                                                                                                                                                                                                                                                                          	t_3 = fmin(fmax(x, y), t_1)
                                                                                                                                                                                                                                                                                                                                                                                                                          	t_4 = fmin(fmin(x, y), z)
                                                                                                                                                                                                                                                                                                                                                                                                                          	t_5 = fmin(t_4, t)
                                                                                                                                                                                                                                                                                                                                                                                                                          	t_6 = sqrt(t_5)
                                                                                                                                                                                                                                                                                                                                                                                                                          	t_7 = fmax(t_4, t)
                                                                                                                                                                                                                                                                                                                                                                                                                          	t_8 = fmax(t_3, t_7)
                                                                                                                                                                                                                                                                                                                                                                                                                          	t_9 = fmin(t_2, t_8)
                                                                                                                                                                                                                                                                                                                                                                                                                          	t_10 = sqrt(t_9)
                                                                                                                                                                                                                                                                                                                                                                                                                          	t_11 = fmin(t_3, t_7)
                                                                                                                                                                                                                                                                                                                                                                                                                          	t_12 = fmax(t_2, t_8)
                                                                                                                                                                                                                                                                                                                                                                                                                          	t_13 = sqrt(Float64(t_12 + 1.0))
                                                                                                                                                                                                                                                                                                                                                                                                                          	t_14 = sqrt(t_12)
                                                                                                                                                                                                                                                                                                                                                                                                                          	t_15 = sqrt(t_11)
                                                                                                                                                                                                                                                                                                                                                                                                                          	t_16 = Float64(Float64(Float64(Float64(sqrt(Float64(t_5 + 1.0)) - t_6) + Float64(sqrt(Float64(t_11 + 1.0)) - t_15)) + Float64(sqrt(Float64(t_9 + 1.0)) - t_10)) + Float64(t_13 - t_14))
                                                                                                                                                                                                                                                                                                                                                                                                                          	t_17 = Float64(t_6 + Float64(t_15 + t_10))
                                                                                                                                                                                                                                                                                                                                                                                                                          	tmp = 0.0
                                                                                                                                                                                                                                                                                                                                                                                                                          	if (t_16 <= 1.0)
                                                                                                                                                                                                                                                                                                                                                                                                                          		tmp = Float64(1.0 + Float64(t_13 - Float64(t_14 + t_10)));
                                                                                                                                                                                                                                                                                                                                                                                                                          	elseif (t_16 <= 2.5)
                                                                                                                                                                                                                                                                                                                                                                                                                          		tmp = Float64(Float64(1.0 + sqrt(Float64(1.0 + t_11))) - Float64(t_6 + t_15));
                                                                                                                                                                                                                                                                                                                                                                                                                          	elseif (t_16 <= 3.5)
                                                                                                                                                                                                                                                                                                                                                                                                                          		tmp = Float64(Float64(3.0 + Float64(0.5 * t_9)) - t_17);
                                                                                                                                                                                                                                                                                                                                                                                                                          	else
                                                                                                                                                                                                                                                                                                                                                                                                                          		tmp = Float64(4.0 - Float64(t_14 + t_17));
                                                                                                                                                                                                                                                                                                                                                                                                                          	end
                                                                                                                                                                                                                                                                                                                                                                                                                          	return tmp
                                                                                                                                                                                                                                                                                                                                                                                                                          end
                                                                                                                                                                                                                                                                                                                                                                                                                          
                                                                                                                                                                                                                                                                                                                                                                                                                          function tmp_2 = code(x, y, z, t)
                                                                                                                                                                                                                                                                                                                                                                                                                          	t_1 = max(min(x, y), z);
                                                                                                                                                                                                                                                                                                                                                                                                                          	t_2 = max(max(x, y), t_1);
                                                                                                                                                                                                                                                                                                                                                                                                                          	t_3 = min(max(x, y), t_1);
                                                                                                                                                                                                                                                                                                                                                                                                                          	t_4 = min(min(x, y), z);
                                                                                                                                                                                                                                                                                                                                                                                                                          	t_5 = min(t_4, t);
                                                                                                                                                                                                                                                                                                                                                                                                                          	t_6 = sqrt(t_5);
                                                                                                                                                                                                                                                                                                                                                                                                                          	t_7 = max(t_4, t);
                                                                                                                                                                                                                                                                                                                                                                                                                          	t_8 = max(t_3, t_7);
                                                                                                                                                                                                                                                                                                                                                                                                                          	t_9 = min(t_2, t_8);
                                                                                                                                                                                                                                                                                                                                                                                                                          	t_10 = sqrt(t_9);
                                                                                                                                                                                                                                                                                                                                                                                                                          	t_11 = min(t_3, t_7);
                                                                                                                                                                                                                                                                                                                                                                                                                          	t_12 = max(t_2, t_8);
                                                                                                                                                                                                                                                                                                                                                                                                                          	t_13 = sqrt((t_12 + 1.0));
                                                                                                                                                                                                                                                                                                                                                                                                                          	t_14 = sqrt(t_12);
                                                                                                                                                                                                                                                                                                                                                                                                                          	t_15 = sqrt(t_11);
                                                                                                                                                                                                                                                                                                                                                                                                                          	t_16 = (((sqrt((t_5 + 1.0)) - t_6) + (sqrt((t_11 + 1.0)) - t_15)) + (sqrt((t_9 + 1.0)) - t_10)) + (t_13 - t_14);
                                                                                                                                                                                                                                                                                                                                                                                                                          	t_17 = t_6 + (t_15 + t_10);
                                                                                                                                                                                                                                                                                                                                                                                                                          	tmp = 0.0;
                                                                                                                                                                                                                                                                                                                                                                                                                          	if (t_16 <= 1.0)
                                                                                                                                                                                                                                                                                                                                                                                                                          		tmp = 1.0 + (t_13 - (t_14 + t_10));
                                                                                                                                                                                                                                                                                                                                                                                                                          	elseif (t_16 <= 2.5)
                                                                                                                                                                                                                                                                                                                                                                                                                          		tmp = (1.0 + sqrt((1.0 + t_11))) - (t_6 + t_15);
                                                                                                                                                                                                                                                                                                                                                                                                                          	elseif (t_16 <= 3.5)
                                                                                                                                                                                                                                                                                                                                                                                                                          		tmp = (3.0 + (0.5 * t_9)) - t_17;
                                                                                                                                                                                                                                                                                                                                                                                                                          	else
                                                                                                                                                                                                                                                                                                                                                                                                                          		tmp = 4.0 - (t_14 + t_17);
                                                                                                                                                                                                                                                                                                                                                                                                                          	end
                                                                                                                                                                                                                                                                                                                                                                                                                          	tmp_2 = tmp;
                                                                                                                                                                                                                                                                                                                                                                                                                          end
                                                                                                                                                                                                                                                                                                                                                                                                                          
                                                                                                                                                                                                                                                                                                                                                                                                                          code[x_, y_, z_, t_] := Block[{t$95$1 = N[Max[N[Min[x, y], $MachinePrecision], z], $MachinePrecision]}, Block[{t$95$2 = N[Max[N[Max[x, y], $MachinePrecision], t$95$1], $MachinePrecision]}, Block[{t$95$3 = N[Min[N[Max[x, y], $MachinePrecision], t$95$1], $MachinePrecision]}, Block[{t$95$4 = N[Min[N[Min[x, y], $MachinePrecision], z], $MachinePrecision]}, Block[{t$95$5 = N[Min[t$95$4, t], $MachinePrecision]}, Block[{t$95$6 = N[Sqrt[t$95$5], $MachinePrecision]}, Block[{t$95$7 = N[Max[t$95$4, t], $MachinePrecision]}, Block[{t$95$8 = N[Max[t$95$3, t$95$7], $MachinePrecision]}, Block[{t$95$9 = N[Min[t$95$2, t$95$8], $MachinePrecision]}, Block[{t$95$10 = N[Sqrt[t$95$9], $MachinePrecision]}, Block[{t$95$11 = N[Min[t$95$3, t$95$7], $MachinePrecision]}, Block[{t$95$12 = N[Max[t$95$2, t$95$8], $MachinePrecision]}, Block[{t$95$13 = N[Sqrt[N[(t$95$12 + 1.0), $MachinePrecision]], $MachinePrecision]}, Block[{t$95$14 = N[Sqrt[t$95$12], $MachinePrecision]}, Block[{t$95$15 = N[Sqrt[t$95$11], $MachinePrecision]}, Block[{t$95$16 = N[(N[(N[(N[(N[Sqrt[N[(t$95$5 + 1.0), $MachinePrecision]], $MachinePrecision] - t$95$6), $MachinePrecision] + N[(N[Sqrt[N[(t$95$11 + 1.0), $MachinePrecision]], $MachinePrecision] - t$95$15), $MachinePrecision]), $MachinePrecision] + N[(N[Sqrt[N[(t$95$9 + 1.0), $MachinePrecision]], $MachinePrecision] - t$95$10), $MachinePrecision]), $MachinePrecision] + N[(t$95$13 - t$95$14), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$17 = N[(t$95$6 + N[(t$95$15 + t$95$10), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[t$95$16, 1.0], N[(1.0 + N[(t$95$13 - N[(t$95$14 + t$95$10), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[t$95$16, 2.5], N[(N[(1.0 + N[Sqrt[N[(1.0 + t$95$11), $MachinePrecision]], $MachinePrecision]), $MachinePrecision] - N[(t$95$6 + t$95$15), $MachinePrecision]), $MachinePrecision], If[LessEqual[t$95$16, 3.5], N[(N[(3.0 + N[(0.5 * t$95$9), $MachinePrecision]), $MachinePrecision] - t$95$17), $MachinePrecision], N[(4.0 - N[(t$95$14 + t$95$17), $MachinePrecision]), $MachinePrecision]]]]]]]]]]]]]]]]]]]]]
                                                                                                                                                                                                                                                                                                                                                                                                                          
                                                                                                                                                                                                                                                                                                                                                                                                                          f(x, y, z, t):
                                                                                                                                                                                                                                                                                                                                                                                                                          	x in [-inf, +inf],
                                                                                                                                                                                                                                                                                                                                                                                                                          	y in [-inf, +inf],
                                                                                                                                                                                                                                                                                                                                                                                                                          	z in [-inf, +inf],
                                                                                                                                                                                                                                                                                                                                                                                                                          	t in [-inf, +inf]
                                                                                                                                                                                                                                                                                                                                                                                                                          code: THEORY
                                                                                                                                                                                                                                                                                                                                                                                                                          BEGIN
                                                                                                                                                                                                                                                                                                                                                                                                                          f(x, y, z, t: real): real =
                                                                                                                                                                                                                                                                                                                                                                                                                          	LET tmp_2 = IF (x < y) THEN x ELSE y ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                          	LET tmp_3 = IF (x < y) THEN x ELSE y ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                          	LET tmp_1 = IF (tmp_2 > z) THEN tmp_3 ELSE z ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                          	LET t_1 = tmp_1 IN
                                                                                                                                                                                                                                                                                                                                                                                                                          		LET tmp_6 = IF (x > y) THEN x ELSE y ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                          		LET tmp_7 = IF (x > y) THEN x ELSE y ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                          		LET tmp_5 = IF (tmp_6 > t_1) THEN tmp_7 ELSE t_1 ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                          		LET t_2 = tmp_5 IN
                                                                                                                                                                                                                                                                                                                                                                                                                          			LET tmp_10 = IF (x > y) THEN x ELSE y ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                          			LET tmp_11 = IF (x > y) THEN x ELSE y ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                          			LET tmp_9 = IF (tmp_10 < t_1) THEN tmp_11 ELSE t_1 ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                          			LET t_3 = tmp_9 IN
                                                                                                                                                                                                                                                                                                                                                                                                                          				LET tmp_14 = IF (x < y) THEN x ELSE y ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                          				LET tmp_15 = IF (x < y) THEN x ELSE y ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                          				LET tmp_13 = IF (tmp_14 < z) THEN tmp_15 ELSE z ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                          				LET t_4 = tmp_13 IN
                                                                                                                                                                                                                                                                                                                                                                                                                          					LET tmp_16 = IF (t_4 < t) THEN t_4 ELSE t ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                          					LET t_5 = tmp_16 IN
                                                                                                                                                                                                                                                                                                                                                                                                                          						LET t_6 = (sqrt(t_5)) IN
                                                                                                                                                                                                                                                                                                                                                                                                                          							LET tmp_17 = IF (t_4 > t) THEN t_4 ELSE t ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                          							LET t_7 = tmp_17 IN
                                                                                                                                                                                                                                                                                                                                                                                                                          								LET tmp_18 = IF (t_3 > t_7) THEN t_3 ELSE t_7 ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                          								LET t_8 = tmp_18 IN
                                                                                                                                                                                                                                                                                                                                                                                                                          									LET tmp_19 = IF (t_2 < t_8) THEN t_2 ELSE t_8 ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                          									LET t_9 = tmp_19 IN
                                                                                                                                                                                                                                                                                                                                                                                                                          										LET t_10 = (sqrt(t_9)) IN
                                                                                                                                                                                                                                                                                                                                                                                                                          											LET tmp_20 = IF (t_3 < t_7) THEN t_3 ELSE t_7 ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                          											LET t_11 = tmp_20 IN
                                                                                                                                                                                                                                                                                                                                                                                                                          												LET tmp_21 = IF (t_2 > t_8) THEN t_2 ELSE t_8 ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                          												LET t_12 = tmp_21 IN
                                                                                                                                                                                                                                                                                                                                                                                                                          													LET t_13 = (sqrt((t_12 + (1)))) IN
                                                                                                                                                                                                                                                                                                                                                                                                                          														LET t_14 = (sqrt(t_12)) IN
                                                                                                                                                                                                                                                                                                                                                                                                                          															LET t_15 = (sqrt(t_11)) IN
                                                                                                                                                                                                                                                                                                                                                                                                                          																LET t_16 = (((((sqrt((t_5 + (1)))) - t_6) + ((sqrt((t_11 + (1)))) - t_15)) + ((sqrt((t_9 + (1)))) - t_10)) + (t_13 - t_14)) IN
                                                                                                                                                                                                                                                                                                                                                                                                                          																	LET t_17 = (t_6 + (t_15 + t_10)) IN
                                                                                                                                                                                                                                                                                                                                                                                                                          																		LET tmp_24 = IF (t_16 <= (35e-1)) THEN (((3) + ((5e-1) * t_9)) - t_17) ELSE ((4) - (t_14 + t_17)) ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                          																		LET tmp_23 = IF (t_16 <= (25e-1)) THEN (((1) + (sqrt(((1) + t_11)))) - (t_6 + t_15)) ELSE tmp_24 ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                          																		LET tmp_22 = IF (t_16 <= (1)) THEN ((1) + (t_13 - (t_14 + t_10))) ELSE tmp_23 ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                          	tmp_22
                                                                                                                                                                                                                                                                                                                                                                                                                          END code
                                                                                                                                                                                                                                                                                                                                                                                                                          \begin{array}{l}
                                                                                                                                                                                                                                                                                                                                                                                                                          t_1 := \mathsf{max}\left(\mathsf{min}\left(x, y\right), z\right)\\
                                                                                                                                                                                                                                                                                                                                                                                                                          t_2 := \mathsf{max}\left(\mathsf{max}\left(x, y\right), t\_1\right)\\
                                                                                                                                                                                                                                                                                                                                                                                                                          t_3 := \mathsf{min}\left(\mathsf{max}\left(x, y\right), t\_1\right)\\
                                                                                                                                                                                                                                                                                                                                                                                                                          t_4 := \mathsf{min}\left(\mathsf{min}\left(x, y\right), z\right)\\
                                                                                                                                                                                                                                                                                                                                                                                                                          t_5 := \mathsf{min}\left(t\_4, t\right)\\
                                                                                                                                                                                                                                                                                                                                                                                                                          t_6 := \sqrt{t\_5}\\
                                                                                                                                                                                                                                                                                                                                                                                                                          t_7 := \mathsf{max}\left(t\_4, t\right)\\
                                                                                                                                                                                                                                                                                                                                                                                                                          t_8 := \mathsf{max}\left(t\_3, t\_7\right)\\
                                                                                                                                                                                                                                                                                                                                                                                                                          t_9 := \mathsf{min}\left(t\_2, t\_8\right)\\
                                                                                                                                                                                                                                                                                                                                                                                                                          t_10 := \sqrt{t\_9}\\
                                                                                                                                                                                                                                                                                                                                                                                                                          t_11 := \mathsf{min}\left(t\_3, t\_7\right)\\
                                                                                                                                                                                                                                                                                                                                                                                                                          t_12 := \mathsf{max}\left(t\_2, t\_8\right)\\
                                                                                                                                                                                                                                                                                                                                                                                                                          t_13 := \sqrt{t\_12 + 1}\\
                                                                                                                                                                                                                                                                                                                                                                                                                          t_14 := \sqrt{t\_12}\\
                                                                                                                                                                                                                                                                                                                                                                                                                          t_15 := \sqrt{t\_11}\\
                                                                                                                                                                                                                                                                                                                                                                                                                          t_16 := \left(\left(\left(\sqrt{t\_5 + 1} - t\_6\right) + \left(\sqrt{t\_11 + 1} - t\_15\right)\right) + \left(\sqrt{t\_9 + 1} - t\_10\right)\right) + \left(t\_13 - t\_14\right)\\
                                                                                                                                                                                                                                                                                                                                                                                                                          t_17 := t\_6 + \left(t\_15 + t\_10\right)\\
                                                                                                                                                                                                                                                                                                                                                                                                                          \mathbf{if}\;t\_16 \leq 1:\\
                                                                                                                                                                                                                                                                                                                                                                                                                          \;\;\;\;1 + \left(t\_13 - \left(t\_14 + t\_10\right)\right)\\
                                                                                                                                                                                                                                                                                                                                                                                                                          
                                                                                                                                                                                                                                                                                                                                                                                                                          \mathbf{elif}\;t\_16 \leq 2.5:\\
                                                                                                                                                                                                                                                                                                                                                                                                                          \;\;\;\;\left(1 + \sqrt{1 + t\_11}\right) - \left(t\_6 + t\_15\right)\\
                                                                                                                                                                                                                                                                                                                                                                                                                          
                                                                                                                                                                                                                                                                                                                                                                                                                          \mathbf{elif}\;t\_16 \leq 3.5:\\
                                                                                                                                                                                                                                                                                                                                                                                                                          \;\;\;\;\left(3 + 0.5 \cdot t\_9\right) - t\_17\\
                                                                                                                                                                                                                                                                                                                                                                                                                          
                                                                                                                                                                                                                                                                                                                                                                                                                          \mathbf{else}:\\
                                                                                                                                                                                                                                                                                                                                                                                                                          \;\;\;\;4 - \left(t\_14 + t\_17\right)\\
                                                                                                                                                                                                                                                                                                                                                                                                                          
                                                                                                                                                                                                                                                                                                                                                                                                                          
                                                                                                                                                                                                                                                                                                                                                                                                                          \end{array}
                                                                                                                                                                                                                                                                                                                                                                                                                          
                                                                                                                                                                                                                                                                                                                                                                                                                          Derivation
                                                                                                                                                                                                                                                                                                                                                                                                                          1. Split input into 4 regimes
                                                                                                                                                                                                                                                                                                                                                                                                                          2. if (+.f64 (+.f64 (+.f64 (-.f64 (sqrt.f64 (+.f64 x #s(literal 1 binary64))) (sqrt.f64 x)) (-.f64 (sqrt.f64 (+.f64 y #s(literal 1 binary64))) (sqrt.f64 y))) (-.f64 (sqrt.f64 (+.f64 z #s(literal 1 binary64))) (sqrt.f64 z))) (-.f64 (sqrt.f64 (+.f64 t #s(literal 1 binary64))) (sqrt.f64 t))) < 1

                                                                                                                                                                                                                                                                                                                                                                                                                            1. Initial program 92.0%

                                                                                                                                                                                                                                                                                                                                                                                                                              \[\left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                            2. Taylor expanded in y around inf

                                                                                                                                                                                                                                                                                                                                                                                                                              \[\leadsto \left(\sqrt{1 + t} + \left(\sqrt{1 + x} + \sqrt{1 + z}\right)\right) - \left(\sqrt{t} + \left(\sqrt{x} + \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                            3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                              1. Applied rewrites12.1%

                                                                                                                                                                                                                                                                                                                                                                                                                                \[\leadsto \left(\sqrt{1 + t} + \left(\sqrt{1 + x} + \sqrt{1 + z}\right)\right) - \left(\sqrt{t} + \left(\sqrt{x} + \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                              2. Taylor expanded in x around inf

                                                                                                                                                                                                                                                                                                                                                                                                                                \[\leadsto \left(\sqrt{1 + t} + \sqrt{1 + z}\right) - \left(\sqrt{t} + \sqrt{z}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                              3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                1. Applied rewrites13.4%

                                                                                                                                                                                                                                                                                                                                                                                                                                  \[\leadsto \left(\sqrt{1 + t} + \sqrt{1 + z}\right) - \left(\sqrt{t} + \sqrt{z}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                2. Taylor expanded in z around 0

                                                                                                                                                                                                                                                                                                                                                                                                                                  \[\leadsto \left(1 + \sqrt{1 + t}\right) - \left(\sqrt{t} + \sqrt{z}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                  1. Applied rewrites11.7%

                                                                                                                                                                                                                                                                                                                                                                                                                                    \[\leadsto \left(1 + \sqrt{1 + t}\right) - \left(\sqrt{t} + \sqrt{z}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                  2. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                    1. Applied rewrites24.1%

                                                                                                                                                                                                                                                                                                                                                                                                                                      \[\leadsto 1 + \left(\sqrt{t + 1} - \left(\sqrt{t} + \sqrt{z}\right)\right) \]

                                                                                                                                                                                                                                                                                                                                                                                                                                    if 1 < (+.f64 (+.f64 (+.f64 (-.f64 (sqrt.f64 (+.f64 x #s(literal 1 binary64))) (sqrt.f64 x)) (-.f64 (sqrt.f64 (+.f64 y #s(literal 1 binary64))) (sqrt.f64 y))) (-.f64 (sqrt.f64 (+.f64 z #s(literal 1 binary64))) (sqrt.f64 z))) (-.f64 (sqrt.f64 (+.f64 t #s(literal 1 binary64))) (sqrt.f64 t))) < 2.5

                                                                                                                                                                                                                                                                                                                                                                                                                                    1. Initial program 92.0%

                                                                                                                                                                                                                                                                                                                                                                                                                                      \[\left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                    2. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                      1. Applied rewrites93.8%

                                                                                                                                                                                                                                                                                                                                                                                                                                        \[\leadsto \left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \frac{1}{\sqrt{z} + \sqrt{z + 1}}\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                      2. Taylor expanded in t around inf

                                                                                                                                                                                                                                                                                                                                                                                                                                        \[\leadsto \left(\sqrt{1 + x} + \left(\sqrt{1 + y} + \frac{1}{\sqrt{z} + \sqrt{1 + z}}\right)\right) - \left(\sqrt{x} + \sqrt{y}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                      3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                        1. Applied rewrites19.3%

                                                                                                                                                                                                                                                                                                                                                                                                                                          \[\leadsto \left(\sqrt{1 + x} + \left(\sqrt{1 + y} + \frac{1}{\sqrt{z} + \sqrt{1 + z}}\right)\right) - \left(\sqrt{x} + \sqrt{y}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                        2. Taylor expanded in z around inf

                                                                                                                                                                                                                                                                                                                                                                                                                                          \[\leadsto \left(\sqrt{1 + x} + \sqrt{1 + y}\right) - \left(\sqrt{x} + \sqrt{y}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                        3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                          1. Applied rewrites13.3%

                                                                                                                                                                                                                                                                                                                                                                                                                                            \[\leadsto \left(\sqrt{1 + x} + \sqrt{1 + y}\right) - \left(\sqrt{x} + \sqrt{y}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                          2. Taylor expanded in x around 0

                                                                                                                                                                                                                                                                                                                                                                                                                                            \[\leadsto \left(1 + \sqrt{1 + y}\right) - \left(\sqrt{x} + \sqrt{y}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                          3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                            1. Applied rewrites11.6%

                                                                                                                                                                                                                                                                                                                                                                                                                                              \[\leadsto \left(1 + \sqrt{1 + y}\right) - \left(\sqrt{x} + \sqrt{y}\right) \]

                                                                                                                                                                                                                                                                                                                                                                                                                                            if 2.5 < (+.f64 (+.f64 (+.f64 (-.f64 (sqrt.f64 (+.f64 x #s(literal 1 binary64))) (sqrt.f64 x)) (-.f64 (sqrt.f64 (+.f64 y #s(literal 1 binary64))) (sqrt.f64 y))) (-.f64 (sqrt.f64 (+.f64 z #s(literal 1 binary64))) (sqrt.f64 z))) (-.f64 (sqrt.f64 (+.f64 t #s(literal 1 binary64))) (sqrt.f64 t))) < 3.5

                                                                                                                                                                                                                                                                                                                                                                                                                                            1. Initial program 92.0%

                                                                                                                                                                                                                                                                                                                                                                                                                                              \[\left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                            2. Taylor expanded in t around inf

                                                                                                                                                                                                                                                                                                                                                                                                                                              \[\leadsto \left(\sqrt{1 + x} + \left(\sqrt{1 + y} + \sqrt{1 + z}\right)\right) - \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                            3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                              1. Applied rewrites12.2%

                                                                                                                                                                                                                                                                                                                                                                                                                                                \[\leadsto \left(\sqrt{1 + x} + \left(\sqrt{1 + y} + \sqrt{1 + z}\right)\right) - \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                              2. Taylor expanded in y around 0

                                                                                                                                                                                                                                                                                                                                                                                                                                                \[\leadsto \left(1 + \left(\sqrt{1 + x} + \sqrt{1 + z}\right)\right) - \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                              3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                                1. Applied rewrites10.7%

                                                                                                                                                                                                                                                                                                                                                                                                                                                  \[\leadsto \left(1 + \left(\sqrt{1 + x} + \sqrt{1 + z}\right)\right) - \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                2. Taylor expanded in x around 0

                                                                                                                                                                                                                                                                                                                                                                                                                                                  \[\leadsto \left(2 + \sqrt{1 + z}\right) - \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                                  1. Applied rewrites9.4%

                                                                                                                                                                                                                                                                                                                                                                                                                                                    \[\leadsto \left(2 + \sqrt{1 + z}\right) - \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                  2. Taylor expanded in z around 0

                                                                                                                                                                                                                                                                                                                                                                                                                                                    \[\leadsto \left(3 + \frac{1}{2} \cdot z\right) - \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                  3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                                    1. Applied rewrites9.6%

                                                                                                                                                                                                                                                                                                                                                                                                                                                      \[\leadsto \left(3 + 0.5 \cdot z\right) - \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right) \]

                                                                                                                                                                                                                                                                                                                                                                                                                                                    if 3.5 < (+.f64 (+.f64 (+.f64 (-.f64 (sqrt.f64 (+.f64 x #s(literal 1 binary64))) (sqrt.f64 x)) (-.f64 (sqrt.f64 (+.f64 y #s(literal 1 binary64))) (sqrt.f64 y))) (-.f64 (sqrt.f64 (+.f64 z #s(literal 1 binary64))) (sqrt.f64 z))) (-.f64 (sqrt.f64 (+.f64 t #s(literal 1 binary64))) (sqrt.f64 t)))

                                                                                                                                                                                                                                                                                                                                                                                                                                                    1. Initial program 92.0%

                                                                                                                                                                                                                                                                                                                                                                                                                                                      \[\left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                    2. Taylor expanded in t around 0

                                                                                                                                                                                                                                                                                                                                                                                                                                                      \[\leadsto \left(1 + \left(\sqrt{1 + x} + \left(\sqrt{1 + y} + \sqrt{1 + z}\right)\right)\right) - \left(\sqrt{t} + \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                    3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                                      1. Applied rewrites10.2%

                                                                                                                                                                                                                                                                                                                                                                                                                                                        \[\leadsto \left(1 + \left(\sqrt{1 + x} + \left(\sqrt{1 + y} + \sqrt{1 + z}\right)\right)\right) - \left(\sqrt{t} + \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                      2. Taylor expanded in z around 0

                                                                                                                                                                                                                                                                                                                                                                                                                                                        \[\leadsto \left(2 + \left(\sqrt{1 + x} + \sqrt{1 + y}\right)\right) - \left(\sqrt{t} + \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                      3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                                        1. Applied rewrites9.1%

                                                                                                                                                                                                                                                                                                                                                                                                                                                          \[\leadsto \left(2 + \left(\sqrt{1 + x} + \sqrt{1 + y}\right)\right) - \left(\sqrt{t} + \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                        2. Taylor expanded in y around 0

                                                                                                                                                                                                                                                                                                                                                                                                                                                          \[\leadsto \left(3 + \sqrt{1 + x}\right) - \left(\sqrt{t} + \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                        3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                                          1. Applied rewrites8.0%

                                                                                                                                                                                                                                                                                                                                                                                                                                                            \[\leadsto \left(3 + \sqrt{1 + x}\right) - \left(\sqrt{t} + \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                          2. Taylor expanded in x around 0

                                                                                                                                                                                                                                                                                                                                                                                                                                                            \[\leadsto 4 - \left(\sqrt{t} + \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                          3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                                            1. Applied rewrites7.0%

                                                                                                                                                                                                                                                                                                                                                                                                                                                              \[\leadsto 4 - \left(\sqrt{t} + \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                          4. Recombined 4 regimes into one program.
                                                                                                                                                                                                                                                                                                                                                                                                                                                          5. Add Preprocessing

                                                                                                                                                                                                                                                                                                                                                                                                                                                          Alternative 24: 80.9% accurate, 0.0× speedup?

                                                                                                                                                                                                                                                                                                                                                                                                                                                          \[\begin{array}{l} t_1 := \mathsf{max}\left(\mathsf{min}\left(x, y\right), z\right)\\ t_2 := \mathsf{max}\left(\mathsf{max}\left(x, y\right), t\_1\right)\\ t_3 := \mathsf{min}\left(\mathsf{max}\left(x, y\right), t\_1\right)\\ t_4 := \mathsf{min}\left(\mathsf{min}\left(x, y\right), z\right)\\ t_5 := \mathsf{min}\left(t\_4, t\right)\\ t_6 := \sqrt{t\_5}\\ t_7 := \mathsf{max}\left(t\_4, t\right)\\ t_8 := \mathsf{max}\left(t\_3, t\_7\right)\\ t_9 := \mathsf{min}\left(t\_2, t\_8\right)\\ t_10 := \sqrt{t\_9}\\ t_11 := \mathsf{min}\left(t\_3, t\_7\right)\\ t_12 := \mathsf{max}\left(t\_2, t\_8\right)\\ t_13 := \sqrt{t\_12 + 1}\\ t_14 := \sqrt{t\_12}\\ t_15 := \sqrt{t\_11}\\ t_16 := t\_6 + \left(t\_15 + t\_10\right)\\ t_17 := \left(\left(\left(\sqrt{t\_5 + 1} - t\_6\right) + \left(\sqrt{t\_11 + 1} - t\_15\right)\right) + \left(\sqrt{t\_9 + 1} - t\_10\right)\right) + \left(t\_13 - t\_14\right)\\ \mathbf{if}\;t\_17 \leq 1:\\ \;\;\;\;1 + \left(t\_13 - \left(t\_14 + t\_10\right)\right)\\ \mathbf{elif}\;t\_17 \leq 2.5:\\ \;\;\;\;\left(1 + \sqrt{1 + t\_11}\right) - \left(t\_6 + t\_15\right)\\ \mathbf{elif}\;t\_17 \leq 3.5:\\ \;\;\;\;3 - t\_16\\ \mathbf{else}:\\ \;\;\;\;4 - \left(t\_14 + t\_16\right)\\ \end{array} \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                          (FPCore (x y z t)
                                                                                                                                                                                                                                                                                                                                                                                                                                                            :precision binary64
                                                                                                                                                                                                                                                                                                                                                                                                                                                            :pre TRUE
                                                                                                                                                                                                                                                                                                                                                                                                                                                            (let* ((t_1 (fmax (fmin x y) z))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                 (t_2 (fmax (fmax x y) t_1))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                 (t_3 (fmin (fmax x y) t_1))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                 (t_4 (fmin (fmin x y) z))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                 (t_5 (fmin t_4 t))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                 (t_6 (sqrt t_5))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                 (t_7 (fmax t_4 t))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                 (t_8 (fmax t_3 t_7))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                 (t_9 (fmin t_2 t_8))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                 (t_10 (sqrt t_9))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                 (t_11 (fmin t_3 t_7))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                 (t_12 (fmax t_2 t_8))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                 (t_13 (sqrt (+ t_12 1.0)))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                 (t_14 (sqrt t_12))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                 (t_15 (sqrt t_11))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                 (t_16 (+ t_6 (+ t_15 t_10)))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                 (t_17
                                                                                                                                                                                                                                                                                                                                                                                                                                                                  (+
                                                                                                                                                                                                                                                                                                                                                                                                                                                                   (+
                                                                                                                                                                                                                                                                                                                                                                                                                                                                    (+ (- (sqrt (+ t_5 1.0)) t_6) (- (sqrt (+ t_11 1.0)) t_15))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                    (- (sqrt (+ t_9 1.0)) t_10))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                   (- t_13 t_14))))
                                                                                                                                                                                                                                                                                                                                                                                                                                                            (if (<= t_17 1.0)
                                                                                                                                                                                                                                                                                                                                                                                                                                                              (+ 1.0 (- t_13 (+ t_14 t_10)))
                                                                                                                                                                                                                                                                                                                                                                                                                                                              (if (<= t_17 2.5)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                (- (+ 1.0 (sqrt (+ 1.0 t_11))) (+ t_6 t_15))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                (if (<= t_17 3.5) (- 3.0 t_16) (- 4.0 (+ t_14 t_16)))))))
                                                                                                                                                                                                                                                                                                                                                                                                                                                          double code(double x, double y, double z, double t) {
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_1 = fmax(fmin(x, y), z);
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_2 = fmax(fmax(x, y), t_1);
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_3 = fmin(fmax(x, y), t_1);
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_4 = fmin(fmin(x, y), z);
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_5 = fmin(t_4, t);
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_6 = sqrt(t_5);
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_7 = fmax(t_4, t);
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_8 = fmax(t_3, t_7);
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_9 = fmin(t_2, t_8);
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_10 = sqrt(t_9);
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_11 = fmin(t_3, t_7);
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_12 = fmax(t_2, t_8);
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_13 = sqrt((t_12 + 1.0));
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_14 = sqrt(t_12);
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_15 = sqrt(t_11);
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_16 = t_6 + (t_15 + t_10);
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_17 = (((sqrt((t_5 + 1.0)) - t_6) + (sqrt((t_11 + 1.0)) - t_15)) + (sqrt((t_9 + 1.0)) - t_10)) + (t_13 - t_14);
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	double tmp;
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	if (t_17 <= 1.0) {
                                                                                                                                                                                                                                                                                                                                                                                                                                                          		tmp = 1.0 + (t_13 - (t_14 + t_10));
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	} else if (t_17 <= 2.5) {
                                                                                                                                                                                                                                                                                                                                                                                                                                                          		tmp = (1.0 + sqrt((1.0 + t_11))) - (t_6 + t_15);
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	} else if (t_17 <= 3.5) {
                                                                                                                                                                                                                                                                                                                                                                                                                                                          		tmp = 3.0 - t_16;
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	} else {
                                                                                                                                                                                                                                                                                                                                                                                                                                                          		tmp = 4.0 - (t_14 + t_16);
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	}
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	return tmp;
                                                                                                                                                                                                                                                                                                                                                                                                                                                          }
                                                                                                                                                                                                                                                                                                                                                                                                                                                          
                                                                                                                                                                                                                                                                                                                                                                                                                                                          real(8) function code(x, y, z, t)
                                                                                                                                                                                                                                                                                                                                                                                                                                                          use fmin_fmax_functions
                                                                                                                                                                                                                                                                                                                                                                                                                                                              real(8), intent (in) :: x
                                                                                                                                                                                                                                                                                                                                                                                                                                                              real(8), intent (in) :: y
                                                                                                                                                                                                                                                                                                                                                                                                                                                              real(8), intent (in) :: z
                                                                                                                                                                                                                                                                                                                                                                                                                                                              real(8), intent (in) :: t
                                                                                                                                                                                                                                                                                                                                                                                                                                                              real(8) :: t_1
                                                                                                                                                                                                                                                                                                                                                                                                                                                              real(8) :: t_10
                                                                                                                                                                                                                                                                                                                                                                                                                                                              real(8) :: t_11
                                                                                                                                                                                                                                                                                                                                                                                                                                                              real(8) :: t_12
                                                                                                                                                                                                                                                                                                                                                                                                                                                              real(8) :: t_13
                                                                                                                                                                                                                                                                                                                                                                                                                                                              real(8) :: t_14
                                                                                                                                                                                                                                                                                                                                                                                                                                                              real(8) :: t_15
                                                                                                                                                                                                                                                                                                                                                                                                                                                              real(8) :: t_16
                                                                                                                                                                                                                                                                                                                                                                                                                                                              real(8) :: t_17
                                                                                                                                                                                                                                                                                                                                                                                                                                                              real(8) :: t_2
                                                                                                                                                                                                                                                                                                                                                                                                                                                              real(8) :: t_3
                                                                                                                                                                                                                                                                                                                                                                                                                                                              real(8) :: t_4
                                                                                                                                                                                                                                                                                                                                                                                                                                                              real(8) :: t_5
                                                                                                                                                                                                                                                                                                                                                                                                                                                              real(8) :: t_6
                                                                                                                                                                                                                                                                                                                                                                                                                                                              real(8) :: t_7
                                                                                                                                                                                                                                                                                                                                                                                                                                                              real(8) :: t_8
                                                                                                                                                                                                                                                                                                                                                                                                                                                              real(8) :: t_9
                                                                                                                                                                                                                                                                                                                                                                                                                                                              real(8) :: tmp
                                                                                                                                                                                                                                                                                                                                                                                                                                                              t_1 = fmax(fmin(x, y), z)
                                                                                                                                                                                                                                                                                                                                                                                                                                                              t_2 = fmax(fmax(x, y), t_1)
                                                                                                                                                                                                                                                                                                                                                                                                                                                              t_3 = fmin(fmax(x, y), t_1)
                                                                                                                                                                                                                                                                                                                                                                                                                                                              t_4 = fmin(fmin(x, y), z)
                                                                                                                                                                                                                                                                                                                                                                                                                                                              t_5 = fmin(t_4, t)
                                                                                                                                                                                                                                                                                                                                                                                                                                                              t_6 = sqrt(t_5)
                                                                                                                                                                                                                                                                                                                                                                                                                                                              t_7 = fmax(t_4, t)
                                                                                                                                                                                                                                                                                                                                                                                                                                                              t_8 = fmax(t_3, t_7)
                                                                                                                                                                                                                                                                                                                                                                                                                                                              t_9 = fmin(t_2, t_8)
                                                                                                                                                                                                                                                                                                                                                                                                                                                              t_10 = sqrt(t_9)
                                                                                                                                                                                                                                                                                                                                                                                                                                                              t_11 = fmin(t_3, t_7)
                                                                                                                                                                                                                                                                                                                                                                                                                                                              t_12 = fmax(t_2, t_8)
                                                                                                                                                                                                                                                                                                                                                                                                                                                              t_13 = sqrt((t_12 + 1.0d0))
                                                                                                                                                                                                                                                                                                                                                                                                                                                              t_14 = sqrt(t_12)
                                                                                                                                                                                                                                                                                                                                                                                                                                                              t_15 = sqrt(t_11)
                                                                                                                                                                                                                                                                                                                                                                                                                                                              t_16 = t_6 + (t_15 + t_10)
                                                                                                                                                                                                                                                                                                                                                                                                                                                              t_17 = (((sqrt((t_5 + 1.0d0)) - t_6) + (sqrt((t_11 + 1.0d0)) - t_15)) + (sqrt((t_9 + 1.0d0)) - t_10)) + (t_13 - t_14)
                                                                                                                                                                                                                                                                                                                                                                                                                                                              if (t_17 <= 1.0d0) then
                                                                                                                                                                                                                                                                                                                                                                                                                                                                  tmp = 1.0d0 + (t_13 - (t_14 + t_10))
                                                                                                                                                                                                                                                                                                                                                                                                                                                              else if (t_17 <= 2.5d0) then
                                                                                                                                                                                                                                                                                                                                                                                                                                                                  tmp = (1.0d0 + sqrt((1.0d0 + t_11))) - (t_6 + t_15)
                                                                                                                                                                                                                                                                                                                                                                                                                                                              else if (t_17 <= 3.5d0) then
                                                                                                                                                                                                                                                                                                                                                                                                                                                                  tmp = 3.0d0 - t_16
                                                                                                                                                                                                                                                                                                                                                                                                                                                              else
                                                                                                                                                                                                                                                                                                                                                                                                                                                                  tmp = 4.0d0 - (t_14 + t_16)
                                                                                                                                                                                                                                                                                                                                                                                                                                                              end if
                                                                                                                                                                                                                                                                                                                                                                                                                                                              code = tmp
                                                                                                                                                                                                                                                                                                                                                                                                                                                          end function
                                                                                                                                                                                                                                                                                                                                                                                                                                                          
                                                                                                                                                                                                                                                                                                                                                                                                                                                          public static double code(double x, double y, double z, double t) {
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_1 = fmax(fmin(x, y), z);
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_2 = fmax(fmax(x, y), t_1);
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_3 = fmin(fmax(x, y), t_1);
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_4 = fmin(fmin(x, y), z);
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_5 = fmin(t_4, t);
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_6 = Math.sqrt(t_5);
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_7 = fmax(t_4, t);
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_8 = fmax(t_3, t_7);
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_9 = fmin(t_2, t_8);
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_10 = Math.sqrt(t_9);
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_11 = fmin(t_3, t_7);
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_12 = fmax(t_2, t_8);
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_13 = Math.sqrt((t_12 + 1.0));
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_14 = Math.sqrt(t_12);
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_15 = Math.sqrt(t_11);
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_16 = t_6 + (t_15 + t_10);
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_17 = (((Math.sqrt((t_5 + 1.0)) - t_6) + (Math.sqrt((t_11 + 1.0)) - t_15)) + (Math.sqrt((t_9 + 1.0)) - t_10)) + (t_13 - t_14);
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	double tmp;
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	if (t_17 <= 1.0) {
                                                                                                                                                                                                                                                                                                                                                                                                                                                          		tmp = 1.0 + (t_13 - (t_14 + t_10));
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	} else if (t_17 <= 2.5) {
                                                                                                                                                                                                                                                                                                                                                                                                                                                          		tmp = (1.0 + Math.sqrt((1.0 + t_11))) - (t_6 + t_15);
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	} else if (t_17 <= 3.5) {
                                                                                                                                                                                                                                                                                                                                                                                                                                                          		tmp = 3.0 - t_16;
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	} else {
                                                                                                                                                                                                                                                                                                                                                                                                                                                          		tmp = 4.0 - (t_14 + t_16);
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	}
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	return tmp;
                                                                                                                                                                                                                                                                                                                                                                                                                                                          }
                                                                                                                                                                                                                                                                                                                                                                                                                                                          
                                                                                                                                                                                                                                                                                                                                                                                                                                                          def code(x, y, z, t):
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_1 = fmax(fmin(x, y), z)
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_2 = fmax(fmax(x, y), t_1)
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_3 = fmin(fmax(x, y), t_1)
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_4 = fmin(fmin(x, y), z)
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_5 = fmin(t_4, t)
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_6 = math.sqrt(t_5)
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_7 = fmax(t_4, t)
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_8 = fmax(t_3, t_7)
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_9 = fmin(t_2, t_8)
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_10 = math.sqrt(t_9)
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_11 = fmin(t_3, t_7)
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_12 = fmax(t_2, t_8)
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_13 = math.sqrt((t_12 + 1.0))
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_14 = math.sqrt(t_12)
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_15 = math.sqrt(t_11)
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_16 = t_6 + (t_15 + t_10)
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_17 = (((math.sqrt((t_5 + 1.0)) - t_6) + (math.sqrt((t_11 + 1.0)) - t_15)) + (math.sqrt((t_9 + 1.0)) - t_10)) + (t_13 - t_14)
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	tmp = 0
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	if t_17 <= 1.0:
                                                                                                                                                                                                                                                                                                                                                                                                                                                          		tmp = 1.0 + (t_13 - (t_14 + t_10))
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	elif t_17 <= 2.5:
                                                                                                                                                                                                                                                                                                                                                                                                                                                          		tmp = (1.0 + math.sqrt((1.0 + t_11))) - (t_6 + t_15)
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	elif t_17 <= 3.5:
                                                                                                                                                                                                                                                                                                                                                                                                                                                          		tmp = 3.0 - t_16
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	else:
                                                                                                                                                                                                                                                                                                                                                                                                                                                          		tmp = 4.0 - (t_14 + t_16)
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	return tmp
                                                                                                                                                                                                                                                                                                                                                                                                                                                          
                                                                                                                                                                                                                                                                                                                                                                                                                                                          function code(x, y, z, t)
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_1 = fmax(fmin(x, y), z)
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_2 = fmax(fmax(x, y), t_1)
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_3 = fmin(fmax(x, y), t_1)
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_4 = fmin(fmin(x, y), z)
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_5 = fmin(t_4, t)
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_6 = sqrt(t_5)
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_7 = fmax(t_4, t)
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_8 = fmax(t_3, t_7)
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_9 = fmin(t_2, t_8)
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_10 = sqrt(t_9)
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_11 = fmin(t_3, t_7)
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_12 = fmax(t_2, t_8)
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_13 = sqrt(Float64(t_12 + 1.0))
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_14 = sqrt(t_12)
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_15 = sqrt(t_11)
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_16 = Float64(t_6 + Float64(t_15 + t_10))
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_17 = Float64(Float64(Float64(Float64(sqrt(Float64(t_5 + 1.0)) - t_6) + Float64(sqrt(Float64(t_11 + 1.0)) - t_15)) + Float64(sqrt(Float64(t_9 + 1.0)) - t_10)) + Float64(t_13 - t_14))
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	tmp = 0.0
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	if (t_17 <= 1.0)
                                                                                                                                                                                                                                                                                                                                                                                                                                                          		tmp = Float64(1.0 + Float64(t_13 - Float64(t_14 + t_10)));
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	elseif (t_17 <= 2.5)
                                                                                                                                                                                                                                                                                                                                                                                                                                                          		tmp = Float64(Float64(1.0 + sqrt(Float64(1.0 + t_11))) - Float64(t_6 + t_15));
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	elseif (t_17 <= 3.5)
                                                                                                                                                                                                                                                                                                                                                                                                                                                          		tmp = Float64(3.0 - t_16);
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	else
                                                                                                                                                                                                                                                                                                                                                                                                                                                          		tmp = Float64(4.0 - Float64(t_14 + t_16));
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	end
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	return tmp
                                                                                                                                                                                                                                                                                                                                                                                                                                                          end
                                                                                                                                                                                                                                                                                                                                                                                                                                                          
                                                                                                                                                                                                                                                                                                                                                                                                                                                          function tmp_2 = code(x, y, z, t)
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_1 = max(min(x, y), z);
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_2 = max(max(x, y), t_1);
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_3 = min(max(x, y), t_1);
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_4 = min(min(x, y), z);
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_5 = min(t_4, t);
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_6 = sqrt(t_5);
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_7 = max(t_4, t);
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_8 = max(t_3, t_7);
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_9 = min(t_2, t_8);
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_10 = sqrt(t_9);
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_11 = min(t_3, t_7);
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_12 = max(t_2, t_8);
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_13 = sqrt((t_12 + 1.0));
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_14 = sqrt(t_12);
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_15 = sqrt(t_11);
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_16 = t_6 + (t_15 + t_10);
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_17 = (((sqrt((t_5 + 1.0)) - t_6) + (sqrt((t_11 + 1.0)) - t_15)) + (sqrt((t_9 + 1.0)) - t_10)) + (t_13 - t_14);
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	tmp = 0.0;
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	if (t_17 <= 1.0)
                                                                                                                                                                                                                                                                                                                                                                                                                                                          		tmp = 1.0 + (t_13 - (t_14 + t_10));
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	elseif (t_17 <= 2.5)
                                                                                                                                                                                                                                                                                                                                                                                                                                                          		tmp = (1.0 + sqrt((1.0 + t_11))) - (t_6 + t_15);
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	elseif (t_17 <= 3.5)
                                                                                                                                                                                                                                                                                                                                                                                                                                                          		tmp = 3.0 - t_16;
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	else
                                                                                                                                                                                                                                                                                                                                                                                                                                                          		tmp = 4.0 - (t_14 + t_16);
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	end
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	tmp_2 = tmp;
                                                                                                                                                                                                                                                                                                                                                                                                                                                          end
                                                                                                                                                                                                                                                                                                                                                                                                                                                          
                                                                                                                                                                                                                                                                                                                                                                                                                                                          code[x_, y_, z_, t_] := Block[{t$95$1 = N[Max[N[Min[x, y], $MachinePrecision], z], $MachinePrecision]}, Block[{t$95$2 = N[Max[N[Max[x, y], $MachinePrecision], t$95$1], $MachinePrecision]}, Block[{t$95$3 = N[Min[N[Max[x, y], $MachinePrecision], t$95$1], $MachinePrecision]}, Block[{t$95$4 = N[Min[N[Min[x, y], $MachinePrecision], z], $MachinePrecision]}, Block[{t$95$5 = N[Min[t$95$4, t], $MachinePrecision]}, Block[{t$95$6 = N[Sqrt[t$95$5], $MachinePrecision]}, Block[{t$95$7 = N[Max[t$95$4, t], $MachinePrecision]}, Block[{t$95$8 = N[Max[t$95$3, t$95$7], $MachinePrecision]}, Block[{t$95$9 = N[Min[t$95$2, t$95$8], $MachinePrecision]}, Block[{t$95$10 = N[Sqrt[t$95$9], $MachinePrecision]}, Block[{t$95$11 = N[Min[t$95$3, t$95$7], $MachinePrecision]}, Block[{t$95$12 = N[Max[t$95$2, t$95$8], $MachinePrecision]}, Block[{t$95$13 = N[Sqrt[N[(t$95$12 + 1.0), $MachinePrecision]], $MachinePrecision]}, Block[{t$95$14 = N[Sqrt[t$95$12], $MachinePrecision]}, Block[{t$95$15 = N[Sqrt[t$95$11], $MachinePrecision]}, Block[{t$95$16 = N[(t$95$6 + N[(t$95$15 + t$95$10), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$17 = N[(N[(N[(N[(N[Sqrt[N[(t$95$5 + 1.0), $MachinePrecision]], $MachinePrecision] - t$95$6), $MachinePrecision] + N[(N[Sqrt[N[(t$95$11 + 1.0), $MachinePrecision]], $MachinePrecision] - t$95$15), $MachinePrecision]), $MachinePrecision] + N[(N[Sqrt[N[(t$95$9 + 1.0), $MachinePrecision]], $MachinePrecision] - t$95$10), $MachinePrecision]), $MachinePrecision] + N[(t$95$13 - t$95$14), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[t$95$17, 1.0], N[(1.0 + N[(t$95$13 - N[(t$95$14 + t$95$10), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[t$95$17, 2.5], N[(N[(1.0 + N[Sqrt[N[(1.0 + t$95$11), $MachinePrecision]], $MachinePrecision]), $MachinePrecision] - N[(t$95$6 + t$95$15), $MachinePrecision]), $MachinePrecision], If[LessEqual[t$95$17, 3.5], N[(3.0 - t$95$16), $MachinePrecision], N[(4.0 - N[(t$95$14 + t$95$16), $MachinePrecision]), $MachinePrecision]]]]]]]]]]]]]]]]]]]]]
                                                                                                                                                                                                                                                                                                                                                                                                                                                          
                                                                                                                                                                                                                                                                                                                                                                                                                                                          f(x, y, z, t):
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	x in [-inf, +inf],
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	y in [-inf, +inf],
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	z in [-inf, +inf],
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t in [-inf, +inf]
                                                                                                                                                                                                                                                                                                                                                                                                                                                          code: THEORY
                                                                                                                                                                                                                                                                                                                                                                                                                                                          BEGIN
                                                                                                                                                                                                                                                                                                                                                                                                                                                          f(x, y, z, t: real): real =
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	LET tmp_2 = IF (x < y) THEN x ELSE y ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	LET tmp_3 = IF (x < y) THEN x ELSE y ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	LET tmp_1 = IF (tmp_2 > z) THEN tmp_3 ELSE z ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	LET t_1 = tmp_1 IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                          		LET tmp_6 = IF (x > y) THEN x ELSE y ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                          		LET tmp_7 = IF (x > y) THEN x ELSE y ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                          		LET tmp_5 = IF (tmp_6 > t_1) THEN tmp_7 ELSE t_1 ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                          		LET t_2 = tmp_5 IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                          			LET tmp_10 = IF (x > y) THEN x ELSE y ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                          			LET tmp_11 = IF (x > y) THEN x ELSE y ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                          			LET tmp_9 = IF (tmp_10 < t_1) THEN tmp_11 ELSE t_1 ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                          			LET t_3 = tmp_9 IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                          				LET tmp_14 = IF (x < y) THEN x ELSE y ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                          				LET tmp_15 = IF (x < y) THEN x ELSE y ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                          				LET tmp_13 = IF (tmp_14 < z) THEN tmp_15 ELSE z ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                          				LET t_4 = tmp_13 IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                          					LET tmp_16 = IF (t_4 < t) THEN t_4 ELSE t ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                          					LET t_5 = tmp_16 IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                          						LET t_6 = (sqrt(t_5)) IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                          							LET tmp_17 = IF (t_4 > t) THEN t_4 ELSE t ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                          							LET t_7 = tmp_17 IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                          								LET tmp_18 = IF (t_3 > t_7) THEN t_3 ELSE t_7 ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                          								LET t_8 = tmp_18 IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                          									LET tmp_19 = IF (t_2 < t_8) THEN t_2 ELSE t_8 ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                          									LET t_9 = tmp_19 IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                          										LET t_10 = (sqrt(t_9)) IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                          											LET tmp_20 = IF (t_3 < t_7) THEN t_3 ELSE t_7 ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                          											LET t_11 = tmp_20 IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                          												LET tmp_21 = IF (t_2 > t_8) THEN t_2 ELSE t_8 ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                          												LET t_12 = tmp_21 IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                          													LET t_13 = (sqrt((t_12 + (1)))) IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                          														LET t_14 = (sqrt(t_12)) IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                          															LET t_15 = (sqrt(t_11)) IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                          																LET t_16 = (t_6 + (t_15 + t_10)) IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                          																	LET t_17 = (((((sqrt((t_5 + (1)))) - t_6) + ((sqrt((t_11 + (1)))) - t_15)) + ((sqrt((t_9 + (1)))) - t_10)) + (t_13 - t_14)) IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                          																		LET tmp_24 = IF (t_17 <= (35e-1)) THEN ((3) - t_16) ELSE ((4) - (t_14 + t_16)) ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                          																		LET tmp_23 = IF (t_17 <= (25e-1)) THEN (((1) + (sqrt(((1) + t_11)))) - (t_6 + t_15)) ELSE tmp_24 ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                          																		LET tmp_22 = IF (t_17 <= (1)) THEN ((1) + (t_13 - (t_14 + t_10))) ELSE tmp_23 ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                          	tmp_22
                                                                                                                                                                                                                                                                                                                                                                                                                                                          END code
                                                                                                                                                                                                                                                                                                                                                                                                                                                          \begin{array}{l}
                                                                                                                                                                                                                                                                                                                                                                                                                                                          t_1 := \mathsf{max}\left(\mathsf{min}\left(x, y\right), z\right)\\
                                                                                                                                                                                                                                                                                                                                                                                                                                                          t_2 := \mathsf{max}\left(\mathsf{max}\left(x, y\right), t\_1\right)\\
                                                                                                                                                                                                                                                                                                                                                                                                                                                          t_3 := \mathsf{min}\left(\mathsf{max}\left(x, y\right), t\_1\right)\\
                                                                                                                                                                                                                                                                                                                                                                                                                                                          t_4 := \mathsf{min}\left(\mathsf{min}\left(x, y\right), z\right)\\
                                                                                                                                                                                                                                                                                                                                                                                                                                                          t_5 := \mathsf{min}\left(t\_4, t\right)\\
                                                                                                                                                                                                                                                                                                                                                                                                                                                          t_6 := \sqrt{t\_5}\\
                                                                                                                                                                                                                                                                                                                                                                                                                                                          t_7 := \mathsf{max}\left(t\_4, t\right)\\
                                                                                                                                                                                                                                                                                                                                                                                                                                                          t_8 := \mathsf{max}\left(t\_3, t\_7\right)\\
                                                                                                                                                                                                                                                                                                                                                                                                                                                          t_9 := \mathsf{min}\left(t\_2, t\_8\right)\\
                                                                                                                                                                                                                                                                                                                                                                                                                                                          t_10 := \sqrt{t\_9}\\
                                                                                                                                                                                                                                                                                                                                                                                                                                                          t_11 := \mathsf{min}\left(t\_3, t\_7\right)\\
                                                                                                                                                                                                                                                                                                                                                                                                                                                          t_12 := \mathsf{max}\left(t\_2, t\_8\right)\\
                                                                                                                                                                                                                                                                                                                                                                                                                                                          t_13 := \sqrt{t\_12 + 1}\\
                                                                                                                                                                                                                                                                                                                                                                                                                                                          t_14 := \sqrt{t\_12}\\
                                                                                                                                                                                                                                                                                                                                                                                                                                                          t_15 := \sqrt{t\_11}\\
                                                                                                                                                                                                                                                                                                                                                                                                                                                          t_16 := t\_6 + \left(t\_15 + t\_10\right)\\
                                                                                                                                                                                                                                                                                                                                                                                                                                                          t_17 := \left(\left(\left(\sqrt{t\_5 + 1} - t\_6\right) + \left(\sqrt{t\_11 + 1} - t\_15\right)\right) + \left(\sqrt{t\_9 + 1} - t\_10\right)\right) + \left(t\_13 - t\_14\right)\\
                                                                                                                                                                                                                                                                                                                                                                                                                                                          \mathbf{if}\;t\_17 \leq 1:\\
                                                                                                                                                                                                                                                                                                                                                                                                                                                          \;\;\;\;1 + \left(t\_13 - \left(t\_14 + t\_10\right)\right)\\
                                                                                                                                                                                                                                                                                                                                                                                                                                                          
                                                                                                                                                                                                                                                                                                                                                                                                                                                          \mathbf{elif}\;t\_17 \leq 2.5:\\
                                                                                                                                                                                                                                                                                                                                                                                                                                                          \;\;\;\;\left(1 + \sqrt{1 + t\_11}\right) - \left(t\_6 + t\_15\right)\\
                                                                                                                                                                                                                                                                                                                                                                                                                                                          
                                                                                                                                                                                                                                                                                                                                                                                                                                                          \mathbf{elif}\;t\_17 \leq 3.5:\\
                                                                                                                                                                                                                                                                                                                                                                                                                                                          \;\;\;\;3 - t\_16\\
                                                                                                                                                                                                                                                                                                                                                                                                                                                          
                                                                                                                                                                                                                                                                                                                                                                                                                                                          \mathbf{else}:\\
                                                                                                                                                                                                                                                                                                                                                                                                                                                          \;\;\;\;4 - \left(t\_14 + t\_16\right)\\
                                                                                                                                                                                                                                                                                                                                                                                                                                                          
                                                                                                                                                                                                                                                                                                                                                                                                                                                          
                                                                                                                                                                                                                                                                                                                                                                                                                                                          \end{array}
                                                                                                                                                                                                                                                                                                                                                                                                                                                          
                                                                                                                                                                                                                                                                                                                                                                                                                                                          Derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                                          1. Split input into 4 regimes
                                                                                                                                                                                                                                                                                                                                                                                                                                                          2. if (+.f64 (+.f64 (+.f64 (-.f64 (sqrt.f64 (+.f64 x #s(literal 1 binary64))) (sqrt.f64 x)) (-.f64 (sqrt.f64 (+.f64 y #s(literal 1 binary64))) (sqrt.f64 y))) (-.f64 (sqrt.f64 (+.f64 z #s(literal 1 binary64))) (sqrt.f64 z))) (-.f64 (sqrt.f64 (+.f64 t #s(literal 1 binary64))) (sqrt.f64 t))) < 1

                                                                                                                                                                                                                                                                                                                                                                                                                                                            1. Initial program 92.0%

                                                                                                                                                                                                                                                                                                                                                                                                                                                              \[\left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                            2. Taylor expanded in y around inf

                                                                                                                                                                                                                                                                                                                                                                                                                                                              \[\leadsto \left(\sqrt{1 + t} + \left(\sqrt{1 + x} + \sqrt{1 + z}\right)\right) - \left(\sqrt{t} + \left(\sqrt{x} + \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                            3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                                              1. Applied rewrites12.1%

                                                                                                                                                                                                                                                                                                                                                                                                                                                                \[\leadsto \left(\sqrt{1 + t} + \left(\sqrt{1 + x} + \sqrt{1 + z}\right)\right) - \left(\sqrt{t} + \left(\sqrt{x} + \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                              2. Taylor expanded in x around inf

                                                                                                                                                                                                                                                                                                                                                                                                                                                                \[\leadsto \left(\sqrt{1 + t} + \sqrt{1 + z}\right) - \left(\sqrt{t} + \sqrt{z}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                              3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                                                1. Applied rewrites13.4%

                                                                                                                                                                                                                                                                                                                                                                                                                                                                  \[\leadsto \left(\sqrt{1 + t} + \sqrt{1 + z}\right) - \left(\sqrt{t} + \sqrt{z}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                2. Taylor expanded in z around 0

                                                                                                                                                                                                                                                                                                                                                                                                                                                                  \[\leadsto \left(1 + \sqrt{1 + t}\right) - \left(\sqrt{t} + \sqrt{z}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                                                  1. Applied rewrites11.7%

                                                                                                                                                                                                                                                                                                                                                                                                                                                                    \[\leadsto \left(1 + \sqrt{1 + t}\right) - \left(\sqrt{t} + \sqrt{z}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                  2. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                                                    1. Applied rewrites24.1%

                                                                                                                                                                                                                                                                                                                                                                                                                                                                      \[\leadsto 1 + \left(\sqrt{t + 1} - \left(\sqrt{t} + \sqrt{z}\right)\right) \]

                                                                                                                                                                                                                                                                                                                                                                                                                                                                    if 1 < (+.f64 (+.f64 (+.f64 (-.f64 (sqrt.f64 (+.f64 x #s(literal 1 binary64))) (sqrt.f64 x)) (-.f64 (sqrt.f64 (+.f64 y #s(literal 1 binary64))) (sqrt.f64 y))) (-.f64 (sqrt.f64 (+.f64 z #s(literal 1 binary64))) (sqrt.f64 z))) (-.f64 (sqrt.f64 (+.f64 t #s(literal 1 binary64))) (sqrt.f64 t))) < 2.5

                                                                                                                                                                                                                                                                                                                                                                                                                                                                    1. Initial program 92.0%

                                                                                                                                                                                                                                                                                                                                                                                                                                                                      \[\left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                    2. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                                                      1. Applied rewrites93.8%

                                                                                                                                                                                                                                                                                                                                                                                                                                                                        \[\leadsto \left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \frac{1}{\sqrt{z} + \sqrt{z + 1}}\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                      2. Taylor expanded in t around inf

                                                                                                                                                                                                                                                                                                                                                                                                                                                                        \[\leadsto \left(\sqrt{1 + x} + \left(\sqrt{1 + y} + \frac{1}{\sqrt{z} + \sqrt{1 + z}}\right)\right) - \left(\sqrt{x} + \sqrt{y}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                      3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                                                        1. Applied rewrites19.3%

                                                                                                                                                                                                                                                                                                                                                                                                                                                                          \[\leadsto \left(\sqrt{1 + x} + \left(\sqrt{1 + y} + \frac{1}{\sqrt{z} + \sqrt{1 + z}}\right)\right) - \left(\sqrt{x} + \sqrt{y}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                        2. Taylor expanded in z around inf

                                                                                                                                                                                                                                                                                                                                                                                                                                                                          \[\leadsto \left(\sqrt{1 + x} + \sqrt{1 + y}\right) - \left(\sqrt{x} + \sqrt{y}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                        3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                                                          1. Applied rewrites13.3%

                                                                                                                                                                                                                                                                                                                                                                                                                                                                            \[\leadsto \left(\sqrt{1 + x} + \sqrt{1 + y}\right) - \left(\sqrt{x} + \sqrt{y}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                          2. Taylor expanded in x around 0

                                                                                                                                                                                                                                                                                                                                                                                                                                                                            \[\leadsto \left(1 + \sqrt{1 + y}\right) - \left(\sqrt{x} + \sqrt{y}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                          3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                                                            1. Applied rewrites11.6%

                                                                                                                                                                                                                                                                                                                                                                                                                                                                              \[\leadsto \left(1 + \sqrt{1 + y}\right) - \left(\sqrt{x} + \sqrt{y}\right) \]

                                                                                                                                                                                                                                                                                                                                                                                                                                                                            if 2.5 < (+.f64 (+.f64 (+.f64 (-.f64 (sqrt.f64 (+.f64 x #s(literal 1 binary64))) (sqrt.f64 x)) (-.f64 (sqrt.f64 (+.f64 y #s(literal 1 binary64))) (sqrt.f64 y))) (-.f64 (sqrt.f64 (+.f64 z #s(literal 1 binary64))) (sqrt.f64 z))) (-.f64 (sqrt.f64 (+.f64 t #s(literal 1 binary64))) (sqrt.f64 t))) < 3.5

                                                                                                                                                                                                                                                                                                                                                                                                                                                                            1. Initial program 92.0%

                                                                                                                                                                                                                                                                                                                                                                                                                                                                              \[\left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                            2. Taylor expanded in t around inf

                                                                                                                                                                                                                                                                                                                                                                                                                                                                              \[\leadsto \left(\sqrt{1 + x} + \left(\sqrt{1 + y} + \sqrt{1 + z}\right)\right) - \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                            3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                                                              1. Applied rewrites12.2%

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                \[\leadsto \left(\sqrt{1 + x} + \left(\sqrt{1 + y} + \sqrt{1 + z}\right)\right) - \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                              2. Taylor expanded in y around 0

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                \[\leadsto \left(1 + \left(\sqrt{1 + x} + \sqrt{1 + z}\right)\right) - \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                              3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                1. Applied rewrites10.7%

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  \[\leadsto \left(1 + \left(\sqrt{1 + x} + \sqrt{1 + z}\right)\right) - \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                2. Taylor expanded in z around 0

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  \[\leadsto \left(2 + \sqrt{1 + x}\right) - \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  1. Applied rewrites9.4%

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    \[\leadsto \left(2 + \sqrt{1 + x}\right) - \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  2. Taylor expanded in x around 0

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    \[\leadsto 3 - \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    1. Applied rewrites8.2%

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      \[\leadsto 3 - \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right) \]

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    if 3.5 < (+.f64 (+.f64 (+.f64 (-.f64 (sqrt.f64 (+.f64 x #s(literal 1 binary64))) (sqrt.f64 x)) (-.f64 (sqrt.f64 (+.f64 y #s(literal 1 binary64))) (sqrt.f64 y))) (-.f64 (sqrt.f64 (+.f64 z #s(literal 1 binary64))) (sqrt.f64 z))) (-.f64 (sqrt.f64 (+.f64 t #s(literal 1 binary64))) (sqrt.f64 t)))

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    1. Initial program 92.0%

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      \[\left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    2. Taylor expanded in t around 0

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      \[\leadsto \left(1 + \left(\sqrt{1 + x} + \left(\sqrt{1 + y} + \sqrt{1 + z}\right)\right)\right) - \left(\sqrt{t} + \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      1. Applied rewrites10.2%

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        \[\leadsto \left(1 + \left(\sqrt{1 + x} + \left(\sqrt{1 + y} + \sqrt{1 + z}\right)\right)\right) - \left(\sqrt{t} + \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      2. Taylor expanded in z around 0

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        \[\leadsto \left(2 + \left(\sqrt{1 + x} + \sqrt{1 + y}\right)\right) - \left(\sqrt{t} + \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        1. Applied rewrites9.1%

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          \[\leadsto \left(2 + \left(\sqrt{1 + x} + \sqrt{1 + y}\right)\right) - \left(\sqrt{t} + \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        2. Taylor expanded in y around 0

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          \[\leadsto \left(3 + \sqrt{1 + x}\right) - \left(\sqrt{t} + \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          1. Applied rewrites8.0%

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            \[\leadsto \left(3 + \sqrt{1 + x}\right) - \left(\sqrt{t} + \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          2. Taylor expanded in x around 0

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            \[\leadsto 4 - \left(\sqrt{t} + \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            1. Applied rewrites7.0%

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              \[\leadsto 4 - \left(\sqrt{t} + \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          4. Recombined 4 regimes into one program.
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          5. Add Preprocessing

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          Alternative 25: 76.4% accurate, 0.1× speedup?

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          \[\begin{array}{l} t_1 := \mathsf{max}\left(\mathsf{min}\left(x, y\right), z\right)\\ t_2 := \mathsf{max}\left(\mathsf{max}\left(x, y\right), t\_1\right)\\ t_3 := \mathsf{min}\left(\mathsf{max}\left(x, y\right), t\_1\right)\\ t_4 := \mathsf{min}\left(\mathsf{min}\left(x, y\right), z\right)\\ t_5 := \mathsf{min}\left(t\_4, t\right)\\ t_6 := \sqrt{t\_5}\\ t_7 := \mathsf{max}\left(t\_4, t\right)\\ t_8 := \mathsf{max}\left(t\_3, t\_7\right)\\ t_9 := \mathsf{min}\left(t\_2, t\_8\right)\\ t_10 := \mathsf{min}\left(t\_3, t\_7\right)\\ t_11 := \sqrt{t\_9}\\ t_12 := \mathsf{max}\left(t\_2, t\_8\right)\\ t_13 := \sqrt{t\_10}\\ t_14 := \left(\left(\sqrt{t\_5 + 1} - t\_6\right) + \left(\sqrt{t\_10 + 1} - t\_13\right)\right) + \left(\sqrt{t\_9 + 1} - t\_11\right)\\ \mathbf{if}\;t\_14 \leq 1:\\ \;\;\;\;1 + \left(\sqrt{t\_12 + 1} - \left(\sqrt{t\_12} + t\_11\right)\right)\\ \mathbf{elif}\;t\_14 \leq 2.5:\\ \;\;\;\;\left(1 + \sqrt{1 + t\_10}\right) - \left(t\_6 + t\_13\right)\\ \mathbf{else}:\\ \;\;\;\;3 - \left(t\_6 + \left(t\_13 + t\_11\right)\right)\\ \end{array} \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          (FPCore (x y z t)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            :precision binary64
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            :pre TRUE
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            (let* ((t_1 (fmax (fmin x y) z))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 (t_2 (fmax (fmax x y) t_1))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 (t_3 (fmin (fmax x y) t_1))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 (t_4 (fmin (fmin x y) z))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 (t_5 (fmin t_4 t))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 (t_6 (sqrt t_5))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 (t_7 (fmax t_4 t))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 (t_8 (fmax t_3 t_7))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 (t_9 (fmin t_2 t_8))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 (t_10 (fmin t_3 t_7))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 (t_11 (sqrt t_9))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 (t_12 (fmax t_2 t_8))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 (t_13 (sqrt t_10))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 (t_14
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  (+
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   (+ (- (sqrt (+ t_5 1.0)) t_6) (- (sqrt (+ t_10 1.0)) t_13))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   (- (sqrt (+ t_9 1.0)) t_11))))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            (if (<= t_14 1.0)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              (+ 1.0 (- (sqrt (+ t_12 1.0)) (+ (sqrt t_12) t_11)))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              (if (<= t_14 2.5)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                (- (+ 1.0 (sqrt (+ 1.0 t_10))) (+ t_6 t_13))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                (- 3.0 (+ t_6 (+ t_13 t_11)))))))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          double code(double x, double y, double z, double t) {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_1 = fmax(fmin(x, y), z);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_2 = fmax(fmax(x, y), t_1);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_3 = fmin(fmax(x, y), t_1);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_4 = fmin(fmin(x, y), z);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_5 = fmin(t_4, t);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_6 = sqrt(t_5);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_7 = fmax(t_4, t);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_8 = fmax(t_3, t_7);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_9 = fmin(t_2, t_8);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_10 = fmin(t_3, t_7);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_11 = sqrt(t_9);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_12 = fmax(t_2, t_8);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_13 = sqrt(t_10);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_14 = ((sqrt((t_5 + 1.0)) - t_6) + (sqrt((t_10 + 1.0)) - t_13)) + (sqrt((t_9 + 1.0)) - t_11);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	double tmp;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	if (t_14 <= 1.0) {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          		tmp = 1.0 + (sqrt((t_12 + 1.0)) - (sqrt(t_12) + t_11));
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	} else if (t_14 <= 2.5) {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          		tmp = (1.0 + sqrt((1.0 + t_10))) - (t_6 + t_13);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	} else {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          		tmp = 3.0 - (t_6 + (t_13 + t_11));
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	}
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	return tmp;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          }
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          real(8) function code(x, y, z, t)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          use fmin_fmax_functions
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              real(8), intent (in) :: x
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              real(8), intent (in) :: y
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              real(8), intent (in) :: z
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              real(8), intent (in) :: t
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              real(8) :: t_1
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              real(8) :: t_10
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              real(8) :: t_11
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              real(8) :: t_12
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              real(8) :: t_13
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              real(8) :: t_14
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              real(8) :: t_2
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              real(8) :: t_3
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              real(8) :: t_4
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              real(8) :: t_5
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              real(8) :: t_6
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              real(8) :: t_7
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              real(8) :: t_8
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              real(8) :: t_9
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              real(8) :: tmp
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              t_1 = fmax(fmin(x, y), z)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              t_2 = fmax(fmax(x, y), t_1)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              t_3 = fmin(fmax(x, y), t_1)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              t_4 = fmin(fmin(x, y), z)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              t_5 = fmin(t_4, t)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              t_6 = sqrt(t_5)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              t_7 = fmax(t_4, t)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              t_8 = fmax(t_3, t_7)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              t_9 = fmin(t_2, t_8)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              t_10 = fmin(t_3, t_7)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              t_11 = sqrt(t_9)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              t_12 = fmax(t_2, t_8)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              t_13 = sqrt(t_10)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              t_14 = ((sqrt((t_5 + 1.0d0)) - t_6) + (sqrt((t_10 + 1.0d0)) - t_13)) + (sqrt((t_9 + 1.0d0)) - t_11)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              if (t_14 <= 1.0d0) then
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  tmp = 1.0d0 + (sqrt((t_12 + 1.0d0)) - (sqrt(t_12) + t_11))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              else if (t_14 <= 2.5d0) then
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  tmp = (1.0d0 + sqrt((1.0d0 + t_10))) - (t_6 + t_13)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              else
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  tmp = 3.0d0 - (t_6 + (t_13 + t_11))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              end if
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              code = tmp
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          end function
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          public static double code(double x, double y, double z, double t) {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_1 = fmax(fmin(x, y), z);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_2 = fmax(fmax(x, y), t_1);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_3 = fmin(fmax(x, y), t_1);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_4 = fmin(fmin(x, y), z);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_5 = fmin(t_4, t);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_6 = Math.sqrt(t_5);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_7 = fmax(t_4, t);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_8 = fmax(t_3, t_7);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_9 = fmin(t_2, t_8);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_10 = fmin(t_3, t_7);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_11 = Math.sqrt(t_9);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_12 = fmax(t_2, t_8);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_13 = Math.sqrt(t_10);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_14 = ((Math.sqrt((t_5 + 1.0)) - t_6) + (Math.sqrt((t_10 + 1.0)) - t_13)) + (Math.sqrt((t_9 + 1.0)) - t_11);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	double tmp;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	if (t_14 <= 1.0) {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          		tmp = 1.0 + (Math.sqrt((t_12 + 1.0)) - (Math.sqrt(t_12) + t_11));
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	} else if (t_14 <= 2.5) {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          		tmp = (1.0 + Math.sqrt((1.0 + t_10))) - (t_6 + t_13);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	} else {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          		tmp = 3.0 - (t_6 + (t_13 + t_11));
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	}
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	return tmp;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          }
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          def code(x, y, z, t):
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_1 = fmax(fmin(x, y), z)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_2 = fmax(fmax(x, y), t_1)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_3 = fmin(fmax(x, y), t_1)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_4 = fmin(fmin(x, y), z)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_5 = fmin(t_4, t)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_6 = math.sqrt(t_5)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_7 = fmax(t_4, t)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_8 = fmax(t_3, t_7)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_9 = fmin(t_2, t_8)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_10 = fmin(t_3, t_7)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_11 = math.sqrt(t_9)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_12 = fmax(t_2, t_8)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_13 = math.sqrt(t_10)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_14 = ((math.sqrt((t_5 + 1.0)) - t_6) + (math.sqrt((t_10 + 1.0)) - t_13)) + (math.sqrt((t_9 + 1.0)) - t_11)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	tmp = 0
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	if t_14 <= 1.0:
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          		tmp = 1.0 + (math.sqrt((t_12 + 1.0)) - (math.sqrt(t_12) + t_11))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	elif t_14 <= 2.5:
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          		tmp = (1.0 + math.sqrt((1.0 + t_10))) - (t_6 + t_13)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	else:
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          		tmp = 3.0 - (t_6 + (t_13 + t_11))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	return tmp
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          function code(x, y, z, t)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_1 = fmax(fmin(x, y), z)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_2 = fmax(fmax(x, y), t_1)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_3 = fmin(fmax(x, y), t_1)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_4 = fmin(fmin(x, y), z)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_5 = fmin(t_4, t)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_6 = sqrt(t_5)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_7 = fmax(t_4, t)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_8 = fmax(t_3, t_7)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_9 = fmin(t_2, t_8)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_10 = fmin(t_3, t_7)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_11 = sqrt(t_9)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_12 = fmax(t_2, t_8)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_13 = sqrt(t_10)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_14 = Float64(Float64(Float64(sqrt(Float64(t_5 + 1.0)) - t_6) + Float64(sqrt(Float64(t_10 + 1.0)) - t_13)) + Float64(sqrt(Float64(t_9 + 1.0)) - t_11))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	tmp = 0.0
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	if (t_14 <= 1.0)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          		tmp = Float64(1.0 + Float64(sqrt(Float64(t_12 + 1.0)) - Float64(sqrt(t_12) + t_11)));
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	elseif (t_14 <= 2.5)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          		tmp = Float64(Float64(1.0 + sqrt(Float64(1.0 + t_10))) - Float64(t_6 + t_13));
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	else
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          		tmp = Float64(3.0 - Float64(t_6 + Float64(t_13 + t_11)));
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	end
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	return tmp
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          end
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          function tmp_2 = code(x, y, z, t)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_1 = max(min(x, y), z);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_2 = max(max(x, y), t_1);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_3 = min(max(x, y), t_1);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_4 = min(min(x, y), z);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_5 = min(t_4, t);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_6 = sqrt(t_5);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_7 = max(t_4, t);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_8 = max(t_3, t_7);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_9 = min(t_2, t_8);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_10 = min(t_3, t_7);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_11 = sqrt(t_9);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_12 = max(t_2, t_8);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_13 = sqrt(t_10);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_14 = ((sqrt((t_5 + 1.0)) - t_6) + (sqrt((t_10 + 1.0)) - t_13)) + (sqrt((t_9 + 1.0)) - t_11);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	tmp = 0.0;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	if (t_14 <= 1.0)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          		tmp = 1.0 + (sqrt((t_12 + 1.0)) - (sqrt(t_12) + t_11));
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	elseif (t_14 <= 2.5)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          		tmp = (1.0 + sqrt((1.0 + t_10))) - (t_6 + t_13);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	else
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          		tmp = 3.0 - (t_6 + (t_13 + t_11));
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	end
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	tmp_2 = tmp;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          end
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          code[x_, y_, z_, t_] := Block[{t$95$1 = N[Max[N[Min[x, y], $MachinePrecision], z], $MachinePrecision]}, Block[{t$95$2 = N[Max[N[Max[x, y], $MachinePrecision], t$95$1], $MachinePrecision]}, Block[{t$95$3 = N[Min[N[Max[x, y], $MachinePrecision], t$95$1], $MachinePrecision]}, Block[{t$95$4 = N[Min[N[Min[x, y], $MachinePrecision], z], $MachinePrecision]}, Block[{t$95$5 = N[Min[t$95$4, t], $MachinePrecision]}, Block[{t$95$6 = N[Sqrt[t$95$5], $MachinePrecision]}, Block[{t$95$7 = N[Max[t$95$4, t], $MachinePrecision]}, Block[{t$95$8 = N[Max[t$95$3, t$95$7], $MachinePrecision]}, Block[{t$95$9 = N[Min[t$95$2, t$95$8], $MachinePrecision]}, Block[{t$95$10 = N[Min[t$95$3, t$95$7], $MachinePrecision]}, Block[{t$95$11 = N[Sqrt[t$95$9], $MachinePrecision]}, Block[{t$95$12 = N[Max[t$95$2, t$95$8], $MachinePrecision]}, Block[{t$95$13 = N[Sqrt[t$95$10], $MachinePrecision]}, Block[{t$95$14 = N[(N[(N[(N[Sqrt[N[(t$95$5 + 1.0), $MachinePrecision]], $MachinePrecision] - t$95$6), $MachinePrecision] + N[(N[Sqrt[N[(t$95$10 + 1.0), $MachinePrecision]], $MachinePrecision] - t$95$13), $MachinePrecision]), $MachinePrecision] + N[(N[Sqrt[N[(t$95$9 + 1.0), $MachinePrecision]], $MachinePrecision] - t$95$11), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[t$95$14, 1.0], N[(1.0 + N[(N[Sqrt[N[(t$95$12 + 1.0), $MachinePrecision]], $MachinePrecision] - N[(N[Sqrt[t$95$12], $MachinePrecision] + t$95$11), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[t$95$14, 2.5], N[(N[(1.0 + N[Sqrt[N[(1.0 + t$95$10), $MachinePrecision]], $MachinePrecision]), $MachinePrecision] - N[(t$95$6 + t$95$13), $MachinePrecision]), $MachinePrecision], N[(3.0 - N[(t$95$6 + N[(t$95$13 + t$95$11), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]]]]]]]]]]]]]]]]]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          f(x, y, z, t):
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	x in [-inf, +inf],
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	y in [-inf, +inf],
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	z in [-inf, +inf],
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t in [-inf, +inf]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          code: THEORY
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          BEGIN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          f(x, y, z, t: real): real =
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	LET tmp_2 = IF (x < y) THEN x ELSE y ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	LET tmp_3 = IF (x < y) THEN x ELSE y ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	LET tmp_1 = IF (tmp_2 > z) THEN tmp_3 ELSE z ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	LET t_1 = tmp_1 IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          		LET tmp_6 = IF (x > y) THEN x ELSE y ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          		LET tmp_7 = IF (x > y) THEN x ELSE y ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          		LET tmp_5 = IF (tmp_6 > t_1) THEN tmp_7 ELSE t_1 ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          		LET t_2 = tmp_5 IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          			LET tmp_10 = IF (x > y) THEN x ELSE y ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          			LET tmp_11 = IF (x > y) THEN x ELSE y ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          			LET tmp_9 = IF (tmp_10 < t_1) THEN tmp_11 ELSE t_1 ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          			LET t_3 = tmp_9 IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          				LET tmp_14 = IF (x < y) THEN x ELSE y ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          				LET tmp_15 = IF (x < y) THEN x ELSE y ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          				LET tmp_13 = IF (tmp_14 < z) THEN tmp_15 ELSE z ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          				LET t_4 = tmp_13 IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          					LET tmp_16 = IF (t_4 < t) THEN t_4 ELSE t ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          					LET t_5 = tmp_16 IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          						LET t_6 = (sqrt(t_5)) IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          							LET tmp_17 = IF (t_4 > t) THEN t_4 ELSE t ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          							LET t_7 = tmp_17 IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          								LET tmp_18 = IF (t_3 > t_7) THEN t_3 ELSE t_7 ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          								LET t_8 = tmp_18 IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          									LET tmp_19 = IF (t_2 < t_8) THEN t_2 ELSE t_8 ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          									LET t_9 = tmp_19 IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          										LET tmp_20 = IF (t_3 < t_7) THEN t_3 ELSE t_7 ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          										LET t_10 = tmp_20 IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          											LET t_11 = (sqrt(t_9)) IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          												LET tmp_21 = IF (t_2 > t_8) THEN t_2 ELSE t_8 ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          												LET t_12 = tmp_21 IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          													LET t_13 = (sqrt(t_10)) IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          														LET t_14 = ((((sqrt((t_5 + (1)))) - t_6) + ((sqrt((t_10 + (1)))) - t_13)) + ((sqrt((t_9 + (1)))) - t_11)) IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          															LET tmp_23 = IF (t_14 <= (25e-1)) THEN (((1) + (sqrt(((1) + t_10)))) - (t_6 + t_13)) ELSE ((3) - (t_6 + (t_13 + t_11))) ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          															LET tmp_22 = IF (t_14 <= (1)) THEN ((1) + ((sqrt((t_12 + (1)))) - ((sqrt(t_12)) + t_11))) ELSE tmp_23 ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	tmp_22
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          END code
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          \begin{array}{l}
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          t_1 := \mathsf{max}\left(\mathsf{min}\left(x, y\right), z\right)\\
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          t_2 := \mathsf{max}\left(\mathsf{max}\left(x, y\right), t\_1\right)\\
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          t_3 := \mathsf{min}\left(\mathsf{max}\left(x, y\right), t\_1\right)\\
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          t_4 := \mathsf{min}\left(\mathsf{min}\left(x, y\right), z\right)\\
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          t_5 := \mathsf{min}\left(t\_4, t\right)\\
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          t_6 := \sqrt{t\_5}\\
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          t_7 := \mathsf{max}\left(t\_4, t\right)\\
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          t_8 := \mathsf{max}\left(t\_3, t\_7\right)\\
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          t_9 := \mathsf{min}\left(t\_2, t\_8\right)\\
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          t_10 := \mathsf{min}\left(t\_3, t\_7\right)\\
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          t_11 := \sqrt{t\_9}\\
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          t_12 := \mathsf{max}\left(t\_2, t\_8\right)\\
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          t_13 := \sqrt{t\_10}\\
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          t_14 := \left(\left(\sqrt{t\_5 + 1} - t\_6\right) + \left(\sqrt{t\_10 + 1} - t\_13\right)\right) + \left(\sqrt{t\_9 + 1} - t\_11\right)\\
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          \mathbf{if}\;t\_14 \leq 1:\\
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          \;\;\;\;1 + \left(\sqrt{t\_12 + 1} - \left(\sqrt{t\_12} + t\_11\right)\right)\\
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          \mathbf{elif}\;t\_14 \leq 2.5:\\
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          \;\;\;\;\left(1 + \sqrt{1 + t\_10}\right) - \left(t\_6 + t\_13\right)\\
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          \mathbf{else}:\\
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          \;\;\;\;3 - \left(t\_6 + \left(t\_13 + t\_11\right)\right)\\
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          \end{array}
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          Derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          1. Split input into 3 regimes
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          2. if (+.f64 (+.f64 (-.f64 (sqrt.f64 (+.f64 x #s(literal 1 binary64))) (sqrt.f64 x)) (-.f64 (sqrt.f64 (+.f64 y #s(literal 1 binary64))) (sqrt.f64 y))) (-.f64 (sqrt.f64 (+.f64 z #s(literal 1 binary64))) (sqrt.f64 z))) < 1

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            1. Initial program 92.0%

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              \[\left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            2. Taylor expanded in y around inf

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              \[\leadsto \left(\sqrt{1 + t} + \left(\sqrt{1 + x} + \sqrt{1 + z}\right)\right) - \left(\sqrt{t} + \left(\sqrt{x} + \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              1. Applied rewrites12.1%

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                \[\leadsto \left(\sqrt{1 + t} + \left(\sqrt{1 + x} + \sqrt{1 + z}\right)\right) - \left(\sqrt{t} + \left(\sqrt{x} + \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              2. Taylor expanded in x around inf

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                \[\leadsto \left(\sqrt{1 + t} + \sqrt{1 + z}\right) - \left(\sqrt{t} + \sqrt{z}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                1. Applied rewrites13.4%

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  \[\leadsto \left(\sqrt{1 + t} + \sqrt{1 + z}\right) - \left(\sqrt{t} + \sqrt{z}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                2. Taylor expanded in z around 0

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  \[\leadsto \left(1 + \sqrt{1 + t}\right) - \left(\sqrt{t} + \sqrt{z}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  1. Applied rewrites11.7%

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    \[\leadsto \left(1 + \sqrt{1 + t}\right) - \left(\sqrt{t} + \sqrt{z}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  2. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    1. Applied rewrites24.1%

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      \[\leadsto 1 + \left(\sqrt{t + 1} - \left(\sqrt{t} + \sqrt{z}\right)\right) \]

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    if 1 < (+.f64 (+.f64 (-.f64 (sqrt.f64 (+.f64 x #s(literal 1 binary64))) (sqrt.f64 x)) (-.f64 (sqrt.f64 (+.f64 y #s(literal 1 binary64))) (sqrt.f64 y))) (-.f64 (sqrt.f64 (+.f64 z #s(literal 1 binary64))) (sqrt.f64 z))) < 2.5

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    1. Initial program 92.0%

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      \[\left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    2. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      1. Applied rewrites93.8%

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        \[\leadsto \left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \frac{1}{\sqrt{z} + \sqrt{z + 1}}\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      2. Taylor expanded in t around inf

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        \[\leadsto \left(\sqrt{1 + x} + \left(\sqrt{1 + y} + \frac{1}{\sqrt{z} + \sqrt{1 + z}}\right)\right) - \left(\sqrt{x} + \sqrt{y}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        1. Applied rewrites19.3%

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          \[\leadsto \left(\sqrt{1 + x} + \left(\sqrt{1 + y} + \frac{1}{\sqrt{z} + \sqrt{1 + z}}\right)\right) - \left(\sqrt{x} + \sqrt{y}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        2. Taylor expanded in z around inf

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          \[\leadsto \left(\sqrt{1 + x} + \sqrt{1 + y}\right) - \left(\sqrt{x} + \sqrt{y}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          1. Applied rewrites13.3%

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            \[\leadsto \left(\sqrt{1 + x} + \sqrt{1 + y}\right) - \left(\sqrt{x} + \sqrt{y}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          2. Taylor expanded in x around 0

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            \[\leadsto \left(1 + \sqrt{1 + y}\right) - \left(\sqrt{x} + \sqrt{y}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            1. Applied rewrites11.6%

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              \[\leadsto \left(1 + \sqrt{1 + y}\right) - \left(\sqrt{x} + \sqrt{y}\right) \]

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            if 2.5 < (+.f64 (+.f64 (-.f64 (sqrt.f64 (+.f64 x #s(literal 1 binary64))) (sqrt.f64 x)) (-.f64 (sqrt.f64 (+.f64 y #s(literal 1 binary64))) (sqrt.f64 y))) (-.f64 (sqrt.f64 (+.f64 z #s(literal 1 binary64))) (sqrt.f64 z)))

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            1. Initial program 92.0%

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              \[\left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            2. Taylor expanded in t around inf

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              \[\leadsto \left(\sqrt{1 + x} + \left(\sqrt{1 + y} + \sqrt{1 + z}\right)\right) - \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              1. Applied rewrites12.2%

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                \[\leadsto \left(\sqrt{1 + x} + \left(\sqrt{1 + y} + \sqrt{1 + z}\right)\right) - \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              2. Taylor expanded in y around 0

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                \[\leadsto \left(1 + \left(\sqrt{1 + x} + \sqrt{1 + z}\right)\right) - \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                1. Applied rewrites10.7%

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  \[\leadsto \left(1 + \left(\sqrt{1 + x} + \sqrt{1 + z}\right)\right) - \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                2. Taylor expanded in z around 0

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  \[\leadsto \left(2 + \sqrt{1 + x}\right) - \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  1. Applied rewrites9.4%

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    \[\leadsto \left(2 + \sqrt{1 + x}\right) - \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  2. Taylor expanded in x around 0

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    \[\leadsto 3 - \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    1. Applied rewrites8.2%

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      \[\leadsto 3 - \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  4. Recombined 3 regimes into one program.
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  5. Add Preprocessing

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  Alternative 26: 73.8% accurate, 0.1× speedup?

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  \[\begin{array}{l} t_1 := \mathsf{max}\left(\mathsf{min}\left(x, z\right), t\right)\\ t_2 := \mathsf{min}\left(\mathsf{min}\left(x, z\right), t\right)\\ t_3 := \mathsf{max}\left(y, \mathsf{max}\left(x, z\right)\right)\\ t_4 := \sqrt{t\_2}\\ t_5 := \mathsf{min}\left(y, \mathsf{max}\left(x, z\right)\right)\\ t_6 := \mathsf{max}\left(t\_5, t\_1\right)\\ t_7 := \mathsf{min}\left(t\_5, t\_1\right)\\ t_8 := \mathsf{max}\left(t\_3, t\_6\right)\\ t_9 := \sqrt{t\_7}\\ t_10 := \mathsf{min}\left(t\_3, t\_6\right)\\ t_11 := \sqrt{t\_10}\\ t_12 := \left(\left(\sqrt{t\_2 + 1} - t\_4\right) + \left(\sqrt{t\_7 + 1} - t\_9\right)\right) + \left(\sqrt{t\_10 + 1} - t\_11\right)\\ \mathbf{if}\;t\_12 \leq 1.5:\\ \;\;\;\;1 + \left(\sqrt{t\_8 + 1} - \left(\sqrt{t\_8} + t\_11\right)\right)\\ \mathbf{elif}\;t\_12 \leq 2.5:\\ \;\;\;\;\left(1 + \sqrt{1 + t\_2}\right) - \left(t\_4 + t\_9\right)\\ \mathbf{else}:\\ \;\;\;\;3 - \left(t\_4 + \left(t\_9 + t\_11\right)\right)\\ \end{array} \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  (FPCore (x y z t)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    :precision binary64
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    :pre TRUE
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    (let* ((t_1 (fmax (fmin x z) t))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         (t_2 (fmin (fmin x z) t))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         (t_3 (fmax y (fmax x z)))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         (t_4 (sqrt t_2))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         (t_5 (fmin y (fmax x z)))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         (t_6 (fmax t_5 t_1))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         (t_7 (fmin t_5 t_1))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         (t_8 (fmax t_3 t_6))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         (t_9 (sqrt t_7))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         (t_10 (fmin t_3 t_6))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         (t_11 (sqrt t_10))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         (t_12
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          (+
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           (+ (- (sqrt (+ t_2 1.0)) t_4) (- (sqrt (+ t_7 1.0)) t_9))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           (- (sqrt (+ t_10 1.0)) t_11))))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    (if (<= t_12 1.5)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      (+ 1.0 (- (sqrt (+ t_8 1.0)) (+ (sqrt t_8) t_11)))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      (if (<= t_12 2.5)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        (- (+ 1.0 (sqrt (+ 1.0 t_2))) (+ t_4 t_9))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        (- 3.0 (+ t_4 (+ t_9 t_11)))))))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  double code(double x, double y, double z, double t) {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	double t_1 = fmax(fmin(x, z), t);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	double t_2 = fmin(fmin(x, z), t);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	double t_3 = fmax(y, fmax(x, z));
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	double t_4 = sqrt(t_2);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	double t_5 = fmin(y, fmax(x, z));
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	double t_6 = fmax(t_5, t_1);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	double t_7 = fmin(t_5, t_1);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	double t_8 = fmax(t_3, t_6);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	double t_9 = sqrt(t_7);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	double t_10 = fmin(t_3, t_6);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	double t_11 = sqrt(t_10);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	double t_12 = ((sqrt((t_2 + 1.0)) - t_4) + (sqrt((t_7 + 1.0)) - t_9)) + (sqrt((t_10 + 1.0)) - t_11);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	double tmp;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	if (t_12 <= 1.5) {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  		tmp = 1.0 + (sqrt((t_8 + 1.0)) - (sqrt(t_8) + t_11));
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	} else if (t_12 <= 2.5) {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  		tmp = (1.0 + sqrt((1.0 + t_2))) - (t_4 + t_9);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	} else {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  		tmp = 3.0 - (t_4 + (t_9 + t_11));
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	}
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	return tmp;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  }
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  real(8) function code(x, y, z, t)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  use fmin_fmax_functions
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      real(8), intent (in) :: x
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      real(8), intent (in) :: y
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      real(8), intent (in) :: z
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      real(8), intent (in) :: t
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      real(8) :: t_1
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      real(8) :: t_10
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      real(8) :: t_11
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      real(8) :: t_12
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      real(8) :: t_2
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      real(8) :: t_3
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      real(8) :: t_4
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      real(8) :: t_5
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      real(8) :: t_6
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      real(8) :: t_7
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      real(8) :: t_8
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      real(8) :: t_9
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      real(8) :: tmp
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      t_1 = fmax(fmin(x, z), t)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      t_2 = fmin(fmin(x, z), t)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      t_3 = fmax(y, fmax(x, z))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      t_4 = sqrt(t_2)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      t_5 = fmin(y, fmax(x, z))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      t_6 = fmax(t_5, t_1)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      t_7 = fmin(t_5, t_1)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      t_8 = fmax(t_3, t_6)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      t_9 = sqrt(t_7)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      t_10 = fmin(t_3, t_6)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      t_11 = sqrt(t_10)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      t_12 = ((sqrt((t_2 + 1.0d0)) - t_4) + (sqrt((t_7 + 1.0d0)) - t_9)) + (sqrt((t_10 + 1.0d0)) - t_11)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      if (t_12 <= 1.5d0) then
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          tmp = 1.0d0 + (sqrt((t_8 + 1.0d0)) - (sqrt(t_8) + t_11))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      else if (t_12 <= 2.5d0) then
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          tmp = (1.0d0 + sqrt((1.0d0 + t_2))) - (t_4 + t_9)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      else
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          tmp = 3.0d0 - (t_4 + (t_9 + t_11))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      end if
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      code = tmp
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  end function
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  public static double code(double x, double y, double z, double t) {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	double t_1 = fmax(fmin(x, z), t);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	double t_2 = fmin(fmin(x, z), t);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	double t_3 = fmax(y, fmax(x, z));
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	double t_4 = Math.sqrt(t_2);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	double t_5 = fmin(y, fmax(x, z));
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	double t_6 = fmax(t_5, t_1);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	double t_7 = fmin(t_5, t_1);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	double t_8 = fmax(t_3, t_6);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	double t_9 = Math.sqrt(t_7);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	double t_10 = fmin(t_3, t_6);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	double t_11 = Math.sqrt(t_10);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	double t_12 = ((Math.sqrt((t_2 + 1.0)) - t_4) + (Math.sqrt((t_7 + 1.0)) - t_9)) + (Math.sqrt((t_10 + 1.0)) - t_11);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	double tmp;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	if (t_12 <= 1.5) {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  		tmp = 1.0 + (Math.sqrt((t_8 + 1.0)) - (Math.sqrt(t_8) + t_11));
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	} else if (t_12 <= 2.5) {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  		tmp = (1.0 + Math.sqrt((1.0 + t_2))) - (t_4 + t_9);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	} else {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  		tmp = 3.0 - (t_4 + (t_9 + t_11));
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	}
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	return tmp;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  }
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  def code(x, y, z, t):
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	t_1 = fmax(fmin(x, z), t)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	t_2 = fmin(fmin(x, z), t)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	t_3 = fmax(y, fmax(x, z))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	t_4 = math.sqrt(t_2)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	t_5 = fmin(y, fmax(x, z))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	t_6 = fmax(t_5, t_1)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	t_7 = fmin(t_5, t_1)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	t_8 = fmax(t_3, t_6)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	t_9 = math.sqrt(t_7)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	t_10 = fmin(t_3, t_6)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	t_11 = math.sqrt(t_10)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	t_12 = ((math.sqrt((t_2 + 1.0)) - t_4) + (math.sqrt((t_7 + 1.0)) - t_9)) + (math.sqrt((t_10 + 1.0)) - t_11)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	tmp = 0
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	if t_12 <= 1.5:
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  		tmp = 1.0 + (math.sqrt((t_8 + 1.0)) - (math.sqrt(t_8) + t_11))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	elif t_12 <= 2.5:
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  		tmp = (1.0 + math.sqrt((1.0 + t_2))) - (t_4 + t_9)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	else:
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  		tmp = 3.0 - (t_4 + (t_9 + t_11))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	return tmp
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  function code(x, y, z, t)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	t_1 = fmax(fmin(x, z), t)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	t_2 = fmin(fmin(x, z), t)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	t_3 = fmax(y, fmax(x, z))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	t_4 = sqrt(t_2)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	t_5 = fmin(y, fmax(x, z))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	t_6 = fmax(t_5, t_1)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	t_7 = fmin(t_5, t_1)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	t_8 = fmax(t_3, t_6)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	t_9 = sqrt(t_7)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	t_10 = fmin(t_3, t_6)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	t_11 = sqrt(t_10)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	t_12 = Float64(Float64(Float64(sqrt(Float64(t_2 + 1.0)) - t_4) + Float64(sqrt(Float64(t_7 + 1.0)) - t_9)) + Float64(sqrt(Float64(t_10 + 1.0)) - t_11))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	tmp = 0.0
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	if (t_12 <= 1.5)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  		tmp = Float64(1.0 + Float64(sqrt(Float64(t_8 + 1.0)) - Float64(sqrt(t_8) + t_11)));
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	elseif (t_12 <= 2.5)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  		tmp = Float64(Float64(1.0 + sqrt(Float64(1.0 + t_2))) - Float64(t_4 + t_9));
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	else
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  		tmp = Float64(3.0 - Float64(t_4 + Float64(t_9 + t_11)));
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	end
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	return tmp
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  end
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  function tmp_2 = code(x, y, z, t)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	t_1 = max(min(x, z), t);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	t_2 = min(min(x, z), t);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	t_3 = max(y, max(x, z));
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	t_4 = sqrt(t_2);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	t_5 = min(y, max(x, z));
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	t_6 = max(t_5, t_1);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	t_7 = min(t_5, t_1);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	t_8 = max(t_3, t_6);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	t_9 = sqrt(t_7);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	t_10 = min(t_3, t_6);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	t_11 = sqrt(t_10);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	t_12 = ((sqrt((t_2 + 1.0)) - t_4) + (sqrt((t_7 + 1.0)) - t_9)) + (sqrt((t_10 + 1.0)) - t_11);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	tmp = 0.0;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	if (t_12 <= 1.5)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  		tmp = 1.0 + (sqrt((t_8 + 1.0)) - (sqrt(t_8) + t_11));
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	elseif (t_12 <= 2.5)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  		tmp = (1.0 + sqrt((1.0 + t_2))) - (t_4 + t_9);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	else
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  		tmp = 3.0 - (t_4 + (t_9 + t_11));
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	end
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	tmp_2 = tmp;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  end
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  code[x_, y_, z_, t_] := Block[{t$95$1 = N[Max[N[Min[x, z], $MachinePrecision], t], $MachinePrecision]}, Block[{t$95$2 = N[Min[N[Min[x, z], $MachinePrecision], t], $MachinePrecision]}, Block[{t$95$3 = N[Max[y, N[Max[x, z], $MachinePrecision]], $MachinePrecision]}, Block[{t$95$4 = N[Sqrt[t$95$2], $MachinePrecision]}, Block[{t$95$5 = N[Min[y, N[Max[x, z], $MachinePrecision]], $MachinePrecision]}, Block[{t$95$6 = N[Max[t$95$5, t$95$1], $MachinePrecision]}, Block[{t$95$7 = N[Min[t$95$5, t$95$1], $MachinePrecision]}, Block[{t$95$8 = N[Max[t$95$3, t$95$6], $MachinePrecision]}, Block[{t$95$9 = N[Sqrt[t$95$7], $MachinePrecision]}, Block[{t$95$10 = N[Min[t$95$3, t$95$6], $MachinePrecision]}, Block[{t$95$11 = N[Sqrt[t$95$10], $MachinePrecision]}, Block[{t$95$12 = N[(N[(N[(N[Sqrt[N[(t$95$2 + 1.0), $MachinePrecision]], $MachinePrecision] - t$95$4), $MachinePrecision] + N[(N[Sqrt[N[(t$95$7 + 1.0), $MachinePrecision]], $MachinePrecision] - t$95$9), $MachinePrecision]), $MachinePrecision] + N[(N[Sqrt[N[(t$95$10 + 1.0), $MachinePrecision]], $MachinePrecision] - t$95$11), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[t$95$12, 1.5], N[(1.0 + N[(N[Sqrt[N[(t$95$8 + 1.0), $MachinePrecision]], $MachinePrecision] - N[(N[Sqrt[t$95$8], $MachinePrecision] + t$95$11), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[t$95$12, 2.5], N[(N[(1.0 + N[Sqrt[N[(1.0 + t$95$2), $MachinePrecision]], $MachinePrecision]), $MachinePrecision] - N[(t$95$4 + t$95$9), $MachinePrecision]), $MachinePrecision], N[(3.0 - N[(t$95$4 + N[(t$95$9 + t$95$11), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]]]]]]]]]]]]]]]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  f(x, y, z, t):
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	x in [-inf, +inf],
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	y in [-inf, +inf],
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	z in [-inf, +inf],
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	t in [-inf, +inf]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  code: THEORY
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  BEGIN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  f(x, y, z, t: real): real =
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	LET tmp_2 = IF (x < z) THEN x ELSE z ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	LET tmp_3 = IF (x < z) THEN x ELSE z ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	LET tmp_1 = IF (tmp_2 > t) THEN tmp_3 ELSE t ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	LET t_1 = tmp_1 IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  		LET tmp_6 = IF (x < z) THEN x ELSE z ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  		LET tmp_7 = IF (x < z) THEN x ELSE z ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  		LET tmp_5 = IF (tmp_6 < t) THEN tmp_7 ELSE t ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  		LET t_2 = tmp_5 IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  			LET tmp_9 = IF (x > z) THEN x ELSE z ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  			LET tmp_10 = IF (x > z) THEN x ELSE z ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  			LET tmp_8 = IF (y > tmp_9) THEN y ELSE tmp_10 ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  			LET t_3 = tmp_8 IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  				LET t_4 = (sqrt(t_2)) IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  					LET tmp_12 = IF (x > z) THEN x ELSE z ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  					LET tmp_13 = IF (x > z) THEN x ELSE z ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  					LET tmp_11 = IF (y < tmp_12) THEN y ELSE tmp_13 ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  					LET t_5 = tmp_11 IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  						LET tmp_14 = IF (t_5 > t_1) THEN t_5 ELSE t_1 ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  						LET t_6 = tmp_14 IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  							LET tmp_15 = IF (t_5 < t_1) THEN t_5 ELSE t_1 ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  							LET t_7 = tmp_15 IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  								LET tmp_16 = IF (t_3 > t_6) THEN t_3 ELSE t_6 ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  								LET t_8 = tmp_16 IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  									LET t_9 = (sqrt(t_7)) IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  										LET tmp_17 = IF (t_3 < t_6) THEN t_3 ELSE t_6 ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  										LET t_10 = tmp_17 IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  											LET t_11 = (sqrt(t_10)) IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  												LET t_12 = ((((sqrt((t_2 + (1)))) - t_4) + ((sqrt((t_7 + (1)))) - t_9)) + ((sqrt((t_10 + (1)))) - t_11)) IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  													LET tmp_19 = IF (t_12 <= (25e-1)) THEN (((1) + (sqrt(((1) + t_2)))) - (t_4 + t_9)) ELSE ((3) - (t_4 + (t_9 + t_11))) ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  													LET tmp_18 = IF (t_12 <= (15e-1)) THEN ((1) + ((sqrt((t_8 + (1)))) - ((sqrt(t_8)) + t_11))) ELSE tmp_19 ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	tmp_18
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  END code
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  \begin{array}{l}
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  t_1 := \mathsf{max}\left(\mathsf{min}\left(x, z\right), t\right)\\
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  t_2 := \mathsf{min}\left(\mathsf{min}\left(x, z\right), t\right)\\
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  t_3 := \mathsf{max}\left(y, \mathsf{max}\left(x, z\right)\right)\\
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  t_4 := \sqrt{t\_2}\\
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  t_5 := \mathsf{min}\left(y, \mathsf{max}\left(x, z\right)\right)\\
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  t_6 := \mathsf{max}\left(t\_5, t\_1\right)\\
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  t_7 := \mathsf{min}\left(t\_5, t\_1\right)\\
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  t_8 := \mathsf{max}\left(t\_3, t\_6\right)\\
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  t_9 := \sqrt{t\_7}\\
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  t_10 := \mathsf{min}\left(t\_3, t\_6\right)\\
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  t_11 := \sqrt{t\_10}\\
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  t_12 := \left(\left(\sqrt{t\_2 + 1} - t\_4\right) + \left(\sqrt{t\_7 + 1} - t\_9\right)\right) + \left(\sqrt{t\_10 + 1} - t\_11\right)\\
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  \mathbf{if}\;t\_12 \leq 1.5:\\
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  \;\;\;\;1 + \left(\sqrt{t\_8 + 1} - \left(\sqrt{t\_8} + t\_11\right)\right)\\
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  \mathbf{elif}\;t\_12 \leq 2.5:\\
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  \;\;\;\;\left(1 + \sqrt{1 + t\_2}\right) - \left(t\_4 + t\_9\right)\\
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  \mathbf{else}:\\
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  \;\;\;\;3 - \left(t\_4 + \left(t\_9 + t\_11\right)\right)\\
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  \end{array}
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  Derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  1. Split input into 3 regimes
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  2. if (+.f64 (+.f64 (-.f64 (sqrt.f64 (+.f64 x #s(literal 1 binary64))) (sqrt.f64 x)) (-.f64 (sqrt.f64 (+.f64 y #s(literal 1 binary64))) (sqrt.f64 y))) (-.f64 (sqrt.f64 (+.f64 z #s(literal 1 binary64))) (sqrt.f64 z))) < 1.5

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    1. Initial program 92.0%

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      \[\left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    2. Taylor expanded in y around inf

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      \[\leadsto \left(\sqrt{1 + t} + \left(\sqrt{1 + x} + \sqrt{1 + z}\right)\right) - \left(\sqrt{t} + \left(\sqrt{x} + \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      1. Applied rewrites12.1%

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        \[\leadsto \left(\sqrt{1 + t} + \left(\sqrt{1 + x} + \sqrt{1 + z}\right)\right) - \left(\sqrt{t} + \left(\sqrt{x} + \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      2. Taylor expanded in x around inf

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        \[\leadsto \left(\sqrt{1 + t} + \sqrt{1 + z}\right) - \left(\sqrt{t} + \sqrt{z}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        1. Applied rewrites13.4%

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          \[\leadsto \left(\sqrt{1 + t} + \sqrt{1 + z}\right) - \left(\sqrt{t} + \sqrt{z}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        2. Taylor expanded in z around 0

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          \[\leadsto \left(1 + \sqrt{1 + t}\right) - \left(\sqrt{t} + \sqrt{z}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          1. Applied rewrites11.7%

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            \[\leadsto \left(1 + \sqrt{1 + t}\right) - \left(\sqrt{t} + \sqrt{z}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          2. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            1. Applied rewrites24.1%

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              \[\leadsto 1 + \left(\sqrt{t + 1} - \left(\sqrt{t} + \sqrt{z}\right)\right) \]

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            if 1.5 < (+.f64 (+.f64 (-.f64 (sqrt.f64 (+.f64 x #s(literal 1 binary64))) (sqrt.f64 x)) (-.f64 (sqrt.f64 (+.f64 y #s(literal 1 binary64))) (sqrt.f64 y))) (-.f64 (sqrt.f64 (+.f64 z #s(literal 1 binary64))) (sqrt.f64 z))) < 2.5

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            1. Initial program 92.0%

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              \[\left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            2. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              1. Applied rewrites93.8%

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                \[\leadsto \left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \frac{1}{\sqrt{z} + \sqrt{z + 1}}\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              2. Taylor expanded in t around inf

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                \[\leadsto \left(\sqrt{1 + x} + \left(\sqrt{1 + y} + \frac{1}{\sqrt{z} + \sqrt{1 + z}}\right)\right) - \left(\sqrt{x} + \sqrt{y}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                1. Applied rewrites19.3%

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  \[\leadsto \left(\sqrt{1 + x} + \left(\sqrt{1 + y} + \frac{1}{\sqrt{z} + \sqrt{1 + z}}\right)\right) - \left(\sqrt{x} + \sqrt{y}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                2. Taylor expanded in z around inf

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  \[\leadsto \left(\sqrt{1 + x} + \sqrt{1 + y}\right) - \left(\sqrt{x} + \sqrt{y}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  1. Applied rewrites13.3%

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    \[\leadsto \left(\sqrt{1 + x} + \sqrt{1 + y}\right) - \left(\sqrt{x} + \sqrt{y}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  2. Taylor expanded in y around 0

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    \[\leadsto \left(1 + \sqrt{1 + x}\right) - \left(\sqrt{x} + \sqrt{y}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    1. Applied rewrites11.5%

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      \[\leadsto \left(1 + \sqrt{1 + x}\right) - \left(\sqrt{x} + \sqrt{y}\right) \]

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    if 2.5 < (+.f64 (+.f64 (-.f64 (sqrt.f64 (+.f64 x #s(literal 1 binary64))) (sqrt.f64 x)) (-.f64 (sqrt.f64 (+.f64 y #s(literal 1 binary64))) (sqrt.f64 y))) (-.f64 (sqrt.f64 (+.f64 z #s(literal 1 binary64))) (sqrt.f64 z)))

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    1. Initial program 92.0%

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      \[\left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    2. Taylor expanded in t around inf

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      \[\leadsto \left(\sqrt{1 + x} + \left(\sqrt{1 + y} + \sqrt{1 + z}\right)\right) - \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      1. Applied rewrites12.2%

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        \[\leadsto \left(\sqrt{1 + x} + \left(\sqrt{1 + y} + \sqrt{1 + z}\right)\right) - \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      2. Taylor expanded in y around 0

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        \[\leadsto \left(1 + \left(\sqrt{1 + x} + \sqrt{1 + z}\right)\right) - \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        1. Applied rewrites10.7%

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          \[\leadsto \left(1 + \left(\sqrt{1 + x} + \sqrt{1 + z}\right)\right) - \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        2. Taylor expanded in z around 0

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          \[\leadsto \left(2 + \sqrt{1 + x}\right) - \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          1. Applied rewrites9.4%

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            \[\leadsto \left(2 + \sqrt{1 + x}\right) - \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          2. Taylor expanded in x around 0

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            \[\leadsto 3 - \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            1. Applied rewrites8.2%

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              \[\leadsto 3 - \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          4. Recombined 3 regimes into one program.
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          5. Add Preprocessing

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          Alternative 27: 46.8% accurate, 0.6× speedup?

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          \[\begin{array}{l} t_1 := \mathsf{max}\left(\mathsf{max}\left(y, z\right), \mathsf{max}\left(x, t\right)\right)\\ t_2 := \mathsf{min}\left(\mathsf{max}\left(y, z\right), \mathsf{max}\left(x, t\right)\right)\\ t_3 := \sqrt{t\_2}\\ \mathbf{if}\;\sqrt{t\_2 + 1} - t\_3 \leq 0.2:\\ \;\;\;\;1 + \left(\sqrt{t\_1 + 1} - \left(\sqrt{t\_1} + t\_3\right)\right)\\ \mathbf{else}:\\ \;\;\;\;3 - \left(\sqrt{\mathsf{min}\left(x, t\right)} + \left(\sqrt{\mathsf{min}\left(y, z\right)} + t\_3\right)\right)\\ \end{array} \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          (FPCore (x y z t)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            :precision binary64
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            :pre TRUE
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            (let* ((t_1 (fmax (fmax y z) (fmax x t)))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 (t_2 (fmin (fmax y z) (fmax x t)))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 (t_3 (sqrt t_2)))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            (if (<= (- (sqrt (+ t_2 1.0)) t_3) 0.2)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              (+ 1.0 (- (sqrt (+ t_1 1.0)) (+ (sqrt t_1) t_3)))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              (- 3.0 (+ (sqrt (fmin x t)) (+ (sqrt (fmin y z)) t_3))))))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          double code(double x, double y, double z, double t) {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_1 = fmax(fmax(y, z), fmax(x, t));
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_2 = fmin(fmax(y, z), fmax(x, t));
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_3 = sqrt(t_2);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	double tmp;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	if ((sqrt((t_2 + 1.0)) - t_3) <= 0.2) {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          		tmp = 1.0 + (sqrt((t_1 + 1.0)) - (sqrt(t_1) + t_3));
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	} else {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          		tmp = 3.0 - (sqrt(fmin(x, t)) + (sqrt(fmin(y, z)) + t_3));
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	}
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	return tmp;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          }
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          real(8) function code(x, y, z, t)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          use fmin_fmax_functions
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              real(8), intent (in) :: x
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              real(8), intent (in) :: y
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              real(8), intent (in) :: z
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              real(8), intent (in) :: t
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              real(8) :: t_1
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              real(8) :: t_2
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              real(8) :: t_3
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              real(8) :: tmp
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              t_1 = fmax(fmax(y, z), fmax(x, t))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              t_2 = fmin(fmax(y, z), fmax(x, t))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              t_3 = sqrt(t_2)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              if ((sqrt((t_2 + 1.0d0)) - t_3) <= 0.2d0) then
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  tmp = 1.0d0 + (sqrt((t_1 + 1.0d0)) - (sqrt(t_1) + t_3))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              else
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  tmp = 3.0d0 - (sqrt(fmin(x, t)) + (sqrt(fmin(y, z)) + t_3))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              end if
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              code = tmp
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          end function
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          public static double code(double x, double y, double z, double t) {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_1 = fmax(fmax(y, z), fmax(x, t));
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_2 = fmin(fmax(y, z), fmax(x, t));
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_3 = Math.sqrt(t_2);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	double tmp;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	if ((Math.sqrt((t_2 + 1.0)) - t_3) <= 0.2) {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          		tmp = 1.0 + (Math.sqrt((t_1 + 1.0)) - (Math.sqrt(t_1) + t_3));
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	} else {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          		tmp = 3.0 - (Math.sqrt(fmin(x, t)) + (Math.sqrt(fmin(y, z)) + t_3));
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	}
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	return tmp;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          }
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          def code(x, y, z, t):
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_1 = fmax(fmax(y, z), fmax(x, t))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_2 = fmin(fmax(y, z), fmax(x, t))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_3 = math.sqrt(t_2)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	tmp = 0
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	if (math.sqrt((t_2 + 1.0)) - t_3) <= 0.2:
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          		tmp = 1.0 + (math.sqrt((t_1 + 1.0)) - (math.sqrt(t_1) + t_3))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	else:
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          		tmp = 3.0 - (math.sqrt(fmin(x, t)) + (math.sqrt(fmin(y, z)) + t_3))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	return tmp
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          function code(x, y, z, t)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_1 = fmax(fmax(y, z), fmax(x, t))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_2 = fmin(fmax(y, z), fmax(x, t))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_3 = sqrt(t_2)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	tmp = 0.0
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	if (Float64(sqrt(Float64(t_2 + 1.0)) - t_3) <= 0.2)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          		tmp = Float64(1.0 + Float64(sqrt(Float64(t_1 + 1.0)) - Float64(sqrt(t_1) + t_3)));
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	else
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          		tmp = Float64(3.0 - Float64(sqrt(fmin(x, t)) + Float64(sqrt(fmin(y, z)) + t_3)));
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	end
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	return tmp
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          end
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          function tmp_2 = code(x, y, z, t)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_1 = max(max(y, z), max(x, t));
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_2 = min(max(y, z), max(x, t));
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_3 = sqrt(t_2);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	tmp = 0.0;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	if ((sqrt((t_2 + 1.0)) - t_3) <= 0.2)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          		tmp = 1.0 + (sqrt((t_1 + 1.0)) - (sqrt(t_1) + t_3));
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	else
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          		tmp = 3.0 - (sqrt(min(x, t)) + (sqrt(min(y, z)) + t_3));
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	end
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	tmp_2 = tmp;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          end
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          code[x_, y_, z_, t_] := Block[{t$95$1 = N[Max[N[Max[y, z], $MachinePrecision], N[Max[x, t], $MachinePrecision]], $MachinePrecision]}, Block[{t$95$2 = N[Min[N[Max[y, z], $MachinePrecision], N[Max[x, t], $MachinePrecision]], $MachinePrecision]}, Block[{t$95$3 = N[Sqrt[t$95$2], $MachinePrecision]}, If[LessEqual[N[(N[Sqrt[N[(t$95$2 + 1.0), $MachinePrecision]], $MachinePrecision] - t$95$3), $MachinePrecision], 0.2], N[(1.0 + N[(N[Sqrt[N[(t$95$1 + 1.0), $MachinePrecision]], $MachinePrecision] - N[(N[Sqrt[t$95$1], $MachinePrecision] + t$95$3), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], N[(3.0 - N[(N[Sqrt[N[Min[x, t], $MachinePrecision]], $MachinePrecision] + N[(N[Sqrt[N[Min[y, z], $MachinePrecision]], $MachinePrecision] + t$95$3), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]]]]]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          f(x, y, z, t):
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	x in [-inf, +inf],
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	y in [-inf, +inf],
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	z in [-inf, +inf],
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t in [-inf, +inf]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          code: THEORY
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          BEGIN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          f(x, y, z, t: real): real =
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	LET tmp_2 = IF (y > z) THEN y ELSE z ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	LET tmp_3 = IF (x > t) THEN x ELSE t ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	LET tmp_4 = IF (y > z) THEN y ELSE z ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	LET tmp_5 = IF (x > t) THEN x ELSE t ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	LET tmp_1 = IF (tmp_2 > tmp_3) THEN tmp_4 ELSE tmp_5 ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	LET t_1 = tmp_1 IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          		LET tmp_8 = IF (y > z) THEN y ELSE z ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          		LET tmp_9 = IF (x > t) THEN x ELSE t ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          		LET tmp_10 = IF (y > z) THEN y ELSE z ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          		LET tmp_11 = IF (x > t) THEN x ELSE t ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          		LET tmp_7 = IF (tmp_8 < tmp_9) THEN tmp_10 ELSE tmp_11 ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          		LET t_2 = tmp_7 IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          			LET t_3 = (sqrt(t_2)) IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          				LET tmp_13 = IF (x < t) THEN x ELSE t ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          				LET tmp_14 = IF (y < z) THEN y ELSE z ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          				LET tmp_12 = IF (((sqrt((t_2 + (1)))) - t_3) <= (200000000000000011102230246251565404236316680908203125e-54)) THEN ((1) + ((sqrt((t_1 + (1)))) - ((sqrt(t_1)) + t_3))) ELSE ((3) - ((sqrt(tmp_13)) + ((sqrt(tmp_14)) + t_3))) ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	tmp_12
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          END code
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          \begin{array}{l}
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          t_1 := \mathsf{max}\left(\mathsf{max}\left(y, z\right), \mathsf{max}\left(x, t\right)\right)\\
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          t_2 := \mathsf{min}\left(\mathsf{max}\left(y, z\right), \mathsf{max}\left(x, t\right)\right)\\
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          t_3 := \sqrt{t\_2}\\
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          \mathbf{if}\;\sqrt{t\_2 + 1} - t\_3 \leq 0.2:\\
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          \;\;\;\;1 + \left(\sqrt{t\_1 + 1} - \left(\sqrt{t\_1} + t\_3\right)\right)\\
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          \mathbf{else}:\\
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          \;\;\;\;3 - \left(\sqrt{\mathsf{min}\left(x, t\right)} + \left(\sqrt{\mathsf{min}\left(y, z\right)} + t\_3\right)\right)\\
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          \end{array}
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          Derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          1. Split input into 2 regimes
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          2. if (-.f64 (sqrt.f64 (+.f64 z #s(literal 1 binary64))) (sqrt.f64 z)) < 0.20000000000000001

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            1. Initial program 92.0%

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              \[\left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            2. Taylor expanded in y around inf

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              \[\leadsto \left(\sqrt{1 + t} + \left(\sqrt{1 + x} + \sqrt{1 + z}\right)\right) - \left(\sqrt{t} + \left(\sqrt{x} + \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              1. Applied rewrites12.1%

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                \[\leadsto \left(\sqrt{1 + t} + \left(\sqrt{1 + x} + \sqrt{1 + z}\right)\right) - \left(\sqrt{t} + \left(\sqrt{x} + \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              2. Taylor expanded in x around inf

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                \[\leadsto \left(\sqrt{1 + t} + \sqrt{1 + z}\right) - \left(\sqrt{t} + \sqrt{z}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                1. Applied rewrites13.4%

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  \[\leadsto \left(\sqrt{1 + t} + \sqrt{1 + z}\right) - \left(\sqrt{t} + \sqrt{z}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                2. Taylor expanded in z around 0

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  \[\leadsto \left(1 + \sqrt{1 + t}\right) - \left(\sqrt{t} + \sqrt{z}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  1. Applied rewrites11.7%

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    \[\leadsto \left(1 + \sqrt{1 + t}\right) - \left(\sqrt{t} + \sqrt{z}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  2. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    1. Applied rewrites24.1%

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      \[\leadsto 1 + \left(\sqrt{t + 1} - \left(\sqrt{t} + \sqrt{z}\right)\right) \]

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    if 0.20000000000000001 < (-.f64 (sqrt.f64 (+.f64 z #s(literal 1 binary64))) (sqrt.f64 z))

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    1. Initial program 92.0%

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      \[\left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    2. Taylor expanded in t around inf

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      \[\leadsto \left(\sqrt{1 + x} + \left(\sqrt{1 + y} + \sqrt{1 + z}\right)\right) - \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      1. Applied rewrites12.2%

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        \[\leadsto \left(\sqrt{1 + x} + \left(\sqrt{1 + y} + \sqrt{1 + z}\right)\right) - \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      2. Taylor expanded in y around 0

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        \[\leadsto \left(1 + \left(\sqrt{1 + x} + \sqrt{1 + z}\right)\right) - \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        1. Applied rewrites10.7%

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          \[\leadsto \left(1 + \left(\sqrt{1 + x} + \sqrt{1 + z}\right)\right) - \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        2. Taylor expanded in z around 0

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          \[\leadsto \left(2 + \sqrt{1 + x}\right) - \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          1. Applied rewrites9.4%

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            \[\leadsto \left(2 + \sqrt{1 + x}\right) - \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          2. Taylor expanded in x around 0

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            \[\leadsto 3 - \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            1. Applied rewrites8.2%

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              \[\leadsto 3 - \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          4. Recombined 2 regimes into one program.
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          5. Add Preprocessing

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          Alternative 28: 29.8% accurate, 0.4× speedup?

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          \[\begin{array}{l} t_1 := \mathsf{min}\left(y, \mathsf{max}\left(x, z\right)\right)\\ t_2 := \mathsf{max}\left(\mathsf{min}\left(x, z\right), t\right)\\ t_3 := \mathsf{min}\left(\mathsf{max}\left(y, \mathsf{max}\left(x, z\right)\right), \mathsf{max}\left(t\_1, t\_2\right)\right)\\ t_4 := \sqrt{t\_3}\\ \mathbf{if}\;\sqrt{t\_3 + 1} - t\_4 \leq 0.2:\\ \;\;\;\;\frac{1}{t\_4 + \sqrt{1 + t\_3}}\\ \mathbf{else}:\\ \;\;\;\;3 - \left(\sqrt{\mathsf{min}\left(\mathsf{min}\left(x, z\right), t\right)} + \left(\sqrt{\mathsf{min}\left(t\_1, t\_2\right)} + t\_4\right)\right)\\ \end{array} \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          (FPCore (x y z t)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            :precision binary64
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            :pre TRUE
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            (let* ((t_1 (fmin y (fmax x z)))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 (t_2 (fmax (fmin x z) t))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 (t_3 (fmin (fmax y (fmax x z)) (fmax t_1 t_2)))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 (t_4 (sqrt t_3)))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            (if (<= (- (sqrt (+ t_3 1.0)) t_4) 0.2)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              (/ 1.0 (+ t_4 (sqrt (+ 1.0 t_3))))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              (-
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               3.0
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               (+ (sqrt (fmin (fmin x z) t)) (+ (sqrt (fmin t_1 t_2)) t_4))))))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          double code(double x, double y, double z, double t) {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_1 = fmin(y, fmax(x, z));
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_2 = fmax(fmin(x, z), t);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_3 = fmin(fmax(y, fmax(x, z)), fmax(t_1, t_2));
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_4 = sqrt(t_3);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	double tmp;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	if ((sqrt((t_3 + 1.0)) - t_4) <= 0.2) {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          		tmp = 1.0 / (t_4 + sqrt((1.0 + t_3)));
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	} else {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          		tmp = 3.0 - (sqrt(fmin(fmin(x, z), t)) + (sqrt(fmin(t_1, t_2)) + t_4));
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	}
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	return tmp;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          }
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          real(8) function code(x, y, z, t)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          use fmin_fmax_functions
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              real(8), intent (in) :: x
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              real(8), intent (in) :: y
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              real(8), intent (in) :: z
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              real(8), intent (in) :: t
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              real(8) :: t_1
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              real(8) :: t_2
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              real(8) :: t_3
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              real(8) :: t_4
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              real(8) :: tmp
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              t_1 = fmin(y, fmax(x, z))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              t_2 = fmax(fmin(x, z), t)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              t_3 = fmin(fmax(y, fmax(x, z)), fmax(t_1, t_2))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              t_4 = sqrt(t_3)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              if ((sqrt((t_3 + 1.0d0)) - t_4) <= 0.2d0) then
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  tmp = 1.0d0 / (t_4 + sqrt((1.0d0 + t_3)))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              else
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  tmp = 3.0d0 - (sqrt(fmin(fmin(x, z), t)) + (sqrt(fmin(t_1, t_2)) + t_4))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              end if
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              code = tmp
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          end function
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          public static double code(double x, double y, double z, double t) {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_1 = fmin(y, fmax(x, z));
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_2 = fmax(fmin(x, z), t);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_3 = fmin(fmax(y, fmax(x, z)), fmax(t_1, t_2));
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	double t_4 = Math.sqrt(t_3);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	double tmp;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	if ((Math.sqrt((t_3 + 1.0)) - t_4) <= 0.2) {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          		tmp = 1.0 / (t_4 + Math.sqrt((1.0 + t_3)));
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	} else {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          		tmp = 3.0 - (Math.sqrt(fmin(fmin(x, z), t)) + (Math.sqrt(fmin(t_1, t_2)) + t_4));
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	}
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	return tmp;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          }
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          def code(x, y, z, t):
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_1 = fmin(y, fmax(x, z))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_2 = fmax(fmin(x, z), t)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_3 = fmin(fmax(y, fmax(x, z)), fmax(t_1, t_2))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_4 = math.sqrt(t_3)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	tmp = 0
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	if (math.sqrt((t_3 + 1.0)) - t_4) <= 0.2:
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          		tmp = 1.0 / (t_4 + math.sqrt((1.0 + t_3)))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	else:
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          		tmp = 3.0 - (math.sqrt(fmin(fmin(x, z), t)) + (math.sqrt(fmin(t_1, t_2)) + t_4))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	return tmp
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          function code(x, y, z, t)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_1 = fmin(y, fmax(x, z))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_2 = fmax(fmin(x, z), t)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_3 = fmin(fmax(y, fmax(x, z)), fmax(t_1, t_2))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_4 = sqrt(t_3)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	tmp = 0.0
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	if (Float64(sqrt(Float64(t_3 + 1.0)) - t_4) <= 0.2)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          		tmp = Float64(1.0 / Float64(t_4 + sqrt(Float64(1.0 + t_3))));
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	else
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          		tmp = Float64(3.0 - Float64(sqrt(fmin(fmin(x, z), t)) + Float64(sqrt(fmin(t_1, t_2)) + t_4)));
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	end
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	return tmp
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          end
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          function tmp_2 = code(x, y, z, t)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_1 = min(y, max(x, z));
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_2 = max(min(x, z), t);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_3 = min(max(y, max(x, z)), max(t_1, t_2));
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t_4 = sqrt(t_3);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	tmp = 0.0;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	if ((sqrt((t_3 + 1.0)) - t_4) <= 0.2)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          		tmp = 1.0 / (t_4 + sqrt((1.0 + t_3)));
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	else
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          		tmp = 3.0 - (sqrt(min(min(x, z), t)) + (sqrt(min(t_1, t_2)) + t_4));
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	end
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	tmp_2 = tmp;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          end
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          code[x_, y_, z_, t_] := Block[{t$95$1 = N[Min[y, N[Max[x, z], $MachinePrecision]], $MachinePrecision]}, Block[{t$95$2 = N[Max[N[Min[x, z], $MachinePrecision], t], $MachinePrecision]}, Block[{t$95$3 = N[Min[N[Max[y, N[Max[x, z], $MachinePrecision]], $MachinePrecision], N[Max[t$95$1, t$95$2], $MachinePrecision]], $MachinePrecision]}, Block[{t$95$4 = N[Sqrt[t$95$3], $MachinePrecision]}, If[LessEqual[N[(N[Sqrt[N[(t$95$3 + 1.0), $MachinePrecision]], $MachinePrecision] - t$95$4), $MachinePrecision], 0.2], N[(1.0 / N[(t$95$4 + N[Sqrt[N[(1.0 + t$95$3), $MachinePrecision]], $MachinePrecision]), $MachinePrecision]), $MachinePrecision], N[(3.0 - N[(N[Sqrt[N[Min[N[Min[x, z], $MachinePrecision], t], $MachinePrecision]], $MachinePrecision] + N[(N[Sqrt[N[Min[t$95$1, t$95$2], $MachinePrecision]], $MachinePrecision] + t$95$4), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]]]]]]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          f(x, y, z, t):
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	x in [-inf, +inf],
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	y in [-inf, +inf],
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	z in [-inf, +inf],
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t in [-inf, +inf]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          code: THEORY
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          BEGIN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          f(x, y, z, t: real): real =
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	LET tmp_1 = IF (x > z) THEN x ELSE z ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	LET tmp_2 = IF (x > z) THEN x ELSE z ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	LET tmp = IF (y < tmp_1) THEN y ELSE tmp_2 ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	LET t_1 = tmp IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          		LET tmp_5 = IF (x < z) THEN x ELSE z ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          		LET tmp_6 = IF (x < z) THEN x ELSE z ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          		LET tmp_4 = IF (tmp_5 > t) THEN tmp_6 ELSE t ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          		LET t_2 = tmp_4 IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          			LET tmp_12 = IF (x > z) THEN x ELSE z ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          			LET tmp_13 = IF (x > z) THEN x ELSE z ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          			LET tmp_11 = IF (y > tmp_12) THEN y ELSE tmp_13 ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          			LET tmp_14 = IF (t_1 > t_2) THEN t_1 ELSE t_2 ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          			LET tmp_16 = IF (x > z) THEN x ELSE z ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          			LET tmp_17 = IF (x > z) THEN x ELSE z ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          			LET tmp_15 = IF (y > tmp_16) THEN y ELSE tmp_17 ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          			LET tmp_18 = IF (t_1 > t_2) THEN t_1 ELSE t_2 ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          			LET tmp_10 = IF (tmp_11 < tmp_14) THEN tmp_15 ELSE tmp_18 ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          			LET t_3 = tmp_10 IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          				LET t_4 = (sqrt(t_3)) IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          					LET tmp_22 = IF (x < z) THEN x ELSE z ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          					LET tmp_23 = IF (x < z) THEN x ELSE z ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          					LET tmp_21 = IF (tmp_22 < t) THEN tmp_23 ELSE t ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          					LET tmp_24 = IF (t_1 < t_2) THEN t_1 ELSE t_2 ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          					LET tmp_19 = IF (((sqrt((t_3 + (1)))) - t_4) <= (200000000000000011102230246251565404236316680908203125e-54)) THEN ((1) / (t_4 + (sqrt(((1) + t_3))))) ELSE ((3) - ((sqrt(tmp_21)) + ((sqrt(tmp_24)) + t_4))) ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	tmp_19
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          END code
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          \begin{array}{l}
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          t_1 := \mathsf{min}\left(y, \mathsf{max}\left(x, z\right)\right)\\
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          t_2 := \mathsf{max}\left(\mathsf{min}\left(x, z\right), t\right)\\
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          t_3 := \mathsf{min}\left(\mathsf{max}\left(y, \mathsf{max}\left(x, z\right)\right), \mathsf{max}\left(t\_1, t\_2\right)\right)\\
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          t_4 := \sqrt{t\_3}\\
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          \mathbf{if}\;\sqrt{t\_3 + 1} - t\_4 \leq 0.2:\\
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          \;\;\;\;\frac{1}{t\_4 + \sqrt{1 + t\_3}}\\
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          \mathbf{else}:\\
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          \;\;\;\;3 - \left(\sqrt{\mathsf{min}\left(\mathsf{min}\left(x, z\right), t\right)} + \left(\sqrt{\mathsf{min}\left(t\_1, t\_2\right)} + t\_4\right)\right)\\
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          \end{array}
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          Derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          1. Split input into 2 regimes
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          2. if (-.f64 (sqrt.f64 (+.f64 z #s(literal 1 binary64))) (sqrt.f64 z)) < 0.20000000000000001

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            1. Initial program 92.0%

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              \[\left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            2. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              1. Applied rewrites93.8%

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                \[\leadsto \left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \frac{1}{\sqrt{z} + \sqrt{z + 1}}\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              2. Taylor expanded in t around inf

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                \[\leadsto \left(\sqrt{1 + x} + \left(\sqrt{1 + y} + \frac{1}{\sqrt{z} + \sqrt{1 + z}}\right)\right) - \left(\sqrt{x} + \sqrt{y}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                1. Applied rewrites19.3%

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  \[\leadsto \left(\sqrt{1 + x} + \left(\sqrt{1 + y} + \frac{1}{\sqrt{z} + \sqrt{1 + z}}\right)\right) - \left(\sqrt{x} + \sqrt{y}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                2. Taylor expanded in y around inf

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  \[\leadsto \left(\sqrt{1 + x} + \frac{1}{\sqrt{z} + \sqrt{1 + z}}\right) - \sqrt{x} \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  1. Applied rewrites21.6%

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    \[\leadsto \left(\sqrt{1 + x} + \frac{1}{\sqrt{z} + \sqrt{1 + z}}\right) - \sqrt{x} \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  2. Taylor expanded in x around inf

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    \[\leadsto \frac{1}{\sqrt{z} + \sqrt{1 + z}} \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    1. Applied rewrites18.1%

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      \[\leadsto \frac{1}{\sqrt{z} + \sqrt{1 + z}} \]

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    if 0.20000000000000001 < (-.f64 (sqrt.f64 (+.f64 z #s(literal 1 binary64))) (sqrt.f64 z))

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    1. Initial program 92.0%

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      \[\left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    2. Taylor expanded in t around inf

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      \[\leadsto \left(\sqrt{1 + x} + \left(\sqrt{1 + y} + \sqrt{1 + z}\right)\right) - \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      1. Applied rewrites12.2%

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        \[\leadsto \left(\sqrt{1 + x} + \left(\sqrt{1 + y} + \sqrt{1 + z}\right)\right) - \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      2. Taylor expanded in y around 0

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        \[\leadsto \left(1 + \left(\sqrt{1 + x} + \sqrt{1 + z}\right)\right) - \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        1. Applied rewrites10.7%

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          \[\leadsto \left(1 + \left(\sqrt{1 + x} + \sqrt{1 + z}\right)\right) - \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        2. Taylor expanded in z around 0

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          \[\leadsto \left(2 + \sqrt{1 + x}\right) - \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          1. Applied rewrites9.4%

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            \[\leadsto \left(2 + \sqrt{1 + x}\right) - \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          2. Taylor expanded in x around 0

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            \[\leadsto 3 - \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            1. Applied rewrites8.2%

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              \[\leadsto 3 - \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          4. Recombined 2 regimes into one program.
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          5. Add Preprocessing

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          Alternative 29: 26.6% accurate, 2.3× speedup?

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          \[\frac{1}{\sqrt{\mathsf{min}\left(z, t\right)} + \sqrt{1 + \mathsf{min}\left(z, t\right)}} \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          (FPCore (x y z t)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            :precision binary64
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            :pre TRUE
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            (/ 1.0 (+ (sqrt (fmin z t)) (sqrt (+ 1.0 (fmin z t))))))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          double code(double x, double y, double z, double t) {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	return 1.0 / (sqrt(fmin(z, t)) + sqrt((1.0 + fmin(z, t))));
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          }
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          real(8) function code(x, y, z, t)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          use fmin_fmax_functions
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              real(8), intent (in) :: x
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              real(8), intent (in) :: y
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              real(8), intent (in) :: z
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              real(8), intent (in) :: t
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              code = 1.0d0 / (sqrt(fmin(z, t)) + sqrt((1.0d0 + fmin(z, t))))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          end function
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          public static double code(double x, double y, double z, double t) {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	return 1.0 / (Math.sqrt(fmin(z, t)) + Math.sqrt((1.0 + fmin(z, t))));
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          }
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          def code(x, y, z, t):
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	return 1.0 / (math.sqrt(fmin(z, t)) + math.sqrt((1.0 + fmin(z, t))))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          function code(x, y, z, t)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	return Float64(1.0 / Float64(sqrt(fmin(z, t)) + sqrt(Float64(1.0 + fmin(z, t)))))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          end
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          function tmp = code(x, y, z, t)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	tmp = 1.0 / (sqrt(min(z, t)) + sqrt((1.0 + min(z, t))));
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          end
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          code[x_, y_, z_, t_] := N[(1.0 / N[(N[Sqrt[N[Min[z, t], $MachinePrecision]], $MachinePrecision] + N[Sqrt[N[(1.0 + N[Min[z, t], $MachinePrecision]), $MachinePrecision]], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          f(x, y, z, t):
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	x in [-inf, +inf],
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	y in [-inf, +inf],
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	z in [-inf, +inf],
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	t in [-inf, +inf]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          code: THEORY
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          BEGIN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          f(x, y, z, t: real): real =
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	LET tmp = IF (z < t) THEN z ELSE t ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	LET tmp_1 = IF (z < t) THEN z ELSE t ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          	(1) / ((sqrt(tmp)) + (sqrt(((1) + tmp_1))))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          END code
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          \frac{1}{\sqrt{\mathsf{min}\left(z, t\right)} + \sqrt{1 + \mathsf{min}\left(z, t\right)}}
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          Derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          1. Initial program 92.0%

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            \[\left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          2. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            1. Applied rewrites93.8%

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              \[\leadsto \left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \frac{1}{\sqrt{z} + \sqrt{z + 1}}\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            2. Taylor expanded in t around inf

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              \[\leadsto \left(\sqrt{1 + x} + \left(\sqrt{1 + y} + \frac{1}{\sqrt{z} + \sqrt{1 + z}}\right)\right) - \left(\sqrt{x} + \sqrt{y}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              1. Applied rewrites19.3%

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                \[\leadsto \left(\sqrt{1 + x} + \left(\sqrt{1 + y} + \frac{1}{\sqrt{z} + \sqrt{1 + z}}\right)\right) - \left(\sqrt{x} + \sqrt{y}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              2. Taylor expanded in y around inf

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                \[\leadsto \left(\sqrt{1 + x} + \frac{1}{\sqrt{z} + \sqrt{1 + z}}\right) - \sqrt{x} \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                1. Applied rewrites21.6%

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  \[\leadsto \left(\sqrt{1 + x} + \frac{1}{\sqrt{z} + \sqrt{1 + z}}\right) - \sqrt{x} \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                2. Taylor expanded in x around inf

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  \[\leadsto \frac{1}{\sqrt{z} + \sqrt{1 + z}} \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  1. Applied rewrites18.1%

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    \[\leadsto \frac{1}{\sqrt{z} + \sqrt{1 + z}} \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  2. Add Preprocessing

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  Alternative 30: 16.7% accurate, 4.5× speedup?

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  \[\sqrt{1 + t} - \sqrt{t} \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  (FPCore (x y z t)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    :precision binary64
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    :pre TRUE
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    (- (sqrt (+ 1.0 t)) (sqrt t)))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  double code(double x, double y, double z, double t) {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	return sqrt((1.0 + t)) - sqrt(t);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  }
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  real(8) function code(x, y, z, t)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  use fmin_fmax_functions
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      real(8), intent (in) :: x
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      real(8), intent (in) :: y
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      real(8), intent (in) :: z
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      real(8), intent (in) :: t
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      code = sqrt((1.0d0 + t)) - sqrt(t)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  end function
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  public static double code(double x, double y, double z, double t) {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	return Math.sqrt((1.0 + t)) - Math.sqrt(t);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  }
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  def code(x, y, z, t):
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	return math.sqrt((1.0 + t)) - math.sqrt(t)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  function code(x, y, z, t)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	return Float64(sqrt(Float64(1.0 + t)) - sqrt(t))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  end
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  function tmp = code(x, y, z, t)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	tmp = sqrt((1.0 + t)) - sqrt(t);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  end
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  code[x_, y_, z_, t_] := N[(N[Sqrt[N[(1.0 + t), $MachinePrecision]], $MachinePrecision] - N[Sqrt[t], $MachinePrecision]), $MachinePrecision]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  f(x, y, z, t):
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	x in [-inf, +inf],
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	y in [-inf, +inf],
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	z in [-inf, +inf],
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	t in [-inf, +inf]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  code: THEORY
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  BEGIN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  f(x, y, z, t: real): real =
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  	(sqrt(((1) + t))) - (sqrt(t))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  END code
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  \sqrt{1 + t} - \sqrt{t}
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  Derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  1. Initial program 92.0%

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    \[\left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  2. Taylor expanded in y around inf

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    \[\leadsto \left(\sqrt{1 + t} + \left(\sqrt{1 + x} + \sqrt{1 + z}\right)\right) - \left(\sqrt{t} + \left(\sqrt{x} + \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    1. Applied rewrites12.1%

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      \[\leadsto \left(\sqrt{1 + t} + \left(\sqrt{1 + x} + \sqrt{1 + z}\right)\right) - \left(\sqrt{t} + \left(\sqrt{x} + \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    2. Taylor expanded in z around inf

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      \[\leadsto \left(\sqrt{1 + t} + \sqrt{1 + x}\right) - \left(\sqrt{t} + \sqrt{x}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      1. Applied rewrites13.2%

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        \[\leadsto \left(\sqrt{1 + t} + \sqrt{1 + x}\right) - \left(\sqrt{t} + \sqrt{x}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      2. Taylor expanded in x around inf

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        \[\leadsto \sqrt{1 + t} - \sqrt{t} \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        1. Applied rewrites15.3%

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          \[\leadsto \sqrt{1 + t} - \sqrt{t} \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        2. Add Preprocessing

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        Alternative 31: 15.3% accurate, 3.5× speedup?

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        \[2 - \left(\sqrt{t} + \sqrt{\mathsf{min}\left(x, z\right)}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        (FPCore (x y z t)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          :precision binary64
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          :pre TRUE
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          (- 2.0 (+ (sqrt t) (sqrt (fmin x z)))))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        double code(double x, double y, double z, double t) {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        	return 2.0 - (sqrt(t) + sqrt(fmin(x, z)));
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        }
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        real(8) function code(x, y, z, t)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        use fmin_fmax_functions
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            real(8), intent (in) :: x
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            real(8), intent (in) :: y
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            real(8), intent (in) :: z
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            real(8), intent (in) :: t
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            code = 2.0d0 - (sqrt(t) + sqrt(fmin(x, z)))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        end function
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        public static double code(double x, double y, double z, double t) {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        	return 2.0 - (Math.sqrt(t) + Math.sqrt(fmin(x, z)));
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        }
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        def code(x, y, z, t):
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        	return 2.0 - (math.sqrt(t) + math.sqrt(fmin(x, z)))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        function code(x, y, z, t)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        	return Float64(2.0 - Float64(sqrt(t) + sqrt(fmin(x, z))))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        end
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        function tmp = code(x, y, z, t)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        	tmp = 2.0 - (sqrt(t) + sqrt(min(x, z)));
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        end
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        code[x_, y_, z_, t_] := N[(2.0 - N[(N[Sqrt[t], $MachinePrecision] + N[Sqrt[N[Min[x, z], $MachinePrecision]], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        f(x, y, z, t):
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        	x in [-inf, +inf],
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        	y in [-inf, +inf],
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        	z in [-inf, +inf],
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        	t in [-inf, +inf]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        code: THEORY
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        BEGIN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        f(x, y, z, t: real): real =
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        	LET tmp = IF (x < z) THEN x ELSE z ENDIF IN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        	(2) - ((sqrt(t)) + (sqrt(tmp)))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        END code
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        2 - \left(\sqrt{t} + \sqrt{\mathsf{min}\left(x, z\right)}\right)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        Derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        1. Initial program 92.0%

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          \[\left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        2. Taylor expanded in y around inf

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          \[\leadsto \left(\sqrt{1 + t} + \left(\sqrt{1 + x} + \sqrt{1 + z}\right)\right) - \left(\sqrt{t} + \left(\sqrt{x} + \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          1. Applied rewrites12.1%

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            \[\leadsto \left(\sqrt{1 + t} + \left(\sqrt{1 + x} + \sqrt{1 + z}\right)\right) - \left(\sqrt{t} + \left(\sqrt{x} + \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          2. Taylor expanded in z around inf

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            \[\leadsto \left(\sqrt{1 + t} + \sqrt{1 + x}\right) - \left(\sqrt{t} + \sqrt{x}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            1. Applied rewrites13.2%

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              \[\leadsto \left(\sqrt{1 + t} + \sqrt{1 + x}\right) - \left(\sqrt{t} + \sqrt{x}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            2. Taylor expanded in t around 0

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              \[\leadsto \left(1 + \sqrt{1 + x}\right) - \left(\sqrt{t} + \sqrt{x}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              1. Applied rewrites11.5%

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                \[\leadsto \left(1 + \sqrt{1 + x}\right) - \left(\sqrt{t} + \sqrt{x}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              2. Taylor expanded in x around 0

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                \[\leadsto 2 - \left(\sqrt{t} + \sqrt{x}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                1. Applied rewrites10.1%

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  \[\leadsto 2 - \left(\sqrt{t} + \sqrt{x}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                2. Add Preprocessing

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                Alternative 32: 14.0% accurate, 8.1× speedup?

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                \[1 - \sqrt{t} \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                (FPCore (x y z t)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  :precision binary64
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  :pre TRUE
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  (- 1.0 (sqrt t)))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                double code(double x, double y, double z, double t) {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                	return 1.0 - sqrt(t);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                }
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                real(8) function code(x, y, z, t)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                use fmin_fmax_functions
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    real(8), intent (in) :: x
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    real(8), intent (in) :: y
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    real(8), intent (in) :: z
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    real(8), intent (in) :: t
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    code = 1.0d0 - sqrt(t)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                end function
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                public static double code(double x, double y, double z, double t) {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                	return 1.0 - Math.sqrt(t);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                }
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                def code(x, y, z, t):
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                	return 1.0 - math.sqrt(t)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                function code(x, y, z, t)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                	return Float64(1.0 - sqrt(t))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                end
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                function tmp = code(x, y, z, t)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                	tmp = 1.0 - sqrt(t);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                end
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                code[x_, y_, z_, t_] := N[(1.0 - N[Sqrt[t], $MachinePrecision]), $MachinePrecision]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                f(x, y, z, t):
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                	x in [-inf, +inf],
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                	y in [-inf, +inf],
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                	z in [-inf, +inf],
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                	t in [-inf, +inf]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                code: THEORY
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                BEGIN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                f(x, y, z, t: real): real =
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                	(1) - (sqrt(t))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                END code
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                1 - \sqrt{t}
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                Derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                1. Initial program 92.0%

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  \[\left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                2. Taylor expanded in y around inf

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  \[\leadsto \left(\sqrt{1 + t} + \left(\sqrt{1 + x} + \sqrt{1 + z}\right)\right) - \left(\sqrt{t} + \left(\sqrt{x} + \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  1. Applied rewrites12.1%

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    \[\leadsto \left(\sqrt{1 + t} + \left(\sqrt{1 + x} + \sqrt{1 + z}\right)\right) - \left(\sqrt{t} + \left(\sqrt{x} + \sqrt{z}\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  2. Taylor expanded in z around inf

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    \[\leadsto \left(\sqrt{1 + t} + \sqrt{1 + x}\right) - \left(\sqrt{t} + \sqrt{x}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    1. Applied rewrites13.2%

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      \[\leadsto \left(\sqrt{1 + t} + \sqrt{1 + x}\right) - \left(\sqrt{t} + \sqrt{x}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    2. Taylor expanded in t around 0

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      \[\leadsto \left(1 + \sqrt{1 + x}\right) - \left(\sqrt{t} + \sqrt{x}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      1. Applied rewrites11.5%

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        \[\leadsto \left(1 + \sqrt{1 + x}\right) - \left(\sqrt{t} + \sqrt{x}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      2. Taylor expanded in x around inf

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        \[\leadsto 1 - \sqrt{t} \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        1. Applied rewrites14.0%

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          \[\leadsto 1 - \sqrt{t} \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        2. Add Preprocessing

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        Alternative 33: 1.6% accurate, 11.4× speedup?

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        \[-\sqrt{t} \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        (FPCore (x y z t)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          :precision binary64
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          :pre TRUE
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          (- (sqrt t)))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        double code(double x, double y, double z, double t) {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        	return -sqrt(t);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        }
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        real(8) function code(x, y, z, t)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        use fmin_fmax_functions
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            real(8), intent (in) :: x
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            real(8), intent (in) :: y
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            real(8), intent (in) :: z
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            real(8), intent (in) :: t
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            code = -sqrt(t)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        end function
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        public static double code(double x, double y, double z, double t) {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        	return -Math.sqrt(t);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        }
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        def code(x, y, z, t):
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        	return -math.sqrt(t)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        function code(x, y, z, t)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        	return Float64(-sqrt(t))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        end
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        function tmp = code(x, y, z, t)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        	tmp = -sqrt(t);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        end
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        code[x_, y_, z_, t_] := (-N[Sqrt[t], $MachinePrecision])
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        f(x, y, z, t):
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        	x in [-inf, +inf],
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        	y in [-inf, +inf],
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        	z in [-inf, +inf],
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        	t in [-inf, +inf]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        code: THEORY
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        BEGIN
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        f(x, y, z, t: real): real =
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        	- (sqrt(t))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        END code
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        -\sqrt{t}
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        Derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        1. Initial program 92.0%

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          \[\left(\left(\left(\sqrt{x + 1} - \sqrt{x}\right) + \left(\sqrt{y + 1} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1} - \sqrt{t}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        2. Taylor expanded in t around 0

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          \[\leadsto \left(1 + \left(\sqrt{1 + x} + \left(\sqrt{1 + y} + \sqrt{1 + z}\right)\right)\right) - \left(\sqrt{t} + \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          1. Applied rewrites10.2%

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            \[\leadsto \left(1 + \left(\sqrt{1 + x} + \left(\sqrt{1 + y} + \sqrt{1 + z}\right)\right)\right) - \left(\sqrt{t} + \left(\sqrt{x} + \left(\sqrt{y} + \sqrt{z}\right)\right)\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          2. Taylor expanded in t around inf

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            \[\leadsto -1 \cdot \left(t \cdot \sqrt{\frac{1}{t}}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            1. Applied rewrites1.6%

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              \[\leadsto -1 \cdot \left(t \cdot \sqrt{\frac{1}{t}}\right) \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            2. Taylor expanded in t around 0

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              \[\leadsto -1 \cdot \sqrt{t} \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            3. Step-by-step derivation
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              1. Applied rewrites1.6%

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                \[\leadsto -1 \cdot \sqrt{t} \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              2. Applied rewrites1.6%

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                \[\leadsto -\sqrt{t} \]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              3. Add Preprocessing

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              Reproduce

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              ?
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              herbie shell --seed 2026092 
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              (FPCore (x y z t)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                :name "Main:z from "
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                :precision binary64
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                (+ (+ (+ (- (sqrt (+ x 1.0)) (sqrt x)) (- (sqrt (+ y 1.0)) (sqrt y))) (- (sqrt (+ z 1.0)) (sqrt z))) (- (sqrt (+ t 1.0)) (sqrt t))))