\frac{{\left(\frac{1}{1 + e^{-s}}\right)}^{c_p} \cdot {\left(1 - \frac{1}{1 + e^{-s}}\right)}^{c_n}}{{\left(\frac{1}{1 + e^{-t}}\right)}^{c_p} \cdot {\left(1 - \frac{1}{1 + e^{-t}}\right)}^{c_n}}double code(double c_p, double c_n, double t, double s) {
return (((double) (((double) pow((1.0 / ((double) (1.0 + ((double) exp(((double) -(s))))))), c_p)) * ((double) pow(((double) (1.0 - (1.0 / ((double) (1.0 + ((double) exp(((double) -(s))))))))), c_n)))) / ((double) (((double) pow((1.0 / ((double) (1.0 + ((double) exp(((double) -(t))))))), c_p)) * ((double) pow(((double) (1.0 - (1.0 / ((double) (1.0 + ((double) exp(((double) -(t))))))))), c_n)))));
}
herbie shell --seed 2020196
(FPCore (c_p c_n t s)
:name "Harley's example"
:precision binary64
:pre (and (< 0.0 c_p) (< 0.0 c_n))
:herbie-target
(* (pow (/ (+ 1.0 (exp (- t))) (+ 1.0 (exp (- s)))) c_p) (pow (/ (+ 1.0 (exp t)) (+ 1.0 (exp s))) c_n))
(/ (* (pow (/ 1.0 (+ 1.0 (exp (- s)))) c_p) (pow (- 1.0 (/ 1.0 (+ 1.0 (exp (- s))))) c_n)) (* (pow (/ 1.0 (+ 1.0 (exp (- t)))) c_p) (pow (- 1.0 (/ 1.0 (+ 1.0 (exp (- t))))) c_n))))