| Alternative 1 | |
|---|---|
| Accuracy | 99.1% |
| Cost | 63296 |
(FPCore (cosTheta_i cosTheta_O sinTheta_i sinTheta_O v)
:precision binary32
(exp
(+
(+
(-
(- (/ (* cosTheta_i cosTheta_O) v) (/ (* sinTheta_i sinTheta_O) v))
(/ 1.0 v))
0.6931)
(log (/ 1.0 (* 2.0 v))))))(FPCore (cosTheta_i cosTheta_O sinTheta_i sinTheta_O v)
:precision binary32
(let* ((t_0
(pow
(pow
(exp
(+
0.6931
(/
(- (* cosTheta_i cosTheta_O) (fma sinTheta_i sinTheta_O 1.0))
v)))
1.5)
0.16666666666666666))
(t_1 (* t_0 t_0)))
(*
(*
(pow (pow (* t_1 t_1) 1.5) 0.3333333333333333)
(pow
(pow
(exp
(+
0.6931
(*
(/ 1.0 v)
(+ (* cosTheta_i cosTheta_O) (- -1.0 (* sinTheta_i sinTheta_O))))))
1.5)
0.3333333333333333))
(/ 0.5 v))))float code(float cosTheta_i, float cosTheta_O, float sinTheta_i, float sinTheta_O, float v) {
return expf(((((((cosTheta_i * cosTheta_O) / v) - ((sinTheta_i * sinTheta_O) / v)) - (1.0f / v)) + 0.6931f) + logf((1.0f / (2.0f * v)))));
}
float code(float cosTheta_i, float cosTheta_O, float sinTheta_i, float sinTheta_O, float v) {
float t_0 = powf(powf(expf((0.6931f + (((cosTheta_i * cosTheta_O) - fmaf(sinTheta_i, sinTheta_O, 1.0f)) / v))), 1.5f), 0.16666666666666666f);
float t_1 = t_0 * t_0;
return (powf(powf((t_1 * t_1), 1.5f), 0.3333333333333333f) * powf(powf(expf((0.6931f + ((1.0f / v) * ((cosTheta_i * cosTheta_O) + (-1.0f - (sinTheta_i * sinTheta_O)))))), 1.5f), 0.3333333333333333f)) * (0.5f / v);
}
function code(cosTheta_i, cosTheta_O, sinTheta_i, sinTheta_O, v) return exp(Float32(Float32(Float32(Float32(Float32(Float32(cosTheta_i * cosTheta_O) / v) - Float32(Float32(sinTheta_i * sinTheta_O) / v)) - Float32(Float32(1.0) / v)) + Float32(0.6931)) + log(Float32(Float32(1.0) / Float32(Float32(2.0) * v))))) end
function code(cosTheta_i, cosTheta_O, sinTheta_i, sinTheta_O, v) t_0 = (exp(Float32(Float32(0.6931) + Float32(Float32(Float32(cosTheta_i * cosTheta_O) - fma(sinTheta_i, sinTheta_O, Float32(1.0))) / v))) ^ Float32(1.5)) ^ Float32(0.16666666666666666) t_1 = Float32(t_0 * t_0) return Float32(Float32(((Float32(t_1 * t_1) ^ Float32(1.5)) ^ Float32(0.3333333333333333)) * ((exp(Float32(Float32(0.6931) + Float32(Float32(Float32(1.0) / v) * Float32(Float32(cosTheta_i * cosTheta_O) + Float32(Float32(-1.0) - Float32(sinTheta_i * sinTheta_O)))))) ^ Float32(1.5)) ^ Float32(0.3333333333333333))) * Float32(Float32(0.5) / v)) end
e^{\left(\left(\left(\frac{cosTheta_i \cdot cosTheta_O}{v} - \frac{sinTheta_i \cdot sinTheta_O}{v}\right) - \frac{1}{v}\right) + 0.6931\right) + \log \left(\frac{1}{2 \cdot v}\right)}
\begin{array}{l}
t_0 := {\left({\left(e^{0.6931 + \frac{cosTheta_i \cdot cosTheta_O - \mathsf{fma}\left(sinTheta_i, sinTheta_O, 1\right)}{v}}\right)}^{1.5}\right)}^{0.16666666666666666}\\
t_1 := t_0 \cdot t_0\\
\left({\left({\left(t_1 \cdot t_1\right)}^{1.5}\right)}^{0.3333333333333333} \cdot {\left({\left(e^{0.6931 + \frac{1}{v} \cdot \left(cosTheta_i \cdot cosTheta_O + \left(-1 - sinTheta_i \cdot sinTheta_O\right)\right)}\right)}^{1.5}\right)}^{0.3333333333333333}\right) \cdot \frac{0.5}{v}
\end{array}
Initial program 99.6%
Simplified99.6%
[Start]99.6 | \[ e^{\left(\left(\left(\frac{cosTheta_i \cdot cosTheta_O}{v} - \frac{sinTheta_i \cdot sinTheta_O}{v}\right) - \frac{1}{v}\right) + 0.6931\right) + \log \left(\frac{1}{2 \cdot v}\right)}
\] |
|---|---|
remove-double-neg [<=]99.6 | \[ e^{\color{blue}{\left(-\left(-\left(\left(\left(\frac{cosTheta_i \cdot cosTheta_O}{v} - \frac{sinTheta_i \cdot sinTheta_O}{v}\right) - \frac{1}{v}\right) + 0.6931\right)\right)\right)} + \log \left(\frac{1}{2 \cdot v}\right)}
\] |
+-commutative [<=]99.6 | \[ e^{\color{blue}{\log \left(\frac{1}{2 \cdot v}\right) + \left(-\left(-\left(\left(\left(\frac{cosTheta_i \cdot cosTheta_O}{v} - \frac{sinTheta_i \cdot sinTheta_O}{v}\right) - \frac{1}{v}\right) + 0.6931\right)\right)\right)}}
\] |
log-rec [=>]99.7 | \[ e^{\color{blue}{\left(-\log \left(2 \cdot v\right)\right)} + \left(-\left(-\left(\left(\left(\frac{cosTheta_i \cdot cosTheta_O}{v} - \frac{sinTheta_i \cdot sinTheta_O}{v}\right) - \frac{1}{v}\right) + 0.6931\right)\right)\right)}
\] |
distribute-neg-in [<=]99.7 | \[ e^{\color{blue}{-\left(\log \left(2 \cdot v\right) + \left(-\left(\left(\left(\frac{cosTheta_i \cdot cosTheta_O}{v} - \frac{sinTheta_i \cdot sinTheta_O}{v}\right) - \frac{1}{v}\right) + 0.6931\right)\right)\right)}}
\] |
sub-neg [<=]99.7 | \[ e^{-\color{blue}{\left(\log \left(2 \cdot v\right) - \left(\left(\left(\frac{cosTheta_i \cdot cosTheta_O}{v} - \frac{sinTheta_i \cdot sinTheta_O}{v}\right) - \frac{1}{v}\right) + 0.6931\right)\right)}}
\] |
sub0-neg [<=]99.7 | \[ e^{\color{blue}{0 - \left(\log \left(2 \cdot v\right) - \left(\left(\left(\frac{cosTheta_i \cdot cosTheta_O}{v} - \frac{sinTheta_i \cdot sinTheta_O}{v}\right) - \frac{1}{v}\right) + 0.6931\right)\right)}}
\] |
associate-+l- [<=]99.7 | \[ e^{\color{blue}{\left(0 - \log \left(2 \cdot v\right)\right) + \left(\left(\left(\frac{cosTheta_i \cdot cosTheta_O}{v} - \frac{sinTheta_i \cdot sinTheta_O}{v}\right) - \frac{1}{v}\right) + 0.6931\right)}}
\] |
Applied egg-rr98.6%
[Start]99.6 | \[ e^{\left(\frac{cosTheta_i}{v} \cdot cosTheta_O - \frac{sinTheta_i}{v} \cdot sinTheta_O\right) + \left(\frac{-1}{v} + 0.6931\right)} \cdot \frac{0.5}{v}
\] |
|---|---|
add-cbrt-cube [=>]98.6 | \[ \color{blue}{\sqrt[3]{\left(e^{\left(\frac{cosTheta_i}{v} \cdot cosTheta_O - \frac{sinTheta_i}{v} \cdot sinTheta_O\right) + \left(\frac{-1}{v} + 0.6931\right)} \cdot e^{\left(\frac{cosTheta_i}{v} \cdot cosTheta_O - \frac{sinTheta_i}{v} \cdot sinTheta_O\right) + \left(\frac{-1}{v} + 0.6931\right)}\right) \cdot e^{\left(\frac{cosTheta_i}{v} \cdot cosTheta_O - \frac{sinTheta_i}{v} \cdot sinTheta_O\right) + \left(\frac{-1}{v} + 0.6931\right)}}} \cdot \frac{0.5}{v}
\] |
pow1/3 [=>]98.6 | \[ \color{blue}{{\left(\left(e^{\left(\frac{cosTheta_i}{v} \cdot cosTheta_O - \frac{sinTheta_i}{v} \cdot sinTheta_O\right) + \left(\frac{-1}{v} + 0.6931\right)} \cdot e^{\left(\frac{cosTheta_i}{v} \cdot cosTheta_O - \frac{sinTheta_i}{v} \cdot sinTheta_O\right) + \left(\frac{-1}{v} + 0.6931\right)}\right) \cdot e^{\left(\frac{cosTheta_i}{v} \cdot cosTheta_O - \frac{sinTheta_i}{v} \cdot sinTheta_O\right) + \left(\frac{-1}{v} + 0.6931\right)}\right)}^{0.3333333333333333}} \cdot \frac{0.5}{v}
\] |
pow3 [=>]98.6 | \[ {\color{blue}{\left({\left(e^{\left(\frac{cosTheta_i}{v} \cdot cosTheta_O - \frac{sinTheta_i}{v} \cdot sinTheta_O\right) + \left(\frac{-1}{v} + 0.6931\right)}\right)}^{3}\right)}}^{0.3333333333333333} \cdot \frac{0.5}{v}
\] |
associate-*l/ [=>]98.6 | \[ {\left({\left(e^{\left(\color{blue}{\frac{cosTheta_i \cdot cosTheta_O}{v}} - \frac{sinTheta_i}{v} \cdot sinTheta_O\right) + \left(\frac{-1}{v} + 0.6931\right)}\right)}^{3}\right)}^{0.3333333333333333} \cdot \frac{0.5}{v}
\] |
associate-*l/ [=>]98.6 | \[ {\left({\left(e^{\left(\frac{cosTheta_i \cdot cosTheta_O}{v} - \color{blue}{\frac{sinTheta_i \cdot sinTheta_O}{v}}\right) + \left(\frac{-1}{v} + 0.6931\right)}\right)}^{3}\right)}^{0.3333333333333333} \cdot \frac{0.5}{v}
\] |
sub-div [=>]98.6 | \[ {\left({\left(e^{\color{blue}{\frac{cosTheta_i \cdot cosTheta_O - sinTheta_i \cdot sinTheta_O}{v}} + \left(\frac{-1}{v} + 0.6931\right)}\right)}^{3}\right)}^{0.3333333333333333} \cdot \frac{0.5}{v}
\] |
Applied egg-rr99.1%
[Start]98.6 | \[ {\left({\left(e^{\frac{cosTheta_i \cdot cosTheta_O - sinTheta_i \cdot sinTheta_O}{v} + \left(\frac{-1}{v} + 0.6931\right)}\right)}^{3}\right)}^{0.3333333333333333} \cdot \frac{0.5}{v}
\] |
|---|---|
add-sqr-sqrt [=>]98.6 | \[ {\color{blue}{\left(\sqrt{{\left(e^{\frac{cosTheta_i \cdot cosTheta_O - sinTheta_i \cdot sinTheta_O}{v} + \left(\frac{-1}{v} + 0.6931\right)}\right)}^{3}} \cdot \sqrt{{\left(e^{\frac{cosTheta_i \cdot cosTheta_O - sinTheta_i \cdot sinTheta_O}{v} + \left(\frac{-1}{v} + 0.6931\right)}\right)}^{3}}\right)}}^{0.3333333333333333} \cdot \frac{0.5}{v}
\] |
unpow-prod-down [=>]98.6 | \[ \color{blue}{\left({\left(\sqrt{{\left(e^{\frac{cosTheta_i \cdot cosTheta_O - sinTheta_i \cdot sinTheta_O}{v} + \left(\frac{-1}{v} + 0.6931\right)}\right)}^{3}}\right)}^{0.3333333333333333} \cdot {\left(\sqrt{{\left(e^{\frac{cosTheta_i \cdot cosTheta_O - sinTheta_i \cdot sinTheta_O}{v} + \left(\frac{-1}{v} + 0.6931\right)}\right)}^{3}}\right)}^{0.3333333333333333}\right)} \cdot \frac{0.5}{v}
\] |
Applied egg-rr99.1%
[Start]99.1 | \[ \left({\left({\left(e^{0.6931 + \frac{1}{v} \cdot \left(cosTheta_i \cdot cosTheta_O - \left(sinTheta_i \cdot sinTheta_O - -1\right)\right)}\right)}^{1.5}\right)}^{0.3333333333333333} \cdot {\left({\left(e^{0.6931 + \frac{1}{v} \cdot \left(cosTheta_i \cdot cosTheta_O - \left(sinTheta_i \cdot sinTheta_O - -1\right)\right)}\right)}^{1.5}\right)}^{0.3333333333333333}\right) \cdot \frac{0.5}{v}
\] |
|---|---|
pow1 [=>]99.1 | \[ \left({\left({\color{blue}{\left({\left(e^{0.6931 + \frac{1}{v} \cdot \left(cosTheta_i \cdot cosTheta_O - \left(sinTheta_i \cdot sinTheta_O - -1\right)\right)}\right)}^{1}\right)}}^{1.5}\right)}^{0.3333333333333333} \cdot {\left({\left(e^{0.6931 + \frac{1}{v} \cdot \left(cosTheta_i \cdot cosTheta_O - \left(sinTheta_i \cdot sinTheta_O - -1\right)\right)}\right)}^{1.5}\right)}^{0.3333333333333333}\right) \cdot \frac{0.5}{v}
\] |
sqr-pow [=>]99.1 | \[ \left({\left({\color{blue}{\left({\left(e^{0.6931 + \frac{1}{v} \cdot \left(cosTheta_i \cdot cosTheta_O - \left(sinTheta_i \cdot sinTheta_O - -1\right)\right)}\right)}^{\left(\frac{1}{2}\right)} \cdot {\left(e^{0.6931 + \frac{1}{v} \cdot \left(cosTheta_i \cdot cosTheta_O - \left(sinTheta_i \cdot sinTheta_O - -1\right)\right)}\right)}^{\left(\frac{1}{2}\right)}\right)}}^{1.5}\right)}^{0.3333333333333333} \cdot {\left({\left(e^{0.6931 + \frac{1}{v} \cdot \left(cosTheta_i \cdot cosTheta_O - \left(sinTheta_i \cdot sinTheta_O - -1\right)\right)}\right)}^{1.5}\right)}^{0.3333333333333333}\right) \cdot \frac{0.5}{v}
\] |
metadata-eval [=>]99.1 | \[ \left({\left({\left({\left(e^{0.6931 + \frac{1}{v} \cdot \left(cosTheta_i \cdot cosTheta_O - \left(sinTheta_i \cdot sinTheta_O - -1\right)\right)}\right)}^{\color{blue}{0.5}} \cdot {\left(e^{0.6931 + \frac{1}{v} \cdot \left(cosTheta_i \cdot cosTheta_O - \left(sinTheta_i \cdot sinTheta_O - -1\right)\right)}\right)}^{\left(\frac{1}{2}\right)}\right)}^{1.5}\right)}^{0.3333333333333333} \cdot {\left({\left(e^{0.6931 + \frac{1}{v} \cdot \left(cosTheta_i \cdot cosTheta_O - \left(sinTheta_i \cdot sinTheta_O - -1\right)\right)}\right)}^{1.5}\right)}^{0.3333333333333333}\right) \cdot \frac{0.5}{v}
\] |
metadata-eval [<=]99.1 | \[ \left({\left({\left({\left(e^{0.6931 + \frac{1}{v} \cdot \left(cosTheta_i \cdot cosTheta_O - \left(sinTheta_i \cdot sinTheta_O - -1\right)\right)}\right)}^{\color{blue}{\left(1.5 \cdot 0.3333333333333333\right)}} \cdot {\left(e^{0.6931 + \frac{1}{v} \cdot \left(cosTheta_i \cdot cosTheta_O - \left(sinTheta_i \cdot sinTheta_O - -1\right)\right)}\right)}^{\left(\frac{1}{2}\right)}\right)}^{1.5}\right)}^{0.3333333333333333} \cdot {\left({\left(e^{0.6931 + \frac{1}{v} \cdot \left(cosTheta_i \cdot cosTheta_O - \left(sinTheta_i \cdot sinTheta_O - -1\right)\right)}\right)}^{1.5}\right)}^{0.3333333333333333}\right) \cdot \frac{0.5}{v}
\] |
pow-pow [<=]99.1 | \[ \left({\left({\left(\color{blue}{{\left({\left(e^{0.6931 + \frac{1}{v} \cdot \left(cosTheta_i \cdot cosTheta_O - \left(sinTheta_i \cdot sinTheta_O - -1\right)\right)}\right)}^{1.5}\right)}^{0.3333333333333333}} \cdot {\left(e^{0.6931 + \frac{1}{v} \cdot \left(cosTheta_i \cdot cosTheta_O - \left(sinTheta_i \cdot sinTheta_O - -1\right)\right)}\right)}^{\left(\frac{1}{2}\right)}\right)}^{1.5}\right)}^{0.3333333333333333} \cdot {\left({\left(e^{0.6931 + \frac{1}{v} \cdot \left(cosTheta_i \cdot cosTheta_O - \left(sinTheta_i \cdot sinTheta_O - -1\right)\right)}\right)}^{1.5}\right)}^{0.3333333333333333}\right) \cdot \frac{0.5}{v}
\] |
metadata-eval [=>]99.1 | \[ \left({\left({\left({\left({\left(e^{0.6931 + \frac{1}{v} \cdot \left(cosTheta_i \cdot cosTheta_O - \left(sinTheta_i \cdot sinTheta_O - -1\right)\right)}\right)}^{1.5}\right)}^{0.3333333333333333} \cdot {\left(e^{0.6931 + \frac{1}{v} \cdot \left(cosTheta_i \cdot cosTheta_O - \left(sinTheta_i \cdot sinTheta_O - -1\right)\right)}\right)}^{\color{blue}{0.5}}\right)}^{1.5}\right)}^{0.3333333333333333} \cdot {\left({\left(e^{0.6931 + \frac{1}{v} \cdot \left(cosTheta_i \cdot cosTheta_O - \left(sinTheta_i \cdot sinTheta_O - -1\right)\right)}\right)}^{1.5}\right)}^{0.3333333333333333}\right) \cdot \frac{0.5}{v}
\] |
metadata-eval [<=]99.1 | \[ \left({\left({\left({\left({\left(e^{0.6931 + \frac{1}{v} \cdot \left(cosTheta_i \cdot cosTheta_O - \left(sinTheta_i \cdot sinTheta_O - -1\right)\right)}\right)}^{1.5}\right)}^{0.3333333333333333} \cdot {\left(e^{0.6931 + \frac{1}{v} \cdot \left(cosTheta_i \cdot cosTheta_O - \left(sinTheta_i \cdot sinTheta_O - -1\right)\right)}\right)}^{\color{blue}{\left(1.5 \cdot 0.3333333333333333\right)}}\right)}^{1.5}\right)}^{0.3333333333333333} \cdot {\left({\left(e^{0.6931 + \frac{1}{v} \cdot \left(cosTheta_i \cdot cosTheta_O - \left(sinTheta_i \cdot sinTheta_O - -1\right)\right)}\right)}^{1.5}\right)}^{0.3333333333333333}\right) \cdot \frac{0.5}{v}
\] |
pow-pow [<=]99.1 | \[ \left({\left({\left({\left({\left(e^{0.6931 + \frac{1}{v} \cdot \left(cosTheta_i \cdot cosTheta_O - \left(sinTheta_i \cdot sinTheta_O - -1\right)\right)}\right)}^{1.5}\right)}^{0.3333333333333333} \cdot \color{blue}{{\left({\left(e^{0.6931 + \frac{1}{v} \cdot \left(cosTheta_i \cdot cosTheta_O - \left(sinTheta_i \cdot sinTheta_O - -1\right)\right)}\right)}^{1.5}\right)}^{0.3333333333333333}}\right)}^{1.5}\right)}^{0.3333333333333333} \cdot {\left({\left(e^{0.6931 + \frac{1}{v} \cdot \left(cosTheta_i \cdot cosTheta_O - \left(sinTheta_i \cdot sinTheta_O - -1\right)\right)}\right)}^{1.5}\right)}^{0.3333333333333333}\right) \cdot \frac{0.5}{v}
\] |
pow-prod-up [=>]99.1 | \[ \left({\left({\color{blue}{\left({\left({\left(e^{0.6931 + \frac{1}{v} \cdot \left(cosTheta_i \cdot cosTheta_O - \left(sinTheta_i \cdot sinTheta_O - -1\right)\right)}\right)}^{1.5}\right)}^{\left(0.3333333333333333 + 0.3333333333333333\right)}\right)}}^{1.5}\right)}^{0.3333333333333333} \cdot {\left({\left(e^{0.6931 + \frac{1}{v} \cdot \left(cosTheta_i \cdot cosTheta_O - \left(sinTheta_i \cdot sinTheta_O - -1\right)\right)}\right)}^{1.5}\right)}^{0.3333333333333333}\right) \cdot \frac{0.5}{v}
\] |
Simplified99.1%
[Start]99.1 | \[ \left({\left({\left({\left({\left(e^{0.6931 + \frac{cosTheta_i \cdot cosTheta_O - \mathsf{fma}\left(sinTheta_i, sinTheta_O, 1\right)}{v}}\right)}^{1.5}\right)}^{0.6666666666666666}\right)}^{1.5}\right)}^{0.3333333333333333} \cdot {\left({\left(e^{0.6931 + \frac{1}{v} \cdot \left(cosTheta_i \cdot cosTheta_O - \left(sinTheta_i \cdot sinTheta_O - -1\right)\right)}\right)}^{1.5}\right)}^{0.3333333333333333}\right) \cdot \frac{0.5}{v}
\] |
|---|---|
sqr-pow [=>]99.1 | \[ \left({\left({\color{blue}{\left({\left({\left(e^{0.6931 + \frac{cosTheta_i \cdot cosTheta_O - \mathsf{fma}\left(sinTheta_i, sinTheta_O, 1\right)}{v}}\right)}^{1.5}\right)}^{\left(\frac{0.6666666666666666}{2}\right)} \cdot {\left({\left(e^{0.6931 + \frac{cosTheta_i \cdot cosTheta_O - \mathsf{fma}\left(sinTheta_i, sinTheta_O, 1\right)}{v}}\right)}^{1.5}\right)}^{\left(\frac{0.6666666666666666}{2}\right)}\right)}}^{1.5}\right)}^{0.3333333333333333} \cdot {\left({\left(e^{0.6931 + \frac{1}{v} \cdot \left(cosTheta_i \cdot cosTheta_O - \left(sinTheta_i \cdot sinTheta_O - -1\right)\right)}\right)}^{1.5}\right)}^{0.3333333333333333}\right) \cdot \frac{0.5}{v}
\] |
metadata-eval [=>]99.1 | \[ \left({\left({\left({\left({\left(e^{0.6931 + \frac{cosTheta_i \cdot cosTheta_O - \mathsf{fma}\left(sinTheta_i, sinTheta_O, 1\right)}{v}}\right)}^{1.5}\right)}^{\color{blue}{0.3333333333333333}} \cdot {\left({\left(e^{0.6931 + \frac{cosTheta_i \cdot cosTheta_O - \mathsf{fma}\left(sinTheta_i, sinTheta_O, 1\right)}{v}}\right)}^{1.5}\right)}^{\left(\frac{0.6666666666666666}{2}\right)}\right)}^{1.5}\right)}^{0.3333333333333333} \cdot {\left({\left(e^{0.6931 + \frac{1}{v} \cdot \left(cosTheta_i \cdot cosTheta_O - \left(sinTheta_i \cdot sinTheta_O - -1\right)\right)}\right)}^{1.5}\right)}^{0.3333333333333333}\right) \cdot \frac{0.5}{v}
\] |
sqr-pow [=>]99.1 | \[ \left({\left({\left(\color{blue}{\left({\left({\left(e^{0.6931 + \frac{cosTheta_i \cdot cosTheta_O - \mathsf{fma}\left(sinTheta_i, sinTheta_O, 1\right)}{v}}\right)}^{1.5}\right)}^{\left(\frac{0.3333333333333333}{2}\right)} \cdot {\left({\left(e^{0.6931 + \frac{cosTheta_i \cdot cosTheta_O - \mathsf{fma}\left(sinTheta_i, sinTheta_O, 1\right)}{v}}\right)}^{1.5}\right)}^{\left(\frac{0.3333333333333333}{2}\right)}\right)} \cdot {\left({\left(e^{0.6931 + \frac{cosTheta_i \cdot cosTheta_O - \mathsf{fma}\left(sinTheta_i, sinTheta_O, 1\right)}{v}}\right)}^{1.5}\right)}^{\left(\frac{0.6666666666666666}{2}\right)}\right)}^{1.5}\right)}^{0.3333333333333333} \cdot {\left({\left(e^{0.6931 + \frac{1}{v} \cdot \left(cosTheta_i \cdot cosTheta_O - \left(sinTheta_i \cdot sinTheta_O - -1\right)\right)}\right)}^{1.5}\right)}^{0.3333333333333333}\right) \cdot \frac{0.5}{v}
\] |
metadata-eval [=>]99.1 | \[ \left({\left({\left(\left({\left({\left(e^{0.6931 + \frac{cosTheta_i \cdot cosTheta_O - \mathsf{fma}\left(sinTheta_i, sinTheta_O, 1\right)}{v}}\right)}^{1.5}\right)}^{\color{blue}{0.16666666666666666}} \cdot {\left({\left(e^{0.6931 + \frac{cosTheta_i \cdot cosTheta_O - \mathsf{fma}\left(sinTheta_i, sinTheta_O, 1\right)}{v}}\right)}^{1.5}\right)}^{\left(\frac{0.3333333333333333}{2}\right)}\right) \cdot {\left({\left(e^{0.6931 + \frac{cosTheta_i \cdot cosTheta_O - \mathsf{fma}\left(sinTheta_i, sinTheta_O, 1\right)}{v}}\right)}^{1.5}\right)}^{\left(\frac{0.6666666666666666}{2}\right)}\right)}^{1.5}\right)}^{0.3333333333333333} \cdot {\left({\left(e^{0.6931 + \frac{1}{v} \cdot \left(cosTheta_i \cdot cosTheta_O - \left(sinTheta_i \cdot sinTheta_O - -1\right)\right)}\right)}^{1.5}\right)}^{0.3333333333333333}\right) \cdot \frac{0.5}{v}
\] |
metadata-eval [=>]99.1 | \[ \left({\left({\left(\left({\left({\left(e^{0.6931 + \frac{cosTheta_i \cdot cosTheta_O - \mathsf{fma}\left(sinTheta_i, sinTheta_O, 1\right)}{v}}\right)}^{1.5}\right)}^{0.16666666666666666} \cdot {\left({\left(e^{0.6931 + \frac{cosTheta_i \cdot cosTheta_O - \mathsf{fma}\left(sinTheta_i, sinTheta_O, 1\right)}{v}}\right)}^{1.5}\right)}^{\color{blue}{0.16666666666666666}}\right) \cdot {\left({\left(e^{0.6931 + \frac{cosTheta_i \cdot cosTheta_O - \mathsf{fma}\left(sinTheta_i, sinTheta_O, 1\right)}{v}}\right)}^{1.5}\right)}^{\left(\frac{0.6666666666666666}{2}\right)}\right)}^{1.5}\right)}^{0.3333333333333333} \cdot {\left({\left(e^{0.6931 + \frac{1}{v} \cdot \left(cosTheta_i \cdot cosTheta_O - \left(sinTheta_i \cdot sinTheta_O - -1\right)\right)}\right)}^{1.5}\right)}^{0.3333333333333333}\right) \cdot \frac{0.5}{v}
\] |
metadata-eval [=>]99.1 | \[ \left({\left({\left(\left({\left({\left(e^{0.6931 + \frac{cosTheta_i \cdot cosTheta_O - \mathsf{fma}\left(sinTheta_i, sinTheta_O, 1\right)}{v}}\right)}^{1.5}\right)}^{0.16666666666666666} \cdot {\left({\left(e^{0.6931 + \frac{cosTheta_i \cdot cosTheta_O - \mathsf{fma}\left(sinTheta_i, sinTheta_O, 1\right)}{v}}\right)}^{1.5}\right)}^{0.16666666666666666}\right) \cdot {\left({\left(e^{0.6931 + \frac{cosTheta_i \cdot cosTheta_O - \mathsf{fma}\left(sinTheta_i, sinTheta_O, 1\right)}{v}}\right)}^{1.5}\right)}^{\color{blue}{0.3333333333333333}}\right)}^{1.5}\right)}^{0.3333333333333333} \cdot {\left({\left(e^{0.6931 + \frac{1}{v} \cdot \left(cosTheta_i \cdot cosTheta_O - \left(sinTheta_i \cdot sinTheta_O - -1\right)\right)}\right)}^{1.5}\right)}^{0.3333333333333333}\right) \cdot \frac{0.5}{v}
\] |
sqr-pow [=>]99.1 | \[ \left({\left({\left(\left({\left({\left(e^{0.6931 + \frac{cosTheta_i \cdot cosTheta_O - \mathsf{fma}\left(sinTheta_i, sinTheta_O, 1\right)}{v}}\right)}^{1.5}\right)}^{0.16666666666666666} \cdot {\left({\left(e^{0.6931 + \frac{cosTheta_i \cdot cosTheta_O - \mathsf{fma}\left(sinTheta_i, sinTheta_O, 1\right)}{v}}\right)}^{1.5}\right)}^{0.16666666666666666}\right) \cdot \color{blue}{\left({\left({\left(e^{0.6931 + \frac{cosTheta_i \cdot cosTheta_O - \mathsf{fma}\left(sinTheta_i, sinTheta_O, 1\right)}{v}}\right)}^{1.5}\right)}^{\left(\frac{0.3333333333333333}{2}\right)} \cdot {\left({\left(e^{0.6931 + \frac{cosTheta_i \cdot cosTheta_O - \mathsf{fma}\left(sinTheta_i, sinTheta_O, 1\right)}{v}}\right)}^{1.5}\right)}^{\left(\frac{0.3333333333333333}{2}\right)}\right)}\right)}^{1.5}\right)}^{0.3333333333333333} \cdot {\left({\left(e^{0.6931 + \frac{1}{v} \cdot \left(cosTheta_i \cdot cosTheta_O - \left(sinTheta_i \cdot sinTheta_O - -1\right)\right)}\right)}^{1.5}\right)}^{0.3333333333333333}\right) \cdot \frac{0.5}{v}
\] |
metadata-eval [=>]99.1 | \[ \left({\left({\left(\left({\left({\left(e^{0.6931 + \frac{cosTheta_i \cdot cosTheta_O - \mathsf{fma}\left(sinTheta_i, sinTheta_O, 1\right)}{v}}\right)}^{1.5}\right)}^{0.16666666666666666} \cdot {\left({\left(e^{0.6931 + \frac{cosTheta_i \cdot cosTheta_O - \mathsf{fma}\left(sinTheta_i, sinTheta_O, 1\right)}{v}}\right)}^{1.5}\right)}^{0.16666666666666666}\right) \cdot \left({\left({\left(e^{0.6931 + \frac{cosTheta_i \cdot cosTheta_O - \mathsf{fma}\left(sinTheta_i, sinTheta_O, 1\right)}{v}}\right)}^{1.5}\right)}^{\color{blue}{0.16666666666666666}} \cdot {\left({\left(e^{0.6931 + \frac{cosTheta_i \cdot cosTheta_O - \mathsf{fma}\left(sinTheta_i, sinTheta_O, 1\right)}{v}}\right)}^{1.5}\right)}^{\left(\frac{0.3333333333333333}{2}\right)}\right)\right)}^{1.5}\right)}^{0.3333333333333333} \cdot {\left({\left(e^{0.6931 + \frac{1}{v} \cdot \left(cosTheta_i \cdot cosTheta_O - \left(sinTheta_i \cdot sinTheta_O - -1\right)\right)}\right)}^{1.5}\right)}^{0.3333333333333333}\right) \cdot \frac{0.5}{v}
\] |
Final simplification99.1%
| Alternative 1 | |
|---|---|
| Accuracy | 99.1% |
| Cost | 63296 |
| Alternative 2 | |
|---|---|
| Accuracy | 99.1% |
| Cost | 17152 |
| Alternative 3 | |
|---|---|
| Accuracy | 99.1% |
| Cost | 17120 |
| Alternative 4 | |
|---|---|
| Accuracy | 99.6% |
| Cost | 7008 |
| Alternative 5 | |
|---|---|
| Accuracy | 99.6% |
| Cost | 6880 |
| Alternative 6 | |
|---|---|
| Accuracy | 99.6% |
| Cost | 6816 |
| Alternative 7 | |
|---|---|
| Accuracy | 99.6% |
| Cost | 3616 |
| Alternative 8 | |
|---|---|
| Accuracy | 99.6% |
| Cost | 3488 |
| Alternative 9 | |
|---|---|
| Accuracy | 97.9% |
| Cost | 3296 |
| Alternative 10 | |
|---|---|
| Accuracy | 39.1% |
| Cost | 224 |
| Alternative 11 | |
|---|---|
| Accuracy | 20.3% |
| Cost | 160 |
| Alternative 12 | |
|---|---|
| Accuracy | 20.3% |
| Cost | 160 |
| Alternative 13 | |
|---|---|
| Accuracy | 38.9% |
| Cost | 160 |
| Alternative 14 | |
|---|---|
| Accuracy | 6.4% |
| Cost | 32 |
herbie shell --seed 2023138
(FPCore (cosTheta_i cosTheta_O sinTheta_i sinTheta_O v)
:name "HairBSDF, Mp, lower"
:precision binary32
:pre (and (and (and (and (and (<= -1.0 cosTheta_i) (<= cosTheta_i 1.0)) (and (<= -1.0 cosTheta_O) (<= cosTheta_O 1.0))) (and (<= -1.0 sinTheta_i) (<= sinTheta_i 1.0))) (and (<= -1.0 sinTheta_O) (<= sinTheta_O 1.0))) (and (<= -1.5707964 v) (<= v 0.1)))
(exp (+ (+ (- (- (/ (* cosTheta_i cosTheta_O) v) (/ (* sinTheta_i sinTheta_O) v)) (/ 1.0 v)) 0.6931) (log (/ 1.0 (* 2.0 v))))))