Average Error: 3.3 → 3.3
Time: 57.1s
Precision: binary64
\[\frac{{\left(\frac{1}{1 + e^{-s}}\right)}^{cp} \cdot {\left(1 - \frac{1}{1 + e^{-s}}\right)}^{cn}}{{\left(\frac{1}{1 + e^{-t}}\right)}^{cp} \cdot {\left(1 - \frac{1}{1 + e^{-t}}\right)}^{cn}}\]
\[\frac{{\left(\frac{1}{1 + e^{-s}}\right)}^{cp} \cdot {\left(1 - \frac{1}{1 + e^{-s}}\right)}^{cn}}{{\left(\frac{1}{1 + e^{-t}}\right)}^{cp} \cdot {\left(1 - \frac{1}{1 + e^{-t}}\right)}^{cn}}\]

Error

Bits error versus s

Bits error versus cp

Bits error versus cn

Bits error versus t

Derivation

  1. Initial program 3.3

    \[\frac{{\left(\frac{1}{1 + e^{-s}}\right)}^{cp} \cdot {\left(1 - \frac{1}{1 + e^{-s}}\right)}^{cn}}{{\left(\frac{1}{1 + e^{-t}}\right)}^{cp} \cdot {\left(1 - \frac{1}{1 + e^{-t}}\right)}^{cn}}\]
  2. Final simplification3.3

    \[\leadsto \frac{{\left(\frac{1}{1 + e^{-s}}\right)}^{cp} \cdot {\left(1 - \frac{1}{1 + e^{-s}}\right)}^{cn}}{{\left(\frac{1}{1 + e^{-t}}\right)}^{cp} \cdot {\left(1 - \frac{1}{1 + e^{-t}}\right)}^{cn}}\]

Reproduce

herbie shell --seed 2020152 
(FPCore (s cp cn t)
  :name "(/ (* (pow (/ 1.0 (+ 1.0 (exp (- s)))) cp) (pow (- 1.0 (/ 1.0 (+ 1.0 (exp (- s))))) cn)) (* (pow (/ 1.0 (+ 1.0 (exp (- t)))) cp) (pow (- 1.0 (/ 1.0 (+ 1.0 (exp (- t))))) cn)))"
  :precision binary64
  (/ (* (pow (/ 1.0 (+ 1.0 (exp (neg s)))) cp) (pow (- 1.0 (/ 1.0 (+ 1.0 (exp (neg s))))) cn)) (* (pow (/ 1.0 (+ 1.0 (exp (neg t)))) cp) (pow (- 1.0 (/ 1.0 (+ 1.0 (exp (neg t))))) cn))))