\left(\left(\left(\left(\left(\left({ar}^{2} - {br}^{2}\right) + {ag}^{2}\right) - {bg}^{2}\right) + {ab}^{2}\right) - {bb}^{2}\right) + {aa}^{2}\right) - {ba}^{2}\left(\left(\left(\left(\left(\left({ar}^{2} - {br}^{2}\right) + {ag}^{2}\right) - {bg}^{2}\right) + {ab}^{2}\right) - {bb}^{2}\right) + {aa}^{2}\right) - {ba}^{2}double code(double ar, double br, double ag, double bg, double ab, double bb, double aa, double ba) {
return ((double) (((double) (((double) (((double) (((double) (((double) (((double) (((double) pow(ar, 2.0)) - ((double) pow(br, 2.0)))) + ((double) pow(ag, 2.0)))) - ((double) pow(bg, 2.0)))) + ((double) pow(ab, 2.0)))) - ((double) pow(bb, 2.0)))) + ((double) pow(aa, 2.0)))) - ((double) pow(ba, 2.0))));
}
double code(double ar, double br, double ag, double bg, double ab, double bb, double aa, double ba) {
return ((double) (((double) (((double) (((double) (((double) (((double) (((double) (((double) pow(ar, 2.0)) - ((double) pow(br, 2.0)))) + ((double) pow(ag, 2.0)))) - ((double) pow(bg, 2.0)))) + ((double) pow(ab, 2.0)))) - ((double) pow(bb, 2.0)))) + ((double) pow(aa, 2.0)))) - ((double) pow(ba, 2.0))));
}



Bits error versus ar



Bits error versus br



Bits error versus ag



Bits error versus bg



Bits error versus ab



Bits error versus bb



Bits error versus aa



Bits error versus ba
Results
Initial program 0.0
Final simplification0.0
herbie shell --seed 2020152
(FPCore (ar br ag bg ab bb aa ba)
:name "(- (+ (- (+ (- (+ (- (pow ar 2) (pow br 2)) (pow ag 2)) (pow bg 2)) (pow ab 2)) (pow bb 2)) (pow aa 2)) (pow ba 2))"
:precision binary64
(- (+ (- (+ (- (+ (- (pow ar 2.0) (pow br 2.0)) (pow ag 2.0)) (pow bg 2.0)) (pow ab 2.0)) (pow bb 2.0)) (pow aa 2.0)) (pow ba 2.0)))