Beckmann Sample, normalization factor

Percentage Accurate: 97.9% → 98.7%
Time: 14.5s
Alternatives: 9
Speedup: 1.0×

Specification

?
\[\left(0 < cosTheta \land cosTheta < 0.9999\right) \land \left(-1 < c \land c < 1\right)\]
\[\begin{array}{l} \\ \frac{1}{\left(1 + c\right) + \left(\frac{1}{\sqrt{\pi}} \cdot \frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta}\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \end{array} \]
(FPCore (cosTheta c)
 :precision binary32
 (/
  1.0
  (+
   (+ 1.0 c)
   (*
    (* (/ 1.0 (sqrt PI)) (/ (sqrt (- (- 1.0 cosTheta) cosTheta)) cosTheta))
    (exp (* (- cosTheta) cosTheta))))))
float code(float cosTheta, float c) {
	return 1.0f / ((1.0f + c) + (((1.0f / sqrtf(((float) M_PI))) * (sqrtf(((1.0f - cosTheta) - cosTheta)) / cosTheta)) * expf((-cosTheta * cosTheta))));
}
function code(cosTheta, c)
	return Float32(Float32(1.0) / Float32(Float32(Float32(1.0) + c) + Float32(Float32(Float32(Float32(1.0) / sqrt(Float32(pi))) * Float32(sqrt(Float32(Float32(Float32(1.0) - cosTheta) - cosTheta)) / cosTheta)) * exp(Float32(Float32(-cosTheta) * cosTheta)))))
end
function tmp = code(cosTheta, c)
	tmp = single(1.0) / ((single(1.0) + c) + (((single(1.0) / sqrt(single(pi))) * (sqrt(((single(1.0) - cosTheta) - cosTheta)) / cosTheta)) * exp((-cosTheta * cosTheta))));
end
\begin{array}{l}

\\
\frac{1}{\left(1 + c\right) + \left(\frac{1}{\sqrt{\pi}} \cdot \frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta}\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta}}
\end{array}

Sampling outcomes in binary32 precision:

Local Percentage Accuracy vs ?

The average percentage accuracy by input value. Horizontal axis shows value of an input variable; the variable is choosen in the title. Vertical axis is accuracy; higher is better. Red represent the original program, while blue represents Herbie's suggestion. These can be toggled with buttons below the plot. The line is an average while dots represent individual samples.

Accuracy vs Speed?

Herbie found 9 alternatives:

AlternativeAccuracySpeedup
The accuracy (vertical axis) and speed (horizontal axis) of each alternatives. Up and to the right is better. The red square shows the initial program, and each blue circle shows an alternative.The line shows the best available speed-accuracy tradeoffs.

Initial Program: 97.9% accurate, 1.0× speedup?

\[\begin{array}{l} \\ \frac{1}{\left(1 + c\right) + \left(\frac{1}{\sqrt{\pi}} \cdot \frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta}\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \end{array} \]
(FPCore (cosTheta c)
 :precision binary32
 (/
  1.0
  (+
   (+ 1.0 c)
   (*
    (* (/ 1.0 (sqrt PI)) (/ (sqrt (- (- 1.0 cosTheta) cosTheta)) cosTheta))
    (exp (* (- cosTheta) cosTheta))))))
float code(float cosTheta, float c) {
	return 1.0f / ((1.0f + c) + (((1.0f / sqrtf(((float) M_PI))) * (sqrtf(((1.0f - cosTheta) - cosTheta)) / cosTheta)) * expf((-cosTheta * cosTheta))));
}
function code(cosTheta, c)
	return Float32(Float32(1.0) / Float32(Float32(Float32(1.0) + c) + Float32(Float32(Float32(Float32(1.0) / sqrt(Float32(pi))) * Float32(sqrt(Float32(Float32(Float32(1.0) - cosTheta) - cosTheta)) / cosTheta)) * exp(Float32(Float32(-cosTheta) * cosTheta)))))
end
function tmp = code(cosTheta, c)
	tmp = single(1.0) / ((single(1.0) + c) + (((single(1.0) / sqrt(single(pi))) * (sqrt(((single(1.0) - cosTheta) - cosTheta)) / cosTheta)) * exp((-cosTheta * cosTheta))));
end
\begin{array}{l}

\\
\frac{1}{\left(1 + c\right) + \left(\frac{1}{\sqrt{\pi}} \cdot \frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta}\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta}}
\end{array}

Alternative 1: 98.7% accurate, 0.8× speedup?

\[\begin{array}{l} \\ \frac{1}{\left(1 + c\right) + \frac{\frac{{\pi}^{-0.16666666666666666} \cdot \sqrt{1 - cosTheta \cdot 2}}{cosTheta}}{\sqrt[3]{\pi}} \cdot e^{cosTheta \cdot \left(-cosTheta\right)}} \end{array} \]
(FPCore (cosTheta c)
 :precision binary32
 (/
  1.0
  (+
   (+ 1.0 c)
   (*
    (/
     (/
      (* (pow PI -0.16666666666666666) (sqrt (- 1.0 (* cosTheta 2.0))))
      cosTheta)
     (cbrt PI))
    (exp (* cosTheta (- cosTheta)))))))
float code(float cosTheta, float c) {
	return 1.0f / ((1.0f + c) + ((((powf(((float) M_PI), -0.16666666666666666f) * sqrtf((1.0f - (cosTheta * 2.0f)))) / cosTheta) / cbrtf(((float) M_PI))) * expf((cosTheta * -cosTheta))));
}
function code(cosTheta, c)
	return Float32(Float32(1.0) / Float32(Float32(Float32(1.0) + c) + Float32(Float32(Float32(Float32((Float32(pi) ^ Float32(-0.16666666666666666)) * sqrt(Float32(Float32(1.0) - Float32(cosTheta * Float32(2.0))))) / cosTheta) / cbrt(Float32(pi))) * exp(Float32(cosTheta * Float32(-cosTheta))))))
end
\begin{array}{l}

