Initial program 0.2
\[\left({\left(a \cdot a + b \cdot b\right)}^{2} + 4 \cdot \left(b \cdot b\right)\right) - 1
\]
Taylor expanded in a around 0 0.0
\[\leadsto \left(\color{blue}{\left(2 \cdot \left({a}^{2} \cdot {b}^{2}\right) + \left({a}^{4} + {b}^{4}\right)\right)} + 4 \cdot \left(b \cdot b\right)\right) - 1
\]
Simplified0.0
\[\leadsto \left(\color{blue}{\left(\mathsf{fma}\left(2, \left(a \cdot a\right) \cdot \left(b \cdot b\right), {b}^{4}\right) + {a}^{4}\right)} + 4 \cdot \left(b \cdot b\right)\right) - 1
\]
Proof
(-.f64 (+.f64 (+.f64 (fma.f64 2 (*.f64 (*.f64 a a) (*.f64 b b)) (pow.f64 b 4)) (pow.f64 a 4)) (*.f64 4 (*.f64 b b))) 1): 0 points increase in error, 0 points decrease in error
(-.f64 (+.f64 (+.f64 (fma.f64 2 (*.f64 (Rewrite<= unpow2_binary64 (pow.f64 a 2)) (*.f64 b b)) (pow.f64 b 4)) (pow.f64 a 4)) (*.f64 4 (*.f64 b b))) 1): 0 points increase in error, 0 points decrease in error
(-.f64 (+.f64 (+.f64 (fma.f64 2 (*.f64 (pow.f64 a 2) (Rewrite<= unpow2_binary64 (pow.f64 b 2))) (pow.f64 b 4)) (pow.f64 a 4)) (*.f64 4 (*.f64 b b))) 1): 0 points increase in error, 0 points decrease in error
(-.f64 (+.f64 (+.f64 (Rewrite<= fma-def_binary64 (+.f64 (*.f64 2 (*.f64 (pow.f64 a 2) (pow.f64 b 2))) (pow.f64 b 4))) (pow.f64 a 4)) (*.f64 4 (*.f64 b b))) 1): 0 points increase in error, 0 points decrease in error
(-.f64 (+.f64 (Rewrite<= associate-+r+_binary64 (+.f64 (*.f64 2 (*.f64 (pow.f64 a 2) (pow.f64 b 2))) (+.f64 (pow.f64 b 4) (pow.f64 a 4)))) (*.f64 4 (*.f64 b b))) 1): 0 points increase in error, 0 points decrease in error
(-.f64 (+.f64 (+.f64 (*.f64 2 (*.f64 (pow.f64 a 2) (pow.f64 b 2))) (Rewrite<= +-commutative_binary64 (+.f64 (pow.f64 a 4) (pow.f64 b 4)))) (*.f64 4 (*.f64 b b))) 1): 0 points increase in error, 0 points decrease in error
Final simplification0.0
\[\leadsto \left(\left(\mathsf{fma}\left(2, \left(a \cdot a\right) \cdot \left(b \cdot b\right), {b}^{4}\right) + {a}^{4}\right) + \left(b \cdot b\right) \cdot 4\right) + -1
\]