NMSE Section 6.1 mentioned, B

Percentage Accurate: 79.0% → 99.6%
Time: 7.9s
Alternatives: 11
Speedup: 1.8×

Specification

?
\[\begin{array}{l} \\ \left(\frac{\mathsf{PI}\left(\right)}{2} \cdot \frac{1}{b \cdot b - a \cdot a}\right) \cdot \left(\frac{1}{a} - \frac{1}{b}\right) \end{array} \]
(FPCore (a b)
 :precision binary64
 (* (* (/ (PI) 2.0) (/ 1.0 (- (* b b) (* a a)))) (- (/ 1.0 a) (/ 1.0 b))))
\begin{array}{l}

\\
\left(\frac{\mathsf{PI}\left(\right)}{2} \cdot \frac{1}{b \cdot b - a \cdot a}\right) \cdot \left(\frac{1}{a} - \frac{1}{b}\right)
\end{array}

Sampling outcomes in binary64 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 11 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: 79.0% accurate, 1.0× speedup?

\[\begin{array}{l} \\ \left(\frac{\mathsf{PI}\left(\right)}{2} \cdot \frac{1}{b \cdot b - a \cdot a}\right) \cdot \left(\frac{1}{a} - \frac{1}{b}\right) \end{array} \]
(FPCore (a b)
 :precision binary64
 (* (* (/ (PI) 2.0) (/ 1.0 (- (* b b) (* a a)))) (- (/ 1.0 a) (/ 1.0 b))))
\begin{array}{l}

\\
\left(\frac{\mathsf{PI}\left(\right)}{2} \cdot \frac{1}{b \cdot b - a \cdot a}\right) \cdot \left(\frac{1}{a} - \frac{1}{b}\right)
\end{array}

Alternative 1: 99.6% accurate, 1.2× speedup?

\[\begin{array}{l} \\ \frac{\frac{\left(b - a\right) \cdot \frac{\mathsf{PI}\left(\right)}{b + a}}{2 \cdot \left(b \cdot a\right)}}{b - a} \end{array} \]
(FPCore (a b)
 :precision binary64
 (/ (/ (* (- b a) (/ (PI) (+ b a))) (* 2.0 (* b a))) (- b a)))
\begin{array}{l}

\\
\frac{\frac{\left(b - a\right) \cdot \frac{\mathsf{PI}\left(\right)}{b + a}}{2 \cdot \left(b \cdot a\right)}}{b - a}
\end{array}
Derivation
  1. Initial program 74.3%

    \[\left(\frac{\mathsf{PI}\left(\right)}{2} \cdot \frac{1}{b \cdot b - a \cdot a}\right) \cdot \left(\frac{1}{a} - \frac{1}{b}\right) \]
  2. Add Preprocessing
  3. Step-by-step derivation
    1. lift-*.f64N/A

      \[\leadsto \color{blue}{\left(\frac{\mathsf{PI}\left(\right)}{2} \cdot \frac{1}{b \cdot b - a \cdot a}\right) \cdot \left(\frac{1}{a} - \frac{1}{b}\right)} \]
    2. lift-*.f64N/A

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

      \[\leadsto \color{blue}{\left(\frac{1}{b \cdot b - a \cdot a} \cdot \frac{\mathsf{PI}\left(\right)}{2}\right)} \cdot \left(\frac{1}{a} - \frac{1}{b}\right) \]
    4. *-rgt-identityN/A

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

      \[\leadsto \color{blue}{\left(\left(\frac{\mathsf{PI}\left(\right)}{2} \cdot 1\right) \cdot \frac{1}{b \cdot b - a \cdot a}\right)} \cdot \left(\frac{1}{a} - \frac{1}{b}\right) \]
    6. associate-*r*N/A

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

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

      \[\leadsto \color{blue}{\left(\left(\frac{1}{a} - \frac{1}{b}\right) \cdot \frac{1}{b \cdot b - a \cdot a}\right)} \cdot \left(\frac{\mathsf{PI}\left(\right)}{2} \cdot 1\right) \]
    9. associate-*r*N/A

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

      \[\leadsto \left(\frac{1}{a} - \frac{1}{b}\right) \cdot \color{blue}{\left(\left(\frac{\mathsf{PI}\left(\right)}{2} \cdot 1\right) \cdot \frac{1}{b \cdot b - a \cdot a}\right)} \]
  4. Applied rewrites84.8%

    \[\leadsto \color{blue}{\frac{\frac{\frac{b - a}{a}}{b}}{2 \cdot \left(a + b\right)} \cdot \frac{\mathsf{PI}\left(\right)}{b - a}} \]
  5. Step-by-step derivation
    1. lift-*.f64N/A

      \[\leadsto \color{blue}{\frac{\frac{\frac{b - a}{a}}{b}}{2 \cdot \left(a + b\right)} \cdot \frac{\mathsf{PI}\left(\right)}{b - a}} \]
    2. lift-/.f64N/A

      \[\leadsto \color{blue}{\frac{\frac{\frac{b - a}{a}}{b}}{2 \cdot \left(a + b\right)}} \cdot \frac{\mathsf{PI}\left(\right)}{b - a} \]
    3. lift-/.f64N/A

      \[\leadsto \frac{\frac{\frac{b - a}{a}}{b}}{2 \cdot \left(a + b\right)} \cdot \color{blue}{\frac{\mathsf{PI}\left(\right)}{b - a}} \]
    4. frac-timesN/A

      \[\leadsto \color{blue}{\frac{\frac{\frac{b - a}{a}}{b} \cdot \mathsf{PI}\left(\right)}{\left(2 \cdot \left(a + b\right)\right) \cdot \left(b - a\right)}} \]
    5. lift-*.f64N/A

      \[\leadsto \frac{\color{blue}{\frac{\frac{b - a}{a}}{b} \cdot \mathsf{PI}\left(\right)}}{\left(2 \cdot \left(a + b\right)\right) \cdot \left(b - a\right)} \]
    6. lift-*.f64N/A

      \[\leadsto \frac{\frac{\frac{b - a}{a}}{b} \cdot \mathsf{PI}\left(\right)}{\color{blue}{\left(2 \cdot \left(a + b\right)\right) \cdot \left(b - a\right)}} \]
    7. lift-*.f64N/A

      \[\leadsto \frac{\color{blue}{\frac{\frac{b - a}{a}}{b} \cdot \mathsf{PI}\left(\right)}}{\left(2 \cdot \left(a + b\right)\right) \cdot \left(b - a\right)} \]
    8. lift-*.f64N/A

      \[\leadsto \frac{\frac{\frac{b - a}{a}}{b} \cdot \mathsf{PI}\left(\right)}{\color{blue}{\left(2 \cdot \left(a + b\right)\right) \cdot \left(b - a\right)}} \]
    9. lift-*.f64N/A

      \[\leadsto \frac{\frac{\frac{b - a}{a}}{b} \cdot \mathsf{PI}\left(\right)}{\color{blue}{\left(2 \cdot \left(a + b\right)\right)} \cdot \left(b - a\right)} \]
    10. associate-*l*N/A

      \[\leadsto \frac{\frac{\frac{b - a}{a}}{b} \cdot \mathsf{PI}\left(\right)}{\color{blue}{2 \cdot \left(\left(a + b\right) \cdot \left(b - a\right)\right)}} \]
    11. lift-+.f64N/A

      \[\leadsto \frac{\frac{\frac{b - a}{a}}{b} \cdot \mathsf{PI}\left(\right)}{2 \cdot \left(\color{blue}{\left(a + b\right)} \cdot \left(b - a\right)\right)} \]
    12. +-commutativeN/A

      \[\leadsto \frac{\frac{\frac{b - a}{a}}{b} \cdot \mathsf{PI}\left(\right)}{2 \cdot \left(\color{blue}{\left(b + a\right)} \cdot \left(b - a\right)\right)} \]
    13. lift--.f64N/A

      \[\leadsto \frac{\frac{\frac{b - a}{a}}{b} \cdot \mathsf{PI}\left(\right)}{2 \cdot \left(\left(b + a\right) \cdot \color{blue}{\left(b - a\right)}\right)} \]
    14. difference-of-squaresN/A

      \[\leadsto \frac{\frac{\frac{b - a}{a}}{b} \cdot \mathsf{PI}\left(\right)}{2 \cdot \color{blue}{\left(b \cdot b - a \cdot a\right)}} \]
    15. times-fracN/A

      \[\leadsto \color{blue}{\frac{\frac{\frac{b - a}{a}}{b}}{2} \cdot \frac{\mathsf{PI}\left(\right)}{b \cdot b - a \cdot a}} \]
    16. difference-of-squaresN/A

      \[\leadsto \frac{\frac{\frac{b - a}{a}}{b}}{2} \cdot \frac{\mathsf{PI}\left(\right)}{\color{blue}{\left(b + a\right) \cdot \left(b - a\right)}} \]
  6. Applied rewrites99.0%

    \[\leadsto \color{blue}{\frac{\frac{\mathsf{PI}\left(\right)}{a + b} \cdot \left(b - a\right)}{\left(b - a\right) \cdot \left(\left(a \cdot b\right) \cdot 2\right)}} \]
  7. Step-by-step derivation
    1. lift-/.f64N/A

      \[\leadsto \color{blue}{\frac{\frac{\mathsf{PI}\left(\right)}{a + b} \cdot \left(b - a\right)}{\left(b - a\right) \cdot \left(\left(a \cdot b\right) \cdot 2\right)}} \]
    2. lift-*.f64N/A

      \[\leadsto \frac{\frac{\mathsf{PI}\left(\right)}{a + b} \cdot \left(b - a\right)}{\color{blue}{\left(b - a\right) \cdot \left(\left(a \cdot b\right) \cdot 2\right)}} \]
    3. *-commutativeN/A

      \[\leadsto \frac{\frac{\mathsf{PI}\left(\right)}{a + b} \cdot \left(b - a\right)}{\color{blue}{\left(\left(a \cdot b\right) \cdot 2\right) \cdot \left(b - a\right)}} \]
    4. associate-/r*N/A

      \[\leadsto \color{blue}{\frac{\frac{\frac{\mathsf{PI}\left(\right)}{a + b} \cdot \left(b - a\right)}{\left(a \cdot b\right) \cdot 2}}{b - a}} \]
    5. lower-/.f64N/A

      \[\leadsto \color{blue}{\frac{\frac{\frac{\mathsf{PI}\left(\right)}{a + b} \cdot \left(b - a\right)}{\left(a \cdot b\right) \cdot 2}}{b - a}} \]
    6. lower-/.f6499.6

      \[\leadsto \frac{\color{blue}{\frac{\frac{\mathsf{PI}\left(\right)}{a + b} \cdot \left(b - a\right)}{\left(a \cdot b\right) \cdot 2}}}{b - a} \]
    7. lift-*.f64N/A

      \[\leadsto \frac{\frac{\color{blue}{\frac{\mathsf{PI}\left(\right)}{a + b} \cdot \left(b - a\right)}}{\left(a \cdot b\right) \cdot 2}}{b - a} \]
    8. *-commutativeN/A

      \[\leadsto \frac{\frac{\color{blue}{\left(b - a\right) \cdot \frac{\mathsf{PI}\left(\right)}{a + b}}}{\left(a \cdot b\right) \cdot 2}}{b - a} \]
    9. lower-*.f6499.6

      \[\leadsto \frac{\frac{\color{blue}{\left(b - a\right) \cdot \frac{\mathsf{PI}\left(\right)}{a + b}}}{\left(a \cdot b\right) \cdot 2}}{b - a} \]
    10. lift-+.f64N/A

      \[\leadsto \frac{\frac{\left(b - a\right) \cdot \frac{\mathsf{PI}\left(\right)}{\color{blue}{a + b}}}{\left(a \cdot b\right) \cdot 2}}{b - a} \]
    11. +-commutativeN/A

      \[\leadsto \frac{\frac{\left(b - a\right) \cdot \frac{\mathsf{PI}\left(\right)}{\color{blue}{b + a}}}{\left(a \cdot b\right) \cdot 2}}{b - a} \]
    12. lower-+.f6499.6

      \[\leadsto \frac{\frac{\left(b - a\right) \cdot \frac{\mathsf{PI}\left(\right)}{\color{blue}{b + a}}}{\left(a \cdot b\right) \cdot 2}}{b - a} \]
    13. lift-*.f64N/A

      \[\leadsto \frac{\frac{\left(b - a\right) \cdot \frac{\mathsf{PI}\left(\right)}{b + a}}{\color{blue}{\left(a \cdot b\right) \cdot 2}}}{b - a} \]
    14. *-commutativeN/A

      \[\leadsto \frac{\frac{\left(b - a\right) \cdot \frac{\mathsf{PI}\left(\right)}{b + a}}{\color{blue}{2 \cdot \left(a \cdot b\right)}}}{b - a} \]
    15. lower-*.f6499.6

      \[\leadsto \frac{\frac{\left(b - a\right) \cdot \frac{\mathsf{PI}\left(\right)}{b + a}}{\color{blue}{2 \cdot \left(a \cdot b\right)}}}{b - a} \]
    16. lift-*.f64N/A

      \[\leadsto \frac{\frac{\left(b - a\right) \cdot \frac{\mathsf{PI}\left(\right)}{b + a}}{2 \cdot \color{blue}{\left(a \cdot b\right)}}}{b - a} \]
    17. *-commutativeN/A

      \[\leadsto \frac{\frac{\left(b - a\right) \cdot \frac{\mathsf{PI}\left(\right)}{b + a}}{2 \cdot \color{blue}{\left(b \cdot a\right)}}}{b - a} \]
    18. lower-*.f6499.6

      \[\leadsto \frac{\frac{\left(b - a\right) \cdot \frac{\mathsf{PI}\left(\right)}{b + a}}{2 \cdot \color{blue}{\left(b \cdot a\right)}}}{b - a} \]
  8. Applied rewrites99.6%

    \[\leadsto \color{blue}{\frac{\frac{\left(b - a\right) \cdot \frac{\mathsf{PI}\left(\right)}{b + a}}{2 \cdot \left(b \cdot a\right)}}{b - a}} \]
  9. Add Preprocessing

Alternative 2: 95.4% accurate, 0.9× speedup?

