\left(\left(\left(\left(\left(aa + b\right) + c\right) + d \cdot 10^{3}\right) - 1\right) - \sqrt{aa} \cdot 15\right) - \log \left(\left(\left(aa + b\right) + c\right) + d\right) \cdot \sin \left(\left(\left(\left(\left(\left(aa + b\right) + c\right) + d \cdot 10^{3}\right) - 1\right) - \sqrt{aa} \cdot 15\right) - \log \left(\left(\left(aa + b\right) + c\right) + d\right)\right)\left(\left(\left(\left(\left(aa + b\right) + c\right) + d \cdot 10^{3}\right) - 1\right) - \sqrt{aa} \cdot 15\right) - \log \left(\left(\left(aa + b\right) + c\right) + d\right) \cdot \sin \left(\left(\left(\left(\left(\left(aa + b\right) + c\right) + d \cdot 10^{3}\right) - 1\right) - \sqrt{aa} \cdot 15\right) - \log \left(\left(\left(aa + b\right) + c\right) + d\right)\right)double code(double aa, double b, double c, double d) {
return ((double) (((double) (((double) (((double) (((double) (((double) (aa + b)) + c)) + ((double) (d * 1000.0)))) - 1.0)) - ((double) (((double) sqrt(aa)) * 15.0)))) - ((double) (((double) log(((double) (((double) (((double) (aa + b)) + c)) + d)))) * ((double) sin(((double) (((double) (((double) (((double) (((double) (((double) (aa + b)) + c)) + ((double) (d * 1000.0)))) - 1.0)) - ((double) (((double) sqrt(aa)) * 15.0)))) - ((double) log(((double) (((double) (((double) (aa + b)) + c)) + d))))))))))));
}
double code(double aa, double b, double c, double d) {
return ((double) (((double) (((double) (((double) (((double) (((double) (aa + b)) + c)) + ((double) (d * 1000.0)))) - 1.0)) - ((double) (((double) sqrt(aa)) * 15.0)))) - ((double) (((double) log(((double) (((double) (((double) (aa + b)) + c)) + d)))) * ((double) sin(((double) (((double) (((double) (((double) (((double) (((double) (aa + b)) + c)) + ((double) (d * 1000.0)))) - 1.0)) - ((double) (((double) sqrt(aa)) * 15.0)))) - ((double) log(((double) (((double) (((double) (aa + b)) + c)) + d))))))))))));
}



Bits error versus aa



Bits error versus b



Bits error versus c



Bits error versus d
Results
Initial program 0.3
Final simplification0.3
herbie shell --seed 2020153
(FPCore (aa b c d)
:name "(- (- (- (+ (+ (+ aa b) c) (* d 1000)) 1) (* (sqrt aa) 15)) (* (log (+ (+ (+ aa b) c) d)) (sin (- (- (- (+ (+ (+ aa b) c) (* d 1000)) 1) (* (sqrt aa) 15)) (log (+ (+ (+ aa b) c) d))))))"
:precision binary64
(- (- (- (+ (+ (+ aa b) c) (* d 1000.0)) 1.0) (* (sqrt aa) 15.0)) (* (log (+ (+ (+ aa b) c) d)) (sin (- (- (- (+ (+ (+ aa b) c) (* d 1000.0)) 1.0) (* (sqrt aa) 15.0)) (log (+ (+ (+ aa b) c) d)))))))