Average Error: 0.5 → 0.4
Time: 27.3s
Precision: 64
\[\frac{\cos th}{\sqrt{2}} \cdot \left(a1 \cdot a1\right) + \frac{\cos th}{\sqrt{2}} \cdot \left(a2 \cdot a2\right)\]
\[\frac{\frac{1}{\sqrt{\sqrt{\sqrt{2}}}}}{\sqrt{\sqrt{\sqrt{2}}}} \cdot \frac{\cos th \cdot \left(a1 \cdot a1 + a2 \cdot a2\right)}{\sqrt{\sqrt{2}}}\]
\frac{\cos th}{\sqrt{2}} \cdot \left(a1 \cdot a1\right) + \frac{\cos th}{\sqrt{2}} \cdot \left(a2 \cdot a2\right)
\frac{\frac{1}{\sqrt{\sqrt{\sqrt{2}}}}}{\sqrt{\sqrt{\sqrt{2}}}} \cdot \frac{\cos th \cdot \left(a1 \cdot a1 + a2 \cdot a2\right)}{\sqrt{\sqrt{2}}}
double f(double a1, double a2, double th) {
        double r101360 = th;
        double r101361 = cos(r101360);
        double r101362 = 2.0;
        double r101363 = sqrt(r101362);
        double r101364 = r101361 / r101363;
        double r101365 = a1;
        double r101366 = r101365 * r101365;
        double r101367 = r101364 * r101366;
        double r101368 = a2;
        double r101369 = r101368 * r101368;
        double r101370 = r101364 * r101369;
        double r101371 = r101367 + r101370;
        return r101371;
}

double f(double a1, double a2, double th) {
        double r101372 = 1.0;
        double r101373 = 2.0;
        double r101374 = sqrt(r101373);
        double r101375 = sqrt(r101374);
        double r101376 = sqrt(r101375);
        double r101377 = r101372 / r101376;
        double r101378 = r101377 / r101376;
        double r101379 = th;
        double r101380 = cos(r101379);
        double r101381 = a1;
        double r101382 = r101381 * r101381;
        double r101383 = a2;
        double r101384 = r101383 * r101383;
        double r101385 = r101382 + r101384;
        double r101386 = r101380 * r101385;
        double r101387 = r101386 / r101375;
        double r101388 = r101378 * r101387;
        return r101388;
}

Error

Bits error versus a1

Bits error versus a2

