Average Error: 59.8 → 24.4
Time: 12.7s
Precision: binary64
Cost: 32641
\[\left(\left(e^{x}\right) \bmod \left(\sqrt{\cos x}\right)\right) \cdot e^{-x}\]
\[\begin{array}{l} \mathbf{if}\;\left(\left(e^{x}\right) \bmod \left(\sqrt{\cos x}\right)\right) \cdot e^{-x} \leq 1:\\ \;\;\;\;1\\ \mathbf{else}:\\ \;\;\;\;0\\ \end{array}\]
\left(\left(e^{x}\right) \bmod \left(\sqrt{\cos x}\right)\right) \cdot e^{-x}
\begin{array}{l}
\mathbf{if}\;\left(\left(e^{x}\right) \bmod \left(\sqrt{\cos x}\right)\right) \cdot e^{-x} \leq 1:\\
\;\;\;\;1\\

\mathbf{else}:\\
\;\;\;\;0\\

\end{array}
(FPCore (x) :precision binary64 (* (fmod (exp x) (sqrt (cos x))) (exp (- x))))
(FPCore (x)
 :precision binary64
 (if (<= (* (fmod (exp x) (sqrt (cos x))) (exp (- x))) 1.0) 1.0 0.0))
double code(double x) {
	return fmod(exp(x), sqrt(cos(x))) * exp(-x);
}
double code(double x) {
	double tmp;
	if ((fmod(exp(x), sqrt(cos(x))) * exp(-x)) <= 1.0) {
		tmp = 1.0;
	} else {
		tmp = 0.0;
	}
	return tmp;
}

Error

Bits error versus x

Alternatives

