?

Average Error: 0.1 → 0.1
Time: 1.5min
Precision: binary32
Cost: 13664

?

\[\left(0 \leq s \land s \leq 256\right) \land \left(10^{-6} < r \land r < 1000000\right)\]
\[\frac{0.25 \cdot e^{\frac{-r}{s}}}{\left(\left(2 \cdot \pi\right) \cdot s\right) \cdot r} + \frac{0.75 \cdot e^{\frac{-r}{3 \cdot s}}}{\left(\left(6 \cdot \pi\right) \cdot s\right) \cdot r} \]
\[\frac{\frac{\frac{e^{\frac{r}{-s}}}{8} + \frac{0.75 \cdot \left(e^{\frac{\frac{r}{s}}{-6}} \cdot e^{\frac{r}{s} \cdot -0.16666666666666666}\right)}{6}}{s \cdot \pi}}{r} \]
(FPCore (s r)
 :precision binary32
 (+
  (/ (* 0.25 (exp (/ (- r) s))) (* (* (* 2.0 PI) s) r))
  (/ (* 0.75 (exp (/ (- r) (* 3.0 s)))) (* (* (* 6.0 PI) s) r))))
(FPCore (s r)
 :precision binary32
 (/
  (/
   (+
    (/ (exp (/ r (- s))) 8.0)
    (/
     (* 0.75 (* (exp (/ (/ r s) -6.0)) (exp (* (/ r s) -0.16666666666666666))))
     6.0))
   (* s PI))
  r))
float code(float s, float r) {
	return ((0.25f * expf((-r / s))) / (((2.0f * ((float) M_PI)) * s) * r)) + ((0.75f * expf((-r / (3.0f * s)))) / (((6.0f * ((float) M_PI)) * s) * r));
}
float code(float s, float r) {
	return (((expf((r / -s)) / 8.0f) + ((0.75f * (expf(((r / s) / -6.0f)) * expf(((r / s) * -0.16666666666666666f)))) / 6.0f)) / (s * ((float) M_PI))) / r;
}
function code(s, r)
	return Float32(Float32(Float32(Float32(0.25) * exp(Float32(Float32(-r) / s))) / Float32(Float32(Float32(Float32(2.0) * Float32(pi)) * s) * r)) + Float32(Float32(Float32(0.75) * exp(Float32(Float32(-r) / Float32(Float32(3.0) * s)))) / Float32(Float32(Float32(Float32(6.0) * Float32(pi)) * s) * r)))
end
function code(s, r)
	return Float32(Float32(Float32(Float32(exp(Float32(r / Float32(-s))) / Float32(8.0)) + Float32(Float32(Float32(0.75) * Float32(exp(Float32(Float32(r / s) / Float32(-6.0))) * exp(Float32(Float32(r / s) * Float32(-0.16666666666666666))))) / Float32(6.0))) / Float32(s * Float32(pi))) / r)
end
function tmp = code(s, r)
	tmp = ((single(0.25) * exp((-r / s))) / (((single(2.0) * single(pi)) * s) * r)) + ((single(0.75) * exp((-r / (single(3.0) * s)))) / (((single(6.0) * single(pi)) * s) * r));
end
function tmp = code(s, r)
	tmp = (((exp((r / -s)) / single(8.0)) + ((single(0.75) * (exp(((r / s) / single(-6.0))) * exp(((r / s) * single(-0.16666666666666666))))) / single(6.0))) / (s * single(pi))) / r;
end
\frac{0.25 \cdot e^{\frac{-r}{s}}}{\left(\left(2 \cdot \pi\right) \cdot s\right) \cdot r} + \frac{0.75 \cdot e^{\frac{-r}{3 \cdot s}}}{\left(\left(6 \cdot \pi\right) \cdot s\right) \cdot r}
\frac{\frac{\frac{e^{\frac{r}{-s}}}{8} + \frac{0.75 \cdot \left(e^{\frac{\frac{r}{s}}{-6}} \cdot e^{\frac{r}{s} \cdot -0.16666666666666666}\right)}{6}}{s \cdot \pi}}{r}

Error?

