?

Average Error: 0.18% → 0.19%
Time: 14.8s
Precision: binary32
Cost: 3456

?

\[0 \leq s \land s \leq 1.0651631\]
\[\frac{1}{1 + e^{\frac{-x}{s}}} \]
\[\frac{1}{2 + \mathsf{expm1}\left(\frac{-x}{s}\right)} \]
(FPCore (x s) :precision binary32 (/ 1.0 (+ 1.0 (exp (/ (- x) s)))))
(FPCore (x s) :precision binary32 (/ 1.0 (+ 2.0 (expm1 (/ (- x) s)))))
float code(float x, float s) {
	return 1.0f / (1.0f + expf((-x / s)));
}
float code(float x, float s) {
	return 1.0f / (2.0f + expm1f((-x / s)));
}
function code(x, s)
	return Float32(Float32(1.0) / Float32(Float32(1.0) + exp(Float32(Float32(-x) / s))))
end
function code(x, s)
	return Float32(Float32(1.0) / Float32(Float32(2.0) + expm1(Float32(Float32(-x) / s))))
end
\frac{1}{1 + e^{\frac{-x}{s}}}
\frac{1}{2 + \mathsf{expm1}\left(\frac{-x}{s}\right)}

Error?

Try it out?

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation?

  1. Initial program 0.18

    \[\frac{1}{1 + e^{\frac{-x}{s}}} \]
  2. Applied egg-rr0.2

    \[\leadsto \frac{1}{1 + \color{blue}{\frac{1}{e^{\frac{x}{s}}}}} \]
  3. Applied egg-rr0.75

    \[\leadsto \color{blue}{{\left(1 + e^{-\frac{x}{s}}\right)}^{-0.5} \cdot {\left(1 + e^{-\frac{x}{s}}\right)}^{-0.5}} \]
  4. Simplified0.19

    \[\leadsto \color{blue}{\frac{1}{2 + \mathsf{expm1}\left(\frac{-x}{s}\right)}} \]
    Proof

    [Start]0.75

    \[ {\left(1 + e^{-\frac{x}{s}}\right)}^{-0.5} \cdot {\left(1 + e^{-\frac{x}{s}}\right)}^{-0.5} \]

    pow-sqr [=>]0.18

    \[ \color{blue}{{\left(1 + e^{-\frac{x}{s}}\right)}^{\left(2 \cdot -0.5\right)}} \]

    metadata-eval [=>]0.18

    \[ {\left(1 + e^{-\frac{x}{s}}\right)}^{\color{blue}{-1}} \]

    unpow-1 [=>]0.18

    \[ \color{blue}{\frac{1}{1 + e^{-\frac{x}{s}}}} \]

    +-commutative [=>]0.18

    \[ \frac{1}{\color{blue}{e^{-\frac{x}{s}} + 1}} \]

    metadata-eval [<=]0.18

    \[ \frac{1}{e^{-\frac{x}{s}} + \color{blue}{\left(2 - 1\right)}} \]

    associate--l+ [<=]0.2

    \[ \frac{1}{\color{blue}{\left(e^{-\frac{x}{s}} + 2\right) - 1}} \]

    +-commutative [<=]0.2

    \[ \frac{1}{\color{blue}{\left(2 + e^{-\frac{x}{s}}\right)} - 1} \]

    associate--l+ [=>]0.18

    \[ \frac{1}{\color{blue}{2 + \left(e^{-\frac{x}{s}} - 1\right)}} \]

    mul-1-neg [<=]0.18

    \[ \frac{1}{2 + \left(e^{\color{blue}{-1 \cdot \frac{x}{s}}} - 1\right)} \]

    expm1-def [=>]0.19

    \[ \frac{1}{2 + \color{blue}{\mathsf{expm1}\left(-1 \cdot \frac{x}{s}\right)}} \]

    mul-1-neg [=>]0.19

    \[ \frac{1}{2 + \mathsf{expm1}\left(\color{blue}{-\frac{x}{s}}\right)} \]

    distribute-neg-frac [=>]0.19

    \[ \frac{1}{2 + \mathsf{expm1}\left(\color{blue}{\frac{-x}{s}}\right)} \]
  5. Final simplification0.19

    \[\leadsto \frac{1}{2 + \mathsf{expm1}\left(\frac{-x}{s}\right)} \]

Alternatives