\[\begin{array}{l} \\ \begin{array}{l} t_0 := 2 \cdot \left(a \cdot b\right)\\ t_1 := \frac{\frac{\mathsf{PI}\left(\right)}{\left(a + b\right) \cdot \left(b - a\right)} \cdot \left(b - a\right)}{t\_0}\\ \mathbf{if}\;a \leq -2 \cdot 10^{+94}:\\ \;\;\;\;\frac{\frac{0.5}{a} \cdot \mathsf{PI}\left(\right)}{a \cdot b}\\ \mathbf{elif}\;a \leq -1.85 \cdot 10^{-67}:\\ \;\;\;\;t\_1\\ \mathbf{elif}\;a \leq 3.2 \cdot 10^{-125}:\\ \;\;\;\;\frac{\frac{\mathsf{PI}\left(\right)}{b}}{t\_0}\\ \mathbf{elif}\;a \leq 1.32 \cdot 10^{+45}:\\ \;\;\;\;t\_1\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{0.5}{a}}{a \cdot b} \cdot \mathsf{PI}\left(\right)\\ \end{array} \end{array} \]
(FPCore (a b)
 :precision binary64
 (let* ((t_0 (* 2.0 (* a b)))
        (t_1 (/ (* (/ (PI) (* (+ a b) (- b a))) (- b a)) t_0)))
   (if (<= a -2e+94)
     (/ (* (/ 0.5 a) (PI)) (* a b))
     (if (<= a -1.85e-67)
       t_1
       (if (<= a 3.2e-125)
         (/ (/ (PI) b) t_0)
         (if (<= a 1.32e+45) t_1 (* (/ (/ 0.5 a) (* a b)) (PI))))))))
\begin{array}{l}

\\
\begin{array}{l}
t_0 := 2 \cdot \left(a \cdot b\right)\\
t_1 := \frac{\frac{\mathsf{PI}\left(\right)}{\left(a + b\right) \cdot \left(b - a\right)} \cdot \left(b - a\right)}{t\_0}\\
\mathbf{if}\;a \leq -2 \cdot 10^{+94}:\\
\;\;\;\;\frac{\frac{0.5}{a} \cdot \mathsf{PI}\left(\right)}{a \cdot b}\\

\mathbf{elif}\;a \leq -1.85 \cdot 10^{-67}:\\
\;\;\;\;t\_1\\

\mathbf{elif}\;a \leq 3.2 \cdot 10^{-125}:\\
\;\;\;\;\frac{\frac{\mathsf{PI}\left(\right)}{b}}{t\_0}\\

\mathbf{elif}\;a \leq 1.32 \cdot 10^{+45}:\\
\;\;\;\;t\_1\\

\mathbf{else}:\\
\;\;\;\;\frac{\frac{0.5}{a}}{a \cdot b} \cdot \mathsf{PI}\left(\right)\\


