-\log \left(\frac{1}{x} - 1\right)
x + \log x
(FPCore (x) :precision binary64 (- (log (- (/ 1.0 x) 1.0))))
(FPCore (x) :precision binary64 (+ x (log x)))
double code(double x) {
return -log((1.0 / x) - 1.0);
}
double code(double x) {
return x + log(x);
}



Bits error versus x
Results
Initial program 0.0
Taylor expanded in x around 0 0.5
Final simplification0.5
herbie shell --seed 2022081
(FPCore (x)
:name "neg log"
:precision binary64
(- (log (- (/ 1.0 x) 1.0))))