\log \left(1 + e^{x}\right) - x \cdot y\left(\log \left(\sqrt{1 + e^{x}}\right) + \log \left(\sqrt{1 + e^{x}}\right)\right) - x \cdot ydouble f(double x, double y) {
double r18938974 = 1.0;
double r18938975 = x;
double r18938976 = exp(r18938975);
double r18938977 = r18938974 + r18938976;
double r18938978 = log(r18938977);
double r18938979 = y;
double r18938980 = r18938975 * r18938979;
double r18938981 = r18938978 - r18938980;
return r18938981;
}
double f(double x, double y) {
double r18938982 = 1.0;
double r18938983 = x;
double r18938984 = exp(r18938983);
double r18938985 = r18938982 + r18938984;
double r18938986 = sqrt(r18938985);
double r18938987 = log(r18938986);
double r18938988 = r18938987 + r18938987;
double r18938989 = y;
double r18938990 = r18938983 * r18938989;
double r18938991 = r18938988 - r18938990;
return r18938991;
}




Bits error versus x




Bits error versus y
Results
| Original | 0.5 |
|---|---|
| Target | 0.1 |
| Herbie | 1.0 |
Initial program 0.5
rmApplied add-sqr-sqrt1.3
Applied log-prod1.0
Final simplification1.0
herbie shell --seed 2019128
(FPCore (x y)
:name "Logistic regression 2"
:herbie-target
(if (<= x 0) (- (log (+ 1 (exp x))) (* x y)) (- (log (+ 1 (exp (- x)))) (* (- x) (- 1 y))))
(- (log (+ 1 (exp x))) (* x y)))