Alternative 1
Error0.18%
Cost3456
\[\frac{1}{1 + e^{\frac{-x}{s}}} \]
Alternative 2
Error7.71%
Cost808
\[\begin{array}{l} \mathbf{if}\;-x \leq -5.00000023350551 \cdot 10^{-35}:\\ \;\;\;\;\frac{1}{1 + \frac{1}{\left(1 + \frac{x}{s}\right) + 0.5 \cdot \left(x \cdot \frac{x}{s \cdot s}\right)}}\\ \mathbf{elif}\;-x \leq 9.999999974752427 \cdot 10^{-7}:\\ \;\;\;\;\frac{1}{\left(2 - \frac{x}{s}\right) + x \cdot \frac{-1}{\frac{s}{\frac{-0.5}{\frac{s}{x}}}}}\\ \mathbf{else}:\\ \;\;\;\;1 + \left(\frac{s}{x} + -1\right)\\ \end{array} \]
Alternative 3
Error6.09%
Cost808
\[\begin{array}{l} \mathbf{if}\;-x \leq 1.9999999593223797 \cdot 10^{-31}:\\ \;\;\;\;\frac{1}{1 + \frac{1}{\left(1 + \frac{x}{s}\right) + 0.5 \cdot \left(x \cdot \frac{\frac{x}{s}}{s}\right)}}\\ \mathbf{elif}\;-x \leq 9.999999974752427 \cdot 10^{-7}:\\ \;\;\;\;\frac{1}{1 + \left(1 + \left(0.5 \cdot \frac{x}{\frac{s \cdot s}{x}} - \frac{x}{s}\right)\right)}\\ \mathbf{else}:\\ \;\;\;\;1 + \left(\frac{s}{x} + -1\right)\\ \end{array} \]
Alternative 4
Error7.4%
Cost744
\[\begin{array}{l} \mathbf{if}\;x \leq -4.999999873689376 \cdot 10^{-6}:\\ \;\;\;\;1 + \left(\frac{s}{x} + -1\right)\\ \mathbf{elif}\;x \leq -3.0000000095132306 \cdot 10^{-30}:\\ \;\;\;\;\frac{1}{1 + \left(1 + \left(0.5 \cdot \frac{x}{\frac{s \cdot s}{x}} - \frac{x}{s}\right)\right)}\\ \mathbf{else}:\\ \;\;\;\;\frac{1}{1 + \frac{1}{1 + \frac{x}{s}}}\\ \end{array} \]
Alternative 5
Error7.18%
Cost680
\[\begin{array}{l} \mathbf{if}\;x \leq -4.999999873689376 \cdot 10^{-6}:\\ \;\;\;\;1 + \left(\frac{s}{x} + -1\right)\\ \mathbf{elif}\;x \leq -3.0000000095132306 \cdot 10^{-30}:\\ \;\;\;\;\frac{1}{\left(2 - \frac{x}{s}\right) + x \cdot \left(x \cdot \frac{0.5}{s \cdot s}\right)}\\ \mathbf{else}:\\ \;\;\;\;\frac{1}{1 + \frac{1}{1 + \frac{x}{s}}}\\ \end{array} \]
Alternative 6
Error8.17%
Cost552
\[\begin{array}{l} t_0 := \frac{-x}{s}\\ \mathbf{if}\;t_0 \leq -400:\\ \;\;\;\;1 + \frac{s \cdot s}{x \cdot x} \cdot -2\\ \mathbf{elif}\;t_0 \leq 0.5:\\ \;\;\;\;0.5 + \frac{x}{s} \cdot 0.25\\ \mathbf{else}:\\ \;\;\;\;1 + \left(\frac{s}{x} + -1\right)\\ \end{array} \]
Alternative 7
Error7.58%
Cost516
\[\begin{array}{l} \mathbf{if}\;\frac{-x}{s} \leq 100:\\ \;\;\;\;\frac{1}{1 + \frac{1}{1 + \frac{x}{s}}}\\ \mathbf{else}:\\ \;\;\;\;1 + \left(\frac{s}{x} + -1\right)\\ \end{array} \]
Alternative 8
Error34.81%
Cost388
\[\begin{array}{l} \mathbf{if}\;\frac{-x}{s} \leq 100:\\ \;\;\;\;0.5\\ \mathbf{else}:\\ \;\;\;\;1 + \left(\frac{s}{x} + -1\right)\\ \end{array} \]
Alternative 9
Error51.7%
Cost356
\[\begin{array}{l} t_0 := \frac{-x}{s}\\ \mathbf{if}\;t_0 \leq 0.5:\\ \;\;\;\;0.5\\ \mathbf{else}:\\ \;\;\;\;\frac{1}{t_0}\\ \end{array} \]
Alternative 10
Error53.05%
Cost164
\[\begin{array}{l} \mathbf{if}\;x \leq -0.0020000000949949026:\\ \;\;\;\;\frac{s}{x}\\ \mathbf{else}:\\ \;\;\;\;0.5\\ \end{array} \]
Alternative 11
Error64.53%
Cost32
\[0.5 \]

Error

Reproduce?

herbie shell --seed 2023088 
(FPCore (x s)
  :name "Logistic function"
  :precision binary32
  :pre (and (<= 0.0 s) (<= s 1.0651631))
  (/ 1.0 (+ 1.0 (exp (/ (- x) s)))))