UniformSampleCone 2

Percentage Accurate: 98.9% → 98.8%
Time: 17.3s
Alternatives: 22
Speedup: 1.0×

Specification

?
\[\left(\left(\left(\left(\left(-10000 \leq xi \land xi \leq 10000\right) \land \left(-10000 \leq yi \land yi \leq 10000\right)\right) \land \left(-10000 \leq zi \land zi \leq 10000\right)\right) \land \left(2.328306437 \cdot 10^{-10} \leq ux \land ux \leq 1\right)\right) \land \left(2.328306437 \cdot 10^{-10} \leq uy \land uy \leq 1\right)\right) \land \left(0 \leq maxCos \land maxCos \leq 1\right)\]
\[\begin{array}{l} \\ \begin{array}{l} t_0 := \left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\\ t_1 := \sqrt{1 - t\_0 \cdot t\_0}\\ t_2 := \left(uy \cdot 2\right) \cdot \mathsf{PI}\left(\right)\\ \left(\left(\cos t\_2 \cdot t\_1\right) \cdot xi + \left(\sin t\_2 \cdot t\_1\right) \cdot yi\right) + t\_0 \cdot zi \end{array} \end{array} \]
(FPCore (xi yi zi ux uy maxCos)
 :precision binary32
 (let* ((t_0 (* (* (- 1.0 ux) maxCos) ux))
        (t_1 (sqrt (- 1.0 (* t_0 t_0))))
        (t_2 (* (* uy 2.0) (PI))))
   (+ (+ (* (* (cos t_2) t_1) xi) (* (* (sin t_2) t_1) yi)) (* t_0 zi))))
\begin{array}{l}

\\
\begin{array}{l}
t_0 := \left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\\
t_1 := \sqrt{1 - t\_0 \cdot t\_0}\\
t_2 := \left(uy \cdot 2\right) \cdot \mathsf{PI}\left(\right)\\
\left(\left(\cos t\_2 \cdot t\_1\right) \cdot xi + \left(\sin t\_2 \cdot t\_1\right) \cdot yi\right) + t\_0 \cdot zi
\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 22 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 := \left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\\ t_1 := \sqrt{1 - t\_0 \cdot t\_0}\\ t_2 := \left(uy \cdot 2\right) \cdot \mathsf{PI}\left(\right)\\ \left(\left(\cos t\_2 \cdot t\_1\right) \cdot xi + \left(\sin t\_2 \cdot t\_1\right) \cdot yi\right) + t\_0 \cdot zi \end{array} \end{array} \]
(FPCore (xi yi zi ux uy maxCos)
 :precision binary32
 (let* ((t_0 (* (* (- 1.0 ux) maxCos) ux))
        (t_1 (sqrt (- 1.0 (* t_0 t_0))))
        (t_2 (* (* uy 2.0) (PI))))
   (+ (+ (* (* (cos t_2) t_1) xi) (* (* (sin t_2) t_1) yi)) (* t_0 zi))))
\begin{array}{l}

\\
\begin{array}{l}
t_0 := \left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\\
t_1 := \sqrt{1 - t\_0 \cdot t\_0}\\
t_2 := \left(uy \cdot 2\right) \cdot \mathsf{PI}\left(\right)\\
\left(\left(\cos t\_2 \cdot t\_1\right) \cdot xi + \left(\sin t\_2 \cdot t\_1\right) \cdot yi\right) + t\_0 \cdot zi
\end{array}
\end{array}

Alternative 1: 98.8% accurate, 0.7× speedup?

\[\begin{array}{l} \\ \begin{array}{l} t_0 := \left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\\ t_1 := \left(uy \cdot 2\right) \cdot \mathsf{PI}\left(\right)\\ \left(\left(\cos t\_1 \cdot \sqrt{1 - t\_0 \cdot t\_0}\right) \cdot xi + \left(\sin t\_1 \cdot \sqrt{\left(\frac{\frac{\frac{1}{ux \cdot ux} - maxCos \cdot maxCos}{ux} + \left(maxCos \cdot maxCos\right) \cdot 2}{ux} - maxCos \cdot maxCos\right) \cdot {ux}^{4}}\right) \cdot yi\right) + t\_0 \cdot zi \end{array} \end{array} \]
(FPCore (xi yi zi ux uy maxCos)
 :precision binary32
 (let* ((t_0 (* (* (- 1.0 ux) maxCos) ux)) (t_1 (* (* uy 2.0) (PI))))
   (+
    (+
     (* (* (cos t_1) (sqrt (- 1.0 (* t_0 t_0)))) xi)
     (*
      (*
       (sin t_1)
       (sqrt
        (*
         (-
          (/
           (+
            (/ (- (/ 1.0 (* ux ux)) (* maxCos maxCos)) ux)
            (* (* maxCos maxCos) 2.0))
           ux)
          (* maxCos maxCos))
         (pow ux 4.0))))
      yi))
    (* t_0 zi))))
\begin{array}{l}

