\[\left({\left({a}^2 + {b}^2\right)}^2 + 4 \cdot \left({a}^2 \cdot \left(1 + a\right) + {b}^2 \cdot \left(1 - 3 \cdot a\right)\right)\right) - 1\]
Test:
Bouland and Aaronson, Equation (25)
Bits:
128 bits
Bits error versus a
Bits error versus b
Time: 2.3 m
Input Error: 0.2
Output Error: 0.1
Log:
Profile: 🕒
\(\left({\left(\sqrt{{a}^2 + {b}^2} \cdot \sqrt{{a}^2 + {b}^2}\right)}^2 + 4 \cdot \left({a}^2 \cdot \left(1 + a\right) + {b}^2 \cdot \left(1 - 3 \cdot a\right)\right)\right) - 1\)
  1. Started with
    \[\left({\left({a}^2 + {b}^2\right)}^2 + 4 \cdot \left({a}^2 \cdot \left(1 + a\right) + {b}^2 \cdot \left(1 - 3 \cdot a\right)\right)\right) - 1\]
    0.2
  2. Using strategy rm
    0.2
  3. Applied add-sqr-sqrt to get
    \[\left(\color{red}{{\left({a}^2 + {b}^2\right)}^2} + 4 \cdot \left({a}^2 \cdot \left(1 + a\right) + {b}^2 \cdot \left(1 - 3 \cdot a\right)\right)\right) - 1 \leadsto \left(\color{blue}{{\left(\sqrt{{\left({a}^2 + {b}^2\right)}^2}\right)}^2} + 4 \cdot \left({a}^2 \cdot \left(1 + a\right) + {b}^2 \cdot \left(1 - 3 \cdot a\right)\right)\right) - 1\]
    0.2
  4. Using strategy rm
    0.2
  5. Applied square-mult to get
    \[\left({\left(\sqrt{\color{red}{{\left({a}^2 + {b}^2\right)}^2}}\right)}^2 + 4 \cdot \left({a}^2 \cdot \left(1 + a\right) + {b}^2 \cdot \left(1 - 3 \cdot a\right)\right)\right) - 1 \leadsto \left({\left(\sqrt{\color{blue}{\left({a}^2 + {b}^2\right) \cdot \left({a}^2 + {b}^2\right)}}\right)}^2 + 4 \cdot \left({a}^2 \cdot \left(1 + a\right) + {b}^2 \cdot \left(1 - 3 \cdot a\right)\right)\right) - 1\]
    0.2
  6. Applied sqrt-prod to get
    \[\left({\color{red}{\left(\sqrt{\left({a}^2 + {b}^2\right) \cdot \left({a}^2 + {b}^2\right)}\right)}}^2 + 4 \cdot \left({a}^2 \cdot \left(1 + a\right) + {b}^2 \cdot \left(1 - 3 \cdot a\right)\right)\right) - 1 \leadsto \left({\color{blue}{\left(\sqrt{{a}^2 + {b}^2} \cdot \sqrt{{a}^2 + {b}^2}\right)}}^2 + 4 \cdot \left({a}^2 \cdot \left(1 + a\right) + {b}^2 \cdot \left(1 - 3 \cdot a\right)\right)\right) - 1\]
    0.1

  7. Removed slow pow expressions

Original test:


(lambda ((a default) (b default))
  #:name "Bouland and Aaronson, Equation (25)"
  (- (+ (sqr (+ (sqr a) (sqr b))) (* 4 (+ (* (sqr a) (+ 1 a)) (* (sqr b) (- 1 (* 3 a)))))) 1))