\left(\left(\cosh c\right) \bmod \left(\mathsf{log1p}\left(a\right)\right)\right)\left(\left(\mathsf{fma}\left(\frac{1}{24}, {c}^{4}, \mathsf{fma}\left(\frac{1}{2}, {c}^{2}, 1\right)\right)\right) \bmod \left(\mathsf{log1p}\left(a\right)\right)\right)double code(double a, double c) {
return fmod(cosh(c), log1p(a));
}
double code(double a, double c) {
return fmod(fma(0.041666666666666664, pow(c, 4.0), fma(0.5, pow(c, 2.0), 1.0)), log1p(a));
}



Bits error versus a



Bits error versus c
Results
Initial program 34.8
Taylor expanded around 0 34.9
Simplified34.9
Final simplification34.9
herbie shell --seed 2020071 +o rules:numerics
(FPCore (a c)
:name "Random Jason Timeout Test 004"
:precision binary64
(fmod (cosh c) (log1p a)))