\\
\begin{array}{l}
t_0 := \left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\\
t_1 := \left(uy \cdot 2\right) \cdot \mathsf{PI}\left(\right)\\
\left(\left(\cos t\_1 \cdot \sqrt{1 - t\_0 \cdot t\_0}\right) \cdot xi + \left(\sin t\_1 \cdot \sqrt{\left(\frac{\frac{\frac{1}{ux \cdot ux} - maxCos \cdot maxCos}{ux} + \left(maxCos \cdot maxCos\right) \cdot 2}{ux} - maxCos \cdot maxCos\right) \cdot {ux}^{4}}\right) \cdot yi\right) + t\_0 \cdot zi
\end{array}
\end{array}
Derivation
  1. Initial program 98.9%

    \[\left(\left(\cos \left(\left(uy \cdot 2\right) \cdot \mathsf{PI}\left(\right)\right) \cdot \sqrt{1 - \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right)}\right) \cdot xi + \left(\sin \left(\left(uy \cdot 2\right) \cdot \mathsf{PI}\left(\right)\right) \cdot \sqrt{1 - \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right)}\right) \cdot yi\right) + \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot zi \]
  2. Add Preprocessing
  3. Taylor expanded in ux around -inf

    \[\leadsto \left(\left(\cos \left(\left(uy \cdot 2\right) \cdot \mathsf{PI}\left(\right)\right) \cdot \sqrt{1 - \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right)}\right) \cdot xi + \left(\sin \left(\left(uy \cdot 2\right) \cdot \mathsf{PI}\left(\right)\right) \cdot \sqrt{\color{blue}{{ux}^{4} \cdot \left(-1 \cdot \frac{-1 \cdot \frac{\frac{1}{{ux}^{2}} - {maxCos}^{2}}{ux} - 2 \cdot {maxCos}^{2}}{ux} - {maxCos}^{2}\right)}}\right) \cdot yi\right) + \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot zi \]
  4. Step-by-step derivation
    1. Applied rewrites98.9%

      \[\leadsto \left(\left(\cos \left(\left(uy \cdot 2\right) \cdot \mathsf{PI}\left(\right)\right) \cdot \sqrt{1 - \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right)}\right) \cdot xi + \left(\sin \left(\left(uy \cdot 2\right) \cdot \mathsf{PI}\left(\right)\right) \cdot \sqrt{\color{blue}{\left(\frac{\frac{\frac{1}{ux \cdot ux} - maxCos \cdot maxCos}{-ux} - \left(maxCos \cdot maxCos\right) \cdot 2}{-ux} - maxCos \cdot maxCos\right) \cdot {ux}^{4}}}\right) \cdot yi\right) + \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot zi \]
    2. Final simplification98.9%

      \[\leadsto \left(\left(\cos \left(\left(uy \cdot 2\right) \cdot \mathsf{PI}\left(\right)\right) \cdot \sqrt{1 - \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right)}\right) \cdot xi + \left(\sin \left(\left(uy \cdot 2\right) \cdot \mathsf{PI}\left(\right)\right) \cdot \sqrt{\left(\frac{\frac{\frac{1}{ux \cdot ux} - maxCos \cdot maxCos}{ux} + \left(maxCos \cdot maxCos\right) \cdot 2}{ux} - maxCos \cdot maxCos\right) \cdot {ux}^{4}}\right) \cdot yi\right) + \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot zi \]
    3. Add Preprocessing

    Alternative 2: 98.9% accurate, 1.0× speedup?

    \[\begin{array}{l} \\ \begin{array}{l} t_0 := \left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\\ t_1 := \sqrt{1 - t\_0 \cdot t\_0}\\ t_2 := \left(uy \cdot 2\right) \cdot \mathsf{PI}\left(\right)\\ \left(\left(\cos t\_2 \cdot t\_1\right) \cdot xi + \left(\sin t\_2 \cdot t\_1\right) \cdot yi\right) + t\_0 \cdot zi \end{array} \end{array} \]
    (FPCore (xi yi zi ux uy maxCos)
     :precision binary32
     (let* ((t_0 (* (* (- 1.0 ux) maxCos) ux))
            (t_1 (sqrt (- 1.0 (* t_0 t_0))))
            (t_2 (* (* uy 2.0) (PI))))
       (+ (+ (* (* (cos t_2) t_1) xi) (* (* (sin t_2) t_1) yi)) (* t_0 zi))))
    \begin{array}{l}
    
    \\
    \begin{array}{l}
    t_0 := \left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\\
    t_1 := \sqrt{1 - t\_0 \cdot t\_0}\\
    t_2 := \left(uy \cdot 2\right) \cdot \mathsf{PI}\left(\right)\\
    \left(\left(\cos t\_2 \cdot t\_1\right) \cdot xi + \left(\sin t\_2 \cdot t\_1\right) \cdot yi\right) + t\_0 \cdot zi
    \end{array}
    \end{array}
    
    Derivation
    1. Initial program 98.9%

      \[\left(\left(\cos \left(\left(uy \cdot 2\right) \cdot \mathsf{PI}\left(\right)\right) \cdot \sqrt{1 - \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right)}\right) \cdot xi + \left(\sin \left(\left(uy \cdot 2\right) \cdot \mathsf{PI}\left(\right)\right) \cdot \sqrt{1 - \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right)}\right) \cdot yi\right) + \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot zi \]
    2. Add Preprocessing
    3. Add Preprocessing

    Alternative 3: 98.8% accurate, 1.2× speedup?

    \[\begin{array}{l} \\ \begin{array}{l} t_0 := \left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\\ \left(\left(\cos \left(\left(uy \cdot 2\right) \cdot \mathsf{PI}\left(\right)\right) \cdot \sqrt{1 - t\_0 \cdot t\_0}\right) \cdot xi + \sin \left(\mathsf{PI}\left(\right) \cdot \left(2 \cdot uy\right)\right) \cdot yi\right) + t\_0 \cdot zi \end{array} \end{array} \]
    (FPCore (xi yi zi ux uy maxCos)
     :precision binary32
     (let* ((t_0 (* (* (- 1.0 ux) maxCos) ux)))
       (+
        (+
         (* (* (cos (* (* uy 2.0) (PI))) (sqrt (- 1.0 (* t_0 t_0)))) xi)
         (* (sin (* (PI) (* 2.0 uy))) yi))
        (* t_0 zi))))
    \begin{array}{l}
    
    \\
    \begin{array}{l}
    t_0 := \left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\\
    \left(\left(\cos \left(\left(uy \cdot 2\right) \cdot \mathsf{PI}\left(\right)\right) \cdot \sqrt{1 - t\_0 \cdot t\_0}\right) \cdot xi + \sin \left(\mathsf{PI}\left(\right) \cdot \left(2 \cdot uy\right)\right) \cdot yi\right) + t\_0 \cdot zi
    \end{array}
    \end{array}
    
    Derivation
    1. Initial program 98.9%

      \[\left(\left(\cos \left(\left(uy \cdot 2\right) \cdot \mathsf{PI}\left(\right)\right) \cdot \sqrt{1 - \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right)}\right) \cdot xi + \left(\sin \left(\left(uy \cdot 2\right) \cdot \mathsf{PI}\left(\right)\right) \cdot \sqrt{1 - \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right)}\right) \cdot yi\right) + \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot zi \]
    2. Add Preprocessing
    3. Taylor expanded in ux around 0

      \[\leadsto \left(\left(\cos \left(\left(uy \cdot 2\right) \cdot \mathsf{PI}\left(\right)\right) \cdot \sqrt{1 - \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right)}\right) \cdot xi + \color{blue}{yi \cdot \sin \left(2 \cdot \left(uy \cdot \mathsf{PI}\left(\right)\right)\right)}\right) + \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot zi \]
    4. Step-by-step derivation
      1. Applied rewrites98.8%

        \[\leadsto \left(\left(\cos \left(\left(uy \cdot 2\right) \cdot \mathsf{PI}\left(\right)\right) \cdot \sqrt{1 - \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right)}\right) \cdot xi + \color{blue}{\sin \left(\mathsf{PI}\left(\right) \cdot \left(2 \cdot uy\right)\right) \cdot yi}\right) + \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot zi \]
      2. Add Preprocessing

      Alternative 4: 98.7% accurate, 1.4× speedup?

      \[\begin{array}{l} \\ \mathsf{fma}\left(\cos \left(-2 \cdot \left(\mathsf{PI}\left(\right) \cdot uy\right)\right), xi, \sin \left(\mathsf{PI}\left(\right) \cdot \left(2 \cdot uy\right)\right) \cdot yi\right) + \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot zi \end{array} \]
      (FPCore (xi yi zi ux uy maxCos)
       :precision binary32
       (+
        (fma (cos (* -2.0 (* (PI) uy))) xi (* (sin (* (PI) (* 2.0 uy))) yi))
        (* (* (* (- 1.0 ux) maxCos) ux) zi)))
      \begin{array}{l}
      
      \\
      \mathsf{fma}\left(\cos \left(-2 \cdot \left(\mathsf{PI}\left(\right) \cdot uy\right)\right), xi, \sin \left(\mathsf{PI}\left(\right) \cdot \left(2 \cdot uy\right)\right) \cdot yi\right) + \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot zi
      \end{array}
      
      Derivation
      1. Initial program 98.9%

        \[\left(\left(\cos \left(\left(uy \cdot 2\right) \cdot \mathsf{PI}\left(\right)\right) \cdot \sqrt{1 - \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right)}\right) \cdot xi + \left(\sin \left(\left(uy \cdot 2\right) \cdot \mathsf{PI}\left(\right)\right) \cdot \sqrt{1 - \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right)}\right) \cdot yi\right) + \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot zi \]
      2. Add Preprocessing
      3. Taylor expanded in ux around 0

        \[\leadsto \color{blue}{\left(xi \cdot \cos \left(2 \cdot \left(uy \cdot \mathsf{PI}\left(\right)\right)\right) + yi \cdot \sin \left(2 \cdot \left(uy \cdot \mathsf{PI}\left(\right)\right)\right)\right)} + \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot zi \]
      4. Step-by-step derivation
        1. Applied rewrites98.2%

          \[\leadsto \color{blue}{\mathsf{fma}\left(\cos \left(-2 \cdot \left(\mathsf{PI}\left(\right) \cdot uy\right)\right), xi, \sin \left(\mathsf{PI}\left(\right) \cdot \left(2 \cdot uy\right)\right) \cdot yi\right)} + \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot zi \]
        2. Add Preprocessing

        Alternative 5: 98.7% accurate, 1.4× speedup?

        \[\begin{array}{l} \\ \mathsf{fma}\left(\cos \left(-2 \cdot \left(\mathsf{PI}\left(\right) \cdot uy\right)\right), xi, \mathsf{fma}\left(\sin \left(\mathsf{PI}\left(\right) \cdot \left(2 \cdot uy\right)\right), yi, \left(\left(\left(1 - ux\right) \cdot zi\right) \cdot ux\right) \cdot maxCos\right)\right) \end{array} \]
        (FPCore (xi yi zi ux uy maxCos)
         :precision binary32
         (fma
          (cos (* -2.0 (* (PI) uy)))
          xi
          (fma (sin (* (PI) (* 2.0 uy))) yi (* (* (* (- 1.0 ux) zi) ux) maxCos))))
        \begin{array}{l}
        
        \\
        \mathsf{fma}\left(\cos \left(-2 \cdot \left(\mathsf{PI}\left(\right) \cdot uy\right)\right), xi, \mathsf{fma}\left(\sin \left(\mathsf{PI}\left(\right) \cdot \left(2 \cdot uy\right)\right), yi, \left(\left(\left(1 - ux\right) \cdot zi\right) \cdot ux\right) \cdot maxCos\right)\right)
        \end{array}
        
        Derivation
        1. Initial program 98.9%

          \[\left(\left(\cos \left(\left(uy \cdot 2\right) \cdot \mathsf{PI}\left(\right)\right) \cdot \sqrt{1 - \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right)}\right) \cdot xi + \left(\sin \left(\left(uy \cdot 2\right) \cdot \mathsf{PI}\left(\right)\right) \cdot \sqrt{1 - \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right)}\right) \cdot yi\right) + \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot zi \]
        2. Add Preprocessing
        3. Taylor expanded in maxCos around 0

          \[\leadsto \color{blue}{maxCos \cdot \left(ux \cdot \left(zi \cdot \left(1 - ux\right)\right)\right) + \left(xi \cdot \cos \left(2 \cdot \left(uy \cdot \mathsf{PI}\left(\right)\right)\right) + yi \cdot \sin \left(2 \cdot \left(uy \cdot \mathsf{PI}\left(\right)\right)\right)\right)} \]
        4. Step-by-step derivation
          1. Applied rewrites98.2%

            \[\leadsto \color{blue}{\mathsf{fma}\left(\cos \left(-2 \cdot \left(\mathsf{PI}\left(\right) \cdot uy\right)\right), xi, \mathsf{fma}\left(\sin \left(\mathsf{PI}\left(\right) \cdot \left(2 \cdot uy\right)\right), yi, \left(\left(\left(1 - ux\right) \cdot zi\right) \cdot ux\right) \cdot maxCos\right)\right)} \]
          2. Add Preprocessing

          Alternative 6: 98.1% accurate, 1.4× speedup?

          \[\begin{array}{l} \\ \begin{array}{l} t_0 := \mathsf{PI}\left(\right) \cdot uy\\ \mathbf{if}\;uy \leq 0.0022799998987466097:\\ \;\;\;\;\mathsf{fma}\left(maxCos \cdot ux, zi \cdot \left(1 - ux\right), xi\right) + \mathsf{fma}\left(\mathsf{fma}\left(\left({\mathsf{PI}\left(\right)}^{3} \cdot yi\right) \cdot uy, -1.3333333333333333, \left(\left(\mathsf{PI}\left(\right) \cdot \mathsf{PI}\left(\right)\right) \cdot xi\right) \cdot -2\right), uy, \left(\mathsf{PI}\left(\right) \cdot yi\right) \cdot 2\right) \cdot uy\\ \mathbf{else}:\\ \;\;\;\;\mathsf{fma}\left(zi \cdot ux, maxCos, \mathsf{fma}\left(\cos \left(t\_0 \cdot -2\right), xi, \sin \left(t\_0 \cdot 2\right) \cdot yi\right)\right)\\ \end{array} \end{array} \]
          (FPCore (xi yi zi ux uy maxCos)
           :precision binary32
           (let* ((t_0 (* (PI) uy)))
             (if (<= uy 0.0022799998987466097)
               (+
                (fma (* maxCos ux) (* zi (- 1.0 ux)) xi)
                (*
                 (fma
                  (fma
                   (* (* (pow (PI) 3.0) yi) uy)
                   -1.3333333333333333
                   (* (* (* (PI) (PI)) xi) -2.0))
                  uy
                  (* (* (PI) yi) 2.0))
                 uy))
               (fma
                (* zi ux)
                maxCos
                (fma (cos (* t_0 -2.0)) xi (* (sin (* t_0 2.0)) yi))))))
          \begin{array}{l}
          
          \\
          \begin{array}{l}
          t_0 := \mathsf{PI}\left(\right) \cdot uy\\
          \mathbf{if}\;uy \leq 0.0022799998987466097:\\
          \;\;\;\;\mathsf{fma}\left(maxCos \cdot ux, zi \cdot \left(1 - ux\right), xi\right) + \mathsf{fma}\left(\mathsf{fma}\left(\left({\mathsf{PI}\left(\right)}^{3} \cdot yi\right) \cdot uy, -1.3333333333333333, \left(\left(\mathsf{PI}\left(\right) \cdot \mathsf{PI}\left(\right)\right) \cdot xi\right) \cdot -2\right), uy, \left(\mathsf{PI}\left(\right) \cdot yi\right) \cdot 2\right) \cdot uy\\
          
          \mathbf{else}:\\
          \;\;\;\;\mathsf{fma}\left(zi \cdot ux, maxCos, \mathsf{fma}\left(\cos \left(t\_0 \cdot -2\right), xi, \sin \left(t\_0 \cdot 2\right) \cdot yi\right)\right)\\
          
          
          \end{array}
          \end{array}
          
          Derivation
          1. Split input into 2 regimes
          2. if uy < 0.0022799999

            1. Initial program 99.2%

              \[\left(\left(\cos \left(\left(uy \cdot 2\right) \cdot \mathsf{PI}\left(\right)\right) \cdot \sqrt{1 - \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right)}\right) \cdot xi + \left(\sin \left(\left(uy \cdot 2\right) \cdot \mathsf{PI}\left(\right)\right) \cdot \sqrt{1 - \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right)}\right) \cdot yi\right) + \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot zi \]
            2. Add Preprocessing
            3. Taylor expanded in maxCos around 0

              \[\leadsto \color{blue}{maxCos \cdot \left(ux \cdot \left(zi \cdot \left(1 - ux\right)\right)\right) + \left(xi \cdot \cos \left(2 \cdot \left(uy \cdot \mathsf{PI}\left(\right)\right)\right) + yi \cdot \sin \left(2 \cdot \left(uy \cdot \mathsf{PI}\left(\right)\right)\right)\right)} \]
            4. Step-by-step derivation
              1. Applied rewrites98.3%

                \[\leadsto \color{blue}{\mathsf{fma}\left(\cos \left(-2 \cdot \left(\mathsf{PI}\left(\right) \cdot uy\right)\right), xi, \mathsf{fma}\left(\sin \left(\mathsf{PI}\left(\right) \cdot \left(2 \cdot uy\right)\right), yi, \left(\left(\left(1 - ux\right) \cdot zi\right) \cdot ux\right) \cdot maxCos\right)\right)} \]
              2. Taylor expanded in uy around 0

                \[\leadsto xi + \color{blue}{\left(maxCos \cdot \left(ux \cdot \left(zi \cdot \left(1 - ux\right)\right)\right) + uy \cdot \left(2 \cdot \left(yi \cdot \mathsf{PI}\left(\right)\right) + uy \cdot \left(-2 \cdot \left(xi \cdot {\mathsf{PI}\left(\right)}^{2}\right) + \frac{-4}{3} \cdot \left(uy \cdot \left(yi \cdot {\mathsf{PI}\left(\right)}^{3}\right)\right)\right)\right)\right)} \]
              3. Step-by-step derivation
                1. Applied rewrites98.4%

                  \[\leadsto \mathsf{fma}\left(maxCos \cdot ux, zi \cdot \left(1 - ux\right), xi\right) + \color{blue}{\mathsf{fma}\left(\mathsf{fma}\left(\left({\mathsf{PI}\left(\right)}^{3} \cdot yi\right) \cdot uy, -1.3333333333333333, \left(\left(\mathsf{PI}\left(\right) \cdot \mathsf{PI}\left(\right)\right) \cdot xi\right) \cdot -2\right), uy, \left(\mathsf{PI}\left(\right) \cdot yi\right) \cdot 2\right) \cdot uy} \]

                if 0.0022799999 < uy

                1. Initial program 98.1%

                  \[\left(\left(\cos \left(\left(uy \cdot 2\right) \cdot \mathsf{PI}\left(\right)\right) \cdot \sqrt{1 - \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right)}\right) \cdot xi + \left(\sin \left(\left(uy \cdot 2\right) \cdot \mathsf{PI}\left(\right)\right) \cdot \sqrt{1 - \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right)}\right) \cdot yi\right) + \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot zi \]
                2. Add Preprocessing
                3. Taylor expanded in ux around -inf

                  \[\leadsto \left(\left(\cos \left(\left(uy \cdot 2\right) \cdot \mathsf{PI}\left(\right)\right) \cdot \sqrt{1 - \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right)}\right) \cdot xi + \left(\sin \left(\left(uy \cdot 2\right) \cdot \mathsf{PI}\left(\right)\right) \cdot \sqrt{\color{blue}{{ux}^{4} \cdot \left(-1 \cdot \frac{-1 \cdot \frac{\frac{1}{{ux}^{2}} - {maxCos}^{2}}{ux} - 2 \cdot {maxCos}^{2}}{ux} - {maxCos}^{2}\right)}}\right) \cdot yi\right) + \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot zi \]
                4. Step-by-step derivation
                  1. Applied rewrites98.2%

                    \[\leadsto \left(\left(\cos \left(\left(uy \cdot 2\right) \cdot \mathsf{PI}\left(\right)\right) \cdot \sqrt{1 - \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right)}\right) \cdot xi + \left(\sin \left(\left(uy \cdot 2\right) \cdot \mathsf{PI}\left(\right)\right) \cdot \sqrt{\color{blue}{\left(\frac{\frac{\frac{1}{ux \cdot ux} - maxCos \cdot maxCos}{-ux} - \left(maxCos \cdot maxCos\right) \cdot 2}{-ux} - maxCos \cdot maxCos\right) \cdot {ux}^{4}}}\right) \cdot yi\right) + \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot zi \]
                  2. Step-by-step derivation
                    1. Applied rewrites97.9%

                      \[\leadsto \left(\left(\cos \left(\left(uy \cdot 2\right) \cdot \mathsf{PI}\left(\right)\right) \cdot \sqrt{1 - \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right)}\right) \cdot xi + \left(\sin \left(\left(uy \cdot 2\right) \cdot \mathsf{PI}\left(\right)\right) \cdot \sqrt{\left(\frac{\frac{\frac{1}{ux} \cdot \frac{1}{ux} - maxCos \cdot maxCos}{-ux} - \left(maxCos \cdot maxCos\right) \cdot 2}{-ux} - maxCos \cdot maxCos\right) \cdot {ux}^{4}}\right) \cdot yi\right) + \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot zi \]
                    2. Taylor expanded in ux around 0

                      \[\leadsto \color{blue}{maxCos \cdot \left(ux \cdot zi\right) + \left(xi \cdot \cos \left(2 \cdot \left(uy \cdot \mathsf{PI}\left(\right)\right)\right) + yi \cdot \sin \left(2 \cdot \left(uy \cdot \mathsf{PI}\left(\right)\right)\right)\right)} \]
                    3. Step-by-step derivation
                      1. Applied rewrites93.2%

                        \[\leadsto \color{blue}{\mathsf{fma}\left(zi \cdot ux, maxCos, \mathsf{fma}\left(\cos \left(\left(\mathsf{PI}\left(\right) \cdot uy\right) \cdot -2\right), xi, \sin \left(\left(\mathsf{PI}\left(\right) \cdot uy\right) \cdot 2\right) \cdot yi\right)\right)} \]
                    4. Recombined 2 regimes into one program.
                    5. Add Preprocessing

                    Alternative 7: 98.1% accurate, 1.4× speedup?

                    \[\begin{array}{l} \\ \begin{array}{l} t_0 := \mathsf{PI}\left(\right) \cdot uy\\ \mathbf{if}\;uy \leq 0.0022799998987466097:\\ \;\;\;\;\mathsf{fma}\left(maxCos \cdot ux, zi \cdot \left(1 - ux\right), xi\right) + \mathsf{fma}\left(\mathsf{fma}\left(\left({\mathsf{PI}\left(\right)}^{3} \cdot yi\right) \cdot uy, -1.3333333333333333, \left(\left(\mathsf{PI}\left(\right) \cdot \mathsf{PI}\left(\right)\right) \cdot xi\right) \cdot -2\right), uy, \left(\mathsf{PI}\left(\right) \cdot yi\right) \cdot 2\right) \cdot uy\\ \mathbf{else}:\\ \;\;\;\;\mathsf{fma}\left(maxCos \cdot ux, zi, \mathsf{fma}\left(\cos \left(-2 \cdot t\_0\right), xi, \sin \left(t\_0 \cdot 2\right) \cdot yi\right)\right)\\ \end{array} \end{array} \]
                    (FPCore (xi yi zi ux uy maxCos)
                     :precision binary32
                     (let* ((t_0 (* (PI) uy)))
                       (if (<= uy 0.0022799998987466097)
                         (+
                          (fma (* maxCos ux) (* zi (- 1.0 ux)) xi)
                          (*
                           (fma
                            (fma
                             (* (* (pow (PI) 3.0) yi) uy)
                             -1.3333333333333333
                             (* (* (* (PI) (PI)) xi) -2.0))
                            uy
                            (* (* (PI) yi) 2.0))
                           uy))
                         (fma
                          (* maxCos ux)
                          zi
                          (fma (cos (* -2.0 t_0)) xi (* (sin (* t_0 2.0)) yi))))))
                    \begin{array}{l}
                    
                    \\
                    \begin{array}{l}
                    t_0 := \mathsf{PI}\left(\right) \cdot uy\\
                    \mathbf{if}\;uy \leq 0.0022799998987466097:\\
                    \;\;\;\;\mathsf{fma}\left(maxCos \cdot ux, zi \cdot \left(1 - ux\right), xi\right) + \mathsf{fma}\left(\mathsf{fma}\left(\left({\mathsf{PI}\left(\right)}^{3} \cdot yi\right) \cdot uy, -1.3333333333333333, \left(\left(\mathsf{PI}\left(\right) \cdot \mathsf{PI}\left(\right)\right) \cdot xi\right) \cdot -2\right), uy, \left(\mathsf{PI}\left(\right) \cdot yi\right) \cdot 2\right) \cdot uy\\
                    
                    \mathbf{else}:\\
                    \;\;\;\;\mathsf{fma}\left(maxCos \cdot ux, zi, \mathsf{fma}\left(\cos \left(-2 \cdot t\_0\right), xi, \sin \left(t\_0 \cdot 2\right) \cdot yi\right)\right)\\
                    
                    
                    \end{array}
                    \end{array}
                    
                    Derivation
                    1. Split input into 2 regimes
                    2. if uy < 0.0022799999

                      1. Initial program 99.2%

                        \[\left(\left(\cos \left(\left(uy \cdot 2\right) \cdot \mathsf{PI}\left(\right)\right) \cdot \sqrt{1 - \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right)}\right) \cdot xi + \left(\sin \left(\left(uy \cdot 2\right) \cdot \mathsf{PI}\left(\right)\right) \cdot \sqrt{1 - \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right)}\right) \cdot yi\right) + \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot zi \]
                      2. Add Preprocessing
                      3. Taylor expanded in maxCos around 0

                        \[\leadsto \color{blue}{maxCos \cdot \left(ux \cdot \left(zi \cdot \left(1 - ux\right)\right)\right) + \left(xi \cdot \cos \left(2 \cdot \left(uy \cdot \mathsf{PI}\left(\right)\right)\right) + yi \cdot \sin \left(2 \cdot \left(uy \cdot \mathsf{PI}\left(\right)\right)\right)\right)} \]
                      4. Step-by-step derivation
                        1. Applied rewrites98.3%

                          \[\leadsto \color{blue}{\mathsf{fma}\left(\cos \left(-2 \cdot \left(\mathsf{PI}\left(\right) \cdot uy\right)\right), xi, \mathsf{fma}\left(\sin \left(\mathsf{PI}\left(\right) \cdot \left(2 \cdot uy\right)\right), yi, \left(\left(\left(1 - ux\right) \cdot zi\right) \cdot ux\right) \cdot maxCos\right)\right)} \]
                        2. Taylor expanded in uy around 0

                          \[\leadsto xi + \color{blue}{\left(maxCos \cdot \left(ux \cdot \left(zi \cdot \left(1 - ux\right)\right)\right) + uy \cdot \left(2 \cdot \left(yi \cdot \mathsf{PI}\left(\right)\right) + uy \cdot \left(-2 \cdot \left(xi \cdot {\mathsf{PI}\left(\right)}^{2}\right) + \frac{-4}{3} \cdot \left(uy \cdot \left(yi \cdot {\mathsf{PI}\left(\right)}^{3}\right)\right)\right)\right)\right)} \]
                        3. Step-by-step derivation
                          1. Applied rewrites98.4%

                            \[\leadsto \mathsf{fma}\left(maxCos \cdot ux, zi \cdot \left(1 - ux\right), xi\right) + \color{blue}{\mathsf{fma}\left(\mathsf{fma}\left(\left({\mathsf{PI}\left(\right)}^{3} \cdot yi\right) \cdot uy, -1.3333333333333333, \left(\left(\mathsf{PI}\left(\right) \cdot \mathsf{PI}\left(\right)\right) \cdot xi\right) \cdot -2\right), uy, \left(\mathsf{PI}\left(\right) \cdot yi\right) \cdot 2\right) \cdot uy} \]

                          if 0.0022799999 < uy

                          1. Initial program 98.1%

                            \[\left(\left(\cos \left(\left(uy \cdot 2\right) \cdot \mathsf{PI}\left(\right)\right) \cdot \sqrt{1 - \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right)}\right) \cdot xi + \left(\sin \left(\left(uy \cdot 2\right) \cdot \mathsf{PI}\left(\right)\right) \cdot \sqrt{1 - \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right)}\right) \cdot yi\right) + \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot zi \]
                          2. Add Preprocessing
                          3. Taylor expanded in ux around -inf

                            \[\leadsto \left(\left(\cos \left(\left(uy \cdot 2\right) \cdot \mathsf{PI}\left(\right)\right) \cdot \sqrt{1 - \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right)}\right) \cdot xi + \left(\sin \left(\left(uy \cdot 2\right) \cdot \mathsf{PI}\left(\right)\right) \cdot \sqrt{\color{blue}{{ux}^{4} \cdot \left(-1 \cdot \frac{-1 \cdot \frac{\frac{1}{{ux}^{2}} - {maxCos}^{2}}{ux} - 2 \cdot {maxCos}^{2}}{ux} - {maxCos}^{2}\right)}}\right) \cdot yi\right) + \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot zi \]
                          4. Step-by-step derivation
                            1. Applied rewrites98.2%

                              \[\leadsto \left(\left(\cos \left(\left(uy \cdot 2\right) \cdot \mathsf{PI}\left(\right)\right) \cdot \sqrt{1 - \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right)}\right) \cdot xi + \left(\sin \left(\left(uy \cdot 2\right) \cdot \mathsf{PI}\left(\right)\right) \cdot \sqrt{\color{blue}{\left(\frac{\frac{\frac{1}{ux \cdot ux} - maxCos \cdot maxCos}{-ux} - \left(maxCos \cdot maxCos\right) \cdot 2}{-ux} - maxCos \cdot maxCos\right) \cdot {ux}^{4}}}\right) \cdot yi\right) + \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot zi \]
                            2. Taylor expanded in ux around 0

                              \[\leadsto \color{blue}{maxCos \cdot \left(ux \cdot zi\right) + \left(xi \cdot \cos \left(2 \cdot \left(uy \cdot \mathsf{PI}\left(\right)\right)\right) + yi \cdot \sin \left(2 \cdot \left(uy \cdot \mathsf{PI}\left(\right)\right)\right)\right)} \]
                            3. Step-by-step derivation
                              1. Applied rewrites93.2%

                                \[\leadsto \color{blue}{\mathsf{fma}\left(maxCos \cdot ux, zi, \mathsf{fma}\left(\cos \left(-2 \cdot \left(\mathsf{PI}\left(\right) \cdot uy\right)\right), xi, \sin \left(\left(\mathsf{PI}\left(\right) \cdot uy\right) \cdot 2\right) \cdot yi\right)\right)} \]
                            4. Recombined 2 regimes into one program.
                            5. Add Preprocessing

                            Alternative 8: 98.1% accurate, 1.4× speedup?

                            \[\begin{array}{l} \\ \begin{array}{l} \mathbf{if}\;uy \leq 0.0022799998987466097:\\ \;\;\;\;\mathsf{fma}\left(maxCos \cdot ux, zi \cdot \left(1 - ux\right), xi\right) + \mathsf{fma}\left(\mathsf{fma}\left(\left({\mathsf{PI}\left(\right)}^{3} \cdot yi\right) \cdot uy, -1.3333333333333333, \left(\left(\mathsf{PI}\left(\right) \cdot \mathsf{PI}\left(\right)\right) \cdot xi\right) \cdot -2\right), uy, \left(\mathsf{PI}\left(\right) \cdot yi\right) \cdot 2\right) \cdot uy\\ \mathbf{else}:\\ \;\;\;\;\mathsf{fma}\left(\cos \left(-2 \cdot \left(\mathsf{PI}\left(\right) \cdot uy\right)\right), xi, \mathsf{fma}\left(\sin \left(\mathsf{PI}\left(\right) \cdot \left(2 \cdot uy\right)\right), yi, \left(zi \cdot ux\right) \cdot maxCos\right)\right)\\ \end{array} \end{array} \]
                            (FPCore (xi yi zi ux uy maxCos)
                             :precision binary32
                             (if (<= uy 0.0022799998987466097)
                               (+
                                (fma (* maxCos ux) (* zi (- 1.0 ux)) xi)
                                (*
                                 (fma
                                  (fma
                                   (* (* (pow (PI) 3.0) yi) uy)
                                   -1.3333333333333333
                                   (* (* (* (PI) (PI)) xi) -2.0))
                                  uy
                                  (* (* (PI) yi) 2.0))
                                 uy))
                               (fma
                                (cos (* -2.0 (* (PI) uy)))
                                xi
                                (fma (sin (* (PI) (* 2.0 uy))) yi (* (* zi ux) maxCos)))))
                            \begin{array}{l}
                            
                            \\
                            \begin{array}{l}
                            \mathbf{if}\;uy \leq 0.0022799998987466097:\\
                            \;\;\;\;\mathsf{fma}\left(maxCos \cdot ux, zi \cdot \left(1 - ux\right), xi\right) + \mathsf{fma}\left(\mathsf{fma}\left(\left({\mathsf{PI}\left(\right)}^{3} \cdot yi\right) \cdot uy, -1.3333333333333333, \left(\left(\mathsf{PI}\left(\right) \cdot \mathsf{PI}\left(\right)\right) \cdot xi\right) \cdot -2\right), uy, \left(\mathsf{PI}\left(\right) \cdot yi\right) \cdot 2\right) \cdot uy\\
                            
                            \mathbf{else}:\\
                            \;\;\;\;\mathsf{fma}\left(\cos \left(-2 \cdot \left(\mathsf{PI}\left(\right) \cdot uy\right)\right), xi, \mathsf{fma}\left(\sin \left(\mathsf{PI}\left(\right) \cdot \left(2 \cdot uy\right)\right), yi, \left(zi \cdot ux\right) \cdot maxCos\right)\right)\\
                            
                            
                            \end{array}
                            \end{array}
                            
                            Derivation
                            1. Split input into 2 regimes
                            2. if uy < 0.0022799999

                              1. Initial program 99.2%

                                \[\left(\left(\cos \left(\left(uy \cdot 2\right) \cdot \mathsf{PI}\left(\right)\right) \cdot \sqrt{1 - \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right)}\right) \cdot xi + \left(\sin \left(\left(uy \cdot 2\right) \cdot \mathsf{PI}\left(\right)\right) \cdot \sqrt{1 - \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right)}\right) \cdot yi\right) + \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot zi \]
                              2. Add Preprocessing
                              3. Taylor expanded in maxCos around 0

                                \[\leadsto \color{blue}{maxCos \cdot \left(ux \cdot \left(zi \cdot \left(1 - ux\right)\right)\right) + \left(xi \cdot \cos \left(2 \cdot \left(uy \cdot \mathsf{PI}\left(\right)\right)\right) + yi \cdot \sin \left(2 \cdot \left(uy \cdot \mathsf{PI}\left(\right)\right)\right)\right)} \]
                              4. Step-by-step derivation
                                1. Applied rewrites98.3%

                                  \[\leadsto \color{blue}{\mathsf{fma}\left(\cos \left(-2 \cdot \left(\mathsf{PI}\left(\right) \cdot uy\right)\right), xi, \mathsf{fma}\left(\sin \left(\mathsf{PI}\left(\right) \cdot \left(2 \cdot uy\right)\right), yi, \left(\left(\left(1 - ux\right) \cdot zi\right) \cdot ux\right) \cdot maxCos\right)\right)} \]
                                2. Taylor expanded in uy around 0

                                  \[\leadsto xi + \color{blue}{\left(maxCos \cdot \left(ux \cdot \left(zi \cdot \left(1 - ux\right)\right)\right) + uy \cdot \left(2 \cdot \left(yi \cdot \mathsf{PI}\left(\right)\right) + uy \cdot \left(-2 \cdot \left(xi \cdot {\mathsf{PI}\left(\right)}^{2}\right) + \frac{-4}{3} \cdot \left(uy \cdot \left(yi \cdot {\mathsf{PI}\left(\right)}^{3}\right)\right)\right)\right)\right)} \]
                                3. Step-by-step derivation
                                  1. Applied rewrites98.4%

                                    \[\leadsto \mathsf{fma}\left(maxCos \cdot ux, zi \cdot \left(1 - ux\right), xi\right) + \color{blue}{\mathsf{fma}\left(\mathsf{fma}\left(\left({\mathsf{PI}\left(\right)}^{3} \cdot yi\right) \cdot uy, -1.3333333333333333, \left(\left(\mathsf{PI}\left(\right) \cdot \mathsf{PI}\left(\right)\right) \cdot xi\right) \cdot -2\right), uy, \left(\mathsf{PI}\left(\right) \cdot yi\right) \cdot 2\right) \cdot uy} \]

                                  if 0.0022799999 < uy

                                  1. Initial program 98.1%

                                    \[\left(\left(\cos \left(\left(uy \cdot 2\right) \cdot \mathsf{PI}\left(\right)\right) \cdot \sqrt{1 - \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right)}\right) \cdot xi + \left(\sin \left(\left(uy \cdot 2\right) \cdot \mathsf{PI}\left(\right)\right) \cdot \sqrt{1 - \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right)}\right) \cdot yi\right) + \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot zi \]
                                  2. Add Preprocessing
                                  3. Taylor expanded in ux around 0

                                    \[\leadsto \color{blue}{maxCos \cdot \left(ux \cdot zi\right) + \left(xi \cdot \cos \left(2 \cdot \left(uy \cdot \mathsf{PI}\left(\right)\right)\right) + yi \cdot \sin \left(2 \cdot \left(uy \cdot \mathsf{PI}\left(\right)\right)\right)\right)} \]
                                  4. Step-by-step derivation
                                    1. Applied rewrites93.2%

                                      \[\leadsto \color{blue}{\mathsf{fma}\left(\cos \left(-2 \cdot \left(\mathsf{PI}\left(\right) \cdot uy\right)\right), xi, \mathsf{fma}\left(\sin \left(\mathsf{PI}\left(\right) \cdot \left(2 \cdot uy\right)\right), yi, \left(zi \cdot ux\right) \cdot maxCos\right)\right)} \]
                                  5. Recombined 2 regimes into one program.
                                  6. Add Preprocessing

                                  Alternative 9: 97.2% accurate, 1.5× speedup?

                                  \[\begin{array}{l} \\ \begin{array}{l} \mathbf{if}\;uy \leq 0.010599999688565731:\\ \;\;\;\;\mathsf{fma}\left(maxCos \cdot ux, zi \cdot \left(1 - ux\right), xi\right) + \mathsf{fma}\left(\mathsf{fma}\left(\left({\mathsf{PI}\left(\right)}^{3} \cdot yi\right) \cdot uy, -1.3333333333333333, \left(\left(\mathsf{PI}\left(\right) \cdot \mathsf{PI}\left(\right)\right) \cdot xi\right) \cdot -2\right), uy, \left(\mathsf{PI}\left(\right) \cdot yi\right) \cdot 2\right) \cdot uy\\ \mathbf{else}:\\ \;\;\;\;\mathsf{fma}\left(\cos \left(-2 \cdot \left(\mathsf{PI}\left(\right) \cdot uy\right)\right), xi, \sin \left(\mathsf{PI}\left(\right) \cdot \left(2 \cdot uy\right)\right) \cdot yi\right)\\ \end{array} \end{array} \]
                                  (FPCore (xi yi zi ux uy maxCos)
                                   :precision binary32
                                   (if (<= uy 0.010599999688565731)
                                     (+
                                      (fma (* maxCos ux) (* zi (- 1.0 ux)) xi)
                                      (*
                                       (fma
                                        (fma
                                         (* (* (pow (PI) 3.0) yi) uy)
                                         -1.3333333333333333
                                         (* (* (* (PI) (PI)) xi) -2.0))
                                        uy
                                        (* (* (PI) yi) 2.0))
                                       uy))
                                     (fma (cos (* -2.0 (* (PI) uy))) xi (* (sin (* (PI) (* 2.0 uy))) yi))))
                                  \begin{array}{l}
                                  
                                  \\
                                  \begin{array}{l}
                                  \mathbf{if}\;uy \leq 0.010599999688565731:\\
                                  \;\;\;\;\mathsf{fma}\left(maxCos \cdot ux, zi \cdot \left(1 - ux\right), xi\right) + \mathsf{fma}\left(\mathsf{fma}\left(\left({\mathsf{PI}\left(\right)}^{3} \cdot yi\right) \cdot uy, -1.3333333333333333, \left(\left(\mathsf{PI}\left(\right) \cdot \mathsf{PI}\left(\right)\right) \cdot xi\right) \cdot -2\right), uy, \left(\mathsf{PI}\left(\right) \cdot yi\right) \cdot 2\right) \cdot uy\\
                                  
                                  \mathbf{else}:\\
                                  \;\;\;\;\mathsf{fma}\left(\cos \left(-2 \cdot \left(\mathsf{PI}\left(\right) \cdot uy\right)\right), xi, \sin \left(\mathsf{PI}\left(\right) \cdot \left(2 \cdot uy\right)\right) \cdot yi\right)\\
                                  
                                  
                                  \end{array}
                                  \end{array}
                                  
                                  Derivation
                                  1. Split input into 2 regimes
                                  2. if uy < 0.0105999997

                                    1. Initial program 99.1%

                                      \[\left(\left(\cos \left(\left(uy \cdot 2\right) \cdot \mathsf{PI}\left(\right)\right) \cdot \sqrt{1 - \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right)}\right) \cdot xi + \left(\sin \left(\left(uy \cdot 2\right) \cdot \mathsf{PI}\left(\right)\right) \cdot \sqrt{1 - \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right)}\right) \cdot yi\right) + \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot zi \]
                                    2. Add Preprocessing
                                    3. Taylor expanded in maxCos around 0

                                      \[\leadsto \color{blue}{maxCos \cdot \left(ux \cdot \left(zi \cdot \left(1 - ux\right)\right)\right) + \left(xi \cdot \cos \left(2 \cdot \left(uy \cdot \mathsf{PI}\left(\right)\right)\right) + yi \cdot \sin \left(2 \cdot \left(uy \cdot \mathsf{PI}\left(\right)\right)\right)\right)} \]
                                    4. Step-by-step derivation
                                      1. Applied rewrites98.3%

                                        \[\leadsto \color{blue}{\mathsf{fma}\left(\cos \left(-2 \cdot \left(\mathsf{PI}\left(\right) \cdot uy\right)\right), xi, \mathsf{fma}\left(\sin \left(\mathsf{PI}\left(\right) \cdot \left(2 \cdot uy\right)\right), yi, \left(\left(\left(1 - ux\right) \cdot zi\right) \cdot ux\right) \cdot maxCos\right)\right)} \]
                                      2. Taylor expanded in uy around 0

                                        \[\leadsto xi + \color{blue}{\left(maxCos \cdot \left(ux \cdot \left(zi \cdot \left(1 - ux\right)\right)\right) + uy \cdot \left(2 \cdot \left(yi \cdot \mathsf{PI}\left(\right)\right) + uy \cdot \left(-2 \cdot \left(xi \cdot {\mathsf{PI}\left(\right)}^{2}\right) + \frac{-4}{3} \cdot \left(uy \cdot \left(yi \cdot {\mathsf{PI}\left(\right)}^{3}\right)\right)\right)\right)\right)} \]
                                      3. Step-by-step derivation
                                        1. Applied rewrites98.3%

                                          \[\leadsto \mathsf{fma}\left(maxCos \cdot ux, zi \cdot \left(1 - ux\right), xi\right) + \color{blue}{\mathsf{fma}\left(\mathsf{fma}\left(\left({\mathsf{PI}\left(\right)}^{3} \cdot yi\right) \cdot uy, -1.3333333333333333, \left(\left(\mathsf{PI}\left(\right) \cdot \mathsf{PI}\left(\right)\right) \cdot xi\right) \cdot -2\right), uy, \left(\mathsf{PI}\left(\right) \cdot yi\right) \cdot 2\right) \cdot uy} \]

                                        if 0.0105999997 < uy

                                        1. Initial program 98.0%

                                          \[\left(\left(\cos \left(\left(uy \cdot 2\right) \cdot \mathsf{PI}\left(\right)\right) \cdot \sqrt{1 - \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right)}\right) \cdot xi + \left(\sin \left(\left(uy \cdot 2\right) \cdot \mathsf{PI}\left(\right)\right) \cdot \sqrt{1 - \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right)}\right) \cdot yi\right) + \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot zi \]
                                        2. Add Preprocessing
                                        3. Taylor expanded in ux around 0

                                          \[\leadsto \color{blue}{xi \cdot \cos \left(2 \cdot \left(uy \cdot \mathsf{PI}\left(\right)\right)\right) + yi \cdot \sin \left(2 \cdot \left(uy \cdot \mathsf{PI}\left(\right)\right)\right)} \]
                                        4. Step-by-step derivation
                                          1. Applied rewrites88.1%

                                            \[\leadsto \color{blue}{\mathsf{fma}\left(\cos \left(-2 \cdot \left(\mathsf{PI}\left(\right) \cdot uy\right)\right), xi, \sin \left(\mathsf{PI}\left(\right) \cdot \left(2 \cdot uy\right)\right) \cdot yi\right)} \]
                                        5. Recombined 2 regimes into one program.
                                        6. Add Preprocessing

                                        Alternative 10: 92.8% accurate, 2.2× speedup?

                                        \[\begin{array}{l} \\ \mathsf{fma}\left(\mathsf{fma}\left(-2 \cdot \left(uy \cdot uy\right), \mathsf{PI}\left(\right) \cdot \mathsf{PI}\left(\right), 1\right), xi, \mathsf{fma}\left(\sin \left(\mathsf{PI}\left(\right) \cdot \left(2 \cdot uy\right)\right), yi, \left(\left(\left(1 - ux\right) \cdot zi\right) \cdot ux\right) \cdot maxCos\right)\right) \end{array} \]
                                        (FPCore (xi yi zi ux uy maxCos)
                                         :precision binary32
                                         (fma
                                          (fma (* -2.0 (* uy uy)) (* (PI) (PI)) 1.0)
                                          xi
                                          (fma (sin (* (PI) (* 2.0 uy))) yi (* (* (* (- 1.0 ux) zi) ux) maxCos))))
                                        \begin{array}{l}
                                        
                                        \\
                                        \mathsf{fma}\left(\mathsf{fma}\left(-2 \cdot \left(uy \cdot uy\right), \mathsf{PI}\left(\right) \cdot \mathsf{PI}\left(\right), 1\right), xi, \mathsf{fma}\left(\sin \left(\mathsf{PI}\left(\right) \cdot \left(2 \cdot uy\right)\right), yi, \left(\left(\left(1 - ux\right) \cdot zi\right) \cdot ux\right) \cdot maxCos\right)\right)
                                        \end{array}
                                        
                                        Derivation
                                        1. Initial program 98.9%

                                          \[\left(\left(\cos \left(\left(uy \cdot 2\right) \cdot \mathsf{PI}\left(\right)\right) \cdot \sqrt{1 - \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right)}\right) \cdot xi + \left(\sin \left(\left(uy \cdot 2\right) \cdot \mathsf{PI}\left(\right)\right) \cdot \sqrt{1 - \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right)}\right) \cdot yi\right) + \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot zi \]
                                        2. Add Preprocessing
                                        3. Taylor expanded in maxCos around 0

                                          \[\leadsto \color{blue}{maxCos \cdot \left(ux \cdot \left(zi \cdot \left(1 - ux\right)\right)\right) + \left(xi \cdot \cos \left(2 \cdot \left(uy \cdot \mathsf{PI}\left(\right)\right)\right) + yi \cdot \sin \left(2 \cdot \left(uy \cdot \mathsf{PI}\left(\right)\right)\right)\right)} \]
                                        4. Step-by-step derivation
                                          1. Applied rewrites98.2%

                                            \[\leadsto \color{blue}{\mathsf{fma}\left(\cos \left(-2 \cdot \left(\mathsf{PI}\left(\right) \cdot uy\right)\right), xi, \mathsf{fma}\left(\sin \left(\mathsf{PI}\left(\right) \cdot \left(2 \cdot uy\right)\right), yi, \left(\left(\left(1 - ux\right) \cdot zi\right) \cdot ux\right) \cdot maxCos\right)\right)} \]
                                          2. Taylor expanded in uy around 0

                                            \[\leadsto \mathsf{fma}\left(1 + -2 \cdot \left({uy}^{2} \cdot {\mathsf{PI}\left(\right)}^{2}\right), xi, \mathsf{fma}\left(\sin \left(\mathsf{PI}\left(\right) \cdot \left(2 \cdot uy\right)\right), yi, \left(\left(\left(1 - ux\right) \cdot zi\right) \cdot ux\right) \cdot maxCos\right)\right) \]
                                          3. Step-by-step derivation
                                            1. Applied rewrites92.2%

                                              \[\leadsto \mathsf{fma}\left(\mathsf{fma}\left(-2 \cdot \left(uy \cdot uy\right), \mathsf{PI}\left(\right) \cdot \mathsf{PI}\left(\right), 1\right), xi, \mathsf{fma}\left(\sin \left(\mathsf{PI}\left(\right) \cdot \left(2 \cdot uy\right)\right), yi, \left(\left(\left(1 - ux\right) \cdot zi\right) \cdot ux\right) \cdot maxCos\right)\right) \]
                                            2. Add Preprocessing

                                            Alternative 11: 91.3% accurate, 2.2× speedup?

                                            \[\begin{array}{l} \\ \begin{array}{l} \mathbf{if}\;yi \leq -8.00000002901995 \cdot 10^{-15}:\\ \;\;\;\;\mathsf{fma}\left(1, xi, \mathsf{fma}\left(\sin \left(\mathsf{PI}\left(\right) \cdot \left(2 \cdot uy\right)\right), yi, \left(\left(\left(1 - ux\right) \cdot zi\right) \cdot ux\right) \cdot maxCos\right)\right)\\ \mathbf{else}:\\ \;\;\;\;\mathsf{fma}\left(\cos \left(-2 \cdot \left(\mathsf{PI}\left(\right) \cdot uy\right)\right), xi, \mathsf{fma}\left(maxCos \cdot ux, zi \cdot \left(1 - ux\right), \left(\left(\mathsf{PI}\left(\right) \cdot yi\right) \cdot uy\right) \cdot 2\right)\right)\\ \end{array} \end{array} \]
                                            (FPCore (xi yi zi ux uy maxCos)
                                             :precision binary32
                                             (if (<= yi -8.00000002901995e-15)
                                               (fma
                                                1.0
                                                xi
                                                (fma (sin (* (PI) (* 2.0 uy))) yi (* (* (* (- 1.0 ux) zi) ux) maxCos)))
                                               (fma
                                                (cos (* -2.0 (* (PI) uy)))
                                                xi
                                                (fma (* maxCos ux) (* zi (- 1.0 ux)) (* (* (* (PI) yi) uy) 2.0)))))
                                            \begin{array}{l}
                                            
                                            \\
                                            \begin{array}{l}
                                            \mathbf{if}\;yi \leq -8.00000002901995 \cdot 10^{-15}:\\
                                            \;\;\;\;\mathsf{fma}\left(1, xi, \mathsf{fma}\left(\sin \left(\mathsf{PI}\left(\right) \cdot \left(2 \cdot uy\right)\right), yi, \left(\left(\left(1 - ux\right) \cdot zi\right) \cdot ux\right) \cdot maxCos\right)\right)\\
                                            
                                            \mathbf{else}:\\
                                            \;\;\;\;\mathsf{fma}\left(\cos \left(-2 \cdot \left(\mathsf{PI}\left(\right) \cdot uy\right)\right), xi, \mathsf{fma}\left(maxCos \cdot ux, zi \cdot \left(1 - ux\right), \left(\left(\mathsf{PI}\left(\right) \cdot yi\right) \cdot uy\right) \cdot 2\right)\right)\\
                                            
                                            
                                            \end{array}
                                            \end{array}
                                            
                                            Derivation
                                            1. Split input into 2 regimes
                                            2. if yi < -8.00000003e-15

                                              1. Initial program 98.6%

                                                \[\left(\left(\cos \left(\left(uy \cdot 2\right) \cdot \mathsf{PI}\left(\right)\right) \cdot \sqrt{1 - \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right)}\right) \cdot xi + \left(\sin \left(\left(uy \cdot 2\right) \cdot \mathsf{PI}\left(\right)\right) \cdot \sqrt{1 - \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right)}\right) \cdot yi\right) + \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot zi \]
                                              2. Add Preprocessing
                                              3. Taylor expanded in maxCos around 0

                                                \[\leadsto \color{blue}{maxCos \cdot \left(ux \cdot \left(zi \cdot \left(1 - ux\right)\right)\right) + \left(xi \cdot \cos \left(2 \cdot \left(uy \cdot \mathsf{PI}\left(\right)\right)\right) + yi \cdot \sin \left(2 \cdot \left(uy \cdot \mathsf{PI}\left(\right)\right)\right)\right)} \]
                                              4. Step-by-step derivation
                                                1. Applied rewrites98.5%

                                                  \[\leadsto \color{blue}{\mathsf{fma}\left(\cos \left(-2 \cdot \left(\mathsf{PI}\left(\right) \cdot uy\right)\right), xi, \mathsf{fma}\left(\sin \left(\mathsf{PI}\left(\right) \cdot \left(2 \cdot uy\right)\right), yi, \left(\left(\left(1 - ux\right) \cdot zi\right) \cdot ux\right) \cdot maxCos\right)\right)} \]
                                                2. Taylor expanded in uy around 0

                                                  \[\leadsto \mathsf{fma}\left(1, xi, \mathsf{fma}\left(\sin \left(\mathsf{PI}\left(\right) \cdot \left(2 \cdot uy\right)\right), yi, \left(\left(\left(1 - ux\right) \cdot zi\right) \cdot ux\right) \cdot maxCos\right)\right) \]
                                                3. Step-by-step derivation
                                                  1. Applied rewrites93.9%

                                                    \[\leadsto \mathsf{fma}\left(1, xi, \mathsf{fma}\left(\sin \left(\mathsf{PI}\left(\right) \cdot \left(2 \cdot uy\right)\right), yi, \left(\left(\left(1 - ux\right) \cdot zi\right) \cdot ux\right) \cdot maxCos\right)\right) \]

                                                  if -8.00000003e-15 < yi

                                                  1. Initial program 99.0%

                                                    \[\left(\left(\cos \left(\left(uy \cdot 2\right) \cdot \mathsf{PI}\left(\right)\right) \cdot \sqrt{1 - \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right)}\right) \cdot xi + \left(\sin \left(\left(uy \cdot 2\right) \cdot \mathsf{PI}\left(\right)\right) \cdot \sqrt{1 - \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right)}\right) \cdot yi\right) + \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot zi \]
                                                  2. Add Preprocessing
                                                  3. Taylor expanded in maxCos around 0

                                                    \[\leadsto \color{blue}{maxCos \cdot \left(ux \cdot \left(zi \cdot \left(1 - ux\right)\right)\right) + \left(xi \cdot \cos \left(2 \cdot \left(uy \cdot \mathsf{PI}\left(\right)\right)\right) + yi \cdot \sin \left(2 \cdot \left(uy \cdot \mathsf{PI}\left(\right)\right)\right)\right)} \]
                                                  4. Step-by-step derivation
                                                    1. Applied rewrites98.1%

                                                      \[\leadsto \color{blue}{\mathsf{fma}\left(\cos \left(-2 \cdot \left(\mathsf{PI}\left(\right) \cdot uy\right)\right), xi, \mathsf{fma}\left(\sin \left(\mathsf{PI}\left(\right) \cdot \left(2 \cdot uy\right)\right), yi, \left(\left(\left(1 - ux\right) \cdot zi\right) \cdot ux\right) \cdot maxCos\right)\right)} \]
                                                    2. Taylor expanded in uy around 0

                                                      \[\leadsto \mathsf{fma}\left(\cos \left(-2 \cdot \left(\mathsf{PI}\left(\right) \cdot uy\right)\right), xi, 2 \cdot \left(uy \cdot \left(yi \cdot \mathsf{PI}\left(\right)\right)\right) + maxCos \cdot \left(ux \cdot \left(zi \cdot \left(1 - ux\right)\right)\right)\right) \]
                                                    3. Step-by-step derivation
                                                      1. Applied rewrites93.5%

                                                        \[\leadsto \mathsf{fma}\left(\cos \left(-2 \cdot \left(\mathsf{PI}\left(\right) \cdot uy\right)\right), xi, \mathsf{fma}\left(maxCos \cdot ux, zi \cdot \left(1 - ux\right), \left(\left(\mathsf{PI}\left(\right) \cdot yi\right) \cdot uy\right) \cdot 2\right)\right) \]
                                                    4. Recombined 2 regimes into one program.
                                                    5. Add Preprocessing

                                                    Alternative 12: 87.8% accurate, 2.5× speedup?

                                                    \[\begin{array}{l} \\ \begin{array}{l} t_0 := zi \cdot \left(1 - ux\right)\\ \mathbf{if}\;uy \leq 0.05000000074505806:\\ \;\;\;\;\mathsf{fma}\left(maxCos \cdot ux, t\_0, xi\right) + \mathsf{fma}\left(\mathsf{PI}\left(\right), \left(xi \cdot \mathsf{PI}\left(\right)\right) \cdot \left(uy \cdot -2\right), \left(yi \cdot \mathsf{PI}\left(\right)\right) \cdot 2\right) \cdot uy\\ \mathbf{else}:\\ \;\;\;\;\mathsf{fma}\left(\cos \left(-2 \cdot \left(\mathsf{PI}\left(\right) \cdot uy\right)\right), xi, \left(maxCos \cdot ux\right) \cdot t\_0\right)\\ \end{array} \end{array} \]
                                                    (FPCore (xi yi zi ux uy maxCos)
                                                     :precision binary32
                                                     (let* ((t_0 (* zi (- 1.0 ux))))
                                                       (if (<= uy 0.05000000074505806)
                                                         (+
                                                          (fma (* maxCos ux) t_0 xi)
                                                          (* (fma (PI) (* (* xi (PI)) (* uy -2.0)) (* (* yi (PI)) 2.0)) uy))
                                                         (fma (cos (* -2.0 (* (PI) uy))) xi (* (* maxCos ux) t_0)))))
                                                    \begin{array}{l}
                                                    
                                                    \\
                                                    \begin{array}{l}
                                                    t_0 := zi \cdot \left(1 - ux\right)\\
                                                    \mathbf{if}\;uy \leq 0.05000000074505806:\\
                                                    \;\;\;\;\mathsf{fma}\left(maxCos \cdot ux, t\_0, xi\right) + \mathsf{fma}\left(\mathsf{PI}\left(\right), \left(xi \cdot \mathsf{PI}\left(\right)\right) \cdot \left(uy \cdot -2\right), \left(yi \cdot \mathsf{PI}\left(\right)\right) \cdot 2\right) \cdot uy\\
                                                    
                                                    \mathbf{else}:\\
                                                    \;\;\;\;\mathsf{fma}\left(\cos \left(-2 \cdot \left(\mathsf{PI}\left(\right) \cdot uy\right)\right), xi, \left(maxCos \cdot ux\right) \cdot t\_0\right)\\
                                                    
                                                    
                                                    \end{array}
                                                    \end{array}
                                                    
                                                    Derivation
                                                    1. Split input into 2 regimes
                                                    2. if uy < 0.0500000007

                                                      1. Initial program 99.1%

                                                        \[\left(\left(\cos \left(\left(uy \cdot 2\right) \cdot \mathsf{PI}\left(\right)\right) \cdot \sqrt{1 - \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right)}\right) \cdot xi + \left(\sin \left(\left(uy \cdot 2\right) \cdot \mathsf{PI}\left(\right)\right) \cdot \sqrt{1 - \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right)}\right) \cdot yi\right) + \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot zi \]
                                                      2. Add Preprocessing
                                                      3. Taylor expanded in maxCos around 0

                                                        \[\leadsto \color{blue}{maxCos \cdot \left(ux \cdot \left(zi \cdot \left(1 - ux\right)\right)\right) + \left(xi \cdot \cos \left(2 \cdot \left(uy \cdot \mathsf{PI}\left(\right)\right)\right) + yi \cdot \sin \left(2 \cdot \left(uy \cdot \mathsf{PI}\left(\right)\right)\right)\right)} \]
                                                      4. Step-by-step derivation
                                                        1. Applied rewrites98.3%

                                                          \[\leadsto \color{blue}{\mathsf{fma}\left(\cos \left(-2 \cdot \left(\mathsf{PI}\left(\right) \cdot uy\right)\right), xi, \mathsf{fma}\left(\sin \left(\mathsf{PI}\left(\right) \cdot \left(2 \cdot uy\right)\right), yi, \left(\left(\left(1 - ux\right) \cdot zi\right) \cdot ux\right) \cdot maxCos\right)\right)} \]
                                                        2. Taylor expanded in uy around 0

                                                          \[\leadsto xi + \color{blue}{\left(maxCos \cdot \left(ux \cdot \left(zi \cdot \left(1 - ux\right)\right)\right) + uy \cdot \left(-2 \cdot \left(uy \cdot \left(xi \cdot {\mathsf{PI}\left(\right)}^{2}\right)\right) + 2 \cdot \left(yi \cdot \mathsf{PI}\left(\right)\right)\right)\right)} \]
                                                        3. Step-by-step derivation
                                                          1. Applied rewrites93.4%

                                                            \[\leadsto \mathsf{fma}\left(maxCos \cdot ux, zi \cdot \left(1 - ux\right), xi\right) + \color{blue}{\mathsf{fma}\left(\left(\left(\mathsf{PI}\left(\right) \cdot \mathsf{PI}\left(\right)\right) \cdot xi\right) \cdot uy, -2, \left(\mathsf{PI}\left(\right) \cdot yi\right) \cdot 2\right) \cdot uy} \]
                                                          2. Step-by-step derivation
                                                            1. Applied rewrites93.4%

                                                              \[\leadsto \mathsf{fma}\left(maxCos \cdot ux, zi \cdot \left(1 - ux\right), xi\right) + \mathsf{fma}\left(\mathsf{PI}\left(\right), \left(xi \cdot \mathsf{PI}\left(\right)\right) \cdot \left(uy \cdot -2\right), \left(yi \cdot \mathsf{PI}\left(\right)\right) \cdot 2\right) \cdot uy \]

                                                            if 0.0500000007 < uy

                                                            1. Initial program 97.9%

                                                              \[\left(\left(\cos \left(\left(uy \cdot 2\right) \cdot \mathsf{PI}\left(\right)\right) \cdot \sqrt{1 - \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right)}\right) \cdot xi + \left(\sin \left(\left(uy \cdot 2\right) \cdot \mathsf{PI}\left(\right)\right) \cdot \sqrt{1 - \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right)}\right) \cdot yi\right) + \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot zi \]
                                                            2. Add Preprocessing
                                                            3. Taylor expanded in maxCos around 0

                                                              \[\leadsto \color{blue}{maxCos \cdot \left(ux \cdot \left(zi \cdot \left(1 - ux\right)\right)\right) + \left(xi \cdot \cos \left(2 \cdot \left(uy \cdot \mathsf{PI}\left(\right)\right)\right) + yi \cdot \sin \left(2 \cdot \left(uy \cdot \mathsf{PI}\left(\right)\right)\right)\right)} \]
                                                            4. Step-by-step derivation
                                                              1. Applied rewrites97.7%

                                                                \[\leadsto \color{blue}{\mathsf{fma}\left(\cos \left(-2 \cdot \left(\mathsf{PI}\left(\right) \cdot uy\right)\right), xi, \mathsf{fma}\left(\sin \left(\mathsf{PI}\left(\right) \cdot \left(2 \cdot uy\right)\right), yi, \left(\left(\left(1 - ux\right) \cdot zi\right) \cdot ux\right) \cdot maxCos\right)\right)} \]
                                                              2. Taylor expanded in yi around 0

                                                                \[\leadsto \mathsf{fma}\left(\cos \left(-2 \cdot \left(\mathsf{PI}\left(\right) \cdot uy\right)\right), xi, maxCos \cdot \left(ux \cdot \left(zi \cdot \left(1 - ux\right)\right)\right)\right) \]
                                                              3. Step-by-step derivation
                                                                1. Applied rewrites63.4%

                                                                  \[\leadsto \mathsf{fma}\left(\cos \left(-2 \cdot \left(\mathsf{PI}\left(\right) \cdot uy\right)\right), xi, \left(maxCos \cdot ux\right) \cdot \left(zi \cdot \left(1 - ux\right)\right)\right) \]
                                                              4. Recombined 2 regimes into one program.
                                                              5. Add Preprocessing

                                                              Alternative 13: 87.9% accurate, 2.5× speedup?

                                                              \[\begin{array}{l} \\ \mathsf{fma}\left(1, xi, \mathsf{fma}\left(\sin \left(\mathsf{PI}\left(\right) \cdot \left(2 \cdot uy\right)\right), yi, \left(\left(\left(1 - ux\right) \cdot zi\right) \cdot ux\right) \cdot maxCos\right)\right) \end{array} \]
                                                              (FPCore (xi yi zi ux uy maxCos)
                                                               :precision binary32
                                                               (fma
                                                                1.0
                                                                xi
                                                                (fma (sin (* (PI) (* 2.0 uy))) yi (* (* (* (- 1.0 ux) zi) ux) maxCos))))
                                                              \begin{array}{l}
                                                              
                                                              \\
                                                              \mathsf{fma}\left(1, xi, \mathsf{fma}\left(\sin \left(\mathsf{PI}\left(\right) \cdot \left(2 \cdot uy\right)\right), yi, \left(\left(\left(1 - ux\right) \cdot zi\right) \cdot ux\right) \cdot maxCos\right)\right)
                                                              \end{array}
                                                              
                                                              Derivation
                                                              1. Initial program 98.9%

                                                                \[\left(\left(\cos \left(\left(uy \cdot 2\right) \cdot \mathsf{PI}\left(\right)\right) \cdot \sqrt{1 - \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right)}\right) \cdot xi + \left(\sin \left(\left(uy \cdot 2\right) \cdot \mathsf{PI}\left(\right)\right) \cdot \sqrt{1 - \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right)}\right) \cdot yi\right) + \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot zi \]
                                                              2. Add Preprocessing
                                                              3. Taylor expanded in maxCos around 0

                                                                \[\leadsto \color{blue}{maxCos \cdot \left(ux \cdot \left(zi \cdot \left(1 - ux\right)\right)\right) + \left(xi \cdot \cos \left(2 \cdot \left(uy \cdot \mathsf{PI}\left(\right)\right)\right) + yi \cdot \sin \left(2 \cdot \left(uy \cdot \mathsf{PI}\left(\right)\right)\right)\right)} \]
                                                              4. Step-by-step derivation
                                                                1. Applied rewrites98.2%

                                                                  \[\leadsto \color{blue}{\mathsf{fma}\left(\cos \left(-2 \cdot \left(\mathsf{PI}\left(\right) \cdot uy\right)\right), xi, \mathsf{fma}\left(\sin \left(\mathsf{PI}\left(\right) \cdot \left(2 \cdot uy\right)\right), yi, \left(\left(\left(1 - ux\right) \cdot zi\right) \cdot ux\right) \cdot maxCos\right)\right)} \]
                                                                2. Taylor expanded in uy around 0

                                                                  \[\leadsto \mathsf{fma}\left(1, xi, \mathsf{fma}\left(\sin \left(\mathsf{PI}\left(\right) \cdot \left(2 \cdot uy\right)\right), yi, \left(\left(\left(1 - ux\right) \cdot zi\right) \cdot ux\right) \cdot maxCos\right)\right) \]
                                                                3. Step-by-step derivation
                                                                  1. Applied rewrites88.0%

                                                                    \[\leadsto \mathsf{fma}\left(1, xi, \mathsf{fma}\left(\sin \left(\mathsf{PI}\left(\right) \cdot \left(2 \cdot uy\right)\right), yi, \left(\left(\left(1 - ux\right) \cdot zi\right) \cdot ux\right) \cdot maxCos\right)\right) \]
                                                                  2. Add Preprocessing

                                                                  Alternative 14: 83.6% accurate, 5.3× speedup?

                                                                  \[\begin{array}{l} \\ \begin{array}{l} \mathbf{if}\;\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux \leq 7.000000051862236 \cdot 10^{-17}:\\ \;\;\;\;\mathsf{fma}\left(-2 \cdot \left(\left(\left(\mathsf{PI}\left(\right) \cdot \mathsf{PI}\left(\right)\right) \cdot xi\right) \cdot uy - \mathsf{PI}\left(\right) \cdot yi\right), uy, \left(zi \cdot ux\right) \cdot maxCos\right) + xi\\ \mathbf{else}:\\ \;\;\;\;\mathsf{fma}\left(\left(1 - ux\right) \cdot ux, maxCos, \frac{\mathsf{fma}\left(uy \cdot yi, \mathsf{PI}\left(\right) \cdot 2, xi\right)}{zi}\right) \cdot zi\\ \end{array} \end{array} \]
                                                                  (FPCore (xi yi zi ux uy maxCos)
                                                                   :precision binary32
                                                                   (if (<= (* (* (- 1.0 ux) maxCos) ux) 7.000000051862236e-17)
                                                                     (+
                                                                      (fma
                                                                       (* -2.0 (- (* (* (* (PI) (PI)) xi) uy) (* (PI) yi)))
                                                                       uy
                                                                       (* (* zi ux) maxCos))
                                                                      xi)
                                                                     (*
                                                                      (fma (* (- 1.0 ux) ux) maxCos (/ (fma (* uy yi) (* (PI) 2.0) xi) zi))
                                                                      zi)))
                                                                  \begin{array}{l}
                                                                  
                                                                  \\
                                                                  \begin{array}{l}
                                                                  \mathbf{if}\;\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux \leq 7.000000051862236 \cdot 10^{-17}:\\
                                                                  \;\;\;\;\mathsf{fma}\left(-2 \cdot \left(\left(\left(\mathsf{PI}\left(\right) \cdot \mathsf{PI}\left(\right)\right) \cdot xi\right) \cdot uy - \mathsf{PI}\left(\right) \cdot yi\right), uy, \left(zi \cdot ux\right) \cdot maxCos\right) + xi\\
                                                                  
                                                                  \mathbf{else}:\\
                                                                  \;\;\;\;\mathsf{fma}\left(\left(1 - ux\right) \cdot ux, maxCos, \frac{\mathsf{fma}\left(uy \cdot yi, \mathsf{PI}\left(\right) \cdot 2, xi\right)}{zi}\right) \cdot zi\\
                                                                  
                                                                  
                                                                  \end{array}
                                                                  \end{array}
                                                                  
                                                                  Derivation
                                                                  1. Split input into 2 regimes
                                                                  2. if (*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux) < 7.00000005e-17

                                                                    1. Initial program 98.8%

                                                                      \[\left(\left(\cos \left(\left(uy \cdot 2\right) \cdot \mathsf{PI}\left(\right)\right) \cdot \sqrt{1 - \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right)}\right) \cdot xi + \left(\sin \left(\left(uy \cdot 2\right) \cdot \mathsf{PI}\left(\right)\right) \cdot \sqrt{1 - \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right)}\right) \cdot yi\right) + \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot zi \]
                                                                    2. Add Preprocessing
                                                                    3. Taylor expanded in maxCos around 0

                                                                      \[\leadsto \color{blue}{maxCos \cdot \left(ux \cdot \left(zi \cdot \left(1 - ux\right)\right)\right) + \left(xi \cdot \cos \left(2 \cdot \left(uy \cdot \mathsf{PI}\left(\right)\right)\right) + yi \cdot \sin \left(2 \cdot \left(uy \cdot \mathsf{PI}\left(\right)\right)\right)\right)} \]
                                                                    4. Step-by-step derivation
                                                                      1. Applied rewrites98.8%

                                                                        \[\leadsto \color{blue}{\mathsf{fma}\left(\cos \left(-2 \cdot \left(\mathsf{PI}\left(\right) \cdot uy\right)\right), xi, \mathsf{fma}\left(\sin \left(\mathsf{PI}\left(\right) \cdot \left(2 \cdot uy\right)\right), yi, \left(\left(\left(1 - ux\right) \cdot zi\right) \cdot ux\right) \cdot maxCos\right)\right)} \]
                                                                      2. Taylor expanded in uy around 0

                                                                        \[\leadsto xi + \color{blue}{\left(maxCos \cdot \left(ux \cdot \left(zi \cdot \left(1 - ux\right)\right)\right) + uy \cdot \left(-2 \cdot \left(uy \cdot \left(xi \cdot {\mathsf{PI}\left(\right)}^{2}\right)\right) + 2 \cdot \left(yi \cdot \mathsf{PI}\left(\right)\right)\right)\right)} \]
                                                                      3. Step-by-step derivation
                                                                        1. Applied rewrites85.3%

                                                                          \[\leadsto \mathsf{fma}\left(maxCos \cdot ux, zi \cdot \left(1 - ux\right), xi\right) + \color{blue}{\mathsf{fma}\left(\left(\left(\mathsf{PI}\left(\right) \cdot \mathsf{PI}\left(\right)\right) \cdot xi\right) \cdot uy, -2, \left(\mathsf{PI}\left(\right) \cdot yi\right) \cdot 2\right) \cdot uy} \]
                                                                        2. Taylor expanded in ux around 0

                                                                          \[\leadsto xi + \left(maxCos \cdot \left(ux \cdot zi\right) + \color{blue}{uy \cdot \left(-2 \cdot \left(uy \cdot \left(xi \cdot {\mathsf{PI}\left(\right)}^{2}\right)\right) + 2 \cdot \left(yi \cdot \mathsf{PI}\left(\right)\right)\right)}\right) \]
                                                                        3. Applied rewrites85.0%

                                                                          \[\leadsto \mathsf{fma}\left(-2 \cdot \left(\left(\left(\mathsf{PI}\left(\right) \cdot \mathsf{PI}\left(\right)\right) \cdot xi\right) \cdot uy - \mathsf{PI}\left(\right) \cdot yi\right), uy, \left(zi \cdot ux\right) \cdot maxCos\right) + xi \]

                                                                        if 7.00000005e-17 < (*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux)

                                                                        1. Initial program 99.0%

                                                                          \[\left(\left(\cos \left(\left(uy \cdot 2\right) \cdot \mathsf{PI}\left(\right)\right) \cdot \sqrt{1 - \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right)}\right) \cdot xi + \left(\sin \left(\left(uy \cdot 2\right) \cdot \mathsf{PI}\left(\right)\right) \cdot \sqrt{1 - \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right)}\right) \cdot yi\right) + \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot zi \]
                                                                        2. Add Preprocessing
                                                                        3. Taylor expanded in maxCos around 0

                                                                          \[\leadsto \color{blue}{maxCos \cdot \left(ux \cdot \left(zi \cdot \left(1 - ux\right)\right)\right) + \left(xi \cdot \cos \left(2 \cdot \left(uy \cdot \mathsf{PI}\left(\right)\right)\right) + yi \cdot \sin \left(2 \cdot \left(uy \cdot \mathsf{PI}\left(\right)\right)\right)\right)} \]
                                                                        4. Step-by-step derivation
                                                                          1. Applied rewrites97.2%

                                                                            \[\leadsto \color{blue}{\mathsf{fma}\left(\cos \left(-2 \cdot \left(\mathsf{PI}\left(\right) \cdot uy\right)\right), xi, \mathsf{fma}\left(\sin \left(\mathsf{PI}\left(\right) \cdot \left(2 \cdot uy\right)\right), yi, \left(\left(\left(1 - ux\right) \cdot zi\right) \cdot ux\right) \cdot maxCos\right)\right)} \]
                                                                          2. Taylor expanded in xi around inf

                                                                            \[\leadsto xi \cdot \color{blue}{\cos \left(-2 \cdot \left(uy \cdot \mathsf{PI}\left(\right)\right)\right)} \]
                                                                          3. Step-by-step derivation
                                                                            1. Applied rewrites40.2%

                                                                              \[\leadsto \cos \left(-2 \cdot \left(\mathsf{PI}\left(\right) \cdot uy\right)\right) \cdot \color{blue}{xi} \]
                                                                            2. Taylor expanded in zi around inf

                                                                              \[\leadsto zi \cdot \color{blue}{\left(maxCos \cdot \left(ux \cdot \left(1 - ux\right)\right) + \left(\frac{xi \cdot \cos \left(-2 \cdot \left(uy \cdot \mathsf{PI}\left(\right)\right)\right)}{zi} + \frac{yi \cdot \sin \left(2 \cdot \left(uy \cdot \mathsf{PI}\left(\right)\right)\right)}{zi}\right)\right)} \]
                                                                            3. Step-by-step derivation
                                                                              1. Applied rewrites97.2%

                                                                                \[\leadsto \mathsf{fma}\left(\left(1 - ux\right) \cdot ux, maxCos, \frac{\mathsf{fma}\left(\cos \left(\left(\mathsf{PI}\left(\right) \cdot uy\right) \cdot -2\right), xi, \sin \left(\left(\mathsf{PI}\left(\right) \cdot uy\right) \cdot 2\right) \cdot yi\right)}{zi}\right) \cdot \color{blue}{zi} \]
                                                                              2. Taylor expanded in uy around 0

                                                                                \[\leadsto \mathsf{fma}\left(\left(1 - ux\right) \cdot ux, maxCos, 2 \cdot \frac{uy \cdot \left(yi \cdot \mathsf{PI}\left(\right)\right)}{zi} + \frac{xi}{zi}\right) \cdot zi \]
                                                                              3. Step-by-step derivation
                                                                                1. Applied rewrites86.1%

                                                                                  \[\leadsto \mathsf{fma}\left(\left(1 - ux\right) \cdot ux, maxCos, \frac{\mathsf{fma}\left(uy \cdot yi, \mathsf{PI}\left(\right) \cdot 2, xi\right)}{zi}\right) \cdot zi \]
                                                                              4. Recombined 2 regimes into one program.
                                                                              5. Add Preprocessing

                                                                              Alternative 15: 85.5% accurate, 6.0× speedup?

                                                                              \[\begin{array}{l} \\ \mathsf{fma}\left(maxCos \cdot ux, zi \cdot \left(1 - ux\right), xi\right) + \mathsf{fma}\left(\mathsf{PI}\left(\right), \left(xi \cdot \mathsf{PI}\left(\right)\right) \cdot \left(uy \cdot -2\right), \left(yi \cdot \mathsf{PI}\left(\right)\right) \cdot 2\right) \cdot uy \end{array} \]
                                                                              (FPCore (xi yi zi ux uy maxCos)
                                                                               :precision binary32
                                                                               (+
                                                                                (fma (* maxCos ux) (* zi (- 1.0 ux)) xi)
                                                                                (* (fma (PI) (* (* xi (PI)) (* uy -2.0)) (* (* yi (PI)) 2.0)) uy)))
                                                                              \begin{array}{l}
                                                                              
                                                                              \\
                                                                              \mathsf{fma}\left(maxCos \cdot ux, zi \cdot \left(1 - ux\right), xi\right) + \mathsf{fma}\left(\mathsf{PI}\left(\right), \left(xi \cdot \mathsf{PI}\left(\right)\right) \cdot \left(uy \cdot -2\right), \left(yi \cdot \mathsf{PI}\left(\right)\right) \cdot 2\right) \cdot uy
                                                                              \end{array}
                                                                              
                                                                              Derivation
                                                                              1. Initial program 98.9%

                                                                                \[\left(\left(\cos \left(\left(uy \cdot 2\right) \cdot \mathsf{PI}\left(\right)\right) \cdot \sqrt{1 - \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right)}\right) \cdot xi + \left(\sin \left(\left(uy \cdot 2\right) \cdot \mathsf{PI}\left(\right)\right) \cdot \sqrt{1 - \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right)}\right) \cdot yi\right) + \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot zi \]
                                                                              2. Add Preprocessing
                                                                              3. Taylor expanded in maxCos around 0

                                                                                \[\leadsto \color{blue}{maxCos \cdot \left(ux \cdot \left(zi \cdot \left(1 - ux\right)\right)\right) + \left(xi \cdot \cos \left(2 \cdot \left(uy \cdot \mathsf{PI}\left(\right)\right)\right) + yi \cdot \sin \left(2 \cdot \left(uy \cdot \mathsf{PI}\left(\right)\right)\right)\right)} \]
                                                                              4. Step-by-step derivation
                                                                                1. Applied rewrites98.2%

                                                                                  \[\leadsto \color{blue}{\mathsf{fma}\left(\cos \left(-2 \cdot \left(\mathsf{PI}\left(\right) \cdot uy\right)\right), xi, \mathsf{fma}\left(\sin \left(\mathsf{PI}\left(\right) \cdot \left(2 \cdot uy\right)\right), yi, \left(\left(\left(1 - ux\right) \cdot zi\right) \cdot ux\right) \cdot maxCos\right)\right)} \]
                                                                                2. Taylor expanded in uy around 0

                                                                                  \[\leadsto xi + \color{blue}{\left(maxCos \cdot \left(ux \cdot \left(zi \cdot \left(1 - ux\right)\right)\right) + uy \cdot \left(-2 \cdot \left(uy \cdot \left(xi \cdot {\mathsf{PI}\left(\right)}^{2}\right)\right) + 2 \cdot \left(yi \cdot \mathsf{PI}\left(\right)\right)\right)\right)} \]
                                                                                3. Step-by-step derivation
                                                                                  1. Applied rewrites85.8%

                                                                                    \[\leadsto \mathsf{fma}\left(maxCos \cdot ux, zi \cdot \left(1 - ux\right), xi\right) + \color{blue}{\mathsf{fma}\left(\left(\left(\mathsf{PI}\left(\right) \cdot \mathsf{PI}\left(\right)\right) \cdot xi\right) \cdot uy, -2, \left(\mathsf{PI}\left(\right) \cdot yi\right) \cdot 2\right) \cdot uy} \]
                                                                                  2. Step-by-step derivation
                                                                                    1. Applied rewrites85.8%

                                                                                      \[\leadsto \mathsf{fma}\left(maxCos \cdot ux, zi \cdot \left(1 - ux\right), xi\right) + \mathsf{fma}\left(\mathsf{PI}\left(\right), \left(xi \cdot \mathsf{PI}\left(\right)\right) \cdot \left(uy \cdot -2\right), \left(yi \cdot \mathsf{PI}\left(\right)\right) \cdot 2\right) \cdot uy \]
                                                                                    2. Add Preprocessing

                                                                                    Alternative 16: 85.5% accurate, 6.1× speedup?

                                                                                    \[\begin{array}{l} \\ \mathsf{fma}\left(\left(-maxCos\right) \cdot \left(zi \cdot ux - zi\right), ux, \left(-2 \cdot \left(\left(\left(\mathsf{PI}\left(\right) \cdot \mathsf{PI}\left(\right)\right) \cdot xi\right) \cdot uy - \mathsf{PI}\left(\right) \cdot yi\right)\right) \cdot uy\right) + xi \end{array} \]
                                                                                    (FPCore (xi yi zi ux uy maxCos)
                                                                                     :precision binary32
                                                                                     (+
                                                                                      (fma
                                                                                       (* (- maxCos) (- (* zi ux) zi))
                                                                                       ux
                                                                                       (* (* -2.0 (- (* (* (* (PI) (PI)) xi) uy) (* (PI) yi))) uy))
                                                                                      xi))
                                                                                    \begin{array}{l}
                                                                                    
                                                                                    \\
                                                                                    \mathsf{fma}\left(\left(-maxCos\right) \cdot \left(zi \cdot ux - zi\right), ux, \left(-2 \cdot \left(\left(\left(\mathsf{PI}\left(\right) \cdot \mathsf{PI}\left(\right)\right) \cdot xi\right) \cdot uy - \mathsf{PI}\left(\right) \cdot yi\right)\right) \cdot uy\right) + xi
                                                                                    \end{array}
                                                                                    
                                                                                    Derivation
                                                                                    1. Initial program 98.9%

                                                                                      \[\left(\left(\cos \left(\left(uy \cdot 2\right) \cdot \mathsf{PI}\left(\right)\right) \cdot \sqrt{1 - \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right)}\right) \cdot xi + \left(\sin \left(\left(uy \cdot 2\right) \cdot \mathsf{PI}\left(\right)\right) \cdot \sqrt{1 - \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right)}\right) \cdot yi\right) + \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot zi \]
                                                                                    2. Add Preprocessing
                                                                                    3. Taylor expanded in maxCos around 0

                                                                                      \[\leadsto \color{blue}{maxCos \cdot \left(ux \cdot \left(zi \cdot \left(1 - ux\right)\right)\right) + \left(xi \cdot \cos \left(2 \cdot \left(uy \cdot \mathsf{PI}\left(\right)\right)\right) + yi \cdot \sin \left(2 \cdot \left(uy \cdot \mathsf{PI}\left(\right)\right)\right)\right)} \]
                                                                                    4. Step-by-step derivation
                                                                                      1. Applied rewrites98.2%

                                                                                        \[\leadsto \color{blue}{\mathsf{fma}\left(\cos \left(-2 \cdot \left(\mathsf{PI}\left(\right) \cdot uy\right)\right), xi, \mathsf{fma}\left(\sin \left(\mathsf{PI}\left(\right) \cdot \left(2 \cdot uy\right)\right), yi, \left(\left(\left(1 - ux\right) \cdot zi\right) \cdot ux\right) \cdot maxCos\right)\right)} \]
                                                                                      2. Taylor expanded in uy around 0

                                                                                        \[\leadsto xi + \color{blue}{\left(maxCos \cdot \left(ux \cdot \left(zi \cdot \left(1 - ux\right)\right)\right) + uy \cdot \left(-2 \cdot \left(uy \cdot \left(xi \cdot {\mathsf{PI}\left(\right)}^{2}\right)\right) + 2 \cdot \left(yi \cdot \mathsf{PI}\left(\right)\right)\right)\right)} \]
                                                                                      3. Step-by-step derivation
                                                                                        1. Applied rewrites85.8%

                                                                                          \[\leadsto \mathsf{fma}\left(maxCos \cdot ux, zi \cdot \left(1 - ux\right), xi\right) + \color{blue}{\mathsf{fma}\left(\left(\left(\mathsf{PI}\left(\right) \cdot \mathsf{PI}\left(\right)\right) \cdot xi\right) \cdot uy, -2, \left(\mathsf{PI}\left(\right) \cdot yi\right) \cdot 2\right) \cdot uy} \]
                                                                                        2. Taylor expanded in ux around 0

                                                                                          \[\leadsto xi + \left(ux \cdot \left(-1 \cdot \left(maxCos \cdot \left(ux \cdot zi\right)\right) + maxCos \cdot zi\right) + \color{blue}{uy \cdot \left(-2 \cdot \left(uy \cdot \left(xi \cdot {\mathsf{PI}\left(\right)}^{2}\right)\right) + 2 \cdot \left(yi \cdot \mathsf{PI}\left(\right)\right)\right)}\right) \]
                                                                                        3. Applied rewrites85.8%

                                                                                          \[\leadsto \mathsf{fma}\left(\left(-maxCos\right) \cdot \left(zi \cdot ux - zi\right), ux, \left(-2 \cdot \left(\left(\left(\mathsf{PI}\left(\right) \cdot \mathsf{PI}\left(\right)\right) \cdot xi\right) \cdot uy - \mathsf{PI}\left(\right) \cdot yi\right)\right) \cdot uy\right) + xi \]
                                                                                        4. Add Preprocessing

                                                                                        Alternative 17: 85.5% accurate, 6.5× speedup?

                                                                                        \[\begin{array}{l} \\ \mathsf{fma}\left(-2 \cdot \left(\left(\left(\mathsf{PI}\left(\right) \cdot \mathsf{PI}\left(\right)\right) \cdot xi\right) \cdot uy - \mathsf{PI}\left(\right) \cdot yi\right), uy, \mathsf{fma}\left(\left(zi \cdot ux\right) \cdot maxCos, 1 - ux, xi\right)\right) \end{array} \]
                                                                                        (FPCore (xi yi zi ux uy maxCos)
                                                                                         :precision binary32
                                                                                         (fma
                                                                                          (* -2.0 (- (* (* (* (PI) (PI)) xi) uy) (* (PI) yi)))
                                                                                          uy
                                                                                          (fma (* (* zi ux) maxCos) (- 1.0 ux) xi)))
                                                                                        \begin{array}{l}
                                                                                        
                                                                                        \\
                                                                                        \mathsf{fma}\left(-2 \cdot \left(\left(\left(\mathsf{PI}\left(\right) \cdot \mathsf{PI}\left(\right)\right) \cdot xi\right) \cdot uy - \mathsf{PI}\left(\right) \cdot yi\right), uy, \mathsf{fma}\left(\left(zi \cdot ux\right) \cdot maxCos, 1 - ux, xi\right)\right)
                                                                                        \end{array}
                                                                                        
                                                                                        Derivation
                                                                                        1. Initial program 98.9%

                                                                                          \[\left(\left(\cos \left(\left(uy \cdot 2\right) \cdot \mathsf{PI}\left(\right)\right) \cdot \sqrt{1 - \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right)}\right) \cdot xi + \left(\sin \left(\left(uy \cdot 2\right) \cdot \mathsf{PI}\left(\right)\right) \cdot \sqrt{1 - \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right)}\right) \cdot yi\right) + \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot zi \]
                                                                                        2. Add Preprocessing
                                                                                        3. Taylor expanded in maxCos around 0

                                                                                          \[\leadsto \color{blue}{maxCos \cdot \left(ux \cdot \left(zi \cdot \left(1 - ux\right)\right)\right) + \left(xi \cdot \cos \left(2 \cdot \left(uy \cdot \mathsf{PI}\left(\right)\right)\right) + yi \cdot \sin \left(2 \cdot \left(uy \cdot \mathsf{PI}\left(\right)\right)\right)\right)} \]
                                                                                        4. Step-by-step derivation
                                                                                          1. Applied rewrites98.2%

                                                                                            \[\leadsto \color{blue}{\mathsf{fma}\left(\cos \left(-2 \cdot \left(\mathsf{PI}\left(\right) \cdot uy\right)\right), xi, \mathsf{fma}\left(\sin \left(\mathsf{PI}\left(\right) \cdot \left(2 \cdot uy\right)\right), yi, \left(\left(\left(1 - ux\right) \cdot zi\right) \cdot ux\right) \cdot maxCos\right)\right)} \]
                                                                                          2. Taylor expanded in xi around inf

                                                                                            \[\leadsto xi \cdot \color{blue}{\cos \left(-2 \cdot \left(uy \cdot \mathsf{PI}\left(\right)\right)\right)} \]
                                                                                          3. Step-by-step derivation
                                                                                            1. Applied rewrites50.8%

                                                                                              \[\leadsto \cos \left(-2 \cdot \left(\mathsf{PI}\left(\right) \cdot uy\right)\right) \cdot \color{blue}{xi} \]
                                                                                            2. Taylor expanded in uy around 0

                                                                                              \[\leadsto xi \]
                                                                                            3. Step-by-step derivation
                                                                                              1. Applied rewrites43.6%

                                                                                                \[\leadsto xi \]
                                                                                              2. Taylor expanded in uy around 0

                                                                                                \[\leadsto xi + \color{blue}{\left(maxCos \cdot \left(ux \cdot \left(zi \cdot \left(1 - ux\right)\right)\right) + uy \cdot \left(-2 \cdot \left(uy \cdot \left(xi \cdot {\mathsf{PI}\left(\right)}^{2}\right)\right) + 2 \cdot \left(yi \cdot \mathsf{PI}\left(\right)\right)\right)\right)} \]
                                                                                              3. Applied rewrites85.8%

                                                                                                \[\leadsto \mathsf{fma}\left(-2 \cdot \left(\left(\left(\mathsf{PI}\left(\right) \cdot \mathsf{PI}\left(\right)\right) \cdot xi\right) \cdot uy - \mathsf{PI}\left(\right) \cdot yi\right), \color{blue}{uy}, \mathsf{fma}\left(\left(zi \cdot ux\right) \cdot maxCos, 1 - ux, xi\right)\right) \]
                                                                                              4. Add Preprocessing

                                                                                              Alternative 18: 81.0% accurate, 9.3× speedup?

                                                                                              \[\begin{array}{l} \\ \mathsf{fma}\left(maxCos \cdot ux, zi \cdot \left(1 - ux\right), xi\right) + \left(\left(\mathsf{PI}\left(\right) \cdot yi\right) \cdot 2\right) \cdot uy \end{array} \]
                                                                                              (FPCore (xi yi zi ux uy maxCos)
                                                                                               :precision binary32
                                                                                               (+ (fma (* maxCos ux) (* zi (- 1.0 ux)) xi) (* (* (* (PI) yi) 2.0) uy)))
                                                                                              \begin{array}{l}
                                                                                              
                                                                                              \\
                                                                                              \mathsf{fma}\left(maxCos \cdot ux, zi \cdot \left(1 - ux\right), xi\right) + \left(\left(\mathsf{PI}\left(\right) \cdot yi\right) \cdot 2\right) \cdot uy
                                                                                              \end{array}
                                                                                              
                                                                                              Derivation
                                                                                              1. Initial program 98.9%

                                                                                                \[\left(\left(\cos \left(\left(uy \cdot 2\right) \cdot \mathsf{PI}\left(\right)\right) \cdot \sqrt{1 - \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right)}\right) \cdot xi + \left(\sin \left(\left(uy \cdot 2\right) \cdot \mathsf{PI}\left(\right)\right) \cdot \sqrt{1 - \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right)}\right) \cdot yi\right) + \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot zi \]
                                                                                              2. Add Preprocessing
                                                                                              3. Taylor expanded in maxCos around 0

                                                                                                \[\leadsto \color{blue}{maxCos \cdot \left(ux \cdot \left(zi \cdot \left(1 - ux\right)\right)\right) + \left(xi \cdot \cos \left(2 \cdot \left(uy \cdot \mathsf{PI}\left(\right)\right)\right) + yi \cdot \sin \left(2 \cdot \left(uy \cdot \mathsf{PI}\left(\right)\right)\right)\right)} \]
                                                                                              4. Step-by-step derivation
                                                                                                1. Applied rewrites98.2%

                                                                                                  \[\leadsto \color{blue}{\mathsf{fma}\left(\cos \left(-2 \cdot \left(\mathsf{PI}\left(\right) \cdot uy\right)\right), xi, \mathsf{fma}\left(\sin \left(\mathsf{PI}\left(\right) \cdot \left(2 \cdot uy\right)\right), yi, \left(\left(\left(1 - ux\right) \cdot zi\right) \cdot ux\right) \cdot maxCos\right)\right)} \]
                                                                                                2. Taylor expanded in uy around 0

                                                                                                  \[\leadsto xi + \color{blue}{\left(maxCos \cdot \left(ux \cdot \left(zi \cdot \left(1 - ux\right)\right)\right) + uy \cdot \left(-2 \cdot \left(uy \cdot \left(xi \cdot {\mathsf{PI}\left(\right)}^{2}\right)\right) + 2 \cdot \left(yi \cdot \mathsf{PI}\left(\right)\right)\right)\right)} \]
                                                                                                3. Step-by-step derivation
                                                                                                  1. Applied rewrites85.8%

                                                                                                    \[\leadsto \mathsf{fma}\left(maxCos \cdot ux, zi \cdot \left(1 - ux\right), xi\right) + \color{blue}{\mathsf{fma}\left(\left(\left(\mathsf{PI}\left(\right) \cdot \mathsf{PI}\left(\right)\right) \cdot xi\right) \cdot uy, -2, \left(\mathsf{PI}\left(\right) \cdot yi\right) \cdot 2\right) \cdot uy} \]
                                                                                                  2. Taylor expanded in xi around 0

                                                                                                    \[\leadsto \mathsf{fma}\left(maxCos \cdot ux, zi \cdot \left(1 - ux\right), xi\right) + \left(2 \cdot \left(yi \cdot \mathsf{PI}\left(\right)\right)\right) \cdot uy \]
                                                                                                  3. Step-by-step derivation
                                                                                                    1. Applied rewrites82.1%

                                                                                                      \[\leadsto \mathsf{fma}\left(maxCos \cdot ux, zi \cdot \left(1 - ux\right), xi\right) + \left(\left(\mathsf{PI}\left(\right) \cdot yi\right) \cdot 2\right) \cdot uy \]
                                                                                                    2. Add Preprocessing

                                                                                                    Alternative 19: 78.5% accurate, 11.8× speedup?

                                                                                                    \[\begin{array}{l} \\ \mathsf{fma}\left(zi \cdot ux, maxCos, \left(\left(\mathsf{PI}\left(\right) \cdot yi\right) \cdot uy\right) \cdot 2\right) + xi \end{array} \]
                                                                                                    (FPCore (xi yi zi ux uy maxCos)
                                                                                                     :precision binary32
                                                                                                     (+ (fma (* zi ux) maxCos (* (* (* (PI) yi) uy) 2.0)) xi))
                                                                                                    \begin{array}{l}
                                                                                                    
                                                                                                    \\
                                                                                                    \mathsf{fma}\left(zi \cdot ux, maxCos, \left(\left(\mathsf{PI}\left(\right) \cdot yi\right) \cdot uy\right) \cdot 2\right) + xi
                                                                                                    \end{array}
                                                                                                    
                                                                                                    Derivation
                                                                                                    1. Initial program 98.9%

                                                                                                      \[\left(\left(\cos \left(\left(uy \cdot 2\right) \cdot \mathsf{PI}\left(\right)\right) \cdot \sqrt{1 - \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right)}\right) \cdot xi + \left(\sin \left(\left(uy \cdot 2\right) \cdot \mathsf{PI}\left(\right)\right) \cdot \sqrt{1 - \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right)}\right) \cdot yi\right) + \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot zi \]
                                                                                                    2. Add Preprocessing
                                                                                                    3. Taylor expanded in uy around 0

                                                                                                      \[\leadsto \color{blue}{2 \cdot \left(\left(uy \cdot \left(yi \cdot \mathsf{PI}\left(\right)\right)\right) \cdot \sqrt{1 - {maxCos}^{2} \cdot \left({ux}^{2} \cdot {\left(1 - ux\right)}^{2}\right)}\right) + \left(maxCos \cdot \left(ux \cdot \left(zi \cdot \left(1 - ux\right)\right)\right) + xi \cdot \sqrt{1 - {maxCos}^{2} \cdot \left({ux}^{2} \cdot {\left(1 - ux\right)}^{2}\right)}\right)} \]
                                                                                                    4. Applied rewrites82.7%

                                                                                                      \[\leadsto \color{blue}{\mathsf{fma}\left(\sqrt{\mathsf{fma}\left(\left(-maxCos\right) \cdot maxCos, {\left(1 - ux\right)}^{2} \cdot \left(ux \cdot ux\right), 1\right)}, \mathsf{fma}\left(2, \left(\mathsf{PI}\left(\right) \cdot yi\right) \cdot uy, xi\right), \left(\left(\left(1 - ux\right) \cdot zi\right) \cdot ux\right) \cdot maxCos\right)} \]
                                                                                                    5. Taylor expanded in ux around 0

                                                                                                      \[\leadsto xi + \color{blue}{\left(2 \cdot \left(uy \cdot \left(yi \cdot \mathsf{PI}\left(\right)\right)\right) + maxCos \cdot \left(ux \cdot zi\right)\right)} \]
                                                                                                    6. Step-by-step derivation
                                                                                                      1. Applied rewrites78.0%

                                                                                                        \[\leadsto \mathsf{fma}\left(zi \cdot ux, maxCos, \left(\left(\mathsf{PI}\left(\right) \cdot yi\right) \cdot uy\right) \cdot 2\right) + \color{blue}{xi} \]
                                                                                                      2. Add Preprocessing

                                                                                                      Alternative 20: 56.7% accurate, 12.6× speedup?

                                                                                                      \[\begin{array}{l} \\ \begin{array}{l} \mathbf{if}\;xi \leq -5.000000156871975 \cdot 10^{-23} \lor \neg \left(xi \leq 2.00000009162741 \cdot 10^{-18}\right):\\ \;\;\;\;xi\\ \mathbf{else}:\\ \;\;\;\;\left(\left(\mathsf{PI}\left(\right) \cdot yi\right) \cdot uy\right) \cdot 2\\ \end{array} \end{array} \]
                                                                                                      (FPCore (xi yi zi ux uy maxCos)
                                                                                                       :precision binary32
                                                                                                       (if (or (<= xi -5.000000156871975e-23) (not (<= xi 2.00000009162741e-18)))
                                                                                                         xi
                                                                                                         (* (* (* (PI) yi) uy) 2.0)))
                                                                                                      \begin{array}{l}
                                                                                                      
                                                                                                      \\
                                                                                                      \begin{array}{l}
                                                                                                      \mathbf{if}\;xi \leq -5.000000156871975 \cdot 10^{-23} \lor \neg \left(xi \leq 2.00000009162741 \cdot 10^{-18}\right):\\
                                                                                                      \;\;\;\;xi\\
                                                                                                      
                                                                                                      \mathbf{else}:\\
                                                                                                      \;\;\;\;\left(\left(\mathsf{PI}\left(\right) \cdot yi\right) \cdot uy\right) \cdot 2\\
                                                                                                      
                                                                                                      
                                                                                                      \end{array}
                                                                                                      \end{array}
                                                                                                      
                                                                                                      Derivation
                                                                                                      1. Split input into 2 regimes
                                                                                                      2. if xi < -5.00000016e-23 or 2.00000009e-18 < xi

                                                                                                        1. Initial program 99.1%

                                                                                                          \[\left(\left(\cos \left(\left(uy \cdot 2\right) \cdot \mathsf{PI}\left(\right)\right) \cdot \sqrt{1 - \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right)}\right) \cdot xi + \left(\sin \left(\left(uy \cdot 2\right) \cdot \mathsf{PI}\left(\right)\right) \cdot \sqrt{1 - \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right)}\right) \cdot yi\right) + \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot zi \]
                                                                                                        2. Add Preprocessing
                                                                                                        3. Taylor expanded in maxCos around 0

                                                                                                          \[\leadsto \color{blue}{maxCos \cdot \left(ux \cdot \left(zi \cdot \left(1 - ux\right)\right)\right) + \left(xi \cdot \cos \left(2 \cdot \left(uy \cdot \mathsf{PI}\left(\right)\right)\right) + yi \cdot \sin \left(2 \cdot \left(uy \cdot \mathsf{PI}\left(\right)\right)\right)\right)} \]
                                                                                                        4. Step-by-step derivation
                                                                                                          1. Applied rewrites98.0%

                                                                                                            \[\leadsto \color{blue}{\mathsf{fma}\left(\cos \left(-2 \cdot \left(\mathsf{PI}\left(\right) \cdot uy\right)\right), xi, \mathsf{fma}\left(\sin \left(\mathsf{PI}\left(\right) \cdot \left(2 \cdot uy\right)\right), yi, \left(\left(\left(1 - ux\right) \cdot zi\right) \cdot ux\right) \cdot maxCos\right)\right)} \]
                                                                                                          2. Taylor expanded in xi around inf

                                                                                                            \[\leadsto xi \cdot \color{blue}{\cos \left(-2 \cdot \left(uy \cdot \mathsf{PI}\left(\right)\right)\right)} \]
                                                                                                          3. Step-by-step derivation
                                                                                                            1. Applied rewrites71.8%

                                                                                                              \[\leadsto \cos \left(-2 \cdot \left(\mathsf{PI}\left(\right) \cdot uy\right)\right) \cdot \color{blue}{xi} \]
                                                                                                            2. Taylor expanded in uy around 0

                                                                                                              \[\leadsto xi \]
                                                                                                            3. Step-by-step derivation
                                                                                                              1. Applied rewrites60.6%

                                                                                                                \[\leadsto xi \]

                                                                                                              if -5.00000016e-23 < xi < 2.00000009e-18

                                                                                                              1. Initial program 98.6%

                                                                                                                \[\left(\left(\cos \left(\left(uy \cdot 2\right) \cdot \mathsf{PI}\left(\right)\right) \cdot \sqrt{1 - \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right)}\right) \cdot xi + \left(\sin \left(\left(uy \cdot 2\right) \cdot \mathsf{PI}\left(\right)\right) \cdot \sqrt{1 - \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right)}\right) \cdot yi\right) + \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot zi \]
                                                                                                              2. Add Preprocessing
                                                                                                              3. Taylor expanded in maxCos around 0

                                                                                                                \[\leadsto \color{blue}{maxCos \cdot \left(ux \cdot \left(zi \cdot \left(1 - ux\right)\right)\right) + \left(xi \cdot \cos \left(2 \cdot \left(uy \cdot \mathsf{PI}\left(\right)\right)\right) + yi \cdot \sin \left(2 \cdot \left(uy \cdot \mathsf{PI}\left(\right)\right)\right)\right)} \]
                                                                                                              4. Step-by-step derivation
                                                                                                                1. Applied rewrites98.5%

                                                                                                                  \[\leadsto \color{blue}{\mathsf{fma}\left(\cos \left(-2 \cdot \left(\mathsf{PI}\left(\right) \cdot uy\right)\right), xi, \mathsf{fma}\left(\sin \left(\mathsf{PI}\left(\right) \cdot \left(2 \cdot uy\right)\right), yi, \left(\left(\left(1 - ux\right) \cdot zi\right) \cdot ux\right) \cdot maxCos\right)\right)} \]
                                                                                                                2. Taylor expanded in uy around 0

                                                                                                                  \[\leadsto xi + \color{blue}{\left(maxCos \cdot \left(ux \cdot \left(zi \cdot \left(1 - ux\right)\right)\right) + uy \cdot \left(-2 \cdot \left(uy \cdot \left(xi \cdot {\mathsf{PI}\left(\right)}^{2}\right)\right) + 2 \cdot \left(yi \cdot \mathsf{PI}\left(\right)\right)\right)\right)} \]
                                                                                                                3. Step-by-step derivation
                                                                                                                  1. Applied rewrites86.7%

                                                                                                                    \[\leadsto \mathsf{fma}\left(maxCos \cdot ux, zi \cdot \left(1 - ux\right), xi\right) + \color{blue}{\mathsf{fma}\left(\left(\left(\mathsf{PI}\left(\right) \cdot \mathsf{PI}\left(\right)\right) \cdot xi\right) \cdot uy, -2, \left(\mathsf{PI}\left(\right) \cdot yi\right) \cdot 2\right) \cdot uy} \]
                                                                                                                  2. Taylor expanded in yi around inf

                                                                                                                    \[\leadsto 2 \cdot \left(uy \cdot \color{blue}{\left(yi \cdot \mathsf{PI}\left(\right)\right)}\right) \]
                                                                                                                  3. Step-by-step derivation
                                                                                                                    1. Applied rewrites52.7%

                                                                                                                      \[\leadsto \left(\left(\mathsf{PI}\left(\right) \cdot yi\right) \cdot uy\right) \cdot 2 \]
                                                                                                                  4. Recombined 2 regimes into one program.
                                                                                                                  5. Final simplification57.3%

                                                                                                                    \[\leadsto \begin{array}{l} \mathbf{if}\;xi \leq -5.000000156871975 \cdot 10^{-23} \lor \neg \left(xi \leq 2.00000009162741 \cdot 10^{-18}\right):\\ \;\;\;\;xi\\ \mathbf{else}:\\ \;\;\;\;\left(\left(\mathsf{PI}\left(\right) \cdot yi\right) \cdot uy\right) \cdot 2\\ \end{array} \]
                                                                                                                  6. Add Preprocessing

                                                                                                                  Alternative 21: 73.9% accurate, 20.8× speedup?

                                                                                                                  \[\begin{array}{l} \\ \mathsf{fma}\left(\left(\mathsf{PI}\left(\right) \cdot yi\right) \cdot uy, 2, xi\right) \end{array} \]
                                                                                                                  (FPCore (xi yi zi ux uy maxCos)
                                                                                                                   :precision binary32
                                                                                                                   (fma (* (* (PI) yi) uy) 2.0 xi))
                                                                                                                  \begin{array}{l}
                                                                                                                  
                                                                                                                  \\
                                                                                                                  \mathsf{fma}\left(\left(\mathsf{PI}\left(\right) \cdot yi\right) \cdot uy, 2, xi\right)
                                                                                                                  \end{array}
                                                                                                                  
                                                                                                                  Derivation
                                                                                                                  1. Initial program 98.9%

                                                                                                                    \[\left(\left(\cos \left(\left(uy \cdot 2\right) \cdot \mathsf{PI}\left(\right)\right) \cdot \sqrt{1 - \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right)}\right) \cdot xi + \left(\sin \left(\left(uy \cdot 2\right) \cdot \mathsf{PI}\left(\right)\right) \cdot \sqrt{1 - \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right)}\right) \cdot yi\right) + \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot zi \]
                                                                                                                  2. Add Preprocessing
                                                                                                                  3. Taylor expanded in uy around 0

                                                                                                                    \[\leadsto \color{blue}{2 \cdot \left(\left(uy \cdot \left(yi \cdot \mathsf{PI}\left(\right)\right)\right) \cdot \sqrt{1 - {maxCos}^{2} \cdot \left({ux}^{2} \cdot {\left(1 - ux\right)}^{2}\right)}\right) + \left(maxCos \cdot \left(ux \cdot \left(zi \cdot \left(1 - ux\right)\right)\right) + xi \cdot \sqrt{1 - {maxCos}^{2} \cdot \left({ux}^{2} \cdot {\left(1 - ux\right)}^{2}\right)}\right)} \]
                                                                                                                  4. Applied rewrites82.7%

                                                                                                                    \[\leadsto \color{blue}{\mathsf{fma}\left(\sqrt{\mathsf{fma}\left(\left(-maxCos\right) \cdot maxCos, {\left(1 - ux\right)}^{2} \cdot \left(ux \cdot ux\right), 1\right)}, \mathsf{fma}\left(2, \left(\mathsf{PI}\left(\right) \cdot yi\right) \cdot uy, xi\right), \left(\left(\left(1 - ux\right) \cdot zi\right) \cdot ux\right) \cdot maxCos\right)} \]
                                                                                                                  5. Taylor expanded in ux around 0

                                                                                                                    \[\leadsto xi + \color{blue}{2 \cdot \left(uy \cdot \left(yi \cdot \mathsf{PI}\left(\right)\right)\right)} \]
                                                                                                                  6. Step-by-step derivation
                                                                                                                    1. Applied rewrites72.2%

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

                                                                                                                    Alternative 22: 45.9% accurate, 353.0× speedup?

                                                                                                                    \[\begin{array}{l} \\ xi \end{array} \]
                                                                                                                    (FPCore (xi yi zi ux uy maxCos) :precision binary32 xi)
                                                                                                                    float code(float xi, float yi, float zi, float ux, float uy, float maxCos) {
                                                                                                                    	return xi;
                                                                                                                    }
                                                                                                                    
                                                                                                                    module fmin_fmax_functions
                                                                                                                        implicit none
                                                                                                                        private
                                                                                                                        public fmax
                                                                                                                        public fmin
                                                                                                                    
                                                                                                                        interface fmax
                                                                                                                            module procedure fmax88
                                                                                                                            module procedure fmax44
                                                                                                                            module procedure fmax84
                                                                                                                            module procedure fmax48
                                                                                                                        end interface
                                                                                                                        interface fmin
                                                                                                                            module procedure fmin88
                                                                                                                            module procedure fmin44
                                                                                                                            module procedure fmin84
                                                                                                                            module procedure fmin48
                                                                                                                        end interface
                                                                                                                    contains
                                                                                                                        real(8) function fmax88(x, y) result (res)
                                                                                                                            real(8), intent (in) :: x
                                                                                                                            real(8), intent (in) :: y
                                                                                                                            res = merge(y, merge(x, max(x, y), y /= y), x /= x)
                                                                                                                        end function
                                                                                                                        real(4) function fmax44(x, y) result (res)
                                                                                                                            real(4), intent (in) :: x
                                                                                                                            real(4), intent (in) :: y
                                                                                                                            res = merge(y, merge(x, max(x, y), y /= y), x /= x)
                                                                                                                        end function
                                                                                                                        real(8) function fmax84(x, y) result(res)
                                                                                                                            real(8), intent (in) :: x
                                                                                                                            real(4), intent (in) :: y
                                                                                                                            res = merge(dble(y), merge(x, max(x, dble(y)), y /= y), x /= x)
                                                                                                                        end function
                                                                                                                        real(8) function fmax48(x, y) result(res)
                                                                                                                            real(4), intent (in) :: x
                                                                                                                            real(8), intent (in) :: y
                                                                                                                            res = merge(y, merge(dble(x), max(dble(x), y), y /= y), x /= x)
                                                                                                                        end function
                                                                                                                        real(8) function fmin88(x, y) result (res)
                                                                                                                            real(8), intent (in) :: x
                                                                                                                            real(8), intent (in) :: y
                                                                                                                            res = merge(y, merge(x, min(x, y), y /= y), x /= x)
                                                                                                                        end function
                                                                                                                        real(4) function fmin44(x, y) result (res)
                                                                                                                            real(4), intent (in) :: x
                                                                                                                            real(4), intent (in) :: y
                                                                                                                            res = merge(y, merge(x, min(x, y), y /= y), x /= x)
                                                                                                                        end function
                                                                                                                        real(8) function fmin84(x, y) result(res)
                                                                                                                            real(8), intent (in) :: x
                                                                                                                            real(4), intent (in) :: y
                                                                                                                            res = merge(dble(y), merge(x, min(x, dble(y)), y /= y), x /= x)
                                                                                                                        end function
                                                                                                                        real(8) function fmin48(x, y) result(res)
                                                                                                                            real(4), intent (in) :: x
                                                                                                                            real(8), intent (in) :: y
                                                                                                                            res = merge(y, merge(dble(x), min(dble(x), y), y /= y), x /= x)
                                                                                                                        end function
                                                                                                                    end module
                                                                                                                    
                                                                                                                    real(4) function code(xi, yi, zi, ux, uy, maxcos)
                                                                                                                    use fmin_fmax_functions
                                                                                                                        real(4), intent (in) :: xi
                                                                                                                        real(4), intent (in) :: yi
                                                                                                                        real(4), intent (in) :: zi
                                                                                                                        real(4), intent (in) :: ux
                                                                                                                        real(4), intent (in) :: uy
                                                                                                                        real(4), intent (in) :: maxcos
                                                                                                                        code = xi
                                                                                                                    end function
                                                                                                                    
                                                                                                                    function code(xi, yi, zi, ux, uy, maxCos)
                                                                                                                    	return xi
                                                                                                                    end
                                                                                                                    
                                                                                                                    function tmp = code(xi, yi, zi, ux, uy, maxCos)
                                                                                                                    	tmp = xi;
                                                                                                                    end
                                                                                                                    
                                                                                                                    \begin{array}{l}
                                                                                                                    
                                                                                                                    \\
                                                                                                                    xi
                                                                                                                    \end{array}
                                                                                                                    
                                                                                                                    Derivation
                                                                                                                    1. Initial program 98.9%

                                                                                                                      \[\left(\left(\cos \left(\left(uy \cdot 2\right) \cdot \mathsf{PI}\left(\right)\right) \cdot \sqrt{1 - \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right)}\right) \cdot xi + \left(\sin \left(\left(uy \cdot 2\right) \cdot \mathsf{PI}\left(\right)\right) \cdot \sqrt{1 - \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right)}\right) \cdot yi\right) + \left(\left(\left(1 - ux\right) \cdot maxCos\right) \cdot ux\right) \cdot zi \]
                                                                                                                    2. Add Preprocessing
                                                                                                                    3. Taylor expanded in maxCos around 0

                                                                                                                      \[\leadsto \color{blue}{maxCos \cdot \left(ux \cdot \left(zi \cdot \left(1 - ux\right)\right)\right) + \left(xi \cdot \cos \left(2 \cdot \left(uy \cdot \mathsf{PI}\left(\right)\right)\right) + yi \cdot \sin \left(2 \cdot \left(uy \cdot \mathsf{PI}\left(\right)\right)\right)\right)} \]
                                                                                                                    4. Step-by-step derivation
                                                                                                                      1. Applied rewrites98.2%

                                                                                                                        \[\leadsto \color{blue}{\mathsf{fma}\left(\cos \left(-2 \cdot \left(\mathsf{PI}\left(\right) \cdot uy\right)\right), xi, \mathsf{fma}\left(\sin \left(\mathsf{PI}\left(\right) \cdot \left(2 \cdot uy\right)\right), yi, \left(\left(\left(1 - ux\right) \cdot zi\right) \cdot ux\right) \cdot maxCos\right)\right)} \]
                                                                                                                      2. Taylor expanded in xi around inf

                                                                                                                        \[\leadsto xi \cdot \color{blue}{\cos \left(-2 \cdot \left(uy \cdot \mathsf{PI}\left(\right)\right)\right)} \]
                                                                                                                      3. Step-by-step derivation
                                                                                                                        1. Applied rewrites50.8%

                                                                                                                          \[\leadsto \cos \left(-2 \cdot \left(\mathsf{PI}\left(\right) \cdot uy\right)\right) \cdot \color{blue}{xi} \]
                                                                                                                        2. Taylor expanded in uy around 0

                                                                                                                          \[\leadsto xi \]
                                                                                                                        3. Step-by-step derivation
                                                                                                                          1. Applied rewrites43.6%

                                                                                                                            \[\leadsto xi \]
                                                                                                                          2. Add Preprocessing

                                                                                                                          Reproduce

                                                                                                                          ?
                                                                                                                          herbie shell --seed 2025019 
                                                                                                                          (FPCore (xi yi zi ux uy maxCos)
                                                                                                                            :name "UniformSampleCone 2"
                                                                                                                            :precision binary32
                                                                                                                            :pre (and (and (and (and (and (and (<= -10000.0 xi) (<= xi 10000.0)) (and (<= -10000.0 yi) (<= yi 10000.0))) (and (<= -10000.0 zi) (<= zi 10000.0))) (and (<= 2.328306437e-10 ux) (<= ux 1.0))) (and (<= 2.328306437e-10 uy) (<= uy 1.0))) (and (<= 0.0 maxCos) (<= maxCos 1.0)))
                                                                                                                            (+ (+ (* (* (cos (* (* uy 2.0) (PI))) (sqrt (- 1.0 (* (* (* (- 1.0 ux) maxCos) ux) (* (* (- 1.0 ux) maxCos) ux))))) xi) (* (* (sin (* (* uy 2.0) (PI))) (sqrt (- 1.0 (* (* (* (- 1.0 ux) maxCos) ux) (* (* (- 1.0 ux) maxCos) ux))))) yi)) (* (* (* (- 1.0 ux) maxCos) ux) zi)))