Bits error versus th

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 0.5

    \[\frac{\cos th}{\sqrt{2}} \cdot \left(a1 \cdot a1\right) + \frac{\cos th}{\sqrt{2}} \cdot \left(a2 \cdot a2\right)\]
  2. Simplified0.5

    \[\leadsto \color{blue}{\frac{\cos th}{\sqrt{2}} \cdot \left(a1 \cdot a1 + a2 \cdot a2\right)}\]
  3. Using strategy rm
  4. Applied add-sqr-sqrt0.5

    \[\leadsto \frac{\cos th}{\sqrt{\color{blue}{\sqrt{2} \cdot \sqrt{2}}}} \cdot \left(a1 \cdot a1 + a2 \cdot a2\right)\]
  5. Applied sqrt-prod0.5

    \[\leadsto \frac{\cos th}{\color{blue}{\sqrt{\sqrt{2}} \cdot \sqrt{\sqrt{2}}}} \cdot \left(a1 \cdot a1 + a2 \cdot a2\right)\]
  6. Applied associate-/r*0.5

    \[\leadsto \color{blue}{\frac{\frac{\cos th}{\sqrt{\sqrt{2}}}}{\sqrt{\sqrt{2}}}} \cdot \left(a1 \cdot a1 + a2 \cdot a2\right)\]
  7. Using strategy rm
  8. Applied add-sqr-sqrt0.5

    \[\leadsto \frac{\frac{\cos th}{\sqrt{\sqrt{2}}}}{\sqrt{\sqrt{\color{blue}{\sqrt{2} \cdot \sqrt{2}}}}} \cdot \left(a1 \cdot a1 + a2 \cdot a2\right)\]
  9. Applied sqrt-prod0.5

    \[\leadsto \frac{\frac{\cos th}{\sqrt{\sqrt{2}}}}{\sqrt{\color{blue}{\sqrt{\sqrt{2}} \cdot \sqrt{\sqrt{2}}}}} \cdot \left(a1 \cdot a1 + a2 \cdot a2\right)\]
  10. Applied sqrt-prod0.5

    \[\leadsto \frac{\frac{\cos th}{\sqrt{\sqrt{2}}}}{\color{blue}{\sqrt{\sqrt{\sqrt{2}}} \cdot \sqrt{\sqrt{\sqrt{2}}}}} \cdot \left(a1 \cdot a1 + a2 \cdot a2\right)\]
  11. Applied add-sqr-sqrt0.5

    \[\leadsto \frac{\frac{\cos th}{\sqrt{\sqrt{\color{blue}{\sqrt{2} \cdot \sqrt{2}}}}}}{\sqrt{\sqrt{\sqrt{2}}} \cdot \sqrt{\sqrt{\sqrt{2}}}} \cdot \left(a1 \cdot a1 + a2 \cdot a2\right)\]
  12. Applied sqrt-prod0.5

    \[\leadsto \frac{\frac{\cos th}{\sqrt{\color{blue}{\sqrt{\sqrt{2}} \cdot \sqrt{\sqrt{2}}}}}}{\sqrt{\sqrt{\sqrt{2}}} \cdot \sqrt{\sqrt{\sqrt{2}}}} \cdot \left(a1 \cdot a1 + a2 \cdot a2\right)\]
  13. Applied sqrt-prod0.5

    \[\leadsto \frac{\frac{\cos th}{\color{blue}{\sqrt{\sqrt{\sqrt{2}}} \cdot \sqrt{\sqrt{\sqrt{2}}}}}}{\sqrt{\sqrt{\sqrt{2}}} \cdot \sqrt{\sqrt{\sqrt{2}}}} \cdot \left(a1 \cdot a1 + a2 \cdot a2\right)\]
  14. Applied *-un-lft-identity0.5

    \[\leadsto \frac{\frac{\color{blue}{1 \cdot \cos th}}{\sqrt{\sqrt{\sqrt{2}}} \cdot \sqrt{\sqrt{\sqrt{2}}}}}{\sqrt{\sqrt{\sqrt{2}}} \cdot \sqrt{\sqrt{\sqrt{2}}}} \cdot \left(a1 \cdot a1 + a2 \cdot a2\right)\]
  15. Applied times-frac0.5

    \[\leadsto \frac{\color{blue}{\frac{1}{\sqrt{\sqrt{\sqrt{2}}}} \cdot \frac{\cos th}{\sqrt{\sqrt{\sqrt{2}}}}}}{\sqrt{\sqrt{\sqrt{2}}} \cdot \sqrt{\sqrt{\sqrt{2}}}} \cdot \left(a1 \cdot a1 + a2 \cdot a2\right)\]
  16. Applied times-frac0.6

    \[\leadsto \color{blue}{\left(\frac{\frac{1}{\sqrt{\sqrt{\sqrt{2}}}}}{\sqrt{\sqrt{\sqrt{2}}}} \cdot \frac{\frac{\cos th}{\sqrt{\sqrt{\sqrt{2}}}}}{\sqrt{\sqrt{\sqrt{2}}}}\right)} \cdot \left(a1 \cdot a1 + a2 \cdot a2\right)\]
  17. Applied associate-*l*0.6

    \[\leadsto \color{blue}{\frac{\frac{1}{\sqrt{\sqrt{\sqrt{2}}}}}{\sqrt{\sqrt{\sqrt{2}}}} \cdot \left(\frac{\frac{\cos th}{\sqrt{\sqrt{\sqrt{2}}}}}{\sqrt{\sqrt{\sqrt{2}}}} \cdot \left(a1 \cdot a1 + a2 \cdot a2\right)\right)}\]
  18. Simplified0.4

    \[\leadsto \frac{\frac{1}{\sqrt{\sqrt{\sqrt{2}}}}}{\sqrt{\sqrt{\sqrt{2}}}} \cdot \color{blue}{\frac{\cos th \cdot \left(a1 \cdot a1 + a2 \cdot a2\right)}{\sqrt{\sqrt{2}}}}\]
  19. Final simplification0.4

    \[\leadsto \frac{\frac{1}{\sqrt{\sqrt{\sqrt{2}}}}}{\sqrt{\sqrt{\sqrt{2}}}} \cdot \frac{\cos th \cdot \left(a1 \cdot a1 + a2 \cdot a2\right)}{\sqrt{\sqrt{2}}}\]

Reproduce

herbie shell --seed 2019303 
(FPCore (a1 a2 th)
  :name "Migdal et al, Equation (64)"
  :precision binary64
  (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))))