\tan^{-1} \left(N + 1\right) - \tan^{-1} N\tan^{-1}_* \frac{1}{\left(N + 1\right) \cdot N + 1}double f(double N) {
double r5842243 = N;
double r5842244 = 1.0;
double r5842245 = r5842243 + r5842244;
double r5842246 = atan(r5842245);
double r5842247 = atan(r5842243);
double r5842248 = r5842246 - r5842247;
return r5842248;
}
double f(double N) {
double r5842249 = 1.0;
double r5842250 = N;
double r5842251 = r5842250 + r5842249;
double r5842252 = r5842251 * r5842250;
double r5842253 = r5842252 + r5842249;
double r5842254 = atan2(r5842249, r5842253);
return r5842254;
}




Bits error versus N
Results
| Original | 15.0 |
|---|---|
| Target | 0.4 |
| Herbie | 0.4 |
Initial program 15.0
rmApplied diff-atan13.8
Simplified0.4
rmApplied *-commutative0.4
Final simplification0.4
herbie shell --seed 2019158
(FPCore (N)
:name "2atan (example 3.5)"
:herbie-target
(atan (/ 1 (+ 1 (* N (+ N 1)))))
(- (atan (+ N 1)) (atan N)))