Initial program 0.2
\[\left(\left(x - \frac{16}{116}\right) \cdot 3\right) \cdot y
\]
Simplified0.2
\[\leadsto \color{blue}{\mathsf{fma}\left(x, 3, -0.41379310344827586\right) \cdot y}
\]
Proof
(*.f64 (fma.f64 x 3 -12/29) y): 0 points increase in error, 0 points decrease in error
(*.f64 (fma.f64 x 3 (Rewrite<= metadata-eval (*.f64 -4/29 3))) y): 0 points increase in error, 0 points decrease in error
(*.f64 (fma.f64 x 3 (*.f64 (Rewrite<= metadata-eval (neg.f64 4/29)) 3)) y): 0 points increase in error, 0 points decrease in error
(*.f64 (fma.f64 x 3 (*.f64 (neg.f64 (Rewrite<= metadata-eval (/.f64 16 116))) 3)) y): 0 points increase in error, 0 points decrease in error
(*.f64 (Rewrite<= fma-def_binary64 (+.f64 (*.f64 x 3) (*.f64 (neg.f64 (/.f64 16 116)) 3))) y): 7 points increase in error, 6 points decrease in error
(*.f64 (Rewrite<= distribute-rgt-in_binary64 (*.f64 3 (+.f64 x (neg.f64 (/.f64 16 116))))) y): 5 points increase in error, 1 points decrease in error
(*.f64 (*.f64 3 (Rewrite<= sub-neg_binary64 (-.f64 x (/.f64 16 116)))) y): 0 points increase in error, 0 points decrease in error
(*.f64 (Rewrite<= *-commutative_binary64 (*.f64 (-.f64 x (/.f64 16 116)) 3)) y): 0 points increase in error, 0 points decrease in error
Applied egg-rr0.2
\[\leadsto \color{blue}{\left(x \cdot 3\right) \cdot y + -0.41379310344827586 \cdot y}
\]
Applied egg-rr0.2
\[\leadsto \color{blue}{\mathsf{fma}\left(y \cdot x, 3, y \cdot -0.41379310344827586\right)}
\]
Final simplification0.2
\[\leadsto \mathsf{fma}\left(y \cdot x, 3, y \cdot -0.41379310344827586\right)
\]