\frac{\log \left(1 - x\right)}{\log \left(1 + x\right)}\left(\left(-\left(\left(\left(\frac{x \cdot \log 1}{1} \cdot \left(\frac{0.3333333333333333148296162562473909929395}{{1}^{2}} + 1\right) + 0.5 \cdot \frac{\log 1}{{1}^{2}}\right) + 1 \cdot x\right) + 1\right)\right) + \log 1 \cdot \left(\frac{1}{x} + 1\right)\right) + \left(x \cdot \log 1\right) \cdot \left(\frac{0.25}{{1}^{4}} + 1\right)double f(double x) {
double r53116 = 1.0;
double r53117 = x;
double r53118 = r53116 - r53117;
double r53119 = log(r53118);
double r53120 = r53116 + r53117;
double r53121 = log(r53120);
double r53122 = r53119 / r53121;
return r53122;
}
double f(double x) {
double r53123 = x;
double r53124 = 1.0;
double r53125 = log(r53124);
double r53126 = r53123 * r53125;
double r53127 = r53126 / r53124;
double r53128 = 0.3333333333333333;
double r53129 = 2.0;
double r53130 = pow(r53124, r53129);
double r53131 = r53128 / r53130;
double r53132 = 1.0;
double r53133 = r53131 + r53132;
double r53134 = r53127 * r53133;
double r53135 = 0.5;
double r53136 = r53125 / r53130;
double r53137 = r53135 * r53136;
double r53138 = r53134 + r53137;
double r53139 = r53124 * r53123;
double r53140 = r53138 + r53139;
double r53141 = r53140 + r53124;
double r53142 = -r53141;
double r53143 = r53124 / r53123;
double r53144 = r53143 + r53124;
double r53145 = r53125 * r53144;
double r53146 = r53142 + r53145;
double r53147 = 0.25;
double r53148 = 4.0;
double r53149 = pow(r53124, r53148);
double r53150 = r53147 / r53149;
double r53151 = r53150 + r53124;
double r53152 = r53126 * r53151;
double r53153 = r53146 + r53152;
return r53153;
}




Bits error versus x
Results
| Original | 61.0 |
|---|---|
| Target | 0.4 |
| Herbie | 0.8 |
Initial program 61.0
rmApplied flip-+60.6
Applied log-div60.9
Taylor expanded around 0 0.8
Simplified0.8
Final simplification0.8
herbie shell --seed 2019294
(FPCore (x)
:name "qlog (example 3.10)"
:precision binary64
:pre (and (< -1 x) (< x 1))
:herbie-target
(- (+ (+ (+ 1 x) (/ (* x x) 2)) (* 0.416666666666666685 (pow x 3))))
(/ (log (- 1 x)) (log (+ 1 x))))