\\
\frac{1}{\left(1 + c\right) + \frac{\frac{{\pi}^{-0.16666666666666666} \cdot \sqrt{1 - cosTheta \cdot 2}}{cosTheta}}{\sqrt[3]{\pi}} \cdot e^{cosTheta \cdot \left(-cosTheta\right)}}
\end{array}
Derivation
  1. Initial program 97.6%

    \[\frac{1}{\left(1 + c\right) + \left(\frac{1}{\sqrt{\pi}} \cdot \frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta}\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
  2. Add Preprocessing
  3. Step-by-step derivation
    1. add-cube-cbrt97.6%

      \[\leadsto \frac{1}{\left(1 + c\right) + \left(\color{blue}{\left(\left(\sqrt[3]{\frac{1}{\sqrt{\pi}}} \cdot \sqrt[3]{\frac{1}{\sqrt{\pi}}}\right) \cdot \sqrt[3]{\frac{1}{\sqrt{\pi}}}\right)} \cdot \frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta}\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
    2. cbrt-unprod97.6%

      \[\leadsto \frac{1}{\left(1 + c\right) + \left(\left(\color{blue}{\sqrt[3]{\frac{1}{\sqrt{\pi}} \cdot \frac{1}{\sqrt{\pi}}}} \cdot \sqrt[3]{\frac{1}{\sqrt{\pi}}}\right) \cdot \frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta}\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
    3. frac-times97.8%

      \[\leadsto \frac{1}{\left(1 + c\right) + \left(\left(\sqrt[3]{\color{blue}{\frac{1 \cdot 1}{\sqrt{\pi} \cdot \sqrt{\pi}}}} \cdot \sqrt[3]{\frac{1}{\sqrt{\pi}}}\right) \cdot \frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta}\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
    4. metadata-eval97.8%

      \[\leadsto \frac{1}{\left(1 + c\right) + \left(\left(\sqrt[3]{\frac{\color{blue}{1}}{\sqrt{\pi} \cdot \sqrt{\pi}}} \cdot \sqrt[3]{\frac{1}{\sqrt{\pi}}}\right) \cdot \frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta}\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
    5. add-sqr-sqrt97.8%

      \[\leadsto \frac{1}{\left(1 + c\right) + \left(\left(\sqrt[3]{\frac{1}{\color{blue}{\pi}}} \cdot \sqrt[3]{\frac{1}{\sqrt{\pi}}}\right) \cdot \frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta}\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
    6. inv-pow97.8%

      \[\leadsto \frac{1}{\left(1 + c\right) + \left(\left(\sqrt[3]{\frac{1}{\pi}} \cdot \sqrt[3]{\color{blue}{{\left(\sqrt{\pi}\right)}^{-1}}}\right) \cdot \frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta}\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
    7. sqrt-pow297.8%

      \[\leadsto \frac{1}{\left(1 + c\right) + \left(\left(\sqrt[3]{\frac{1}{\pi}} \cdot \sqrt[3]{\color{blue}{{\pi}^{\left(\frac{-1}{2}\right)}}}\right) \cdot \frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta}\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
    8. metadata-eval97.8%

      \[\leadsto \frac{1}{\left(1 + c\right) + \left(\left(\sqrt[3]{\frac{1}{\pi}} \cdot \sqrt[3]{{\pi}^{\color{blue}{-0.5}}}\right) \cdot \frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta}\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
  4. Applied egg-rr97.8%

    \[\leadsto \frac{1}{\left(1 + c\right) + \left(\color{blue}{\left(\sqrt[3]{\frac{1}{\pi}} \cdot \sqrt[3]{{\pi}^{-0.5}}\right)} \cdot \frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta}\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
  5. Step-by-step derivation
    1. associate-*l*98.3%

      \[\leadsto \frac{1}{\left(1 + c\right) + \color{blue}{\left(\sqrt[3]{\frac{1}{\pi}} \cdot \left(\sqrt[3]{{\pi}^{-0.5}} \cdot \frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta}\right)\right)} \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
    2. cbrt-div98.3%

      \[\leadsto \frac{1}{\left(1 + c\right) + \left(\color{blue}{\frac{\sqrt[3]{1}}{\sqrt[3]{\pi}}} \cdot \left(\sqrt[3]{{\pi}^{-0.5}} \cdot \frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta}\right)\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
    3. metadata-eval98.3%

      \[\leadsto \frac{1}{\left(1 + c\right) + \left(\frac{\color{blue}{1}}{\sqrt[3]{\pi}} \cdot \left(\sqrt[3]{{\pi}^{-0.5}} \cdot \frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta}\right)\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
    4. pow1/398.3%

      \[\leadsto \frac{1}{\left(1 + c\right) + \left(\frac{1}{\sqrt[3]{\pi}} \cdot \left(\color{blue}{{\left({\pi}^{-0.5}\right)}^{0.3333333333333333}} \cdot \frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta}\right)\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
    5. pow-pow98.3%

      \[\leadsto \frac{1}{\left(1 + c\right) + \left(\frac{1}{\sqrt[3]{\pi}} \cdot \left(\color{blue}{{\pi}^{\left(-0.5 \cdot 0.3333333333333333\right)}} \cdot \frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta}\right)\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
    6. metadata-eval98.3%

      \[\leadsto \frac{1}{\left(1 + c\right) + \left(\frac{1}{\sqrt[3]{\pi}} \cdot \left({\pi}^{\color{blue}{-0.16666666666666666}} \cdot \frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta}\right)\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
    7. associate--l-98.3%

      \[\leadsto \frac{1}{\left(1 + c\right) + \left(\frac{1}{\sqrt[3]{\pi}} \cdot \left({\pi}^{-0.16666666666666666} \cdot \frac{\sqrt{\color{blue}{1 - \left(cosTheta + cosTheta\right)}}}{cosTheta}\right)\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
    8. add-log-exp98.3%

      \[\leadsto \frac{1}{\left(1 + c\right) + \left(\frac{1}{\sqrt[3]{\pi}} \cdot \left({\pi}^{-0.16666666666666666} \cdot \frac{\sqrt{1 - \left(\color{blue}{\log \left(e^{cosTheta}\right)} + cosTheta\right)}}{cosTheta}\right)\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
    9. add-log-exp98.3%

      \[\leadsto \frac{1}{\left(1 + c\right) + \left(\frac{1}{\sqrt[3]{\pi}} \cdot \left({\pi}^{-0.16666666666666666} \cdot \frac{\sqrt{1 - \left(\log \left(e^{cosTheta}\right) + \color{blue}{\log \left(e^{cosTheta}\right)}\right)}}{cosTheta}\right)\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
    10. sum-log98.3%

      \[\leadsto \frac{1}{\left(1 + c\right) + \left(\frac{1}{\sqrt[3]{\pi}} \cdot \left({\pi}^{-0.16666666666666666} \cdot \frac{\sqrt{1 - \color{blue}{\log \left(e^{cosTheta} \cdot e^{cosTheta}\right)}}}{cosTheta}\right)\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
    11. exp-lft-sqr98.4%

      \[\leadsto \frac{1}{\left(1 + c\right) + \left(\frac{1}{\sqrt[3]{\pi}} \cdot \left({\pi}^{-0.16666666666666666} \cdot \frac{\sqrt{1 - \log \color{blue}{\left(e^{cosTheta \cdot 2}\right)}}}{cosTheta}\right)\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
    12. add-log-exp98.3%

      \[\leadsto \frac{1}{\left(1 + c\right) + \left(\frac{1}{\sqrt[3]{\pi}} \cdot \left({\pi}^{-0.16666666666666666} \cdot \frac{\sqrt{1 - \color{blue}{cosTheta \cdot 2}}}{cosTheta}\right)\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
  6. Applied egg-rr98.3%

    \[\leadsto \frac{1}{\left(1 + c\right) + \color{blue}{\left(\frac{1}{\sqrt[3]{\pi}} \cdot \left({\pi}^{-0.16666666666666666} \cdot \frac{\sqrt{1 - cosTheta \cdot 2}}{cosTheta}\right)\right)} \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
  7. Step-by-step derivation
    1. Applied egg-rr98.3%

      \[\leadsto \frac{1}{\left(1 + c\right) + \color{blue}{\left(\frac{1}{\sqrt[3]{\pi}} \cdot \left({\pi}^{-0.16666666666666666} \cdot \frac{\sqrt{1 - cosTheta \cdot 2}}{cosTheta}\right)\right)} \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
    2. Step-by-step derivation
      1. associate-*l/98.4%

        \[\leadsto \frac{1}{\left(1 + c\right) + \color{blue}{\frac{1 \cdot \left({\pi}^{-0.16666666666666666} \cdot \frac{\sqrt{1 - cosTheta \cdot 2}}{cosTheta}\right)}{\sqrt[3]{\pi}}} \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
      2. *-lft-identity98.4%

        \[\leadsto \frac{1}{\left(1 + c\right) + \frac{\color{blue}{{\pi}^{-0.16666666666666666} \cdot \frac{\sqrt{1 - cosTheta \cdot 2}}{cosTheta}}}{\sqrt[3]{\pi}} \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
      3. associate-*r/98.5%

        \[\leadsto \frac{1}{\left(1 + c\right) + \frac{\color{blue}{\frac{{\pi}^{-0.16666666666666666} \cdot \sqrt{1 - cosTheta \cdot 2}}{cosTheta}}}{\sqrt[3]{\pi}} \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
    3. Simplified98.5%

      \[\leadsto \frac{1}{\left(1 + c\right) + \color{blue}{\frac{\frac{{\pi}^{-0.16666666666666666} \cdot \sqrt{1 - cosTheta \cdot 2}}{cosTheta}}{\sqrt[3]{\pi}}} \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
    4. Final simplification98.5%

      \[\leadsto \frac{1}{\left(1 + c\right) + \frac{\frac{{\pi}^{-0.16666666666666666} \cdot \sqrt{1 - cosTheta \cdot 2}}{cosTheta}}{\sqrt[3]{\pi}} \cdot e^{cosTheta \cdot \left(-cosTheta\right)}} \]
    5. Add Preprocessing

    Alternative 2: 98.1% accurate, 0.8× speedup?

    \[\begin{array}{l} \\ \frac{1}{\left(1 + c\right) + e^{cosTheta \cdot \left(-cosTheta\right)} \cdot \frac{\sqrt{1 - cosTheta \cdot 2} \cdot \frac{{\pi}^{-0.16666666666666666}}{\sqrt[3]{\pi}}}{cosTheta}} \end{array} \]
    (FPCore (cosTheta c)
     :precision binary32
     (/
      1.0
      (+
       (+ 1.0 c)
       (*
        (exp (* cosTheta (- cosTheta)))
        (/
         (*
          (sqrt (- 1.0 (* cosTheta 2.0)))
          (/ (pow PI -0.16666666666666666) (cbrt PI)))
         cosTheta)))))
    float code(float cosTheta, float c) {
    	return 1.0f / ((1.0f + c) + (expf((cosTheta * -cosTheta)) * ((sqrtf((1.0f - (cosTheta * 2.0f))) * (powf(((float) M_PI), -0.16666666666666666f) / cbrtf(((float) M_PI)))) / cosTheta)));
    }
    
    function code(cosTheta, c)
    	return Float32(Float32(1.0) / Float32(Float32(Float32(1.0) + c) + Float32(exp(Float32(cosTheta * Float32(-cosTheta))) * Float32(Float32(sqrt(Float32(Float32(1.0) - Float32(cosTheta * Float32(2.0)))) * Float32((Float32(pi) ^ Float32(-0.16666666666666666)) / cbrt(Float32(pi)))) / cosTheta))))
    end
    
    \begin{array}{l}
    
    \\
    \frac{1}{\left(1 + c\right) + e^{cosTheta \cdot \left(-cosTheta\right)} \cdot \frac{\sqrt{1 - cosTheta \cdot 2} \cdot \frac{{\pi}^{-0.16666666666666666}}{\sqrt[3]{\pi}}}{cosTheta}}
    \end{array}
    
    Derivation
    1. Initial program 97.6%

      \[\frac{1}{\left(1 + c\right) + \left(\frac{1}{\sqrt{\pi}} \cdot \frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta}\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
    2. Add Preprocessing
    3. Step-by-step derivation
      1. add-cube-cbrt97.6%

        \[\leadsto \frac{1}{\left(1 + c\right) + \left(\color{blue}{\left(\left(\sqrt[3]{\frac{1}{\sqrt{\pi}}} \cdot \sqrt[3]{\frac{1}{\sqrt{\pi}}}\right) \cdot \sqrt[3]{\frac{1}{\sqrt{\pi}}}\right)} \cdot \frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta}\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
      2. cbrt-unprod97.6%

        \[\leadsto \frac{1}{\left(1 + c\right) + \left(\left(\color{blue}{\sqrt[3]{\frac{1}{\sqrt{\pi}} \cdot \frac{1}{\sqrt{\pi}}}} \cdot \sqrt[3]{\frac{1}{\sqrt{\pi}}}\right) \cdot \frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta}\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
      3. frac-times97.8%

        \[\leadsto \frac{1}{\left(1 + c\right) + \left(\left(\sqrt[3]{\color{blue}{\frac{1 \cdot 1}{\sqrt{\pi} \cdot \sqrt{\pi}}}} \cdot \sqrt[3]{\frac{1}{\sqrt{\pi}}}\right) \cdot \frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta}\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
      4. metadata-eval97.8%

        \[\leadsto \frac{1}{\left(1 + c\right) + \left(\left(\sqrt[3]{\frac{\color{blue}{1}}{\sqrt{\pi} \cdot \sqrt{\pi}}} \cdot \sqrt[3]{\frac{1}{\sqrt{\pi}}}\right) \cdot \frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta}\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
      5. add-sqr-sqrt97.8%

        \[\leadsto \frac{1}{\left(1 + c\right) + \left(\left(\sqrt[3]{\frac{1}{\color{blue}{\pi}}} \cdot \sqrt[3]{\frac{1}{\sqrt{\pi}}}\right) \cdot \frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta}\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
      6. inv-pow97.8%

        \[\leadsto \frac{1}{\left(1 + c\right) + \left(\left(\sqrt[3]{\frac{1}{\pi}} \cdot \sqrt[3]{\color{blue}{{\left(\sqrt{\pi}\right)}^{-1}}}\right) \cdot \frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta}\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
      7. sqrt-pow297.8%

        \[\leadsto \frac{1}{\left(1 + c\right) + \left(\left(\sqrt[3]{\frac{1}{\pi}} \cdot \sqrt[3]{\color{blue}{{\pi}^{\left(\frac{-1}{2}\right)}}}\right) \cdot \frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta}\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
      8. metadata-eval97.8%

        \[\leadsto \frac{1}{\left(1 + c\right) + \left(\left(\sqrt[3]{\frac{1}{\pi}} \cdot \sqrt[3]{{\pi}^{\color{blue}{-0.5}}}\right) \cdot \frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta}\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
    4. Applied egg-rr97.8%

      \[\leadsto \frac{1}{\left(1 + c\right) + \left(\color{blue}{\left(\sqrt[3]{\frac{1}{\pi}} \cdot \sqrt[3]{{\pi}^{-0.5}}\right)} \cdot \frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta}\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
    5. Step-by-step derivation
      1. associate-*r/97.7%

        \[\leadsto \frac{1}{\left(1 + c\right) + \color{blue}{\frac{\left(\sqrt[3]{\frac{1}{\pi}} \cdot \sqrt[3]{{\pi}^{-0.5}}\right) \cdot \sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta}} \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
      2. inv-pow97.7%

        \[\leadsto \frac{1}{\left(1 + c\right) + \frac{\left(\sqrt[3]{\color{blue}{{\pi}^{-1}}} \cdot \sqrt[3]{{\pi}^{-0.5}}\right) \cdot \sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta} \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
      3. metadata-eval97.7%

        \[\leadsto \frac{1}{\left(1 + c\right) + \frac{\left(\sqrt[3]{{\pi}^{\color{blue}{\left(-0.5 + -0.5\right)}}} \cdot \sqrt[3]{{\pi}^{-0.5}}\right) \cdot \sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta} \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
      4. pow-prod-up97.7%

        \[\leadsto \frac{1}{\left(1 + c\right) + \frac{\left(\sqrt[3]{\color{blue}{{\pi}^{-0.5} \cdot {\pi}^{-0.5}}} \cdot \sqrt[3]{{\pi}^{-0.5}}\right) \cdot \sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta} \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
      5. cbrt-unprod97.7%

        \[\leadsto \frac{1}{\left(1 + c\right) + \frac{\left(\color{blue}{\left(\sqrt[3]{{\pi}^{-0.5}} \cdot \sqrt[3]{{\pi}^{-0.5}}\right)} \cdot \sqrt[3]{{\pi}^{-0.5}}\right) \cdot \sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta} \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
      6. add-cube-cbrt97.7%

        \[\leadsto \frac{1}{\left(1 + c\right) + \frac{\color{blue}{{\pi}^{-0.5}} \cdot \sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta} \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
      7. associate--l-97.7%

        \[\leadsto \frac{1}{\left(1 + c\right) + \frac{{\pi}^{-0.5} \cdot \sqrt{\color{blue}{1 - \left(cosTheta + cosTheta\right)}}}{cosTheta} \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
      8. add-log-exp97.6%

        \[\leadsto \frac{1}{\left(1 + c\right) + \frac{{\pi}^{-0.5} \cdot \sqrt{1 - \left(\color{blue}{\log \left(e^{cosTheta}\right)} + cosTheta\right)}}{cosTheta} \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
      9. add-log-exp97.7%

        \[\leadsto \frac{1}{\left(1 + c\right) + \frac{{\pi}^{-0.5} \cdot \sqrt{1 - \left(\log \left(e^{cosTheta}\right) + \color{blue}{\log \left(e^{cosTheta}\right)}\right)}}{cosTheta} \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
      10. sum-log97.7%

        \[\leadsto \frac{1}{\left(1 + c\right) + \frac{{\pi}^{-0.5} \cdot \sqrt{1 - \color{blue}{\log \left(e^{cosTheta} \cdot e^{cosTheta}\right)}}}{cosTheta} \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
      11. exp-lft-sqr97.8%

        \[\leadsto \frac{1}{\left(1 + c\right) + \frac{{\pi}^{-0.5} \cdot \sqrt{1 - \log \color{blue}{\left(e^{cosTheta \cdot 2}\right)}}}{cosTheta} \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
      12. add-log-exp97.7%

        \[\leadsto \frac{1}{\left(1 + c\right) + \frac{{\pi}^{-0.5} \cdot \sqrt{1 - \color{blue}{cosTheta \cdot 2}}}{cosTheta} \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
    6. Applied egg-rr97.7%

      \[\leadsto \frac{1}{\left(1 + c\right) + \color{blue}{\frac{{\pi}^{-0.5} \cdot \sqrt{1 - cosTheta \cdot 2}}{cosTheta}} \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
    7. Step-by-step derivation
      1. add-cube-cbrt97.7%

        \[\leadsto \frac{1}{\left(1 + c\right) + \frac{\color{blue}{\left(\left(\sqrt[3]{{\pi}^{-0.5}} \cdot \sqrt[3]{{\pi}^{-0.5}}\right) \cdot \sqrt[3]{{\pi}^{-0.5}}\right)} \cdot \sqrt{1 - cosTheta \cdot 2}}{cosTheta} \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
      2. cbrt-unprod97.7%

        \[\leadsto \frac{1}{\left(1 + c\right) + \frac{\left(\color{blue}{\sqrt[3]{{\pi}^{-0.5} \cdot {\pi}^{-0.5}}} \cdot \sqrt[3]{{\pi}^{-0.5}}\right) \cdot \sqrt{1 - cosTheta \cdot 2}}{cosTheta} \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
      3. pow-prod-up97.7%

        \[\leadsto \frac{1}{\left(1 + c\right) + \frac{\left(\sqrt[3]{\color{blue}{{\pi}^{\left(-0.5 + -0.5\right)}}} \cdot \sqrt[3]{{\pi}^{-0.5}}\right) \cdot \sqrt{1 - cosTheta \cdot 2}}{cosTheta} \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
      4. metadata-eval97.7%

        \[\leadsto \frac{1}{\left(1 + c\right) + \frac{\left(\sqrt[3]{{\pi}^{\color{blue}{-1}}} \cdot \sqrt[3]{{\pi}^{-0.5}}\right) \cdot \sqrt{1 - cosTheta \cdot 2}}{cosTheta} \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
      5. inv-pow97.7%

        \[\leadsto \frac{1}{\left(1 + c\right) + \frac{\left(\sqrt[3]{\color{blue}{\frac{1}{\pi}}} \cdot \sqrt[3]{{\pi}^{-0.5}}\right) \cdot \sqrt{1 - cosTheta \cdot 2}}{cosTheta} \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
      6. *-commutative97.7%

        \[\leadsto \frac{1}{\left(1 + c\right) + \frac{\color{blue}{\left(\sqrt[3]{{\pi}^{-0.5}} \cdot \sqrt[3]{\frac{1}{\pi}}\right)} \cdot \sqrt{1 - cosTheta \cdot 2}}{cosTheta} \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
      7. pow1/397.7%

        \[\leadsto \frac{1}{\left(1 + c\right) + \frac{\left(\color{blue}{{\left({\pi}^{-0.5}\right)}^{0.3333333333333333}} \cdot \sqrt[3]{\frac{1}{\pi}}\right) \cdot \sqrt{1 - cosTheta \cdot 2}}{cosTheta} \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
      8. pow-pow97.7%

        \[\leadsto \frac{1}{\left(1 + c\right) + \frac{\left(\color{blue}{{\pi}^{\left(-0.5 \cdot 0.3333333333333333\right)}} \cdot \sqrt[3]{\frac{1}{\pi}}\right) \cdot \sqrt{1 - cosTheta \cdot 2}}{cosTheta} \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
      9. metadata-eval97.7%

        \[\leadsto \frac{1}{\left(1 + c\right) + \frac{\left({\pi}^{\color{blue}{-0.16666666666666666}} \cdot \sqrt[3]{\frac{1}{\pi}}\right) \cdot \sqrt{1 - cosTheta \cdot 2}}{cosTheta} \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
      10. cbrt-div97.7%

        \[\leadsto \frac{1}{\left(1 + c\right) + \frac{\left({\pi}^{-0.16666666666666666} \cdot \color{blue}{\frac{\sqrt[3]{1}}{\sqrt[3]{\pi}}}\right) \cdot \sqrt{1 - cosTheta \cdot 2}}{cosTheta} \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
      11. metadata-eval97.7%

        \[\leadsto \frac{1}{\left(1 + c\right) + \frac{\left({\pi}^{-0.16666666666666666} \cdot \frac{\color{blue}{1}}{\sqrt[3]{\pi}}\right) \cdot \sqrt{1 - cosTheta \cdot 2}}{cosTheta} \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
    8. Applied egg-rr97.7%

      \[\leadsto \frac{1}{\left(1 + c\right) + \frac{\color{blue}{\left({\pi}^{-0.16666666666666666} \cdot \frac{1}{\sqrt[3]{\pi}}\right)} \cdot \sqrt{1 - cosTheta \cdot 2}}{cosTheta} \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
    9. Step-by-step derivation
      1. associate-*r/97.7%

        \[\leadsto \frac{1}{\left(1 + c\right) + \frac{\color{blue}{\frac{{\pi}^{-0.16666666666666666} \cdot 1}{\sqrt[3]{\pi}}} \cdot \sqrt{1 - cosTheta \cdot 2}}{cosTheta} \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
      2. *-rgt-identity97.7%

        \[\leadsto \frac{1}{\left(1 + c\right) + \frac{\frac{\color{blue}{{\pi}^{-0.16666666666666666}}}{\sqrt[3]{\pi}} \cdot \sqrt{1 - cosTheta \cdot 2}}{cosTheta} \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
    10. Simplified97.7%

      \[\leadsto \frac{1}{\left(1 + c\right) + \frac{\color{blue}{\frac{{\pi}^{-0.16666666666666666}}{\sqrt[3]{\pi}}} \cdot \sqrt{1 - cosTheta \cdot 2}}{cosTheta} \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
    11. Final simplification97.7%

      \[\leadsto \frac{1}{\left(1 + c\right) + e^{cosTheta \cdot \left(-cosTheta\right)} \cdot \frac{\sqrt{1 - cosTheta \cdot 2} \cdot \frac{{\pi}^{-0.16666666666666666}}{\sqrt[3]{\pi}}}{cosTheta}} \]
    12. Add Preprocessing

    Alternative 3: 98.0% accurate, 1.0× speedup?

    \[\begin{array}{l} \\ \frac{1}{1 + \left(c + \sqrt{\frac{1 + cosTheta \cdot -2}{\pi}} \cdot \frac{e^{-{cosTheta}^{2}}}{cosTheta}\right)} \end{array} \]
    (FPCore (cosTheta c)
     :precision binary32
     (/
      1.0
      (+
       1.0
       (+
        c
        (*
         (sqrt (/ (+ 1.0 (* cosTheta -2.0)) PI))
         (/ (exp (- (pow cosTheta 2.0))) cosTheta))))))
    float code(float cosTheta, float c) {
    	return 1.0f / (1.0f + (c + (sqrtf(((1.0f + (cosTheta * -2.0f)) / ((float) M_PI))) * (expf(-powf(cosTheta, 2.0f)) / cosTheta))));
    }
    
    function code(cosTheta, c)
    	return Float32(Float32(1.0) / Float32(Float32(1.0) + Float32(c + Float32(sqrt(Float32(Float32(Float32(1.0) + Float32(cosTheta * Float32(-2.0))) / Float32(pi))) * Float32(exp(Float32(-(cosTheta ^ Float32(2.0)))) / cosTheta)))))
    end
    
    function tmp = code(cosTheta, c)
    	tmp = single(1.0) / (single(1.0) + (c + (sqrt(((single(1.0) + (cosTheta * single(-2.0))) / single(pi))) * (exp(-(cosTheta ^ single(2.0))) / cosTheta))));
    end
    
    \begin{array}{l}
    
    \\
    \frac{1}{1 + \left(c + \sqrt{\frac{1 + cosTheta \cdot -2}{\pi}} \cdot \frac{e^{-{cosTheta}^{2}}}{cosTheta}\right)}
    \end{array}
    
    Derivation
    1. Initial program 97.6%

      \[\frac{1}{\left(1 + c\right) + \left(\frac{1}{\sqrt{\pi}} \cdot \frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta}\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
    2. Step-by-step derivation
      1. associate-+l+97.6%

        \[\leadsto \frac{1}{\color{blue}{1 + \left(c + \left(\frac{1}{\sqrt{\pi}} \cdot \frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta}\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta}\right)}} \]
      2. +-commutative97.6%

        \[\leadsto \frac{1}{1 + \color{blue}{\left(\left(\frac{1}{\sqrt{\pi}} \cdot \frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta}\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta} + c\right)}} \]
      3. *-commutative97.6%

        \[\leadsto \frac{1}{1 + \left(\color{blue}{\left(\frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta} \cdot \frac{1}{\sqrt{\pi}}\right)} \cdot e^{\left(-cosTheta\right) \cdot cosTheta} + c\right)} \]
      4. associate-*l*97.6%

        \[\leadsto \frac{1}{1 + \left(\color{blue}{\frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta} \cdot \left(\frac{1}{\sqrt{\pi}} \cdot e^{\left(-cosTheta\right) \cdot cosTheta}\right)} + c\right)} \]
      5. fma-define97.6%

        \[\leadsto \frac{1}{1 + \color{blue}{\mathsf{fma}\left(\frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta}, \frac{1}{\sqrt{\pi}} \cdot e^{\left(-cosTheta\right) \cdot cosTheta}, c\right)}} \]
    3. Simplified97.6%

      \[\leadsto \color{blue}{\frac{1}{1 + \mathsf{fma}\left(\frac{\sqrt{\mathsf{fma}\left(cosTheta, -2, 1\right)}}{cosTheta}, \frac{{\left(e^{cosTheta}\right)}^{\left(-cosTheta\right)}}{\sqrt{\pi}}, c\right)}} \]
    4. Add Preprocessing
    5. Taylor expanded in c around 0 97.7%

      \[\leadsto \frac{1}{1 + \color{blue}{\left(c + \frac{e^{-1 \cdot {cosTheta}^{2}}}{cosTheta} \cdot \sqrt{\frac{1 + -2 \cdot cosTheta}{\pi}}\right)}} \]
    6. Final simplification97.7%

      \[\leadsto \frac{1}{1 + \left(c + \sqrt{\frac{1 + cosTheta \cdot -2}{\pi}} \cdot \frac{e^{-{cosTheta}^{2}}}{cosTheta}\right)} \]
    7. Add Preprocessing

    Alternative 4: 97.7% accurate, 1.0× speedup?

    \[\begin{array}{l} \\ \frac{1}{1 + \sqrt{\frac{1 - cosTheta \cdot 2}{\pi}} \cdot \frac{e^{-{cosTheta}^{2}}}{cosTheta}} \end{array} \]
    (FPCore (cosTheta c)
     :precision binary32
     (/
      1.0
      (+
       1.0
       (*
        (sqrt (/ (- 1.0 (* cosTheta 2.0)) PI))
        (/ (exp (- (pow cosTheta 2.0))) cosTheta)))))
    float code(float cosTheta, float c) {
    	return 1.0f / (1.0f + (sqrtf(((1.0f - (cosTheta * 2.0f)) / ((float) M_PI))) * (expf(-powf(cosTheta, 2.0f)) / cosTheta)));
    }
    
    function code(cosTheta, c)
    	return Float32(Float32(1.0) / Float32(Float32(1.0) + Float32(sqrt(Float32(Float32(Float32(1.0) - Float32(cosTheta * Float32(2.0))) / Float32(pi))) * Float32(exp(Float32(-(cosTheta ^ Float32(2.0)))) / cosTheta))))
    end
    
    function tmp = code(cosTheta, c)
    	tmp = single(1.0) / (single(1.0) + (sqrt(((single(1.0) - (cosTheta * single(2.0))) / single(pi))) * (exp(-(cosTheta ^ single(2.0))) / cosTheta)));
    end
    
    \begin{array}{l}
    
    \\
    \frac{1}{1 + \sqrt{\frac{1 - cosTheta \cdot 2}{\pi}} \cdot \frac{e^{-{cosTheta}^{2}}}{cosTheta}}
    \end{array}
    
    Derivation
    1. Initial program 97.6%

      \[\frac{1}{\left(1 + c\right) + \left(\frac{1}{\sqrt{\pi}} \cdot \frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta}\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
    2. Add Preprocessing
    3. Step-by-step derivation
      1. add-cube-cbrt97.6%

        \[\leadsto \frac{1}{\left(1 + c\right) + \left(\color{blue}{\left(\left(\sqrt[3]{\frac{1}{\sqrt{\pi}}} \cdot \sqrt[3]{\frac{1}{\sqrt{\pi}}}\right) \cdot \sqrt[3]{\frac{1}{\sqrt{\pi}}}\right)} \cdot \frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta}\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
      2. cbrt-unprod97.6%

        \[\leadsto \frac{1}{\left(1 + c\right) + \left(\left(\color{blue}{\sqrt[3]{\frac{1}{\sqrt{\pi}} \cdot \frac{1}{\sqrt{\pi}}}} \cdot \sqrt[3]{\frac{1}{\sqrt{\pi}}}\right) \cdot \frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta}\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
      3. frac-times97.8%

        \[\leadsto \frac{1}{\left(1 + c\right) + \left(\left(\sqrt[3]{\color{blue}{\frac{1 \cdot 1}{\sqrt{\pi} \cdot \sqrt{\pi}}}} \cdot \sqrt[3]{\frac{1}{\sqrt{\pi}}}\right) \cdot \frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta}\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
      4. metadata-eval97.8%

        \[\leadsto \frac{1}{\left(1 + c\right) + \left(\left(\sqrt[3]{\frac{\color{blue}{1}}{\sqrt{\pi} \cdot \sqrt{\pi}}} \cdot \sqrt[3]{\frac{1}{\sqrt{\pi}}}\right) \cdot \frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta}\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
      5. add-sqr-sqrt97.8%

        \[\leadsto \frac{1}{\left(1 + c\right) + \left(\left(\sqrt[3]{\frac{1}{\color{blue}{\pi}}} \cdot \sqrt[3]{\frac{1}{\sqrt{\pi}}}\right) \cdot \frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta}\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
      6. inv-pow97.8%

        \[\leadsto \frac{1}{\left(1 + c\right) + \left(\left(\sqrt[3]{\frac{1}{\pi}} \cdot \sqrt[3]{\color{blue}{{\left(\sqrt{\pi}\right)}^{-1}}}\right) \cdot \frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta}\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
      7. sqrt-pow297.8%

        \[\leadsto \frac{1}{\left(1 + c\right) + \left(\left(\sqrt[3]{\frac{1}{\pi}} \cdot \sqrt[3]{\color{blue}{{\pi}^{\left(\frac{-1}{2}\right)}}}\right) \cdot \frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta}\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
      8. metadata-eval97.8%

        \[\leadsto \frac{1}{\left(1 + c\right) + \left(\left(\sqrt[3]{\frac{1}{\pi}} \cdot \sqrt[3]{{\pi}^{\color{blue}{-0.5}}}\right) \cdot \frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta}\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
    4. Applied egg-rr97.8%

      \[\leadsto \frac{1}{\left(1 + c\right) + \left(\color{blue}{\left(\sqrt[3]{\frac{1}{\pi}} \cdot \sqrt[3]{{\pi}^{-0.5}}\right)} \cdot \frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta}\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
    5. Step-by-step derivation
      1. associate-*l*98.3%

        \[\leadsto \frac{1}{\left(1 + c\right) + \color{blue}{\left(\sqrt[3]{\frac{1}{\pi}} \cdot \left(\sqrt[3]{{\pi}^{-0.5}} \cdot \frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta}\right)\right)} \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
      2. cbrt-div98.3%

        \[\leadsto \frac{1}{\left(1 + c\right) + \left(\color{blue}{\frac{\sqrt[3]{1}}{\sqrt[3]{\pi}}} \cdot \left(\sqrt[3]{{\pi}^{-0.5}} \cdot \frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta}\right)\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
      3. metadata-eval98.3%

        \[\leadsto \frac{1}{\left(1 + c\right) + \left(\frac{\color{blue}{1}}{\sqrt[3]{\pi}} \cdot \left(\sqrt[3]{{\pi}^{-0.5}} \cdot \frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta}\right)\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
      4. pow1/398.3%

        \[\leadsto \frac{1}{\left(1 + c\right) + \left(\frac{1}{\sqrt[3]{\pi}} \cdot \left(\color{blue}{{\left({\pi}^{-0.5}\right)}^{0.3333333333333333}} \cdot \frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta}\right)\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
      5. pow-pow98.3%

        \[\leadsto \frac{1}{\left(1 + c\right) + \left(\frac{1}{\sqrt[3]{\pi}} \cdot \left(\color{blue}{{\pi}^{\left(-0.5 \cdot 0.3333333333333333\right)}} \cdot \frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta}\right)\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
      6. metadata-eval98.3%

        \[\leadsto \frac{1}{\left(1 + c\right) + \left(\frac{1}{\sqrt[3]{\pi}} \cdot \left({\pi}^{\color{blue}{-0.16666666666666666}} \cdot \frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta}\right)\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
      7. associate--l-98.3%

        \[\leadsto \frac{1}{\left(1 + c\right) + \left(\frac{1}{\sqrt[3]{\pi}} \cdot \left({\pi}^{-0.16666666666666666} \cdot \frac{\sqrt{\color{blue}{1 - \left(cosTheta + cosTheta\right)}}}{cosTheta}\right)\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
      8. add-log-exp98.3%

        \[\leadsto \frac{1}{\left(1 + c\right) + \left(\frac{1}{\sqrt[3]{\pi}} \cdot \left({\pi}^{-0.16666666666666666} \cdot \frac{\sqrt{1 - \left(\color{blue}{\log \left(e^{cosTheta}\right)} + cosTheta\right)}}{cosTheta}\right)\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
      9. add-log-exp98.3%

        \[\leadsto \frac{1}{\left(1 + c\right) + \left(\frac{1}{\sqrt[3]{\pi}} \cdot \left({\pi}^{-0.16666666666666666} \cdot \frac{\sqrt{1 - \left(\log \left(e^{cosTheta}\right) + \color{blue}{\log \left(e^{cosTheta}\right)}\right)}}{cosTheta}\right)\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
      10. sum-log98.3%

        \[\leadsto \frac{1}{\left(1 + c\right) + \left(\frac{1}{\sqrt[3]{\pi}} \cdot \left({\pi}^{-0.16666666666666666} \cdot \frac{\sqrt{1 - \color{blue}{\log \left(e^{cosTheta} \cdot e^{cosTheta}\right)}}}{cosTheta}\right)\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
      11. exp-lft-sqr98.4%

        \[\leadsto \frac{1}{\left(1 + c\right) + \left(\frac{1}{\sqrt[3]{\pi}} \cdot \left({\pi}^{-0.16666666666666666} \cdot \frac{\sqrt{1 - \log \color{blue}{\left(e^{cosTheta \cdot 2}\right)}}}{cosTheta}\right)\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
      12. add-log-exp98.3%

        \[\leadsto \frac{1}{\left(1 + c\right) + \left(\frac{1}{\sqrt[3]{\pi}} \cdot \left({\pi}^{-0.16666666666666666} \cdot \frac{\sqrt{1 - \color{blue}{cosTheta \cdot 2}}}{cosTheta}\right)\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
    6. Applied egg-rr98.3%

      \[\leadsto \frac{1}{\left(1 + c\right) + \color{blue}{\left(\frac{1}{\sqrt[3]{\pi}} \cdot \left({\pi}^{-0.16666666666666666} \cdot \frac{\sqrt{1 - cosTheta \cdot 2}}{cosTheta}\right)\right)} \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
    7. Taylor expanded in c around 0 97.4%

      \[\leadsto \color{blue}{\frac{1}{1 + \frac{e^{-1 \cdot {cosTheta}^{2}}}{cosTheta} \cdot \sqrt{\frac{1 - 2 \cdot cosTheta}{\pi}}}} \]
    8. Step-by-step derivation
      1. neg-mul-197.4%

        \[\leadsto \frac{1}{1 + \frac{e^{\color{blue}{-{cosTheta}^{2}}}}{cosTheta} \cdot \sqrt{\frac{1 - 2 \cdot cosTheta}{\pi}}} \]
      2. rem-exp-log90.4%

        \[\leadsto \frac{1}{\color{blue}{e^{\log \left(1 + \frac{e^{-{cosTheta}^{2}}}{cosTheta} \cdot \sqrt{\frac{1 - 2 \cdot cosTheta}{\pi}}\right)}}} \]
      3. exp-neg90.4%

        \[\leadsto \color{blue}{e^{-\log \left(1 + \frac{e^{-{cosTheta}^{2}}}{cosTheta} \cdot \sqrt{\frac{1 - 2 \cdot cosTheta}{\pi}}\right)}} \]
      4. log1p-define90.4%

        \[\leadsto e^{-\color{blue}{\mathsf{log1p}\left(\frac{e^{-{cosTheta}^{2}}}{cosTheta} \cdot \sqrt{\frac{1 - 2 \cdot cosTheta}{\pi}}\right)}} \]
      5. *-commutative90.4%

        \[\leadsto e^{-\mathsf{log1p}\left(\color{blue}{\sqrt{\frac{1 - 2 \cdot cosTheta}{\pi}} \cdot \frac{e^{-{cosTheta}^{2}}}{cosTheta}}\right)} \]
    9. Simplified90.4%

      \[\leadsto \color{blue}{e^{-\mathsf{log1p}\left(\sqrt{\frac{1 - cosTheta \cdot 2}{\pi}} \cdot \frac{e^{-{cosTheta}^{2}}}{cosTheta}\right)}} \]
    10. Step-by-step derivation
      1. exp-neg90.3%

        \[\leadsto \color{blue}{\frac{1}{e^{\mathsf{log1p}\left(\sqrt{\frac{1 - cosTheta \cdot 2}{\pi}} \cdot \frac{e^{-{cosTheta}^{2}}}{cosTheta}\right)}}} \]
      2. log1p-undefine90.4%

        \[\leadsto \frac{1}{e^{\color{blue}{\log \left(1 + \sqrt{\frac{1 - cosTheta \cdot 2}{\pi}} \cdot \frac{e^{-{cosTheta}^{2}}}{cosTheta}\right)}}} \]
      3. rem-exp-log97.4%

        \[\leadsto \frac{1}{\color{blue}{1 + \sqrt{\frac{1 - cosTheta \cdot 2}{\pi}} \cdot \frac{e^{-{cosTheta}^{2}}}{cosTheta}}} \]
    11. Applied egg-rr97.4%

      \[\leadsto \color{blue}{\frac{1}{1 + \sqrt{\frac{1 - cosTheta \cdot 2}{\pi}} \cdot \frac{e^{-{cosTheta}^{2}}}{cosTheta}}} \]
    12. Add Preprocessing

    Alternative 5: 96.9% accurate, 1.4× speedup?

    \[\begin{array}{l} \\ \frac{1}{\left(1 + c\right) + e^{cosTheta \cdot \left(-cosTheta\right)} \cdot \frac{{\pi}^{-0.5} \cdot \left(1 + cosTheta \cdot \left(-1 + cosTheta \cdot \left(cosTheta \cdot -0.5 - 0.5\right)\right)\right)}{cosTheta}} \end{array} \]
    (FPCore (cosTheta c)
     :precision binary32
     (/
      1.0
      (+
       (+ 1.0 c)
       (*
        (exp (* cosTheta (- cosTheta)))
        (/
         (*
          (pow PI -0.5)
          (+ 1.0 (* cosTheta (+ -1.0 (* cosTheta (- (* cosTheta -0.5) 0.5))))))
         cosTheta)))))
    float code(float cosTheta, float c) {
    	return 1.0f / ((1.0f + c) + (expf((cosTheta * -cosTheta)) * ((powf(((float) M_PI), -0.5f) * (1.0f + (cosTheta * (-1.0f + (cosTheta * ((cosTheta * -0.5f) - 0.5f)))))) / cosTheta)));
    }
    
    function code(cosTheta, c)
    	return Float32(Float32(1.0) / Float32(Float32(Float32(1.0) + c) + Float32(exp(Float32(cosTheta * Float32(-cosTheta))) * Float32(Float32((Float32(pi) ^ Float32(-0.5)) * Float32(Float32(1.0) + Float32(cosTheta * Float32(Float32(-1.0) + Float32(cosTheta * Float32(Float32(cosTheta * Float32(-0.5)) - Float32(0.5))))))) / cosTheta))))
    end
    
    function tmp = code(cosTheta, c)
    	tmp = single(1.0) / ((single(1.0) + c) + (exp((cosTheta * -cosTheta)) * (((single(pi) ^ single(-0.5)) * (single(1.0) + (cosTheta * (single(-1.0) + (cosTheta * ((cosTheta * single(-0.5)) - single(0.5))))))) / cosTheta)));
    end
    
    \begin{array}{l}
    
    \\
    \frac{1}{\left(1 + c\right) + e^{cosTheta \cdot \left(-cosTheta\right)} \cdot \frac{{\pi}^{-0.5} \cdot \left(1 + cosTheta \cdot \left(-1 + cosTheta \cdot \left(cosTheta \cdot -0.5 - 0.5\right)\right)\right)}{cosTheta}}
    \end{array}
    
    Derivation
    1. Initial program 97.6%

      \[\frac{1}{\left(1 + c\right) + \left(\frac{1}{\sqrt{\pi}} \cdot \frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta}\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
    2. Add Preprocessing
    3. Step-by-step derivation
      1. add-cube-cbrt97.6%

        \[\leadsto \frac{1}{\left(1 + c\right) + \left(\color{blue}{\left(\left(\sqrt[3]{\frac{1}{\sqrt{\pi}}} \cdot \sqrt[3]{\frac{1}{\sqrt{\pi}}}\right) \cdot \sqrt[3]{\frac{1}{\sqrt{\pi}}}\right)} \cdot \frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta}\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
      2. cbrt-unprod97.6%

        \[\leadsto \frac{1}{\left(1 + c\right) + \left(\left(\color{blue}{\sqrt[3]{\frac{1}{\sqrt{\pi}} \cdot \frac{1}{\sqrt{\pi}}}} \cdot \sqrt[3]{\frac{1}{\sqrt{\pi}}}\right) \cdot \frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta}\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
      3. frac-times97.8%

        \[\leadsto \frac{1}{\left(1 + c\right) + \left(\left(\sqrt[3]{\color{blue}{\frac{1 \cdot 1}{\sqrt{\pi} \cdot \sqrt{\pi}}}} \cdot \sqrt[3]{\frac{1}{\sqrt{\pi}}}\right) \cdot \frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta}\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
      4. metadata-eval97.8%

        \[\leadsto \frac{1}{\left(1 + c\right) + \left(\left(\sqrt[3]{\frac{\color{blue}{1}}{\sqrt{\pi} \cdot \sqrt{\pi}}} \cdot \sqrt[3]{\frac{1}{\sqrt{\pi}}}\right) \cdot \frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta}\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
      5. add-sqr-sqrt97.8%

        \[\leadsto \frac{1}{\left(1 + c\right) + \left(\left(\sqrt[3]{\frac{1}{\color{blue}{\pi}}} \cdot \sqrt[3]{\frac{1}{\sqrt{\pi}}}\right) \cdot \frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta}\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
      6. inv-pow97.8%

        \[\leadsto \frac{1}{\left(1 + c\right) + \left(\left(\sqrt[3]{\frac{1}{\pi}} \cdot \sqrt[3]{\color{blue}{{\left(\sqrt{\pi}\right)}^{-1}}}\right) \cdot \frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta}\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
      7. sqrt-pow297.8%

        \[\leadsto \frac{1}{\left(1 + c\right) + \left(\left(\sqrt[3]{\frac{1}{\pi}} \cdot \sqrt[3]{\color{blue}{{\pi}^{\left(\frac{-1}{2}\right)}}}\right) \cdot \frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta}\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
      8. metadata-eval97.8%

        \[\leadsto \frac{1}{\left(1 + c\right) + \left(\left(\sqrt[3]{\frac{1}{\pi}} \cdot \sqrt[3]{{\pi}^{\color{blue}{-0.5}}}\right) \cdot \frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta}\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
    4. Applied egg-rr97.8%

      \[\leadsto \frac{1}{\left(1 + c\right) + \left(\color{blue}{\left(\sqrt[3]{\frac{1}{\pi}} \cdot \sqrt[3]{{\pi}^{-0.5}}\right)} \cdot \frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta}\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
    5. Step-by-step derivation
      1. associate-*r/97.7%

        \[\leadsto \frac{1}{\left(1 + c\right) + \color{blue}{\frac{\left(\sqrt[3]{\frac{1}{\pi}} \cdot \sqrt[3]{{\pi}^{-0.5}}\right) \cdot \sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta}} \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
      2. inv-pow97.7%

        \[\leadsto \frac{1}{\left(1 + c\right) + \frac{\left(\sqrt[3]{\color{blue}{{\pi}^{-1}}} \cdot \sqrt[3]{{\pi}^{-0.5}}\right) \cdot \sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta} \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
      3. metadata-eval97.7%

        \[\leadsto \frac{1}{\left(1 + c\right) + \frac{\left(\sqrt[3]{{\pi}^{\color{blue}{\left(-0.5 + -0.5\right)}}} \cdot \sqrt[3]{{\pi}^{-0.5}}\right) \cdot \sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta} \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
      4. pow-prod-up97.7%

        \[\leadsto \frac{1}{\left(1 + c\right) + \frac{\left(\sqrt[3]{\color{blue}{{\pi}^{-0.5} \cdot {\pi}^{-0.5}}} \cdot \sqrt[3]{{\pi}^{-0.5}}\right) \cdot \sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta} \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
      5. cbrt-unprod97.7%

        \[\leadsto \frac{1}{\left(1 + c\right) + \frac{\left(\color{blue}{\left(\sqrt[3]{{\pi}^{-0.5}} \cdot \sqrt[3]{{\pi}^{-0.5}}\right)} \cdot \sqrt[3]{{\pi}^{-0.5}}\right) \cdot \sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta} \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
      6. add-cube-cbrt97.7%

        \[\leadsto \frac{1}{\left(1 + c\right) + \frac{\color{blue}{{\pi}^{-0.5}} \cdot \sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta} \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
      7. associate--l-97.7%

        \[\leadsto \frac{1}{\left(1 + c\right) + \frac{{\pi}^{-0.5} \cdot \sqrt{\color{blue}{1 - \left(cosTheta + cosTheta\right)}}}{cosTheta} \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
      8. add-log-exp97.6%

        \[\leadsto \frac{1}{\left(1 + c\right) + \frac{{\pi}^{-0.5} \cdot \sqrt{1 - \left(\color{blue}{\log \left(e^{cosTheta}\right)} + cosTheta\right)}}{cosTheta} \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
      9. add-log-exp97.7%

        \[\leadsto \frac{1}{\left(1 + c\right) + \frac{{\pi}^{-0.5} \cdot \sqrt{1 - \left(\log \left(e^{cosTheta}\right) + \color{blue}{\log \left(e^{cosTheta}\right)}\right)}}{cosTheta} \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
      10. sum-log97.7%

        \[\leadsto \frac{1}{\left(1 + c\right) + \frac{{\pi}^{-0.5} \cdot \sqrt{1 - \color{blue}{\log \left(e^{cosTheta} \cdot e^{cosTheta}\right)}}}{cosTheta} \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
      11. exp-lft-sqr97.8%

        \[\leadsto \frac{1}{\left(1 + c\right) + \frac{{\pi}^{-0.5} \cdot \sqrt{1 - \log \color{blue}{\left(e^{cosTheta \cdot 2}\right)}}}{cosTheta} \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
      12. add-log-exp97.7%

        \[\leadsto \frac{1}{\left(1 + c\right) + \frac{{\pi}^{-0.5} \cdot \sqrt{1 - \color{blue}{cosTheta \cdot 2}}}{cosTheta} \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
    6. Applied egg-rr97.7%

      \[\leadsto \frac{1}{\left(1 + c\right) + \color{blue}{\frac{{\pi}^{-0.5} \cdot \sqrt{1 - cosTheta \cdot 2}}{cosTheta}} \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
    7. Taylor expanded in cosTheta around 0 96.7%

      \[\leadsto \frac{1}{\left(1 + c\right) + \frac{{\pi}^{-0.5} \cdot \color{blue}{\left(1 + cosTheta \cdot \left(cosTheta \cdot \left(-0.5 \cdot cosTheta - 0.5\right) - 1\right)\right)}}{cosTheta} \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
    8. Final simplification96.7%

      \[\leadsto \frac{1}{\left(1 + c\right) + e^{cosTheta \cdot \left(-cosTheta\right)} \cdot \frac{{\pi}^{-0.5} \cdot \left(1 + cosTheta \cdot \left(-1 + cosTheta \cdot \left(cosTheta \cdot -0.5 - 0.5\right)\right)\right)}{cosTheta}} \]
    9. Add Preprocessing

    Alternative 6: 96.4% accurate, 1.4× speedup?

    \[\begin{array}{l} \\ \frac{1}{\left(1 + c\right) + e^{cosTheta \cdot \left(-cosTheta\right)} \cdot \frac{{\pi}^{-0.5} \cdot \left(1 + cosTheta \cdot \left(-1 + cosTheta \cdot -0.5\right)\right)}{cosTheta}} \end{array} \]
    (FPCore (cosTheta c)
     :precision binary32
     (/
      1.0
      (+
       (+ 1.0 c)
       (*
        (exp (* cosTheta (- cosTheta)))
        (/
         (* (pow PI -0.5) (+ 1.0 (* cosTheta (+ -1.0 (* cosTheta -0.5)))))
         cosTheta)))))
    float code(float cosTheta, float c) {
    	return 1.0f / ((1.0f + c) + (expf((cosTheta * -cosTheta)) * ((powf(((float) M_PI), -0.5f) * (1.0f + (cosTheta * (-1.0f + (cosTheta * -0.5f))))) / cosTheta)));
    }
    
    function code(cosTheta, c)
    	return Float32(Float32(1.0) / Float32(Float32(Float32(1.0) + c) + Float32(exp(Float32(cosTheta * Float32(-cosTheta))) * Float32(Float32((Float32(pi) ^ Float32(-0.5)) * Float32(Float32(1.0) + Float32(cosTheta * Float32(Float32(-1.0) + Float32(cosTheta * Float32(-0.5)))))) / cosTheta))))
    end
    
    function tmp = code(cosTheta, c)
    	tmp = single(1.0) / ((single(1.0) + c) + (exp((cosTheta * -cosTheta)) * (((single(pi) ^ single(-0.5)) * (single(1.0) + (cosTheta * (single(-1.0) + (cosTheta * single(-0.5)))))) / cosTheta)));
    end
    
    \begin{array}{l}
    
    \\
    \frac{1}{\left(1 + c\right) + e^{cosTheta \cdot \left(-cosTheta\right)} \cdot \frac{{\pi}^{-0.5} \cdot \left(1 + cosTheta \cdot \left(-1 + cosTheta \cdot -0.5\right)\right)}{cosTheta}}
    \end{array}
    
    Derivation
    1. Initial program 97.6%

      \[\frac{1}{\left(1 + c\right) + \left(\frac{1}{\sqrt{\pi}} \cdot \frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta}\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
    2. Add Preprocessing
    3. Step-by-step derivation
      1. add-cube-cbrt97.6%

        \[\leadsto \frac{1}{\left(1 + c\right) + \left(\color{blue}{\left(\left(\sqrt[3]{\frac{1}{\sqrt{\pi}}} \cdot \sqrt[3]{\frac{1}{\sqrt{\pi}}}\right) \cdot \sqrt[3]{\frac{1}{\sqrt{\pi}}}\right)} \cdot \frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta}\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
      2. cbrt-unprod97.6%

        \[\leadsto \frac{1}{\left(1 + c\right) + \left(\left(\color{blue}{\sqrt[3]{\frac{1}{\sqrt{\pi}} \cdot \frac{1}{\sqrt{\pi}}}} \cdot \sqrt[3]{\frac{1}{\sqrt{\pi}}}\right) \cdot \frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta}\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
      3. frac-times97.8%

        \[\leadsto \frac{1}{\left(1 + c\right) + \left(\left(\sqrt[3]{\color{blue}{\frac{1 \cdot 1}{\sqrt{\pi} \cdot \sqrt{\pi}}}} \cdot \sqrt[3]{\frac{1}{\sqrt{\pi}}}\right) \cdot \frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta}\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
      4. metadata-eval97.8%

        \[\leadsto \frac{1}{\left(1 + c\right) + \left(\left(\sqrt[3]{\frac{\color{blue}{1}}{\sqrt{\pi} \cdot \sqrt{\pi}}} \cdot \sqrt[3]{\frac{1}{\sqrt{\pi}}}\right) \cdot \frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta}\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
      5. add-sqr-sqrt97.8%

        \[\leadsto \frac{1}{\left(1 + c\right) + \left(\left(\sqrt[3]{\frac{1}{\color{blue}{\pi}}} \cdot \sqrt[3]{\frac{1}{\sqrt{\pi}}}\right) \cdot \frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta}\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
      6. inv-pow97.8%

        \[\leadsto \frac{1}{\left(1 + c\right) + \left(\left(\sqrt[3]{\frac{1}{\pi}} \cdot \sqrt[3]{\color{blue}{{\left(\sqrt{\pi}\right)}^{-1}}}\right) \cdot \frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta}\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
      7. sqrt-pow297.8%

        \[\leadsto \frac{1}{\left(1 + c\right) + \left(\left(\sqrt[3]{\frac{1}{\pi}} \cdot \sqrt[3]{\color{blue}{{\pi}^{\left(\frac{-1}{2}\right)}}}\right) \cdot \frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta}\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
      8. metadata-eval97.8%

        \[\leadsto \frac{1}{\left(1 + c\right) + \left(\left(\sqrt[3]{\frac{1}{\pi}} \cdot \sqrt[3]{{\pi}^{\color{blue}{-0.5}}}\right) \cdot \frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta}\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
    4. Applied egg-rr97.8%

      \[\leadsto \frac{1}{\left(1 + c\right) + \left(\color{blue}{\left(\sqrt[3]{\frac{1}{\pi}} \cdot \sqrt[3]{{\pi}^{-0.5}}\right)} \cdot \frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta}\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
    5. Step-by-step derivation
      1. associate-*r/97.7%

        \[\leadsto \frac{1}{\left(1 + c\right) + \color{blue}{\frac{\left(\sqrt[3]{\frac{1}{\pi}} \cdot \sqrt[3]{{\pi}^{-0.5}}\right) \cdot \sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta}} \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
      2. inv-pow97.7%

        \[\leadsto \frac{1}{\left(1 + c\right) + \frac{\left(\sqrt[3]{\color{blue}{{\pi}^{-1}}} \cdot \sqrt[3]{{\pi}^{-0.5}}\right) \cdot \sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta} \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
      3. metadata-eval97.7%

        \[\leadsto \frac{1}{\left(1 + c\right) + \frac{\left(\sqrt[3]{{\pi}^{\color{blue}{\left(-0.5 + -0.5\right)}}} \cdot \sqrt[3]{{\pi}^{-0.5}}\right) \cdot \sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta} \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
      4. pow-prod-up97.7%

        \[\leadsto \frac{1}{\left(1 + c\right) + \frac{\left(\sqrt[3]{\color{blue}{{\pi}^{-0.5} \cdot {\pi}^{-0.5}}} \cdot \sqrt[3]{{\pi}^{-0.5}}\right) \cdot \sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta} \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
      5. cbrt-unprod97.7%

        \[\leadsto \frac{1}{\left(1 + c\right) + \frac{\left(\color{blue}{\left(\sqrt[3]{{\pi}^{-0.5}} \cdot \sqrt[3]{{\pi}^{-0.5}}\right)} \cdot \sqrt[3]{{\pi}^{-0.5}}\right) \cdot \sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta} \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
      6. add-cube-cbrt97.7%

        \[\leadsto \frac{1}{\left(1 + c\right) + \frac{\color{blue}{{\pi}^{-0.5}} \cdot \sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta} \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
      7. associate--l-97.7%

        \[\leadsto \frac{1}{\left(1 + c\right) + \frac{{\pi}^{-0.5} \cdot \sqrt{\color{blue}{1 - \left(cosTheta + cosTheta\right)}}}{cosTheta} \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
      8. add-log-exp97.6%

        \[\leadsto \frac{1}{\left(1 + c\right) + \frac{{\pi}^{-0.5} \cdot \sqrt{1 - \left(\color{blue}{\log \left(e^{cosTheta}\right)} + cosTheta\right)}}{cosTheta} \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
      9. add-log-exp97.7%

        \[\leadsto \frac{1}{\left(1 + c\right) + \frac{{\pi}^{-0.5} \cdot \sqrt{1 - \left(\log \left(e^{cosTheta}\right) + \color{blue}{\log \left(e^{cosTheta}\right)}\right)}}{cosTheta} \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
      10. sum-log97.7%

        \[\leadsto \frac{1}{\left(1 + c\right) + \frac{{\pi}^{-0.5} \cdot \sqrt{1 - \color{blue}{\log \left(e^{cosTheta} \cdot e^{cosTheta}\right)}}}{cosTheta} \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
      11. exp-lft-sqr97.8%

        \[\leadsto \frac{1}{\left(1 + c\right) + \frac{{\pi}^{-0.5} \cdot \sqrt{1 - \log \color{blue}{\left(e^{cosTheta \cdot 2}\right)}}}{cosTheta} \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
      12. add-log-exp97.7%

        \[\leadsto \frac{1}{\left(1 + c\right) + \frac{{\pi}^{-0.5} \cdot \sqrt{1 - \color{blue}{cosTheta \cdot 2}}}{cosTheta} \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
    6. Applied egg-rr97.7%

      \[\leadsto \frac{1}{\left(1 + c\right) + \color{blue}{\frac{{\pi}^{-0.5} \cdot \sqrt{1 - cosTheta \cdot 2}}{cosTheta}} \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
    7. Taylor expanded in cosTheta around 0 96.3%

      \[\leadsto \frac{1}{\left(1 + c\right) + \frac{{\pi}^{-0.5} \cdot \color{blue}{\left(1 + cosTheta \cdot \left(-0.5 \cdot cosTheta - 1\right)\right)}}{cosTheta} \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
    8. Final simplification96.3%

      \[\leadsto \frac{1}{\left(1 + c\right) + e^{cosTheta \cdot \left(-cosTheta\right)} \cdot \frac{{\pi}^{-0.5} \cdot \left(1 + cosTheta \cdot \left(-1 + cosTheta \cdot -0.5\right)\right)}{cosTheta}} \]
    9. Add Preprocessing

    Alternative 7: 95.8% accurate, 1.5× speedup?

    \[\begin{array}{l} \\ cosTheta \cdot \left(\sqrt{\pi} + \left(\pi \cdot cosTheta\right) \cdot \left(\sqrt{\frac{1}{\pi}} + \left(-1 - c\right)\right)\right) \end{array} \]
    (FPCore (cosTheta c)
     :precision binary32
     (*
      cosTheta
      (+ (sqrt PI) (* (* PI cosTheta) (+ (sqrt (/ 1.0 PI)) (- -1.0 c))))))
    float code(float cosTheta, float c) {
    	return cosTheta * (sqrtf(((float) M_PI)) + ((((float) M_PI) * cosTheta) * (sqrtf((1.0f / ((float) M_PI))) + (-1.0f - c))));
    }
    
    function code(cosTheta, c)
    	return Float32(cosTheta * Float32(sqrt(Float32(pi)) + Float32(Float32(Float32(pi) * cosTheta) * Float32(sqrt(Float32(Float32(1.0) / Float32(pi))) + Float32(Float32(-1.0) - c)))))
    end
    
    function tmp = code(cosTheta, c)
    	tmp = cosTheta * (sqrt(single(pi)) + ((single(pi) * cosTheta) * (sqrt((single(1.0) / single(pi))) + (single(-1.0) - c))));
    end
    
    \begin{array}{l}
    
    \\
    cosTheta \cdot \left(\sqrt{\pi} + \left(\pi \cdot cosTheta\right) \cdot \left(\sqrt{\frac{1}{\pi}} + \left(-1 - c\right)\right)\right)
    \end{array}
    
    Derivation
    1. Initial program 97.6%

      \[\frac{1}{\left(1 + c\right) + \left(\frac{1}{\sqrt{\pi}} \cdot \frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta}\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
    2. Add Preprocessing
    3. Step-by-step derivation
      1. add-cube-cbrt97.6%

        \[\leadsto \frac{1}{\left(1 + c\right) + \left(\color{blue}{\left(\left(\sqrt[3]{\frac{1}{\sqrt{\pi}}} \cdot \sqrt[3]{\frac{1}{\sqrt{\pi}}}\right) \cdot \sqrt[3]{\frac{1}{\sqrt{\pi}}}\right)} \cdot \frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta}\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
      2. cbrt-unprod97.6%

        \[\leadsto \frac{1}{\left(1 + c\right) + \left(\left(\color{blue}{\sqrt[3]{\frac{1}{\sqrt{\pi}} \cdot \frac{1}{\sqrt{\pi}}}} \cdot \sqrt[3]{\frac{1}{\sqrt{\pi}}}\right) \cdot \frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta}\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
      3. frac-times97.8%

        \[\leadsto \frac{1}{\left(1 + c\right) + \left(\left(\sqrt[3]{\color{blue}{\frac{1 \cdot 1}{\sqrt{\pi} \cdot \sqrt{\pi}}}} \cdot \sqrt[3]{\frac{1}{\sqrt{\pi}}}\right) \cdot \frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta}\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
      4. metadata-eval97.8%

        \[\leadsto \frac{1}{\left(1 + c\right) + \left(\left(\sqrt[3]{\frac{\color{blue}{1}}{\sqrt{\pi} \cdot \sqrt{\pi}}} \cdot \sqrt[3]{\frac{1}{\sqrt{\pi}}}\right) \cdot \frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta}\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
      5. add-sqr-sqrt97.8%

        \[\leadsto \frac{1}{\left(1 + c\right) + \left(\left(\sqrt[3]{\frac{1}{\color{blue}{\pi}}} \cdot \sqrt[3]{\frac{1}{\sqrt{\pi}}}\right) \cdot \frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta}\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
      6. inv-pow97.8%

        \[\leadsto \frac{1}{\left(1 + c\right) + \left(\left(\sqrt[3]{\frac{1}{\pi}} \cdot \sqrt[3]{\color{blue}{{\left(\sqrt{\pi}\right)}^{-1}}}\right) \cdot \frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta}\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
      7. sqrt-pow297.8%

        \[\leadsto \frac{1}{\left(1 + c\right) + \left(\left(\sqrt[3]{\frac{1}{\pi}} \cdot \sqrt[3]{\color{blue}{{\pi}^{\left(\frac{-1}{2}\right)}}}\right) \cdot \frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta}\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
      8. metadata-eval97.8%

        \[\leadsto \frac{1}{\left(1 + c\right) + \left(\left(\sqrt[3]{\frac{1}{\pi}} \cdot \sqrt[3]{{\pi}^{\color{blue}{-0.5}}}\right) \cdot \frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta}\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
    4. Applied egg-rr97.8%

      \[\leadsto \frac{1}{\left(1 + c\right) + \left(\color{blue}{\left(\sqrt[3]{\frac{1}{\pi}} \cdot \sqrt[3]{{\pi}^{-0.5}}\right)} \cdot \frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta}\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
    5. Taylor expanded in cosTheta around 0 95.9%

      \[\leadsto \color{blue}{cosTheta \cdot \left(\sqrt{\pi} + -1 \cdot \left(cosTheta \cdot \left(\pi \cdot \left(1 + \left(c + -1 \cdot \sqrt{\frac{1}{\pi}}\right)\right)\right)\right)\right)} \]
    6. Step-by-step derivation
      1. mul-1-neg95.9%

        \[\leadsto cosTheta \cdot \left(\sqrt{\pi} + \color{blue}{\left(-cosTheta \cdot \left(\pi \cdot \left(1 + \left(c + -1 \cdot \sqrt{\frac{1}{\pi}}\right)\right)\right)\right)}\right) \]
      2. unsub-neg95.9%

        \[\leadsto cosTheta \cdot \color{blue}{\left(\sqrt{\pi} - cosTheta \cdot \left(\pi \cdot \left(1 + \left(c + -1 \cdot \sqrt{\frac{1}{\pi}}\right)\right)\right)\right)} \]
      3. associate-*r*95.9%

        \[\leadsto cosTheta \cdot \left(\sqrt{\pi} - \color{blue}{\left(cosTheta \cdot \pi\right) \cdot \left(1 + \left(c + -1 \cdot \sqrt{\frac{1}{\pi}}\right)\right)}\right) \]
      4. associate-+r+95.9%

        \[\leadsto cosTheta \cdot \left(\sqrt{\pi} - \left(cosTheta \cdot \pi\right) \cdot \color{blue}{\left(\left(1 + c\right) + -1 \cdot \sqrt{\frac{1}{\pi}}\right)}\right) \]
      5. mul-1-neg95.9%

        \[\leadsto cosTheta \cdot \left(\sqrt{\pi} - \left(cosTheta \cdot \pi\right) \cdot \left(\left(1 + c\right) + \color{blue}{\left(-\sqrt{\frac{1}{\pi}}\right)}\right)\right) \]
      6. unsub-neg95.9%

        \[\leadsto cosTheta \cdot \left(\sqrt{\pi} - \left(cosTheta \cdot \pi\right) \cdot \color{blue}{\left(\left(1 + c\right) - \sqrt{\frac{1}{\pi}}\right)}\right) \]
    7. Simplified95.9%

      \[\leadsto \color{blue}{cosTheta \cdot \left(\sqrt{\pi} - \left(cosTheta \cdot \pi\right) \cdot \left(\left(1 + c\right) - \sqrt{\frac{1}{\pi}}\right)\right)} \]
    8. Final simplification95.9%

      \[\leadsto cosTheta \cdot \left(\sqrt{\pi} + \left(\pi \cdot cosTheta\right) \cdot \left(\sqrt{\frac{1}{\pi}} + \left(-1 - c\right)\right)\right) \]
    9. Add Preprocessing

    Alternative 8: 92.9% accurate, 3.1× speedup?

    \[\begin{array}{l} \\ cosTheta \cdot \sqrt{\pi} \end{array} \]
    (FPCore (cosTheta c) :precision binary32 (* cosTheta (sqrt PI)))
    float code(float cosTheta, float c) {
    	return cosTheta * sqrtf(((float) M_PI));
    }
    
    function code(cosTheta, c)
    	return Float32(cosTheta * sqrt(Float32(pi)))
    end
    
    function tmp = code(cosTheta, c)
    	tmp = cosTheta * sqrt(single(pi));
    end
    
    \begin{array}{l}
    
    \\
    cosTheta \cdot \sqrt{\pi}
    \end{array}
    
    Derivation
    1. Initial program 97.6%

      \[\frac{1}{\left(1 + c\right) + \left(\frac{1}{\sqrt{\pi}} \cdot \frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta}\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
    2. Step-by-step derivation
      1. associate-+l+97.6%

        \[\leadsto \frac{1}{\color{blue}{1 + \left(c + \left(\frac{1}{\sqrt{\pi}} \cdot \frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta}\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta}\right)}} \]
      2. +-commutative97.6%

        \[\leadsto \frac{1}{1 + \color{blue}{\left(\left(\frac{1}{\sqrt{\pi}} \cdot \frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta}\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta} + c\right)}} \]
      3. *-commutative97.6%

        \[\leadsto \frac{1}{1 + \left(\color{blue}{\left(\frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta} \cdot \frac{1}{\sqrt{\pi}}\right)} \cdot e^{\left(-cosTheta\right) \cdot cosTheta} + c\right)} \]
      4. associate-*l*97.6%

        \[\leadsto \frac{1}{1 + \left(\color{blue}{\frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta} \cdot \left(\frac{1}{\sqrt{\pi}} \cdot e^{\left(-cosTheta\right) \cdot cosTheta}\right)} + c\right)} \]
      5. fma-define97.6%

        \[\leadsto \frac{1}{1 + \color{blue}{\mathsf{fma}\left(\frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta}, \frac{1}{\sqrt{\pi}} \cdot e^{\left(-cosTheta\right) \cdot cosTheta}, c\right)}} \]
    3. Simplified97.6%

      \[\leadsto \color{blue}{\frac{1}{1 + \mathsf{fma}\left(\frac{\sqrt{\mathsf{fma}\left(cosTheta, -2, 1\right)}}{cosTheta}, \frac{{\left(e^{cosTheta}\right)}^{\left(-cosTheta\right)}}{\sqrt{\pi}}, c\right)}} \]
    4. Add Preprocessing
    5. Taylor expanded in cosTheta around 0 92.6%

      \[\leadsto \color{blue}{cosTheta \cdot \sqrt{\pi}} \]
    6. Add Preprocessing

    Alternative 9: 10.8% accurate, 107.3× speedup?

    \[\begin{array}{l} \\ 1 - c \end{array} \]
    (FPCore (cosTheta c) :precision binary32 (- 1.0 c))
    float code(float cosTheta, float c) {
    	return 1.0f - c;
    }
    
    real(4) function code(costheta, c)
        real(4), intent (in) :: costheta
        real(4), intent (in) :: c
        code = 1.0e0 - c
    end function
    
    function code(cosTheta, c)
    	return Float32(Float32(1.0) - c)
    end
    
    function tmp = code(cosTheta, c)
    	tmp = single(1.0) - c;
    end
    
    \begin{array}{l}
    
    \\
    1 - c
    \end{array}
    
    Derivation
    1. Initial program 97.6%

      \[\frac{1}{\left(1 + c\right) + \left(\frac{1}{\sqrt{\pi}} \cdot \frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta}\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta}} \]
    2. Step-by-step derivation
      1. associate-+l+97.6%

        \[\leadsto \frac{1}{\color{blue}{1 + \left(c + \left(\frac{1}{\sqrt{\pi}} \cdot \frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta}\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta}\right)}} \]
      2. +-commutative97.6%

        \[\leadsto \frac{1}{1 + \color{blue}{\left(\left(\frac{1}{\sqrt{\pi}} \cdot \frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta}\right) \cdot e^{\left(-cosTheta\right) \cdot cosTheta} + c\right)}} \]
      3. *-commutative97.6%

        \[\leadsto \frac{1}{1 + \left(\color{blue}{\left(\frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta} \cdot \frac{1}{\sqrt{\pi}}\right)} \cdot e^{\left(-cosTheta\right) \cdot cosTheta} + c\right)} \]
      4. associate-*l*97.6%

        \[\leadsto \frac{1}{1 + \left(\color{blue}{\frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta} \cdot \left(\frac{1}{\sqrt{\pi}} \cdot e^{\left(-cosTheta\right) \cdot cosTheta}\right)} + c\right)} \]
      5. fma-define97.6%

        \[\leadsto \frac{1}{1 + \color{blue}{\mathsf{fma}\left(\frac{\sqrt{\left(1 - cosTheta\right) - cosTheta}}{cosTheta}, \frac{1}{\sqrt{\pi}} \cdot e^{\left(-cosTheta\right) \cdot cosTheta}, c\right)}} \]
    3. Simplified97.6%

      \[\leadsto \color{blue}{\frac{1}{1 + \mathsf{fma}\left(\frac{\sqrt{\mathsf{fma}\left(cosTheta, -2, 1\right)}}{cosTheta}, \frac{{\left(e^{cosTheta}\right)}^{\left(-cosTheta\right)}}{\sqrt{\pi}}, c\right)}} \]
    4. Add Preprocessing
    5. Taylor expanded in c around inf 11.1%

      \[\leadsto \frac{1}{1 + \color{blue}{c}} \]
    6. Taylor expanded in c around 0 11.1%

      \[\leadsto \color{blue}{1 + -1 \cdot c} \]
    7. Step-by-step derivation
      1. mul-1-neg11.1%

        \[\leadsto 1 + \color{blue}{\left(-c\right)} \]
      2. unsub-neg11.1%

        \[\leadsto \color{blue}{1 - c} \]
    8. Simplified11.1%

      \[\leadsto \color{blue}{1 - c} \]
    9. Add Preprocessing

    Reproduce

    ?
    herbie shell --seed 2024096 
    (FPCore (cosTheta c)
      :name "Beckmann Sample, normalization factor"
      :precision binary32
      :pre (and (and (< 0.0 cosTheta) (< cosTheta 0.9999)) (and (< -1.0 c) (< c 1.0)))
      (/ 1.0 (+ (+ 1.0 c) (* (* (/ 1.0 (sqrt PI)) (/ (sqrt (- (- 1.0 cosTheta) cosTheta)) cosTheta)) (exp (* (- cosTheta) cosTheta))))))