Initial program 0.1
\[\left(\frac{m \cdot \left(1 - m\right)}{v} - 1\right) \cdot \left(1 - m\right)
\]
Simplified0.1
\[\leadsto \color{blue}{\left(1 - m\right) \cdot \mathsf{fma}\left(1 - m, \frac{m}{v}, -1\right)}
\]
Proof
(*.f64 (-.f64 1 m) (fma.f64 (-.f64 1 m) (/.f64 m v) -1)): 0 points increase in error, 0 points decrease in error
(*.f64 (-.f64 1 m) (fma.f64 (-.f64 1 m) (/.f64 m v) (Rewrite<= metadata-eval (neg.f64 1)))): 0 points increase in error, 0 points decrease in error
(*.f64 (-.f64 1 m) (Rewrite<= fma-neg_binary64 (-.f64 (*.f64 (-.f64 1 m) (/.f64 m v)) 1))): 1 points increase in error, 0 points decrease in error
(*.f64 (-.f64 1 m) (-.f64 (Rewrite<= *-commutative_binary64 (*.f64 (/.f64 m v) (-.f64 1 m))) 1)): 0 points increase in error, 0 points decrease in error
(*.f64 (-.f64 1 m) (-.f64 (Rewrite=> associate-*l/_binary64 (/.f64 (*.f64 m (-.f64 1 m)) v)) 1)): 11 points increase in error, 11 points decrease in error
(Rewrite<= *-commutative_binary64 (*.f64 (-.f64 (/.f64 (*.f64 m (-.f64 1 m)) v) 1) (-.f64 1 m))): 0 points increase in error, 0 points decrease in error
Taylor expanded in v around 0 0.1
\[\leadsto \color{blue}{\frac{m \cdot {\left(1 - m\right)}^{2}}{v} + -1 \cdot \left(1 - m\right)}
\]
Simplified0.1
\[\leadsto \color{blue}{m + \mathsf{fma}\left(\frac{m}{v}, {\left(1 - m\right)}^{2}, -1\right)}
\]
Proof
(+.f64 m (fma.f64 (/.f64 m v) (pow.f64 (-.f64 1 m) 2) -1)): 0 points increase in error, 0 points decrease in error
(+.f64 m (Rewrite<= fma-def_binary64 (+.f64 (*.f64 (/.f64 m v) (pow.f64 (-.f64 1 m) 2)) -1))): 1 points increase in error, 0 points decrease in error
(+.f64 m (+.f64 (Rewrite=> associate-*l/_binary64 (/.f64 (*.f64 m (pow.f64 (-.f64 1 m) 2)) v)) -1)): 11 points increase in error, 12 points decrease in error
(Rewrite<= +-commutative_binary64 (+.f64 (+.f64 (/.f64 (*.f64 m (pow.f64 (-.f64 1 m) 2)) v) -1) m)): 0 points increase in error, 0 points decrease in error
(Rewrite<= associate-+r+_binary64 (+.f64 (/.f64 (*.f64 m (pow.f64 (-.f64 1 m) 2)) v) (+.f64 -1 m))): 0 points increase in error, 1 points decrease in error
(+.f64 (/.f64 (*.f64 m (pow.f64 (-.f64 1 m) 2)) v) (+.f64 (Rewrite<= metadata-eval (-.f64 0 1)) m)): 0 points increase in error, 0 points decrease in error
(+.f64 (/.f64 (*.f64 m (pow.f64 (-.f64 1 m) 2)) v) (Rewrite<= associate--r-_binary64 (-.f64 0 (-.f64 1 m)))): 0 points increase in error, 0 points decrease in error
(+.f64 (/.f64 (*.f64 m (pow.f64 (-.f64 1 m) 2)) v) (Rewrite<= neg-sub0_binary64 (neg.f64 (-.f64 1 m)))): 0 points increase in error, 0 points decrease in error
(+.f64 (/.f64 (*.f64 m (pow.f64 (-.f64 1 m) 2)) v) (Rewrite<= mul-1-neg_binary64 (*.f64 -1 (-.f64 1 m)))): 0 points increase in error, 0 points decrease in error
Final simplification0.1
\[\leadsto m + \mathsf{fma}\left(\frac{m}{v}, {\left(1 - m\right)}^{2}, -1\right)
\]