Simplified0.8
\[\leadsto \color{blue}{\sin re \cdot \left({im}^{3} \cdot -0.16666666666666666 + \mathsf{fma}\left({im}^{5}, -0.008333333333333333, -im\right)\right)}
\]
Proof
(*.f64 (sin.f64 re) (+.f64 (*.f64 (pow.f64 im 3) -1/6) (fma.f64 (pow.f64 im 5) -1/120 (neg.f64 im)))): 0 points increase in error, 0 points decrease in error
(*.f64 (sin.f64 re) (+.f64 (Rewrite<= *-commutative_binary64 (*.f64 -1/6 (pow.f64 im 3))) (fma.f64 (pow.f64 im 5) -1/120 (neg.f64 im)))): 0 points increase in error, 0 points decrease in error
(*.f64 (sin.f64 re) (+.f64 (*.f64 -1/6 (pow.f64 im 3)) (Rewrite=> fma-udef_binary64 (+.f64 (*.f64 (pow.f64 im 5) -1/120) (neg.f64 im))))): 0 points increase in error, 1 points decrease in error
(*.f64 (sin.f64 re) (+.f64 (*.f64 -1/6 (pow.f64 im 3)) (+.f64 (Rewrite<= *-commutative_binary64 (*.f64 -1/120 (pow.f64 im 5))) (neg.f64 im)))): 0 points increase in error, 0 points decrease in error
(Rewrite<= distribute-rgt-out_binary64 (+.f64 (*.f64 (*.f64 -1/6 (pow.f64 im 3)) (sin.f64 re)) (*.f64 (+.f64 (*.f64 -1/120 (pow.f64 im 5)) (neg.f64 im)) (sin.f64 re)))): 1 points increase in error, 2 points decrease in error
(+.f64 (Rewrite<= associate-*r*_binary64 (*.f64 -1/6 (*.f64 (pow.f64 im 3) (sin.f64 re)))) (*.f64 (+.f64 (*.f64 -1/120 (pow.f64 im 5)) (neg.f64 im)) (sin.f64 re))): 0 points increase in error, 0 points decrease in error
(+.f64 (*.f64 -1/6 (Rewrite<= *-commutative_binary64 (*.f64 (sin.f64 re) (pow.f64 im 3)))) (*.f64 (+.f64 (*.f64 -1/120 (pow.f64 im 5)) (neg.f64 im)) (sin.f64 re))): 0 points increase in error, 0 points decrease in error
(+.f64 (*.f64 -1/6 (*.f64 (sin.f64 re) (pow.f64 im 3))) (Rewrite<= *-commutative_binary64 (*.f64 (sin.f64 re) (+.f64 (*.f64 -1/120 (pow.f64 im 5)) (neg.f64 im))))): 0 points increase in error, 0 points decrease in error
(+.f64 (*.f64 -1/6 (*.f64 (sin.f64 re) (pow.f64 im 3))) (Rewrite<= distribute-rgt-out_binary64 (+.f64 (*.f64 (*.f64 -1/120 (pow.f64 im 5)) (sin.f64 re)) (*.f64 (neg.f64 im) (sin.f64 re))))): 0 points increase in error, 0 points decrease in error
(+.f64 (*.f64 -1/6 (*.f64 (sin.f64 re) (pow.f64 im 3))) (+.f64 (Rewrite<= associate-*r*_binary64 (*.f64 -1/120 (*.f64 (pow.f64 im 5) (sin.f64 re)))) (*.f64 (neg.f64 im) (sin.f64 re)))): 0 points increase in error, 0 points decrease in error
(+.f64 (*.f64 -1/6 (*.f64 (sin.f64 re) (pow.f64 im 3))) (+.f64 (*.f64 -1/120 (Rewrite<= *-commutative_binary64 (*.f64 (sin.f64 re) (pow.f64 im 5)))) (*.f64 (neg.f64 im) (sin.f64 re)))): 0 points increase in error, 0 points decrease in error
(+.f64 (*.f64 -1/6 (*.f64 (sin.f64 re) (pow.f64 im 3))) (+.f64 (*.f64 -1/120 (*.f64 (sin.f64 re) (pow.f64 im 5))) (Rewrite<= distribute-lft-neg-in_binary64 (neg.f64 (*.f64 im (sin.f64 re)))))): 0 points increase in error, 0 points decrease in error
(+.f64 (*.f64 -1/6 (*.f64 (sin.f64 re) (pow.f64 im 3))) (+.f64 (*.f64 -1/120 (*.f64 (sin.f64 re) (pow.f64 im 5))) (neg.f64 (Rewrite<= *-commutative_binary64 (*.f64 (sin.f64 re) im))))): 0 points increase in error, 0 points decrease in error
(+.f64 (*.f64 -1/6 (*.f64 (sin.f64 re) (pow.f64 im 3))) (+.f64 (*.f64 -1/120 (*.f64 (sin.f64 re) (pow.f64 im 5))) (Rewrite<= mul-1-neg_binary64 (*.f64 -1 (*.f64 (sin.f64 re) im))))): 0 points increase in error, 0 points decrease in error