Simplified61.2
\[\leadsto \color{blue}{\frac{\sqrt{2}}{\sqrt{\frac{\left(x + 1\right) \cdot \mathsf{fma}\left(2 \cdot t, t, \ell \cdot \ell\right)}{x + -1} - \ell \cdot \ell}} \cdot t}
\]
Proof
(*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 (-.f64 (/.f64 (*.f64 (+.f64 x 1) (fma.f64 (*.f64 2 t) t (*.f64 l l))) (+.f64 x -1)) (*.f64 l l)))) t): 0 points increase in error, 0 points decrease in error
(*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 (-.f64 (/.f64 (*.f64 (+.f64 x 1) (Rewrite<= fma-def_binary64 (+.f64 (*.f64 (*.f64 2 t) t) (*.f64 l l)))) (+.f64 x -1)) (*.f64 l l)))) t): 0 points increase in error, 0 points decrease in error
(*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 (-.f64 (/.f64 (*.f64 (+.f64 x 1) (+.f64 (Rewrite<= associate-*r*_binary64 (*.f64 2 (*.f64 t t))) (*.f64 l l))) (+.f64 x -1)) (*.f64 l l)))) t): 0 points increase in error, 0 points decrease in error
(*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 (-.f64 (/.f64 (*.f64 (+.f64 x 1) (Rewrite<= +-commutative_binary64 (+.f64 (*.f64 l l) (*.f64 2 (*.f64 t t))))) (+.f64 x -1)) (*.f64 l l)))) t): 0 points increase in error, 0 points decrease in error
(*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 (-.f64 (/.f64 (*.f64 (+.f64 x 1) (+.f64 (*.f64 l l) (*.f64 2 (*.f64 t t)))) (+.f64 x (Rewrite<= metadata-eval (neg.f64 1)))) (*.f64 l l)))) t): 0 points increase in error, 0 points decrease in error
(*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 (-.f64 (/.f64 (*.f64 (+.f64 x 1) (+.f64 (*.f64 l l) (*.f64 2 (*.f64 t t)))) (Rewrite<= sub-neg_binary64 (-.f64 x 1))) (*.f64 l l)))) t): 0 points increase in error, 0 points decrease in error
(*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 (-.f64 (Rewrite<= associate-*l/_binary64 (*.f64 (/.f64 (+.f64 x 1) (-.f64 x 1)) (+.f64 (*.f64 l l) (*.f64 2 (*.f64 t t))))) (*.f64 l l)))) t): 22 points increase in error, 32 points decrease in error
(Rewrite=> associate-*l/_binary64 (/.f64 (*.f64 (sqrt.f64 2) t) (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x 1) (-.f64 x 1)) (+.f64 (*.f64 l l) (*.f64 2 (*.f64 t t)))) (*.f64 l l))))): 19 points increase in error, 4 points decrease in error
Simplified24.8
\[\leadsto \frac{\sqrt{2}}{\color{blue}{\mathsf{fma}\left(0.5, \frac{2 \cdot \mathsf{fma}\left(\ell, \ell, t \cdot \left(t + t\right)\right)}{\mathsf{hypot}\left(t, t\right) \cdot x}, \mathsf{hypot}\left(t, t\right)\right)}} \cdot t
\]
Proof
(fma.f64 1/2 (/.f64 (*.f64 2 (fma.f64 l l (*.f64 t (+.f64 t t)))) (*.f64 (hypot.f64 t t) x)) (hypot.f64 t t)): 0 points increase in error, 0 points decrease in error
(fma.f64 1/2 (/.f64 (*.f64 (Rewrite<= metadata-eval (+.f64 1 1)) (fma.f64 l l (*.f64 t (+.f64 t t)))) (*.f64 (hypot.f64 t t) x)) (hypot.f64 t t)): 0 points increase in error, 0 points decrease in error
(fma.f64 1/2 (/.f64 (*.f64 (+.f64 1 1) (fma.f64 l l (Rewrite=> distribute-rgt-in_binary64 (+.f64 (*.f64 t t) (*.f64 t t))))) (*.f64 (hypot.f64 t t) x)) (hypot.f64 t t)): 0 points increase in error, 0 points decrease in error
(fma.f64 1/2 (/.f64 (*.f64 (+.f64 1 1) (fma.f64 l l (+.f64 (Rewrite<= unpow2_binary64 (pow.f64 t 2)) (*.f64 t t)))) (*.f64 (hypot.f64 t t) x)) (hypot.f64 t t)): 0 points increase in error, 0 points decrease in error
(fma.f64 1/2 (/.f64 (*.f64 (+.f64 1 1) (fma.f64 l l (+.f64 (pow.f64 t 2) (Rewrite<= unpow2_binary64 (pow.f64 t 2))))) (*.f64 (hypot.f64 t t) x)) (hypot.f64 t t)): 0 points increase in error, 0 points decrease in error
(fma.f64 1/2 (/.f64 (*.f64 (+.f64 1 1) (fma.f64 l l (Rewrite=> count-2_binary64 (*.f64 2 (pow.f64 t 2))))) (*.f64 (hypot.f64 t t) x)) (hypot.f64 t t)): 0 points increase in error, 0 points decrease in error
(fma.f64 1/2 (/.f64 (*.f64 (+.f64 1 1) (Rewrite<= fma-def_binary64 (+.f64 (*.f64 l l) (*.f64 2 (pow.f64 t 2))))) (*.f64 (hypot.f64 t t) x)) (hypot.f64 t t)): 0 points increase in error, 0 points decrease in error
(fma.f64 1/2 (/.f64 (*.f64 (+.f64 1 1) (+.f64 (Rewrite<= unpow2_binary64 (pow.f64 l 2)) (*.f64 2 (pow.f64 t 2)))) (*.f64 (hypot.f64 t t) x)) (hypot.f64 t t)): 0 points increase in error, 0 points decrease in error
(fma.f64 1/2 (/.f64 (*.f64 (+.f64 1 1) (Rewrite=> +-commutative_binary64 (+.f64 (*.f64 2 (pow.f64 t 2)) (pow.f64 l 2)))) (*.f64 (hypot.f64 t t) x)) (hypot.f64 t t)): 0 points increase in error, 0 points decrease in error
(fma.f64 1/2 (/.f64 (*.f64 (+.f64 1 1) (+.f64 (*.f64 2 (Rewrite=> unpow2_binary64 (*.f64 t t))) (pow.f64 l 2))) (*.f64 (hypot.f64 t t) x)) (hypot.f64 t t)): 0 points increase in error, 0 points decrease in error
(fma.f64 1/2 (/.f64 (*.f64 (+.f64 1 1) (+.f64 (*.f64 2 (*.f64 t t)) (Rewrite=> unpow2_binary64 (*.f64 l l)))) (*.f64 (hypot.f64 t t) x)) (hypot.f64 t t)): 0 points increase in error, 0 points decrease in error
(fma.f64 1/2 (/.f64 (*.f64 (+.f64 1 1) (Rewrite<= fma-udef_binary64 (fma.f64 2 (*.f64 t t) (*.f64 l l)))) (*.f64 (hypot.f64 t t) x)) (hypot.f64 t t)): 0 points increase in error, 0 points decrease in error
(fma.f64 1/2 (/.f64 (Rewrite<= distribute-rgt1-in_binary64 (+.f64 (fma.f64 2 (*.f64 t t) (*.f64 l l)) (*.f64 1 (fma.f64 2 (*.f64 t t) (*.f64 l l))))) (*.f64 (hypot.f64 t t) x)) (hypot.f64 t t)): 0 points increase in error, 0 points decrease in error
(fma.f64 1/2 (/.f64 (+.f64 (fma.f64 2 (*.f64 t t) (*.f64 l l)) (*.f64 (Rewrite<= metadata-eval (neg.f64 -1)) (fma.f64 2 (*.f64 t t) (*.f64 l l)))) (*.f64 (hypot.f64 t t) x)) (hypot.f64 t t)): 0 points increase in error, 0 points decrease in error
(fma.f64 1/2 (/.f64 (Rewrite<= cancel-sign-sub-inv_binary64 (-.f64 (fma.f64 2 (*.f64 t t) (*.f64 l l)) (*.f64 -1 (fma.f64 2 (*.f64 t t) (*.f64 l l))))) (*.f64 (hypot.f64 t t) x)) (hypot.f64 t t)): 0 points increase in error, 0 points decrease in error
(fma.f64 1/2 (/.f64 (-.f64 (Rewrite=> fma-udef_binary64 (+.f64 (*.f64 2 (*.f64 t t)) (*.f64 l l))) (*.f64 -1 (fma.f64 2 (*.f64 t t) (*.f64 l l)))) (*.f64 (hypot.f64 t t) x)) (hypot.f64 t t)): 0 points increase in error, 0 points decrease in error
(fma.f64 1/2 (/.f64 (-.f64 (+.f64 (*.f64 2 (Rewrite<= unpow2_binary64 (pow.f64 t 2))) (*.f64 l l)) (*.f64 -1 (fma.f64 2 (*.f64 t t) (*.f64 l l)))) (*.f64 (hypot.f64 t t) x)) (hypot.f64 t t)): 0 points increase in error, 0 points decrease in error
(fma.f64 1/2 (/.f64 (-.f64 (+.f64 (*.f64 2 (pow.f64 t 2)) (Rewrite<= unpow2_binary64 (pow.f64 l 2))) (*.f64 -1 (fma.f64 2 (*.f64 t t) (*.f64 l l)))) (*.f64 (hypot.f64 t t) x)) (hypot.f64 t t)): 0 points increase in error, 0 points decrease in error
(fma.f64 1/2 (/.f64 (-.f64 (Rewrite<= +-commutative_binary64 (+.f64 (pow.f64 l 2) (*.f64 2 (pow.f64 t 2)))) (*.f64 -1 (fma.f64 2 (*.f64 t t) (*.f64 l l)))) (*.f64 (hypot.f64 t t) x)) (hypot.f64 t t)): 0 points increase in error, 0 points decrease in error
(fma.f64 1/2 (/.f64 (-.f64 (+.f64 (pow.f64 l 2) (*.f64 2 (pow.f64 t 2))) (*.f64 -1 (Rewrite=> fma-udef_binary64 (+.f64 (*.f64 2 (*.f64 t t)) (*.f64 l l))))) (*.f64 (hypot.f64 t t) x)) (hypot.f64 t t)): 0 points increase in error, 0 points decrease in error
(fma.f64 1/2 (/.f64 (-.f64 (+.f64 (pow.f64 l 2) (*.f64 2 (pow.f64 t 2))) (*.f64 -1 (+.f64 (*.f64 2 (Rewrite<= unpow2_binary64 (pow.f64 t 2))) (*.f64 l l)))) (*.f64 (hypot.f64 t t) x)) (hypot.f64 t t)): 0 points increase in error, 0 points decrease in error
(fma.f64 1/2 (/.f64 (-.f64 (+.f64 (pow.f64 l 2) (*.f64 2 (pow.f64 t 2))) (*.f64 -1 (+.f64 (*.f64 2 (pow.f64 t 2)) (Rewrite<= unpow2_binary64 (pow.f64 l 2))))) (*.f64 (hypot.f64 t t) x)) (hypot.f64 t t)): 0 points increase in error, 0 points decrease in error
(fma.f64 1/2 (/.f64 (-.f64 (+.f64 (pow.f64 l 2) (*.f64 2 (pow.f64 t 2))) (*.f64 -1 (Rewrite<= +-commutative_binary64 (+.f64 (pow.f64 l 2) (*.f64 2 (pow.f64 t 2)))))) (*.f64 (hypot.f64 t t) x)) (hypot.f64 t t)): 0 points increase in error, 0 points decrease in error
(fma.f64 1/2 (/.f64 (-.f64 (+.f64 (pow.f64 l 2) (*.f64 2 (pow.f64 t 2))) (*.f64 -1 (+.f64 (pow.f64 l 2) (*.f64 2 (pow.f64 t 2))))) (*.f64 (Rewrite<= hypot-def_binary64 (sqrt.f64 (+.f64 (*.f64 t t) (*.f64 t t)))) x)) (hypot.f64 t t)): 37 points increase in error, 1 points decrease in error
(fma.f64 1/2 (/.f64 (-.f64 (+.f64 (pow.f64 l 2) (*.f64 2 (pow.f64 t 2))) (*.f64 -1 (+.f64 (pow.f64 l 2) (*.f64 2 (pow.f64 t 2))))) (*.f64 (sqrt.f64 (+.f64 (Rewrite<= unpow2_binary64 (pow.f64 t 2)) (*.f64 t t))) x)) (hypot.f64 t t)): 0 points increase in error, 0 points decrease in error
(fma.f64 1/2 (/.f64 (-.f64 (+.f64 (pow.f64 l 2) (*.f64 2 (pow.f64 t 2))) (*.f64 -1 (+.f64 (pow.f64 l 2) (*.f64 2 (pow.f64 t 2))))) (*.f64 (sqrt.f64 (+.f64 (pow.f64 t 2) (Rewrite<= unpow2_binary64 (pow.f64 t 2)))) x)) (hypot.f64 t t)): 0 points increase in error, 0 points decrease in error
(fma.f64 1/2 (/.f64 (-.f64 (+.f64 (pow.f64 l 2) (*.f64 2 (pow.f64 t 2))) (*.f64 -1 (+.f64 (pow.f64 l 2) (*.f64 2 (pow.f64 t 2))))) (*.f64 (sqrt.f64 (Rewrite=> count-2_binary64 (*.f64 2 (pow.f64 t 2)))) x)) (hypot.f64 t t)): 0 points increase in error, 0 points decrease in error
(fma.f64 1/2 (/.f64 (-.f64 (+.f64 (pow.f64 l 2) (*.f64 2 (pow.f64 t 2))) (*.f64 -1 (+.f64 (pow.f64 l 2) (*.f64 2 (pow.f64 t 2))))) (*.f64 (sqrt.f64 (*.f64 2 (pow.f64 t 2))) x)) (Rewrite<= hypot-def_binary64 (sqrt.f64 (+.f64 (*.f64 t t) (*.f64 t t))))): 6 points increase in error, 8 points decrease in error
(fma.f64 1/2 (/.f64 (-.f64 (+.f64 (pow.f64 l 2) (*.f64 2 (pow.f64 t 2))) (*.f64 -1 (+.f64 (pow.f64 l 2) (*.f64 2 (pow.f64 t 2))))) (*.f64 (sqrt.f64 (*.f64 2 (pow.f64 t 2))) x)) (sqrt.f64 (+.f64 (Rewrite<= unpow2_binary64 (pow.f64 t 2)) (*.f64 t t)))): 0 points increase in error, 0 points decrease in error
(fma.f64 1/2 (/.f64 (-.f64 (+.f64 (pow.f64 l 2) (*.f64 2 (pow.f64 t 2))) (*.f64 -1 (+.f64 (pow.f64 l 2) (*.f64 2 (pow.f64 t 2))))) (*.f64 (sqrt.f64 (*.f64 2 (pow.f64 t 2))) x)) (sqrt.f64 (+.f64 (pow.f64 t 2) (Rewrite<= unpow2_binary64 (pow.f64 t 2))))): 0 points increase in error, 0 points decrease in error
(fma.f64 1/2 (/.f64 (-.f64 (+.f64 (pow.f64 l 2) (*.f64 2 (pow.f64 t 2))) (*.f64 -1 (+.f64 (pow.f64 l 2) (*.f64 2 (pow.f64 t 2))))) (*.f64 (sqrt.f64 (*.f64 2 (pow.f64 t 2))) x)) (sqrt.f64 (Rewrite=> count-2_binary64 (*.f64 2 (pow.f64 t 2))))): 0 points increase in error, 0 points decrease in error
(Rewrite<= fma-def_binary64 (+.f64 (*.f64 1/2 (/.f64 (-.f64 (+.f64 (pow.f64 l 2) (*.f64 2 (pow.f64 t 2))) (*.f64 -1 (+.f64 (pow.f64 l 2) (*.f64 2 (pow.f64 t 2))))) (*.f64 (sqrt.f64 (*.f64 2 (pow.f64 t 2))) x))) (sqrt.f64 (*.f64 2 (pow.f64 t 2))))): 0 points increase in error, 0 points decrease in error
(Rewrite<= +-commutative_binary64 (+.f64 (sqrt.f64 (*.f64 2 (pow.f64 t 2))) (*.f64 1/2 (/.f64 (-.f64 (+.f64 (pow.f64 l 2) (*.f64 2 (pow.f64 t 2))) (*.f64 -1 (+.f64 (pow.f64 l 2) (*.f64 2 (pow.f64 t 2))))) (*.f64 (sqrt.f64 (*.f64 2 (pow.f64 t 2))) x))))): 0 points increase in error, 0 points decrease in error