\end{array}
\end{array}
Derivation
  1. Split input into 4 regimes
  2. if a < -2e94

    1. Initial program 62.3%

      \[\left(\frac{\mathsf{PI}\left(\right)}{2} \cdot \frac{1}{b \cdot b - a \cdot a}\right) \cdot \left(\frac{1}{a} - \frac{1}{b}\right) \]
    2. Add Preprocessing
    3. Taylor expanded in a around inf

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

        \[\leadsto \color{blue}{\frac{\mathsf{PI}\left(\right)}{{a}^{2} \cdot b} \cdot \frac{1}{2}} \]
      2. lower-*.f64N/A

        \[\leadsto \color{blue}{\frac{\mathsf{PI}\left(\right)}{{a}^{2} \cdot b} \cdot \frac{1}{2}} \]
      3. associate-/r*N/A

        \[\leadsto \color{blue}{\frac{\frac{\mathsf{PI}\left(\right)}{{a}^{2}}}{b}} \cdot \frac{1}{2} \]
      4. lower-/.f64N/A

        \[\leadsto \color{blue}{\frac{\frac{\mathsf{PI}\left(\right)}{{a}^{2}}}{b}} \cdot \frac{1}{2} \]
      5. lower-/.f64N/A

        \[\leadsto \frac{\color{blue}{\frac{\mathsf{PI}\left(\right)}{{a}^{2}}}}{b} \cdot \frac{1}{2} \]
      6. lower-PI.f64N/A

        \[\leadsto \frac{\frac{\color{blue}{\mathsf{PI}\left(\right)}}{{a}^{2}}}{b} \cdot \frac{1}{2} \]
      7. unpow2N/A

        \[\leadsto \frac{\frac{\mathsf{PI}\left(\right)}{\color{blue}{a \cdot a}}}{b} \cdot \frac{1}{2} \]
      8. lower-*.f6480.4

        \[\leadsto \frac{\frac{\mathsf{PI}\left(\right)}{\color{blue}{a \cdot a}}}{b} \cdot 0.5 \]
    5. Applied rewrites80.4%

      \[\leadsto \color{blue}{\frac{\frac{\mathsf{PI}\left(\right)}{a \cdot a}}{b} \cdot 0.5} \]
    6. Step-by-step derivation
      1. Applied rewrites80.4%

        \[\leadsto \frac{\mathsf{PI}\left(\right) \cdot 0.5}{\color{blue}{\left(a \cdot a\right) \cdot b}} \]
      2. Step-by-step derivation
        1. Applied rewrites98.6%

          \[\leadsto \frac{\mathsf{PI}\left(\right) \cdot 0.5}{\left(b \cdot a\right) \cdot \color{blue}{a}} \]
        2. Step-by-step derivation
          1. Applied rewrites99.8%

            \[\leadsto \frac{\frac{0.5}{a} \cdot \mathsf{PI}\left(\right)}{\color{blue}{a \cdot b}} \]

          if -2e94 < a < -1.85e-67 or 3.1999999999999998e-125 < a < 1.32000000000000005e45

          1. Initial program 95.2%

            \[\left(\frac{\mathsf{PI}\left(\right)}{2} \cdot \frac{1}{b \cdot b - a \cdot a}\right) \cdot \left(\frac{1}{a} - \frac{1}{b}\right) \]
          2. Add Preprocessing
          3. Step-by-step derivation
            1. lift-*.f64N/A

              \[\leadsto \color{blue}{\left(\frac{\mathsf{PI}\left(\right)}{2} \cdot \frac{1}{b \cdot b - a \cdot a}\right) \cdot \left(\frac{1}{a} - \frac{1}{b}\right)} \]
            2. lift-*.f64N/A

              \[\leadsto \color{blue}{\left(\frac{\mathsf{PI}\left(\right)}{2} \cdot \frac{1}{b \cdot b - a \cdot a}\right)} \cdot \left(\frac{1}{a} - \frac{1}{b}\right) \]
            3. lift-/.f64N/A

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

              \[\leadsto \color{blue}{\frac{\mathsf{PI}\left(\right) \cdot \frac{1}{b \cdot b - a \cdot a}}{2}} \cdot \left(\frac{1}{a} - \frac{1}{b}\right) \]
            5. lift--.f64N/A

              \[\leadsto \frac{\mathsf{PI}\left(\right) \cdot \frac{1}{b \cdot b - a \cdot a}}{2} \cdot \color{blue}{\left(\frac{1}{a} - \frac{1}{b}\right)} \]
            6. lift-/.f64N/A

              \[\leadsto \frac{\mathsf{PI}\left(\right) \cdot \frac{1}{b \cdot b - a \cdot a}}{2} \cdot \left(\color{blue}{\frac{1}{a}} - \frac{1}{b}\right) \]
            7. lift-/.f64N/A

              \[\leadsto \frac{\mathsf{PI}\left(\right) \cdot \frac{1}{b \cdot b - a \cdot a}}{2} \cdot \left(\frac{1}{a} - \color{blue}{\frac{1}{b}}\right) \]
            8. frac-subN/A

              \[\leadsto \frac{\mathsf{PI}\left(\right) \cdot \frac{1}{b \cdot b - a \cdot a}}{2} \cdot \color{blue}{\frac{1 \cdot b - a \cdot 1}{a \cdot b}} \]
            9. frac-timesN/A

              \[\leadsto \color{blue}{\frac{\left(\mathsf{PI}\left(\right) \cdot \frac{1}{b \cdot b - a \cdot a}\right) \cdot \left(1 \cdot b - a \cdot 1\right)}{2 \cdot \left(a \cdot b\right)}} \]
            10. lower-/.f64N/A

              \[\leadsto \color{blue}{\frac{\left(\mathsf{PI}\left(\right) \cdot \frac{1}{b \cdot b - a \cdot a}\right) \cdot \left(1 \cdot b - a \cdot 1\right)}{2 \cdot \left(a \cdot b\right)}} \]
          4. Applied rewrites95.3%

            \[\leadsto \color{blue}{\frac{\frac{\mathsf{PI}\left(\right)}{\left(a + b\right) \cdot \left(b - a\right)} \cdot \left(b - a\right)}{2 \cdot \left(a \cdot b\right)}} \]

          if -1.85e-67 < a < 3.1999999999999998e-125

          1. Initial program 71.3%

            \[\left(\frac{\mathsf{PI}\left(\right)}{2} \cdot \frac{1}{b \cdot b - a \cdot a}\right) \cdot \left(\frac{1}{a} - \frac{1}{b}\right) \]
          2. Add Preprocessing
          3. Step-by-step derivation
            1. lift-*.f64N/A

              \[\leadsto \color{blue}{\left(\frac{\mathsf{PI}\left(\right)}{2} \cdot \frac{1}{b \cdot b - a \cdot a}\right) \cdot \left(\frac{1}{a} - \frac{1}{b}\right)} \]
            2. lift-*.f64N/A

              \[\leadsto \color{blue}{\left(\frac{\mathsf{PI}\left(\right)}{2} \cdot \frac{1}{b \cdot b - a \cdot a}\right)} \cdot \left(\frac{1}{a} - \frac{1}{b}\right) \]
            3. lift-/.f64N/A

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

              \[\leadsto \color{blue}{\frac{\mathsf{PI}\left(\right) \cdot \frac{1}{b \cdot b - a \cdot a}}{2}} \cdot \left(\frac{1}{a} - \frac{1}{b}\right) \]
            5. lift--.f64N/A

              \[\leadsto \frac{\mathsf{PI}\left(\right) \cdot \frac{1}{b \cdot b - a \cdot a}}{2} \cdot \color{blue}{\left(\frac{1}{a} - \frac{1}{b}\right)} \]
            6. lift-/.f64N/A

              \[\leadsto \frac{\mathsf{PI}\left(\right) \cdot \frac{1}{b \cdot b - a \cdot a}}{2} \cdot \left(\color{blue}{\frac{1}{a}} - \frac{1}{b}\right) \]
            7. lift-/.f64N/A

              \[\leadsto \frac{\mathsf{PI}\left(\right) \cdot \frac{1}{b \cdot b - a \cdot a}}{2} \cdot \left(\frac{1}{a} - \color{blue}{\frac{1}{b}}\right) \]
            8. frac-subN/A

              \[\leadsto \frac{\mathsf{PI}\left(\right) \cdot \frac{1}{b \cdot b - a \cdot a}}{2} \cdot \color{blue}{\frac{1 \cdot b - a \cdot 1}{a \cdot b}} \]
            9. frac-timesN/A

              \[\leadsto \color{blue}{\frac{\left(\mathsf{PI}\left(\right) \cdot \frac{1}{b \cdot b - a \cdot a}\right) \cdot \left(1 \cdot b - a \cdot 1\right)}{2 \cdot \left(a \cdot b\right)}} \]
            10. lower-/.f64N/A

              \[\leadsto \color{blue}{\frac{\left(\mathsf{PI}\left(\right) \cdot \frac{1}{b \cdot b - a \cdot a}\right) \cdot \left(1 \cdot b - a \cdot 1\right)}{2 \cdot \left(a \cdot b\right)}} \]
          4. Applied rewrites79.1%

            \[\leadsto \color{blue}{\frac{\frac{\mathsf{PI}\left(\right)}{\left(a + b\right) \cdot \left(b - a\right)} \cdot \left(b - a\right)}{2 \cdot \left(a \cdot b\right)}} \]
          5. Taylor expanded in a around 0

            \[\leadsto \frac{\color{blue}{\frac{\mathsf{PI}\left(\right)}{b}}}{2 \cdot \left(a \cdot b\right)} \]
          6. Step-by-step derivation
            1. lower-/.f64N/A

              \[\leadsto \frac{\color{blue}{\frac{\mathsf{PI}\left(\right)}{b}}}{2 \cdot \left(a \cdot b\right)} \]
            2. lower-PI.f6496.3

              \[\leadsto \frac{\frac{\color{blue}{\mathsf{PI}\left(\right)}}{b}}{2 \cdot \left(a \cdot b\right)} \]
          7. Applied rewrites96.3%

            \[\leadsto \frac{\color{blue}{\frac{\mathsf{PI}\left(\right)}{b}}}{2 \cdot \left(a \cdot b\right)} \]

          if 1.32000000000000005e45 < a

          1. Initial program 65.4%

            \[\left(\frac{\mathsf{PI}\left(\right)}{2} \cdot \frac{1}{b \cdot b - a \cdot a}\right) \cdot \left(\frac{1}{a} - \frac{1}{b}\right) \]
          2. Add Preprocessing
          3. Taylor expanded in a around inf

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

              \[\leadsto \color{blue}{\frac{\mathsf{PI}\left(\right)}{{a}^{2} \cdot b} \cdot \frac{1}{2}} \]
            2. lower-*.f64N/A

              \[\leadsto \color{blue}{\frac{\mathsf{PI}\left(\right)}{{a}^{2} \cdot b} \cdot \frac{1}{2}} \]
            3. associate-/r*N/A

              \[\leadsto \color{blue}{\frac{\frac{\mathsf{PI}\left(\right)}{{a}^{2}}}{b}} \cdot \frac{1}{2} \]
            4. lower-/.f64N/A

              \[\leadsto \color{blue}{\frac{\frac{\mathsf{PI}\left(\right)}{{a}^{2}}}{b}} \cdot \frac{1}{2} \]
            5. lower-/.f64N/A

              \[\leadsto \frac{\color{blue}{\frac{\mathsf{PI}\left(\right)}{{a}^{2}}}}{b} \cdot \frac{1}{2} \]
            6. lower-PI.f64N/A

              \[\leadsto \frac{\frac{\color{blue}{\mathsf{PI}\left(\right)}}{{a}^{2}}}{b} \cdot \frac{1}{2} \]
            7. unpow2N/A

              \[\leadsto \frac{\frac{\mathsf{PI}\left(\right)}{\color{blue}{a \cdot a}}}{b} \cdot \frac{1}{2} \]
            8. lower-*.f6485.0

              \[\leadsto \frac{\frac{\mathsf{PI}\left(\right)}{\color{blue}{a \cdot a}}}{b} \cdot 0.5 \]
          5. Applied rewrites85.0%

            \[\leadsto \color{blue}{\frac{\frac{\mathsf{PI}\left(\right)}{a \cdot a}}{b} \cdot 0.5} \]
          6. Step-by-step derivation
            1. Applied rewrites84.9%

              \[\leadsto \frac{\mathsf{PI}\left(\right) \cdot 0.5}{\color{blue}{\left(a \cdot a\right) \cdot b}} \]
            2. Step-by-step derivation
              1. Applied rewrites99.8%

                \[\leadsto \frac{\frac{\frac{0.5}{b}}{a}}{a} \cdot \color{blue}{\mathsf{PI}\left(\right)} \]
              2. Step-by-step derivation
                1. Applied rewrites99.8%

                  \[\leadsto \frac{\frac{0.5}{a}}{a \cdot b} \cdot \mathsf{PI}\left(\right) \]
              3. Recombined 4 regimes into one program.
              4. Final simplification97.4%

                \[\leadsto \begin{array}{l} \mathbf{if}\;a \leq -2 \cdot 10^{+94}:\\ \;\;\;\;\frac{\frac{0.5}{a} \cdot \mathsf{PI}\left(\right)}{a \cdot b}\\ \mathbf{elif}\;a \leq -1.85 \cdot 10^{-67}:\\ \;\;\;\;\frac{\frac{\mathsf{PI}\left(\right)}{\left(a + b\right) \cdot \left(b - a\right)} \cdot \left(b - a\right)}{2 \cdot \left(a \cdot b\right)}\\ \mathbf{elif}\;a \leq 3.2 \cdot 10^{-125}:\\ \;\;\;\;\frac{\frac{\mathsf{PI}\left(\right)}{b}}{2 \cdot \left(a \cdot b\right)}\\ \mathbf{elif}\;a \leq 1.32 \cdot 10^{+45}:\\ \;\;\;\;\frac{\frac{\mathsf{PI}\left(\right)}{\left(a + b\right) \cdot \left(b - a\right)} \cdot \left(b - a\right)}{2 \cdot \left(a \cdot b\right)}\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{0.5}{a}}{a \cdot b} \cdot \mathsf{PI}\left(\right)\\ \end{array} \]
              5. Add Preprocessing

              Alternative 3: 99.0% accurate, 1.4× speedup?

              \[\begin{array}{l} \\ \frac{\frac{\mathsf{PI}\left(\right)}{a + b} \cdot \left(b - a\right)}{\left(b - a\right) \cdot \left(\left(a \cdot b\right) \cdot 2\right)} \end{array} \]
              (FPCore (a b)
               :precision binary64
               (/ (* (/ (PI) (+ a b)) (- b a)) (* (- b a) (* (* a b) 2.0))))
              \begin{array}{l}
              
              \\
              \frac{\frac{\mathsf{PI}\left(\right)}{a + b} \cdot \left(b - a\right)}{\left(b - a\right) \cdot \left(\left(a \cdot b\right) \cdot 2\right)}
              \end{array}
              
              Derivation
              1. Initial program 74.3%

                \[\left(\frac{\mathsf{PI}\left(\right)}{2} \cdot \frac{1}{b \cdot b - a \cdot a}\right) \cdot \left(\frac{1}{a} - \frac{1}{b}\right) \]
              2. Add Preprocessing
              3. Step-by-step derivation
                1. lift-*.f64N/A

                  \[\leadsto \color{blue}{\left(\frac{\mathsf{PI}\left(\right)}{2} \cdot \frac{1}{b \cdot b - a \cdot a}\right) \cdot \left(\frac{1}{a} - \frac{1}{b}\right)} \]
                2. lift-*.f64N/A

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

                  \[\leadsto \color{blue}{\left(\frac{1}{b \cdot b - a \cdot a} \cdot \frac{\mathsf{PI}\left(\right)}{2}\right)} \cdot \left(\frac{1}{a} - \frac{1}{b}\right) \]
                4. *-rgt-identityN/A

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

                  \[\leadsto \color{blue}{\left(\left(\frac{\mathsf{PI}\left(\right)}{2} \cdot 1\right) \cdot \frac{1}{b \cdot b - a \cdot a}\right)} \cdot \left(\frac{1}{a} - \frac{1}{b}\right) \]
                6. associate-*r*N/A

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

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

                  \[\leadsto \color{blue}{\left(\left(\frac{1}{a} - \frac{1}{b}\right) \cdot \frac{1}{b \cdot b - a \cdot a}\right)} \cdot \left(\frac{\mathsf{PI}\left(\right)}{2} \cdot 1\right) \]
                9. associate-*r*N/A

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

                  \[\leadsto \left(\frac{1}{a} - \frac{1}{b}\right) \cdot \color{blue}{\left(\left(\frac{\mathsf{PI}\left(\right)}{2} \cdot 1\right) \cdot \frac{1}{b \cdot b - a \cdot a}\right)} \]
              4. Applied rewrites84.8%

                \[\leadsto \color{blue}{\frac{\frac{\frac{b - a}{a}}{b}}{2 \cdot \left(a + b\right)} \cdot \frac{\mathsf{PI}\left(\right)}{b - a}} \]
              5. Step-by-step derivation
                1. lift-*.f64N/A

                  \[\leadsto \color{blue}{\frac{\frac{\frac{b - a}{a}}{b}}{2 \cdot \left(a + b\right)} \cdot \frac{\mathsf{PI}\left(\right)}{b - a}} \]
                2. lift-/.f64N/A

                  \[\leadsto \color{blue}{\frac{\frac{\frac{b - a}{a}}{b}}{2 \cdot \left(a + b\right)}} \cdot \frac{\mathsf{PI}\left(\right)}{b - a} \]
                3. lift-/.f64N/A

                  \[\leadsto \frac{\frac{\frac{b - a}{a}}{b}}{2 \cdot \left(a + b\right)} \cdot \color{blue}{\frac{\mathsf{PI}\left(\right)}{b - a}} \]
                4. frac-timesN/A

                  \[\leadsto \color{blue}{\frac{\frac{\frac{b - a}{a}}{b} \cdot \mathsf{PI}\left(\right)}{\left(2 \cdot \left(a + b\right)\right) \cdot \left(b - a\right)}} \]
                5. lift-*.f64N/A

                  \[\leadsto \frac{\color{blue}{\frac{\frac{b - a}{a}}{b} \cdot \mathsf{PI}\left(\right)}}{\left(2 \cdot \left(a + b\right)\right) \cdot \left(b - a\right)} \]
                6. lift-*.f64N/A

                  \[\leadsto \frac{\frac{\frac{b - a}{a}}{b} \cdot \mathsf{PI}\left(\right)}{\color{blue}{\left(2 \cdot \left(a + b\right)\right) \cdot \left(b - a\right)}} \]
                7. lift-*.f64N/A

                  \[\leadsto \frac{\color{blue}{\frac{\frac{b - a}{a}}{b} \cdot \mathsf{PI}\left(\right)}}{\left(2 \cdot \left(a + b\right)\right) \cdot \left(b - a\right)} \]
                8. lift-*.f64N/A

                  \[\leadsto \frac{\frac{\frac{b - a}{a}}{b} \cdot \mathsf{PI}\left(\right)}{\color{blue}{\left(2 \cdot \left(a + b\right)\right) \cdot \left(b - a\right)}} \]
                9. lift-*.f64N/A

                  \[\leadsto \frac{\frac{\frac{b - a}{a}}{b} \cdot \mathsf{PI}\left(\right)}{\color{blue}{\left(2 \cdot \left(a + b\right)\right)} \cdot \left(b - a\right)} \]
                10. associate-*l*N/A

                  \[\leadsto \frac{\frac{\frac{b - a}{a}}{b} \cdot \mathsf{PI}\left(\right)}{\color{blue}{2 \cdot \left(\left(a + b\right) \cdot \left(b - a\right)\right)}} \]
                11. lift-+.f64N/A

                  \[\leadsto \frac{\frac{\frac{b - a}{a}}{b} \cdot \mathsf{PI}\left(\right)}{2 \cdot \left(\color{blue}{\left(a + b\right)} \cdot \left(b - a\right)\right)} \]
                12. +-commutativeN/A

                  \[\leadsto \frac{\frac{\frac{b - a}{a}}{b} \cdot \mathsf{PI}\left(\right)}{2 \cdot \left(\color{blue}{\left(b + a\right)} \cdot \left(b - a\right)\right)} \]
                13. lift--.f64N/A

                  \[\leadsto \frac{\frac{\frac{b - a}{a}}{b} \cdot \mathsf{PI}\left(\right)}{2 \cdot \left(\left(b + a\right) \cdot \color{blue}{\left(b - a\right)}\right)} \]
                14. difference-of-squaresN/A

                  \[\leadsto \frac{\frac{\frac{b - a}{a}}{b} \cdot \mathsf{PI}\left(\right)}{2 \cdot \color{blue}{\left(b \cdot b - a \cdot a\right)}} \]
                15. times-fracN/A

                  \[\leadsto \color{blue}{\frac{\frac{\frac{b - a}{a}}{b}}{2} \cdot \frac{\mathsf{PI}\left(\right)}{b \cdot b - a \cdot a}} \]
                16. difference-of-squaresN/A

                  \[\leadsto \frac{\frac{\frac{b - a}{a}}{b}}{2} \cdot \frac{\mathsf{PI}\left(\right)}{\color{blue}{\left(b + a\right) \cdot \left(b - a\right)}} \]
              6. Applied rewrites99.0%

                \[\leadsto \color{blue}{\frac{\frac{\mathsf{PI}\left(\right)}{a + b} \cdot \left(b - a\right)}{\left(b - a\right) \cdot \left(\left(a \cdot b\right) \cdot 2\right)}} \]
              7. Add Preprocessing

              Alternative 4: 89.6% accurate, 1.5× speedup?

              \[\begin{array}{l} \\ \begin{array}{l} \mathbf{if}\;b \leq -1.28 \cdot 10^{-70} \lor \neg \left(b \leq 2.55 \cdot 10^{-23}\right):\\ \;\;\;\;\frac{\frac{\mathsf{PI}\left(\right)}{2 \cdot \left(b \cdot a\right)}}{b - a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{0.5}{a}}{a \cdot b} \cdot \mathsf{PI}\left(\right)\\ \end{array} \end{array} \]
              (FPCore (a b)
               :precision binary64
               (if (or (<= b -1.28e-70) (not (<= b 2.55e-23)))
                 (/ (/ (PI) (* 2.0 (* b a))) (- b a))
                 (* (/ (/ 0.5 a) (* a b)) (PI))))
              \begin{array}{l}
              
              \\
              \begin{array}{l}
              \mathbf{if}\;b \leq -1.28 \cdot 10^{-70} \lor \neg \left(b \leq 2.55 \cdot 10^{-23}\right):\\
              \;\;\;\;\frac{\frac{\mathsf{PI}\left(\right)}{2 \cdot \left(b \cdot a\right)}}{b - a}\\
              
              \mathbf{else}:\\
              \;\;\;\;\frac{\frac{0.5}{a}}{a \cdot b} \cdot \mathsf{PI}\left(\right)\\
              
              
              \end{array}
              \end{array}
              
              Derivation
              1. Split input into 2 regimes
              2. if b < -1.28e-70 or 2.55000000000000005e-23 < b

                1. Initial program 73.0%

                  \[\left(\frac{\mathsf{PI}\left(\right)}{2} \cdot \frac{1}{b \cdot b - a \cdot a}\right) \cdot \left(\frac{1}{a} - \frac{1}{b}\right) \]
                2. Add Preprocessing
                3. Step-by-step derivation
                  1. lift-*.f64N/A

                    \[\leadsto \color{blue}{\left(\frac{\mathsf{PI}\left(\right)}{2} \cdot \frac{1}{b \cdot b - a \cdot a}\right) \cdot \left(\frac{1}{a} - \frac{1}{b}\right)} \]
                  2. lift-*.f64N/A

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

                    \[\leadsto \color{blue}{\left(\frac{1}{b \cdot b - a \cdot a} \cdot \frac{\mathsf{PI}\left(\right)}{2}\right)} \cdot \left(\frac{1}{a} - \frac{1}{b}\right) \]
                  4. *-rgt-identityN/A

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

                    \[\leadsto \color{blue}{\left(\left(\frac{\mathsf{PI}\left(\right)}{2} \cdot 1\right) \cdot \frac{1}{b \cdot b - a \cdot a}\right)} \cdot \left(\frac{1}{a} - \frac{1}{b}\right) \]
                  6. associate-*r*N/A

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

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

                    \[\leadsto \color{blue}{\left(\left(\frac{1}{a} - \frac{1}{b}\right) \cdot \frac{1}{b \cdot b - a \cdot a}\right)} \cdot \left(\frac{\mathsf{PI}\left(\right)}{2} \cdot 1\right) \]
                  9. associate-*r*N/A

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

                    \[\leadsto \left(\frac{1}{a} - \frac{1}{b}\right) \cdot \color{blue}{\left(\left(\frac{\mathsf{PI}\left(\right)}{2} \cdot 1\right) \cdot \frac{1}{b \cdot b - a \cdot a}\right)} \]
                4. Applied rewrites74.7%

                  \[\leadsto \color{blue}{\frac{\frac{\frac{b - a}{a}}{b}}{2 \cdot \left(a + b\right)} \cdot \frac{\mathsf{PI}\left(\right)}{b - a}} \]
                5. Step-by-step derivation
                  1. lift-*.f64N/A

                    \[\leadsto \color{blue}{\frac{\frac{\frac{b - a}{a}}{b}}{2 \cdot \left(a + b\right)} \cdot \frac{\mathsf{PI}\left(\right)}{b - a}} \]
                  2. lift-/.f64N/A

                    \[\leadsto \color{blue}{\frac{\frac{\frac{b - a}{a}}{b}}{2 \cdot \left(a + b\right)}} \cdot \frac{\mathsf{PI}\left(\right)}{b - a} \]
                  3. lift-/.f64N/A

                    \[\leadsto \frac{\frac{\frac{b - a}{a}}{b}}{2 \cdot \left(a + b\right)} \cdot \color{blue}{\frac{\mathsf{PI}\left(\right)}{b - a}} \]
                  4. frac-timesN/A

                    \[\leadsto \color{blue}{\frac{\frac{\frac{b - a}{a}}{b} \cdot \mathsf{PI}\left(\right)}{\left(2 \cdot \left(a + b\right)\right) \cdot \left(b - a\right)}} \]
                  5. lift-*.f64N/A

                    \[\leadsto \frac{\color{blue}{\frac{\frac{b - a}{a}}{b} \cdot \mathsf{PI}\left(\right)}}{\left(2 \cdot \left(a + b\right)\right) \cdot \left(b - a\right)} \]
                  6. lift-*.f64N/A

                    \[\leadsto \frac{\frac{\frac{b - a}{a}}{b} \cdot \mathsf{PI}\left(\right)}{\color{blue}{\left(2 \cdot \left(a + b\right)\right) \cdot \left(b - a\right)}} \]
                  7. lift-*.f64N/A

                    \[\leadsto \frac{\color{blue}{\frac{\frac{b - a}{a}}{b} \cdot \mathsf{PI}\left(\right)}}{\left(2 \cdot \left(a + b\right)\right) \cdot \left(b - a\right)} \]
                  8. lift-*.f64N/A

                    \[\leadsto \frac{\frac{\frac{b - a}{a}}{b} \cdot \mathsf{PI}\left(\right)}{\color{blue}{\left(2 \cdot \left(a + b\right)\right) \cdot \left(b - a\right)}} \]
                  9. lift-*.f64N/A

                    \[\leadsto \frac{\frac{\frac{b - a}{a}}{b} \cdot \mathsf{PI}\left(\right)}{\color{blue}{\left(2 \cdot \left(a + b\right)\right)} \cdot \left(b - a\right)} \]
                  10. associate-*l*N/A

                    \[\leadsto \frac{\frac{\frac{b - a}{a}}{b} \cdot \mathsf{PI}\left(\right)}{\color{blue}{2 \cdot \left(\left(a + b\right) \cdot \left(b - a\right)\right)}} \]
                  11. lift-+.f64N/A

                    \[\leadsto \frac{\frac{\frac{b - a}{a}}{b} \cdot \mathsf{PI}\left(\right)}{2 \cdot \left(\color{blue}{\left(a + b\right)} \cdot \left(b - a\right)\right)} \]
                  12. +-commutativeN/A

                    \[\leadsto \frac{\frac{\frac{b - a}{a}}{b} \cdot \mathsf{PI}\left(\right)}{2 \cdot \left(\color{blue}{\left(b + a\right)} \cdot \left(b - a\right)\right)} \]
                  13. lift--.f64N/A

                    \[\leadsto \frac{\frac{\frac{b - a}{a}}{b} \cdot \mathsf{PI}\left(\right)}{2 \cdot \left(\left(b + a\right) \cdot \color{blue}{\left(b - a\right)}\right)} \]
                  14. difference-of-squaresN/A

                    \[\leadsto \frac{\frac{\frac{b - a}{a}}{b} \cdot \mathsf{PI}\left(\right)}{2 \cdot \color{blue}{\left(b \cdot b - a \cdot a\right)}} \]
                  15. times-fracN/A

                    \[\leadsto \color{blue}{\frac{\frac{\frac{b - a}{a}}{b}}{2} \cdot \frac{\mathsf{PI}\left(\right)}{b \cdot b - a \cdot a}} \]
                  16. difference-of-squaresN/A

                    \[\leadsto \frac{\frac{\frac{b - a}{a}}{b}}{2} \cdot \frac{\mathsf{PI}\left(\right)}{\color{blue}{\left(b + a\right) \cdot \left(b - a\right)}} \]
                6. Applied rewrites98.9%

                  \[\leadsto \color{blue}{\frac{\frac{\mathsf{PI}\left(\right)}{a + b} \cdot \left(b - a\right)}{\left(b - a\right) \cdot \left(\left(a \cdot b\right) \cdot 2\right)}} \]
                7. Step-by-step derivation
                  1. lift-/.f64N/A

                    \[\leadsto \color{blue}{\frac{\frac{\mathsf{PI}\left(\right)}{a + b} \cdot \left(b - a\right)}{\left(b - a\right) \cdot \left(\left(a \cdot b\right) \cdot 2\right)}} \]
                  2. lift-*.f64N/A

                    \[\leadsto \frac{\frac{\mathsf{PI}\left(\right)}{a + b} \cdot \left(b - a\right)}{\color{blue}{\left(b - a\right) \cdot \left(\left(a \cdot b\right) \cdot 2\right)}} \]
                  3. *-commutativeN/A

                    \[\leadsto \frac{\frac{\mathsf{PI}\left(\right)}{a + b} \cdot \left(b - a\right)}{\color{blue}{\left(\left(a \cdot b\right) \cdot 2\right) \cdot \left(b - a\right)}} \]
                  4. associate-/r*N/A

                    \[\leadsto \color{blue}{\frac{\frac{\frac{\mathsf{PI}\left(\right)}{a + b} \cdot \left(b - a\right)}{\left(a \cdot b\right) \cdot 2}}{b - a}} \]
                  5. lower-/.f64N/A

                    \[\leadsto \color{blue}{\frac{\frac{\frac{\mathsf{PI}\left(\right)}{a + b} \cdot \left(b - a\right)}{\left(a \cdot b\right) \cdot 2}}{b - a}} \]
                  6. lower-/.f6499.6

                    \[\leadsto \frac{\color{blue}{\frac{\frac{\mathsf{PI}\left(\right)}{a + b} \cdot \left(b - a\right)}{\left(a \cdot b\right) \cdot 2}}}{b - a} \]
                  7. lift-*.f64N/A

                    \[\leadsto \frac{\frac{\color{blue}{\frac{\mathsf{PI}\left(\right)}{a + b} \cdot \left(b - a\right)}}{\left(a \cdot b\right) \cdot 2}}{b - a} \]
                  8. *-commutativeN/A

                    \[\leadsto \frac{\frac{\color{blue}{\left(b - a\right) \cdot \frac{\mathsf{PI}\left(\right)}{a + b}}}{\left(a \cdot b\right) \cdot 2}}{b - a} \]
                  9. lower-*.f6499.6

                    \[\leadsto \frac{\frac{\color{blue}{\left(b - a\right) \cdot \frac{\mathsf{PI}\left(\right)}{a + b}}}{\left(a \cdot b\right) \cdot 2}}{b - a} \]
                  10. lift-+.f64N/A

                    \[\leadsto \frac{\frac{\left(b - a\right) \cdot \frac{\mathsf{PI}\left(\right)}{\color{blue}{a + b}}}{\left(a \cdot b\right) \cdot 2}}{b - a} \]
                  11. +-commutativeN/A

                    \[\leadsto \frac{\frac{\left(b - a\right) \cdot \frac{\mathsf{PI}\left(\right)}{\color{blue}{b + a}}}{\left(a \cdot b\right) \cdot 2}}{b - a} \]
                  12. lower-+.f6499.6

                    \[\leadsto \frac{\frac{\left(b - a\right) \cdot \frac{\mathsf{PI}\left(\right)}{\color{blue}{b + a}}}{\left(a \cdot b\right) \cdot 2}}{b - a} \]
                  13. lift-*.f64N/A

                    \[\leadsto \frac{\frac{\left(b - a\right) \cdot \frac{\mathsf{PI}\left(\right)}{b + a}}{\color{blue}{\left(a \cdot b\right) \cdot 2}}}{b - a} \]
                  14. *-commutativeN/A

                    \[\leadsto \frac{\frac{\left(b - a\right) \cdot \frac{\mathsf{PI}\left(\right)}{b + a}}{\color{blue}{2 \cdot \left(a \cdot b\right)}}}{b - a} \]
                  15. lower-*.f6499.6

                    \[\leadsto \frac{\frac{\left(b - a\right) \cdot \frac{\mathsf{PI}\left(\right)}{b + a}}{\color{blue}{2 \cdot \left(a \cdot b\right)}}}{b - a} \]
                  16. lift-*.f64N/A

                    \[\leadsto \frac{\frac{\left(b - a\right) \cdot \frac{\mathsf{PI}\left(\right)}{b + a}}{2 \cdot \color{blue}{\left(a \cdot b\right)}}}{b - a} \]
                  17. *-commutativeN/A

                    \[\leadsto \frac{\frac{\left(b - a\right) \cdot \frac{\mathsf{PI}\left(\right)}{b + a}}{2 \cdot \color{blue}{\left(b \cdot a\right)}}}{b - a} \]
                  18. lower-*.f6499.6

                    \[\leadsto \frac{\frac{\left(b - a\right) \cdot \frac{\mathsf{PI}\left(\right)}{b + a}}{2 \cdot \color{blue}{\left(b \cdot a\right)}}}{b - a} \]
                8. Applied rewrites99.6%

                  \[\leadsto \color{blue}{\frac{\frac{\left(b - a\right) \cdot \frac{\mathsf{PI}\left(\right)}{b + a}}{2 \cdot \left(b \cdot a\right)}}{b - a}} \]
                9. Taylor expanded in a around 0

                  \[\leadsto \frac{\frac{\color{blue}{\mathsf{PI}\left(\right)}}{2 \cdot \left(b \cdot a\right)}}{b - a} \]
                10. Step-by-step derivation
                  1. lower-PI.f6494.7

                    \[\leadsto \frac{\frac{\color{blue}{\mathsf{PI}\left(\right)}}{2 \cdot \left(b \cdot a\right)}}{b - a} \]
                11. Applied rewrites94.7%

                  \[\leadsto \frac{\frac{\color{blue}{\mathsf{PI}\left(\right)}}{2 \cdot \left(b \cdot a\right)}}{b - a} \]

                if -1.28e-70 < b < 2.55000000000000005e-23

                1. Initial program 76.3%

                  \[\left(\frac{\mathsf{PI}\left(\right)}{2} \cdot \frac{1}{b \cdot b - a \cdot a}\right) \cdot \left(\frac{1}{a} - \frac{1}{b}\right) \]
                2. Add Preprocessing
                3. Taylor expanded in a around inf

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

                    \[\leadsto \color{blue}{\frac{\mathsf{PI}\left(\right)}{{a}^{2} \cdot b} \cdot \frac{1}{2}} \]
                  2. lower-*.f64N/A

                    \[\leadsto \color{blue}{\frac{\mathsf{PI}\left(\right)}{{a}^{2} \cdot b} \cdot \frac{1}{2}} \]
                  3. associate-/r*N/A

                    \[\leadsto \color{blue}{\frac{\frac{\mathsf{PI}\left(\right)}{{a}^{2}}}{b}} \cdot \frac{1}{2} \]
                  4. lower-/.f64N/A

                    \[\leadsto \color{blue}{\frac{\frac{\mathsf{PI}\left(\right)}{{a}^{2}}}{b}} \cdot \frac{1}{2} \]
                  5. lower-/.f64N/A

                    \[\leadsto \frac{\color{blue}{\frac{\mathsf{PI}\left(\right)}{{a}^{2}}}}{b} \cdot \frac{1}{2} \]
                  6. lower-PI.f64N/A

                    \[\leadsto \frac{\frac{\color{blue}{\mathsf{PI}\left(\right)}}{{a}^{2}}}{b} \cdot \frac{1}{2} \]
                  7. unpow2N/A

                    \[\leadsto \frac{\frac{\mathsf{PI}\left(\right)}{\color{blue}{a \cdot a}}}{b} \cdot \frac{1}{2} \]
                  8. lower-*.f6473.7

                    \[\leadsto \frac{\frac{\mathsf{PI}\left(\right)}{\color{blue}{a \cdot a}}}{b} \cdot 0.5 \]
                5. Applied rewrites73.7%

                  \[\leadsto \color{blue}{\frac{\frac{\mathsf{PI}\left(\right)}{a \cdot a}}{b} \cdot 0.5} \]
                6. Step-by-step derivation
                  1. Applied rewrites73.7%

                    \[\leadsto \frac{\mathsf{PI}\left(\right) \cdot 0.5}{\color{blue}{\left(a \cdot a\right) \cdot b}} \]
                  2. Step-by-step derivation
                    1. Applied rewrites90.2%

                      \[\leadsto \frac{\frac{\frac{0.5}{b}}{a}}{a} \cdot \color{blue}{\mathsf{PI}\left(\right)} \]
                    2. Step-by-step derivation
                      1. Applied rewrites90.3%

                        \[\leadsto \frac{\frac{0.5}{a}}{a \cdot b} \cdot \mathsf{PI}\left(\right) \]
                    3. Recombined 2 regimes into one program.
                    4. Final simplification92.9%

                      \[\leadsto \begin{array}{l} \mathbf{if}\;b \leq -1.28 \cdot 10^{-70} \lor \neg \left(b \leq 2.55 \cdot 10^{-23}\right):\\ \;\;\;\;\frac{\frac{\mathsf{PI}\left(\right)}{2 \cdot \left(b \cdot a\right)}}{b - a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{0.5}{a}}{a \cdot b} \cdot \mathsf{PI}\left(\right)\\ \end{array} \]
                    5. Add Preprocessing

                    Alternative 5: 89.3% accurate, 1.6× speedup?

                    \[\begin{array}{l} \\ \begin{array}{l} \mathbf{if}\;b \leq -1.28 \cdot 10^{-70} \lor \neg \left(b \leq 2.55 \cdot 10^{-23}\right):\\ \;\;\;\;\frac{\mathsf{PI}\left(\right)}{\left(b - a\right) \cdot \left(\left(a \cdot b\right) \cdot 2\right)}\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{0.5}{a}}{a \cdot b} \cdot \mathsf{PI}\left(\right)\\ \end{array} \end{array} \]
                    (FPCore (a b)
                     :precision binary64
                     (if (or (<= b -1.28e-70) (not (<= b 2.55e-23)))
                       (/ (PI) (* (- b a) (* (* a b) 2.0)))
                       (* (/ (/ 0.5 a) (* a b)) (PI))))
                    \begin{array}{l}
                    
                    \\
                    \begin{array}{l}
                    \mathbf{if}\;b \leq -1.28 \cdot 10^{-70} \lor \neg \left(b \leq 2.55 \cdot 10^{-23}\right):\\
                    \;\;\;\;\frac{\mathsf{PI}\left(\right)}{\left(b - a\right) \cdot \left(\left(a \cdot b\right) \cdot 2\right)}\\
                    
                    \mathbf{else}:\\
                    \;\;\;\;\frac{\frac{0.5}{a}}{a \cdot b} \cdot \mathsf{PI}\left(\right)\\
                    
                    
                    \end{array}
                    \end{array}
                    
                    Derivation
                    1. Split input into 2 regimes
                    2. if b < -1.28e-70 or 2.55000000000000005e-23 < b

                      1. Initial program 73.0%

                        \[\left(\frac{\mathsf{PI}\left(\right)}{2} \cdot \frac{1}{b \cdot b - a \cdot a}\right) \cdot \left(\frac{1}{a} - \frac{1}{b}\right) \]
                      2. Add Preprocessing
                      3. Step-by-step derivation
                        1. lift-*.f64N/A

                          \[\leadsto \color{blue}{\left(\frac{\mathsf{PI}\left(\right)}{2} \cdot \frac{1}{b \cdot b - a \cdot a}\right) \cdot \left(\frac{1}{a} - \frac{1}{b}\right)} \]
                        2. lift-*.f64N/A

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

                          \[\leadsto \color{blue}{\left(\frac{1}{b \cdot b - a \cdot a} \cdot \frac{\mathsf{PI}\left(\right)}{2}\right)} \cdot \left(\frac{1}{a} - \frac{1}{b}\right) \]
                        4. *-rgt-identityN/A

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

                          \[\leadsto \color{blue}{\left(\left(\frac{\mathsf{PI}\left(\right)}{2} \cdot 1\right) \cdot \frac{1}{b \cdot b - a \cdot a}\right)} \cdot \left(\frac{1}{a} - \frac{1}{b}\right) \]
                        6. associate-*r*N/A

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

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

                          \[\leadsto \color{blue}{\left(\left(\frac{1}{a} - \frac{1}{b}\right) \cdot \frac{1}{b \cdot b - a \cdot a}\right)} \cdot \left(\frac{\mathsf{PI}\left(\right)}{2} \cdot 1\right) \]
                        9. associate-*r*N/A

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

                          \[\leadsto \left(\frac{1}{a} - \frac{1}{b}\right) \cdot \color{blue}{\left(\left(\frac{\mathsf{PI}\left(\right)}{2} \cdot 1\right) \cdot \frac{1}{b \cdot b - a \cdot a}\right)} \]
                      4. Applied rewrites74.7%

                        \[\leadsto \color{blue}{\frac{\frac{\frac{b - a}{a}}{b}}{2 \cdot \left(a + b\right)} \cdot \frac{\mathsf{PI}\left(\right)}{b - a}} \]
                      5. Step-by-step derivation
                        1. lift-*.f64N/A

                          \[\leadsto \color{blue}{\frac{\frac{\frac{b - a}{a}}{b}}{2 \cdot \left(a + b\right)} \cdot \frac{\mathsf{PI}\left(\right)}{b - a}} \]
                        2. lift-/.f64N/A

                          \[\leadsto \color{blue}{\frac{\frac{\frac{b - a}{a}}{b}}{2 \cdot \left(a + b\right)}} \cdot \frac{\mathsf{PI}\left(\right)}{b - a} \]
                        3. lift-/.f64N/A

                          \[\leadsto \frac{\frac{\frac{b - a}{a}}{b}}{2 \cdot \left(a + b\right)} \cdot \color{blue}{\frac{\mathsf{PI}\left(\right)}{b - a}} \]
                        4. frac-timesN/A

                          \[\leadsto \color{blue}{\frac{\frac{\frac{b - a}{a}}{b} \cdot \mathsf{PI}\left(\right)}{\left(2 \cdot \left(a + b\right)\right) \cdot \left(b - a\right)}} \]
                        5. lift-*.f64N/A

                          \[\leadsto \frac{\color{blue}{\frac{\frac{b - a}{a}}{b} \cdot \mathsf{PI}\left(\right)}}{\left(2 \cdot \left(a + b\right)\right) \cdot \left(b - a\right)} \]
                        6. lift-*.f64N/A

                          \[\leadsto \frac{\frac{\frac{b - a}{a}}{b} \cdot \mathsf{PI}\left(\right)}{\color{blue}{\left(2 \cdot \left(a + b\right)\right) \cdot \left(b - a\right)}} \]
                        7. lift-*.f64N/A

                          \[\leadsto \frac{\color{blue}{\frac{\frac{b - a}{a}}{b} \cdot \mathsf{PI}\left(\right)}}{\left(2 \cdot \left(a + b\right)\right) \cdot \left(b - a\right)} \]
                        8. lift-*.f64N/A

                          \[\leadsto \frac{\frac{\frac{b - a}{a}}{b} \cdot \mathsf{PI}\left(\right)}{\color{blue}{\left(2 \cdot \left(a + b\right)\right) \cdot \left(b - a\right)}} \]
                        9. lift-*.f64N/A

                          \[\leadsto \frac{\frac{\frac{b - a}{a}}{b} \cdot \mathsf{PI}\left(\right)}{\color{blue}{\left(2 \cdot \left(a + b\right)\right)} \cdot \left(b - a\right)} \]
                        10. associate-*l*N/A

                          \[\leadsto \frac{\frac{\frac{b - a}{a}}{b} \cdot \mathsf{PI}\left(\right)}{\color{blue}{2 \cdot \left(\left(a + b\right) \cdot \left(b - a\right)\right)}} \]
                        11. lift-+.f64N/A

                          \[\leadsto \frac{\frac{\frac{b - a}{a}}{b} \cdot \mathsf{PI}\left(\right)}{2 \cdot \left(\color{blue}{\left(a + b\right)} \cdot \left(b - a\right)\right)} \]
                        12. +-commutativeN/A

                          \[\leadsto \frac{\frac{\frac{b - a}{a}}{b} \cdot \mathsf{PI}\left(\right)}{2 \cdot \left(\color{blue}{\left(b + a\right)} \cdot \left(b - a\right)\right)} \]
                        13. lift--.f64N/A

                          \[\leadsto \frac{\frac{\frac{b - a}{a}}{b} \cdot \mathsf{PI}\left(\right)}{2 \cdot \left(\left(b + a\right) \cdot \color{blue}{\left(b - a\right)}\right)} \]
                        14. difference-of-squaresN/A

                          \[\leadsto \frac{\frac{\frac{b - a}{a}}{b} \cdot \mathsf{PI}\left(\right)}{2 \cdot \color{blue}{\left(b \cdot b - a \cdot a\right)}} \]
                        15. times-fracN/A

                          \[\leadsto \color{blue}{\frac{\frac{\frac{b - a}{a}}{b}}{2} \cdot \frac{\mathsf{PI}\left(\right)}{b \cdot b - a \cdot a}} \]
                        16. difference-of-squaresN/A

                          \[\leadsto \frac{\frac{\frac{b - a}{a}}{b}}{2} \cdot \frac{\mathsf{PI}\left(\right)}{\color{blue}{\left(b + a\right) \cdot \left(b - a\right)}} \]
                      6. Applied rewrites98.9%

                        \[\leadsto \color{blue}{\frac{\frac{\mathsf{PI}\left(\right)}{a + b} \cdot \left(b - a\right)}{\left(b - a\right) \cdot \left(\left(a \cdot b\right) \cdot 2\right)}} \]
                      7. Taylor expanded in a around 0

                        \[\leadsto \frac{\color{blue}{\mathsf{PI}\left(\right)}}{\left(b - a\right) \cdot \left(\left(a \cdot b\right) \cdot 2\right)} \]
                      8. Step-by-step derivation
                        1. lower-PI.f6494.0

                          \[\leadsto \frac{\color{blue}{\mathsf{PI}\left(\right)}}{\left(b - a\right) \cdot \left(\left(a \cdot b\right) \cdot 2\right)} \]
                      9. Applied rewrites94.0%

                        \[\leadsto \frac{\color{blue}{\mathsf{PI}\left(\right)}}{\left(b - a\right) \cdot \left(\left(a \cdot b\right) \cdot 2\right)} \]

                      if -1.28e-70 < b < 2.55000000000000005e-23

                      1. Initial program 76.3%

                        \[\left(\frac{\mathsf{PI}\left(\right)}{2} \cdot \frac{1}{b \cdot b - a \cdot a}\right) \cdot \left(\frac{1}{a} - \frac{1}{b}\right) \]
                      2. Add Preprocessing
                      3. Taylor expanded in a around inf

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

                          \[\leadsto \color{blue}{\frac{\mathsf{PI}\left(\right)}{{a}^{2} \cdot b} \cdot \frac{1}{2}} \]
                        2. lower-*.f64N/A

                          \[\leadsto \color{blue}{\frac{\mathsf{PI}\left(\right)}{{a}^{2} \cdot b} \cdot \frac{1}{2}} \]
                        3. associate-/r*N/A

                          \[\leadsto \color{blue}{\frac{\frac{\mathsf{PI}\left(\right)}{{a}^{2}}}{b}} \cdot \frac{1}{2} \]
                        4. lower-/.f64N/A

                          \[\leadsto \color{blue}{\frac{\frac{\mathsf{PI}\left(\right)}{{a}^{2}}}{b}} \cdot \frac{1}{2} \]
                        5. lower-/.f64N/A

                          \[\leadsto \frac{\color{blue}{\frac{\mathsf{PI}\left(\right)}{{a}^{2}}}}{b} \cdot \frac{1}{2} \]
                        6. lower-PI.f64N/A

                          \[\leadsto \frac{\frac{\color{blue}{\mathsf{PI}\left(\right)}}{{a}^{2}}}{b} \cdot \frac{1}{2} \]
                        7. unpow2N/A

                          \[\leadsto \frac{\frac{\mathsf{PI}\left(\right)}{\color{blue}{a \cdot a}}}{b} \cdot \frac{1}{2} \]
                        8. lower-*.f6473.7

                          \[\leadsto \frac{\frac{\mathsf{PI}\left(\right)}{\color{blue}{a \cdot a}}}{b} \cdot 0.5 \]
                      5. Applied rewrites73.7%

                        \[\leadsto \color{blue}{\frac{\frac{\mathsf{PI}\left(\right)}{a \cdot a}}{b} \cdot 0.5} \]
                      6. Step-by-step derivation
                        1. Applied rewrites73.7%

                          \[\leadsto \frac{\mathsf{PI}\left(\right) \cdot 0.5}{\color{blue}{\left(a \cdot a\right) \cdot b}} \]
                        2. Step-by-step derivation
                          1. Applied rewrites90.2%

                            \[\leadsto \frac{\frac{\frac{0.5}{b}}{a}}{a} \cdot \color{blue}{\mathsf{PI}\left(\right)} \]
                          2. Step-by-step derivation
                            1. Applied rewrites90.3%

                              \[\leadsto \frac{\frac{0.5}{a}}{a \cdot b} \cdot \mathsf{PI}\left(\right) \]
                          3. Recombined 2 regimes into one program.
                          4. Final simplification92.5%

                            \[\leadsto \begin{array}{l} \mathbf{if}\;b \leq -1.28 \cdot 10^{-70} \lor \neg \left(b \leq 2.55 \cdot 10^{-23}\right):\\ \;\;\;\;\frac{\mathsf{PI}\left(\right)}{\left(b - a\right) \cdot \left(\left(a \cdot b\right) \cdot 2\right)}\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{0.5}{a}}{a \cdot b} \cdot \mathsf{PI}\left(\right)\\ \end{array} \]
                          5. Add Preprocessing

                          Alternative 6: 89.3% accurate, 1.6× speedup?

                          \[\begin{array}{l} \\ \begin{array}{l} \mathbf{if}\;b \leq -1.28 \cdot 10^{-70} \lor \neg \left(b \leq 2.55 \cdot 10^{-23}\right):\\ \;\;\;\;\frac{\mathsf{PI}\left(\right)}{\left(b - a\right) \cdot \left(\left(a \cdot b\right) \cdot 2\right)}\\ \mathbf{else}:\\ \;\;\;\;\frac{\mathsf{PI}\left(\right)}{b \cdot a} \cdot \frac{0.5}{a}\\ \end{array} \end{array} \]
                          (FPCore (a b)
                           :precision binary64
                           (if (or (<= b -1.28e-70) (not (<= b 2.55e-23)))
                             (/ (PI) (* (- b a) (* (* a b) 2.0)))
                             (* (/ (PI) (* b a)) (/ 0.5 a))))
                          \begin{array}{l}
                          
                          \\
                          \begin{array}{l}
                          \mathbf{if}\;b \leq -1.28 \cdot 10^{-70} \lor \neg \left(b \leq 2.55 \cdot 10^{-23}\right):\\
                          \;\;\;\;\frac{\mathsf{PI}\left(\right)}{\left(b - a\right) \cdot \left(\left(a \cdot b\right) \cdot 2\right)}\\
                          
                          \mathbf{else}:\\
                          \;\;\;\;\frac{\mathsf{PI}\left(\right)}{b \cdot a} \cdot \frac{0.5}{a}\\
                          
                          
                          \end{array}
                          \end{array}
                          
                          Derivation
                          1. Split input into 2 regimes
                          2. if b < -1.28e-70 or 2.55000000000000005e-23 < b

                            1. Initial program 73.0%

                              \[\left(\frac{\mathsf{PI}\left(\right)}{2} \cdot \frac{1}{b \cdot b - a \cdot a}\right) \cdot \left(\frac{1}{a} - \frac{1}{b}\right) \]
                            2. Add Preprocessing
                            3. Step-by-step derivation
                              1. lift-*.f64N/A

                                \[\leadsto \color{blue}{\left(\frac{\mathsf{PI}\left(\right)}{2} \cdot \frac{1}{b \cdot b - a \cdot a}\right) \cdot \left(\frac{1}{a} - \frac{1}{b}\right)} \]
                              2. lift-*.f64N/A

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

                                \[\leadsto \color{blue}{\left(\frac{1}{b \cdot b - a \cdot a} \cdot \frac{\mathsf{PI}\left(\right)}{2}\right)} \cdot \left(\frac{1}{a} - \frac{1}{b}\right) \]
                              4. *-rgt-identityN/A

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

                                \[\leadsto \color{blue}{\left(\left(\frac{\mathsf{PI}\left(\right)}{2} \cdot 1\right) \cdot \frac{1}{b \cdot b - a \cdot a}\right)} \cdot \left(\frac{1}{a} - \frac{1}{b}\right) \]
                              6. associate-*r*N/A

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

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

                                \[\leadsto \color{blue}{\left(\left(\frac{1}{a} - \frac{1}{b}\right) \cdot \frac{1}{b \cdot b - a \cdot a}\right)} \cdot \left(\frac{\mathsf{PI}\left(\right)}{2} \cdot 1\right) \]
                              9. associate-*r*N/A

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

                                \[\leadsto \left(\frac{1}{a} - \frac{1}{b}\right) \cdot \color{blue}{\left(\left(\frac{\mathsf{PI}\left(\right)}{2} \cdot 1\right) \cdot \frac{1}{b \cdot b - a \cdot a}\right)} \]
                            4. Applied rewrites74.7%

                              \[\leadsto \color{blue}{\frac{\frac{\frac{b - a}{a}}{b}}{2 \cdot \left(a + b\right)} \cdot \frac{\mathsf{PI}\left(\right)}{b - a}} \]
                            5. Step-by-step derivation
                              1. lift-*.f64N/A

                                \[\leadsto \color{blue}{\frac{\frac{\frac{b - a}{a}}{b}}{2 \cdot \left(a + b\right)} \cdot \frac{\mathsf{PI}\left(\right)}{b - a}} \]
                              2. lift-/.f64N/A

                                \[\leadsto \color{blue}{\frac{\frac{\frac{b - a}{a}}{b}}{2 \cdot \left(a + b\right)}} \cdot \frac{\mathsf{PI}\left(\right)}{b - a} \]
                              3. lift-/.f64N/A

                                \[\leadsto \frac{\frac{\frac{b - a}{a}}{b}}{2 \cdot \left(a + b\right)} \cdot \color{blue}{\frac{\mathsf{PI}\left(\right)}{b - a}} \]
                              4. frac-timesN/A

                                \[\leadsto \color{blue}{\frac{\frac{\frac{b - a}{a}}{b} \cdot \mathsf{PI}\left(\right)}{\left(2 \cdot \left(a + b\right)\right) \cdot \left(b - a\right)}} \]
                              5. lift-*.f64N/A

                                \[\leadsto \frac{\color{blue}{\frac{\frac{b - a}{a}}{b} \cdot \mathsf{PI}\left(\right)}}{\left(2 \cdot \left(a + b\right)\right) \cdot \left(b - a\right)} \]
                              6. lift-*.f64N/A

                                \[\leadsto \frac{\frac{\frac{b - a}{a}}{b} \cdot \mathsf{PI}\left(\right)}{\color{blue}{\left(2 \cdot \left(a + b\right)\right) \cdot \left(b - a\right)}} \]
                              7. lift-*.f64N/A

                                \[\leadsto \frac{\color{blue}{\frac{\frac{b - a}{a}}{b} \cdot \mathsf{PI}\left(\right)}}{\left(2 \cdot \left(a + b\right)\right) \cdot \left(b - a\right)} \]
                              8. lift-*.f64N/A

                                \[\leadsto \frac{\frac{\frac{b - a}{a}}{b} \cdot \mathsf{PI}\left(\right)}{\color{blue}{\left(2 \cdot \left(a + b\right)\right) \cdot \left(b - a\right)}} \]
                              9. lift-*.f64N/A

                                \[\leadsto \frac{\frac{\frac{b - a}{a}}{b} \cdot \mathsf{PI}\left(\right)}{\color{blue}{\left(2 \cdot \left(a + b\right)\right)} \cdot \left(b - a\right)} \]
                              10. associate-*l*N/A

                                \[\leadsto \frac{\frac{\frac{b - a}{a}}{b} \cdot \mathsf{PI}\left(\right)}{\color{blue}{2 \cdot \left(\left(a + b\right) \cdot \left(b - a\right)\right)}} \]
                              11. lift-+.f64N/A

                                \[\leadsto \frac{\frac{\frac{b - a}{a}}{b} \cdot \mathsf{PI}\left(\right)}{2 \cdot \left(\color{blue}{\left(a + b\right)} \cdot \left(b - a\right)\right)} \]
                              12. +-commutativeN/A

                                \[\leadsto \frac{\frac{\frac{b - a}{a}}{b} \cdot \mathsf{PI}\left(\right)}{2 \cdot \left(\color{blue}{\left(b + a\right)} \cdot \left(b - a\right)\right)} \]
                              13. lift--.f64N/A

                                \[\leadsto \frac{\frac{\frac{b - a}{a}}{b} \cdot \mathsf{PI}\left(\right)}{2 \cdot \left(\left(b + a\right) \cdot \color{blue}{\left(b - a\right)}\right)} \]
                              14. difference-of-squaresN/A

                                \[\leadsto \frac{\frac{\frac{b - a}{a}}{b} \cdot \mathsf{PI}\left(\right)}{2 \cdot \color{blue}{\left(b \cdot b - a \cdot a\right)}} \]
                              15. times-fracN/A

                                \[\leadsto \color{blue}{\frac{\frac{\frac{b - a}{a}}{b}}{2} \cdot \frac{\mathsf{PI}\left(\right)}{b \cdot b - a \cdot a}} \]
                              16. difference-of-squaresN/A

                                \[\leadsto \frac{\frac{\frac{b - a}{a}}{b}}{2} \cdot \frac{\mathsf{PI}\left(\right)}{\color{blue}{\left(b + a\right) \cdot \left(b - a\right)}} \]
                            6. Applied rewrites98.9%

                              \[\leadsto \color{blue}{\frac{\frac{\mathsf{PI}\left(\right)}{a + b} \cdot \left(b - a\right)}{\left(b - a\right) \cdot \left(\left(a \cdot b\right) \cdot 2\right)}} \]
                            7. Taylor expanded in a around 0

                              \[\leadsto \frac{\color{blue}{\mathsf{PI}\left(\right)}}{\left(b - a\right) \cdot \left(\left(a \cdot b\right) \cdot 2\right)} \]
                            8. Step-by-step derivation
                              1. lower-PI.f6494.0

                                \[\leadsto \frac{\color{blue}{\mathsf{PI}\left(\right)}}{\left(b - a\right) \cdot \left(\left(a \cdot b\right) \cdot 2\right)} \]
                            9. Applied rewrites94.0%

                              \[\leadsto \frac{\color{blue}{\mathsf{PI}\left(\right)}}{\left(b - a\right) \cdot \left(\left(a \cdot b\right) \cdot 2\right)} \]

                            if -1.28e-70 < b < 2.55000000000000005e-23

                            1. Initial program 76.3%

                              \[\left(\frac{\mathsf{PI}\left(\right)}{2} \cdot \frac{1}{b \cdot b - a \cdot a}\right) \cdot \left(\frac{1}{a} - \frac{1}{b}\right) \]
                            2. Add Preprocessing
                            3. Taylor expanded in a around inf

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

                                \[\leadsto \color{blue}{\frac{\mathsf{PI}\left(\right)}{{a}^{2} \cdot b} \cdot \frac{1}{2}} \]
                              2. lower-*.f64N/A

                                \[\leadsto \color{blue}{\frac{\mathsf{PI}\left(\right)}{{a}^{2} \cdot b} \cdot \frac{1}{2}} \]
                              3. associate-/r*N/A

                                \[\leadsto \color{blue}{\frac{\frac{\mathsf{PI}\left(\right)}{{a}^{2}}}{b}} \cdot \frac{1}{2} \]
                              4. lower-/.f64N/A

                                \[\leadsto \color{blue}{\frac{\frac{\mathsf{PI}\left(\right)}{{a}^{2}}}{b}} \cdot \frac{1}{2} \]
                              5. lower-/.f64N/A

                                \[\leadsto \frac{\color{blue}{\frac{\mathsf{PI}\left(\right)}{{a}^{2}}}}{b} \cdot \frac{1}{2} \]
                              6. lower-PI.f64N/A

                                \[\leadsto \frac{\frac{\color{blue}{\mathsf{PI}\left(\right)}}{{a}^{2}}}{b} \cdot \frac{1}{2} \]
                              7. unpow2N/A

                                \[\leadsto \frac{\frac{\mathsf{PI}\left(\right)}{\color{blue}{a \cdot a}}}{b} \cdot \frac{1}{2} \]
                              8. lower-*.f6473.7

                                \[\leadsto \frac{\frac{\mathsf{PI}\left(\right)}{\color{blue}{a \cdot a}}}{b} \cdot 0.5 \]
                            5. Applied rewrites73.7%

                              \[\leadsto \color{blue}{\frac{\frac{\mathsf{PI}\left(\right)}{a \cdot a}}{b} \cdot 0.5} \]
                            6. Step-by-step derivation
                              1. Applied rewrites73.7%

                                \[\leadsto \frac{\mathsf{PI}\left(\right) \cdot 0.5}{\color{blue}{\left(a \cdot a\right) \cdot b}} \]
                              2. Step-by-step derivation
                                1. Applied rewrites90.2%

                                  \[\leadsto \frac{\mathsf{PI}\left(\right)}{b \cdot a} \cdot \color{blue}{\frac{0.5}{a}} \]
                              3. Recombined 2 regimes into one program.
                              4. Final simplification92.5%

                                \[\leadsto \begin{array}{l} \mathbf{if}\;b \leq -1.28 \cdot 10^{-70} \lor \neg \left(b \leq 2.55 \cdot 10^{-23}\right):\\ \;\;\;\;\frac{\mathsf{PI}\left(\right)}{\left(b - a\right) \cdot \left(\left(a \cdot b\right) \cdot 2\right)}\\ \mathbf{else}:\\ \;\;\;\;\frac{\mathsf{PI}\left(\right)}{b \cdot a} \cdot \frac{0.5}{a}\\ \end{array} \]
                              5. Add Preprocessing

                              Alternative 7: 89.2% accurate, 1.7× speedup?

                              \[\begin{array}{l} \\ \begin{array}{l} \mathbf{if}\;b \leq -1.28 \cdot 10^{-70} \lor \neg \left(b \leq 2.55 \cdot 10^{-23}\right):\\ \;\;\;\;\frac{\mathsf{PI}\left(\right)}{\left(b - a\right) \cdot \left(\left(a \cdot b\right) \cdot 2\right)}\\ \mathbf{else}:\\ \;\;\;\;\frac{\mathsf{PI}\left(\right) \cdot 0.5}{\left(b \cdot a\right) \cdot a}\\ \end{array} \end{array} \]
                              (FPCore (a b)
                               :precision binary64
                               (if (or (<= b -1.28e-70) (not (<= b 2.55e-23)))
                                 (/ (PI) (* (- b a) (* (* a b) 2.0)))
                                 (/ (* (PI) 0.5) (* (* b a) a))))
                              \begin{array}{l}
                              
                              \\
                              \begin{array}{l}
                              \mathbf{if}\;b \leq -1.28 \cdot 10^{-70} \lor \neg \left(b \leq 2.55 \cdot 10^{-23}\right):\\
                              \;\;\;\;\frac{\mathsf{PI}\left(\right)}{\left(b - a\right) \cdot \left(\left(a \cdot b\right) \cdot 2\right)}\\
                              
                              \mathbf{else}:\\
                              \;\;\;\;\frac{\mathsf{PI}\left(\right) \cdot 0.5}{\left(b \cdot a\right) \cdot a}\\
                              
                              
                              \end{array}
                              \end{array}
                              
                              Derivation
                              1. Split input into 2 regimes
                              2. if b < -1.28e-70 or 2.55000000000000005e-23 < b

                                1. Initial program 73.0%

                                  \[\left(\frac{\mathsf{PI}\left(\right)}{2} \cdot \frac{1}{b \cdot b - a \cdot a}\right) \cdot \left(\frac{1}{a} - \frac{1}{b}\right) \]
                                2. Add Preprocessing
                                3. Step-by-step derivation
                                  1. lift-*.f64N/A

                                    \[\leadsto \color{blue}{\left(\frac{\mathsf{PI}\left(\right)}{2} \cdot \frac{1}{b \cdot b - a \cdot a}\right) \cdot \left(\frac{1}{a} - \frac{1}{b}\right)} \]
                                  2. lift-*.f64N/A

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

                                    \[\leadsto \color{blue}{\left(\frac{1}{b \cdot b - a \cdot a} \cdot \frac{\mathsf{PI}\left(\right)}{2}\right)} \cdot \left(\frac{1}{a} - \frac{1}{b}\right) \]
                                  4. *-rgt-identityN/A

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

                                    \[\leadsto \color{blue}{\left(\left(\frac{\mathsf{PI}\left(\right)}{2} \cdot 1\right) \cdot \frac{1}{b \cdot b - a \cdot a}\right)} \cdot \left(\frac{1}{a} - \frac{1}{b}\right) \]
                                  6. associate-*r*N/A

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

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

                                    \[\leadsto \color{blue}{\left(\left(\frac{1}{a} - \frac{1}{b}\right) \cdot \frac{1}{b \cdot b - a \cdot a}\right)} \cdot \left(\frac{\mathsf{PI}\left(\right)}{2} \cdot 1\right) \]
                                  9. associate-*r*N/A

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

                                    \[\leadsto \left(\frac{1}{a} - \frac{1}{b}\right) \cdot \color{blue}{\left(\left(\frac{\mathsf{PI}\left(\right)}{2} \cdot 1\right) \cdot \frac{1}{b \cdot b - a \cdot a}\right)} \]
                                4. Applied rewrites74.7%

                                  \[\leadsto \color{blue}{\frac{\frac{\frac{b - a}{a}}{b}}{2 \cdot \left(a + b\right)} \cdot \frac{\mathsf{PI}\left(\right)}{b - a}} \]
                                5. Step-by-step derivation
                                  1. lift-*.f64N/A

                                    \[\leadsto \color{blue}{\frac{\frac{\frac{b - a}{a}}{b}}{2 \cdot \left(a + b\right)} \cdot \frac{\mathsf{PI}\left(\right)}{b - a}} \]
                                  2. lift-/.f64N/A

                                    \[\leadsto \color{blue}{\frac{\frac{\frac{b - a}{a}}{b}}{2 \cdot \left(a + b\right)}} \cdot \frac{\mathsf{PI}\left(\right)}{b - a} \]
                                  3. lift-/.f64N/A

                                    \[\leadsto \frac{\frac{\frac{b - a}{a}}{b}}{2 \cdot \left(a + b\right)} \cdot \color{blue}{\frac{\mathsf{PI}\left(\right)}{b - a}} \]
                                  4. frac-timesN/A

                                    \[\leadsto \color{blue}{\frac{\frac{\frac{b - a}{a}}{b} \cdot \mathsf{PI}\left(\right)}{\left(2 \cdot \left(a + b\right)\right) \cdot \left(b - a\right)}} \]
                                  5. lift-*.f64N/A

                                    \[\leadsto \frac{\color{blue}{\frac{\frac{b - a}{a}}{b} \cdot \mathsf{PI}\left(\right)}}{\left(2 \cdot \left(a + b\right)\right) \cdot \left(b - a\right)} \]
                                  6. lift-*.f64N/A

                                    \[\leadsto \frac{\frac{\frac{b - a}{a}}{b} \cdot \mathsf{PI}\left(\right)}{\color{blue}{\left(2 \cdot \left(a + b\right)\right) \cdot \left(b - a\right)}} \]
                                  7. lift-*.f64N/A

                                    \[\leadsto \frac{\color{blue}{\frac{\frac{b - a}{a}}{b} \cdot \mathsf{PI}\left(\right)}}{\left(2 \cdot \left(a + b\right)\right) \cdot \left(b - a\right)} \]
                                  8. lift-*.f64N/A

                                    \[\leadsto \frac{\frac{\frac{b - a}{a}}{b} \cdot \mathsf{PI}\left(\right)}{\color{blue}{\left(2 \cdot \left(a + b\right)\right) \cdot \left(b - a\right)}} \]
                                  9. lift-*.f64N/A

                                    \[\leadsto \frac{\frac{\frac{b - a}{a}}{b} \cdot \mathsf{PI}\left(\right)}{\color{blue}{\left(2 \cdot \left(a + b\right)\right)} \cdot \left(b - a\right)} \]
                                  10. associate-*l*N/A

                                    \[\leadsto \frac{\frac{\frac{b - a}{a}}{b} \cdot \mathsf{PI}\left(\right)}{\color{blue}{2 \cdot \left(\left(a + b\right) \cdot \left(b - a\right)\right)}} \]
                                  11. lift-+.f64N/A

                                    \[\leadsto \frac{\frac{\frac{b - a}{a}}{b} \cdot \mathsf{PI}\left(\right)}{2 \cdot \left(\color{blue}{\left(a + b\right)} \cdot \left(b - a\right)\right)} \]
                                  12. +-commutativeN/A

                                    \[\leadsto \frac{\frac{\frac{b - a}{a}}{b} \cdot \mathsf{PI}\left(\right)}{2 \cdot \left(\color{blue}{\left(b + a\right)} \cdot \left(b - a\right)\right)} \]
                                  13. lift--.f64N/A

                                    \[\leadsto \frac{\frac{\frac{b - a}{a}}{b} \cdot \mathsf{PI}\left(\right)}{2 \cdot \left(\left(b + a\right) \cdot \color{blue}{\left(b - a\right)}\right)} \]
                                  14. difference-of-squaresN/A

                                    \[\leadsto \frac{\frac{\frac{b - a}{a}}{b} \cdot \mathsf{PI}\left(\right)}{2 \cdot \color{blue}{\left(b \cdot b - a \cdot a\right)}} \]
                                  15. times-fracN/A

                                    \[\leadsto \color{blue}{\frac{\frac{\frac{b - a}{a}}{b}}{2} \cdot \frac{\mathsf{PI}\left(\right)}{b \cdot b - a \cdot a}} \]
                                  16. difference-of-squaresN/A

                                    \[\leadsto \frac{\frac{\frac{b - a}{a}}{b}}{2} \cdot \frac{\mathsf{PI}\left(\right)}{\color{blue}{\left(b + a\right) \cdot \left(b - a\right)}} \]
                                6. Applied rewrites98.9%

                                  \[\leadsto \color{blue}{\frac{\frac{\mathsf{PI}\left(\right)}{a + b} \cdot \left(b - a\right)}{\left(b - a\right) \cdot \left(\left(a \cdot b\right) \cdot 2\right)}} \]
                                7. Taylor expanded in a around 0

                                  \[\leadsto \frac{\color{blue}{\mathsf{PI}\left(\right)}}{\left(b - a\right) \cdot \left(\left(a \cdot b\right) \cdot 2\right)} \]
                                8. Step-by-step derivation
                                  1. lower-PI.f6494.0

                                    \[\leadsto \frac{\color{blue}{\mathsf{PI}\left(\right)}}{\left(b - a\right) \cdot \left(\left(a \cdot b\right) \cdot 2\right)} \]
                                9. Applied rewrites94.0%

                                  \[\leadsto \frac{\color{blue}{\mathsf{PI}\left(\right)}}{\left(b - a\right) \cdot \left(\left(a \cdot b\right) \cdot 2\right)} \]

                                if -1.28e-70 < b < 2.55000000000000005e-23

                                1. Initial program 76.3%

                                  \[\left(\frac{\mathsf{PI}\left(\right)}{2} \cdot \frac{1}{b \cdot b - a \cdot a}\right) \cdot \left(\frac{1}{a} - \frac{1}{b}\right) \]
                                2. Add Preprocessing
                                3. Taylor expanded in a around inf

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

                                    \[\leadsto \color{blue}{\frac{\mathsf{PI}\left(\right)}{{a}^{2} \cdot b} \cdot \frac{1}{2}} \]
                                  2. lower-*.f64N/A

                                    \[\leadsto \color{blue}{\frac{\mathsf{PI}\left(\right)}{{a}^{2} \cdot b} \cdot \frac{1}{2}} \]
                                  3. associate-/r*N/A

                                    \[\leadsto \color{blue}{\frac{\frac{\mathsf{PI}\left(\right)}{{a}^{2}}}{b}} \cdot \frac{1}{2} \]
                                  4. lower-/.f64N/A

                                    \[\leadsto \color{blue}{\frac{\frac{\mathsf{PI}\left(\right)}{{a}^{2}}}{b}} \cdot \frac{1}{2} \]
                                  5. lower-/.f64N/A

                                    \[\leadsto \frac{\color{blue}{\frac{\mathsf{PI}\left(\right)}{{a}^{2}}}}{b} \cdot \frac{1}{2} \]
                                  6. lower-PI.f64N/A

                                    \[\leadsto \frac{\frac{\color{blue}{\mathsf{PI}\left(\right)}}{{a}^{2}}}{b} \cdot \frac{1}{2} \]
                                  7. unpow2N/A

                                    \[\leadsto \frac{\frac{\mathsf{PI}\left(\right)}{\color{blue}{a \cdot a}}}{b} \cdot \frac{1}{2} \]
                                  8. lower-*.f6473.7

                                    \[\leadsto \frac{\frac{\mathsf{PI}\left(\right)}{\color{blue}{a \cdot a}}}{b} \cdot 0.5 \]
                                5. Applied rewrites73.7%

                                  \[\leadsto \color{blue}{\frac{\frac{\mathsf{PI}\left(\right)}{a \cdot a}}{b} \cdot 0.5} \]
                                6. Step-by-step derivation
                                  1. Applied rewrites73.7%

                                    \[\leadsto \frac{\mathsf{PI}\left(\right) \cdot 0.5}{\color{blue}{\left(a \cdot a\right) \cdot b}} \]
                                  2. Step-by-step derivation
                                    1. Applied rewrites89.7%

                                      \[\leadsto \frac{\mathsf{PI}\left(\right) \cdot 0.5}{\left(b \cdot a\right) \cdot \color{blue}{a}} \]
                                  3. Recombined 2 regimes into one program.
                                  4. Final simplification92.3%

                                    \[\leadsto \begin{array}{l} \mathbf{if}\;b \leq -1.28 \cdot 10^{-70} \lor \neg \left(b \leq 2.55 \cdot 10^{-23}\right):\\ \;\;\;\;\frac{\mathsf{PI}\left(\right)}{\left(b - a\right) \cdot \left(\left(a \cdot b\right) \cdot 2\right)}\\ \mathbf{else}:\\ \;\;\;\;\frac{\mathsf{PI}\left(\right) \cdot 0.5}{\left(b \cdot a\right) \cdot a}\\ \end{array} \]
                                  5. Add Preprocessing

                                  Alternative 8: 81.3% accurate, 1.8× speedup?

                                  \[\begin{array}{l} \\ \begin{array}{l} \mathbf{if}\;a \leq -9.2 \cdot 10^{+16} \lor \neg \left(a \leq 2.6 \cdot 10^{+28}\right):\\ \;\;\;\;\frac{\mathsf{PI}\left(\right) \cdot 0.5}{\left(b \cdot a\right) \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\mathsf{PI}\left(\right)}{\left(b \cdot b\right) \cdot a} \cdot 0.5\\ \end{array} \end{array} \]
                                  (FPCore (a b)
                                   :precision binary64
                                   (if (or (<= a -9.2e+16) (not (<= a 2.6e+28)))
                                     (/ (* (PI) 0.5) (* (* b a) a))
                                     (* (/ (PI) (* (* b b) a)) 0.5)))
                                  \begin{array}{l}
                                  
                                  \\
                                  \begin{array}{l}
                                  \mathbf{if}\;a \leq -9.2 \cdot 10^{+16} \lor \neg \left(a \leq 2.6 \cdot 10^{+28}\right):\\
                                  \;\;\;\;\frac{\mathsf{PI}\left(\right) \cdot 0.5}{\left(b \cdot a\right) \cdot a}\\
                                  
                                  \mathbf{else}:\\
                                  \;\;\;\;\frac{\mathsf{PI}\left(\right)}{\left(b \cdot b\right) \cdot a} \cdot 0.5\\
                                  
                                  
                                  \end{array}
                                  \end{array}
                                  
                                  Derivation
                                  1. Split input into 2 regimes
                                  2. if a < -9.2e16 or 2.6000000000000002e28 < a

                                    1. Initial program 69.5%

                                      \[\left(\frac{\mathsf{PI}\left(\right)}{2} \cdot \frac{1}{b \cdot b - a \cdot a}\right) \cdot \left(\frac{1}{a} - \frac{1}{b}\right) \]
                                    2. Add Preprocessing
                                    3. Taylor expanded in a around inf

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

                                        \[\leadsto \color{blue}{\frac{\mathsf{PI}\left(\right)}{{a}^{2} \cdot b} \cdot \frac{1}{2}} \]
                                      2. lower-*.f64N/A

                                        \[\leadsto \color{blue}{\frac{\mathsf{PI}\left(\right)}{{a}^{2} \cdot b} \cdot \frac{1}{2}} \]
                                      3. associate-/r*N/A

                                        \[\leadsto \color{blue}{\frac{\frac{\mathsf{PI}\left(\right)}{{a}^{2}}}{b}} \cdot \frac{1}{2} \]
                                      4. lower-/.f64N/A

                                        \[\leadsto \color{blue}{\frac{\frac{\mathsf{PI}\left(\right)}{{a}^{2}}}{b}} \cdot \frac{1}{2} \]
                                      5. lower-/.f64N/A

                                        \[\leadsto \frac{\color{blue}{\frac{\mathsf{PI}\left(\right)}{{a}^{2}}}}{b} \cdot \frac{1}{2} \]
                                      6. lower-PI.f64N/A

                                        \[\leadsto \frac{\frac{\color{blue}{\mathsf{PI}\left(\right)}}{{a}^{2}}}{b} \cdot \frac{1}{2} \]
                                      7. unpow2N/A

                                        \[\leadsto \frac{\frac{\mathsf{PI}\left(\right)}{\color{blue}{a \cdot a}}}{b} \cdot \frac{1}{2} \]
                                      8. lower-*.f6481.3

                                        \[\leadsto \frac{\frac{\mathsf{PI}\left(\right)}{\color{blue}{a \cdot a}}}{b} \cdot 0.5 \]
                                    5. Applied rewrites81.3%

                                      \[\leadsto \color{blue}{\frac{\frac{\mathsf{PI}\left(\right)}{a \cdot a}}{b} \cdot 0.5} \]
                                    6. Step-by-step derivation
                                      1. Applied rewrites81.7%

                                        \[\leadsto \frac{\mathsf{PI}\left(\right) \cdot 0.5}{\color{blue}{\left(a \cdot a\right) \cdot b}} \]
                                      2. Step-by-step derivation
                                        1. Applied rewrites95.6%

                                          \[\leadsto \frac{\mathsf{PI}\left(\right) \cdot 0.5}{\left(b \cdot a\right) \cdot \color{blue}{a}} \]

                                        if -9.2e16 < a < 2.6000000000000002e28

                                        1. Initial program 78.6%

                                          \[\left(\frac{\mathsf{PI}\left(\right)}{2} \cdot \frac{1}{b \cdot b - a \cdot a}\right) \cdot \left(\frac{1}{a} - \frac{1}{b}\right) \]
                                        2. Add Preprocessing
                                        3. Step-by-step derivation
                                          1. lift-*.f64N/A

                                            \[\leadsto \color{blue}{\left(\frac{\mathsf{PI}\left(\right)}{2} \cdot \frac{1}{b \cdot b - a \cdot a}\right) \cdot \left(\frac{1}{a} - \frac{1}{b}\right)} \]
                                          2. lift-*.f64N/A

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

                                            \[\leadsto \color{blue}{\left(\frac{1}{b \cdot b - a \cdot a} \cdot \frac{\mathsf{PI}\left(\right)}{2}\right)} \cdot \left(\frac{1}{a} - \frac{1}{b}\right) \]
                                          4. *-rgt-identityN/A

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

                                            \[\leadsto \color{blue}{\left(\left(\frac{\mathsf{PI}\left(\right)}{2} \cdot 1\right) \cdot \frac{1}{b \cdot b - a \cdot a}\right)} \cdot \left(\frac{1}{a} - \frac{1}{b}\right) \]
                                          6. associate-*r*N/A

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

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

                                            \[\leadsto \color{blue}{\left(\left(\frac{1}{a} - \frac{1}{b}\right) \cdot \frac{1}{b \cdot b - a \cdot a}\right)} \cdot \left(\frac{\mathsf{PI}\left(\right)}{2} \cdot 1\right) \]
                                          9. associate-*r*N/A

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

                                            \[\leadsto \left(\frac{1}{a} - \frac{1}{b}\right) \cdot \color{blue}{\left(\left(\frac{\mathsf{PI}\left(\right)}{2} \cdot 1\right) \cdot \frac{1}{b \cdot b - a \cdot a}\right)} \]
                                        4. Applied rewrites71.7%

                                          \[\leadsto \color{blue}{\frac{\frac{\frac{b - a}{a}}{b}}{2 \cdot \left(a + b\right)} \cdot \frac{\mathsf{PI}\left(\right)}{b - a}} \]
                                        5. Taylor expanded in a around 0

                                          \[\leadsto \color{blue}{\frac{1}{2} \cdot \frac{\mathsf{PI}\left(\right)}{a \cdot {b}^{2}}} \]
                                        6. Step-by-step derivation
                                          1. *-commutativeN/A

                                            \[\leadsto \color{blue}{\frac{\mathsf{PI}\left(\right)}{a \cdot {b}^{2}} \cdot \frac{1}{2}} \]
                                          2. lower-*.f64N/A

                                            \[\leadsto \color{blue}{\frac{\mathsf{PI}\left(\right)}{a \cdot {b}^{2}} \cdot \frac{1}{2}} \]
                                          3. lower-/.f64N/A

                                            \[\leadsto \color{blue}{\frac{\mathsf{PI}\left(\right)}{a \cdot {b}^{2}}} \cdot \frac{1}{2} \]
                                          4. lower-PI.f64N/A

                                            \[\leadsto \frac{\color{blue}{\mathsf{PI}\left(\right)}}{a \cdot {b}^{2}} \cdot \frac{1}{2} \]
                                          5. *-commutativeN/A

                                            \[\leadsto \frac{\mathsf{PI}\left(\right)}{\color{blue}{{b}^{2} \cdot a}} \cdot \frac{1}{2} \]
                                          6. lower-*.f64N/A

                                            \[\leadsto \frac{\mathsf{PI}\left(\right)}{\color{blue}{{b}^{2} \cdot a}} \cdot \frac{1}{2} \]
                                          7. unpow2N/A

                                            \[\leadsto \frac{\mathsf{PI}\left(\right)}{\color{blue}{\left(b \cdot b\right)} \cdot a} \cdot \frac{1}{2} \]
                                          8. lower-*.f6471.7

                                            \[\leadsto \frac{\mathsf{PI}\left(\right)}{\color{blue}{\left(b \cdot b\right)} \cdot a} \cdot 0.5 \]
                                        7. Applied rewrites71.7%

                                          \[\leadsto \color{blue}{\frac{\mathsf{PI}\left(\right)}{\left(b \cdot b\right) \cdot a} \cdot 0.5} \]
                                      3. Recombined 2 regimes into one program.
                                      4. Final simplification82.9%

                                        \[\leadsto \begin{array}{l} \mathbf{if}\;a \leq -9.2 \cdot 10^{+16} \lor \neg \left(a \leq 2.6 \cdot 10^{+28}\right):\\ \;\;\;\;\frac{\mathsf{PI}\left(\right) \cdot 0.5}{\left(b \cdot a\right) \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\mathsf{PI}\left(\right)}{\left(b \cdot b\right) \cdot a} \cdot 0.5\\ \end{array} \]
                                      5. Add Preprocessing

                                      Alternative 9: 61.7% accurate, 2.6× speedup?

                                      \[\begin{array}{l} \\ \frac{\mathsf{PI}\left(\right) \cdot 0.5}{\left(b \cdot a\right) \cdot a} \end{array} \]
                                      (FPCore (a b) :precision binary64 (/ (* (PI) 0.5) (* (* b a) a)))
                                      \begin{array}{l}
                                      
                                      \\
                                      \frac{\mathsf{PI}\left(\right) \cdot 0.5}{\left(b \cdot a\right) \cdot a}
                                      \end{array}
                                      
                                      Derivation
                                      1. Initial program 74.3%

                                        \[\left(\frac{\mathsf{PI}\left(\right)}{2} \cdot \frac{1}{b \cdot b - a \cdot a}\right) \cdot \left(\frac{1}{a} - \frac{1}{b}\right) \]
                                      2. Add Preprocessing
                                      3. Taylor expanded in a around inf

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

                                          \[\leadsto \color{blue}{\frac{\mathsf{PI}\left(\right)}{{a}^{2} \cdot b} \cdot \frac{1}{2}} \]
                                        2. lower-*.f64N/A

                                          \[\leadsto \color{blue}{\frac{\mathsf{PI}\left(\right)}{{a}^{2} \cdot b} \cdot \frac{1}{2}} \]
                                        3. associate-/r*N/A

                                          \[\leadsto \color{blue}{\frac{\frac{\mathsf{PI}\left(\right)}{{a}^{2}}}{b}} \cdot \frac{1}{2} \]
                                        4. lower-/.f64N/A

                                          \[\leadsto \color{blue}{\frac{\frac{\mathsf{PI}\left(\right)}{{a}^{2}}}{b}} \cdot \frac{1}{2} \]
                                        5. lower-/.f64N/A

                                          \[\leadsto \frac{\color{blue}{\frac{\mathsf{PI}\left(\right)}{{a}^{2}}}}{b} \cdot \frac{1}{2} \]
                                        6. lower-PI.f64N/A

                                          \[\leadsto \frac{\frac{\color{blue}{\mathsf{PI}\left(\right)}}{{a}^{2}}}{b} \cdot \frac{1}{2} \]
                                        7. unpow2N/A

                                          \[\leadsto \frac{\frac{\mathsf{PI}\left(\right)}{\color{blue}{a \cdot a}}}{b} \cdot \frac{1}{2} \]
                                        8. lower-*.f6455.9

                                          \[\leadsto \frac{\frac{\mathsf{PI}\left(\right)}{\color{blue}{a \cdot a}}}{b} \cdot 0.5 \]
                                      5. Applied rewrites55.9%

                                        \[\leadsto \color{blue}{\frac{\frac{\mathsf{PI}\left(\right)}{a \cdot a}}{b} \cdot 0.5} \]
                                      6. Step-by-step derivation
                                        1. Applied rewrites56.1%

                                          \[\leadsto \frac{\mathsf{PI}\left(\right) \cdot 0.5}{\color{blue}{\left(a \cdot a\right) \cdot b}} \]
                                        2. Step-by-step derivation
                                          1. Applied rewrites62.6%

                                            \[\leadsto \frac{\mathsf{PI}\left(\right) \cdot 0.5}{\left(b \cdot a\right) \cdot \color{blue}{a}} \]
                                          2. Final simplification62.6%

                                            \[\leadsto \frac{\mathsf{PI}\left(\right) \cdot 0.5}{\left(b \cdot a\right) \cdot a} \]
                                          3. Add Preprocessing

                                          Alternative 10: 56.3% accurate, 2.6× speedup?

                                          \[\begin{array}{l} \\ \frac{\mathsf{PI}\left(\right) \cdot 0.5}{\left(a \cdot a\right) \cdot b} \end{array} \]
                                          (FPCore (a b) :precision binary64 (/ (* (PI) 0.5) (* (* a a) b)))
                                          \begin{array}{l}
                                          
                                          \\
                                          \frac{\mathsf{PI}\left(\right) \cdot 0.5}{\left(a \cdot a\right) \cdot b}
                                          \end{array}
                                          
                                          Derivation
                                          1. Initial program 74.3%

                                            \[\left(\frac{\mathsf{PI}\left(\right)}{2} \cdot \frac{1}{b \cdot b - a \cdot a}\right) \cdot \left(\frac{1}{a} - \frac{1}{b}\right) \]
                                          2. Add Preprocessing
                                          3. Taylor expanded in a around inf

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

                                              \[\leadsto \color{blue}{\frac{\mathsf{PI}\left(\right)}{{a}^{2} \cdot b} \cdot \frac{1}{2}} \]
                                            2. lower-*.f64N/A

                                              \[\leadsto \color{blue}{\frac{\mathsf{PI}\left(\right)}{{a}^{2} \cdot b} \cdot \frac{1}{2}} \]
                                            3. associate-/r*N/A

                                              \[\leadsto \color{blue}{\frac{\frac{\mathsf{PI}\left(\right)}{{a}^{2}}}{b}} \cdot \frac{1}{2} \]
                                            4. lower-/.f64N/A

                                              \[\leadsto \color{blue}{\frac{\frac{\mathsf{PI}\left(\right)}{{a}^{2}}}{b}} \cdot \frac{1}{2} \]
                                            5. lower-/.f64N/A

                                              \[\leadsto \frac{\color{blue}{\frac{\mathsf{PI}\left(\right)}{{a}^{2}}}}{b} \cdot \frac{1}{2} \]
                                            6. lower-PI.f64N/A

                                              \[\leadsto \frac{\frac{\color{blue}{\mathsf{PI}\left(\right)}}{{a}^{2}}}{b} \cdot \frac{1}{2} \]
                                            7. unpow2N/A

                                              \[\leadsto \frac{\frac{\mathsf{PI}\left(\right)}{\color{blue}{a \cdot a}}}{b} \cdot \frac{1}{2} \]
                                            8. lower-*.f6455.9

                                              \[\leadsto \frac{\frac{\mathsf{PI}\left(\right)}{\color{blue}{a \cdot a}}}{b} \cdot 0.5 \]
                                          5. Applied rewrites55.9%

                                            \[\leadsto \color{blue}{\frac{\frac{\mathsf{PI}\left(\right)}{a \cdot a}}{b} \cdot 0.5} \]
                                          6. Step-by-step derivation
                                            1. Applied rewrites56.1%

                                              \[\leadsto \frac{\mathsf{PI}\left(\right) \cdot 0.5}{\color{blue}{\left(a \cdot a\right) \cdot b}} \]
                                            2. Final simplification56.1%

                                              \[\leadsto \frac{\mathsf{PI}\left(\right) \cdot 0.5}{\left(a \cdot a\right) \cdot b} \]
                                            3. Add Preprocessing

                                            Alternative 11: 56.3% accurate, 2.6× speedup?

                                            \[\begin{array}{l} \\ \frac{0.5}{\left(a \cdot a\right) \cdot b} \cdot \mathsf{PI}\left(\right) \end{array} \]
                                            (FPCore (a b) :precision binary64 (* (/ 0.5 (* (* a a) b)) (PI)))
                                            \begin{array}{l}
                                            
                                            \\
                                            \frac{0.5}{\left(a \cdot a\right) \cdot b} \cdot \mathsf{PI}\left(\right)
                                            \end{array}
                                            
                                            Derivation
                                            1. Initial program 74.3%

                                              \[\left(\frac{\mathsf{PI}\left(\right)}{2} \cdot \frac{1}{b \cdot b - a \cdot a}\right) \cdot \left(\frac{1}{a} - \frac{1}{b}\right) \]
                                            2. Add Preprocessing
                                            3. Taylor expanded in a around inf

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

                                                \[\leadsto \color{blue}{\frac{\mathsf{PI}\left(\right)}{{a}^{2} \cdot b} \cdot \frac{1}{2}} \]
                                              2. lower-*.f64N/A

                                                \[\leadsto \color{blue}{\frac{\mathsf{PI}\left(\right)}{{a}^{2} \cdot b} \cdot \frac{1}{2}} \]
                                              3. associate-/r*N/A

                                                \[\leadsto \color{blue}{\frac{\frac{\mathsf{PI}\left(\right)}{{a}^{2}}}{b}} \cdot \frac{1}{2} \]
                                              4. lower-/.f64N/A

                                                \[\leadsto \color{blue}{\frac{\frac{\mathsf{PI}\left(\right)}{{a}^{2}}}{b}} \cdot \frac{1}{2} \]
                                              5. lower-/.f64N/A

                                                \[\leadsto \frac{\color{blue}{\frac{\mathsf{PI}\left(\right)}{{a}^{2}}}}{b} \cdot \frac{1}{2} \]
                                              6. lower-PI.f64N/A

                                                \[\leadsto \frac{\frac{\color{blue}{\mathsf{PI}\left(\right)}}{{a}^{2}}}{b} \cdot \frac{1}{2} \]
                                              7. unpow2N/A

                                                \[\leadsto \frac{\frac{\mathsf{PI}\left(\right)}{\color{blue}{a \cdot a}}}{b} \cdot \frac{1}{2} \]
                                              8. lower-*.f6455.9

                                                \[\leadsto \frac{\frac{\mathsf{PI}\left(\right)}{\color{blue}{a \cdot a}}}{b} \cdot 0.5 \]
                                            5. Applied rewrites55.9%

                                              \[\leadsto \color{blue}{\frac{\frac{\mathsf{PI}\left(\right)}{a \cdot a}}{b} \cdot 0.5} \]
                                            6. Step-by-step derivation
                                              1. Applied rewrites56.1%

                                                \[\leadsto \frac{\mathsf{PI}\left(\right) \cdot 0.5}{\color{blue}{\left(a \cdot a\right) \cdot b}} \]
                                              2. Step-by-step derivation
                                                1. Applied rewrites62.6%

                                                  \[\leadsto \frac{\frac{\frac{0.5}{b}}{a}}{a} \cdot \color{blue}{\mathsf{PI}\left(\right)} \]
                                                2. Step-by-step derivation
                                                  1. Applied rewrites56.0%

                                                    \[\leadsto \frac{0.5}{\left(a \cdot a\right) \cdot b} \cdot \mathsf{PI}\left(\right) \]
                                                  2. Final simplification56.0%

                                                    \[\leadsto \frac{0.5}{\left(a \cdot a\right) \cdot b} \cdot \mathsf{PI}\left(\right) \]
                                                  3. Add Preprocessing

                                                  Reproduce

                                                  ?
                                                  herbie shell --seed 2024358 
                                                  (FPCore (a b)
                                                    :name "NMSE Section 6.1 mentioned, B"
                                                    :precision binary64
                                                    (* (* (/ (PI) 2.0) (/ 1.0 (- (* b b) (* a a)))) (- (/ 1.0 a) (/ 1.0 b))))