Sample trimmed logistic on [-pi, pi]

Percentage Accurate: 98.9% → 98.9%
Time: 17.6s
Alternatives: 13
Speedup: 1.0×

Specification

?
\[\left(2.328306437 \cdot 10^{-10} \leq u \land u \leq 1\right) \land \left(0 \leq s \land s \leq 1.0651631\right)\]
\[\begin{array}{l} \\ \begin{array}{l} t_0 := \frac{1}{1 + e^{\frac{\mathsf{PI}\left(\right)}{s}}}\\ \left(-s\right) \cdot \log \left(\frac{1}{u \cdot \left(\frac{1}{1 + e^{\frac{-\mathsf{PI}\left(\right)}{s}}} - t\_0\right) + t\_0} - 1\right) \end{array} \end{array} \]
(FPCore (u s)
 :precision binary32
 (let* ((t_0 (/ 1.0 (+ 1.0 (exp (/ (PI) s))))))
   (*
    (- s)
    (log
     (-
      (/ 1.0 (+ (* u (- (/ 1.0 (+ 1.0 (exp (/ (- (PI)) s)))) t_0)) t_0))
      1.0)))))
\begin{array}{l}

\\
\begin{array}{l}
t_0 := \frac{1}{1 + e^{\frac{\mathsf{PI}\left(\right)}{s}}}\\
\left(-s\right) \cdot \log \left(\frac{1}{u \cdot \left(\frac{1}{1 + e^{\frac{-\mathsf{PI}\left(\right)}{s}}} - t\_0\right) + t\_0} - 1\right)
\end{array}
\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 13 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: 98.9% accurate, 1.0× speedup?

\[\begin{array}{l} \\ \begin{array}{l} t_0 := \frac{1}{1 + e^{\frac{\mathsf{PI}\left(\right)}{s}}}\\ \left(-s\right) \cdot \log \left(\frac{1}{u \cdot \left(\frac{1}{1 + e^{\frac{-\mathsf{PI}\left(\right)}{s}}} - t\_0\right) + t\_0} - 1\right) \end{array} \end{array} \]
(FPCore (u s)
 :precision binary32
 (let* ((t_0 (/ 1.0 (+ 1.0 (exp (/ (PI) s))))))
   (*
    (- s)
    (log
     (-
      (/ 1.0 (+ (* u (- (/ 1.0 (+ 1.0 (exp (/ (- (PI)) s)))) t_0)) t_0))
      1.0)))))
\begin{array}{l}

\\
\begin{array}{l}
t_0 := \frac{1}{1 + e^{\frac{\mathsf{PI}\left(\right)}{s}}}\\
\left(-s\right) \cdot \log \left(\frac{1}{u \cdot \left(\frac{1}{1 + e^{\frac{-\mathsf{PI}\left(\right)}{s}}} - t\_0\right) + t\_0} - 1\right)
\end{array}
\end{array}

Alternative 1: 98.9% accurate, 0.2× speedup?

\[\begin{array}{l} \\ \begin{array}{l} t_0 := e^{\frac{\mathsf{PI}\left(\right)}{s}}\\ t_1 := 1 + t\_0\\ t_2 := e^{-\mathsf{log1p}\left(t\_0\right)}\\ t_3 := e^{-\mathsf{log1p}\left(e^{\frac{-\mathsf{PI}\left(\right)}{s}}\right)}\\ t_4 := \left(t\_3 - t\_2\right) \cdot u\\ \left(-s\right) \cdot \log \left(\frac{1}{\frac{\left(\left(t\_3 - \frac{1}{t\_1}\right) \cdot u - t\_2\right) \cdot \left({t\_4}^{2} - {t\_1}^{-2}\right)}{{\left(t\_4 - t\_2\right)}^{2}}} - 1\right) \end{array} \end{array} \]
(FPCore (u s)
 :precision binary32
 (let* ((t_0 (exp (/ (PI) s)))
        (t_1 (+ 1.0 t_0))
        (t_2 (exp (- (log1p t_0))))
        (t_3 (exp (- (log1p (exp (/ (- (PI)) s))))))
        (t_4 (* (- t_3 t_2) u)))
   (*
    (- s)
    (log
     (-
      (/
       1.0
       (/
        (* (- (* (- t_3 (/ 1.0 t_1)) u) t_2) (- (pow t_4 2.0) (pow t_1 -2.0)))
        (pow (- t_4 t_2) 2.0)))
      1.0)))))
\begin{array}{l}