Try it out?

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation?

  1. Initial program 0.1

    \[\frac{0.25 \cdot e^{\frac{-r}{s}}}{\left(\left(2 \cdot \pi\right) \cdot s\right) \cdot r} + \frac{0.75 \cdot e^{\frac{-r}{3 \cdot s}}}{\left(\left(6 \cdot \pi\right) \cdot s\right) \cdot r} \]
  2. Simplified0.1

    \[\leadsto \color{blue}{\frac{\frac{\frac{e^{\frac{r}{-s}}}{8} + \frac{0.75 \cdot e^{\frac{\frac{r}{s}}{-3}}}{6}}{s \cdot \pi}}{r}} \]
    Proof

    [Start]0.1

    \[ \frac{0.25 \cdot e^{\frac{-r}{s}}}{\left(\left(2 \cdot \pi\right) \cdot s\right) \cdot r} + \frac{0.75 \cdot e^{\frac{-r}{3 \cdot s}}}{\left(\left(6 \cdot \pi\right) \cdot s\right) \cdot r} \]

    rational_best-simplify-54 [=>]0.1

    \[ \color{blue}{\frac{\frac{0.25 \cdot e^{\frac{-r}{s}}}{\left(2 \cdot \pi\right) \cdot s}}{r}} + \frac{0.75 \cdot e^{\frac{-r}{3 \cdot s}}}{\left(\left(6 \cdot \pi\right) \cdot s\right) \cdot r} \]

    rational_best-simplify-54 [=>]0.1

    \[ \frac{\frac{0.25 \cdot e^{\frac{-r}{s}}}{\left(2 \cdot \pi\right) \cdot s}}{r} + \color{blue}{\frac{\frac{0.75 \cdot e^{\frac{-r}{3 \cdot s}}}{\left(6 \cdot \pi\right) \cdot s}}{r}} \]

    rational_best-simplify-64 [=>]0.1

    \[ \color{blue}{\frac{\frac{0.25 \cdot e^{\frac{-r}{s}}}{\left(2 \cdot \pi\right) \cdot s} + \frac{0.75 \cdot e^{\frac{-r}{3 \cdot s}}}{\left(6 \cdot \pi\right) \cdot s}}{r}} \]
  3. Applied egg-rr0.1

    \[\leadsto \frac{\frac{\frac{e^{\frac{r}{-s}}}{8} + \frac{0.75 \cdot \color{blue}{\left(e^{\frac{\frac{r}{s}}{-6}} \cdot e^{\frac{\frac{r}{s}}{-6}}\right)}}{6}}{s \cdot \pi}}{r} \]
  4. Applied egg-rr0.1

    \[\leadsto \frac{\frac{\frac{e^{\frac{r}{-s}}}{8} + \frac{0.75 \cdot \left(e^{\frac{\frac{r}{s}}{-6}} \cdot e^{\color{blue}{\frac{r}{s} \cdot -0.16666666666666666}}\right)}{6}}{s \cdot \pi}}{r} \]
  5. Final simplification0.1

    \[\leadsto \frac{\frac{\frac{e^{\frac{r}{-s}}}{8} + \frac{0.75 \cdot \left(e^{\frac{\frac{r}{s}}{-6}} \cdot e^{\frac{r}{s} \cdot -0.16666666666666666}\right)}{6}}{s \cdot \pi}}{r} \]

Alternatives

Alternative 1
Error0.1
Cost10272
\[\frac{\frac{\frac{e^{\frac{r}{-s}}}{8} + \frac{0.75 \cdot e^{\frac{r}{s \cdot -3}}}{6}}{s \cdot \pi}}{r} \]
Alternative 2
Error0.1
Cost10272
\[\frac{\frac{\frac{e^{\frac{r}{-s}}}{8} + \frac{0.75 \cdot e^{\frac{\frac{r}{-3}}{s}}}{6}}{s \cdot \pi}}{r} \]
Alternative 3
Error28.6
Cost7488
\[\frac{\frac{0.125 + 0.125 \cdot e^{r \cdot \frac{-0.3333333333333333}{s}}}{s \cdot \left(r \cdot \pi\right)}}{\left(s \cdot r\right) \cdot \frac{2 + \frac{0}{s \cdot r}}{r \cdot \left(s + s\right)}} - 0 \]
Alternative 4
Error28.6
Cost7296
\[\frac{\frac{\frac{0.25 + 0.25 \cdot e^{r \cdot \frac{-0.3333333333333333}{s}}}{s \cdot r}}{\frac{\pi}{\frac{s \cdot r}{2}}} - 0}{s \cdot r} - 0 \]
Alternative 5
Error29.1
Cost7200
\[\left(r \cdot \frac{\frac{-0.125 - 0.125 \cdot e^{r \cdot \frac{-0.3333333333333333}{s}}}{r} \cdot \frac{r}{\pi}}{-r \cdot s}\right) \cdot \frac{1}{r} \]
Alternative 6
Error29.1
Cost7168
\[\frac{\frac{1}{r} \cdot \frac{0.25 \cdot e^{r \cdot \frac{-0.3333333333333333}{s}} + 0.25}{r}}{1 \cdot \frac{\pi \cdot \left(s + s\right)}{r}} \]
Alternative 7
Error29.1
Cost7040
\[\frac{\frac{\left(e^{r \cdot \frac{-0.3333333333333333}{s}} \cdot 0.25 + 0.25\right) \cdot \frac{0.25}{\pi}}{r}}{\frac{s}{2}} - 0 \]
Alternative 8
Error29.1
Cost6848
\[\frac{\frac{0.125}{\pi} \cdot \left(e^{r \cdot \frac{-0.3333333333333333}{s}} + 1\right)}{s \cdot r} \]
Alternative 9
Error29.2
Cost6816
\[\frac{\frac{0.5}{\pi}}{r \cdot s} - \frac{0.25}{\pi \cdot \left(r \cdot s\right)} \]
Alternative 10
Error29.2
Cost3392
\[\frac{0.25}{r \cdot \left(s \cdot \pi\right)} \]
Alternative 11
Error29.2
Cost3392
\[\frac{0.25}{\pi \cdot \left(s \cdot r\right)} \]
Alternative 12
Error29.2
Cost3392
\[\frac{\frac{0.25}{\pi}}{s \cdot r} \]

Error

Reproduce?

herbie shell --seed 2023099 
(FPCore (s r)
  :name "Disney BSSRDF, PDF of scattering profile"
  :precision binary32
  :pre (and (and (<= 0.0 s) (<= s 256.0)) (and (< 1e-6 r) (< r 1000000.0)))
  (+ (/ (* 0.25 (exp (/ (- r) s))) (* (* (* 2.0 PI) s) r)) (/ (* 0.75 (exp (/ (- r) (* 3.0 s)))) (* (* (* 6.0 PI) s) r))))