Alternative 1
Error59.8
Cost168128
\[\log \left(\sqrt[3]{e^{\frac{\left(\left(e^{x}\right) \bmod \left(\sqrt{\cos x}\right)\right)}{e^{x}}}}\right) \cdot 2 + \sqrt[3]{\frac{\left(\left(e^{x}\right) \bmod \left(\sqrt{\cos x}\right)\right)}{e^{x}} \cdot 0.3333333333333333} \cdot \left(\sqrt[3]{\frac{\left(\left(e^{x}\right) \bmod \left(\sqrt{\cos x}\right)\right)}{e^{x}} \cdot 0.3333333333333333} \cdot \sqrt[3]{\frac{\left(\left(e^{x}\right) \bmod \left(\sqrt{\cos x}\right)\right)}{e^{x}} \cdot 0.3333333333333333}\right)\]
Alternative 2
Error59.9
Cost103104
\[\log \left(\sqrt[3]{e^{\frac{\left(\left(e^{x}\right) \bmod \left(\sqrt{\cos x}\right)\right)}{e^{x}}}}\right) + \log \left(\sqrt[3]{e^{\frac{\left(\left(e^{x}\right) \bmod \left(\sqrt{\cos x}\right)\right)}{e^{x}}}}\right) \cdot 2\]
Alternative 3
Error59.8
Cost103040
\[\frac{\sqrt[3]{\left(\left(e^{x}\right) \bmod \left(\sqrt{\cos x}\right)\right)} \cdot \left(\sqrt[3]{\left(\left(e^{x}\right) \bmod \left(\sqrt{\cos x}\right)\right)} \cdot \sqrt[3]{\left(\left(e^{x}\right) \bmod \left(\sqrt{\cos x}\right)\right)}\right)}{e^{x}}\]
Alternative 4
Error59.8
Cost90432
\[\log \left(\sqrt[3]{e^{\frac{\left(\left(e^{x}\right) \bmod \left(\sqrt{\cos x}\right)\right)}{e^{x}}}}\right) + 2 \cdot e^{\log \left(\left(\left(e^{x}\right) \bmod \left(\sqrt{\cos x}\right)\right) \cdot 0.3333333333333333\right) - x}\]
Alternative 5
Error59.8
Cost84032
\[\log \left(\sqrt[3]{e^{\frac{\left(\left(e^{x}\right) \bmod \left(\sqrt{\cos x}\right)\right)}{e^{x}}}}\right) \cdot 2 + \frac{\left(\left(e^{x}\right) \bmod \left(\sqrt{\cos x}\right)\right)}{e^{x}} \cdot 0.3333333333333333\]
Alternative 6
Error59.8
Cost84032
\[\log \left(\sqrt[3]{e^{\frac{\left(\left(e^{x}\right) \bmod \left(\sqrt{\cos x}\right)\right)}{e^{x}}}}\right) + 2 \cdot \left(\frac{\left(\left(e^{x}\right) \bmod \left(\sqrt{\cos x}\right)\right)}{e^{x}} \cdot 0.3333333333333333\right)\]
Alternative 7
Error60.7
Cost77504
\[\log \left(\sqrt[3]{e^{\frac{\left(\left(e^{x}\right) \bmod \left(\sqrt{\cos x}\right)\right)}{e^{x}}}}\right) + 2 \cdot \left(\left(\left(e^{x}\right) \bmod \left(\sqrt{\cos x}\right)\right) \cdot 0.3333333333333333\right)\]
Alternative 8
Error59.8
Cost45056
\[\log \left(e^{\frac{\left(\left(e^{x}\right) \bmod \left(\sqrt{\cos x}\right)\right)}{e^{x}}}\right)\]
Alternative 9
Error59.8
Cost45056
\[\frac{e^{\log \left(\left(e^{x}\right) \bmod \left(\sqrt{\cos x}\right)\right)}}{e^{x}}\]
Alternative 10
Error59.8
Cost45056
\[\frac{\log \left(e^{\left(\left(e^{x}\right) \bmod \left(\sqrt{\cos x}\right)\right)}\right)}{e^{x}}\]
Alternative 11
Error59.8
Cost38656
\[e^{\log \left(\left(e^{x}\right) \bmod \left(\sqrt{\cos x}\right)\right) - x}\]
Alternative 12
Error59.8
Cost32320
\[\left(\left(e^{x}\right) \bmod \left(\sqrt{\cos x}\right)\right) \cdot e^{-x}\]
Alternative 13
Error59.8
Cost32256
\[\frac{\left(\left(e^{x}\right) \bmod \left(\sqrt{\cos x}\right)\right)}{e^{x}}\]
Alternative 14
Error60.2
Cost26368
\[\left(\left(e^{x}\right) \bmod \left(\sqrt{\cos x}\right)\right) \cdot \left(0.5 \cdot \left(x \cdot x\right) + \left(1 - x\right)\right)\]
Alternative 15
Error60.2
Cost26368
\[\left(\left(e^{x}\right) \bmod \left(\sqrt{\cos x}\right)\right) \cdot \left(1 + \left(0.5 \cdot \left(x \cdot x\right) - x\right)\right)\]
Alternative 16
Error60.7
Cost25728
\[\left(\left(e^{x}\right) \bmod \left(\sqrt{\cos x}\right)\right)\]
Alternative 17
Error60.0
Cost19456
\[\frac{\left(\left(e^{x}\right) \bmod 1\right)}{e^{x}}\]
Alternative 18
Error36.4
Cost64
\[1\]
Alternative 19
Error49.1
Cost64
\[0\]
Alternative 20
Error62.6
Cost64
\[-1\]

Error

Derivation

  1. Split input into 2 regimes
  2. if (*.f64 (fmod.f64 (exp.f64 x) (sqrt.f64 (cos.f64 x))) (exp.f64 (neg.f64 x))) < 1

    1. Initial program 30.3

      \[1\]

    if 1 < (*.f64 (fmod.f64 (exp.f64 x) (sqrt.f64 (cos.f64 x))) (exp.f64 (neg.f64 x)))

    1. Initial program 1.2

      \[0\]
  3. Recombined 2 regimes into one program.
  4. Final simplification24.4

    \[\leadsto \begin{array}{l} \mathbf{if}\;\left(\left(e^{x}\right) \bmod \left(\sqrt{\cos x}\right)\right) \cdot e^{-x} \leq 1:\\ \;\;\;\;1\\ \mathbf{else}:\\ \;\;\;\;0\\ \end{array}\]

Reproduce

herbie shell --seed 2021022 
(FPCore (x)
  :name "expfmod"
  :precision binary64
  (* (fmod (exp x) (sqrt (cos x))) (exp (- x))))