\\
\begin{array}{l}
t_0 := e^{\frac{\mathsf{PI}\left(\right)}{s}}\\
t_1 := 1 + t\_0\\
t_2 := e^{-\mathsf{log1p}\left(t\_0\right)}\\
t_3 := e^{-\mathsf{log1p}\left(e^{\frac{-\mathsf{PI}\left(\right)}{s}}\right)}\\
t_4 := \left(t\_3 - t\_2\right) \cdot u\\
\left(-s\right) \cdot \log \left(\frac{1}{\frac{\left(\left(t\_3 - \frac{1}{t\_1}\right) \cdot u - t\_2\right) \cdot \left({t\_4}^{2} - {t\_1}^{-2}\right)}{{\left(t\_4 - t\_2\right)}^{2}}} - 1\right)
\end{array}
\end{array}
Derivation
  1. Initial program 98.8%

    \[\left(-s\right) \cdot \log \left(\frac{1}{u \cdot \left(\frac{1}{1 + e^{\frac{-\mathsf{PI}\left(\right)}{s}}} - \frac{1}{1 + e^{\frac{\mathsf{PI}\left(\right)}{s}}}\right) + \frac{1}{1 + e^{\frac{\mathsf{PI}\left(\right)}{s}}}} - 1\right) \]
  2. Add Preprocessing
  3. Applied rewrites98.8%

    \[\leadsto \left(-s\right) \cdot \log \left(\frac{1}{\color{blue}{\frac{{\left(\left(e^{-\mathsf{log1p}\left(e^{\frac{-\mathsf{PI}\left(\right)}{s}}\right)} - e^{-\mathsf{log1p}\left(e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}\right) \cdot u\right)}^{2} \cdot \left(\left(e^{-\mathsf{log1p}\left(e^{\frac{-\mathsf{PI}\left(\right)}{s}}\right)} - e^{-\mathsf{log1p}\left(e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}\right) \cdot u - e^{-\mathsf{log1p}\left(e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}\right) - \left(\left(e^{-\mathsf{log1p}\left(e^{\frac{-\mathsf{PI}\left(\right)}{s}}\right)} - e^{-\mathsf{log1p}\left(e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}\right) \cdot u - e^{-\mathsf{log1p}\left(e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}\right) \cdot {\left(e^{\frac{\mathsf{PI}\left(\right)}{s}} + 1\right)}^{-2}}{\left(\left(e^{-\mathsf{log1p}\left(e^{\frac{-\mathsf{PI}\left(\right)}{s}}\right)} - e^{-\mathsf{log1p}\left(e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}\right) \cdot u - e^{-\mathsf{log1p}\left(e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}\right) \cdot \left(\left(e^{-\mathsf{log1p}\left(e^{\frac{-\mathsf{PI}\left(\right)}{s}}\right)} - e^{-\mathsf{log1p}\left(e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}\right) \cdot u - e^{-\mathsf{log1p}\left(e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}\right)}}} - 1\right) \]
  4. Applied rewrites98.8%

    \[\leadsto \left(-s\right) \cdot \log \left(\frac{1}{\color{blue}{\frac{\left(\left(e^{-\mathsf{log1p}\left(e^{\frac{-\mathsf{PI}\left(\right)}{s}}\right)} - e^{-\mathsf{log1p}\left(e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}\right) \cdot u - e^{-\mathsf{log1p}\left(e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}\right) \cdot \left({\left(\left(e^{-\mathsf{log1p}\left(e^{\frac{-\mathsf{PI}\left(\right)}{s}}\right)} - e^{-\mathsf{log1p}\left(e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}\right) \cdot u\right)}^{2} - {\left(1 + e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}^{-2}\right)}{{\left(\left(e^{-\mathsf{log1p}\left(e^{\frac{-\mathsf{PI}\left(\right)}{s}}\right)} - e^{-\mathsf{log1p}\left(e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}\right) \cdot u - e^{-\mathsf{log1p}\left(e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}\right)}^{2}}}} - 1\right) \]
  5. Step-by-step derivation
    1. lift-exp.f32N/A

      \[\leadsto \left(-s\right) \cdot \log \left(\frac{1}{\frac{\left(\left(e^{-\mathsf{log1p}\left(e^{\frac{-\mathsf{PI}\left(\right)}{s}}\right)} - \color{blue}{e^{-\mathsf{log1p}\left(e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}}\right) \cdot u - e^{-\mathsf{log1p}\left(e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}\right) \cdot \left({\left(\left(e^{-\mathsf{log1p}\left(e^{\frac{-\mathsf{PI}\left(\right)}{s}}\right)} - e^{-\mathsf{log1p}\left(e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}\right) \cdot u\right)}^{2} - {\left(1 + e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}^{-2}\right)}{{\left(\left(e^{-\mathsf{log1p}\left(e^{\frac{-\mathsf{PI}\left(\right)}{s}}\right)} - e^{-\mathsf{log1p}\left(e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}\right) \cdot u - e^{-\mathsf{log1p}\left(e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}\right)}^{2}}} - 1\right) \]
    2. lift-neg.f32N/A

      \[\leadsto \left(-s\right) \cdot \log \left(\frac{1}{\frac{\left(\left(e^{-\mathsf{log1p}\left(e^{\frac{-\mathsf{PI}\left(\right)}{s}}\right)} - e^{\color{blue}{\mathsf{neg}\left(\mathsf{log1p}\left(e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)\right)}}\right) \cdot u - e^{-\mathsf{log1p}\left(e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}\right) \cdot \left({\left(\left(e^{-\mathsf{log1p}\left(e^{\frac{-\mathsf{PI}\left(\right)}{s}}\right)} - e^{-\mathsf{log1p}\left(e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}\right) \cdot u\right)}^{2} - {\left(1 + e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}^{-2}\right)}{{\left(\left(e^{-\mathsf{log1p}\left(e^{\frac{-\mathsf{PI}\left(\right)}{s}}\right)} - e^{-\mathsf{log1p}\left(e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}\right) \cdot u - e^{-\mathsf{log1p}\left(e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}\right)}^{2}}} - 1\right) \]
    3. lift-log1p.f32N/A

      \[\leadsto \left(-s\right) \cdot \log \left(\frac{1}{\frac{\left(\left(e^{-\mathsf{log1p}\left(e^{\frac{-\mathsf{PI}\left(\right)}{s}}\right)} - e^{\mathsf{neg}\left(\color{blue}{\log \left(1 + e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}\right)}\right) \cdot u - e^{-\mathsf{log1p}\left(e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}\right) \cdot \left({\left(\left(e^{-\mathsf{log1p}\left(e^{\frac{-\mathsf{PI}\left(\right)}{s}}\right)} - e^{-\mathsf{log1p}\left(e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}\right) \cdot u\right)}^{2} - {\left(1 + e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}^{-2}\right)}{{\left(\left(e^{-\mathsf{log1p}\left(e^{\frac{-\mathsf{PI}\left(\right)}{s}}\right)} - e^{-\mathsf{log1p}\left(e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}\right) \cdot u - e^{-\mathsf{log1p}\left(e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}\right)}^{2}}} - 1\right) \]
    4. lift-+.f32N/A

      \[\leadsto \left(-s\right) \cdot \log \left(\frac{1}{\frac{\left(\left(e^{-\mathsf{log1p}\left(e^{\frac{-\mathsf{PI}\left(\right)}{s}}\right)} - e^{\mathsf{neg}\left(\log \color{blue}{\left(1 + e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}\right)}\right) \cdot u - e^{-\mathsf{log1p}\left(e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}\right) \cdot \left({\left(\left(e^{-\mathsf{log1p}\left(e^{\frac{-\mathsf{PI}\left(\right)}{s}}\right)} - e^{-\mathsf{log1p}\left(e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}\right) \cdot u\right)}^{2} - {\left(1 + e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}^{-2}\right)}{{\left(\left(e^{-\mathsf{log1p}\left(e^{\frac{-\mathsf{PI}\left(\right)}{s}}\right)} - e^{-\mathsf{log1p}\left(e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}\right) \cdot u - e^{-\mathsf{log1p}\left(e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}\right)}^{2}}} - 1\right) \]
    5. neg-logN/A

      \[\leadsto \left(-s\right) \cdot \log \left(\frac{1}{\frac{\left(\left(e^{-\mathsf{log1p}\left(e^{\frac{-\mathsf{PI}\left(\right)}{s}}\right)} - e^{\color{blue}{\log \left(\frac{1}{1 + e^{\frac{\mathsf{PI}\left(\right)}{s}}}\right)}}\right) \cdot u - e^{-\mathsf{log1p}\left(e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}\right) \cdot \left({\left(\left(e^{-\mathsf{log1p}\left(e^{\frac{-\mathsf{PI}\left(\right)}{s}}\right)} - e^{-\mathsf{log1p}\left(e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}\right) \cdot u\right)}^{2} - {\left(1 + e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}^{-2}\right)}{{\left(\left(e^{-\mathsf{log1p}\left(e^{\frac{-\mathsf{PI}\left(\right)}{s}}\right)} - e^{-\mathsf{log1p}\left(e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}\right) \cdot u - e^{-\mathsf{log1p}\left(e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}\right)}^{2}}} - 1\right) \]
    6. lift-+.f32N/A

      \[\leadsto \left(-s\right) \cdot \log \left(\frac{1}{\frac{\left(\left(e^{-\mathsf{log1p}\left(e^{\frac{-\mathsf{PI}\left(\right)}{s}}\right)} - e^{\log \left(\frac{1}{\color{blue}{1 + e^{\frac{\mathsf{PI}\left(\right)}{s}}}}\right)}\right) \cdot u - e^{-\mathsf{log1p}\left(e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}\right) \cdot \left({\left(\left(e^{-\mathsf{log1p}\left(e^{\frac{-\mathsf{PI}\left(\right)}{s}}\right)} - e^{-\mathsf{log1p}\left(e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}\right) \cdot u\right)}^{2} - {\left(1 + e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}^{-2}\right)}{{\left(\left(e^{-\mathsf{log1p}\left(e^{\frac{-\mathsf{PI}\left(\right)}{s}}\right)} - e^{-\mathsf{log1p}\left(e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}\right) \cdot u - e^{-\mathsf{log1p}\left(e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}\right)}^{2}}} - 1\right) \]
    7. lift-exp.f32N/A

      \[\leadsto \left(-s\right) \cdot \log \left(\frac{1}{\frac{\left(\left(e^{-\mathsf{log1p}\left(e^{\frac{-\mathsf{PI}\left(\right)}{s}}\right)} - e^{\log \left(\frac{1}{1 + \color{blue}{e^{\frac{\mathsf{PI}\left(\right)}{s}}}}\right)}\right) \cdot u - e^{-\mathsf{log1p}\left(e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}\right) \cdot \left({\left(\left(e^{-\mathsf{log1p}\left(e^{\frac{-\mathsf{PI}\left(\right)}{s}}\right)} - e^{-\mathsf{log1p}\left(e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}\right) \cdot u\right)}^{2} - {\left(1 + e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}^{-2}\right)}{{\left(\left(e^{-\mathsf{log1p}\left(e^{\frac{-\mathsf{PI}\left(\right)}{s}}\right)} - e^{-\mathsf{log1p}\left(e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}\right) \cdot u - e^{-\mathsf{log1p}\left(e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}\right)}^{2}}} - 1\right) \]
    8. lift-/.f32N/A

      \[\leadsto \left(-s\right) \cdot \log \left(\frac{1}{\frac{\left(\left(e^{-\mathsf{log1p}\left(e^{\frac{-\mathsf{PI}\left(\right)}{s}}\right)} - e^{\log \left(\frac{1}{1 + e^{\color{blue}{\frac{\mathsf{PI}\left(\right)}{s}}}}\right)}\right) \cdot u - e^{-\mathsf{log1p}\left(e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}\right) \cdot \left({\left(\left(e^{-\mathsf{log1p}\left(e^{\frac{-\mathsf{PI}\left(\right)}{s}}\right)} - e^{-\mathsf{log1p}\left(e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}\right) \cdot u\right)}^{2} - {\left(1 + e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}^{-2}\right)}{{\left(\left(e^{-\mathsf{log1p}\left(e^{\frac{-\mathsf{PI}\left(\right)}{s}}\right)} - e^{-\mathsf{log1p}\left(e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}\right) \cdot u - e^{-\mathsf{log1p}\left(e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}\right)}^{2}}} - 1\right) \]
    9. lift-PI.f32N/A

      \[\leadsto \left(-s\right) \cdot \log \left(\frac{1}{\frac{\left(\left(e^{-\mathsf{log1p}\left(e^{\frac{-\mathsf{PI}\left(\right)}{s}}\right)} - e^{\log \left(\frac{1}{1 + e^{\frac{\color{blue}{\mathsf{PI}\left(\right)}}{s}}}\right)}\right) \cdot u - e^{-\mathsf{log1p}\left(e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}\right) \cdot \left({\left(\left(e^{-\mathsf{log1p}\left(e^{\frac{-\mathsf{PI}\left(\right)}{s}}\right)} - e^{-\mathsf{log1p}\left(e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}\right) \cdot u\right)}^{2} - {\left(1 + e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}^{-2}\right)}{{\left(\left(e^{-\mathsf{log1p}\left(e^{\frac{-\mathsf{PI}\left(\right)}{s}}\right)} - e^{-\mathsf{log1p}\left(e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}\right) \cdot u - e^{-\mathsf{log1p}\left(e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}\right)}^{2}}} - 1\right) \]
    10. rem-exp-logN/A

      \[\leadsto \left(-s\right) \cdot \log \left(\frac{1}{\frac{\left(\left(e^{-\mathsf{log1p}\left(e^{\frac{-\mathsf{PI}\left(\right)}{s}}\right)} - \color{blue}{\frac{1}{1 + e^{\frac{\mathsf{PI}\left(\right)}{s}}}}\right) \cdot u - e^{-\mathsf{log1p}\left(e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}\right) \cdot \left({\left(\left(e^{-\mathsf{log1p}\left(e^{\frac{-\mathsf{PI}\left(\right)}{s}}\right)} - e^{-\mathsf{log1p}\left(e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}\right) \cdot u\right)}^{2} - {\left(1 + e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}^{-2}\right)}{{\left(\left(e^{-\mathsf{log1p}\left(e^{\frac{-\mathsf{PI}\left(\right)}{s}}\right)} - e^{-\mathsf{log1p}\left(e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}\right) \cdot u - e^{-\mathsf{log1p}\left(e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}\right)}^{2}}} - 1\right) \]
    11. lift-PI.f32N/A

      \[\leadsto \left(-s\right) \cdot \log \left(\frac{1}{\frac{\left(\left(e^{-\mathsf{log1p}\left(e^{\frac{-\mathsf{PI}\left(\right)}{s}}\right)} - \frac{1}{1 + e^{\frac{\color{blue}{\mathsf{PI}\left(\right)}}{s}}}\right) \cdot u - e^{-\mathsf{log1p}\left(e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}\right) \cdot \left({\left(\left(e^{-\mathsf{log1p}\left(e^{\frac{-\mathsf{PI}\left(\right)}{s}}\right)} - e^{-\mathsf{log1p}\left(e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}\right) \cdot u\right)}^{2} - {\left(1 + e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}^{-2}\right)}{{\left(\left(e^{-\mathsf{log1p}\left(e^{\frac{-\mathsf{PI}\left(\right)}{s}}\right)} - e^{-\mathsf{log1p}\left(e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}\right) \cdot u - e^{-\mathsf{log1p}\left(e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}\right)}^{2}}} - 1\right) \]
    12. lift-/.f32N/A

      \[\leadsto \left(-s\right) \cdot \log \left(\frac{1}{\frac{\left(\left(e^{-\mathsf{log1p}\left(e^{\frac{-\mathsf{PI}\left(\right)}{s}}\right)} - \frac{1}{1 + e^{\color{blue}{\frac{\mathsf{PI}\left(\right)}{s}}}}\right) \cdot u - e^{-\mathsf{log1p}\left(e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}\right) \cdot \left({\left(\left(e^{-\mathsf{log1p}\left(e^{\frac{-\mathsf{PI}\left(\right)}{s}}\right)} - e^{-\mathsf{log1p}\left(e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}\right) \cdot u\right)}^{2} - {\left(1 + e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}^{-2}\right)}{{\left(\left(e^{-\mathsf{log1p}\left(e^{\frac{-\mathsf{PI}\left(\right)}{s}}\right)} - e^{-\mathsf{log1p}\left(e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}\right) \cdot u - e^{-\mathsf{log1p}\left(e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}\right)}^{2}}} - 1\right) \]
    13. lift-exp.f32N/A

      \[\leadsto \left(-s\right) \cdot \log \left(\frac{1}{\frac{\left(\left(e^{-\mathsf{log1p}\left(e^{\frac{-\mathsf{PI}\left(\right)}{s}}\right)} - \frac{1}{1 + \color{blue}{e^{\frac{\mathsf{PI}\left(\right)}{s}}}}\right) \cdot u - e^{-\mathsf{log1p}\left(e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}\right) \cdot \left({\left(\left(e^{-\mathsf{log1p}\left(e^{\frac{-\mathsf{PI}\left(\right)}{s}}\right)} - e^{-\mathsf{log1p}\left(e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}\right) \cdot u\right)}^{2} - {\left(1 + e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}^{-2}\right)}{{\left(\left(e^{-\mathsf{log1p}\left(e^{\frac{-\mathsf{PI}\left(\right)}{s}}\right)} - e^{-\mathsf{log1p}\left(e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}\right) \cdot u - e^{-\mathsf{log1p}\left(e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}\right)}^{2}}} - 1\right) \]
    14. lift-+.f32N/A

      \[\leadsto \left(-s\right) \cdot \log \left(\frac{1}{\frac{\left(\left(e^{-\mathsf{log1p}\left(e^{\frac{-\mathsf{PI}\left(\right)}{s}}\right)} - \frac{1}{\color{blue}{1 + e^{\frac{\mathsf{PI}\left(\right)}{s}}}}\right) \cdot u - e^{-\mathsf{log1p}\left(e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}\right) \cdot \left({\left(\left(e^{-\mathsf{log1p}\left(e^{\frac{-\mathsf{PI}\left(\right)}{s}}\right)} - e^{-\mathsf{log1p}\left(e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}\right) \cdot u\right)}^{2} - {\left(1 + e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}^{-2}\right)}{{\left(\left(e^{-\mathsf{log1p}\left(e^{\frac{-\mathsf{PI}\left(\right)}{s}}\right)} - e^{-\mathsf{log1p}\left(e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}\right) \cdot u - e^{-\mathsf{log1p}\left(e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}\right)}^{2}}} - 1\right) \]
    15. lower-/.f3298.8

      \[\leadsto \left(-s\right) \cdot \log \left(\frac{1}{\frac{\left(\left(e^{-\mathsf{log1p}\left(e^{\frac{-\mathsf{PI}\left(\right)}{s}}\right)} - \color{blue}{\frac{1}{1 + e^{\frac{\mathsf{PI}\left(\right)}{s}}}}\right) \cdot u - e^{-\mathsf{log1p}\left(e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}\right) \cdot \left({\left(\left(e^{-\mathsf{log1p}\left(e^{\frac{-\mathsf{PI}\left(\right)}{s}}\right)} - e^{-\mathsf{log1p}\left(e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}\right) \cdot u\right)}^{2} - {\left(1 + e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}^{-2}\right)}{{\left(\left(e^{-\mathsf{log1p}\left(e^{\frac{-\mathsf{PI}\left(\right)}{s}}\right)} - e^{-\mathsf{log1p}\left(e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}\right) \cdot u - e^{-\mathsf{log1p}\left(e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}\right)}^{2}}} - 1\right) \]
  6. Applied rewrites98.8%

    \[\leadsto \left(-s\right) \cdot \log \left(\frac{1}{\frac{\left(\left(e^{-\mathsf{log1p}\left(e^{\frac{-\mathsf{PI}\left(\right)}{s}}\right)} - \color{blue}{\frac{1}{1 + e^{\frac{\mathsf{PI}\left(\right)}{s}}}}\right) \cdot u - e^{-\mathsf{log1p}\left(e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}\right) \cdot \left({\left(\left(e^{-\mathsf{log1p}\left(e^{\frac{-\mathsf{PI}\left(\right)}{s}}\right)} - e^{-\mathsf{log1p}\left(e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}\right) \cdot u\right)}^{2} - {\left(1 + e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}^{-2}\right)}{{\left(\left(e^{-\mathsf{log1p}\left(e^{\frac{-\mathsf{PI}\left(\right)}{s}}\right)} - e^{-\mathsf{log1p}\left(e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}\right) \cdot u - e^{-\mathsf{log1p}\left(e^{\frac{\mathsf{PI}\left(\right)}{s}}\right)}\right)}^{2}}} - 1\right) \]
  7. Add Preprocessing

Alternative 2: 98.9% accurate, 1.0× speedup?

\[\begin{array}{l} \\ \begin{array}{l} t_0 := \frac{1}{e^{\frac{\mathsf{PI}\left(\right)}{s}} + 1}\\ \left(-s\right) \cdot \log \left(\frac{1}{\mathsf{fma}\left(\frac{1}{e^{\frac{-\mathsf{PI}\left(\right)}{s}} + 1} - t\_0, u, t\_0\right)} - 1\right) \end{array} \end{array} \]
(FPCore (u s)
 :precision binary32
 (let* ((t_0 (/ 1.0 (+ (exp (/ (PI) s)) 1.0))))
   (*
    (- s)
    (log
     (-
      (/ 1.0 (fma (- (/ 1.0 (+ (exp (/ (- (PI)) s)) 1.0)) t_0) u t_0))
      1.0)))))
\begin{array}{l}

\\
\begin{array}{l}
t_0 := \frac{1}{e^{\frac{\mathsf{PI}\left(\right)}{s}} + 1}\\
\left(-s\right) \cdot \log \left(\frac{1}{\mathsf{fma}\left(\frac{1}{e^{\frac{-\mathsf{PI}\left(\right)}{s}} + 1} - t\_0, u, t\_0\right)} - 1\right)
\end{array}
\end{array}
Derivation
  1. Initial program 98.8%

    \[\left(-s\right) \cdot \log \left(\frac{1}{u \cdot \left(\frac{1}{1 + e^{\frac{-\mathsf{PI}\left(\right)}{s}}} - \frac{1}{1 + e^{\frac{\mathsf{PI}\left(\right)}{s}}}\right) + \frac{1}{1 + e^{\frac{\mathsf{PI}\left(\right)}{s}}}} - 1\right) \]
  2. Add Preprocessing
  3. Taylor expanded in u around 0

    \[\leadsto \left(-s\right) \cdot \log \left(\frac{1}{\color{blue}{u \cdot \left(\frac{1}{1 + e^{-1 \cdot \frac{\mathsf{PI}\left(\right)}{s}}} - \frac{1}{1 + e^{\frac{\mathsf{PI}\left(\right)}{s}}}\right) + \frac{1}{1 + e^{\frac{\mathsf{PI}\left(\right)}{s}}}}} - 1\right) \]
  4. Step-by-step derivation
    1. *-commutativeN/A

      \[\leadsto \left(-s\right) \cdot \log \left(\frac{1}{\color{blue}{\left(\frac{1}{1 + e^{-1 \cdot \frac{\mathsf{PI}\left(\right)}{s}}} - \frac{1}{1 + e^{\frac{\mathsf{PI}\left(\right)}{s}}}\right) \cdot u} + \frac{1}{1 + e^{\frac{\mathsf{PI}\left(\right)}{s}}}} - 1\right) \]
    2. lower-fma.f32N/A

      \[\leadsto \left(-s\right) \cdot \log \left(\frac{1}{\color{blue}{\mathsf{fma}\left(\frac{1}{1 + e^{-1 \cdot \frac{\mathsf{PI}\left(\right)}{s}}} - \frac{1}{1 + e^{\frac{\mathsf{PI}\left(\right)}{s}}}, u, \frac{1}{1 + e^{\frac{\mathsf{PI}\left(\right)}{s}}}\right)}} - 1\right) \]
  5. Applied rewrites98.8%

    \[\leadsto \left(-s\right) \cdot \log \left(\frac{1}{\color{blue}{\mathsf{fma}\left(\frac{1}{e^{\frac{-\mathsf{PI}\left(\right)}{s}} + 1} - \frac{1}{e^{\frac{\mathsf{PI}\left(\right)}{s}} + 1}, u, \frac{1}{e^{\frac{\mathsf{PI}\left(\right)}{s}} + 1}\right)}} - 1\right) \]
  6. Add Preprocessing

Alternative 3: 97.5% accurate, 1.3× speedup?

\[\begin{array}{l} \\ \left(-s\right) \cdot \log \left(\frac{1}{\left(\frac{1}{e^{\frac{-\mathsf{PI}\left(\right)}{s}} + 1} - \frac{1}{e^{\frac{\mathsf{PI}\left(\right)}{s}} + 1}\right) \cdot u} - 1\right) \end{array} \]
(FPCore (u s)
 :precision binary32
 (*
  (- s)
  (log
   (-
    (/
     1.0
     (*
      (- (/ 1.0 (+ (exp (/ (- (PI)) s)) 1.0)) (/ 1.0 (+ (exp (/ (PI) s)) 1.0)))
      u))
    1.0))))
\begin{array}{l}

\\
\left(-s\right) \cdot \log \left(\frac{1}{\left(\frac{1}{e^{\frac{-\mathsf{PI}\left(\right)}{s}} + 1} - \frac{1}{e^{\frac{\mathsf{PI}\left(\right)}{s}} + 1}\right) \cdot u} - 1\right)
\end{array}
Derivation
  1. Initial program 98.8%

    \[\left(-s\right) \cdot \log \left(\frac{1}{u \cdot \left(\frac{1}{1 + e^{\frac{-\mathsf{PI}\left(\right)}{s}}} - \frac{1}{1 + e^{\frac{\mathsf{PI}\left(\right)}{s}}}\right) + \frac{1}{1 + e^{\frac{\mathsf{PI}\left(\right)}{s}}}} - 1\right) \]
  2. Add Preprocessing
  3. Taylor expanded in u around inf

    \[\leadsto \left(-s\right) \cdot \log \left(\frac{1}{\color{blue}{u \cdot \left(\frac{1}{1 + e^{-1 \cdot \frac{\mathsf{PI}\left(\right)}{s}}} - \frac{1}{1 + e^{\frac{\mathsf{PI}\left(\right)}{s}}}\right)}} - 1\right) \]
  4. Step-by-step derivation
    1. *-commutativeN/A

      \[\leadsto \left(-s\right) \cdot \log \left(\frac{1}{\color{blue}{\left(\frac{1}{1 + e^{-1 \cdot \frac{\mathsf{PI}\left(\right)}{s}}} - \frac{1}{1 + e^{\frac{\mathsf{PI}\left(\right)}{s}}}\right) \cdot u}} - 1\right) \]
    2. lower-*.f32N/A

      \[\leadsto \left(-s\right) \cdot \log \left(\frac{1}{\color{blue}{\left(\frac{1}{1 + e^{-1 \cdot \frac{\mathsf{PI}\left(\right)}{s}}} - \frac{1}{1 + e^{\frac{\mathsf{PI}\left(\right)}{s}}}\right) \cdot u}} - 1\right) \]
  5. Applied rewrites97.4%

    \[\leadsto \left(-s\right) \cdot \log \left(\frac{1}{\color{blue}{\left(\frac{1}{e^{\frac{-\mathsf{PI}\left(\right)}{s}} + 1} - \frac{1}{e^{\frac{\mathsf{PI}\left(\right)}{s}} + 1}\right) \cdot u}} - 1\right) \]
  6. Add Preprocessing

Alternative 4: 96.5% accurate, 1.7× speedup?

\[\begin{array}{l} \\ \left(-s\right) \cdot \log \left(\frac{1}{\left(\frac{1}{e^{\frac{-\mathsf{PI}\left(\right)}{s}} + 1} - \frac{1}{\frac{\mathsf{fma}\left(0.5, \mathsf{PI}\left(\right) \cdot \mathsf{PI}\left(\right), s \cdot \left(\mathsf{PI}\left(\right) + s\right)\right)}{s \cdot s} + 1}\right) \cdot u} - 1\right) \end{array} \]
(FPCore (u s)
 :precision binary32
 (*
  (- s)
  (log
   (-
    (/
     1.0
     (*
      (-
       (/ 1.0 (+ (exp (/ (- (PI)) s)) 1.0))
       (/ 1.0 (+ (/ (fma 0.5 (* (PI) (PI)) (* s (+ (PI) s))) (* s s)) 1.0)))
      u))
    1.0))))
\begin{array}{l}

\\
\left(-s\right) \cdot \log \left(\frac{1}{\left(\frac{1}{e^{\frac{-\mathsf{PI}\left(\right)}{s}} + 1} - \frac{1}{\frac{\mathsf{fma}\left(0.5, \mathsf{PI}\left(\right) \cdot \mathsf{PI}\left(\right), s \cdot \left(\mathsf{PI}\left(\right) + s\right)\right)}{s \cdot s} + 1}\right) \cdot u} - 1\right)
\end{array}
Derivation
  1. Initial program 98.8%

    \[\left(-s\right) \cdot \log \left(\frac{1}{u \cdot \left(\frac{1}{1 + e^{\frac{-\mathsf{PI}\left(\right)}{s}}} - \frac{1}{1 + e^{\frac{\mathsf{PI}\left(\right)}{s}}}\right) + \frac{1}{1 + e^{\frac{\mathsf{PI}\left(\right)}{s}}}} - 1\right) \]
  2. Add Preprocessing
  3. Taylor expanded in u around inf

    \[\leadsto \left(-s\right) \cdot \log \left(\frac{1}{\color{blue}{u \cdot \left(\frac{1}{1 + e^{-1 \cdot \frac{\mathsf{PI}\left(\right)}{s}}} - \frac{1}{1 + e^{\frac{\mathsf{PI}\left(\right)}{s}}}\right)}} - 1\right) \]
  4. Step-by-step derivation
    1. *-commutativeN/A

      \[\leadsto \left(-s\right) \cdot \log \left(\frac{1}{\color{blue}{\left(\frac{1}{1 + e^{-1 \cdot \frac{\mathsf{PI}\left(\right)}{s}}} - \frac{1}{1 + e^{\frac{\mathsf{PI}\left(\right)}{s}}}\right) \cdot u}} - 1\right) \]
    2. lower-*.f32N/A

      \[\leadsto \left(-s\right) \cdot \log \left(\frac{1}{\color{blue}{\left(\frac{1}{1 + e^{-1 \cdot \frac{\mathsf{PI}\left(\right)}{s}}} - \frac{1}{1 + e^{\frac{\mathsf{PI}\left(\right)}{s}}}\right) \cdot u}} - 1\right) \]
  5. Applied rewrites97.4%

    \[\leadsto \left(-s\right) \cdot \log \left(\frac{1}{\color{blue}{\left(\frac{1}{e^{\frac{-\mathsf{PI}\left(\right)}{s}} + 1} - \frac{1}{e^{\frac{\mathsf{PI}\left(\right)}{s}} + 1}\right) \cdot u}} - 1\right) \]
  6. Taylor expanded in s around -inf

    \[\leadsto \left(-s\right) \cdot \log \left(\frac{1}{\left(\frac{1}{e^{\frac{-\mathsf{PI}\left(\right)}{s}} + 1} - \frac{1}{\left(1 + -1 \cdot \frac{-1 \cdot \mathsf{PI}\left(\right) + \frac{-1}{2} \cdot \frac{{\mathsf{PI}\left(\right)}^{2}}{s}}{s}\right) + 1}\right) \cdot u} - 1\right) \]
  7. Step-by-step derivation
    1. Applied rewrites95.9%

      \[\leadsto \left(-s\right) \cdot \log \left(\frac{1}{\left(\frac{1}{e^{\frac{-\mathsf{PI}\left(\right)}{s}} + 1} - \frac{1}{\mathsf{fma}\left(-1, \frac{\mathsf{fma}\left(-0.5, \frac{\mathsf{PI}\left(\right) \cdot \mathsf{PI}\left(\right)}{s}, -\mathsf{PI}\left(\right)\right)}{s}, 1\right) + 1}\right) \cdot u} - 1\right) \]
    2. Taylor expanded in s around 0

      \[\leadsto \left(-s\right) \cdot \log \left(\frac{1}{\left(\frac{1}{e^{\frac{-\mathsf{PI}\left(\right)}{s}} + 1} - \frac{1}{\frac{\frac{1}{2} \cdot {\mathsf{PI}\left(\right)}^{2} + s \cdot \left(s + \mathsf{PI}\left(\right)\right)}{{s}^{2}} + 1}\right) \cdot u} - 1\right) \]
    3. Step-by-step derivation
      1. Applied rewrites95.9%

        \[\leadsto \left(-s\right) \cdot \log \left(\frac{1}{\left(\frac{1}{e^{\frac{-\mathsf{PI}\left(\right)}{s}} + 1} - \frac{1}{\frac{\mathsf{fma}\left(0.5, \mathsf{PI}\left(\right) \cdot \mathsf{PI}\left(\right), s \cdot \left(\mathsf{PI}\left(\right) + s\right)\right)}{s \cdot s} + 1}\right) \cdot u} - 1\right) \]
      2. Add Preprocessing

      Alternative 5: 96.5% accurate, 1.7× speedup?

      \[\begin{array}{l} \\ \left(-s\right) \cdot \log \left(\frac{1}{\left(\frac{1}{e^{\frac{-\mathsf{PI}\left(\right)}{s}} + 1} - \frac{1}{\frac{\mathsf{PI}\left(\right) \cdot \mathsf{fma}\left(0.5, \mathsf{PI}\left(\right), s\right)}{s \cdot s} + 1}\right) \cdot u} - 1\right) \end{array} \]
      (FPCore (u s)
       :precision binary32
       (*
        (- s)
        (log
         (-
          (/
           1.0
           (*
            (-
             (/ 1.0 (+ (exp (/ (- (PI)) s)) 1.0))
             (/ 1.0 (+ (/ (* (PI) (fma 0.5 (PI) s)) (* s s)) 1.0)))
            u))
          1.0))))
      \begin{array}{l}
      
      \\
      \left(-s\right) \cdot \log \left(\frac{1}{\left(\frac{1}{e^{\frac{-\mathsf{PI}\left(\right)}{s}} + 1} - \frac{1}{\frac{\mathsf{PI}\left(\right) \cdot \mathsf{fma}\left(0.5, \mathsf{PI}\left(\right), s\right)}{s \cdot s} + 1}\right) \cdot u} - 1\right)
      \end{array}
      
      Derivation
      1. Initial program 98.8%

        \[\left(-s\right) \cdot \log \left(\frac{1}{u \cdot \left(\frac{1}{1 + e^{\frac{-\mathsf{PI}\left(\right)}{s}}} - \frac{1}{1 + e^{\frac{\mathsf{PI}\left(\right)}{s}}}\right) + \frac{1}{1 + e^{\frac{\mathsf{PI}\left(\right)}{s}}}} - 1\right) \]
      2. Add Preprocessing
      3. Taylor expanded in u around inf

        \[\leadsto \left(-s\right) \cdot \log \left(\frac{1}{\color{blue}{u \cdot \left(\frac{1}{1 + e^{-1 \cdot \frac{\mathsf{PI}\left(\right)}{s}}} - \frac{1}{1 + e^{\frac{\mathsf{PI}\left(\right)}{s}}}\right)}} - 1\right) \]
      4. Step-by-step derivation
        1. *-commutativeN/A

          \[\leadsto \left(-s\right) \cdot \log \left(\frac{1}{\color{blue}{\left(\frac{1}{1 + e^{-1 \cdot \frac{\mathsf{PI}\left(\right)}{s}}} - \frac{1}{1 + e^{\frac{\mathsf{PI}\left(\right)}{s}}}\right) \cdot u}} - 1\right) \]
        2. lower-*.f32N/A

          \[\leadsto \left(-s\right) \cdot \log \left(\frac{1}{\color{blue}{\left(\frac{1}{1 + e^{-1 \cdot \frac{\mathsf{PI}\left(\right)}{s}}} - \frac{1}{1 + e^{\frac{\mathsf{PI}\left(\right)}{s}}}\right) \cdot u}} - 1\right) \]
      5. Applied rewrites97.4%

        \[\leadsto \left(-s\right) \cdot \log \left(\frac{1}{\color{blue}{\left(\frac{1}{e^{\frac{-\mathsf{PI}\left(\right)}{s}} + 1} - \frac{1}{e^{\frac{\mathsf{PI}\left(\right)}{s}} + 1}\right) \cdot u}} - 1\right) \]
      6. Taylor expanded in s around -inf

        \[\leadsto \left(-s\right) \cdot \log \left(\frac{1}{\left(\frac{1}{e^{\frac{-\mathsf{PI}\left(\right)}{s}} + 1} - \frac{1}{\left(1 + -1 \cdot \frac{-1 \cdot \mathsf{PI}\left(\right) + \frac{-1}{2} \cdot \frac{{\mathsf{PI}\left(\right)}^{2}}{s}}{s}\right) + 1}\right) \cdot u} - 1\right) \]
      7. Step-by-step derivation
        1. Applied rewrites95.9%

          \[\leadsto \left(-s\right) \cdot \log \left(\frac{1}{\left(\frac{1}{e^{\frac{-\mathsf{PI}\left(\right)}{s}} + 1} - \frac{1}{\mathsf{fma}\left(-1, \frac{\mathsf{fma}\left(-0.5, \frac{\mathsf{PI}\left(\right) \cdot \mathsf{PI}\left(\right)}{s}, -\mathsf{PI}\left(\right)\right)}{s}, 1\right) + 1}\right) \cdot u} - 1\right) \]
        2. Taylor expanded in s around 0

          \[\leadsto \left(-s\right) \cdot \log \left(\frac{1}{\left(\frac{1}{e^{\frac{-\mathsf{PI}\left(\right)}{s}} + 1} - \frac{1}{\frac{\frac{1}{2} \cdot {\mathsf{PI}\left(\right)}^{2} + s \cdot \mathsf{PI}\left(\right)}{{s}^{2}} + 1}\right) \cdot u} - 1\right) \]
        3. Step-by-step derivation
          1. Applied rewrites95.9%

            \[\leadsto \left(-s\right) \cdot \log \left(\frac{1}{\left(\frac{1}{e^{\frac{-\mathsf{PI}\left(\right)}{s}} + 1} - \frac{1}{\frac{\mathsf{fma}\left(0.5, \mathsf{PI}\left(\right) \cdot \mathsf{PI}\left(\right), s \cdot \mathsf{PI}\left(\right)\right)}{s \cdot s} + 1}\right) \cdot u} - 1\right) \]
          2. Step-by-step derivation
            1. Applied rewrites95.9%

              \[\leadsto \left(-s\right) \cdot \log \left(\frac{1}{\left(\frac{1}{e^{\frac{-\mathsf{PI}\left(\right)}{s}} + 1} - \frac{1}{\frac{\mathsf{PI}\left(\right) \cdot \mathsf{fma}\left(0.5, \mathsf{PI}\left(\right), s\right)}{s \cdot s} + 1}\right) \cdot u} - 1\right) \]
            2. Add Preprocessing

            Alternative 6: 96.5% accurate, 1.7× speedup?

            \[\begin{array}{l} \\ \left(-s\right) \cdot \log \left(\frac{1}{\left(\frac{1}{e^{\frac{-\mathsf{PI}\left(\right)}{s}} + 1} - \frac{1}{\frac{0.5 \cdot \left(\mathsf{PI}\left(\right) \cdot \mathsf{PI}\left(\right)\right)}{s \cdot s} + 1}\right) \cdot u} - 1\right) \end{array} \]
            (FPCore (u s)
             :precision binary32
             (*
              (- s)
              (log
               (-
                (/
                 1.0
                 (*
                  (-
                   (/ 1.0 (+ (exp (/ (- (PI)) s)) 1.0))
                   (/ 1.0 (+ (/ (* 0.5 (* (PI) (PI))) (* s s)) 1.0)))
                  u))
                1.0))))
            \begin{array}{l}
            
            \\
            \left(-s\right) \cdot \log \left(\frac{1}{\left(\frac{1}{e^{\frac{-\mathsf{PI}\left(\right)}{s}} + 1} - \frac{1}{\frac{0.5 \cdot \left(\mathsf{PI}\left(\right) \cdot \mathsf{PI}\left(\right)\right)}{s \cdot s} + 1}\right) \cdot u} - 1\right)
            \end{array}
            
            Derivation
            1. Initial program 98.8%

              \[\left(-s\right) \cdot \log \left(\frac{1}{u \cdot \left(\frac{1}{1 + e^{\frac{-\mathsf{PI}\left(\right)}{s}}} - \frac{1}{1 + e^{\frac{\mathsf{PI}\left(\right)}{s}}}\right) + \frac{1}{1 + e^{\frac{\mathsf{PI}\left(\right)}{s}}}} - 1\right) \]
            2. Add Preprocessing
            3. Taylor expanded in u around inf

              \[\leadsto \left(-s\right) \cdot \log \left(\frac{1}{\color{blue}{u \cdot \left(\frac{1}{1 + e^{-1 \cdot \frac{\mathsf{PI}\left(\right)}{s}}} - \frac{1}{1 + e^{\frac{\mathsf{PI}\left(\right)}{s}}}\right)}} - 1\right) \]
            4. Step-by-step derivation
              1. *-commutativeN/A

                \[\leadsto \left(-s\right) \cdot \log \left(\frac{1}{\color{blue}{\left(\frac{1}{1 + e^{-1 \cdot \frac{\mathsf{PI}\left(\right)}{s}}} - \frac{1}{1 + e^{\frac{\mathsf{PI}\left(\right)}{s}}}\right) \cdot u}} - 1\right) \]
              2. lower-*.f32N/A

                \[\leadsto \left(-s\right) \cdot \log \left(\frac{1}{\color{blue}{\left(\frac{1}{1 + e^{-1 \cdot \frac{\mathsf{PI}\left(\right)}{s}}} - \frac{1}{1 + e^{\frac{\mathsf{PI}\left(\right)}{s}}}\right) \cdot u}} - 1\right) \]
            5. Applied rewrites97.4%

              \[\leadsto \left(-s\right) \cdot \log \left(\frac{1}{\color{blue}{\left(\frac{1}{e^{\frac{-\mathsf{PI}\left(\right)}{s}} + 1} - \frac{1}{e^{\frac{\mathsf{PI}\left(\right)}{s}} + 1}\right) \cdot u}} - 1\right) \]
            6. Taylor expanded in s around -inf

              \[\leadsto \left(-s\right) \cdot \log \left(\frac{1}{\left(\frac{1}{e^{\frac{-\mathsf{PI}\left(\right)}{s}} + 1} - \frac{1}{\left(1 + -1 \cdot \frac{-1 \cdot \mathsf{PI}\left(\right) + \frac{-1}{2} \cdot \frac{{\mathsf{PI}\left(\right)}^{2}}{s}}{s}\right) + 1}\right) \cdot u} - 1\right) \]
            7. Step-by-step derivation
              1. Applied rewrites95.9%

                \[\leadsto \left(-s\right) \cdot \log \left(\frac{1}{\left(\frac{1}{e^{\frac{-\mathsf{PI}\left(\right)}{s}} + 1} - \frac{1}{\mathsf{fma}\left(-1, \frac{\mathsf{fma}\left(-0.5, \frac{\mathsf{PI}\left(\right) \cdot \mathsf{PI}\left(\right)}{s}, -\mathsf{PI}\left(\right)\right)}{s}, 1\right) + 1}\right) \cdot u} - 1\right) \]
              2. Taylor expanded in s around 0

                \[\leadsto \left(-s\right) \cdot \log \left(\frac{1}{\left(\frac{1}{e^{\frac{-\mathsf{PI}\left(\right)}{s}} + 1} - \frac{1}{\frac{1}{2} \cdot \frac{{\mathsf{PI}\left(\right)}^{2}}{{s}^{2}} + 1}\right) \cdot u} - 1\right) \]
              3. Step-by-step derivation
                1. Applied rewrites95.9%

                  \[\leadsto \left(-s\right) \cdot \log \left(\frac{1}{\left(\frac{1}{e^{\frac{-\mathsf{PI}\left(\right)}{s}} + 1} - \frac{1}{\frac{0.5 \cdot \left(\mathsf{PI}\left(\right) \cdot \mathsf{PI}\left(\right)\right)}{s \cdot s} + 1}\right) \cdot u} - 1\right) \]
                2. Add Preprocessing

                Alternative 7: 94.2% accurate, 1.8× speedup?

                \[\begin{array}{l} \\ \left(-s\right) \cdot \log \left(\frac{1}{\left(\frac{1}{e^{\frac{-\mathsf{PI}\left(\right)}{s}} + 1} - \frac{1}{\left(\frac{\mathsf{PI}\left(\right)}{s} + 1\right) + 1}\right) \cdot u} - 1\right) \end{array} \]
                (FPCore (u s)
                 :precision binary32
                 (*
                  (- s)
                  (log
                   (-
                    (/
                     1.0
                     (*
                      (-
                       (/ 1.0 (+ (exp (/ (- (PI)) s)) 1.0))
                       (/ 1.0 (+ (+ (/ (PI) s) 1.0) 1.0)))
                      u))
                    1.0))))
                \begin{array}{l}
                
                \\
                \left(-s\right) \cdot \log \left(\frac{1}{\left(\frac{1}{e^{\frac{-\mathsf{PI}\left(\right)}{s}} + 1} - \frac{1}{\left(\frac{\mathsf{PI}\left(\right)}{s} + 1\right) + 1}\right) \cdot u} - 1\right)
                \end{array}
                
                Derivation
                1. Initial program 98.8%

                  \[\left(-s\right) \cdot \log \left(\frac{1}{u \cdot \left(\frac{1}{1 + e^{\frac{-\mathsf{PI}\left(\right)}{s}}} - \frac{1}{1 + e^{\frac{\mathsf{PI}\left(\right)}{s}}}\right) + \frac{1}{1 + e^{\frac{\mathsf{PI}\left(\right)}{s}}}} - 1\right) \]
                2. Add Preprocessing
                3. Taylor expanded in u around inf

                  \[\leadsto \left(-s\right) \cdot \log \left(\frac{1}{\color{blue}{u \cdot \left(\frac{1}{1 + e^{-1 \cdot \frac{\mathsf{PI}\left(\right)}{s}}} - \frac{1}{1 + e^{\frac{\mathsf{PI}\left(\right)}{s}}}\right)}} - 1\right) \]
                4. Step-by-step derivation
                  1. *-commutativeN/A

                    \[\leadsto \left(-s\right) \cdot \log \left(\frac{1}{\color{blue}{\left(\frac{1}{1 + e^{-1 \cdot \frac{\mathsf{PI}\left(\right)}{s}}} - \frac{1}{1 + e^{\frac{\mathsf{PI}\left(\right)}{s}}}\right) \cdot u}} - 1\right) \]
                  2. lower-*.f32N/A

                    \[\leadsto \left(-s\right) \cdot \log \left(\frac{1}{\color{blue}{\left(\frac{1}{1 + e^{-1 \cdot \frac{\mathsf{PI}\left(\right)}{s}}} - \frac{1}{1 + e^{\frac{\mathsf{PI}\left(\right)}{s}}}\right) \cdot u}} - 1\right) \]
                5. Applied rewrites97.4%

                  \[\leadsto \left(-s\right) \cdot \log \left(\frac{1}{\color{blue}{\left(\frac{1}{e^{\frac{-\mathsf{PI}\left(\right)}{s}} + 1} - \frac{1}{e^{\frac{\mathsf{PI}\left(\right)}{s}} + 1}\right) \cdot u}} - 1\right) \]
                6. Taylor expanded in s around inf

                  \[\leadsto \left(-s\right) \cdot \log \left(\frac{1}{\left(\frac{1}{e^{\frac{-\mathsf{PI}\left(\right)}{s}} + 1} - \frac{1}{\left(1 + \frac{\mathsf{PI}\left(\right)}{s}\right) + 1}\right) \cdot u} - 1\right) \]
                7. Step-by-step derivation
                  1. Applied rewrites93.7%

                    \[\leadsto \left(-s\right) \cdot \log \left(\frac{1}{\left(\frac{1}{e^{\frac{-\mathsf{PI}\left(\right)}{s}} + 1} - \frac{1}{\left(\frac{\mathsf{PI}\left(\right)}{s} + 1\right) + 1}\right) \cdot u} - 1\right) \]
                  2. Add Preprocessing

                  Alternative 8: 37.0% accurate, 2.0× speedup?

                  \[\begin{array}{l} \\ \left(-s\right) \cdot \log \left(\frac{1}{\left(0.5 - \frac{1}{e^{\frac{\mathsf{PI}\left(\right)}{s}} + 1}\right) \cdot u} - 1\right) \end{array} \]
                  (FPCore (u s)
                   :precision binary32
                   (*
                    (- s)
                    (log (- (/ 1.0 (* (- 0.5 (/ 1.0 (+ (exp (/ (PI) s)) 1.0))) u)) 1.0))))
                  \begin{array}{l}
                  
                  \\
                  \left(-s\right) \cdot \log \left(\frac{1}{\left(0.5 - \frac{1}{e^{\frac{\mathsf{PI}\left(\right)}{s}} + 1}\right) \cdot u} - 1\right)
                  \end{array}
                  
                  Derivation
                  1. Initial program 98.8%

                    \[\left(-s\right) \cdot \log \left(\frac{1}{u \cdot \left(\frac{1}{1 + e^{\frac{-\mathsf{PI}\left(\right)}{s}}} - \frac{1}{1 + e^{\frac{\mathsf{PI}\left(\right)}{s}}}\right) + \frac{1}{1 + e^{\frac{\mathsf{PI}\left(\right)}{s}}}} - 1\right) \]
                  2. Add Preprocessing
                  3. Taylor expanded in u around inf

                    \[\leadsto \left(-s\right) \cdot \log \left(\frac{1}{\color{blue}{u \cdot \left(\frac{1}{1 + e^{-1 \cdot \frac{\mathsf{PI}\left(\right)}{s}}} - \frac{1}{1 + e^{\frac{\mathsf{PI}\left(\right)}{s}}}\right)}} - 1\right) \]
                  4. Step-by-step derivation
                    1. *-commutativeN/A

                      \[\leadsto \left(-s\right) \cdot \log \left(\frac{1}{\color{blue}{\left(\frac{1}{1 + e^{-1 \cdot \frac{\mathsf{PI}\left(\right)}{s}}} - \frac{1}{1 + e^{\frac{\mathsf{PI}\left(\right)}{s}}}\right) \cdot u}} - 1\right) \]
                    2. lower-*.f32N/A

                      \[\leadsto \left(-s\right) \cdot \log \left(\frac{1}{\color{blue}{\left(\frac{1}{1 + e^{-1 \cdot \frac{\mathsf{PI}\left(\right)}{s}}} - \frac{1}{1 + e^{\frac{\mathsf{PI}\left(\right)}{s}}}\right) \cdot u}} - 1\right) \]
                  5. Applied rewrites97.4%

                    \[\leadsto \left(-s\right) \cdot \log \left(\frac{1}{\color{blue}{\left(\frac{1}{e^{\frac{-\mathsf{PI}\left(\right)}{s}} + 1} - \frac{1}{e^{\frac{\mathsf{PI}\left(\right)}{s}} + 1}\right) \cdot u}} - 1\right) \]
                  6. Taylor expanded in s around inf

                    \[\leadsto \left(-s\right) \cdot \log \left(\frac{1}{\left(\frac{1}{2} - \frac{1}{e^{\frac{\mathsf{PI}\left(\right)}{s}} + 1}\right) \cdot u} - 1\right) \]
                  7. Step-by-step derivation
                    1. Applied rewrites36.8%

                      \[\leadsto \left(-s\right) \cdot \log \left(\frac{1}{\left(0.5 - \frac{1}{e^{\frac{\mathsf{PI}\left(\right)}{s}} + 1}\right) \cdot u} - 1\right) \]
                    2. Add Preprocessing

                    Alternative 9: 37.0% accurate, 2.8× speedup?

                    \[\begin{array}{l} \\ \left(-s\right) \cdot \log \left(\frac{1}{\left(0.5 - \frac{1}{\mathsf{fma}\left(-1, \frac{\mathsf{fma}\left(-0.5, \frac{\mathsf{PI}\left(\right) \cdot \mathsf{PI}\left(\right)}{s}, -\mathsf{PI}\left(\right)\right)}{s}, 1\right) + 1}\right) \cdot u} - 1\right) \end{array} \]
                    (FPCore (u s)
                     :precision binary32
                     (*
                      (- s)
                      (log
                       (-
                        (/
                         1.0
                         (*
                          (-
                           0.5
                           (/
                            1.0
                            (+ (fma -1.0 (/ (fma -0.5 (/ (* (PI) (PI)) s) (- (PI))) s) 1.0) 1.0)))
                          u))
                        1.0))))
                    \begin{array}{l}
                    
                    \\
                    \left(-s\right) \cdot \log \left(\frac{1}{\left(0.5 - \frac{1}{\mathsf{fma}\left(-1, \frac{\mathsf{fma}\left(-0.5, \frac{\mathsf{PI}\left(\right) \cdot \mathsf{PI}\left(\right)}{s}, -\mathsf{PI}\left(\right)\right)}{s}, 1\right) + 1}\right) \cdot u} - 1\right)
                    \end{array}
                    
                    Derivation
                    1. Initial program 98.8%

                      \[\left(-s\right) \cdot \log \left(\frac{1}{u \cdot \left(\frac{1}{1 + e^{\frac{-\mathsf{PI}\left(\right)}{s}}} - \frac{1}{1 + e^{\frac{\mathsf{PI}\left(\right)}{s}}}\right) + \frac{1}{1 + e^{\frac{\mathsf{PI}\left(\right)}{s}}}} - 1\right) \]
                    2. Add Preprocessing
                    3. Taylor expanded in u around inf

                      \[\leadsto \left(-s\right) \cdot \log \left(\frac{1}{\color{blue}{u \cdot \left(\frac{1}{1 + e^{-1 \cdot \frac{\mathsf{PI}\left(\right)}{s}}} - \frac{1}{1 + e^{\frac{\mathsf{PI}\left(\right)}{s}}}\right)}} - 1\right) \]
                    4. Step-by-step derivation
                      1. *-commutativeN/A

                        \[\leadsto \left(-s\right) \cdot \log \left(\frac{1}{\color{blue}{\left(\frac{1}{1 + e^{-1 \cdot \frac{\mathsf{PI}\left(\right)}{s}}} - \frac{1}{1 + e^{\frac{\mathsf{PI}\left(\right)}{s}}}\right) \cdot u}} - 1\right) \]
                      2. lower-*.f32N/A

                        \[\leadsto \left(-s\right) \cdot \log \left(\frac{1}{\color{blue}{\left(\frac{1}{1 + e^{-1 \cdot \frac{\mathsf{PI}\left(\right)}{s}}} - \frac{1}{1 + e^{\frac{\mathsf{PI}\left(\right)}{s}}}\right) \cdot u}} - 1\right) \]
                    5. Applied rewrites97.4%

                      \[\leadsto \left(-s\right) \cdot \log \left(\frac{1}{\color{blue}{\left(\frac{1}{e^{\frac{-\mathsf{PI}\left(\right)}{s}} + 1} - \frac{1}{e^{\frac{\mathsf{PI}\left(\right)}{s}} + 1}\right) \cdot u}} - 1\right) \]
                    6. Taylor expanded in s around -inf

                      \[\leadsto \left(-s\right) \cdot \log \left(\frac{1}{\left(\frac{1}{e^{\frac{-\mathsf{PI}\left(\right)}{s}} + 1} - \frac{1}{\left(1 + -1 \cdot \frac{-1 \cdot \mathsf{PI}\left(\right) + \frac{-1}{2} \cdot \frac{{\mathsf{PI}\left(\right)}^{2}}{s}}{s}\right) + 1}\right) \cdot u} - 1\right) \]
                    7. Step-by-step derivation
                      1. Applied rewrites95.9%

                        \[\leadsto \left(-s\right) \cdot \log \left(\frac{1}{\left(\frac{1}{e^{\frac{-\mathsf{PI}\left(\right)}{s}} + 1} - \frac{1}{\mathsf{fma}\left(-1, \frac{\mathsf{fma}\left(-0.5, \frac{\mathsf{PI}\left(\right) \cdot \mathsf{PI}\left(\right)}{s}, -\mathsf{PI}\left(\right)\right)}{s}, 1\right) + 1}\right) \cdot u} - 1\right) \]
                      2. Taylor expanded in s around inf

                        \[\leadsto \left(-s\right) \cdot \log \left(\frac{1}{\left(\frac{1}{2} - \frac{1}{\mathsf{fma}\left(-1, \frac{\mathsf{fma}\left(\frac{-1}{2}, \frac{\mathsf{PI}\left(\right) \cdot \mathsf{PI}\left(\right)}{s}, -\mathsf{PI}\left(\right)\right)}{s}, 1\right) + 1}\right) \cdot u} - 1\right) \]
                      3. Step-by-step derivation
                        1. Applied rewrites36.8%

                          \[\leadsto \left(-s\right) \cdot \log \left(\frac{1}{\left(0.5 - \frac{1}{\mathsf{fma}\left(-1, \frac{\mathsf{fma}\left(-0.5, \frac{\mathsf{PI}\left(\right) \cdot \mathsf{PI}\left(\right)}{s}, -\mathsf{PI}\left(\right)\right)}{s}, 1\right) + 1}\right) \cdot u} - 1\right) \]
                        2. Add Preprocessing

                        Alternative 10: 11.7% accurate, 12.8× speedup?

                        \[\begin{array}{l} \\ \left(-s\right) \cdot \left(\mathsf{fma}\left(u \cdot \mathsf{PI}\left(\right), 0.5, -0.25 \cdot \mathsf{PI}\left(\right)\right) \cdot \frac{-4}{s}\right) \end{array} \]
                        (FPCore (u s)
                         :precision binary32
                         (* (- s) (* (fma (* u (PI)) 0.5 (* -0.25 (PI))) (/ -4.0 s))))
                        \begin{array}{l}
                        
                        \\
                        \left(-s\right) \cdot \left(\mathsf{fma}\left(u \cdot \mathsf{PI}\left(\right), 0.5, -0.25 \cdot \mathsf{PI}\left(\right)\right) \cdot \frac{-4}{s}\right)
                        \end{array}
                        
                        Derivation
                        1. Initial program 98.8%

                          \[\left(-s\right) \cdot \log \left(\frac{1}{u \cdot \left(\frac{1}{1 + e^{\frac{-\mathsf{PI}\left(\right)}{s}}} - \frac{1}{1 + e^{\frac{\mathsf{PI}\left(\right)}{s}}}\right) + \frac{1}{1 + e^{\frac{\mathsf{PI}\left(\right)}{s}}}} - 1\right) \]
                        2. Add Preprocessing
                        3. Taylor expanded in s around inf

                          \[\leadsto \left(-s\right) \cdot \color{blue}{\left(-4 \cdot \frac{u \cdot \left(\frac{1}{4} \cdot \mathsf{PI}\left(\right) - \frac{-1}{4} \cdot \mathsf{PI}\left(\right)\right) - \frac{1}{4} \cdot \mathsf{PI}\left(\right)}{s}\right)} \]
                        4. Step-by-step derivation
                          1. associate-*r/N/A

                            \[\leadsto \left(-s\right) \cdot \color{blue}{\frac{-4 \cdot \left(u \cdot \left(\frac{1}{4} \cdot \mathsf{PI}\left(\right) - \frac{-1}{4} \cdot \mathsf{PI}\left(\right)\right) - \frac{1}{4} \cdot \mathsf{PI}\left(\right)\right)}{s}} \]
                          2. *-commutativeN/A

                            \[\leadsto \left(-s\right) \cdot \frac{\color{blue}{\left(u \cdot \left(\frac{1}{4} \cdot \mathsf{PI}\left(\right) - \frac{-1}{4} \cdot \mathsf{PI}\left(\right)\right) - \frac{1}{4} \cdot \mathsf{PI}\left(\right)\right) \cdot -4}}{s} \]
                          3. associate-/l*N/A

                            \[\leadsto \left(-s\right) \cdot \color{blue}{\left(\left(u \cdot \left(\frac{1}{4} \cdot \mathsf{PI}\left(\right) - \frac{-1}{4} \cdot \mathsf{PI}\left(\right)\right) - \frac{1}{4} \cdot \mathsf{PI}\left(\right)\right) \cdot \frac{-4}{s}\right)} \]
                          4. lower-*.f32N/A

                            \[\leadsto \left(-s\right) \cdot \color{blue}{\left(\left(u \cdot \left(\frac{1}{4} \cdot \mathsf{PI}\left(\right) - \frac{-1}{4} \cdot \mathsf{PI}\left(\right)\right) - \frac{1}{4} \cdot \mathsf{PI}\left(\right)\right) \cdot \frac{-4}{s}\right)} \]
                          5. fp-cancel-sub-sign-invN/A

                            \[\leadsto \left(-s\right) \cdot \left(\color{blue}{\left(u \cdot \left(\frac{1}{4} \cdot \mathsf{PI}\left(\right) - \frac{-1}{4} \cdot \mathsf{PI}\left(\right)\right) + \left(\mathsf{neg}\left(\frac{1}{4}\right)\right) \cdot \mathsf{PI}\left(\right)\right)} \cdot \frac{-4}{s}\right) \]
                          6. distribute-rgt-out--N/A

                            \[\leadsto \left(-s\right) \cdot \left(\left(u \cdot \color{blue}{\left(\mathsf{PI}\left(\right) \cdot \left(\frac{1}{4} - \frac{-1}{4}\right)\right)} + \left(\mathsf{neg}\left(\frac{1}{4}\right)\right) \cdot \mathsf{PI}\left(\right)\right) \cdot \frac{-4}{s}\right) \]
                          7. metadata-evalN/A

                            \[\leadsto \left(-s\right) \cdot \left(\left(u \cdot \left(\mathsf{PI}\left(\right) \cdot \color{blue}{\frac{1}{2}}\right) + \left(\mathsf{neg}\left(\frac{1}{4}\right)\right) \cdot \mathsf{PI}\left(\right)\right) \cdot \frac{-4}{s}\right) \]
                          8. associate-*r*N/A

                            \[\leadsto \left(-s\right) \cdot \left(\left(\color{blue}{\left(u \cdot \mathsf{PI}\left(\right)\right) \cdot \frac{1}{2}} + \left(\mathsf{neg}\left(\frac{1}{4}\right)\right) \cdot \mathsf{PI}\left(\right)\right) \cdot \frac{-4}{s}\right) \]
                          9. metadata-evalN/A

                            \[\leadsto \left(-s\right) \cdot \left(\left(\left(u \cdot \mathsf{PI}\left(\right)\right) \cdot \frac{1}{2} + \color{blue}{\frac{-1}{4}} \cdot \mathsf{PI}\left(\right)\right) \cdot \frac{-4}{s}\right) \]
                          10. lower-fma.f32N/A

                            \[\leadsto \left(-s\right) \cdot \left(\color{blue}{\mathsf{fma}\left(u \cdot \mathsf{PI}\left(\right), \frac{1}{2}, \frac{-1}{4} \cdot \mathsf{PI}\left(\right)\right)} \cdot \frac{-4}{s}\right) \]
                          11. lower-*.f32N/A

                            \[\leadsto \left(-s\right) \cdot \left(\mathsf{fma}\left(\color{blue}{u \cdot \mathsf{PI}\left(\right)}, \frac{1}{2}, \frac{-1}{4} \cdot \mathsf{PI}\left(\right)\right) \cdot \frac{-4}{s}\right) \]
                          12. lower-PI.f32N/A

                            \[\leadsto \left(-s\right) \cdot \left(\mathsf{fma}\left(u \cdot \color{blue}{\mathsf{PI}\left(\right)}, \frac{1}{2}, \frac{-1}{4} \cdot \mathsf{PI}\left(\right)\right) \cdot \frac{-4}{s}\right) \]
                          13. lower-*.f32N/A

                            \[\leadsto \left(-s\right) \cdot \left(\mathsf{fma}\left(u \cdot \mathsf{PI}\left(\right), \frac{1}{2}, \color{blue}{\frac{-1}{4} \cdot \mathsf{PI}\left(\right)}\right) \cdot \frac{-4}{s}\right) \]
                          14. lower-PI.f32N/A

                            \[\leadsto \left(-s\right) \cdot \left(\mathsf{fma}\left(u \cdot \mathsf{PI}\left(\right), \frac{1}{2}, \frac{-1}{4} \cdot \color{blue}{\mathsf{PI}\left(\right)}\right) \cdot \frac{-4}{s}\right) \]
                          15. lower-/.f3211.9

                            \[\leadsto \left(-s\right) \cdot \left(\mathsf{fma}\left(u \cdot \mathsf{PI}\left(\right), 0.5, -0.25 \cdot \mathsf{PI}\left(\right)\right) \cdot \color{blue}{\frac{-4}{s}}\right) \]
                        5. Applied rewrites11.9%

                          \[\leadsto \left(-s\right) \cdot \color{blue}{\left(\mathsf{fma}\left(u \cdot \mathsf{PI}\left(\right), 0.5, -0.25 \cdot \mathsf{PI}\left(\right)\right) \cdot \frac{-4}{s}\right)} \]
                        6. Add Preprocessing

                        Alternative 11: 11.7% accurate, 12.8× speedup?

                        \[\begin{array}{l} \\ \left(-s\right) \cdot \left(\frac{\mathsf{fma}\left(u \cdot \mathsf{PI}\left(\right), -0.5, 0.25 \cdot \mathsf{PI}\left(\right)\right)}{s} \cdot 4\right) \end{array} \]
                        (FPCore (u s)
                         :precision binary32
                         (* (- s) (* (/ (fma (* u (PI)) -0.5 (* 0.25 (PI))) s) 4.0)))
                        \begin{array}{l}
                        
                        \\
                        \left(-s\right) \cdot \left(\frac{\mathsf{fma}\left(u \cdot \mathsf{PI}\left(\right), -0.5, 0.25 \cdot \mathsf{PI}\left(\right)\right)}{s} \cdot 4\right)
                        \end{array}
                        
                        Derivation
                        1. Initial program 98.8%

                          \[\left(-s\right) \cdot \log \left(\frac{1}{u \cdot \left(\frac{1}{1 + e^{\frac{-\mathsf{PI}\left(\right)}{s}}} - \frac{1}{1 + e^{\frac{\mathsf{PI}\left(\right)}{s}}}\right) + \frac{1}{1 + e^{\frac{\mathsf{PI}\left(\right)}{s}}}} - 1\right) \]
                        2. Add Preprocessing
                        3. Taylor expanded in s around -inf

                          \[\leadsto \left(-s\right) \cdot \color{blue}{\left(4 \cdot \frac{u \cdot \left(\frac{-1}{4} \cdot \mathsf{PI}\left(\right) - \frac{1}{4} \cdot \mathsf{PI}\left(\right)\right) - \frac{-1}{4} \cdot \mathsf{PI}\left(\right)}{s}\right)} \]
                        4. Step-by-step derivation
                          1. *-commutativeN/A

                            \[\leadsto \left(-s\right) \cdot \color{blue}{\left(\frac{u \cdot \left(\frac{-1}{4} \cdot \mathsf{PI}\left(\right) - \frac{1}{4} \cdot \mathsf{PI}\left(\right)\right) - \frac{-1}{4} \cdot \mathsf{PI}\left(\right)}{s} \cdot 4\right)} \]
                          2. lower-*.f32N/A

                            \[\leadsto \left(-s\right) \cdot \color{blue}{\left(\frac{u \cdot \left(\frac{-1}{4} \cdot \mathsf{PI}\left(\right) - \frac{1}{4} \cdot \mathsf{PI}\left(\right)\right) - \frac{-1}{4} \cdot \mathsf{PI}\left(\right)}{s} \cdot 4\right)} \]
                          3. lower-/.f32N/A

                            \[\leadsto \left(-s\right) \cdot \left(\color{blue}{\frac{u \cdot \left(\frac{-1}{4} \cdot \mathsf{PI}\left(\right) - \frac{1}{4} \cdot \mathsf{PI}\left(\right)\right) - \frac{-1}{4} \cdot \mathsf{PI}\left(\right)}{s}} \cdot 4\right) \]
                          4. fp-cancel-sub-sign-invN/A

                            \[\leadsto \left(-s\right) \cdot \left(\frac{\color{blue}{u \cdot \left(\frac{-1}{4} \cdot \mathsf{PI}\left(\right) - \frac{1}{4} \cdot \mathsf{PI}\left(\right)\right) + \left(\mathsf{neg}\left(\frac{-1}{4}\right)\right) \cdot \mathsf{PI}\left(\right)}}{s} \cdot 4\right) \]
                          5. distribute-rgt-out--N/A

                            \[\leadsto \left(-s\right) \cdot \left(\frac{u \cdot \color{blue}{\left(\mathsf{PI}\left(\right) \cdot \left(\frac{-1}{4} - \frac{1}{4}\right)\right)} + \left(\mathsf{neg}\left(\frac{-1}{4}\right)\right) \cdot \mathsf{PI}\left(\right)}{s} \cdot 4\right) \]
                          6. metadata-evalN/A

                            \[\leadsto \left(-s\right) \cdot \left(\frac{u \cdot \left(\mathsf{PI}\left(\right) \cdot \color{blue}{\frac{-1}{2}}\right) + \left(\mathsf{neg}\left(\frac{-1}{4}\right)\right) \cdot \mathsf{PI}\left(\right)}{s} \cdot 4\right) \]
                          7. associate-*r*N/A

                            \[\leadsto \left(-s\right) \cdot \left(\frac{\color{blue}{\left(u \cdot \mathsf{PI}\left(\right)\right) \cdot \frac{-1}{2}} + \left(\mathsf{neg}\left(\frac{-1}{4}\right)\right) \cdot \mathsf{PI}\left(\right)}{s} \cdot 4\right) \]
                          8. metadata-evalN/A

                            \[\leadsto \left(-s\right) \cdot \left(\frac{\left(u \cdot \mathsf{PI}\left(\right)\right) \cdot \frac{-1}{2} + \color{blue}{\frac{1}{4}} \cdot \mathsf{PI}\left(\right)}{s} \cdot 4\right) \]
                          9. lower-fma.f32N/A

                            \[\leadsto \left(-s\right) \cdot \left(\frac{\color{blue}{\mathsf{fma}\left(u \cdot \mathsf{PI}\left(\right), \frac{-1}{2}, \frac{1}{4} \cdot \mathsf{PI}\left(\right)\right)}}{s} \cdot 4\right) \]
                          10. lower-*.f32N/A

                            \[\leadsto \left(-s\right) \cdot \left(\frac{\mathsf{fma}\left(\color{blue}{u \cdot \mathsf{PI}\left(\right)}, \frac{-1}{2}, \frac{1}{4} \cdot \mathsf{PI}\left(\right)\right)}{s} \cdot 4\right) \]
                          11. lower-PI.f32N/A

                            \[\leadsto \left(-s\right) \cdot \left(\frac{\mathsf{fma}\left(u \cdot \color{blue}{\mathsf{PI}\left(\right)}, \frac{-1}{2}, \frac{1}{4} \cdot \mathsf{PI}\left(\right)\right)}{s} \cdot 4\right) \]
                          12. lower-*.f32N/A

                            \[\leadsto \left(-s\right) \cdot \left(\frac{\mathsf{fma}\left(u \cdot \mathsf{PI}\left(\right), \frac{-1}{2}, \color{blue}{\frac{1}{4} \cdot \mathsf{PI}\left(\right)}\right)}{s} \cdot 4\right) \]
                          13. lower-PI.f3211.9

                            \[\leadsto \left(-s\right) \cdot \left(\frac{\mathsf{fma}\left(u \cdot \mathsf{PI}\left(\right), -0.5, 0.25 \cdot \color{blue}{\mathsf{PI}\left(\right)}\right)}{s} \cdot 4\right) \]
                        5. Applied rewrites11.9%

                          \[\leadsto \left(-s\right) \cdot \color{blue}{\left(\frac{\mathsf{fma}\left(u \cdot \mathsf{PI}\left(\right), -0.5, 0.25 \cdot \mathsf{PI}\left(\right)\right)}{s} \cdot 4\right)} \]
                        6. Add Preprocessing

                        Alternative 12: 11.7% accurate, 36.4× speedup?

                        \[\begin{array}{l} \\ \mathsf{fma}\left(u \cdot \mathsf{PI}\left(\right), 2, -\mathsf{PI}\left(\right)\right) \end{array} \]
                        (FPCore (u s) :precision binary32 (fma (* u (PI)) 2.0 (- (PI))))
                        \begin{array}{l}
                        
                        \\
                        \mathsf{fma}\left(u \cdot \mathsf{PI}\left(\right), 2, -\mathsf{PI}\left(\right)\right)
                        \end{array}
                        
                        Derivation
                        1. Initial program 98.8%

                          \[\left(-s\right) \cdot \log \left(\frac{1}{u \cdot \left(\frac{1}{1 + e^{\frac{-\mathsf{PI}\left(\right)}{s}}} - \frac{1}{1 + e^{\frac{\mathsf{PI}\left(\right)}{s}}}\right) + \frac{1}{1 + e^{\frac{\mathsf{PI}\left(\right)}{s}}}} - 1\right) \]
                        2. Add Preprocessing
                        3. Taylor expanded in u around 0

                          \[\leadsto \color{blue}{-1 \cdot \mathsf{PI}\left(\right)} \]
                        4. Step-by-step derivation
                          1. mul-1-negN/A

                            \[\leadsto \color{blue}{\mathsf{neg}\left(\mathsf{PI}\left(\right)\right)} \]
                          2. lower-neg.f32N/A

                            \[\leadsto \color{blue}{-\mathsf{PI}\left(\right)} \]
                          3. lower-PI.f3211.8

                            \[\leadsto -\color{blue}{\mathsf{PI}\left(\right)} \]
                        5. Applied rewrites11.8%

                          \[\leadsto \color{blue}{-\mathsf{PI}\left(\right)} \]
                        6. Taylor expanded in s around inf

                          \[\leadsto \color{blue}{4 \cdot \left(u \cdot \left(\frac{1}{4} \cdot \mathsf{PI}\left(\right) - \frac{-1}{4} \cdot \mathsf{PI}\left(\right)\right) - \frac{1}{4} \cdot \mathsf{PI}\left(\right)\right)} \]
                        7. Step-by-step derivation
                          1. lower-*.f32N/A

                            \[\leadsto \color{blue}{4 \cdot \left(u \cdot \left(\frac{1}{4} \cdot \mathsf{PI}\left(\right) - \frac{-1}{4} \cdot \mathsf{PI}\left(\right)\right) - \frac{1}{4} \cdot \mathsf{PI}\left(\right)\right)} \]
                          2. fp-cancel-sub-sign-invN/A

                            \[\leadsto 4 \cdot \color{blue}{\left(u \cdot \left(\frac{1}{4} \cdot \mathsf{PI}\left(\right) - \frac{-1}{4} \cdot \mathsf{PI}\left(\right)\right) + \left(\mathsf{neg}\left(\frac{1}{4}\right)\right) \cdot \mathsf{PI}\left(\right)\right)} \]
                          3. metadata-evalN/A

                            \[\leadsto 4 \cdot \left(u \cdot \left(\frac{1}{4} \cdot \mathsf{PI}\left(\right) - \frac{-1}{4} \cdot \mathsf{PI}\left(\right)\right) + \color{blue}{\frac{-1}{4}} \cdot \mathsf{PI}\left(\right)\right) \]
                          4. lower-fma.f32N/A

                            \[\leadsto 4 \cdot \color{blue}{\mathsf{fma}\left(u, \frac{1}{4} \cdot \mathsf{PI}\left(\right) - \frac{-1}{4} \cdot \mathsf{PI}\left(\right), \frac{-1}{4} \cdot \mathsf{PI}\left(\right)\right)} \]
                          5. distribute-rgt-out--N/A

                            \[\leadsto 4 \cdot \mathsf{fma}\left(u, \color{blue}{\mathsf{PI}\left(\right) \cdot \left(\frac{1}{4} - \frac{-1}{4}\right)}, \frac{-1}{4} \cdot \mathsf{PI}\left(\right)\right) \]
                          6. metadata-evalN/A

                            \[\leadsto 4 \cdot \mathsf{fma}\left(u, \mathsf{PI}\left(\right) \cdot \color{blue}{\frac{1}{2}}, \frac{-1}{4} \cdot \mathsf{PI}\left(\right)\right) \]
                          7. lower-*.f32N/A

                            \[\leadsto 4 \cdot \mathsf{fma}\left(u, \color{blue}{\mathsf{PI}\left(\right) \cdot \frac{1}{2}}, \frac{-1}{4} \cdot \mathsf{PI}\left(\right)\right) \]
                          8. lower-PI.f32N/A

                            \[\leadsto 4 \cdot \mathsf{fma}\left(u, \color{blue}{\mathsf{PI}\left(\right)} \cdot \frac{1}{2}, \frac{-1}{4} \cdot \mathsf{PI}\left(\right)\right) \]
                          9. lower-*.f32N/A

                            \[\leadsto 4 \cdot \mathsf{fma}\left(u, \mathsf{PI}\left(\right) \cdot \frac{1}{2}, \color{blue}{\frac{-1}{4} \cdot \mathsf{PI}\left(\right)}\right) \]
                          10. lower-PI.f3211.9

                            \[\leadsto 4 \cdot \mathsf{fma}\left(u, \mathsf{PI}\left(\right) \cdot 0.5, -0.25 \cdot \color{blue}{\mathsf{PI}\left(\right)}\right) \]
                        8. Applied rewrites11.9%

                          \[\leadsto \color{blue}{4 \cdot \mathsf{fma}\left(u, \mathsf{PI}\left(\right) \cdot 0.5, -0.25 \cdot \mathsf{PI}\left(\right)\right)} \]
                        9. Step-by-step derivation
                          1. Applied rewrites11.9%

                            \[\leadsto \mathsf{fma}\left(u \cdot \mathsf{PI}\left(\right), \color{blue}{2}, -\mathsf{PI}\left(\right)\right) \]
                          2. Add Preprocessing

                          Alternative 13: 11.5% accurate, 170.0× speedup?

                          \[\begin{array}{l} \\ -\mathsf{PI}\left(\right) \end{array} \]
                          (FPCore (u s) :precision binary32 (- (PI)))
                          \begin{array}{l}
                          
                          \\
                          -\mathsf{PI}\left(\right)
                          \end{array}
                          
                          Derivation
                          1. Initial program 98.8%

                            \[\left(-s\right) \cdot \log \left(\frac{1}{u \cdot \left(\frac{1}{1 + e^{\frac{-\mathsf{PI}\left(\right)}{s}}} - \frac{1}{1 + e^{\frac{\mathsf{PI}\left(\right)}{s}}}\right) + \frac{1}{1 + e^{\frac{\mathsf{PI}\left(\right)}{s}}}} - 1\right) \]
                          2. Add Preprocessing
                          3. Taylor expanded in u around 0

                            \[\leadsto \color{blue}{-1 \cdot \mathsf{PI}\left(\right)} \]
                          4. Step-by-step derivation
                            1. mul-1-negN/A

                              \[\leadsto \color{blue}{\mathsf{neg}\left(\mathsf{PI}\left(\right)\right)} \]
                            2. lower-neg.f32N/A

                              \[\leadsto \color{blue}{-\mathsf{PI}\left(\right)} \]
                            3. lower-PI.f3211.8

                              \[\leadsto -\color{blue}{\mathsf{PI}\left(\right)} \]
                          5. Applied rewrites11.8%

                            \[\leadsto \color{blue}{-\mathsf{PI}\left(\right)} \]
                          6. Add Preprocessing

                          Reproduce

                          ?
                          herbie shell --seed 2024360 
                          (FPCore (u s)
                            :name "Sample trimmed logistic on [-pi, pi]"
                            :precision binary32
                            :pre (and (and (<= 2.328306437e-10 u) (<= u 1.0)) (and (<= 0.0 s) (<= s 1.0651631)))
                            (* (- s) (log (- (/ 1.0 (+ (* u (- (/ 1.0 (+ 1.0 (exp (/ (- (PI)) s)))) (/ 1.0 (+ 1.0 (exp (/ (PI) s)))))) (/ 1.0 (+ 1.0 (exp (/ (PI) s)))))) 1.0))))