Details

Time bar (total: 10.4s)

analyze780.0ms (7.5%)

Algorithm
search
Search
TrueOtherFalseIter
0%99.7%0.3%0
0%99.7%0.3%1
0%99.7%0.3%2
0%99.7%0.3%3
0%99.7%0.3%4
0%99.7%0.3%5
0%99.7%0.3%6
0%99.7%0.3%7
0%99.7%0.3%8
0%99.7%0.3%9
0%99.7%0.3%10
0%99.7%0.3%11
0%99.7%0.3%12
Compiler

Compiled 25 to 18 computations (28% saved)

sample2.8s (27.2%)

Results
1.9s8256×body256valid
914.0ms3852×body256invalid

preprocess76.0ms (0.7%)

Algorithm
egg-herbie
Rules
436×fma-neg_binary64
431×+-commutative_binary64
427×cancel-sign-sub_binary64
396×associate-+l+_binary64
365×cancel-sign-sub-inv_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0127506
1355506
2947484
32470462
45306462
077
177
Stop Event
unsound
node limit
Calls
Call 1
Inputs
0
1
2
3
4
5
6
Outputs
0
1
0
2
3
2
4
5
4
6
Call 2
Inputs
(+.f64 (-.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 z t) 16)) (/.f64 (*.f64 a b) 4)) c)
(+.f64 (-.f64 (+.f64 (*.f64 y x) (/.f64 (*.f64 z t) 16)) (/.f64 (*.f64 a b) 4)) c)
(+.f64 (-.f64 (+.f64 (*.f64 z y) (/.f64 (*.f64 x t) 16)) (/.f64 (*.f64 a b) 4)) c)
(+.f64 (-.f64 (+.f64 (*.f64 t y) (/.f64 (*.f64 z x) 16)) (/.f64 (*.f64 a b) 4)) c)
(+.f64 (-.f64 (+.f64 (*.f64 a y) (/.f64 (*.f64 z t) 16)) (/.f64 (*.f64 x b) 4)) c)
(+.f64 (-.f64 (+.f64 (*.f64 b y) (/.f64 (*.f64 z t) 16)) (/.f64 (*.f64 a x) 4)) c)
(+.f64 (-.f64 (+.f64 (*.f64 c y) (/.f64 (*.f64 z t) 16)) (/.f64 (*.f64 a b) 4)) x)
(+.f64 (-.f64 (+.f64 (*.f64 x z) (/.f64 (*.f64 y t) 16)) (/.f64 (*.f64 a b) 4)) c)
(+.f64 (-.f64 (+.f64 (*.f64 x t) (/.f64 (*.f64 z y) 16)) (/.f64 (*.f64 a b) 4)) c)
(+.f64 (-.f64 (+.f64 (*.f64 x a) (/.f64 (*.f64 z t) 16)) (/.f64 (*.f64 y b) 4)) c)
(+.f64 (-.f64 (+.f64 (*.f64 x b) (/.f64 (*.f64 z t) 16)) (/.f64 (*.f64 a y) 4)) c)
(+.f64 (-.f64 (+.f64 (*.f64 x c) (/.f64 (*.f64 z t) 16)) (/.f64 (*.f64 a b) 4)) y)
(+.f64 (-.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 t z) 16)) (/.f64 (*.f64 a b) 4)) c)
(+.f64 (-.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 a t) 16)) (/.f64 (*.f64 z b) 4)) c)
(+.f64 (-.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 b t) 16)) (/.f64 (*.f64 a z) 4)) c)
(+.f64 (-.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 c t) 16)) (/.f64 (*.f64 a b) 4)) z)
(+.f64 (-.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 z a) 16)) (/.f64 (*.f64 t b) 4)) c)
(+.f64 (-.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 z b) 16)) (/.f64 (*.f64 a t) 4)) c)
(+.f64 (-.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 z c) 16)) (/.f64 (*.f64 a b) 4)) t)
(+.f64 (-.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 z t) 16)) (/.f64 (*.f64 b a) 4)) c)
(+.f64 (-.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 z t) 16)) (/.f64 (*.f64 c b) 4)) a)
(+.f64 (-.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 z t) 16)) (/.f64 (*.f64 a c) 4)) b)
Outputs
(+.f64 (-.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 z t) 16)) (/.f64 (*.f64 a b) 4)) c)
(+.f64 (-.f64 (fma.f64 x y (/.f64 z (/.f64 16 t))) (/.f64 a (/.f64 4 b))) c)
(+.f64 (-.f64 (fma.f64 x y (*.f64 (/.f64 z 16) t)) (/.f64 a (/.f64 4 b))) c)
(fma.f64 x y (fma.f64 (/.f64 z 16) t (fma.f64 -1 (*.f64 a (/.f64 b 4)) c)))
(fma.f64 x y (fma.f64 z (/.f64 t 16) (-.f64 c (*.f64 a (/.f64 b 4)))))
(+.f64 (fma.f64 x y (fma.f64 z (/.f64 t 16) (*.f64 a (*.f64 -1/4 b)))) c)
(+.f64 (-.f64 (+.f64 (*.f64 y x) (/.f64 (*.f64 z t) 16)) (/.f64 (*.f64 a b) 4)) c)
(+.f64 (-.f64 (fma.f64 x y (/.f64 z (/.f64 16 t))) (/.f64 a (/.f64 4 b))) c)
(+.f64 (-.f64 (fma.f64 x y (*.f64 (/.f64 z 16) t)) (/.f64 a (/.f64 4 b))) c)
(fma.f64 x y (fma.f64 (/.f64 z 16) t (fma.f64 -1 (*.f64 a (/.f64 b 4)) c)))
(fma.f64 x y (fma.f64 z (/.f64 t 16) (-.f64 c (*.f64 a (/.f64 b 4)))))
(+.f64 (fma.f64 x y (fma.f64 z (/.f64 t 16) (*.f64 a (*.f64 -1/4 b)))) c)
(+.f64 (-.f64 (+.f64 (*.f64 z y) (/.f64 (*.f64 x t) 16)) (/.f64 (*.f64 a b) 4)) c)
(-.f64 (fma.f64 z y (/.f64 x (/.f64 16 t))) (-.f64 (/.f64 a (/.f64 4 b)) c))
(+.f64 c (-.f64 (fma.f64 y z (*.f64 (/.f64 x 16) t)) (/.f64 a (/.f64 4 b))))
(fma.f64 y z (fma.f64 (/.f64 x 16) t (fma.f64 -1 (*.f64 a (/.f64 b 4)) c)))
(fma.f64 y z (fma.f64 t (/.f64 x 16) (-.f64 c (*.f64 a (/.f64 b 4)))))
(fma.f64 y z (+.f64 c (fma.f64 t (/.f64 x 16) (*.f64 a (*.f64 -1/4 b)))))
(+.f64 (-.f64 (+.f64 (*.f64 t y) (/.f64 (*.f64 z x) 16)) (/.f64 (*.f64 a b) 4)) c)
(-.f64 (fma.f64 t y (/.f64 z (/.f64 16 x))) (-.f64 (/.f64 a (/.f64 4 b)) c))
(+.f64 c (-.f64 (fma.f64 y t (/.f64 z (/.f64 16 x))) (/.f64 a (/.f64 4 b))))
(fma.f64 y t (fma.f64 (/.f64 z 16) x (fma.f64 -1 (*.f64 a (/.f64 b 4)) c)))
(fma.f64 y t (fma.f64 x (/.f64 z 16) (-.f64 c (*.f64 a (/.f64 b 4)))))
(+.f64 c (fma.f64 y t (fma.f64 x (/.f64 z 16) (*.f64 a (*.f64 -1/4 b)))))
(+.f64 (-.f64 (+.f64 (*.f64 a y) (/.f64 (*.f64 z t) 16)) (/.f64 (*.f64 x b) 4)) c)
(-.f64 (fma.f64 a y (/.f64 z (/.f64 16 t))) (-.f64 (/.f64 x (/.f64 4 b)) c))
(+.f64 c (fma.f64 y a (-.f64 (*.f64 (/.f64 z 16) t) (*.f64 (/.f64 x 4) b))))
(fma.f64 y a (fma.f64 (/.f64 z 16) t (fma.f64 -1 (*.f64 (/.f64 b 4) x) c)))
(fma.f64 y a (fma.f64 z (/.f64 t 16) (-.f64 c (*.f64 x (/.f64 b 4)))))
(+.f64 (-.f64 (+.f64 (*.f64 b y) (/.f64 (*.f64 z t) 16)) (/.f64 (*.f64 a x) 4)) c)
(-.f64 (fma.f64 b y (/.f64 z (/.f64 16 t))) (-.f64 (/.f64 (*.f64 x a) 4) c))
(+.f64 c (fma.f64 y b (-.f64 (*.f64 (/.f64 z 16) t) (*.f64 (/.f64 a 4) x))))
(fma.f64 y b (fma.f64 (/.f64 z 16) t (fma.f64 -1 (*.f64 x (/.f64 a 4)) c)))
(fma.f64 (/.f64 z 16) t (fma.f64 y b (-.f64 c (*.f64 x (/.f64 a 4)))))
(+.f64 c (fma.f64 z (/.f64 t 16) (fma.f64 y b (*.f64 x (*.f64 -1/4 a)))))
(+.f64 (-.f64 (+.f64 (*.f64 c y) (/.f64 (*.f64 z t) 16)) (/.f64 (*.f64 a b) 4)) x)
(-.f64 (fma.f64 c y (/.f64 z (/.f64 16 t))) (-.f64 (/.f64 a (/.f64 4 b)) x))
(+.f64 x (-.f64 (fma.f64 y c (*.f64 (/.f64 z 16) t)) (/.f64 a (/.f64 4 b))))
(fma.f64 y c (fma.f64 (/.f64 z 16) t (fma.f64 -1 (*.f64 a (/.f64 b 4)) x)))
(fma.f64 y c (fma.f64 z (/.f64 t 16) (-.f64 x (*.f64 a (/.f64 b 4)))))
(+.f64 x (fma.f64 y c (fma.f64 z (/.f64 t 16) (*.f64 a (*.f64 -1/4 b)))))
(+.f64 (-.f64 (+.f64 (*.f64 x z) (/.f64 (*.f64 y t) 16)) (/.f64 (*.f64 a b) 4)) c)
(-.f64 (fma.f64 x z (/.f64 y (/.f64 16 t))) (-.f64 (/.f64 a (/.f64 4 b)) c))
(+.f64 c (-.f64 (fma.f64 x z (/.f64 y (/.f64 16 t))) (/.f64 a (/.f64 4 b))))
(fma.f64 x z (fma.f64 (/.f64 y 16) t (fma.f64 -1 (*.f64 a (/.f64 b 4)) c)))
(fma.f64 x z (fma.f64 t (/.f64 y 16) (-.f64 c (*.f64 a (/.f64 b 4)))))
(+.f64 c (fma.f64 x z (fma.f64 t (/.f64 y 16) (*.f64 a (*.f64 -1/4 b)))))
(+.f64 (-.f64 (+.f64 (*.f64 x t) (/.f64 (*.f64 z y) 16)) (/.f64 (*.f64 a b) 4)) c)
(+.f64 c (-.f64 (fma.f64 x t (/.f64 z (/.f64 16 y))) (/.f64 a (/.f64 4 b))))
(+.f64 c (-.f64 (fma.f64 x t (*.f64 (/.f64 z 16) y)) (/.f64 a (/.f64 4 b))))
(fma.f64 (/.f64 z 16) y (fma.f64 x t (fma.f64 -1 (*.f64 a (/.f64 b 4)) c)))
(fma.f64 (/.f64 z 16) y (fma.f64 x t (-.f64 c (*.f64 a (/.f64 b 4)))))
(+.f64 c (fma.f64 x t (fma.f64 y (/.f64 z 16) (*.f64 a (*.f64 -1/4 b)))))
(+.f64 (-.f64 (+.f64 (*.f64 x a) (/.f64 (*.f64 z t) 16)) (/.f64 (*.f64 y b) 4)) c)
(-.f64 (fma.f64 x a (/.f64 z (/.f64 16 t))) (-.f64 (/.f64 y (/.f64 4 b)) c))
(+.f64 c (fma.f64 x a (-.f64 (*.f64 (/.f64 z 16) t) (*.f64 (/.f64 y 4) b))))
(fma.f64 x a (fma.f64 (/.f64 z 16) t (fma.f64 -1 (*.f64 b (/.f64 y 4)) c)))
(fma.f64 x a (fma.f64 z (/.f64 t 16) (-.f64 c (*.f64 y (/.f64 b 4)))))
(+.f64 c (fma.f64 x a (fma.f64 z (/.f64 t 16) (*.f64 -1/4 (*.f64 y b)))))
(+.f64 (-.f64 (+.f64 (*.f64 x b) (/.f64 (*.f64 z t) 16)) (/.f64 (*.f64 a y) 4)) c)
(+.f64 c (-.f64 (fma.f64 x b (/.f64 z (/.f64 16 t))) (/.f64 a (/.f64 4 y))))
(+.f64 c (fma.f64 x b (-.f64 (*.f64 (/.f64 z 16) t) (*.f64 (/.f64 a 4) y))))
(fma.f64 x b (fma.f64 (/.f64 z 16) t (fma.f64 -1 (*.f64 y (/.f64 a 4)) c)))
(fma.f64 x b (fma.f64 z (/.f64 t 16) (-.f64 c (*.f64 y (/.f64 a 4)))))
(fma.f64 x b (fma.f64 z (/.f64 t 16) (+.f64 c (*.f64 y (*.f64 -1/4 a)))))
(+.f64 (-.f64 (+.f64 (*.f64 x c) (/.f64 (*.f64 z t) 16)) (/.f64 (*.f64 a b) 4)) y)
(-.f64 (fma.f64 x c (/.f64 z (/.f64 16 t))) (-.f64 (/.f64 a (/.f64 4 b)) y))
(+.f64 y (-.f64 (fma.f64 x c (*.f64 (/.f64 z 16) t)) (/.f64 a (/.f64 4 b))))
(fma.f64 (/.f64 z 16) t (fma.f64 x c (fma.f64 -1 (*.f64 a (/.f64 b 4)) y)))
(fma.f64 x c (fma.f64 z (/.f64 t 16) (-.f64 y (*.f64 a (/.f64 b 4)))))
(+.f64 y (fma.f64 x c (fma.f64 z (/.f64 t 16) (*.f64 a (*.f64 -1/4 b)))))
(+.f64 (-.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 t z) 16)) (/.f64 (*.f64 a b) 4)) c)
(+.f64 (-.f64 (fma.f64 x y (/.f64 z (/.f64 16 t))) (/.f64 a (/.f64 4 b))) c)
(+.f64 (-.f64 (fma.f64 x y (*.f64 (/.f64 z 16) t)) (/.f64 a (/.f64 4 b))) c)
(fma.f64 x y (fma.f64 (/.f64 z 16) t (fma.f64 -1 (*.f64 a (/.f64 b 4)) c)))
(fma.f64 x y (fma.f64 z (/.f64 t 16) (-.f64 c (*.f64 a (/.f64 b 4)))))
(+.f64 (fma.f64 x y (fma.f64 z (/.f64 t 16) (*.f64 a (*.f64 -1/4 b)))) c)
(+.f64 (-.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 a t) 16)) (/.f64 (*.f64 z b) 4)) c)
(-.f64 (fma.f64 x y (/.f64 a (/.f64 16 t))) (-.f64 (/.f64 z (/.f64 4 b)) c))
(-.f64 (fma.f64 x y (*.f64 (/.f64 a 16) t)) (-.f64 (/.f64 z (/.f64 4 b)) c))
(fma.f64 x y (fma.f64 (/.f64 a 16) t (fma.f64 -1 (*.f64 b (/.f64 z 4)) c)))
(fma.f64 x y (fma.f64 t (/.f64 a 16) (-.f64 c (*.f64 b (/.f64 z 4)))))
(+.f64 c (fma.f64 t (/.f64 a 16) (fma.f64 x y (*.f64 z (*.f64 -1/4 b)))))
(+.f64 (-.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 b t) 16)) (/.f64 (*.f64 a z) 4)) c)
(-.f64 (fma.f64 x y (/.f64 b (/.f64 16 t))) (-.f64 (/.f64 a (/.f64 4 z)) c))
(-.f64 (fma.f64 x y (*.f64 (/.f64 b 16) t)) (-.f64 (*.f64 (/.f64 a 4) z) c))
(fma.f64 x y (fma.f64 (/.f64 b 16) t (fma.f64 -1 (*.f64 z (/.f64 a 4)) c)))
(fma.f64 x y (fma.f64 t (/.f64 b 16) (-.f64 c (*.f64 z (/.f64 a 4)))))
(+.f64 c (fma.f64 x y (fma.f64 t (/.f64 b 16) (*.f64 z (*.f64 -1/4 a)))))
(+.f64 (-.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 c t) 16)) (/.f64 (*.f64 a b) 4)) z)
(-.f64 (fma.f64 x y (/.f64 c (/.f64 16 t))) (-.f64 (/.f64 a (/.f64 4 b)) z))
(+.f64 z (-.f64 (fma.f64 x y (*.f64 (/.f64 c 16) t)) (/.f64 a (/.f64 4 b))))
(fma.f64 x y (fma.f64 (/.f64 c 16) t (fma.f64 -1 (*.f64 a (/.f64 b 4)) z)))
(fma.f64 x y (fma.f64 t (/.f64 c 16) (-.f64 z (*.f64 a (/.f64 b 4)))))
(+.f64 z (fma.f64 x y (fma.f64 t (/.f64 c 16) (*.f64 a (*.f64 -1/4 b)))))
(+.f64 (-.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 z a) 16)) (/.f64 (*.f64 t b) 4)) c)
(-.f64 (fma.f64 x y (/.f64 (*.f64 z a) 16)) (-.f64 (/.f64 t (/.f64 4 b)) c))
(-.f64 (fma.f64 x y (*.f64 (/.f64 z 16) a)) (-.f64 (*.f64 (/.f64 t 4) b) c))
(fma.f64 x y (fma.f64 (/.f64 z 16) a (fma.f64 -1 (*.f64 (/.f64 b 4) t) c)))
(fma.f64 x y (fma.f64 a (/.f64 z 16) (-.f64 c (*.f64 t (/.f64 b 4)))))
(+.f64 c (fma.f64 x y (fma.f64 a (/.f64 z 16) (*.f64 t (*.f64 -1/4 b)))))
(+.f64 (-.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 z b) 16)) (/.f64 (*.f64 a t) 4)) c)
(+.f64 c (-.f64 (fma.f64 x y (/.f64 z (/.f64 16 b))) (/.f64 a (/.f64 4 t))))
(+.f64 c (-.f64 (fma.f64 x y (*.f64 (/.f64 z 16) b)) (*.f64 (/.f64 a 4) t)))
(fma.f64 x y (fma.f64 (/.f64 z 16) b (fma.f64 -1 (*.f64 t (/.f64 a 4)) c)))
(fma.f64 x y (fma.f64 b (/.f64 z 16) (-.f64 c (*.f64 t (/.f64 a 4)))))
(+.f64 c (fma.f64 b (/.f64 z 16) (fma.f64 x y (*.f64 t (*.f64 -1/4 a)))))
(+.f64 (-.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 z c) 16)) (/.f64 (*.f64 a b) 4)) t)
(-.f64 (fma.f64 x y (/.f64 z (/.f64 16 c))) (-.f64 (/.f64 a (/.f64 4 b)) t))
(+.f64 t (-.f64 (fma.f64 x y (*.f64 (/.f64 z 16) c)) (/.f64 a (/.f64 4 b))))
(fma.f64 (/.f64 z 16) c (fma.f64 x y (fma.f64 -1 (*.f64 a (/.f64 b 4)) t)))
(fma.f64 x y (fma.f64 c (/.f64 z 16) (-.f64 t (*.f64 a (/.f64 b 4)))))
(+.f64 (-.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 z t) 16)) (/.f64 (*.f64 b a) 4)) c)
(+.f64 (-.f64 (fma.f64 x y (/.f64 z (/.f64 16 t))) (/.f64 a (/.f64 4 b))) c)
(+.f64 (-.f64 (fma.f64 x y (*.f64 (/.f64 z 16) t)) (/.f64 a (/.f64 4 b))) c)
(fma.f64 x y (fma.f64 (/.f64 z 16) t (fma.f64 -1 (*.f64 a (/.f64 b 4)) c)))
(fma.f64 x y (fma.f64 z (/.f64 t 16) (-.f64 c (*.f64 a (/.f64 b 4)))))
(+.f64 (fma.f64 x y (fma.f64 z (/.f64 t 16) (*.f64 a (*.f64 -1/4 b)))) c)
(+.f64 (-.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 z t) 16)) (/.f64 (*.f64 c b) 4)) a)
(+.f64 a (-.f64 (fma.f64 x y (/.f64 z (/.f64 16 t))) (/.f64 c (/.f64 4 b))))
(+.f64 a (-.f64 (fma.f64 x y (*.f64 (/.f64 z 16) t)) (/.f64 b (/.f64 4 c))))
(fma.f64 x y (fma.f64 (/.f64 z 16) t (fma.f64 -1 (/.f64 b (/.f64 4 c)) a)))
(fma.f64 x y (fma.f64 z (/.f64 t 16) (-.f64 a (*.f64 b (/.f64 c 4)))))
(fma.f64 x y (fma.f64 z (/.f64 t 16) (+.f64 a (*.f64 b (*.f64 -1/4 c)))))
(+.f64 (-.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 z t) 16)) (/.f64 (*.f64 a c) 4)) b)
(-.f64 (fma.f64 x y (/.f64 z (/.f64 16 t))) (-.f64 (/.f64 a (/.f64 4 c)) b))
(+.f64 b (-.f64 (fma.f64 x y (*.f64 (/.f64 z 16) t)) (/.f64 a (/.f64 4 c))))
(fma.f64 x y (fma.f64 (/.f64 z 16) t (fma.f64 -1 (*.f64 c (/.f64 a 4)) b)))
(fma.f64 x y (fma.f64 z (/.f64 t 16) (-.f64 b (*.f64 a (/.f64 c 4)))))
(+.f64 b (fma.f64 x y (fma.f64 z (/.f64 t 16) (*.f64 a (*.f64 -1/4 c)))))
Symmetry

(sort x y)

(sort z t)

(sort a b)

Compiler

Compiled 31 to 24 computations (22.6% saved)

simplify148.0ms (1.4%)

Algorithm
egg-herbie
Rules
1243×fma-neg_binary64
515×fma-def_binary64
259×cancel-sign-sub-inv_binary64
147×distribute-rgt-in_binary64
127×sub-neg_binary64
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
01823
13423
27722
317421
441619
592819
6161819
7266119
8354719
9371119
10376619
11377619
12377619
13409219
14409619
15409619
Stop Event
saturated
Counts
1 → 2
Calls
Call 1
Inputs
(+.f64 (-.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 z t) 16)) (/.f64 (*.f64 a b) 4)) c)
Outputs
(+.f64 (-.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 z t) 16)) (/.f64 (*.f64 a b) 4)) c)
(-.f64 (fma.f64 x y (/.f64 z (/.f64 16 t))) (-.f64 (/.f64 a (/.f64 4 b)) c))
(-.f64 (fma.f64 x y (*.f64 (/.f64 z 16) t)) (-.f64 (*.f64 (/.f64 a 4) b) c))
(fma.f64 (/.f64 z 16) t (fma.f64 x y (fma.f64 -1 (*.f64 b (/.f64 a 4)) c)))
(fma.f64 t (/.f64 z 16) (fma.f64 x y (-.f64 c (*.f64 b (/.f64 a 4)))))
(fma.f64 x y (fma.f64 b (*.f64 -1/4 a) (fma.f64 t (/.f64 z 16) c)))
(fma.f64 x y (fma.f64 t (/.f64 z 16) (fma.f64 -1/4 (*.f64 a b) c)))
(fma.f64 x y (fma.f64 t (/.f64 z 16) (fma.f64 (*.f64 a b) -1/4 c)))
(fma.f64 x y (fma.f64 t (*.f64 1/16 z) (fma.f64 (*.f64 a b) -1/4 c)))
(fma.f64 x y (fma.f64 t (*.f64 z 1/16) (fma.f64 (*.f64 a b) -1/4 c)))

eval1.0ms (0%)

Compiler

Compiled 38 to 23 computations (39.5% saved)

prune2.0ms (0%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
0.0b
Counts
3 → 2
Alt Table
Click to see full alt table
StatusErrorProgram
0.0b
(fma.f64 x y (fma.f64 t (*.f64 z 1/16) (fma.f64 (*.f64 a b) -1/4 c)))
0.0b
(+.f64 (-.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 z t) 16)) (/.f64 (*.f64 a b) 4)) c)
Compiler

Compiled 45 to 31 computations (31.1% saved)

localize42.0ms (0.4%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (-.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 z t) 16)) (/.f64 (*.f64 a b) 4)) c)
0.0b
(+.f64 (*.f64 x y) (/.f64 (*.f64 z t) 16))
0.0b
(-.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 z t) 16)) (/.f64 (*.f64 a b) 4))
Compiler

Compiled 76 to 32 computations (57.9% saved)

series27.0ms (0.3%)

Counts
3 → 204
Calls

51 calls:

TimeVariablePointExpression
3.0ms
x
@inf
(-.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 z t) 16)) (/.f64 (*.f64 a b) 4))
2.0ms
z
@0
(+.f64 (*.f64 x y) (/.f64 (*.f64 z t) 16))
1.0ms
t
@0
(-.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 z t) 16)) (/.f64 (*.f64 a b) 4))
1.0ms
x
@0
(-.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 z t) 16)) (/.f64 (*.f64 a b) 4))
1.0ms
y
@0
(-.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 z t) 16)) (/.f64 (*.f64 a b) 4))

rewrite114.0ms (1.1%)

Algorithm
batch-egg-rewrite
Rules
554×fma-neg_binary64
372×expm1-udef_binary64
372×log1p-udef_binary64
209×add-sqr-sqrt_binary64
205×*-un-lft-identity_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01854
141150
2606750
Stop Event
node limit
Counts
3 → 146
Calls
Call 1
Inputs
(-.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 z t) 16)) (/.f64 (*.f64 a b) 4))
(+.f64 (*.f64 x y) (/.f64 (*.f64 z t) 16))
(+.f64 (-.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 z t) 16)) (/.f64 (*.f64 a b) 4)) c)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x y) (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x y) (*.f64 (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 z t) 1/16) (fma.f64 x y (*.f64 (*.f64 a b) -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 z t) 1/16) (+.f64 (*.f64 x y) (*.f64 (*.f64 a b) -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x y (*.f64 (*.f64 z t) 1/16)) (*.f64 (*.f64 a b) -1/4))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x y (*.f64 (*.f64 z t) 1/16)) (*.f64 (*.f64 (*.f64 a b) -1/4) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x y (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4))) (fma.f64 -1/4 (*.f64 a b) (*.f64 a (*.f64 b 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x y (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4))) (fma.f64 (*.f64 (*.f64 a b) -1/4) 1 (*.f64 a (*.f64 b 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x y (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a (*.f64 b 1/4)))) (pow.f64 (cbrt.f64 (*.f64 a (*.f64 b 1/4))) 2) (*.f64 a (*.f64 b 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x y (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4))) (+.f64 (*.f64 (*.f64 a b) -1/4) (*.f64 a (*.f64 b 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 a b) -1/4) (fma.f64 x y (*.f64 (*.f64 z t) 1/16)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4)) (*.f64 x y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 x y (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 x y (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 x y (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4)))) (pow.f64 (cbrt.f64 (fma.f64 x y (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 x y (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4)))) 2) (cbrt.f64 (fma.f64 x y (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 x y (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4)))) (sqrt.f64 (fma.f64 x y (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (fma.f64 x y (*.f64 (*.f64 z t) 1/16)) 3) (*.f64 (pow.f64 (*.f64 a b) 3) 1/64)) (/.f64 1 (+.f64 (pow.f64 (fma.f64 x y (*.f64 (*.f64 z t) 1/16)) 2) (*.f64 (*.f64 a (*.f64 b 1/4)) (+.f64 (fma.f64 x y (*.f64 (*.f64 z t) 1/16)) (*.f64 a (*.f64 b 1/4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (fma.f64 x y (*.f64 (*.f64 z t) 1/16)) 2) (pow.f64 (*.f64 a (*.f64 b 1/4)) 2)) (/.f64 1 (+.f64 (fma.f64 x y (*.f64 (*.f64 z t) 1/16)) (*.f64 a (*.f64 b 1/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 (fma.f64 x y (*.f64 (*.f64 z t) 1/16))) (*.f64 (sqrt.f64 (*.f64 a b)) 1/2)) (-.f64 (sqrt.f64 (fma.f64 x y (*.f64 (*.f64 z t) 1/16))) (*.f64 (sqrt.f64 (*.f64 a b)) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (pow.f64 (fma.f64 x y (*.f64 (*.f64 z t) 1/16)) 2) (*.f64 (*.f64 a (*.f64 b 1/4)) (+.f64 (fma.f64 x y (*.f64 (*.f64 z t) 1/16)) (*.f64 a (*.f64 b 1/4))))) (-.f64 (pow.f64 (fma.f64 x y (*.f64 (*.f64 z t) 1/16)) 3) (*.f64 (pow.f64 (*.f64 a b) 3) 1/64))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (fma.f64 x y (*.f64 (*.f64 z t) 1/16)) (*.f64 a (*.f64 b 1/4))) (-.f64 (pow.f64 (fma.f64 x y (*.f64 (*.f64 z t) 1/16)) 2) (pow.f64 (*.f64 a (*.f64 b 1/4)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (fma.f64 x y (*.f64 (*.f64 z t) 1/16)) 3) (*.f64 (pow.f64 (*.f64 a b) 3) 1/64)) (+.f64 (pow.f64 (fma.f64 x y (*.f64 (*.f64 z t) 1/16)) 2) (*.f64 (*.f64 a (*.f64 b 1/4)) (+.f64 (fma.f64 x y (*.f64 (*.f64 z t) 1/16)) (*.f64 a (*.f64 b 1/4))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (fma.f64 x y (*.f64 (*.f64 z t) 1/16)) 2) (pow.f64 (*.f64 a (*.f64 b 1/4)) 2)) (+.f64 (fma.f64 x y (*.f64 (*.f64 z t) 1/16)) (*.f64 a (*.f64 b 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (fma.f64 x y (*.f64 (*.f64 z t) 1/16)) 3) (*.f64 (pow.f64 (*.f64 a b) 3) 1/64))) (neg.f64 (+.f64 (pow.f64 (fma.f64 x y (*.f64 (*.f64 z t) 1/16)) 2) (*.f64 (*.f64 a (*.f64 b 1/4)) (+.f64 (fma.f64 x y (*.f64 (*.f64 z t) 1/16)) (*.f64 a (*.f64 b 1/4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (fma.f64 x y (*.f64 (*.f64 z t) 1/16)) 2) (pow.f64 (*.f64 a (*.f64 b 1/4)) 2))) (neg.f64 (+.f64 (fma.f64 x y (*.f64 (*.f64 z t) 1/16)) (*.f64 a (*.f64 b 1/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (+.f64 (pow.f64 (*.f64 x y) 3) (*.f64 (pow.f64 (*.f64 z t) 3) 1/4096)) (/.f64 4 b)) (*.f64 (+.f64 (pow.f64 (*.f64 x y) 2) (*.f64 (*.f64 (*.f64 z t) 1/16) (-.f64 (*.f64 (*.f64 z t) 1/16) (*.f64 x y)))) a)) (*.f64 (+.f64 (pow.f64 (*.f64 x y) 2) (*.f64 (*.f64 (*.f64 z t) 1/16) (-.f64 (*.f64 (*.f64 z t) 1/16) (*.f64 x y)))) (/.f64 4 b)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (-.f64 (pow.f64 (*.f64 x y) 2) (pow.f64 (*.f64 (*.f64 z t) 1/16) 2)) (/.f64 4 b)) (*.f64 (-.f64 (*.f64 x y) (*.f64 (*.f64 z t) 1/16)) a)) (*.f64 (-.f64 (*.f64 x y) (*.f64 (*.f64 z t) 1/16)) (/.f64 4 b)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (+.f64 (pow.f64 (*.f64 x y) 3) (*.f64 (pow.f64 (*.f64 z t) 3) 1/4096)) 4) (*.f64 (+.f64 (pow.f64 (*.f64 x y) 2) (*.f64 (*.f64 (*.f64 z t) 1/16) (-.f64 (*.f64 (*.f64 z t) 1/16) (*.f64 x y)))) (*.f64 a b))) (*.f64 (+.f64 (pow.f64 (*.f64 x y) 2) (*.f64 (*.f64 (*.f64 z t) 1/16) (-.f64 (*.f64 (*.f64 z t) 1/16) (*.f64 x y)))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (-.f64 (pow.f64 (*.f64 x y) 2) (pow.f64 (*.f64 (*.f64 z t) 1/16) 2)) 4) (*.f64 (-.f64 (*.f64 x y) (*.f64 (*.f64 z t) 1/16)) (*.f64 a b))) (*.f64 (-.f64 (*.f64 x y) (*.f64 (*.f64 z t) 1/16)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (+.f64 (pow.f64 (*.f64 x y) 3) (*.f64 (pow.f64 (*.f64 z t) 3) 1/4096)) (/.f64 4 (*.f64 a b))) (*.f64 (+.f64 (pow.f64 (*.f64 x y) 2) (*.f64 (*.f64 (*.f64 z t) 1/16) (-.f64 (*.f64 (*.f64 z t) 1/16) (*.f64 x y)))) 1)) (*.f64 (+.f64 (pow.f64 (*.f64 x y) 2) (*.f64 (*.f64 (*.f64 z t) 1/16) (-.f64 (*.f64 (*.f64 z t) 1/16) (*.f64 x y)))) (/.f64 4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (-.f64 (pow.f64 (*.f64 x y) 2) (pow.f64 (*.f64 (*.f64 z t) 1/16) 2)) (/.f64 4 (*.f64 a b))) (*.f64 (-.f64 (*.f64 x y) (*.f64 (*.f64 z t) 1/16)) 1)) (*.f64 (-.f64 (*.f64 x y) (*.f64 (*.f64 z t) 1/16)) (/.f64 4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (+.f64 (pow.f64 (*.f64 x y) 3) (*.f64 (pow.f64 (*.f64 z t) 3) 1/4096)) -4) (*.f64 (+.f64 (pow.f64 (*.f64 x y) 2) (*.f64 (*.f64 (*.f64 z t) 1/16) (-.f64 (*.f64 (*.f64 z t) 1/16) (*.f64 x y)))) (*.f64 a (neg.f64 b)))) (*.f64 (+.f64 (pow.f64 (*.f64 x y) 2) (*.f64 (*.f64 (*.f64 z t) 1/16) (-.f64 (*.f64 (*.f64 z t) 1/16) (*.f64 x y)))) -4))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (-.f64 (pow.f64 (*.f64 x y) 2) (pow.f64 (*.f64 (*.f64 z t) 1/16) 2)) -4) (*.f64 (-.f64 (*.f64 x y) (*.f64 (*.f64 z t) 1/16)) (*.f64 a (neg.f64 b)))) (*.f64 (-.f64 (*.f64 x y) (*.f64 (*.f64 z t) 1/16)) -4))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 x y) 3) (pow.f64 (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4)) 3)) (+.f64 (pow.f64 (*.f64 x y) 2) (-.f64 (*.f64 (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4)) (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4))) (*.f64 (*.f64 x y) (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (fma.f64 x y (*.f64 (*.f64 z t) 1/16)) 3) (pow.f64 (*.f64 (*.f64 a b) -1/4) 3)) (+.f64 (pow.f64 (fma.f64 x y (*.f64 (*.f64 z t) 1/16)) 2) (-.f64 (*.f64 (*.f64 (*.f64 a b) -1/4) (*.f64 (*.f64 a b) -1/4)) (*.f64 (fma.f64 x y (*.f64 (*.f64 z t) 1/16)) (*.f64 (*.f64 a b) -1/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 x y) 2) (*.f64 (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4)) (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4)))) (-.f64 (*.f64 x y) (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (fma.f64 x y (*.f64 (*.f64 z t) 1/16)) 2) (*.f64 (*.f64 (*.f64 a b) -1/4) (*.f64 (*.f64 a b) -1/4))) (-.f64 (fma.f64 x y (*.f64 (*.f64 z t) 1/16)) (*.f64 (*.f64 a b) -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 x y (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 x y (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 x y (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 x y (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 x y (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 x y (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 x y (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 x y (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 x y (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 x y (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 x y (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 x y (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x y (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y x (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 x y (*.f64 (*.f64 z t) 1/16)) 1 (*.f64 (*.f64 a b) -1/4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 x y) (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 x y (*.f64 (*.f64 z t) 1/16)) (*.f64 (*.f64 a b) -1/4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 x y (*.f64 (*.f64 z t) 1/16))) (pow.f64 (cbrt.f64 (fma.f64 x y (*.f64 (*.f64 z t) 1/16))) 2) (*.f64 (*.f64 a b) -1/4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 x y (*.f64 (*.f64 z t) 1/16))) 2) (cbrt.f64 (fma.f64 x y (*.f64 (*.f64 z t) 1/16))) (*.f64 (*.f64 a b) -1/4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 x y)) 2) (cbrt.f64 (*.f64 x y)) (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 x y (*.f64 (*.f64 z t) 1/16))) (sqrt.f64 (fma.f64 x y (*.f64 (*.f64 z t) 1/16))) (*.f64 (*.f64 a b) -1/4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 x y)) (sqrt.f64 (*.f64 x y)) (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (pow.f64 (*.f64 x y) 3) (*.f64 (pow.f64 (*.f64 z t) 3) 1/4096)) (/.f64 1 (+.f64 (pow.f64 (*.f64 x y) 2) (*.f64 (*.f64 (*.f64 z t) 1/16) (-.f64 (*.f64 (*.f64 z t) 1/16) (*.f64 x y))))) (*.f64 (*.f64 a b) -1/4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 x y) 2) (pow.f64 (*.f64 (*.f64 z t) 1/16) 2)) (/.f64 1 (-.f64 (*.f64 x y) (*.f64 (*.f64 z t) 1/16))) (*.f64 (*.f64 a b) -1/4))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 x y (*.f64 (*.f64 z t) 1/16)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (*.f64 x y) 2) (-.f64 (*.f64 x y) (*.f64 (*.f64 z t) 1/16))) (/.f64 (pow.f64 (*.f64 (*.f64 z t) 1/16) 2) (-.f64 (*.f64 x y) (*.f64 (*.f64 z t) 1/16))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 x y (*.f64 (*.f64 z t) 1/16)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 x y (*.f64 (*.f64 z t) 1/16)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 x y (*.f64 (*.f64 z t) 1/16))) (pow.f64 (cbrt.f64 (fma.f64 x y (*.f64 (*.f64 z t) 1/16))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 x y (*.f64 (*.f64 z t) 1/16))) 2) (cbrt.f64 (fma.f64 x y (*.f64 (*.f64 z t) 1/16))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 x y (*.f64 (*.f64 z t) 1/16))) (sqrt.f64 (fma.f64 x y (*.f64 (*.f64 z t) 1/16))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (*.f64 x y) 3) (*.f64 (pow.f64 (*.f64 z t) 3) 1/4096)) (/.f64 1 (+.f64 (pow.f64 (*.f64 x y) 2) (*.f64 (*.f64 (*.f64 z t) 1/16) (-.f64 (*.f64 (*.f64 z t) 1/16) (*.f64 x y))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (*.f64 x y) 2) (pow.f64 (*.f64 (*.f64 z t) 1/16) 2)) (/.f64 1 (-.f64 (*.f64 x y) (*.f64 (*.f64 z t) 1/16))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (pow.f64 (*.f64 x y) 2) (*.f64 (*.f64 (*.f64 z t) 1/16) (-.f64 (*.f64 (*.f64 z t) 1/16) (*.f64 x y)))) (+.f64 (pow.f64 (*.f64 x y) 3) (*.f64 (pow.f64 (*.f64 z t) 3) 1/4096))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 (*.f64 x y) (*.f64 (*.f64 z t) 1/16)) (-.f64 (pow.f64 (*.f64 x y) 2) (pow.f64 (*.f64 (*.f64 z t) 1/16) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 x y) 3) (*.f64 (pow.f64 (*.f64 z t) 3) 1/4096)) (+.f64 (pow.f64 (*.f64 x y) 2) (*.f64 (*.f64 (*.f64 z t) 1/16) (-.f64 (*.f64 (*.f64 z t) 1/16) (*.f64 x y)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 x y) 3) (*.f64 (pow.f64 (*.f64 z t) 3) 1/4096)) (+.f64 (pow.f64 (*.f64 (*.f64 z t) 1/16) 2) (-.f64 (pow.f64 (*.f64 x y) 2) (*.f64 (*.f64 x y) (*.f64 (*.f64 z t) 1/16)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 x y) 2) (pow.f64 (*.f64 (*.f64 z t) 1/16) 2)) (-.f64 (*.f64 x y) (*.f64 (*.f64 z t) 1/16)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 x y) 3) (*.f64 (pow.f64 (*.f64 z t) 3) 1/4096))) (neg.f64 (+.f64 (pow.f64 (*.f64 x y) 2) (*.f64 (*.f64 (*.f64 z t) 1/16) (-.f64 (*.f64 (*.f64 z t) 1/16) (*.f64 x y))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 x y) 2) (pow.f64 (*.f64 (*.f64 z t) 1/16) 2))) (neg.f64 (-.f64 (*.f64 x y) (*.f64 (*.f64 z t) 1/16))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (*.f64 z t) 1/16) 2) (pow.f64 (*.f64 x y) 2)) (-.f64 (*.f64 (*.f64 z t) 1/16) (*.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 x y (*.f64 (*.f64 z t) 1/16)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 x y (*.f64 (*.f64 z t) 1/16))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 x y (*.f64 (*.f64 z t) 1/16))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 x y (*.f64 (*.f64 z t) 1/16)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 x y (*.f64 (*.f64 z t) 1/16)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 x y (*.f64 (*.f64 z t) 1/16))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 x y (*.f64 (*.f64 z t) 1/16)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 x y (*.f64 (*.f64 z t) 1/16)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 x y (*.f64 (*.f64 z t) 1/16))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 x y (*.f64 (*.f64 z t) 1/16))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 x y (*.f64 (*.f64 z t) 1/16))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 x y (*.f64 (*.f64 z t) 1/16))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x y (*.f64 (*.f64 z t) 1/16))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y x (*.f64 (*.f64 z t) 1/16))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 z t) 1/16 (*.f64 x y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 x y) (*.f64 (*.f64 z t) 1/16))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (*.f64 z t) 1/16) (*.f64 x y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (*.f64 z t) 1/16)) 2) (cbrt.f64 (*.f64 (*.f64 z t) 1/16)) (*.f64 x y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 x y)) 2) (cbrt.f64 (*.f64 x y)) (*.f64 (*.f64 z t) 1/16))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (*.f64 z t) 1/16)) (sqrt.f64 (*.f64 (*.f64 z t) 1/16)) (*.f64 x y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 x y)) (sqrt.f64 (*.f64 x y)) (*.f64 (*.f64 z t) 1/16))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (fma.f64 x y (*.f64 (*.f64 z t) 1/16)) (-.f64 (*.f64 a (*.f64 b 1/4)) c))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (+.f64 (fma.f64 x y (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4))) c))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (fma.f64 x y (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4))) 2) (-.f64 (fma.f64 x y (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4))) c)) (/.f64 (*.f64 c c) (-.f64 (fma.f64 x y (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4))) c)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 c (fma.f64 x y (*.f64 (*.f64 z t) 1/16))) (*.f64 a (*.f64 b 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (fma.f64 x y (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4))) c) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 (fma.f64 x y (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4))) c))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (+.f64 (fma.f64 x y (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4))) c)) (pow.f64 (cbrt.f64 (+.f64 (fma.f64 x y (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4))) c)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (+.f64 (fma.f64 x y (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4))) c)) 2) (cbrt.f64 (+.f64 (fma.f64 x y (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4))) c)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (+.f64 (fma.f64 x y (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4))) c)) (sqrt.f64 (+.f64 (fma.f64 x y (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4))) c)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (fma.f64 x y (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4))) 3) (pow.f64 c 3)) (/.f64 1 (+.f64 (pow.f64 (fma.f64 x y (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4))) 2) (*.f64 c (-.f64 c (fma.f64 x y (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4))))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (fma.f64 x y (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4))) 2) (*.f64 c c)) (/.f64 1 (-.f64 (fma.f64 x y (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4))) c)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (pow.f64 (fma.f64 x y (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4))) 2) (*.f64 c (-.f64 c (fma.f64 x y (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4)))))) (+.f64 (pow.f64 (fma.f64 x y (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4))) 3) (pow.f64 c 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 (fma.f64 x y (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4))) c) (-.f64 (pow.f64 (fma.f64 x y (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4))) 2) (*.f64 c c))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (fma.f64 x y (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4))) 3) (pow.f64 c 3)) (+.f64 (pow.f64 (fma.f64 x y (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4))) 2) (*.f64 c (-.f64 c (fma.f64 x y (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (fma.f64 x y (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4))) 3) (pow.f64 c 3)) (+.f64 (*.f64 c c) (-.f64 (pow.f64 (fma.f64 x y (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4))) 2) (*.f64 (fma.f64 x y (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4))) c))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (fma.f64 x y (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4))) 2) (*.f64 c c)) (-.f64 (fma.f64 x y (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4))) c))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 (fma.f64 x y (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4))) 3) (pow.f64 c 3))) (neg.f64 (+.f64 (pow.f64 (fma.f64 x y (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4))) 2) (*.f64 c (-.f64 c (fma.f64 x y (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4))))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (fma.f64 x y (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4))) 2) (*.f64 c c))) (neg.f64 (-.f64 (fma.f64 x y (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4))) c)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (fma.f64 x y (*.f64 (*.f64 z t) 1/16)) 3) (pow.f64 (-.f64 (*.f64 a (*.f64 b 1/4)) c) 3)) (+.f64 (pow.f64 (fma.f64 x y (*.f64 (*.f64 z t) 1/16)) 2) (+.f64 (*.f64 (-.f64 (*.f64 a (*.f64 b 1/4)) c) (-.f64 (*.f64 a (*.f64 b 1/4)) c)) (*.f64 (fma.f64 x y (*.f64 (*.f64 z t) 1/16)) (-.f64 (*.f64 a (*.f64 b 1/4)) c)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (fma.f64 x y (*.f64 (*.f64 z t) 1/16)) 2) (*.f64 (-.f64 (*.f64 a (*.f64 b 1/4)) c) (-.f64 (*.f64 a (*.f64 b 1/4)) c))) (+.f64 (fma.f64 x y (*.f64 (*.f64 z t) 1/16)) (-.f64 (*.f64 a (*.f64 b 1/4)) c)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 c c) (pow.f64 (fma.f64 x y (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4))) 2)) (-.f64 c (fma.f64 x y (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 (fma.f64 x y (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4))) c) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (+.f64 (fma.f64 x y (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4))) c) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (+.f64 (fma.f64 x y (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4))) c)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (+.f64 (fma.f64 x y (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4))) c)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (+.f64 (fma.f64 x y (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4))) c) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (+.f64 (fma.f64 x y (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4))) c)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (+.f64 (fma.f64 x y (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4))) c))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (+.f64 (fma.f64 x y (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4))) c) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (+.f64 (fma.f64 x y (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4))) c)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (+.f64 (fma.f64 x y (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4))) c)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (+.f64 (fma.f64 x y (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4))) c)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (+.f64 (fma.f64 x y (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4))) c)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 x y (*.f64 (*.f64 z t) 1/16)) 1 (neg.f64 (-.f64 (*.f64 a (*.f64 b 1/4)) c)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 x y (*.f64 (*.f64 z t) 1/16)) (neg.f64 (-.f64 (*.f64 a (*.f64 b 1/4)) c)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 x y (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4))) c)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 c (fma.f64 x y (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 c) 2) (cbrt.f64 c) (fma.f64 x y (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 x y (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4)))) 2) (cbrt.f64 (fma.f64 x y (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4)))) c)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 x y (*.f64 (*.f64 z t) 1/16))) (pow.f64 (cbrt.f64 (fma.f64 x y (*.f64 (*.f64 z t) 1/16))) 2) (neg.f64 (-.f64 (*.f64 a (*.f64 b 1/4)) c)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 x y (*.f64 (*.f64 z t) 1/16))) 2) (cbrt.f64 (fma.f64 x y (*.f64 (*.f64 z t) 1/16))) (neg.f64 (-.f64 (*.f64 a (*.f64 b 1/4)) c)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 c) (sqrt.f64 c) (fma.f64 x y (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 x y (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4)))) (sqrt.f64 (fma.f64 x y (fma.f64 z (*.f64 t 1/16) (*.f64 (*.f64 a b) -1/4)))) c)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 x y (*.f64 (*.f64 z t) 1/16))) (sqrt.f64 (fma.f64 x y (*.f64 (*.f64 z t) 1/16))) (neg.f64 (-.f64 (*.f64 a (*.f64 b 1/4)) c)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (pow.f64 (*.f64 x y) 3) (*.f64 (pow.f64 (*.f64 z t) 3) 1/4096)) (/.f64 1 (+.f64 (pow.f64 (*.f64 x y) 2) (*.f64 (*.f64 (*.f64 z t) 1/16) (-.f64 (*.f64 (*.f64 z t) 1/16) (*.f64 x y))))) (neg.f64 (-.f64 (*.f64 a (*.f64 b 1/4)) c)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 x y) 2) (pow.f64 (*.f64 (*.f64 z t) 1/16) 2)) (/.f64 1 (-.f64 (*.f64 x y) (*.f64 (*.f64 z t) 1/16))) (neg.f64 (-.f64 (*.f64 a (*.f64 b 1/4)) c)))))))

simplify261.0ms (2.5%)

Algorithm
egg-herbie
Rules
1185×fma-neg_binary64
706×fma-def_binary64
344×cancel-sign-sub-inv_binary64
115×distribute-rgt-neg-in_binary64
113×sub-neg_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0303091
1713083
21682945
34422945
47182945
511512945
621262945
729582945
833482945
934542945
1034542945
1137512945
1237512945
Stop Event
saturated
Counts
350 → 169
Calls
Call 1
Inputs
(-.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 1/4 (*.f64 a b)))
(-.f64 (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
(-.f64 (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
(-.f64 (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
(*.f64 y x)
(-.f64 (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
(-.f64 (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
(-.f64 (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
(*.f64 y x)
(-.f64 (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
(-.f64 (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
(-.f64 (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
(-.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 1/4 (*.f64 a b)))
(-.f64 (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
(-.f64 (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
(-.f64 (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
(*.f64 y x)
(-.f64 (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
(-.f64 (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
(-.f64 (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
(*.f64 y x)
(-.f64 (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
(-.f64 (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
(-.f64 (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
(-.f64 (*.f64 y x) (*.f64 1/4 (*.f64 a b)))
(-.f64 (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
(-.f64 (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
(-.f64 (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
(*.f64 1/16 (*.f64 t z))
(-.f64 (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
(-.f64 (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
(-.f64 (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
(*.f64 1/16 (*.f64 t z))
(-.f64 (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
(-.f64 (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
(-.f64 (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
(-.f64 (*.f64 y x) (*.f64 1/4 (*.f64 a b)))
(-.f64 (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
(-.f64 (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
(-.f64 (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
(*.f64 1/16 (*.f64 t z))
(-.f64 (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
(-.f64 (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
(-.f64 (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
(*.f64 1/16 (*.f64 t z))
(-.f64 (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
(-.f64 (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
(-.f64 (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(*.f64 -1/4 (*.f64 a b))
(+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(*.f64 -1/4 (*.f64 a b))
(+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(*.f64 -1/4 (*.f64 a b))
(+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(*.f64 -1/4 (*.f64 a b))
(+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(*.f64 1/16 (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(*.f64 y x)
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(*.f64 y x)
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(*.f64 1/16 (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(*.f64 y x)
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(*.f64 y x)
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(*.f64 y x)
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(*.f64 1/16 (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(*.f64 1/16 (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(*.f64 y x)
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(*.f64 1/16 (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(*.f64 1/16 (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(-.f64 (+.f64 c (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
(-.f64 (+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))) (*.f64 1/4 (*.f64 a b)))
(-.f64 (+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))) (*.f64 1/4 (*.f64 a b)))
(-.f64 (+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))) (*.f64 1/4 (*.f64 a b)))
(*.f64 y x)
(-.f64 (+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))) (*.f64 1/4 (*.f64 a b)))
(-.f64 (+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))) (*.f64 1/4 (*.f64 a b)))
(-.f64 (+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))) (*.f64 1/4 (*.f64 a b)))
(*.f64 y x)
(-.f64 (+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))) (*.f64 1/4 (*.f64 a b)))
(-.f64 (+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))) (*.f64 1/4 (*.f64 a b)))
(-.f64 (+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))) (*.f64 1/4 (*.f64 a b)))
(-.f64 (+.f64 c (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
(-.f64 (+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))) (*.f64 1/4 (*.f64 a b)))
(-.f64 (+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))) (*.f64 1/4 (*.f64 a b)))
(-.f64 (+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))) (*.f64 1/4 (*.f64 a b)))
(*.f64 y x)
(-.f64 (+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))) (*.f64 1/4 (*.f64 a b)))
(-.f64 (+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))) (*.f64 1/4 (*.f64 a b)))
(-.f64 (+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))) (*.f64 1/4 (*.f64 a b)))
(*.f64 y x)
(-.f64 (+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))) (*.f64 1/4 (*.f64 a b)))
(-.f64 (+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))) (*.f64 1/4 (*.f64 a b)))
(-.f64 (+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))) (*.f64 1/4 (*.f64 a b)))
(-.f64 (+.f64 c (*.f64 y x)) (*.f64 1/4 (*.f64 a b)))
(-.f64 (+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))) (*.f64 1/4 (*.f64 a b)))
(-.f64 (+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))) (*.f64 1/4 (*.f64 a b)))
(-.f64 (+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))) (*.f64 1/4 (*.f64 a b)))
(*.f64 1/16 (*.f64 t z))
(-.f64 (+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))) (*.f64 1/4 (*.f64 a b)))
(-.f64 (+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))) (*.f64 1/4 (*.f64 a b)))
(-.f64 (+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))) (*.f64 1/4 (*.f64 a b)))
(*.f64 1/16 (*.f64 t z))
(-.f64 (+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))) (*.f64 1/4 (*.f64 a b)))
(-.f64 (+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))) (*.f64 1/4 (*.f64 a b)))
(-.f64 (+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))) (*.f64 1/4 (*.f64 a b)))
(-.f64 (+.f64 c (*.f64 y x)) (*.f64 1/4 (*.f64 a b)))
(-.f64 (+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))) (*.f64 1/4 (*.f64 a b)))
(-.f64 (+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))) (*.f64 1/4 (*.f64 a b)))
(-.f64 (+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))) (*.f64 1/4 (*.f64 a b)))
(*.f64 1/16 (*.f64 t z))
(-.f64 (+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))) (*.f64 1/4 (*.f64 a b)))
(-.f64 (+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))) (*.f64 1/4 (*.f64 a b)))
(-.f64 (+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))) (*.f64 1/4 (*.f64 a b)))
(*.f64 1/16 (*.f64 t z))
(-.f64 (+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))) (*.f64 1/4 (*.f64 a b)))
(-.f64 (+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))) (*.f64 1/4 (*.f64 a b)))
(-.f64 (+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))) (*.f64 1/4 (*.f64 a b)))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(*.f64 -1/4 (*.f64 a b))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(*.f64 -1/4 (*.f64 a b))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(*.f64 -1/4 (*.f64 a b))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(*.f64 -1/4 (*.f64 a b))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(-.f64 (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
(-.f64 (+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))) (*.f64 1/4 (*.f64 a b)))
(-.f64 (+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))) (*.f64 1/4 (*.f64 a b)))
(-.f64 (+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))) (*.f64 1/4 (*.f64 a b)))
c
(-.f64 (+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))) (*.f64 1/4 (*.f64 a b)))
(-.f64 (+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))) (*.f64 1/4 (*.f64 a b)))
(-.f64 (+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))) (*.f64 1/4 (*.f64 a b)))
c
(-.f64 (+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))) (*.f64 1/4 (*.f64 a b)))
(-.f64 (+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))) (*.f64 1/4 (*.f64 a b)))
(-.f64 (+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))) (*.f64 1/4 (*.f64 a b)))
Outputs
(-.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 1/4 (*.f64 a b)))
(fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4))
(fma.f64 1/16 (*.f64 t z) (*.f64 a (*.f64 b -1/4)))
(-.f64 (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 a (*.f64 b -1/4))))
(fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 b -1/4) (*.f64 y x)))
(-.f64 (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 a (*.f64 b -1/4))))
(fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 b -1/4) (*.f64 y x)))
(-.f64 (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 a (*.f64 b -1/4))))
(fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 b -1/4) (*.f64 y x)))
(*.f64 y x)
(-.f64 (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 a (*.f64 b -1/4))))
(fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 b -1/4) (*.f64 y x)))
(-.f64 (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 a (*.f64 b -1/4))))
(fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 b -1/4) (*.f64 y x)))
(-.f64 (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 a (*.f64 b -1/4))))
(fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 b -1/4) (*.f64 y x)))
(*.f64 y x)
(-.f64 (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 a (*.f64 b -1/4))))
(fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 b -1/4) (*.f64 y x)))
(-.f64 (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 a (*.f64 b -1/4))))
(fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 b -1/4) (*.f64 y x)))
(-.f64 (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 a (*.f64 b -1/4))))
(fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 b -1/4) (*.f64 y x)))
(-.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 1/4 (*.f64 a b)))
(fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4))
(fma.f64 1/16 (*.f64 t z) (*.f64 a (*.f64 b -1/4)))
(-.f64 (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 a (*.f64 b -1/4))))
(fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 b -1/4) (*.f64 y x)))
(-.f64 (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 a (*.f64 b -1/4))))
(fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 b -1/4) (*.f64 y x)))
(-.f64 (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 a (*.f64 b -1/4))))
(fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 b -1/4) (*.f64 y x)))
(*.f64 y x)
(-.f64 (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 a (*.f64 b -1/4))))
(fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 b -1/4) (*.f64 y x)))
(-.f64 (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 a (*.f64 b -1/4))))
(fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 b -1/4) (*.f64 y x)))
(-.f64 (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 a (*.f64 b -1/4))))
(fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 b -1/4) (*.f64 y x)))
(*.f64 y x)
(-.f64 (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 a (*.f64 b -1/4))))
(fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 b -1/4) (*.f64 y x)))
(-.f64 (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 a (*.f64 b -1/4))))
(fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 b -1/4) (*.f64 y x)))
(-.f64 (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 a (*.f64 b -1/4))))
(fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 b -1/4) (*.f64 y x)))
(-.f64 (*.f64 y x) (*.f64 1/4 (*.f64 a b)))
(+.f64 (*.f64 y x) (*.f64 (*.f64 a b) -1/4))
(fma.f64 y x (*.f64 (*.f64 a b) -1/4))
(fma.f64 a (*.f64 b -1/4) (*.f64 y x))
(-.f64 (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 a (*.f64 b -1/4))))
(fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 b -1/4) (*.f64 y x)))
(-.f64 (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 a (*.f64 b -1/4))))
(fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 b -1/4) (*.f64 y x)))
(-.f64 (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 a (*.f64 b -1/4))))
(fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 b -1/4) (*.f64 y x)))
(*.f64 1/16 (*.f64 t z))
(-.f64 (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 a (*.f64 b -1/4))))
(fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 b -1/4) (*.f64 y x)))
(-.f64 (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 a (*.f64 b -1/4))))
(fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 b -1/4) (*.f64 y x)))
(-.f64 (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 a (*.f64 b -1/4))))
(fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 b -1/4) (*.f64 y x)))
(*.f64 1/16 (*.f64 t z))
(-.f64 (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 a (*.f64 b -1/4))))
(fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 b -1/4) (*.f64 y x)))
(-.f64 (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 a (*.f64 b -1/4))))
(fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 b -1/4) (*.f64 y x)))
(-.f64 (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 a (*.f64 b -1/4))))
(fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 b -1/4) (*.f64 y x)))
(-.f64 (*.f64 y x) (*.f64 1/4 (*.f64 a b)))
(+.f64 (*.f64 y x) (*.f64 (*.f64 a b) -1/4))
(fma.f64 y x (*.f64 (*.f64 a b) -1/4))
(fma.f64 a (*.f64 b -1/4) (*.f64 y x))
(-.f64 (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 a (*.f64 b -1/4))))
(fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 b -1/4) (*.f64 y x)))
(-.f64 (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 a (*.f64 b -1/4))))
(fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 b -1/4) (*.f64 y x)))
(-.f64 (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 a (*.f64 b -1/4))))
(fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 b -1/4) (*.f64 y x)))
(*.f64 1/16 (*.f64 t z))
(-.f64 (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 a (*.f64 b -1/4))))
(fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 b -1/4) (*.f64 y x)))
(-.f64 (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 a (*.f64 b -1/4))))
(fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 b -1/4) (*.f64 y x)))
(-.f64 (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 a (*.f64 b -1/4))))
(fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 b -1/4) (*.f64 y x)))
(*.f64 1/16 (*.f64 t z))
(-.f64 (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 a (*.f64 b -1/4))))
(fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 b -1/4) (*.f64 y x)))
(-.f64 (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 a (*.f64 b -1/4))))
(fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 b -1/4) (*.f64 y x)))
(-.f64 (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 a (*.f64 b -1/4))))
(fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 b -1/4) (*.f64 y x)))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(fma.f64 y x (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) (*.f64 y x))
(+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 a (*.f64 b -1/4))))
(fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 b -1/4) (*.f64 y x)))
(+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 a (*.f64 b -1/4))))
(fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 b -1/4) (*.f64 y x)))
(+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 a (*.f64 b -1/4))))
(fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 b -1/4) (*.f64 y x)))
(*.f64 -1/4 (*.f64 a b))
(*.f64 (*.f64 a b) -1/4)
(*.f64 a (*.f64 b -1/4))
(+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 a (*.f64 b -1/4))))
(fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 b -1/4) (*.f64 y x)))
(+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 a (*.f64 b -1/4))))
(fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 b -1/4) (*.f64 y x)))
(+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 a (*.f64 b -1/4))))
(fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 b -1/4) (*.f64 y x)))
(*.f64 -1/4 (*.f64 a b))
(*.f64 (*.f64 a b) -1/4)
(*.f64 a (*.f64 b -1/4))
(+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 a (*.f64 b -1/4))))
(fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 b -1/4) (*.f64 y x)))
(+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 a (*.f64 b -1/4))))
(fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 b -1/4) (*.f64 y x)))
(+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 a (*.f64 b -1/4))))
(fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 b -1/4) (*.f64 y x)))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(fma.f64 y x (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) (*.f64 y x))
(+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 a (*.f64 b -1/4))))
(fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 b -1/4) (*.f64 y x)))
(+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 a (*.f64 b -1/4))))
(fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 b -1/4) (*.f64 y x)))
(+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 a (*.f64 b -1/4))))
(fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 b -1/4) (*.f64 y x)))
(*.f64 -1/4 (*.f64 a b))
(*.f64 (*.f64 a b) -1/4)
(*.f64 a (*.f64 b -1/4))
(+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 a (*.f64 b -1/4))))
(fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 b -1/4) (*.f64 y x)))
(+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 a (*.f64 b -1/4))))
(fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 b -1/4) (*.f64 y x)))
(+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 a (*.f64 b -1/4))))
(fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 b -1/4) (*.f64 y x)))
(*.f64 -1/4 (*.f64 a b))
(*.f64 (*.f64 a b) -1/4)
(*.f64 a (*.f64 b -1/4))
(+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 a (*.f64 b -1/4))))
(fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 b -1/4) (*.f64 y x)))
(+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 a (*.f64 b -1/4))))
(fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 b -1/4) (*.f64 y x)))
(+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 a (*.f64 b -1/4))))
(fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 b -1/4) (*.f64 y x)))
(*.f64 1/16 (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(fma.f64 y x (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(fma.f64 y x (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(fma.f64 y x (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(fma.f64 y x (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(fma.f64 y x (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(fma.f64 y x (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(fma.f64 y x (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(fma.f64 y x (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(fma.f64 y x (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) (*.f64 y x))
(*.f64 1/16 (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(fma.f64 y x (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(fma.f64 y x (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(fma.f64 y x (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(fma.f64 y x (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(fma.f64 y x (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(fma.f64 y x (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(fma.f64 y x (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(fma.f64 y x (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(fma.f64 y x (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(fma.f64 y x (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(fma.f64 y x (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(fma.f64 y x (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) (*.f64 y x))
(*.f64 1/16 (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(fma.f64 y x (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(fma.f64 y x (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(fma.f64 y x (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) (*.f64 y x))
(*.f64 1/16 (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(fma.f64 y x (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(fma.f64 y x (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(fma.f64 y x (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(fma.f64 y x (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(fma.f64 y x (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(fma.f64 y x (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) (*.f64 y x))
(*.f64 1/16 (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(fma.f64 y x (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(fma.f64 y x (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(fma.f64 y x (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) (*.f64 y x))
(*.f64 1/16 (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(fma.f64 y x (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(fma.f64 y x (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(fma.f64 y x (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) (*.f64 y x))
(-.f64 (+.f64 c (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)))
(+.f64 (*.f64 (*.f64 a b) -1/4) (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 1/16 (*.f64 t z) (fma.f64 (*.f64 a b) -1/4 c))
(fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 b -1/4) c))
(-.f64 (+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))) (*.f64 1/4 (*.f64 a b)))
(+.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4))) c)
(+.f64 (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)) (fma.f64 y x c))
(fma.f64 (*.f64 a b) -1/4 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(-.f64 (+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))) (*.f64 1/4 (*.f64 a b)))
(+.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4))) c)
(+.f64 (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)) (fma.f64 y x c))
(fma.f64 (*.f64 a b) -1/4 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(-.f64 (+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))) (*.f64 1/4 (*.f64 a b)))
(+.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4))) c)
(+.f64 (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)) (fma.f64 y x c))
(fma.f64 (*.f64 a b) -1/4 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(*.f64 y x)
(-.f64 (+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))) (*.f64 1/4 (*.f64 a b)))
(+.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4))) c)
(+.f64 (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)) (fma.f64 y x c))
(fma.f64 (*.f64 a b) -1/4 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(-.f64 (+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))) (*.f64 1/4 (*.f64 a b)))
(+.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4))) c)
(+.f64 (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)) (fma.f64 y x c))
(fma.f64 (*.f64 a b) -1/4 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(-.f64 (+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))) (*.f64 1/4 (*.f64 a b)))
(+.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4))) c)
(+.f64 (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)) (fma.f64 y x c))
(fma.f64 (*.f64 a b) -1/4 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(*.f64 y x)
(-.f64 (+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))) (*.f64 1/4 (*.f64 a b)))
(+.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4))) c)
(+.f64 (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)) (fma.f64 y x c))
(fma.f64 (*.f64 a b) -1/4 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(-.f64 (+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))) (*.f64 1/4 (*.f64 a b)))
(+.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4))) c)
(+.f64 (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)) (fma.f64 y x c))
(fma.f64 (*.f64 a b) -1/4 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(-.f64 (+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))) (*.f64 1/4 (*.f64 a b)))
(+.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4))) c)
(+.f64 (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)) (fma.f64 y x c))
(fma.f64 (*.f64 a b) -1/4 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(-.f64 (+.f64 c (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)))
(+.f64 (*.f64 (*.f64 a b) -1/4) (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 1/16 (*.f64 t z) (fma.f64 (*.f64 a b) -1/4 c))
(fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 b -1/4) c))
(-.f64 (+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))) (*.f64 1/4 (*.f64 a b)))
(+.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4))) c)
(+.f64 (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)) (fma.f64 y x c))
(fma.f64 (*.f64 a b) -1/4 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(-.f64 (+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))) (*.f64 1/4 (*.f64 a b)))
(+.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4))) c)
(+.f64 (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)) (fma.f64 y x c))
(fma.f64 (*.f64 a b) -1/4 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(-.f64 (+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))) (*.f64 1/4 (*.f64 a b)))
(+.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4))) c)
(+.f64 (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)) (fma.f64 y x c))
(fma.f64 (*.f64 a b) -1/4 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(*.f64 y x)
(-.f64 (+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))) (*.f64 1/4 (*.f64 a b)))
(+.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4))) c)
(+.f64 (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)) (fma.f64 y x c))
(fma.f64 (*.f64 a b) -1/4 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(-.f64 (+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))) (*.f64 1/4 (*.f64 a b)))
(+.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4))) c)
(+.f64 (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)) (fma.f64 y x c))
(fma.f64 (*.f64 a b) -1/4 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(-.f64 (+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))) (*.f64 1/4 (*.f64 a b)))
(+.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4))) c)
(+.f64 (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)) (fma.f64 y x c))
(fma.f64 (*.f64 a b) -1/4 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(*.f64 y x)
(-.f64 (+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))) (*.f64 1/4 (*.f64 a b)))
(+.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4))) c)
(+.f64 (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)) (fma.f64 y x c))
(fma.f64 (*.f64 a b) -1/4 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(-.f64 (+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))) (*.f64 1/4 (*.f64 a b)))
(+.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4))) c)
(+.f64 (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)) (fma.f64 y x c))
(fma.f64 (*.f64 a b) -1/4 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(-.f64 (+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))) (*.f64 1/4 (*.f64 a b)))
(+.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4))) c)
(+.f64 (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)) (fma.f64 y x c))
(fma.f64 (*.f64 a b) -1/4 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(-.f64 (+.f64 c (*.f64 y x)) (*.f64 1/4 (*.f64 a b)))
(+.f64 (+.f64 (*.f64 y x) c) (*.f64 (*.f64 a b) -1/4))
(+.f64 (fma.f64 y x (*.f64 (*.f64 a b) -1/4)) c)
(fma.f64 (*.f64 a b) -1/4 (fma.f64 y x c))
(fma.f64 a (*.f64 b -1/4) (fma.f64 y x c))
(-.f64 (+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))) (*.f64 1/4 (*.f64 a b)))
(+.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4))) c)
(+.f64 (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)) (fma.f64 y x c))
(fma.f64 (*.f64 a b) -1/4 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(-.f64 (+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))) (*.f64 1/4 (*.f64 a b)))
(+.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4))) c)
(+.f64 (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)) (fma.f64 y x c))
(fma.f64 (*.f64 a b) -1/4 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(-.f64 (+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))) (*.f64 1/4 (*.f64 a b)))
(+.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4))) c)
(+.f64 (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)) (fma.f64 y x c))
(fma.f64 (*.f64 a b) -1/4 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(*.f64 1/16 (*.f64 t z))
(-.f64 (+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))) (*.f64 1/4 (*.f64 a b)))
(+.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4))) c)
(+.f64 (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)) (fma.f64 y x c))
(fma.f64 (*.f64 a b) -1/4 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(-.f64 (+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))) (*.f64 1/4 (*.f64 a b)))
(+.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4))) c)
(+.f64 (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)) (fma.f64 y x c))
(fma.f64 (*.f64 a b) -1/4 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(-.f64 (+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))) (*.f64 1/4 (*.f64 a b)))
(+.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4))) c)
(+.f64 (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)) (fma.f64 y x c))
(fma.f64 (*.f64 a b) -1/4 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(*.f64 1/16 (*.f64 t z))
(-.f64 (+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))) (*.f64 1/4 (*.f64 a b)))
(+.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4))) c)
(+.f64 (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)) (fma.f64 y x c))
(fma.f64 (*.f64 a b) -1/4 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(-.f64 (+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))) (*.f64 1/4 (*.f64 a b)))
(+.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4))) c)
(+.f64 (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)) (fma.f64 y x c))
(fma.f64 (*.f64 a b) -1/4 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(-.f64 (+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))) (*.f64 1/4 (*.f64 a b)))
(+.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4))) c)
(+.f64 (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)) (fma.f64 y x c))
(fma.f64 (*.f64 a b) -1/4 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(-.f64 (+.f64 c (*.f64 y x)) (*.f64 1/4 (*.f64 a b)))
(+.f64 (+.f64 (*.f64 y x) c) (*.f64 (*.f64 a b) -1/4))
(+.f64 (fma.f64 y x (*.f64 (*.f64 a b) -1/4)) c)
(fma.f64 (*.f64 a b) -1/4 (fma.f64 y x c))
(fma.f64 a (*.f64 b -1/4) (fma.f64 y x c))
(-.f64 (+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))) (*.f64 1/4 (*.f64 a b)))
(+.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4))) c)
(+.f64 (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)) (fma.f64 y x c))
(fma.f64 (*.f64 a b) -1/4 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(-.f64 (+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))) (*.f64 1/4 (*.f64 a b)))
(+.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4))) c)
(+.f64 (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)) (fma.f64 y x c))
(fma.f64 (*.f64 a b) -1/4 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(-.f64 (+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))) (*.f64 1/4 (*.f64 a b)))
(+.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4))) c)
(+.f64 (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)) (fma.f64 y x c))
(fma.f64 (*.f64 a b) -1/4 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(*.f64 1/16 (*.f64 t z))
(-.f64 (+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))) (*.f64 1/4 (*.f64 a b)))
(+.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4))) c)
(+.f64 (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)) (fma.f64 y x c))
(fma.f64 (*.f64 a b) -1/4 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(-.f64 (+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))) (*.f64 1/4 (*.f64 a b)))
(+.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4))) c)
(+.f64 (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)) (fma.f64 y x c))
(fma.f64 (*.f64 a b) -1/4 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(-.f64 (+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))) (*.f64 1/4 (*.f64 a b)))
(+.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4))) c)
(+.f64 (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)) (fma.f64 y x c))
(fma.f64 (*.f64 a b) -1/4 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(*.f64 1/16 (*.f64 t z))
(-.f64 (+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))) (*.f64 1/4 (*.f64 a b)))
(+.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4))) c)
(+.f64 (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)) (fma.f64 y x c))
(fma.f64 (*.f64 a b) -1/4 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(-.f64 (+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))) (*.f64 1/4 (*.f64 a b)))
(+.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4))) c)
(+.f64 (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)) (fma.f64 y x c))
(fma.f64 (*.f64 a b) -1/4 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(-.f64 (+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))) (*.f64 1/4 (*.f64 a b)))
(+.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4))) c)
(+.f64 (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)) (fma.f64 y x c))
(fma.f64 (*.f64 a b) -1/4 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(+.f64 (fma.f64 y x (*.f64 1/16 (*.f64 t z))) c)
(+.f64 (*.f64 1/16 (*.f64 t z)) (fma.f64 y x c))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) c))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4))) c)
(+.f64 (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)) (fma.f64 y x c))
(fma.f64 (*.f64 a b) -1/4 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4))) c)
(+.f64 (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)) (fma.f64 y x c))
(fma.f64 (*.f64 a b) -1/4 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4))) c)
(+.f64 (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)) (fma.f64 y x c))
(fma.f64 (*.f64 a b) -1/4 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(*.f64 -1/4 (*.f64 a b))
(*.f64 (*.f64 a b) -1/4)
(*.f64 a (*.f64 b -1/4))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4))) c)
(+.f64 (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)) (fma.f64 y x c))
(fma.f64 (*.f64 a b) -1/4 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4))) c)
(+.f64 (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)) (fma.f64 y x c))
(fma.f64 (*.f64 a b) -1/4 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4))) c)
(+.f64 (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)) (fma.f64 y x c))
(fma.f64 (*.f64 a b) -1/4 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(*.f64 -1/4 (*.f64 a b))
(*.f64 (*.f64 a b) -1/4)
(*.f64 a (*.f64 b -1/4))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4))) c)
(+.f64 (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)) (fma.f64 y x c))
(fma.f64 (*.f64 a b) -1/4 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4))) c)
(+.f64 (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)) (fma.f64 y x c))
(fma.f64 (*.f64 a b) -1/4 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4))) c)
(+.f64 (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)) (fma.f64 y x c))
(fma.f64 (*.f64 a b) -1/4 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(+.f64 (fma.f64 y x (*.f64 1/16 (*.f64 t z))) c)
(+.f64 (*.f64 1/16 (*.f64 t z)) (fma.f64 y x c))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) c))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4))) c)
(+.f64 (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)) (fma.f64 y x c))
(fma.f64 (*.f64 a b) -1/4 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4))) c)
(+.f64 (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)) (fma.f64 y x c))
(fma.f64 (*.f64 a b) -1/4 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4))) c)
(+.f64 (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)) (fma.f64 y x c))
(fma.f64 (*.f64 a b) -1/4 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(*.f64 -1/4 (*.f64 a b))
(*.f64 (*.f64 a b) -1/4)
(*.f64 a (*.f64 b -1/4))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4))) c)
(+.f64 (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)) (fma.f64 y x c))
(fma.f64 (*.f64 a b) -1/4 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4))) c)
(+.f64 (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)) (fma.f64 y x c))
(fma.f64 (*.f64 a b) -1/4 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4))) c)
(+.f64 (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)) (fma.f64 y x c))
(fma.f64 (*.f64 a b) -1/4 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(*.f64 -1/4 (*.f64 a b))
(*.f64 (*.f64 a b) -1/4)
(*.f64 a (*.f64 b -1/4))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4))) c)
(+.f64 (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)) (fma.f64 y x c))
(fma.f64 (*.f64 a b) -1/4 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4))) c)
(+.f64 (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)) (fma.f64 y x c))
(fma.f64 (*.f64 a b) -1/4 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4))) c)
(+.f64 (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)) (fma.f64 y x c))
(fma.f64 (*.f64 a b) -1/4 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(-.f64 (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 a (*.f64 b -1/4))))
(fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 b -1/4) (*.f64 y x)))
(-.f64 (+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))) (*.f64 1/4 (*.f64 a b)))
(+.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4))) c)
(+.f64 (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)) (fma.f64 y x c))
(fma.f64 (*.f64 a b) -1/4 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(-.f64 (+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))) (*.f64 1/4 (*.f64 a b)))
(+.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4))) c)
(+.f64 (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)) (fma.f64 y x c))
(fma.f64 (*.f64 a b) -1/4 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(-.f64 (+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))) (*.f64 1/4 (*.f64 a b)))
(+.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4))) c)
(+.f64 (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)) (fma.f64 y x c))
(fma.f64 (*.f64 a b) -1/4 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
c
(-.f64 (+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))) (*.f64 1/4 (*.f64 a b)))
(+.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4))) c)
(+.f64 (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)) (fma.f64 y x c))
(fma.f64 (*.f64 a b) -1/4 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(-.f64 (+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))) (*.f64 1/4 (*.f64 a b)))
(+.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4))) c)
(+.f64 (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)) (fma.f64 y x c))
(fma.f64 (*.f64 a b) -1/4 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(-.f64 (+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))) (*.f64 1/4 (*.f64 a b)))
(+.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4))) c)
(+.f64 (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)) (fma.f64 y x c))
(fma.f64 (*.f64 a b) -1/4 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
c
(-.f64 (+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))) (*.f64 1/4 (*.f64 a b)))
(+.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4))) c)
(+.f64 (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)) (fma.f64 y x c))
(fma.f64 (*.f64 a b) -1/4 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(-.f64 (+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))) (*.f64 1/4 (*.f64 a b)))
(+.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4))) c)
(+.f64 (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)) (fma.f64 y x c))
(fma.f64 (*.f64 a b) -1/4 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(-.f64 (+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))) (*.f64 1/4 (*.f64 a b)))
(+.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4))) c)
(+.f64 (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)) (fma.f64 y x c))
(fma.f64 (*.f64 a b) -1/4 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))

localize22.0ms (0.2%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(fma.f64 t (*.f64 z 1/16) (fma.f64 (*.f64 a b) -1/4 c))
0.0b
(fma.f64 (*.f64 a b) -1/4 c)
Compiler

Compiled 53 to 25 computations (52.8% saved)

series14.0ms (0.1%)

Counts
2 → 96
Calls

24 calls:

TimeVariablePointExpression
3.0ms
t
@0
(fma.f64 t (*.f64 z 1/16) (fma.f64 (*.f64 a b) -1/4 c))
1.0ms
a
@-inf
(fma.f64 (*.f64 a b) -1/4 c)
1.0ms
a
@0
(fma.f64 (*.f64 a b) -1/4 c)
1.0ms
z
@-inf
(fma.f64 t (*.f64 z 1/16) (fma.f64 (*.f64 a b) -1/4 c))
1.0ms
z
@0
(fma.f64 t (*.f64 z 1/16) (fma.f64 (*.f64 a b) -1/4 c))

rewrite65.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
532×log-prod_binary64
421×exp-prod_binary64
356×prod-exp_binary64
321×pow-prod-down_binary64
303×pow2_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01223
123923
2270023
Stop Event
node limit
Counts
2 → 73
Calls
Call 1
Inputs
(fma.f64 (*.f64 a b) -1/4 c)
(fma.f64 t (*.f64 z 1/16) (fma.f64 (*.f64 a b) -1/4 c))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 c (*.f64 a (*.f64 b -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 a (*.f64 b -1/4)) c)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (fma.f64 a (*.f64 b -1/4) c))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 a (*.f64 b -1/4)) 1) c)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (fma.f64 a (*.f64 b -1/4) c))) 2)) (log.f64 (cbrt.f64 (exp.f64 (fma.f64 a (*.f64 b -1/4) c)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (fma.f64 a (*.f64 b -1/4) c)))) (log.f64 (sqrt.f64 (exp.f64 (fma.f64 a (*.f64 b -1/4) c)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 a (*.f64 b -1/4) c))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 a (*.f64 b -1/4) c) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 a (*.f64 b -1/4) c))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 a (*.f64 b -1/4) c)) (pow.f64 (cbrt.f64 (fma.f64 a (*.f64 b -1/4) c)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 a (*.f64 b -1/4) c)) 2) (cbrt.f64 (fma.f64 a (*.f64 b -1/4) c)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 a (*.f64 b -1/4) c)) (sqrt.f64 (fma.f64 a (*.f64 b -1/4) c)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 a (*.f64 b -1/4)) 3) (pow.f64 c 3)) (+.f64 (pow.f64 (*.f64 a (*.f64 b -1/4)) 2) (-.f64 (*.f64 c c) (*.f64 (*.f64 a (*.f64 b -1/4)) c))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 a (*.f64 b -1/4)) 2) (*.f64 c c)) (-.f64 (*.f64 a (*.f64 b -1/4)) c))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 a (*.f64 b -1/4) c) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 a (*.f64 b -1/4) c) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 a (*.f64 b -1/4) c) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 a (*.f64 b -1/4) c)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 a (*.f64 b -1/4) c)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (fma.f64 a (*.f64 b -1/4) c)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (fma.f64 a (*.f64 b -1/4) c))) 2)) (cbrt.f64 (log.f64 (fma.f64 a (*.f64 b -1/4) c))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (fma.f64 a (*.f64 b -1/4) c)))) (sqrt.f64 (log.f64 (fma.f64 a (*.f64 b -1/4) c))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 a (*.f64 b -1/4) c) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 a (*.f64 b -1/4) c)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 a (*.f64 b -1/4) c))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 c)) (pow.f64 (exp.f64 b) (*.f64 a -1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 b) (*.f64 a -1/4)) (+.f64 1 (expm1.f64 c))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 a (*.f64 b -1/4) c) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 a (*.f64 b -1/4) c)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 a (*.f64 b -1/4) c)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 a (*.f64 b -1/4) c)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 a (*.f64 b -1/4) c)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (fma.f64 a (*.f64 b -1/4) c))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (fma.f64 a (*.f64 b -1/4) c))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (fma.f64 a (*.f64 b -1/4) c))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (fma.f64 a (*.f64 b -1/4) c)) 1) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 a (*.f64 b -1/4) c) (*.f64 (*.f64 t z) 1/16))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 t z) 1/16) (fma.f64 a (*.f64 b -1/4) c))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (fma.f64 (*.f64 t z) 1/16 (fma.f64 a (*.f64 b -1/4) c)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (*.f64 t z) 1/16) 1) (fma.f64 a (*.f64 b -1/4) c))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 t z) 1/16 (*.f64 a (*.f64 b -1/4))) c)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (fma.f64 (*.f64 t z) 1/16 (fma.f64 a (*.f64 b -1/4) c)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (fma.f64 (*.f64 t z) 1/16 (fma.f64 a (*.f64 b -1/4) c))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (fma.f64 (*.f64 t z) 1/16 (fma.f64 a (*.f64 b -1/4) c))))) (log.f64 (sqrt.f64 (exp.f64 (fma.f64 (*.f64 t z) 1/16 (fma.f64 a (*.f64 b -1/4) c))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 (*.f64 t z) 1/16 (fma.f64 a (*.f64 b -1/4) c)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (*.f64 t z) 1/16 (fma.f64 a (*.f64 b -1/4) c)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 (*.f64 t z) 1/16 (fma.f64 a (*.f64 b -1/4) c)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 (*.f64 t z) 1/16 (fma.f64 a (*.f64 b -1/4) c))) (pow.f64 (cbrt.f64 (fma.f64 (*.f64 t z) 1/16 (fma.f64 a (*.f64 b -1/4) c))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 (*.f64 t z) 1/16 (fma.f64 a (*.f64 b -1/4) c))) 2) (cbrt.f64 (fma.f64 (*.f64 t z) 1/16 (fma.f64 a (*.f64 b -1/4) c))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 (*.f64 t z) 1/16 (fma.f64 a (*.f64 b -1/4) c))) (sqrt.f64 (fma.f64 (*.f64 t z) 1/16 (fma.f64 a (*.f64 b -1/4) c))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 (*.f64 t z) 1/16) 3) (pow.f64 (fma.f64 a (*.f64 b -1/4) c) 3)) (+.f64 (pow.f64 (*.f64 (*.f64 t z) 1/16) 2) (-.f64 (pow.f64 (fma.f64 a (*.f64 b -1/4) c) 2) (*.f64 (*.f64 (*.f64 t z) 1/16) (fma.f64 a (*.f64 b -1/4) c)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (*.f64 t z) 1/16) 2) (pow.f64 (fma.f64 a (*.f64 b -1/4) c) 2)) (-.f64 (*.f64 (*.f64 t z) 1/16) (fma.f64 a (*.f64 b -1/4) c)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 (*.f64 t z) 1/16 (fma.f64 a (*.f64 b -1/4) c)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (*.f64 t z) 1/16 (fma.f64 a (*.f64 b -1/4) c)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (*.f64 t z) 1/16 (fma.f64 a (*.f64 b -1/4) c)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 (*.f64 t z) 1/16 (fma.f64 a (*.f64 b -1/4) c))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 (*.f64 t z) 1/16 (fma.f64 a (*.f64 b -1/4) c))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (fma.f64 (*.f64 t z) 1/16 (fma.f64 a (*.f64 b -1/4) c))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (fma.f64 (*.f64 t z) 1/16 (fma.f64 a (*.f64 b -1/4) c)))) 2)) (cbrt.f64 (log.f64 (fma.f64 (*.f64 t z) 1/16 (fma.f64 a (*.f64 b -1/4) c)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (fma.f64 (*.f64 t z) 1/16 (fma.f64 a (*.f64 b -1/4) c))))) (sqrt.f64 (log.f64 (fma.f64 (*.f64 t z) 1/16 (fma.f64 a (*.f64 b -1/4) c)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 (*.f64 t z) 1/16 (fma.f64 a (*.f64 b -1/4) c)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 (*.f64 t z) 1/16 (fma.f64 a (*.f64 b -1/4) c))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 (*.f64 t z) 1/16 (fma.f64 a (*.f64 b -1/4) c)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 a (*.f64 b -1/4) c))) (pow.f64 (pow.f64 (exp.f64 z) 1/16) t)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (pow.f64 (exp.f64 z) 1/16) t) (+.f64 1 (expm1.f64 (fma.f64 a (*.f64 b -1/4) c)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 (*.f64 t z) 1/16 (fma.f64 a (*.f64 b -1/4) c)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 (*.f64 t z) 1/16 (fma.f64 a (*.f64 b -1/4) c))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 (*.f64 t z) 1/16 (fma.f64 a (*.f64 b -1/4) c))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 (*.f64 t z) 1/16 (fma.f64 a (*.f64 b -1/4) c))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 (*.f64 t z) 1/16 (fma.f64 a (*.f64 b -1/4) c))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (fma.f64 (*.f64 t z) 1/16 (fma.f64 a (*.f64 b -1/4) c)))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (fma.f64 (*.f64 t z) 1/16 (fma.f64 a (*.f64 b -1/4) c)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (fma.f64 (*.f64 t z) 1/16 (fma.f64 a (*.f64 b -1/4) c)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (fma.f64 (*.f64 t z) 1/16 (fma.f64 a (*.f64 b -1/4) c))) 1) 1))))))

simplify28.0ms (0.3%)

Algorithm
egg-herbie
Rules
36×fma-def_binary64
10×*-commutative_binary64
associate-*r*_binary64
associate-*l*_binary64
+-commutative_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0161186
1301124
2581034
3921034
Stop Event
saturated
Counts
169 → 84
Calls
Call 1
Inputs
c
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(*.f64 -1/4 (*.f64 a b))
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(*.f64 -1/4 (*.f64 a b))
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
c
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(*.f64 -1/4 (*.f64 a b))
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(*.f64 -1/4 (*.f64 a b))
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(*.f64 -1/4 (*.f64 a b))
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
c
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
c
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(*.f64 1/16 (*.f64 t z))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(*.f64 1/16 (*.f64 t z))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(*.f64 1/16 (*.f64 t z))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(*.f64 1/16 (*.f64 t z))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(*.f64 -1/4 (*.f64 a b))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(*.f64 -1/4 (*.f64 a b))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(*.f64 -1/4 (*.f64 a b))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(*.f64 -1/4 (*.f64 a b))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
c
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
c
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
Outputs
c
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) c)
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) c)
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) c)
(*.f64 -1/4 (*.f64 a b))
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) c)
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) c)
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) c)
(*.f64 -1/4 (*.f64 a b))
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) c)
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) c)
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) c)
c
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) c)
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) c)
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) c)
(*.f64 -1/4 (*.f64 a b))
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) c)
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) c)
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) c)
(*.f64 -1/4 (*.f64 a b))
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) c)
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) c)
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) c)
(*.f64 -1/4 (*.f64 a b))
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) c)
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) c)
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) c)
c
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) c)
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) c)
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) c)
c
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) c)
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) c)
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) c)
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) c)
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b))))
(+.f64 (*.f64 -1/4 (*.f64 a b)) (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 -1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b))))
(+.f64 (*.f64 -1/4 (*.f64 a b)) (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 -1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b))))
(+.f64 (*.f64 -1/4 (*.f64 a b)) (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 -1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))
(*.f64 1/16 (*.f64 t z))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b))))
(+.f64 (*.f64 -1/4 (*.f64 a b)) (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 -1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b))))
(+.f64 (*.f64 -1/4 (*.f64 a b)) (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 -1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b))))
(+.f64 (*.f64 -1/4 (*.f64 a b)) (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 -1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))
(*.f64 1/16 (*.f64 t z))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b))))
(+.f64 (*.f64 -1/4 (*.f64 a b)) (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 -1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b))))
(+.f64 (*.f64 -1/4 (*.f64 a b)) (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 -1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b))))
(+.f64 (*.f64 -1/4 (*.f64 a b)) (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 -1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) c)
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b))))
(+.f64 (*.f64 -1/4 (*.f64 a b)) (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 -1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b))))
(+.f64 (*.f64 -1/4 (*.f64 a b)) (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 -1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b))))
(+.f64 (*.f64 -1/4 (*.f64 a b)) (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 -1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))
(*.f64 1/16 (*.f64 t z))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b))))
(+.f64 (*.f64 -1/4 (*.f64 a b)) (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 -1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b))))
(+.f64 (*.f64 -1/4 (*.f64 a b)) (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 -1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b))))
(+.f64 (*.f64 -1/4 (*.f64 a b)) (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 -1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))
(*.f64 1/16 (*.f64 t z))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b))))
(+.f64 (*.f64 -1/4 (*.f64 a b)) (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 -1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b))))
(+.f64 (*.f64 -1/4 (*.f64 a b)) (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 -1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b))))
(+.f64 (*.f64 -1/4 (*.f64 a b)) (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 -1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) c)
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b))))
(+.f64 (*.f64 -1/4 (*.f64 a b)) (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 -1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b))))
(+.f64 (*.f64 -1/4 (*.f64 a b)) (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 -1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b))))
(+.f64 (*.f64 -1/4 (*.f64 a b)) (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 -1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))
(*.f64 -1/4 (*.f64 a b))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b))))
(+.f64 (*.f64 -1/4 (*.f64 a b)) (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 -1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b))))
(+.f64 (*.f64 -1/4 (*.f64 a b)) (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 -1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b))))
(+.f64 (*.f64 -1/4 (*.f64 a b)) (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 -1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))
(*.f64 -1/4 (*.f64 a b))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b))))
(+.f64 (*.f64 -1/4 (*.f64 a b)) (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 -1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b))))
(+.f64 (*.f64 -1/4 (*.f64 a b)) (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 -1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b))))
(+.f64 (*.f64 -1/4 (*.f64 a b)) (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 -1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) c)
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b))))
(+.f64 (*.f64 -1/4 (*.f64 a b)) (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 -1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b))))
(+.f64 (*.f64 -1/4 (*.f64 a b)) (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 -1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b))))
(+.f64 (*.f64 -1/4 (*.f64 a b)) (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 -1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))
(*.f64 -1/4 (*.f64 a b))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b))))
(+.f64 (*.f64 -1/4 (*.f64 a b)) (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 -1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b))))
(+.f64 (*.f64 -1/4 (*.f64 a b)) (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 -1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b))))
(+.f64 (*.f64 -1/4 (*.f64 a b)) (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 -1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))
(*.f64 -1/4 (*.f64 a b))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b))))
(+.f64 (*.f64 -1/4 (*.f64 a b)) (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 -1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b))))
(+.f64 (*.f64 -1/4 (*.f64 a b)) (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 -1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b))))
(+.f64 (*.f64 -1/4 (*.f64 a b)) (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 -1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))
(+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) (*.f64 1/16 (*.f64 t z)))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b))))
(+.f64 (*.f64 -1/4 (*.f64 a b)) (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 -1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b))))
(+.f64 (*.f64 -1/4 (*.f64 a b)) (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 -1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b))))
(+.f64 (*.f64 -1/4 (*.f64 a b)) (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 -1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))
c
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b))))
(+.f64 (*.f64 -1/4 (*.f64 a b)) (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 -1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b))))
(+.f64 (*.f64 -1/4 (*.f64 a b)) (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 -1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b))))
(+.f64 (*.f64 -1/4 (*.f64 a b)) (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 -1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))
c
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b))))
(+.f64 (*.f64 -1/4 (*.f64 a b)) (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 -1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b))))
(+.f64 (*.f64 -1/4 (*.f64 a b)) (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 -1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b))))
(+.f64 (*.f64 -1/4 (*.f64 a b)) (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 -1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))

eval96.0ms (0.9%)

Compiler

Compiled 6151 to 3234 computations (47.4% saved)

prune98.0ms (0.9%)

Pruning

11 alts after pruning (11 fresh and 0 done)

PrunedKeptTotal
New24211253
Fresh000
Picked101
Done101
Total24411255
Error
0b
Counts
255 → 11
Alt Table
Click to see full alt table
StatusErrorProgram
29.5b
(+.f64 (*.f64 1/16 (*.f64 t z)) c)
27.9b
(+.f64 (*.f64 y x) c)
35.5b
(fma.f64 x y (*.f64 1/16 (*.f64 t z)))
13.4b
(-.f64 (+.f64 c (*.f64 y x)) (*.f64 1/4 (*.f64 a b)))
15.2b
(+.f64 (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) c)
42.2b
c
13.3b
(fma.f64 a (*.f64 b -1/4) (fma.f64 y x c))
0.0b
(fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
14.5b
(-.f64 (+.f64 c (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
27.8b
(+.f64 (*.f64 a (*.f64 b -1/4)) c)
15.2b
(fma.f64 x y (fma.f64 t (*.f64 z 1/16) c))
Compiler

Compiled 336 to 245 computations (27.1% saved)

localize19.0ms (0.2%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
0.0b
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) c))
0.0b
(fma.f64 1/16 (*.f64 t z) c)
Compiler

Compiled 51 to 23 computations (54.9% saved)

series21.0ms (0.2%)

Counts
3 → 180
Calls

45 calls:

TimeVariablePointExpression
4.0ms
c
@inf
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) c))
1.0ms
b
@-inf
(fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
1.0ms
b
@inf
(fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
1.0ms
a
@0
(fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
1.0ms
b
@0
(fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))

rewrite76.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
673×log-prod_binary64
416×pow-prod-down_binary64
385×pow2_binary64
269×pow1/3_binary64
267×expm1-udef_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01539
129839
2340739
Stop Event
node limit
Counts
3 → 92
Calls
Call 1
Inputs
(fma.f64 1/16 (*.f64 t z) c)
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 c (*.f64 (*.f64 1/16 t) z))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 1/16 t) z) c)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (fma.f64 1/16 (*.f64 t z) c))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (*.f64 1/16 t) z) 1) c)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (fma.f64 1/16 (*.f64 t z) c))) 2)) (log.f64 (cbrt.f64 (exp.f64 (fma.f64 1/16 (*.f64 t z) c)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (fma.f64 1/16 (*.f64 t z) c)))) (log.f64 (sqrt.f64 (exp.f64 (fma.f64 1/16 (*.f64 t z) c)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 1/16 (*.f64 t z) c))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 1/16 (*.f64 t z) c) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 1/16 (*.f64 t z) c))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 1/16 (*.f64 t z) c)) (cbrt.f64 (pow.f64 (fma.f64 1/16 (*.f64 t z) c) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (fma.f64 1/16 (*.f64 t z) c) 2)) (cbrt.f64 (fma.f64 1/16 (*.f64 t z) c)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 1/16 (*.f64 t z) c)) (sqrt.f64 (fma.f64 1/16 (*.f64 t z) c)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 (*.f64 1/16 t) z) 3) (pow.f64 c 3)) (+.f64 (pow.f64 (*.f64 (*.f64 1/16 t) z) 2) (-.f64 (*.f64 c c) (*.f64 (*.f64 (*.f64 1/16 t) z) c))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (*.f64 1/16 t) z) 2) (*.f64 c c)) (-.f64 (*.f64 (*.f64 1/16 t) z) c))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 1/16 (*.f64 t z) c) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 1/16 (*.f64 t z) c) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 1/16 (*.f64 t z) c) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 1/16 (*.f64 t z) c)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 1/16 (*.f64 t z) c)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 1/16 (*.f64 t z) c) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 1/16 (*.f64 t z) c)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 1/16 (*.f64 t z) c))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 c) (exp.f64 (*.f64 (*.f64 1/16 t) z))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 c)) (exp.f64 (*.f64 (*.f64 1/16 t) z))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 (*.f64 1/16 t) z)) (+.f64 1 (expm1.f64 c))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 1/16 (*.f64 t z) c) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 1/16 (*.f64 t z) c)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 1/16 (*.f64 t z) c)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 1/16 (*.f64 t z) c)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 1/16 (*.f64 t z) c)) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1/16 (*.f64 t z) c) (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y x) (fma.f64 1/16 (*.f64 t z) c))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 y x) 1) (fma.f64 1/16 (*.f64 t z) c))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 y x (*.f64 (*.f64 1/16 t) z)) c)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c))))) (log.f64 (sqrt.f64 (exp.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c))) (cbrt.f64 (pow.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)) 2)) (cbrt.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c))) (sqrt.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 (fma.f64 1/16 (*.f64 t z) c) 3)) (+.f64 (pow.f64 (*.f64 y x) 2) (-.f64 (pow.f64 (fma.f64 1/16 (*.f64 t z) c) 2) (*.f64 (*.f64 y x) (fma.f64 1/16 (*.f64 t z) c)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (fma.f64 1/16 (*.f64 t z) c) 2)) (-.f64 (*.f64 y x) (fma.f64 1/16 (*.f64 t z) c)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 1/16 (*.f64 t z) c)) (exp.f64 (*.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 1/16 (*.f64 t z) c))) (exp.f64 (*.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 y x)) (+.f64 1 (expm1.f64 (fma.f64 1/16 (*.f64 t z) c)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)) (*.f64 a (*.f64 b -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 a (*.f64 b -1/4)) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 a (*.f64 b -1/4)) 1) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 a (*.f64 b -1/4) (*.f64 y x)) (fma.f64 1/16 (*.f64 t z) c))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c))))) 2)) (log.f64 (cbrt.f64 (exp.f64 (fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))))) (log.f64 (sqrt.f64 (exp.f64 (fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))) (pow.f64 (cbrt.f64 (fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))) 2) (cbrt.f64 (fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))) (sqrt.f64 (fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 a (*.f64 b -1/4)) 3) (pow.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)) 3)) (+.f64 (pow.f64 (*.f64 a (*.f64 b -1/4)) 2) (-.f64 (pow.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)) 2) (*.f64 (*.f64 a (*.f64 b -1/4)) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 a (*.f64 b -1/4)) 2) (pow.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)) 2)) (-.f64 (*.f64 a (*.f64 b -1/4)) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c))) (exp.f64 (*.f64 a (*.f64 b -1/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))) (exp.f64 (*.f64 a (*.f64 b -1/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 a (*.f64 b -1/4))) (+.f64 1 (expm1.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))) 1))))))

simplify59.0ms (0.6%)

Algorithm
egg-herbie
Rules
106×fma-def_binary64
21×associate-+l+_binary64
14×associate-+r+_binary64
11×+-commutative_binary64
11×*-commutative_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0252535
1532473
21082245
32052245
42172245
Stop Event
saturated
Counts
272 → 112
Calls
Call 1
Inputs
c
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(*.f64 1/16 (*.f64 t z))
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(*.f64 1/16 (*.f64 t z))
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(+.f64 c (*.f64 1/16 (*.f64 t z)))
c
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(*.f64 1/16 (*.f64 t z))
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(*.f64 1/16 (*.f64 t z))
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(*.f64 1/16 (*.f64 t z))
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(+.f64 c (*.f64 1/16 (*.f64 t z)))
c
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(+.f64 c (*.f64 1/16 (*.f64 t z)))
c
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(*.f64 y x)
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(*.f64 y x)
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(*.f64 y x)
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(*.f64 y x)
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(+.f64 c (*.f64 y x))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(*.f64 1/16 (*.f64 t z))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(*.f64 1/16 (*.f64 t z))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(+.f64 c (*.f64 y x))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(*.f64 1/16 (*.f64 t z))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(*.f64 1/16 (*.f64 t z))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
c
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
c
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(*.f64 -1/4 (*.f64 a b))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(*.f64 -1/4 (*.f64 a b))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(*.f64 -1/4 (*.f64 a b))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(*.f64 -1/4 (*.f64 a b))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(*.f64 y x)
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(*.f64 y x)
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(*.f64 y x)
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(*.f64 y x)
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(*.f64 1/16 (*.f64 t z))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(*.f64 1/16 (*.f64 t z))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(*.f64 1/16 (*.f64 t z))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(*.f64 1/16 (*.f64 t z))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
c
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
c
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
Outputs
c
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(fma.f64 (*.f64 1/16 t) z c)
(fma.f64 t (*.f64 1/16 z) c)
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(fma.f64 (*.f64 1/16 t) z c)
(fma.f64 t (*.f64 1/16 z) c)
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(fma.f64 (*.f64 1/16 t) z c)
(fma.f64 t (*.f64 1/16 z) c)
(*.f64 1/16 (*.f64 t z))
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(fma.f64 (*.f64 1/16 t) z c)
(fma.f64 t (*.f64 1/16 z) c)
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(fma.f64 (*.f64 1/16 t) z c)
(fma.f64 t (*.f64 1/16 z) c)
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(fma.f64 (*.f64 1/16 t) z c)
(fma.f64 t (*.f64 1/16 z) c)
(*.f64 1/16 (*.f64 t z))
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(fma.f64 (*.f64 1/16 t) z c)
(fma.f64 t (*.f64 1/16 z) c)
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(fma.f64 (*.f64 1/16 t) z c)
(fma.f64 t (*.f64 1/16 z) c)
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(fma.f64 (*.f64 1/16 t) z c)
(fma.f64 t (*.f64 1/16 z) c)
c
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(fma.f64 (*.f64 1/16 t) z c)
(fma.f64 t (*.f64 1/16 z) c)
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(fma.f64 (*.f64 1/16 t) z c)
(fma.f64 t (*.f64 1/16 z) c)
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(fma.f64 (*.f64 1/16 t) z c)
(fma.f64 t (*.f64 1/16 z) c)
(*.f64 1/16 (*.f64 t z))
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(fma.f64 (*.f64 1/16 t) z c)
(fma.f64 t (*.f64 1/16 z) c)
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(fma.f64 (*.f64 1/16 t) z c)
(fma.f64 t (*.f64 1/16 z) c)
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(fma.f64 (*.f64 1/16 t) z c)
(fma.f64 t (*.f64 1/16 z) c)
(*.f64 1/16 (*.f64 t z))
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(fma.f64 (*.f64 1/16 t) z c)
(fma.f64 t (*.f64 1/16 z) c)
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(fma.f64 (*.f64 1/16 t) z c)
(fma.f64 t (*.f64 1/16 z) c)
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(fma.f64 (*.f64 1/16 t) z c)
(fma.f64 t (*.f64 1/16 z) c)
(*.f64 1/16 (*.f64 t z))
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(fma.f64 (*.f64 1/16 t) z c)
(fma.f64 t (*.f64 1/16 z) c)
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(fma.f64 (*.f64 1/16 t) z c)
(fma.f64 t (*.f64 1/16 z) c)
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(fma.f64 (*.f64 1/16 t) z c)
(fma.f64 t (*.f64 1/16 z) c)
c
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(fma.f64 (*.f64 1/16 t) z c)
(fma.f64 t (*.f64 1/16 z) c)
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(fma.f64 (*.f64 1/16 t) z c)
(fma.f64 t (*.f64 1/16 z) c)
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(fma.f64 (*.f64 1/16 t) z c)
(fma.f64 t (*.f64 1/16 z) c)
c
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(fma.f64 (*.f64 1/16 t) z c)
(fma.f64 t (*.f64 1/16 z) c)
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(fma.f64 (*.f64 1/16 t) z c)
(fma.f64 t (*.f64 1/16 z) c)
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(fma.f64 (*.f64 1/16 t) z c)
(fma.f64 t (*.f64 1/16 z) c)
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(fma.f64 (*.f64 1/16 t) z c)
(fma.f64 t (*.f64 1/16 z) c)
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 y x (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 (*.f64 1/16 t) z (*.f64 y x)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x c))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 y x (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 (*.f64 1/16 t) z (*.f64 y x)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x c))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 y x (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 (*.f64 1/16 t) z (*.f64 y x)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x c))
(*.f64 y x)
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 y x (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 (*.f64 1/16 t) z (*.f64 y x)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x c))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 y x (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 (*.f64 1/16 t) z (*.f64 y x)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x c))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 y x (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 (*.f64 1/16 t) z (*.f64 y x)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x c))
(*.f64 y x)
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 y x (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 (*.f64 1/16 t) z (*.f64 y x)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x c))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 y x (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 (*.f64 1/16 t) z (*.f64 y x)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x c))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 y x (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 (*.f64 1/16 t) z (*.f64 y x)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x c))
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(fma.f64 (*.f64 1/16 t) z c)
(fma.f64 t (*.f64 1/16 z) c)
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 y x (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 (*.f64 1/16 t) z (*.f64 y x)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x c))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 y x (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 (*.f64 1/16 t) z (*.f64 y x)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x c))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 y x (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 (*.f64 1/16 t) z (*.f64 y x)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x c))
(*.f64 y x)
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 y x (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 (*.f64 1/16 t) z (*.f64 y x)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x c))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 y x (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 (*.f64 1/16 t) z (*.f64 y x)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x c))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 y x (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 (*.f64 1/16 t) z (*.f64 y x)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x c))
(*.f64 y x)
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 y x (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 (*.f64 1/16 t) z (*.f64 y x)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x c))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 y x (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 (*.f64 1/16 t) z (*.f64 y x)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x c))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 y x (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 (*.f64 1/16 t) z (*.f64 y x)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x c))
(+.f64 c (*.f64 y x))
(fma.f64 y x c)
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 y x (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 (*.f64 1/16 t) z (*.f64 y x)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x c))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 y x (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 (*.f64 1/16 t) z (*.f64 y x)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x c))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 y x (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 (*.f64 1/16 t) z (*.f64 y x)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x c))
(*.f64 1/16 (*.f64 t z))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 y x (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 (*.f64 1/16 t) z (*.f64 y x)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x c))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 y x (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 (*.f64 1/16 t) z (*.f64 y x)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x c))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 y x (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 (*.f64 1/16 t) z (*.f64 y x)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x c))
(*.f64 1/16 (*.f64 t z))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 y x (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 (*.f64 1/16 t) z (*.f64 y x)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x c))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 y x (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 (*.f64 1/16 t) z (*.f64 y x)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x c))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 y x (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 (*.f64 1/16 t) z (*.f64 y x)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x c))
(+.f64 c (*.f64 y x))
(fma.f64 y x c)
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 y x (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 (*.f64 1/16 t) z (*.f64 y x)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x c))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 y x (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 (*.f64 1/16 t) z (*.f64 y x)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x c))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 y x (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 (*.f64 1/16 t) z (*.f64 y x)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x c))
(*.f64 1/16 (*.f64 t z))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 y x (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 (*.f64 1/16 t) z (*.f64 y x)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x c))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 y x (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 (*.f64 1/16 t) z (*.f64 y x)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x c))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 y x (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 (*.f64 1/16 t) z (*.f64 y x)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x c))
(*.f64 1/16 (*.f64 t z))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 y x (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 (*.f64 1/16 t) z (*.f64 y x)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x c))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 y x (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 (*.f64 1/16 t) z (*.f64 y x)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x c))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 y x (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 (*.f64 1/16 t) z (*.f64 y x)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x c))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(fma.f64 y x (*.f64 1/16 (*.f64 t z)))
(fma.f64 (*.f64 1/16 t) z (*.f64 y x))
(fma.f64 t (*.f64 1/16 z) (*.f64 y x))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 y x (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 (*.f64 1/16 t) z (*.f64 y x)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x c))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 y x (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 (*.f64 1/16 t) z (*.f64 y x)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x c))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 y x (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 (*.f64 1/16 t) z (*.f64 y x)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x c))
c
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 y x (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 (*.f64 1/16 t) z (*.f64 y x)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x c))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 y x (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 (*.f64 1/16 t) z (*.f64 y x)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x c))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 y x (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 (*.f64 1/16 t) z (*.f64 y x)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x c))
c
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 y x (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 (*.f64 1/16 t) z (*.f64 y x)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x c))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 y x (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 (*.f64 1/16 t) z (*.f64 y x)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x c))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 y x (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 (*.f64 1/16 t) z (*.f64 y x)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x c))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 y x (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 (*.f64 1/16 t) z (*.f64 y x)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x c))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 -1/4 b) c)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x (fma.f64 a (*.f64 -1/4 b) c)))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 -1/4 b) c)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x (fma.f64 a (*.f64 -1/4 b) c)))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 -1/4 b) c)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x (fma.f64 a (*.f64 -1/4 b) c)))
(*.f64 -1/4 (*.f64 a b))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 -1/4 b) c)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x (fma.f64 a (*.f64 -1/4 b) c)))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 -1/4 b) c)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x (fma.f64 a (*.f64 -1/4 b) c)))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 -1/4 b) c)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x (fma.f64 a (*.f64 -1/4 b) c)))
(*.f64 -1/4 (*.f64 a b))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 -1/4 b) c)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x (fma.f64 a (*.f64 -1/4 b) c)))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 -1/4 b) c)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x (fma.f64 a (*.f64 -1/4 b) c)))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 -1/4 b) c)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x (fma.f64 a (*.f64 -1/4 b) c)))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 y x (*.f64 1/16 (*.f64 t z))))
(+.f64 c (fma.f64 (*.f64 1/16 t) z (*.f64 y x)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x c))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 -1/4 b) c)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x (fma.f64 a (*.f64 -1/4 b) c)))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 -1/4 b) c)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x (fma.f64 a (*.f64 -1/4 b) c)))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 -1/4 b) c)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x (fma.f64 a (*.f64 -1/4 b) c)))
(*.f64 -1/4 (*.f64 a b))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 -1/4 b) c)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x (fma.f64 a (*.f64 -1/4 b) c)))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 -1/4 b) c)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x (fma.f64 a (*.f64 -1/4 b) c)))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 -1/4 b) c)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x (fma.f64 a (*.f64 -1/4 b) c)))
(*.f64 -1/4 (*.f64 a b))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 -1/4 b) c)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x (fma.f64 a (*.f64 -1/4 b) c)))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 -1/4 b) c)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x (fma.f64 a (*.f64 -1/4 b) c)))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 -1/4 b) c)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x (fma.f64 a (*.f64 -1/4 b) c)))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b))))
(+.f64 (fma.f64 (*.f64 1/16 t) z c) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 -1/4 b) c))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 -1/4 b) c)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x (fma.f64 a (*.f64 -1/4 b) c)))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 -1/4 b) c)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x (fma.f64 a (*.f64 -1/4 b) c)))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 -1/4 b) c)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x (fma.f64 a (*.f64 -1/4 b) c)))
(*.f64 y x)
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 -1/4 b) c)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x (fma.f64 a (*.f64 -1/4 b) c)))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 -1/4 b) c)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x (fma.f64 a (*.f64 -1/4 b) c)))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 -1/4 b) c)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x (fma.f64 a (*.f64 -1/4 b) c)))
(*.f64 y x)
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 -1/4 b) c)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x (fma.f64 a (*.f64 -1/4 b) c)))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 -1/4 b) c)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x (fma.f64 a (*.f64 -1/4 b) c)))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 -1/4 b) c)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x (fma.f64 a (*.f64 -1/4 b) c)))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b))))
(+.f64 (fma.f64 (*.f64 1/16 t) z c) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 -1/4 b) c))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 -1/4 b) c)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x (fma.f64 a (*.f64 -1/4 b) c)))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 -1/4 b) c)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x (fma.f64 a (*.f64 -1/4 b) c)))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 -1/4 b) c)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x (fma.f64 a (*.f64 -1/4 b) c)))
(*.f64 y x)
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 -1/4 b) c)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x (fma.f64 a (*.f64 -1/4 b) c)))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 -1/4 b) c)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x (fma.f64 a (*.f64 -1/4 b) c)))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 -1/4 b) c)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x (fma.f64 a (*.f64 -1/4 b) c)))
(*.f64 y x)
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 -1/4 b) c)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x (fma.f64 a (*.f64 -1/4 b) c)))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 -1/4 b) c)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x (fma.f64 a (*.f64 -1/4 b) c)))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 -1/4 b) c)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x (fma.f64 a (*.f64 -1/4 b) c)))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 y x (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 (*.f64 -1/4 a) b (*.f64 y x)))
(fma.f64 y x (fma.f64 a (*.f64 -1/4 b) c))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 -1/4 b) c)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x (fma.f64 a (*.f64 -1/4 b) c)))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 -1/4 b) c)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x (fma.f64 a (*.f64 -1/4 b) c)))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 -1/4 b) c)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x (fma.f64 a (*.f64 -1/4 b) c)))
(*.f64 1/16 (*.f64 t z))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 -1/4 b) c)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x (fma.f64 a (*.f64 -1/4 b) c)))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 -1/4 b) c)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x (fma.f64 a (*.f64 -1/4 b) c)))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 -1/4 b) c)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x (fma.f64 a (*.f64 -1/4 b) c)))
(*.f64 1/16 (*.f64 t z))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 -1/4 b) c)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x (fma.f64 a (*.f64 -1/4 b) c)))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 -1/4 b) c)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x (fma.f64 a (*.f64 -1/4 b) c)))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 -1/4 b) c)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x (fma.f64 a (*.f64 -1/4 b) c)))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 y x (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 (*.f64 -1/4 a) b (*.f64 y x)))
(fma.f64 y x (fma.f64 a (*.f64 -1/4 b) c))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 -1/4 b) c)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x (fma.f64 a (*.f64 -1/4 b) c)))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 -1/4 b) c)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x (fma.f64 a (*.f64 -1/4 b) c)))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 -1/4 b) c)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x (fma.f64 a (*.f64 -1/4 b) c)))
(*.f64 1/16 (*.f64 t z))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 -1/4 b) c)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x (fma.f64 a (*.f64 -1/4 b) c)))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 -1/4 b) c)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x (fma.f64 a (*.f64 -1/4 b) c)))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 -1/4 b) c)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x (fma.f64 a (*.f64 -1/4 b) c)))
(*.f64 1/16 (*.f64 t z))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 -1/4 b) c)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x (fma.f64 a (*.f64 -1/4 b) c)))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 -1/4 b) c)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x (fma.f64 a (*.f64 -1/4 b) c)))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 -1/4 b) c)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x (fma.f64 a (*.f64 -1/4 b) c)))
(+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b))))
(fma.f64 t (*.f64 1/16 z) (fma.f64 a (*.f64 -1/4 b) (*.f64 y x)))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 -1/4 b) c)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x (fma.f64 a (*.f64 -1/4 b) c)))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 -1/4 b) c)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x (fma.f64 a (*.f64 -1/4 b) c)))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 -1/4 b) c)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x (fma.f64 a (*.f64 -1/4 b) c)))
c
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 -1/4 b) c)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x (fma.f64 a (*.f64 -1/4 b) c)))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 -1/4 b) c)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x (fma.f64 a (*.f64 -1/4 b) c)))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 -1/4 b) c)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x (fma.f64 a (*.f64 -1/4 b) c)))
c
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 -1/4 b) c)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x (fma.f64 a (*.f64 -1/4 b) c)))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 -1/4 b) c)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x (fma.f64 a (*.f64 -1/4 b) c)))
(+.f64 c (+.f64 (*.f64 y x) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))))
(+.f64 c (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))))
(fma.f64 y x (fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 -1/4 b) c)))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x (fma.f64 a (*.f64 -1/4 b) c)))

localize6.0ms (0.1%)

Compiler

Compiled 18 to 9 computations (50% saved)

localize11.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (*.f64 a (*.f64 b -1/4)) c)
Compiler

Compiled 26 to 17 computations (34.6% saved)

series3.0ms (0%)

Counts
1 → 36
Calls

9 calls:

TimeVariablePointExpression
1.0ms
a
@0
(+.f64 (*.f64 a (*.f64 b -1/4)) c)
0.0ms
b
@0
(+.f64 (*.f64 a (*.f64 b -1/4)) c)
0.0ms
c
@0
(+.f64 (*.f64 a (*.f64 b -1/4)) c)
0.0ms
a
@inf
(+.f64 (*.f64 a (*.f64 b -1/4)) c)
0.0ms
b
@-inf
(+.f64 (*.f64 a (*.f64 b -1/4)) c)

rewrite61.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
899×pow1_binary64
836×add-log-exp_binary64
836×log1p-expm1-u_binary64
836×expm1-log1p-u_binary64
818×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
088
11728
222658
Stop Event
node limit
Counts
1 → 36
Calls
Call 1
Inputs
(+.f64 (*.f64 a (*.f64 b -1/4)) c)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (fma.f64 a (*.f64 b -1/4) c)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (*.f64 a (*.f64 b -1/4)) 2) (-.f64 (*.f64 a (*.f64 b -1/4)) c)) (/.f64 (*.f64 c c) (-.f64 (*.f64 a (*.f64 b -1/4)) c)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 a (*.f64 b -1/4) c) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 a (*.f64 b -1/4) c))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 a (*.f64 b -1/4) c)) (pow.f64 (cbrt.f64 (fma.f64 a (*.f64 b -1/4) c)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 a (*.f64 b -1/4) c)) 2) (cbrt.f64 (fma.f64 a (*.f64 b -1/4) c)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 a (*.f64 b -1/4) c)) (sqrt.f64 (fma.f64 a (*.f64 b -1/4) c)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (*.f64 a (*.f64 b -1/4)) 3) (pow.f64 c 3)) (/.f64 1 (+.f64 (pow.f64 (*.f64 a (*.f64 b -1/4)) 2) (*.f64 c (-.f64 c (*.f64 a (*.f64 b -1/4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (*.f64 a (*.f64 b -1/4)) 2) (*.f64 c c)) (/.f64 1 (-.f64 (*.f64 a (*.f64 b -1/4)) c)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (pow.f64 (*.f64 a (*.f64 b -1/4)) 2) (*.f64 c (-.f64 c (*.f64 a (*.f64 b -1/4))))) (+.f64 (pow.f64 (*.f64 a (*.f64 b -1/4)) 3) (pow.f64 c 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 (*.f64 a (*.f64 b -1/4)) c) (-.f64 (pow.f64 (*.f64 a (*.f64 b -1/4)) 2) (*.f64 c c))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 a (*.f64 b -1/4)) 3) (pow.f64 c 3)) (+.f64 (pow.f64 (*.f64 a (*.f64 b -1/4)) 2) (*.f64 c (-.f64 c (*.f64 a (*.f64 b -1/4))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 a (*.f64 b -1/4)) 3) (pow.f64 c 3)) (+.f64 (*.f64 c c) (-.f64 (pow.f64 (*.f64 a (*.f64 b -1/4)) 2) (*.f64 a (*.f64 (*.f64 b -1/4) c)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 a (*.f64 b -1/4)) 2) (*.f64 c c)) (-.f64 (*.f64 a (*.f64 b -1/4)) c))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 a (*.f64 b -1/4)) 3) (pow.f64 c 3))) (neg.f64 (+.f64 (pow.f64 (*.f64 a (*.f64 b -1/4)) 2) (*.f64 c (-.f64 c (*.f64 a (*.f64 b -1/4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 a (*.f64 b -1/4)) 2) (*.f64 c c))) (neg.f64 (-.f64 (*.f64 a (*.f64 b -1/4)) c)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 c c) (pow.f64 (*.f64 a (*.f64 b -1/4)) 2)) (-.f64 c (*.f64 a (*.f64 b -1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 a (*.f64 b -1/4) c) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 a (*.f64 b -1/4) c) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 a (*.f64 b -1/4) c)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 a (*.f64 b -1/4) c)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 a (*.f64 b -1/4) c) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 a (*.f64 b -1/4) c)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 a (*.f64 b -1/4) c) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 a (*.f64 b -1/4) c)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 a (*.f64 b -1/4) c)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 a (*.f64 b -1/4) c)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 a (*.f64 b -1/4) c)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 b -1/4) a c)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 a (*.f64 b -1/4)) c)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 c (*.f64 a (*.f64 b -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 a (*.f64 b -1/4))) 2) (cbrt.f64 (*.f64 a (*.f64 b -1/4))) c)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 c) 2) (cbrt.f64 c) (*.f64 a (*.f64 b -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 a (*.f64 b -1/4))) (sqrt.f64 (*.f64 a (*.f64 b -1/4))) c)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 c) (sqrt.f64 c) (*.f64 a (*.f64 b -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 a b) -1/4 c)))))

simplify13.0ms (0.1%)

Algorithm
egg-herbie
Rules
fma-def_binary64
*-commutative_binary64
associate-*r*_binary64
associate-*l*_binary64
+-commutative_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
08309
113255
223255
329255
Stop Event
saturated
Counts
72 → 40
Calls
Call 1
Inputs
c
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(*.f64 -1/4 (*.f64 a b))
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(*.f64 -1/4 (*.f64 a b))
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
c
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(*.f64 -1/4 (*.f64 a b))
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(*.f64 -1/4 (*.f64 a b))
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(*.f64 -1/4 (*.f64 a b))
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
c
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
c
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
Outputs
c
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) c)
(fma.f64 a (*.f64 -1/4 b) c)
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) c)
(fma.f64 a (*.f64 -1/4 b) c)
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) c)
(fma.f64 a (*.f64 -1/4 b) c)
(*.f64 -1/4 (*.f64 a b))
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) c)
(fma.f64 a (*.f64 -1/4 b) c)
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) c)
(fma.f64 a (*.f64 -1/4 b) c)
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) c)
(fma.f64 a (*.f64 -1/4 b) c)
(*.f64 -1/4 (*.f64 a b))
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) c)
(fma.f64 a (*.f64 -1/4 b) c)
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) c)
(fma.f64 a (*.f64 -1/4 b) c)
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) c)
(fma.f64 a (*.f64 -1/4 b) c)
c
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) c)
(fma.f64 a (*.f64 -1/4 b) c)
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) c)
(fma.f64 a (*.f64 -1/4 b) c)
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) c)
(fma.f64 a (*.f64 -1/4 b) c)
(*.f64 -1/4 (*.f64 a b))
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) c)
(fma.f64 a (*.f64 -1/4 b) c)
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) c)
(fma.f64 a (*.f64 -1/4 b) c)
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) c)
(fma.f64 a (*.f64 -1/4 b) c)
(*.f64 -1/4 (*.f64 a b))
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) c)
(fma.f64 a (*.f64 -1/4 b) c)
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) c)
(fma.f64 a (*.f64 -1/4 b) c)
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) c)
(fma.f64 a (*.f64 -1/4 b) c)
(*.f64 -1/4 (*.f64 a b))
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) c)
(fma.f64 a (*.f64 -1/4 b) c)
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) c)
(fma.f64 a (*.f64 -1/4 b) c)
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) c)
(fma.f64 a (*.f64 -1/4 b) c)
c
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) c)
(fma.f64 a (*.f64 -1/4 b) c)
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) c)
(fma.f64 a (*.f64 -1/4 b) c)
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) c)
(fma.f64 a (*.f64 -1/4 b) c)
c
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) c)
(fma.f64 a (*.f64 -1/4 b) c)
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) c)
(fma.f64 a (*.f64 -1/4 b) c)
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) c)
(fma.f64 a (*.f64 -1/4 b) c)

localize13.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.0b
(-.f64 (+.f64 c (*.f64 y x)) (*.f64 1/4 (*.f64 a b)))
Compiler

Compiled 40 to 16 computations (60% saved)

series5.0ms (0%)

Counts
1 → 33
Calls

15 calls:

TimeVariablePointExpression
0.0ms
c
@0
(-.f64 (+.f64 c (*.f64 y x)) (*.f64 1/4 (*.f64 a b)))
0.0ms
y
@-inf
(-.f64 (+.f64 c (*.f64 y x)) (*.f64 1/4 (*.f64 a b)))
0.0ms
x
@-inf
(-.f64 (+.f64 c (*.f64 y x)) (*.f64 1/4 (*.f64 a b)))
0.0ms
y
@inf
(-.f64 (+.f64 c (*.f64 y x)) (*.f64 1/4 (*.f64 a b)))
0.0ms
x
@inf
(-.f64 (+.f64 c (*.f64 y x)) (*.f64 1/4 (*.f64 a b)))

rewrite122.0ms (1.2%)

Algorithm
batch-egg-rewrite
Rules
686×log-prod_binary64
581×fma-def_binary64
358×pow2_binary64
268×fma-neg_binary64
247×pow1/3_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01216
126714
2379612
Stop Event
node limit
Counts
1 → 157
Calls
Call 1
Inputs
(-.f64 (+.f64 c (*.f64 y x)) (*.f64 1/4 (*.f64 a b)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 c (fma.f64 y x (*.f64 (*.f64 a b) -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 c (*.f64 (fma.f64 y x (*.f64 (*.f64 a b) -1/4)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y x) (+.f64 c (*.f64 (*.f64 a b) -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 y x c) (*.f64 (*.f64 a b) -1/4))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 y x c) (*.f64 (*.f64 (*.f64 a b) -1/4) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 y x c)) (fma.f64 (*.f64 (*.f64 a b) -1/4) 1 (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 y x c)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 1/4 (*.f64 a b)))) (pow.f64 (cbrt.f64 (*.f64 1/4 (*.f64 a b))) 2) (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 y x c)) (fma.f64 -1/4 (*.f64 a b) (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 y x c)) (fma.f64 (neg.f64 b) (*.f64 1/4 a) (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 a b) -1/4) (fma.f64 y x c))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 y x (*.f64 (*.f64 a b) -1/4)) c)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (fma.f64 (*.f64 a b) -1/4 (fma.f64 y x c)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 y x c)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 y x c))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 y x c))))) (log.f64 (sqrt.f64 (exp.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 y x c))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 y x c)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 (*.f64 a b) -1/4 (fma.f64 y x c)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 y x c))) (pow.f64 (cbrt.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 y x c))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 y x c))) 2) (cbrt.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 y x c))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 y x c))) (sqrt.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 y x c))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (fma.f64 y x c) 3) (*.f64 (pow.f64 (*.f64 a b) 3) 1/64)) (/.f64 1 (fma.f64 (*.f64 1/4 (*.f64 a b)) (fma.f64 1/4 (*.f64 a b) (fma.f64 y x c)) (pow.f64 (fma.f64 y x c) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (fma.f64 y x c) 2) (*.f64 (pow.f64 (*.f64 a b) 2) 1/16)) (/.f64 1 (fma.f64 1/4 (*.f64 a b) (fma.f64 y x c))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 (fma.f64 y x c)) (*.f64 (sqrt.f64 (*.f64 a b)) 1/2)) (-.f64 (sqrt.f64 (fma.f64 y x c)) (*.f64 (sqrt.f64 (*.f64 a b)) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (*.f64 1/4 (*.f64 a b)) (fma.f64 1/4 (*.f64 a b) (fma.f64 y x c)) (pow.f64 (fma.f64 y x c) 2)) (-.f64 (pow.f64 (fma.f64 y x c) 3) (*.f64 (pow.f64 (*.f64 a b) 3) 1/64))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 1/4 (*.f64 a b) (fma.f64 y x c)) (-.f64 (pow.f64 (fma.f64 y x c) 2) (*.f64 (pow.f64 (*.f64 a b) 2) 1/16))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (fma.f64 y x c) 3) (*.f64 (pow.f64 (*.f64 a b) 3) 1/64)) (fma.f64 (*.f64 1/4 (*.f64 a b)) (fma.f64 1/4 (*.f64 a b) (fma.f64 y x c)) (pow.f64 (fma.f64 y x c) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (fma.f64 y x c) 2) (*.f64 (pow.f64 (*.f64 a b) 2) 1/16)) (fma.f64 1/4 (*.f64 a b) (fma.f64 y x c)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (fma.f64 y x c) 3) (*.f64 (pow.f64 (*.f64 a b) 3) 1/64))) (neg.f64 (fma.f64 (*.f64 1/4 (*.f64 a b)) (fma.f64 1/4 (*.f64 a b) (fma.f64 y x c)) (pow.f64 (fma.f64 y x c) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (fma.f64 y x c) 2) (*.f64 (pow.f64 (*.f64 a b) 2) 1/16))) (neg.f64 (fma.f64 1/4 (*.f64 a b) (fma.f64 y x c))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 c 3) (pow.f64 (fma.f64 y x (*.f64 (*.f64 a b) -1/4)) 3)) (fma.f64 c c (-.f64 (pow.f64 (fma.f64 y x (*.f64 (*.f64 a b) -1/4)) 2) (*.f64 c (fma.f64 y x (*.f64 (*.f64 a b) -1/4))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (fma.f64 y x c) 3) (pow.f64 (*.f64 (*.f64 a b) -1/4) 3)) (+.f64 (pow.f64 (fma.f64 y x c) 2) (-.f64 (pow.f64 (*.f64 (*.f64 a b) -1/4) 2) (*.f64 (fma.f64 y x c) (*.f64 (*.f64 a b) -1/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 c c) (pow.f64 (fma.f64 y x (*.f64 (*.f64 a b) -1/4)) 2)) (-.f64 c (fma.f64 y x (*.f64 (*.f64 a b) -1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (fma.f64 y x c) 2) (pow.f64 (*.f64 (*.f64 a b) -1/4) 2)) (-.f64 (fma.f64 y x c) (*.f64 (*.f64 a b) -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 y x c)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 y x c)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 y x c)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 y x c))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 y x c))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 (*.f64 1/4 (*.f64 a b)) (fma.f64 1/4 (*.f64 a b) (fma.f64 y x c)) (pow.f64 (fma.f64 y x c) 2)) (-.f64 (pow.f64 (fma.f64 y x c) 3) (*.f64 (pow.f64 (*.f64 a b) 3) 1/64))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 1/4 (*.f64 a b) (fma.f64 y x c)) (-.f64 (pow.f64 (fma.f64 y x c) 2) (*.f64 (pow.f64 (*.f64 a b) 2) 1/16))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 y x c)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 y x c))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 y x c)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (fma.f64 y x c))) (pow.f64 (pow.f64 (exp.f64 a) b) 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (exp.f64 (fma.f64 y x c)) (+.f64 1 (expm1.f64 (*.f64 1/4 (*.f64 a b))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (fma.f64 y x c))) (+.f64 1 (expm1.f64 (*.f64 1/4 (*.f64 a b))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 c)) (exp.f64 (fma.f64 y x (*.f64 (*.f64 a b) -1/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 c) (/.f64 (pow.f64 (exp.f64 y) x) (pow.f64 (pow.f64 (exp.f64 a) b) 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 c)) (/.f64 (pow.f64 (exp.f64 y) x) (pow.f64 (pow.f64 (exp.f64 a) b) 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 y x c))) (exp.f64 (*.f64 (*.f64 a b) -1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 y x c)) (/.f64 1 (pow.f64 (pow.f64 (exp.f64 a) b) 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 y x c))) (/.f64 1 (pow.f64 (pow.f64 (exp.f64 a) b) 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 (*.f64 a b) -1/4)) (exp.f64 (fma.f64 y x c))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 1 (pow.f64 (pow.f64 (exp.f64 a) b) 1/4)) (exp.f64 (fma.f64 y x c))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 (*.f64 a b) -1/4)) (+.f64 1 (expm1.f64 (fma.f64 y x c)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 1 (pow.f64 (pow.f64 (exp.f64 a) b) 1/4)) (+.f64 1 (expm1.f64 (fma.f64 y x c)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 y x (*.f64 (*.f64 a b) -1/4))) (exp.f64 c)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 (pow.f64 (exp.f64 y) x) (pow.f64 (pow.f64 (exp.f64 a) b) 1/4)) (exp.f64 c)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 y x (*.f64 (*.f64 a b) -1/4))) (+.f64 1 (expm1.f64 c))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 (pow.f64 (exp.f64 y) x) (pow.f64 (pow.f64 (exp.f64 a) b) 1/4)) (+.f64 1 (expm1.f64 c))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 y x c)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 y x c))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 y x c))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 y x c))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 y x c))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 c 1 (fma.f64 y x (*.f64 (*.f64 a b) -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 c 1 (*.f64 (fma.f64 y x (*.f64 (*.f64 a b) -1/4)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y x (+.f64 c (*.f64 (*.f64 a b) -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x y (+.f64 c (*.f64 (*.f64 a b) -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y x) 1 (+.f64 c (*.f64 (*.f64 a b) -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 y x c) 1 (*.f64 (*.f64 a b) -1/4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 y x c) 1 (*.f64 (*.f64 (*.f64 a b) -1/4) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1/4 (neg.f64 (*.f64 a b)) (fma.f64 y x c))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 a b) -1/4 (fma.f64 y x c))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 y x c)) 1 (fma.f64 (*.f64 (*.f64 a b) -1/4) 1 (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 y x c)) 1 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 1/4 (*.f64 a b)))) (pow.f64 (cbrt.f64 (*.f64 1/4 (*.f64 a b))) 2) (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 y x c)) 1 (fma.f64 -1/4 (*.f64 a b) (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 y x c)) 1 (fma.f64 (neg.f64 b) (*.f64 1/4 a) (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 c (fma.f64 y x (*.f64 (*.f64 a b) -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 c (*.f64 (fma.f64 y x (*.f64 (*.f64 a b) -1/4)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 y x) (+.f64 c (*.f64 (*.f64 a b) -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 y x c) (*.f64 (*.f64 a b) -1/4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 y x c) (*.f64 (*.f64 (*.f64 a b) -1/4) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 (*.f64 a b) -1/4 (fma.f64 y x c)) (fma.f64 (*.f64 (*.f64 a b) -1/4) 1 (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 (*.f64 a b) -1/4 (fma.f64 y x c)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 1/4 (*.f64 a b)))) (pow.f64 (cbrt.f64 (*.f64 1/4 (*.f64 a b))) 2) (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 (*.f64 a b) -1/4 (fma.f64 y x c)) (fma.f64 -1/4 (*.f64 a b) (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 (*.f64 a b) -1/4 (fma.f64 y x c)) (fma.f64 (neg.f64 b) (*.f64 1/4 a) (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (*.f64 a b) -1/4) (fma.f64 y x c))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 y x (*.f64 (*.f64 a b) -1/4)) c)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 1/4 (*.f64 a b))) 2) (neg.f64 (cbrt.f64 (*.f64 1/4 (*.f64 a b)))) (fma.f64 y x c))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 y x)) (pow.f64 (cbrt.f64 (*.f64 y x)) 2) (+.f64 c (*.f64 (*.f64 a b) -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 y x)) 2) (cbrt.f64 (*.f64 y x)) (+.f64 c (*.f64 (*.f64 a b) -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 c) (pow.f64 (cbrt.f64 c) 2) (fma.f64 y x (*.f64 (*.f64 a b) -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 c) (pow.f64 (cbrt.f64 c) 2) (*.f64 (fma.f64 y x (*.f64 (*.f64 a b) -1/4)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 c) 2) (cbrt.f64 c) (fma.f64 y x (*.f64 (*.f64 a b) -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 c) 2) (cbrt.f64 c) (*.f64 (fma.f64 y x (*.f64 (*.f64 a b) -1/4)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 y x c))) (pow.f64 (cbrt.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 y x c))) 2) (fma.f64 (*.f64 (*.f64 a b) -1/4) 1 (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 y x c))) (pow.f64 (cbrt.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 y x c))) 2) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 1/4 (*.f64 a b)))) (pow.f64 (cbrt.f64 (*.f64 1/4 (*.f64 a b))) 2) (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 y x c))) (pow.f64 (cbrt.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 y x c))) 2) (fma.f64 -1/4 (*.f64 a b) (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 y x c))) (pow.f64 (cbrt.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 y x c))) 2) (fma.f64 (neg.f64 b) (*.f64 1/4 a) (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 y x c))) 2) (cbrt.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 y x c))) (fma.f64 (*.f64 (*.f64 a b) -1/4) 1 (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 y x c))) 2) (cbrt.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 y x c))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 1/4 (*.f64 a b)))) (pow.f64 (cbrt.f64 (*.f64 1/4 (*.f64 a b))) 2) (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 y x c))) 2) (cbrt.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 y x c))) (fma.f64 -1/4 (*.f64 a b) (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 y x c))) 2) (cbrt.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 y x c))) (fma.f64 (neg.f64 b) (*.f64 1/4 a) (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 y x c)) (pow.f64 (cbrt.f64 (fma.f64 y x c)) 2) (*.f64 (*.f64 a b) -1/4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 y x c)) (pow.f64 (cbrt.f64 (fma.f64 y x c)) 2) (*.f64 (*.f64 (*.f64 a b) -1/4) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 y x c)) 2) (cbrt.f64 (fma.f64 y x c)) (*.f64 (*.f64 a b) -1/4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 y x c)) 2) (cbrt.f64 (fma.f64 y x c)) (*.f64 (*.f64 (*.f64 a b) -1/4) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 y) 2) (*.f64 (cbrt.f64 y) x) (+.f64 c (*.f64 (*.f64 a b) -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (*.f64 (cbrt.f64 x) y) (+.f64 c (*.f64 (*.f64 a b) -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sqrt.f64 (*.f64 a b)) 1/2) (neg.f64 (*.f64 (sqrt.f64 (*.f64 a b)) 1/2)) (fma.f64 y x c))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 y x)) (sqrt.f64 (*.f64 y x)) (+.f64 c (*.f64 (*.f64 a b) -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 c) (sqrt.f64 c) (fma.f64 y x (*.f64 (*.f64 a b) -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 c) (sqrt.f64 c) (*.f64 (fma.f64 y x (*.f64 (*.f64 a b) -1/4)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 y x c))) (sqrt.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 y x c))) (fma.f64 (*.f64 (*.f64 a b) -1/4) 1 (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 y x c))) (sqrt.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 y x c))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 1/4 (*.f64 a b)))) (pow.f64 (cbrt.f64 (*.f64 1/4 (*.f64 a b))) 2) (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 y x c))) (sqrt.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 y x c))) (fma.f64 -1/4 (*.f64 a b) (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 y x c))) (sqrt.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 y x c))) (fma.f64 (neg.f64 b) (*.f64 1/4 a) (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 y x c)) (sqrt.f64 (fma.f64 y x c)) (*.f64 (*.f64 a b) -1/4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 y x c)) (sqrt.f64 (fma.f64 y x c)) (*.f64 (*.f64 (*.f64 a b) -1/4) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 y) (*.f64 (sqrt.f64 y) x) (+.f64 c (*.f64 (*.f64 a b) -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) y) (+.f64 c (*.f64 (*.f64 a b) -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (fma.f64 y x c) 3) (*.f64 (pow.f64 (*.f64 a b) 3) 1/64)) (/.f64 1 (fma.f64 (*.f64 1/4 (*.f64 a b)) (fma.f64 1/4 (*.f64 a b) (fma.f64 y x c)) (pow.f64 (fma.f64 y x c) 2))) (fma.f64 (*.f64 (*.f64 a b) -1/4) 1 (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (fma.f64 y x c) 3) (*.f64 (pow.f64 (*.f64 a b) 3) 1/64)) (/.f64 1 (fma.f64 (*.f64 1/4 (*.f64 a b)) (fma.f64 1/4 (*.f64 a b) (fma.f64 y x c)) (pow.f64 (fma.f64 y x c) 2))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 1/4 (*.f64 a b)))) (pow.f64 (cbrt.f64 (*.f64 1/4 (*.f64 a b))) 2) (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (fma.f64 y x c) 3) (*.f64 (pow.f64 (*.f64 a b) 3) 1/64)) (/.f64 1 (fma.f64 (*.f64 1/4 (*.f64 a b)) (fma.f64 1/4 (*.f64 a b) (fma.f64 y x c)) (pow.f64 (fma.f64 y x c) 2))) (fma.f64 -1/4 (*.f64 a b) (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (fma.f64 y x c) 3) (*.f64 (pow.f64 (*.f64 a b) 3) 1/64)) (/.f64 1 (fma.f64 (*.f64 1/4 (*.f64 a b)) (fma.f64 1/4 (*.f64 a b) (fma.f64 y x c)) (pow.f64 (fma.f64 y x c) 2))) (fma.f64 (neg.f64 b) (*.f64 1/4 a) (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (pow.f64 c 3) (pow.f64 (*.f64 y x) 3)) (/.f64 1 (fma.f64 c c (*.f64 (*.f64 y x) (fma.f64 y x (neg.f64 c))))) (*.f64 (*.f64 a b) -1/4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (pow.f64 c 3) (pow.f64 (*.f64 y x) 3)) (/.f64 1 (fma.f64 c c (*.f64 (*.f64 y x) (fma.f64 y x (neg.f64 c))))) (*.f64 (*.f64 (*.f64 a b) -1/4) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (fma.f64 y x c) 2) (*.f64 (pow.f64 (*.f64 a b) 2) 1/16)) (/.f64 1 (fma.f64 1/4 (*.f64 a b) (fma.f64 y x c))) (fma.f64 (*.f64 (*.f64 a b) -1/4) 1 (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (fma.f64 y x c) 2) (*.f64 (pow.f64 (*.f64 a b) 2) 1/16)) (/.f64 1 (fma.f64 1/4 (*.f64 a b) (fma.f64 y x c))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 1/4 (*.f64 a b)))) (pow.f64 (cbrt.f64 (*.f64 1/4 (*.f64 a b))) 2) (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (fma.f64 y x c) 2) (*.f64 (pow.f64 (*.f64 a b) 2) 1/16)) (/.f64 1 (fma.f64 1/4 (*.f64 a b) (fma.f64 y x c))) (fma.f64 -1/4 (*.f64 a b) (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (fma.f64 y x c) 2) (*.f64 (pow.f64 (*.f64 a b) 2) 1/16)) (/.f64 1 (fma.f64 1/4 (*.f64 a b) (fma.f64 y x c))) (fma.f64 (neg.f64 b) (*.f64 1/4 a) (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 c c) (pow.f64 (*.f64 y x) 2)) (/.f64 1 (-.f64 c (*.f64 y x))) (*.f64 (*.f64 a b) -1/4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 c c) (pow.f64 (*.f64 y x) 2)) (/.f64 1 (-.f64 c (*.f64 y x))) (*.f64 (*.f64 (*.f64 a b) -1/4) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1/4 (*.f64 a b) (fma.f64 y x c))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 1/4 a) (neg.f64 b) (fma.f64 y x c))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 y x (*.f64 (*.f64 a b) -1/4))) 2) (cbrt.f64 (fma.f64 y x (*.f64 (*.f64 a b) -1/4))) c)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (*.f64 a b) -1/4)) 2) (cbrt.f64 (*.f64 (*.f64 a b) -1/4)) (fma.f64 y x c))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 y x (*.f64 (*.f64 a b) -1/4))) (sqrt.f64 (fma.f64 y x (*.f64 (*.f64 a b) -1/4))) c)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (*.f64 a b) -1/4)) (sqrt.f64 (*.f64 (*.f64 a b) -1/4)) (fma.f64 y x c))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (*.f64 a b)) 1/4 (fma.f64 y x c))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (*.f64 (sqrt.f64 (*.f64 a b)) 1/2)) (*.f64 (sqrt.f64 (*.f64 a b)) 1/2) (fma.f64 y x c))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 (*.f64 1/4 (*.f64 a b)) (fma.f64 y x c))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (fma.f64 y x c)) (*.f64 (sqrt.f64 (*.f64 a b)) 1/2)) (-.f64 (sqrt.f64 (fma.f64 y x c)) (*.f64 (sqrt.f64 (*.f64 a b)) 1/2)) (fma.f64 (*.f64 (*.f64 a b) -1/4) 1 (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (fma.f64 y x c)) (*.f64 (sqrt.f64 (*.f64 a b)) 1/2)) (-.f64 (sqrt.f64 (fma.f64 y x c)) (*.f64 (sqrt.f64 (*.f64 a b)) 1/2)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 1/4 (*.f64 a b)))) (pow.f64 (cbrt.f64 (*.f64 1/4 (*.f64 a b))) 2) (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (fma.f64 y x c)) (*.f64 (sqrt.f64 (*.f64 a b)) 1/2)) (-.f64 (sqrt.f64 (fma.f64 y x c)) (*.f64 (sqrt.f64 (*.f64 a b)) 1/2)) (fma.f64 -1/4 (*.f64 a b) (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (fma.f64 y x c)) (*.f64 (sqrt.f64 (*.f64 a b)) 1/2)) (-.f64 (sqrt.f64 (fma.f64 y x c)) (*.f64 (sqrt.f64 (*.f64 a b)) 1/2)) (fma.f64 (neg.f64 b) (*.f64 1/4 a) (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (sqrt.f64 y) (sqrt.f64 x) (*.f64 (sqrt.f64 (*.f64 a b)) 1/2)) (-.f64 (sqrt.f64 (*.f64 y x)) (*.f64 (sqrt.f64 (*.f64 a b)) 1/2)) c)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (pow.f64 (cbrt.f64 (*.f64 1/4 (*.f64 a b))) 2)) (cbrt.f64 (*.f64 1/4 (*.f64 a b))) (fma.f64 y x c))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (*.f64 1/4 a)) b (fma.f64 y x c))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -1/4 a) b (fma.f64 y x c))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -1/4 b) a (fma.f64 y x c))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -1/4 (pow.f64 (cbrt.f64 (*.f64 a b)) 2)) (cbrt.f64 (*.f64 a b)) (fma.f64 y x c))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -1/4 (sqrt.f64 (*.f64 a b))) (sqrt.f64 (*.f64 a b)) (fma.f64 y x c))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 x) (+.f64 c (*.f64 (*.f64 a b) -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y (sqrt.f64 x)) (sqrt.f64 x) (+.f64 c (*.f64 (*.f64 a b) -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (pow.f64 (cbrt.f64 y) 2)) (cbrt.f64 y) (+.f64 c (*.f64 (*.f64 a b) -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (sqrt.f64 y)) (sqrt.f64 y) (+.f64 c (*.f64 (*.f64 a b) -1/4)))))))

simplify51.0ms (0.5%)

Algorithm
egg-herbie
Rules
518×fma-def_binary64
326×fma-neg_binary64
116×cancel-sign-sub-inv_binary64
56×distribute-rgt-neg-in_binary64
56×unsub-neg_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
017343
136339
280299
3188299
4284299
5430299
6708299
7980299
81233299
91627299
101648299
Stop Event
saturated
Counts
190 → 169
Calls
Call 1
Inputs
(-.f64 (*.f64 y x) (*.f64 1/4 (*.f64 a b)))
c
c
(-.f64 c (*.f64 1/4 (*.f64 a b)))
(*.f64 y x)
(*.f64 y x)
(-.f64 c (*.f64 1/4 (*.f64 a b)))
(*.f64 y x)
(*.f64 y x)
(+.f64 c (*.f64 y x))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b))))
(*.f64 -1/4 (*.f64 a b))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b))))
(*.f64 -1/4 (*.f64 a b))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (*.f64 y x))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b))))
(*.f64 -1/4 (*.f64 a b))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b))))
(*.f64 -1/4 (*.f64 a b))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b))))
Outputs
(-.f64 (*.f64 y x) (*.f64 1/4 (*.f64 a b)))
(fma.f64 y x (*.f64 (*.f64 a b) -1/4))
(fma.f64 y x (*.f64 b (*.f64 a -1/4)))
(fma.f64 y x (*.f64 a (*.f64 b -1/4)))
c
c
(-.f64 c (*.f64 1/4 (*.f64 a b)))
(+.f64 c (*.f64 (*.f64 a b) -1/4))
(+.f64 c (*.f64 b (*.f64 a -1/4)))
(fma.f64 a (*.f64 b -1/4) c)
(fma.f64 b (*.f64 a -1/4) c)
(*.f64 y x)
(*.f64 y x)
(-.f64 c (*.f64 1/4 (*.f64 a b)))
(+.f64 c (*.f64 (*.f64 a b) -1/4))
(+.f64 c (*.f64 b (*.f64 a -1/4)))
(fma.f64 a (*.f64 b -1/4) c)
(fma.f64 b (*.f64 a -1/4) c)
(*.f64 y x)
(*.f64 y x)
(+.f64 c (*.f64 y x))
(+.f64 (*.f64 y x) c)
(fma.f64 y x c)
(+.f64 c (+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 y x (*.f64 (*.f64 a b) -1/4)))
(+.f64 c (fma.f64 y x (*.f64 b (*.f64 a -1/4))))
(fma.f64 b (*.f64 a -1/4) (fma.f64 y x c))
(fma.f64 y x (fma.f64 a (*.f64 b -1/4) c))
(fma.f64 y x (fma.f64 b (*.f64 a -1/4) c))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 y x (*.f64 (*.f64 a b) -1/4)))
(+.f64 c (fma.f64 y x (*.f64 b (*.f64 a -1/4))))
(fma.f64 b (*.f64 a -1/4) (fma.f64 y x c))
(fma.f64 y x (fma.f64 a (*.f64 b -1/4) c))
(fma.f64 y x (fma.f64 b (*.f64 a -1/4) c))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 y x (*.f64 (*.f64 a b) -1/4)))
(+.f64 c (fma.f64 y x (*.f64 b (*.f64 a -1/4))))
(fma.f64 b (*.f64 a -1/4) (fma.f64 y x c))
(fma.f64 y x (fma.f64 a (*.f64 b -1/4) c))
(fma.f64 y x (fma.f64 b (*.f64 a -1/4) c))
(*.f64 -1/4 (*.f64 a b))
(*.f64 (*.f64 a b) -1/4)
(*.f64 b (*.f64 a -1/4))
(*.f64 a (*.f64 b -1/4))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 y x (*.f64 (*.f64 a b) -1/4)))
(+.f64 c (fma.f64 y x (*.f64 b (*.f64 a -1/4))))
(fma.f64 b (*.f64 a -1/4) (fma.f64 y x c))
(fma.f64 y x (fma.f64 a (*.f64 b -1/4) c))
(fma.f64 y x (fma.f64 b (*.f64 a -1/4) c))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 y x (*.f64 (*.f64 a b) -1/4)))
(+.f64 c (fma.f64 y x (*.f64 b (*.f64 a -1/4))))
(fma.f64 b (*.f64 a -1/4) (fma.f64 y x c))
(fma.f64 y x (fma.f64 a (*.f64 b -1/4) c))
(fma.f64 y x (fma.f64 b (*.f64 a -1/4) c))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 y x (*.f64 (*.f64 a b) -1/4)))
(+.f64 c (fma.f64 y x (*.f64 b (*.f64 a -1/4))))
(fma.f64 b (*.f64 a -1/4) (fma.f64 y x c))
(fma.f64 y x (fma.f64 a (*.f64 b -1/4) c))
(fma.f64 y x (fma.f64 b (*.f64 a -1/4) c))
(*.f64 -1/4 (*.f64 a b))
(*.f64 (*.f64 a b) -1/4)
(*.f64 b (*.f64 a -1/4))
(*.f64 a (*.f64 b -1/4))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 y x (*.f64 (*.f64 a b) -1/4)))
(+.f64 c (fma.f64 y x (*.f64 b (*.f64 a -1/4))))
(fma.f64 b (*.f64 a -1/4) (fma.f64 y x c))
(fma.f64 y x (fma.f64 a (*.f64 b -1/4) c))
(fma.f64 y x (fma.f64 b (*.f64 a -1/4) c))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 y x (*.f64 (*.f64 a b) -1/4)))
(+.f64 c (fma.f64 y x (*.f64 b (*.f64 a -1/4))))
(fma.f64 b (*.f64 a -1/4) (fma.f64 y x c))
(fma.f64 y x (fma.f64 a (*.f64 b -1/4) c))
(fma.f64 y x (fma.f64 b (*.f64 a -1/4) c))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 y x (*.f64 (*.f64 a b) -1/4)))
(+.f64 c (fma.f64 y x (*.f64 b (*.f64 a -1/4))))
(fma.f64 b (*.f64 a -1/4) (fma.f64 y x c))
(fma.f64 y x (fma.f64 a (*.f64 b -1/4) c))
(fma.f64 y x (fma.f64 b (*.f64 a -1/4) c))
(+.f64 c (*.f64 y x))
(+.f64 (*.f64 y x) c)
(fma.f64 y x c)
(+.f64 c (+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 y x (*.f64 (*.f64 a b) -1/4)))
(+.f64 c (fma.f64 y x (*.f64 b (*.f64 a -1/4))))
(fma.f64 b (*.f64 a -1/4) (fma.f64 y x c))
(fma.f64 y x (fma.f64 a (*.f64 b -1/4) c))
(fma.f64 y x (fma.f64 b (*.f64 a -1/4) c))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 y x (*.f64 (*.f64 a b) -1/4)))
(+.f64 c (fma.f64 y x (*.f64 b (*.f64 a -1/4))))
(fma.f64 b (*.f64 a -1/4) (fma.f64 y x c))
(fma.f64 y x (fma.f64 a (*.f64 b -1/4) c))
(fma.f64 y x (fma.f64 b (*.f64 a -1/4) c))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 y x (*.f64 (*.f64 a b) -1/4)))
(+.f64 c (fma.f64 y x (*.f64 b (*.f64 a -1/4))))
(fma.f64 b (*.f64 a -1/4) (fma.f64 y x c))
(fma.f64 y x (fma.f64 a (*.f64 b -1/4) c))
(fma.f64 y x (fma.f64 b (*.f64 a -1/4) c))
(*.f64 -1/4 (*.f64 a b))
(*.f64 (*.f64 a b) -1/4)
(*.f64 b (*.f64 a -1/4))
(*.f64 a (*.f64 b -1/4))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 y x (*.f64 (*.f64 a b) -1/4)))
(+.f64 c (fma.f64 y x (*.f64 b (*.f64 a -1/4))))
(fma.f64 b (*.f64 a -1/4) (fma.f64 y x c))
(fma.f64 y x (fma.f64 a (*.f64 b -1/4) c))
(fma.f64 y x (fma.f64 b (*.f64 a -1/4) c))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 y x (*.f64 (*.f64 a b) -1/4)))
(+.f64 c (fma.f64 y x (*.f64 b (*.f64 a -1/4))))
(fma.f64 b (*.f64 a -1/4) (fma.f64 y x c))
(fma.f64 y x (fma.f64 a (*.f64 b -1/4) c))
(fma.f64 y x (fma.f64 b (*.f64 a -1/4) c))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 y x (*.f64 (*.f64 a b) -1/4)))
(+.f64 c (fma.f64 y x (*.f64 b (*.f64 a -1/4))))
(fma.f64 b (*.f64 a -1/4) (fma.f64 y x c))
(fma.f64 y x (fma.f64 a (*.f64 b -1/4) c))
(fma.f64 y x (fma.f64 b (*.f64 a -1/4) c))
(*.f64 -1/4 (*.f64 a b))
(*.f64 (*.f64 a b) -1/4)
(*.f64 b (*.f64 a -1/4))
(*.f64 a (*.f64 b -1/4))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 y x (*.f64 (*.f64 a b) -1/4)))
(+.f64 c (fma.f64 y x (*.f64 b (*.f64 a -1/4))))
(fma.f64 b (*.f64 a -1/4) (fma.f64 y x c))
(fma.f64 y x (fma.f64 a (*.f64 b -1/4) c))
(fma.f64 y x (fma.f64 b (*.f64 a -1/4) c))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 y x (*.f64 (*.f64 a b) -1/4)))
(+.f64 c (fma.f64 y x (*.f64 b (*.f64 a -1/4))))
(fma.f64 b (*.f64 a -1/4) (fma.f64 y x c))
(fma.f64 y x (fma.f64 a (*.f64 b -1/4) c))
(fma.f64 y x (fma.f64 b (*.f64 a -1/4) c))
(+.f64 c (+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 y x (*.f64 (*.f64 a b) -1/4)))
(+.f64 c (fma.f64 y x (*.f64 b (*.f64 a -1/4))))
(fma.f64 b (*.f64 a -1/4) (fma.f64 y x c))
(fma.f64 y x (fma.f64 a (*.f64 b -1/4) c))
(fma.f64 y x (fma.f64 b (*.f64 a -1/4) c))

localize53.0ms (0.5%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.0b
(fma.f64 x y (*.f64 1/16 (*.f64 t z)))
Compiler

Compiled 28 to 14 computations (50% saved)

series4.0ms (0%)

Counts
1 → 48
Calls

12 calls:

TimeVariablePointExpression
1.0ms
x
@0
(fma.f64 x y (*.f64 1/16 (*.f64 t z)))
0.0ms
y
@-inf
(fma.f64 x y (*.f64 1/16 (*.f64 t z)))
0.0ms
y
@0
(fma.f64 x y (*.f64 1/16 (*.f64 t z)))
0.0ms
y
@inf
(fma.f64 x y (*.f64 1/16 (*.f64 t z)))
0.0ms
x
@inf
(fma.f64 x y (*.f64 1/16 (*.f64 t z)))

rewrite54.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
845×pow1_binary64
776×add-log-exp_binary64
776×log1p-expm1-u_binary64
776×expm1-log1p-u_binary64
759×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0911
118111
2209911
Stop Event
node limit
Counts
1 → 21
Calls
Call 1
Inputs
(fma.f64 x y (*.f64 1/16 (*.f64 t z)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 x y))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x y) (*.f64 1/16 (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 x y) 1) (*.f64 1/16 (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (fma.f64 x y (*.f64 1/16 (*.f64 t z)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 x y (*.f64 1/16 (*.f64 t z))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 x y (*.f64 1/16 (*.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 x y (*.f64 1/16 (*.f64 t z)))) (pow.f64 (cbrt.f64 (fma.f64 x y (*.f64 1/16 (*.f64 t z)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 x y (*.f64 1/16 (*.f64 t z)))) 2) (cbrt.f64 (fma.f64 x y (*.f64 1/16 (*.f64 t z)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 x y (*.f64 1/16 (*.f64 t z)))) (sqrt.f64 (fma.f64 x y (*.f64 1/16 (*.f64 t z)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 x y) 3) (pow.f64 (*.f64 1/16 (*.f64 t z)) 3)) (+.f64 (*.f64 (*.f64 x y) (*.f64 x y)) (-.f64 (*.f64 (pow.f64 (*.f64 t z) 2) 1/256) (*.f64 (*.f64 x y) (*.f64 1/16 (*.f64 t z))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 x y) (*.f64 x y)) (*.f64 (pow.f64 (*.f64 t z) 2) 1/256)) (-.f64 (*.f64 x y) (*.f64 1/16 (*.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 x y (*.f64 1/16 (*.f64 t z))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 x y (*.f64 1/16 (*.f64 t z))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 x y (*.f64 1/16 (*.f64 t z)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 x y (*.f64 1/16 (*.f64 t z)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 x y (*.f64 1/16 (*.f64 t z))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 x y (*.f64 1/16 (*.f64 t z)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 x y (*.f64 1/16 (*.f64 t z))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 x y (*.f64 1/16 (*.f64 t z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 x y (*.f64 1/16 (*.f64 t z)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 x y (*.f64 1/16 (*.f64 t z)))))))))

simplify51.0ms (0.5%)

Algorithm
egg-herbie
Rules
fma-def_binary64
*-commutative_binary64
associate-*r*_binary64
associate-*l*_binary64
+-commutative_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
010462
117462
228462
334462
Stop Event
saturated
Counts
69 → 26
Calls
Call 1
Inputs
(*.f64 1/16 (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(*.f64 y x)
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(*.f64 y x)
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(*.f64 1/16 (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(*.f64 y x)
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(*.f64 y x)
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(*.f64 y x)
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(*.f64 1/16 (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(*.f64 1/16 (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(*.f64 y x)
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(*.f64 1/16 (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(*.f64 1/16 (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
Outputs
(*.f64 1/16 (*.f64 t z))
(*.f64 z (*.f64 1/16 t))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(fma.f64 y x (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(fma.f64 y x (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(fma.f64 y x (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(fma.f64 y x (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(fma.f64 y x (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(fma.f64 y x (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(fma.f64 y x (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(fma.f64 y x (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(fma.f64 y x (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) (*.f64 y x))
(*.f64 1/16 (*.f64 t z))
(*.f64 z (*.f64 1/16 t))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(fma.f64 y x (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(fma.f64 y x (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(fma.f64 y x (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(fma.f64 y x (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(fma.f64 y x (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(fma.f64 y x (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(fma.f64 y x (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(fma.f64 y x (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(fma.f64 y x (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(fma.f64 y x (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(fma.f64 y x (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(fma.f64 y x (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) (*.f64 y x))
(*.f64 1/16 (*.f64 t z))
(*.f64 z (*.f64 1/16 t))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(fma.f64 y x (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(fma.f64 y x (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(fma.f64 y x (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) (*.f64 y x))
(*.f64 1/16 (*.f64 t z))
(*.f64 z (*.f64 1/16 t))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(fma.f64 y x (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(fma.f64 y x (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(fma.f64 y x (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(fma.f64 y x (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(fma.f64 y x (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(fma.f64 y x (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) (*.f64 y x))
(*.f64 1/16 (*.f64 t z))
(*.f64 z (*.f64 1/16 t))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(fma.f64 y x (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(fma.f64 y x (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(fma.f64 y x (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) (*.f64 y x))
(*.f64 1/16 (*.f64 t z))
(*.f64 z (*.f64 1/16 t))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(fma.f64 y x (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(fma.f64 y x (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(fma.f64 y x (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) (*.f64 y x))

eval116.0ms (1.1%)

Compiler

Compiled 6358 to 3013 computations (52.6% saved)

prune120.0ms (1.2%)

Pruning

14 alts after pruning (11 fresh and 3 done)

PrunedKeptTotal
New3398347
Fresh336
Picked011
Done224
Total34414358
Error
0b
Counts
358 → 14
Alt Table
Click to see full alt table
StatusErrorProgram
20.7b
(fma.f64 a (*.f64 b -1/4) (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
29.5b
(+.f64 (*.f64 1/16 (*.f64 t z)) c)
27.9b
(+.f64 (*.f64 y x) c)
33.6b
(-.f64 (*.f64 y x) (*.f64 1/4 (*.f64 a b)))
49.9b
(*.f64 z (*.f64 1/16 t))
48.1b
(*.f64 a (*.f64 b -1/4))
42.2b
c
48.1b
(*.f64 y x)
35.5b
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
35.5b
(fma.f64 x y (*.f64 1/16 (*.f64 t z)))
27.8b
(fma.f64 (*.f64 b -1/4) a c)
14.5b
(-.f64 (+.f64 c (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
27.8b
(+.f64 (*.f64 a (*.f64 b -1/4)) c)
15.2b
(fma.f64 x y (fma.f64 t (*.f64 z 1/16) c))
Compiler

Compiled 349 to 266 computations (23.8% saved)

localize19.0ms (0.2%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(+.f64 c (*.f64 1/16 (*.f64 t z)))
0.0b
(-.f64 (+.f64 c (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
Compiler

Compiled 50 to 24 computations (52% saved)

series7.0ms (0.1%)

Counts
2 → 42
Calls

24 calls:

TimeVariablePointExpression
0.0ms
c
@0
(-.f64 (+.f64 c (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
0.0ms
c
@inf
(-.f64 (+.f64 c (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
0.0ms
b
@0
(-.f64 (+.f64 c (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
0.0ms
t
@0
(-.f64 (+.f64 c (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
0.0ms
t
@-inf
(-.f64 (+.f64 c (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))

rewrite143.0ms (1.4%)

Algorithm
batch-egg-rewrite
Rules
783×log-prod_binary64
644×fma-def_binary64
292×fma-neg_binary64
275×expm1-udef_binary64
275×log1p-udef_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01429
130825
2426723
Stop Event
node limit
Counts
2 → 215
Calls
Call 1
Inputs
(-.f64 (+.f64 c (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
(+.f64 c (*.f64 1/16 (*.f64 t z)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 c (*.f64 (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1/16 (*.f64 t z)) (+.f64 c (*.f64 (*.f64 a b) -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1/16 (*.f64 t z) c) (*.f64 (*.f64 a b) -1/4))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1/16 (*.f64 t z) c) (*.f64 (*.f64 (*.f64 a b) -1/4) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 1/16 (*.f64 t z) c)) (fma.f64 (*.f64 (*.f64 a b) -1/4) 1 (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 1/16 (*.f64 t z) c)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 1/4 (*.f64 a b)))) (pow.f64 (cbrt.f64 (*.f64 1/4 (*.f64 a b))) 2) (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 1/16 (*.f64 t z) c)) (fma.f64 -1/4 (*.f64 a b) (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 1/16 (*.f64 t z) c)) (fma.f64 (neg.f64 b) (*.f64 1/4 a) (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 a b) -1/4) (fma.f64 1/16 (*.f64 t z) c))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)) c)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (fma.f64 (*.f64 a b) -1/4 (fma.f64 1/16 (*.f64 t z) c)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 1/16 (*.f64 t z) c)))) (cbrt.f64 (exp.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 1/16 (*.f64 t z) c)))))) (log.f64 (cbrt.f64 (exp.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 1/16 (*.f64 t z) c))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 1/16 (*.f64 t z) c))))) (log.f64 (sqrt.f64 (exp.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 1/16 (*.f64 t z) c))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 1/16 (*.f64 t z) c)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 (*.f64 a b) -1/4 (fma.f64 1/16 (*.f64 t z) c)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 1/16 (*.f64 t z) c))) (pow.f64 (cbrt.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 1/16 (*.f64 t z) c))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 1/16 (*.f64 t z) c))) 2) (cbrt.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 1/16 (*.f64 t z) c))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 1/16 (*.f64 t z) c))) (sqrt.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 1/16 (*.f64 t z) c))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (fma.f64 1/16 (*.f64 t z) c) 3) (*.f64 (pow.f64 (*.f64 a b) 3) 1/64)) (/.f64 1 (fma.f64 (*.f64 1/4 (*.f64 a b)) (fma.f64 1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c)) (pow.f64 (fma.f64 1/16 (*.f64 t z) c) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (fma.f64 1/16 (*.f64 t z) c) 2) (*.f64 1/16 (pow.f64 (*.f64 a b) 2))) (/.f64 1 (fma.f64 1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 (fma.f64 1/16 (*.f64 t z) c)) (*.f64 (sqrt.f64 (*.f64 a b)) 1/2)) (-.f64 (sqrt.f64 (fma.f64 1/16 (*.f64 t z) c)) (*.f64 (sqrt.f64 (*.f64 a b)) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (*.f64 1/4 (*.f64 a b)) (fma.f64 1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c)) (pow.f64 (fma.f64 1/16 (*.f64 t z) c) 2)) (-.f64 (pow.f64 (fma.f64 1/16 (*.f64 t z) c) 3) (*.f64 (pow.f64 (*.f64 a b) 3) 1/64))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c)) (-.f64 (pow.f64 (fma.f64 1/16 (*.f64 t z) c) 2) (*.f64 1/16 (pow.f64 (*.f64 a b) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (fma.f64 1/16 (*.f64 t z) c) 3) (*.f64 (pow.f64 (*.f64 a b) 3) 1/64)) (fma.f64 (*.f64 1/4 (*.f64 a b)) (fma.f64 1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c)) (pow.f64 (fma.f64 1/16 (*.f64 t z) c) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (fma.f64 1/16 (*.f64 t z) c) 2) (*.f64 1/16 (pow.f64 (*.f64 a b) 2))) (fma.f64 1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (fma.f64 1/16 (*.f64 t z) c) 3) (*.f64 (pow.f64 (*.f64 a b) 3) 1/64))) (neg.f64 (fma.f64 (*.f64 1/4 (*.f64 a b)) (fma.f64 1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c)) (pow.f64 (fma.f64 1/16 (*.f64 t z) c) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (fma.f64 1/16 (*.f64 t z) c) 2) (*.f64 1/16 (pow.f64 (*.f64 a b) 2)))) (neg.f64 (fma.f64 1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 c 3) (pow.f64 (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)) 3)) (fma.f64 c c (-.f64 (*.f64 (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)) (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4))) (*.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (fma.f64 1/16 (*.f64 t z) c) 3) (pow.f64 (*.f64 (*.f64 a b) -1/4) 3)) (+.f64 (pow.f64 (fma.f64 1/16 (*.f64 t z) c) 2) (fma.f64 (*.f64 (*.f64 a b) -1/4) (*.f64 (*.f64 a b) -1/4) (neg.f64 (*.f64 (fma.f64 1/16 (*.f64 t z) c) (*.f64 (*.f64 a b) -1/4))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 c c) (*.f64 (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)) (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)))) (-.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (fma.f64 1/16 (*.f64 t z) c) 2) (*.f64 (*.f64 (*.f64 a b) -1/4) (*.f64 (*.f64 a b) -1/4))) (-.f64 (fma.f64 1/16 (*.f64 t z) c) (*.f64 (*.f64 a b) -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 1/16 (*.f64 t z) c)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 1/16 (*.f64 t z) c)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 1/16 (*.f64 t z) c))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 1/16 (*.f64 t z) c))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 1/16 (*.f64 t z) c)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 1/16 (*.f64 t z) c))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 1/16 (*.f64 t z) c)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (fma.f64 1/16 (*.f64 t z) c))) (pow.f64 (pow.f64 (exp.f64 b) a) 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (exp.f64 (fma.f64 1/16 (*.f64 t z) c)) (+.f64 1 (expm1.f64 (*.f64 1/4 (*.f64 a b))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (fma.f64 1/16 (*.f64 t z) c))) (+.f64 1 (expm1.f64 (*.f64 1/4 (*.f64 a b))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 c)) (exp.f64 (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 c) (/.f64 (pow.f64 (pow.f64 (exp.f64 z) t) 1/16) (pow.f64 (pow.f64 (exp.f64 b) a) 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 c)) (/.f64 (pow.f64 (pow.f64 (exp.f64 z) t) 1/16) (pow.f64 (pow.f64 (exp.f64 b) a) 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 1/16 (*.f64 t z) c))) (exp.f64 (*.f64 (*.f64 a b) -1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 1/16 (*.f64 t z) c)) (/.f64 1 (pow.f64 (pow.f64 (exp.f64 b) a) 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 1/16 (*.f64 t z) c))) (/.f64 1 (pow.f64 (pow.f64 (exp.f64 b) a) 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 (*.f64 a b) -1/4)) (exp.f64 (fma.f64 1/16 (*.f64 t z) c))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 1 (pow.f64 (pow.f64 (exp.f64 b) a) 1/4)) (exp.f64 (fma.f64 1/16 (*.f64 t z) c))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 (*.f64 a b) -1/4)) (+.f64 1 (expm1.f64 (fma.f64 1/16 (*.f64 t z) c)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 1 (pow.f64 (pow.f64 (exp.f64 b) a) 1/4)) (+.f64 1 (expm1.f64 (fma.f64 1/16 (*.f64 t z) c)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4))) (exp.f64 c)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 (pow.f64 (pow.f64 (exp.f64 z) t) 1/16) (pow.f64 (pow.f64 (exp.f64 b) a) 1/4)) (exp.f64 c)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4))) (+.f64 1 (expm1.f64 c))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 (pow.f64 (pow.f64 (exp.f64 z) t) 1/16) (pow.f64 (pow.f64 (exp.f64 b) a) 1/4)) (+.f64 1 (expm1.f64 c))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 1/16 (*.f64 t z) c)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 1/16 (*.f64 t z) c))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 1/16 (*.f64 t z) c))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 1/16 (*.f64 t z) c))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 1/16 (*.f64 t z) c))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 c 1 (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 c 1 (*.f64 (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1/16 (*.f64 t z) (+.f64 c (*.f64 (*.f64 a b) -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 t (*.f64 z 1/16) (+.f64 c (*.f64 (*.f64 a b) -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 z (*.f64 1/16 t) (+.f64 c (*.f64 (*.f64 a b) -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 t z) 1/16 (+.f64 c (*.f64 (*.f64 a b) -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 1/16 (*.f64 t z)) 1 (+.f64 c (*.f64 (*.f64 a b) -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 1/16 (*.f64 t z) c) 1 (*.f64 (*.f64 a b) -1/4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 1/16 (*.f64 t z) c) 1 (*.f64 (*.f64 (*.f64 a b) -1/4) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1/4 (neg.f64 (*.f64 a b)) (fma.f64 1/16 (*.f64 t z) c))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 a b) -1/4 (fma.f64 1/16 (*.f64 t z) c))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 1/16 (*.f64 t z) c)) 1 (fma.f64 (*.f64 (*.f64 a b) -1/4) 1 (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 1/16 (*.f64 t z) c)) 1 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 1/4 (*.f64 a b)))) (pow.f64 (cbrt.f64 (*.f64 1/4 (*.f64 a b))) 2) (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 1/16 (*.f64 t z) c)) 1 (fma.f64 -1/4 (*.f64 a b) (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 1/16 (*.f64 t z) c)) 1 (fma.f64 (neg.f64 b) (*.f64 1/4 a) (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 c (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 c (*.f64 (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 1/16 (*.f64 t z)) (+.f64 c (*.f64 (*.f64 a b) -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 1/16 (*.f64 t z) c) (*.f64 (*.f64 a b) -1/4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 1/16 (*.f64 t z) c) (*.f64 (*.f64 (*.f64 a b) -1/4) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 (*.f64 a b) -1/4 (fma.f64 1/16 (*.f64 t z) c)) (fma.f64 (*.f64 (*.f64 a b) -1/4) 1 (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 (*.f64 a b) -1/4 (fma.f64 1/16 (*.f64 t z) c)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 1/4 (*.f64 a b)))) (pow.f64 (cbrt.f64 (*.f64 1/4 (*.f64 a b))) 2) (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 (*.f64 a b) -1/4 (fma.f64 1/16 (*.f64 t z) c)) (fma.f64 -1/4 (*.f64 a b) (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 (*.f64 a b) -1/4 (fma.f64 1/16 (*.f64 t z) c)) (fma.f64 (neg.f64 b) (*.f64 1/4 a) (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (*.f64 a b) -1/4) (fma.f64 1/16 (*.f64 t z) c))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)) c)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 1/16 (*.f64 t z) c))) (pow.f64 (cbrt.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 1/16 (*.f64 t z) c))) 2) (fma.f64 (*.f64 (*.f64 a b) -1/4) 1 (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 1/16 (*.f64 t z) c))) (pow.f64 (cbrt.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 1/16 (*.f64 t z) c))) 2) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 1/4 (*.f64 a b)))) (pow.f64 (cbrt.f64 (*.f64 1/4 (*.f64 a b))) 2) (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 1/16 (*.f64 t z) c))) (pow.f64 (cbrt.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 1/16 (*.f64 t z) c))) 2) (fma.f64 -1/4 (*.f64 a b) (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 1/16 (*.f64 t z) c))) (pow.f64 (cbrt.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 1/16 (*.f64 t z) c))) 2) (fma.f64 (neg.f64 b) (*.f64 1/4 a) (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 1/16 (*.f64 t z) c))) 2) (cbrt.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 1/16 (*.f64 t z) c))) (fma.f64 (*.f64 (*.f64 a b) -1/4) 1 (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 1/16 (*.f64 t z) c))) 2) (cbrt.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 1/16 (*.f64 t z) c))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 1/4 (*.f64 a b)))) (pow.f64 (cbrt.f64 (*.f64 1/4 (*.f64 a b))) 2) (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 1/16 (*.f64 t z) c))) 2) (cbrt.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 1/16 (*.f64 t z) c))) (fma.f64 -1/4 (*.f64 a b) (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 1/16 (*.f64 t z) c))) 2) (cbrt.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 1/16 (*.f64 t z) c))) (fma.f64 (neg.f64 b) (*.f64 1/4 a) (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 1/16 (*.f64 t z) c)) (pow.f64 (cbrt.f64 (fma.f64 1/16 (*.f64 t z) c)) 2) (*.f64 (*.f64 a b) -1/4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 1/16 (*.f64 t z) c)) (pow.f64 (cbrt.f64 (fma.f64 1/16 (*.f64 t z) c)) 2) (*.f64 (*.f64 (*.f64 a b) -1/4) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 1/16 (*.f64 t z) c)) 2) (cbrt.f64 (fma.f64 1/16 (*.f64 t z) c)) (*.f64 (*.f64 a b) -1/4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 1/16 (*.f64 t z) c)) 2) (cbrt.f64 (fma.f64 1/16 (*.f64 t z) c)) (*.f64 (*.f64 (*.f64 a b) -1/4) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 c) (pow.f64 (cbrt.f64 c) 2) (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 c) (pow.f64 (cbrt.f64 c) 2) (*.f64 (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 c) 2) (cbrt.f64 c) (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 c) 2) (cbrt.f64 c) (*.f64 (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (*.f64 t z) 2)) (*.f64 (cbrt.f64 (*.f64 t z)) 1/16) (+.f64 c (*.f64 (*.f64 a b) -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 1/4 (*.f64 a b))) 2) (neg.f64 (cbrt.f64 (*.f64 1/4 (*.f64 a b)))) (fma.f64 1/16 (*.f64 t z) c))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 1/16 (*.f64 t z))) (pow.f64 (cbrt.f64 (*.f64 1/16 (*.f64 t z))) 2) (+.f64 c (*.f64 (*.f64 a b) -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 1/16 (*.f64 t z))) 2) (cbrt.f64 (*.f64 1/16 (*.f64 t z))) (+.f64 c (*.f64 (*.f64 a b) -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 1/16 (*.f64 t z) c))) (sqrt.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 1/16 (*.f64 t z) c))) (fma.f64 (*.f64 (*.f64 a b) -1/4) 1 (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 1/16 (*.f64 t z) c))) (sqrt.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 1/16 (*.f64 t z) c))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 1/4 (*.f64 a b)))) (pow.f64 (cbrt.f64 (*.f64 1/4 (*.f64 a b))) 2) (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 1/16 (*.f64 t z) c))) (sqrt.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 1/16 (*.f64 t z) c))) (fma.f64 -1/4 (*.f64 a b) (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 1/16 (*.f64 t z) c))) (sqrt.f64 (fma.f64 (*.f64 a b) -1/4 (fma.f64 1/16 (*.f64 t z) c))) (fma.f64 (neg.f64 b) (*.f64 1/4 a) (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 1/16 (*.f64 t z) c)) (sqrt.f64 (fma.f64 1/16 (*.f64 t z) c)) (*.f64 (*.f64 a b) -1/4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 1/16 (*.f64 t z) c)) (sqrt.f64 (fma.f64 1/16 (*.f64 t z) c)) (*.f64 (*.f64 (*.f64 a b) -1/4) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 c) (sqrt.f64 c) (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 c) (sqrt.f64 c) (*.f64 (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 t z)) (*.f64 (sqrt.f64 (*.f64 t z)) 1/16) (+.f64 c (*.f64 (*.f64 a b) -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sqrt.f64 (*.f64 a b)) 1/2) (neg.f64 (*.f64 (sqrt.f64 (*.f64 a b)) 1/2)) (fma.f64 1/16 (*.f64 t z) c))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 1/4 (sqrt.f64 (*.f64 t z))) (*.f64 1/4 (sqrt.f64 (*.f64 t z))) (+.f64 c (*.f64 (*.f64 a b) -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (fma.f64 1/16 (*.f64 t z) c) 3) (*.f64 (pow.f64 (*.f64 a b) 3) 1/64)) (/.f64 1 (fma.f64 (*.f64 1/4 (*.f64 a b)) (fma.f64 1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c)) (pow.f64 (fma.f64 1/16 (*.f64 t z) c) 2))) (fma.f64 (*.f64 (*.f64 a b) -1/4) 1 (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (fma.f64 1/16 (*.f64 t z) c) 3) (*.f64 (pow.f64 (*.f64 a b) 3) 1/64)) (/.f64 1 (fma.f64 (*.f64 1/4 (*.f64 a b)) (fma.f64 1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c)) (pow.f64 (fma.f64 1/16 (*.f64 t z) c) 2))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 1/4 (*.f64 a b)))) (pow.f64 (cbrt.f64 (*.f64 1/4 (*.f64 a b))) 2) (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (fma.f64 1/16 (*.f64 t z) c) 3) (*.f64 (pow.f64 (*.f64 a b) 3) 1/64)) (/.f64 1 (fma.f64 (*.f64 1/4 (*.f64 a b)) (fma.f64 1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c)) (pow.f64 (fma.f64 1/16 (*.f64 t z) c) 2))) (fma.f64 -1/4 (*.f64 a b) (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (fma.f64 1/16 (*.f64 t z) c) 3) (*.f64 (pow.f64 (*.f64 a b) 3) 1/64)) (/.f64 1 (fma.f64 (*.f64 1/4 (*.f64 a b)) (fma.f64 1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c)) (pow.f64 (fma.f64 1/16 (*.f64 t z) c) 2))) (fma.f64 (neg.f64 b) (*.f64 1/4 a) (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (pow.f64 (*.f64 t z) 3) 1/4096 (pow.f64 c 3)) (/.f64 1 (fma.f64 c c (*.f64 (*.f64 1/16 (*.f64 t z)) (fma.f64 1/16 (*.f64 t z) (neg.f64 c))))) (*.f64 (*.f64 a b) -1/4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (pow.f64 (*.f64 t z) 3) 1/4096 (pow.f64 c 3)) (/.f64 1 (fma.f64 c c (*.f64 (*.f64 1/16 (*.f64 t z)) (fma.f64 1/16 (*.f64 t z) (neg.f64 c))))) (*.f64 (*.f64 (*.f64 a b) -1/4) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (fma.f64 1/16 (*.f64 t z) c) 2) (*.f64 1/16 (pow.f64 (*.f64 a b) 2))) (/.f64 1 (fma.f64 1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))) (fma.f64 (*.f64 (*.f64 a b) -1/4) 1 (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (fma.f64 1/16 (*.f64 t z) c) 2) (*.f64 1/16 (pow.f64 (*.f64 a b) 2))) (/.f64 1 (fma.f64 1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 1/4 (*.f64 a b)))) (pow.f64 (cbrt.f64 (*.f64 1/4 (*.f64 a b))) 2) (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (fma.f64 1/16 (*.f64 t z) c) 2) (*.f64 1/16 (pow.f64 (*.f64 a b) 2))) (/.f64 1 (fma.f64 1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))) (fma.f64 -1/4 (*.f64 a b) (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (fma.f64 1/16 (*.f64 t z) c) 2) (*.f64 1/16 (pow.f64 (*.f64 a b) 2))) (/.f64 1 (fma.f64 1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))) (fma.f64 (neg.f64 b) (*.f64 1/4 a) (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 c c) (*.f64 (pow.f64 (*.f64 t z) 2) 1/256)) (/.f64 1 (+.f64 c (*.f64 -1/16 (*.f64 t z)))) (*.f64 (*.f64 a b) -1/4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 c c) (*.f64 (pow.f64 (*.f64 t z) 2) 1/256)) (/.f64 1 (+.f64 c (*.f64 -1/16 (*.f64 t z)))) (*.f64 (*.f64 (*.f64 a b) -1/4) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 1/4 a) (neg.f64 b) (fma.f64 1/16 (*.f64 t z) c))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 1/16 t) z (+.f64 c (*.f64 (*.f64 a b) -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (*.f64 (*.f64 a b) -1/4)) (cbrt.f64 (*.f64 (*.f64 a b) -1/4))) (cbrt.f64 (*.f64 (*.f64 a b) -1/4)) (fma.f64 1/16 (*.f64 t z) c))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4))) (cbrt.f64 (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)))) (cbrt.f64 (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4))) c)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (*.f64 a b) -1/4)) (sqrt.f64 (*.f64 (*.f64 a b) -1/4)) (fma.f64 1/16 (*.f64 t z) c))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4))) (sqrt.f64 (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4))) c)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (*.f64 a b)) 1/4 (fma.f64 1/16 (*.f64 t z) c))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (*.f64 (sqrt.f64 (*.f64 a b)) 1/2)) (*.f64 (sqrt.f64 (*.f64 a b)) 1/2) (fma.f64 1/16 (*.f64 t z) c))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 (*.f64 1/4 (*.f64 a b)) (fma.f64 1/16 (*.f64 t z) c))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (fma.f64 1/16 (*.f64 t z) c)) (*.f64 (sqrt.f64 (*.f64 a b)) 1/2)) (-.f64 (sqrt.f64 (fma.f64 1/16 (*.f64 t z) c)) (*.f64 (sqrt.f64 (*.f64 a b)) 1/2)) (fma.f64 (*.f64 (*.f64 a b) -1/4) 1 (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (fma.f64 1/16 (*.f64 t z) c)) (*.f64 (sqrt.f64 (*.f64 a b)) 1/2)) (-.f64 (sqrt.f64 (fma.f64 1/16 (*.f64 t z) c)) (*.f64 (sqrt.f64 (*.f64 a b)) 1/2)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 1/4 (*.f64 a b)))) (pow.f64 (cbrt.f64 (*.f64 1/4 (*.f64 a b))) 2) (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (fma.f64 1/16 (*.f64 t z) c)) (*.f64 (sqrt.f64 (*.f64 a b)) 1/2)) (-.f64 (sqrt.f64 (fma.f64 1/16 (*.f64 t z) c)) (*.f64 (sqrt.f64 (*.f64 a b)) 1/2)) (fma.f64 -1/4 (*.f64 a b) (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (fma.f64 1/16 (*.f64 t z) c)) (*.f64 (sqrt.f64 (*.f64 a b)) 1/2)) (-.f64 (sqrt.f64 (fma.f64 1/16 (*.f64 t z) c)) (*.f64 (sqrt.f64 (*.f64 a b)) 1/2)) (fma.f64 (neg.f64 b) (*.f64 1/4 a) (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 1/4 (sqrt.f64 (*.f64 t z)) (*.f64 (sqrt.f64 (*.f64 a b)) 1/2)) (-.f64 (*.f64 1/4 (sqrt.f64 (*.f64 t z))) (*.f64 (sqrt.f64 (*.f64 a b)) 1/2)) c)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (pow.f64 (cbrt.f64 (*.f64 1/4 (*.f64 a b))) 2)) (cbrt.f64 (*.f64 1/4 (*.f64 a b))) (fma.f64 1/16 (*.f64 t z) c))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (*.f64 1/4 a)) b (fma.f64 1/16 (*.f64 t z) c))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 1/16 z) t (+.f64 c (*.f64 (*.f64 a b) -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 1/16 (cbrt.f64 (pow.f64 (*.f64 t z) 2))) (cbrt.f64 (*.f64 t z)) (+.f64 c (*.f64 (*.f64 a b) -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 1/16 (sqrt.f64 (*.f64 t z))) (sqrt.f64 (*.f64 t z)) (+.f64 c (*.f64 (*.f64 a b) -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 1/16 t) 1) z (+.f64 c (*.f64 (*.f64 a b) -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 1/16 t) (pow.f64 (cbrt.f64 z) 2)) (cbrt.f64 z) (+.f64 c (*.f64 (*.f64 a b) -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 1/16 t) (sqrt.f64 z)) (sqrt.f64 z) (+.f64 c (*.f64 (*.f64 a b) -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -1/4 a) b (fma.f64 1/16 (*.f64 t z) c))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -1/4 b) a (fma.f64 1/16 (*.f64 t z) c))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -1/4 (pow.f64 (cbrt.f64 (*.f64 a b)) 2)) (cbrt.f64 (*.f64 a b)) (fma.f64 1/16 (*.f64 t z) c))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -1/4 (sqrt.f64 (*.f64 a b))) (sqrt.f64 (*.f64 a b)) (fma.f64 1/16 (*.f64 t z) c))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 1/16 (*.f64 t z) c))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 c c) (+.f64 c (*.f64 -1/16 (*.f64 t z)))) (/.f64 (*.f64 (pow.f64 (*.f64 t z) 2) 1/256) (+.f64 c (*.f64 -1/16 (*.f64 t z)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 1/16 (*.f64 t z) c) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 1/16 (*.f64 t z) c))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 1/16 (*.f64 t z) c)) (pow.f64 (cbrt.f64 (fma.f64 1/16 (*.f64 t z) c)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 1/16 (*.f64 t z) c)) 2) (cbrt.f64 (fma.f64 1/16 (*.f64 t z) c)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 1/16 (*.f64 t z) c)) (sqrt.f64 (fma.f64 1/16 (*.f64 t z) c)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (pow.f64 (*.f64 t z) 3) 1/4096 (pow.f64 c 3)) (/.f64 1 (fma.f64 c c (*.f64 (*.f64 1/16 (*.f64 t z)) (fma.f64 1/16 (*.f64 t z) (neg.f64 c))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 c c) (*.f64 (pow.f64 (*.f64 t z) 2) 1/256)) (/.f64 1 (+.f64 c (*.f64 -1/16 (*.f64 t z)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 c c (*.f64 (*.f64 1/16 (*.f64 t z)) (fma.f64 1/16 (*.f64 t z) (neg.f64 c)))) (fma.f64 (pow.f64 (*.f64 t z) 3) 1/4096 (pow.f64 c 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 c (*.f64 -1/16 (*.f64 t z))) (-.f64 (*.f64 c c) (*.f64 (pow.f64 (*.f64 t z) 2) 1/256))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 (pow.f64 (*.f64 t z) 3) 1/4096 (pow.f64 c 3)) (fma.f64 c c (*.f64 (*.f64 1/16 (*.f64 t z)) (fma.f64 1/16 (*.f64 t z) (neg.f64 c)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 (pow.f64 (*.f64 t z) 3) 1/4096 (pow.f64 c 3)) (fma.f64 (pow.f64 (*.f64 t z) 2) 1/256 (-.f64 (*.f64 c c) (*.f64 (*.f64 c 1/16) (*.f64 t z)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 c c) (*.f64 (pow.f64 (*.f64 t z) 2) 1/256)) (+.f64 c (*.f64 -1/16 (*.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (fma.f64 (pow.f64 (*.f64 t z) 3) 1/4096 (pow.f64 c 3))) (neg.f64 (fma.f64 c c (*.f64 (*.f64 1/16 (*.f64 t z)) (fma.f64 1/16 (*.f64 t z) (neg.f64 c))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (*.f64 c c) (*.f64 (pow.f64 (*.f64 t z) 2) 1/256))) (neg.f64 (+.f64 c (*.f64 -1/16 (*.f64 t z)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 (pow.f64 (*.f64 t z) 2) 1/256 (neg.f64 (*.f64 c c))) (fma.f64 1/16 (*.f64 t z) (neg.f64 c)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 1/16 (*.f64 t z) c) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 1/16 (*.f64 t z) c)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 1/16 (*.f64 t z) c)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 1/16 (*.f64 t z) c) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 1/16 (*.f64 t z) c) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 1/16 (*.f64 t z) c)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 1/16 (*.f64 t z) c))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 c)) (pow.f64 (pow.f64 (exp.f64 z) t) 1/16)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 c) (+.f64 1 (expm1.f64 (*.f64 1/16 (*.f64 t z))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 c)) (+.f64 1 (expm1.f64 (*.f64 1/16 (*.f64 t z))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 1/16 (*.f64 t z)))) (exp.f64 c)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (pow.f64 (exp.f64 z) t) 1/16) (+.f64 1 (expm1.f64 c))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 1/16 (*.f64 t z)))) (+.f64 1 (expm1.f64 c))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 1/16 (*.f64 t z) c) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 1/16 (*.f64 t z) c)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 1/16 (*.f64 t z) c)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 1/16 (*.f64 t z) c)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 1/16 (*.f64 t z) c)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 c 1 (*.f64 1/16 (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1/16 (*.f64 t z) c)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 t (*.f64 z 1/16) c)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 z (*.f64 1/16 t) c)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 t z) 1/16 c)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 1/16 (*.f64 t z)) 1 c)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 c (*.f64 1/16 (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 1/16 (*.f64 t z)) c)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 c) (pow.f64 (cbrt.f64 c) 2) (*.f64 1/16 (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 c) 2) (cbrt.f64 c) (*.f64 1/16 (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (*.f64 t z) 2)) (*.f64 (cbrt.f64 (*.f64 t z)) 1/16) c)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 1/16 (*.f64 t z))) (pow.f64 (cbrt.f64 (*.f64 1/16 (*.f64 t z))) 2) c)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 1/16 (*.f64 t z))) 2) (cbrt.f64 (*.f64 1/16 (*.f64 t z))) c)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 c) (sqrt.f64 c) (*.f64 1/16 (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 t z)) (*.f64 (sqrt.f64 (*.f64 t z)) 1/16) c)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 1/4 (sqrt.f64 (*.f64 t z))) (*.f64 1/4 (sqrt.f64 (*.f64 t z))) c)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 1/16 t) z c)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 1/16 z) t c)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 1/16 (cbrt.f64 (pow.f64 (*.f64 t z) 2))) (cbrt.f64 (*.f64 t z)) c)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 1/16 (sqrt.f64 (*.f64 t z))) (sqrt.f64 (*.f64 t z)) c)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 1/16 t) 1) z c)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 1/16 t) (pow.f64 (cbrt.f64 z) 2)) (cbrt.f64 z) c)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 1/16 t) (sqrt.f64 z)) (sqrt.f64 z) c)))))

simplify65.0ms (0.6%)

Algorithm
egg-herbie
Rules
615×fma-def_binary64
412×fma-neg_binary64
141×cancel-sign-sub-inv_binary64
86×distribute-rgt-neg-in_binary64
68×unsub-neg_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
019457
141453
295413
3224413
4337413
5541413
6883413
71255413
81579413
92006413
102027413
Stop Event
saturated
Counts
257 → 227
Calls
Call 1
Inputs
(-.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 1/4 (*.f64 a b)))
c
c
(-.f64 c (*.f64 1/4 (*.f64 a b)))
(*.f64 1/16 (*.f64 t z))
(*.f64 1/16 (*.f64 t z))
(-.f64 c (*.f64 1/4 (*.f64 a b)))
(*.f64 1/16 (*.f64 t z))
(*.f64 1/16 (*.f64 t z))
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(*.f64 -1/4 (*.f64 a b))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(*.f64 -1/4 (*.f64 a b))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(*.f64 -1/4 (*.f64 a b))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(*.f64 -1/4 (*.f64 a b))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(*.f64 1/16 (*.f64 t z))
c
c
c
(*.f64 1/16 (*.f64 t z))
(*.f64 1/16 (*.f64 t z))
c
(*.f64 1/16 (*.f64 t z))
(*.f64 1/16 (*.f64 t z))
Outputs
(-.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 1/4 (*.f64 a b)))
(fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4))
(fma.f64 1/16 (*.f64 t z) (*.f64 b (*.f64 a -1/4)))
(fma.f64 1/16 (*.f64 t z) (*.f64 a (*.f64 b -1/4)))
c
c
(-.f64 c (*.f64 1/4 (*.f64 a b)))
(+.f64 c (*.f64 (*.f64 a b) -1/4))
(+.f64 c (*.f64 b (*.f64 a -1/4)))
(fma.f64 a (*.f64 b -1/4) c)
(fma.f64 b (*.f64 a -1/4) c)
(*.f64 1/16 (*.f64 t z))
(*.f64 (*.f64 1/16 t) z)
(*.f64 1/16 (*.f64 t z))
(*.f64 (*.f64 1/16 t) z)
(-.f64 c (*.f64 1/4 (*.f64 a b)))
(+.f64 c (*.f64 (*.f64 a b) -1/4))
(+.f64 c (*.f64 b (*.f64 a -1/4)))
(fma.f64 a (*.f64 b -1/4) c)
(fma.f64 b (*.f64 a -1/4) c)
(*.f64 1/16 (*.f64 t z))
(*.f64 (*.f64 1/16 t) z)
(*.f64 1/16 (*.f64 t z))
(*.f64 (*.f64 1/16 t) z)
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(+.f64 (*.f64 (*.f64 1/16 t) z) c)
(fma.f64 1/16 (*.f64 t z) c)
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 b (*.f64 a -1/4))))
(fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 b -1/4) c))
(fma.f64 1/16 (*.f64 t z) (fma.f64 b (*.f64 a -1/4) c))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 b (*.f64 a -1/4))))
(fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 b -1/4) c))
(fma.f64 1/16 (*.f64 t z) (fma.f64 b (*.f64 a -1/4) c))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 b (*.f64 a -1/4))))
(fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 b -1/4) c))
(fma.f64 1/16 (*.f64 t z) (fma.f64 b (*.f64 a -1/4) c))
(*.f64 -1/4 (*.f64 a b))
(*.f64 (*.f64 a b) -1/4)
(*.f64 b (*.f64 a -1/4))
(*.f64 a (*.f64 b -1/4))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 b (*.f64 a -1/4))))
(fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 b -1/4) c))
(fma.f64 1/16 (*.f64 t z) (fma.f64 b (*.f64 a -1/4) c))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 b (*.f64 a -1/4))))
(fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 b -1/4) c))
(fma.f64 1/16 (*.f64 t z) (fma.f64 b (*.f64 a -1/4) c))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 b (*.f64 a -1/4))))
(fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 b -1/4) c))
(fma.f64 1/16 (*.f64 t z) (fma.f64 b (*.f64 a -1/4) c))
(*.f64 -1/4 (*.f64 a b))
(*.f64 (*.f64 a b) -1/4)
(*.f64 b (*.f64 a -1/4))
(*.f64 a (*.f64 b -1/4))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 b (*.f64 a -1/4))))
(fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 b -1/4) c))
(fma.f64 1/16 (*.f64 t z) (fma.f64 b (*.f64 a -1/4) c))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 b (*.f64 a -1/4))))
(fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 b -1/4) c))
(fma.f64 1/16 (*.f64 t z) (fma.f64 b (*.f64 a -1/4) c))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 b (*.f64 a -1/4))))
(fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 b -1/4) c))
(fma.f64 1/16 (*.f64 t z) (fma.f64 b (*.f64 a -1/4) c))
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(+.f64 (*.f64 (*.f64 1/16 t) z) c)
(fma.f64 1/16 (*.f64 t z) c)
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 b (*.f64 a -1/4))))
(fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 b -1/4) c))
(fma.f64 1/16 (*.f64 t z) (fma.f64 b (*.f64 a -1/4) c))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 b (*.f64 a -1/4))))
(fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 b -1/4) c))
(fma.f64 1/16 (*.f64 t z) (fma.f64 b (*.f64 a -1/4) c))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 b (*.f64 a -1/4))))
(fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 b -1/4) c))
(fma.f64 1/16 (*.f64 t z) (fma.f64 b (*.f64 a -1/4) c))
(*.f64 -1/4 (*.f64 a b))
(*.f64 (*.f64 a b) -1/4)
(*.f64 b (*.f64 a -1/4))
(*.f64 a (*.f64 b -1/4))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 b (*.f64 a -1/4))))
(fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 b -1/4) c))
(fma.f64 1/16 (*.f64 t z) (fma.f64 b (*.f64 a -1/4) c))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 b (*.f64 a -1/4))))
(fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 b -1/4) c))
(fma.f64 1/16 (*.f64 t z) (fma.f64 b (*.f64 a -1/4) c))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 b (*.f64 a -1/4))))
(fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 b -1/4) c))
(fma.f64 1/16 (*.f64 t z) (fma.f64 b (*.f64 a -1/4) c))
(*.f64 -1/4 (*.f64 a b))
(*.f64 (*.f64 a b) -1/4)
(*.f64 b (*.f64 a -1/4))
(*.f64 a (*.f64 b -1/4))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 b (*.f64 a -1/4))))
(fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 b -1/4) c))
(fma.f64 1/16 (*.f64 t z) (fma.f64 b (*.f64 a -1/4) c))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 b (*.f64 a -1/4))))
(fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 b -1/4) c))
(fma.f64 1/16 (*.f64 t z) (fma.f64 b (*.f64 a -1/4) c))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4)))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 b (*.f64 a -1/4))))
(fma.f64 1/16 (*.f64 t z) (fma.f64 a (*.f64 b -1/4) c))
(fma.f64 1/16 (*.f64 t z) (fma.f64 b (*.f64 a -1/4) c))
(*.f64 1/16 (*.f64 t z))
(*.f64 (*.f64 1/16 t) z)
c
c
c
(*.f64 1/16 (*.f64 t z))
(*.f64 (*.f64 1/16 t) z)
(*.f64 1/16 (*.f64 t z))
(*.f64 (*.f64 1/16 t) z)
c
(*.f64 1/16 (*.f64 t z))
(*.f64 (*.f64 1/16 t) z)
(*.f64 1/16 (*.f64 t z))
(*.f64 (*.f64 1/16 t) z)

localize6.0ms (0.1%)

Compiler

Compiled 12 to 8 computations (33.3% saved)

localize7.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.0b
(*.f64 z (*.f64 1/16 t))
Compiler

Compiled 18 to 13 computations (27.8% saved)

series5.0ms (0%)

Counts
1 → 24
Calls

6 calls:

TimeVariablePointExpression
3.0ms
t
@0
(*.f64 z (*.f64 1/16 t))
1.0ms
z
@0
(*.f64 z (*.f64 1/16 t))
0.0ms
z
@inf
(*.f64 z (*.f64 1/16 t))
0.0ms
t
@inf
(*.f64 z (*.f64 1/16 t))
0.0ms
t
@-inf
(*.f64 z (*.f64 1/16 t))

rewrite49.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
551×pow1_binary64
510×add-log-exp_binary64
510×log1p-expm1-u_binary64
510×expm1-log1p-u_binary64
500×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
067
11227
213957
Stop Event
node limit
Counts
1 → 11
Calls
Call 1
Inputs
(*.f64 z (*.f64 1/16 t))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 z (*.f64 1/16 t))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 z (*.f64 1/16 t)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 z (*.f64 1/16 t)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 z (*.f64 1/16 t))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 z (*.f64 1/16 t))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 z (*.f64 1/16 t)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 z) (*.f64 1/16 t)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 z (*.f64 1/16 t)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 z (*.f64 1/16 t))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 z (*.f64 1/16 t))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 z (*.f64 1/16 t))))))))

simplify10.0ms (0.1%)

Algorithm
egg-herbie
Rules
*-commutative_binary64
associate-*r*_binary64
associate-*l*_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
06168
110168
217168
319168
Stop Event
saturated
Counts
35 → 12
Calls
Call 1
Inputs
(*.f64 1/16 (*.f64 t z))
(*.f64 1/16 (*.f64 t z))
(*.f64 1/16 (*.f64 t z))
(*.f64 1/16 (*.f64 t z))
(*.f64 1/16 (*.f64 t z))
(*.f64 1/16 (*.f64 t z))
(*.f64 1/16 (*.f64 t z))
(*.f64 1/16 (*.f64 t z))
(*.f64 1/16 (*.f64 t z))
(*.f64 1/16 (*.f64 t z))
(*.f64 1/16 (*.f64 t z))
(*.f64 1/16 (*.f64 t z))
(*.f64 1/16 (*.f64 t z))
(*.f64 1/16 (*.f64 t z))
(*.f64 1/16 (*.f64 t z))
(*.f64 1/16 (*.f64 t z))
(*.f64 1/16 (*.f64 t z))
(*.f64 1/16 (*.f64 t z))
(*.f64 1/16 (*.f64 t z))
(*.f64 1/16 (*.f64 t z))
(*.f64 1/16 (*.f64 t z))
(*.f64 1/16 (*.f64 t z))
(*.f64 1/16 (*.f64 t z))
(*.f64 1/16 (*.f64 t z))
Outputs
(*.f64 1/16 (*.f64 t z))
(*.f64 1/16 (*.f64 t z))
(*.f64 1/16 (*.f64 t z))
(*.f64 1/16 (*.f64 t z))
(*.f64 1/16 (*.f64 t z))
(*.f64 1/16 (*.f64 t z))
(*.f64 1/16 (*.f64 t z))
(*.f64 1/16 (*.f64 t z))
(*.f64 1/16 (*.f64 t z))
(*.f64 1/16 (*.f64 t z))
(*.f64 1/16 (*.f64 t z))
(*.f64 1/16 (*.f64 t z))
(*.f64 1/16 (*.f64 t z))
(*.f64 1/16 (*.f64 t z))
(*.f64 1/16 (*.f64 t z))
(*.f64 1/16 (*.f64 t z))
(*.f64 1/16 (*.f64 t z))
(*.f64 1/16 (*.f64 t z))
(*.f64 1/16 (*.f64 t z))
(*.f64 1/16 (*.f64 t z))
(*.f64 1/16 (*.f64 t z))
(*.f64 1/16 (*.f64 t z))
(*.f64 1/16 (*.f64 t z))
(*.f64 1/16 (*.f64 t z))

localize40.0ms (0.4%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
Compiler

Compiled 32 to 15 computations (53.1% saved)

series3.0ms (0%)

Counts
1 → 12
Calls

12 calls:

TimeVariablePointExpression
0.0ms
y
@0
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
0.0ms
y
@inf
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
0.0ms
y
@-inf
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
0.0ms
x
@-inf
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
0.0ms
t
@inf
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))

rewrite156.0ms (1.5%)

Algorithm
batch-egg-rewrite
Rules
540×log-prod_binary64
405×exp-prod_binary64
359×fma-def_binary64
358×pow-prod-down_binary64
278×pow2_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01011
121211
2277311
Stop Event
node limit
Counts
1 → 78
Calls
Call 1
Inputs
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 y x (*.f64 (*.f64 1/16 z) t)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (*.f64 y x) 2) (fma.f64 y x (*.f64 -1/16 (*.f64 t z)))) (/.f64 (pow.f64 (*.f64 (*.f64 1/16 z) t) 2) (fma.f64 y x (*.f64 -1/16 (*.f64 t z)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 y x (*.f64 (*.f64 1/16 z) t)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 y x (*.f64 (*.f64 1/16 z) t)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 y x (*.f64 (*.f64 1/16 z) t))) (pow.f64 (cbrt.f64 (fma.f64 y x (*.f64 (*.f64 1/16 z) t))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 y x (*.f64 (*.f64 1/16 z) t))) 2) (cbrt.f64 (fma.f64 y x (*.f64 (*.f64 1/16 z) t))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 y x (*.f64 (*.f64 1/16 z) t))) (sqrt.f64 (fma.f64 y x (*.f64 (*.f64 1/16 z) t))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (pow.f64 (*.f64 t z) 3) 1/4096 (pow.f64 (*.f64 y x) 3)) (/.f64 1 (fma.f64 (*.f64 (*.f64 1/16 z) t) (-.f64 (*.f64 (*.f64 1/16 z) t) (*.f64 y x)) (pow.f64 (*.f64 y x) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 (*.f64 1/16 z) t) 2)) (/.f64 1 (fma.f64 y x (*.f64 -1/16 (*.f64 t z)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (*.f64 (*.f64 1/16 z) t) (-.f64 (*.f64 (*.f64 1/16 z) t) (*.f64 y x)) (pow.f64 (*.f64 y x) 2)) (fma.f64 (pow.f64 (*.f64 t z) 3) 1/4096 (pow.f64 (*.f64 y x) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 y x (*.f64 -1/16 (*.f64 t z))) (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 (*.f64 1/16 z) t) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 (pow.f64 (*.f64 t z) 3) 1/4096 (pow.f64 (*.f64 y x) 3)) (fma.f64 (*.f64 (*.f64 1/16 z) t) (-.f64 (*.f64 (*.f64 1/16 z) t) (*.f64 y x)) (pow.f64 (*.f64 y x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 (pow.f64 (*.f64 t z) 3) 1/4096 (pow.f64 (*.f64 y x) 3)) (fma.f64 (pow.f64 (*.f64 t z) 2) 1/256 (-.f64 (pow.f64 (*.f64 y x) 2) (*.f64 y (*.f64 x (*.f64 (*.f64 1/16 z) t))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 (*.f64 1/16 z) t) 2)) (fma.f64 y x (*.f64 -1/16 (*.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (fma.f64 (pow.f64 (*.f64 t z) 3) 1/4096 (pow.f64 (*.f64 y x) 3))) (neg.f64 (fma.f64 (*.f64 (*.f64 1/16 z) t) (-.f64 (*.f64 (*.f64 1/16 z) t) (*.f64 y x)) (pow.f64 (*.f64 y x) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 (*.f64 1/16 z) t) 2))) (neg.f64 (fma.f64 y x (*.f64 -1/16 (*.f64 t z)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (*.f64 1/16 z) t) 2) (pow.f64 (*.f64 y x) 2)) (-.f64 (*.f64 (*.f64 1/16 z) t) (*.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 y x (*.f64 (*.f64 1/16 z) t)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 y x (*.f64 (*.f64 1/16 z) t)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 y x (*.f64 (*.f64 1/16 z) t)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 y x (*.f64 (*.f64 1/16 z) t))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 y x (*.f64 (*.f64 1/16 z) t))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (fma.f64 y x (*.f64 (*.f64 1/16 z) t))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 (*.f64 (*.f64 1/16 z) t) (-.f64 (*.f64 (*.f64 1/16 z) t) (*.f64 y x)) (pow.f64 (*.f64 y x) 2)) (fma.f64 (pow.f64 (*.f64 t z) 3) 1/4096 (pow.f64 (*.f64 y x) 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 y x (*.f64 -1/16 (*.f64 t z))) (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 (*.f64 1/16 z) t) 2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (fma.f64 y x (*.f64 (*.f64 1/16 z) t)))) 2)) (cbrt.f64 (log.f64 (fma.f64 y x (*.f64 (*.f64 1/16 z) t)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (fma.f64 y x (*.f64 (*.f64 1/16 z) t))))) (sqrt.f64 (log.f64 (fma.f64 y x (*.f64 (*.f64 1/16 z) t)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 y x (*.f64 (*.f64 1/16 z) t)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 y x (*.f64 (*.f64 1/16 z) t))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 y x (*.f64 (*.f64 1/16 z) t)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 y x))) (pow.f64 (exp.f64 1/16) (*.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 y x)) (+.f64 1 (expm1.f64 (*.f64 (*.f64 1/16 z) t)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 y x))) (+.f64 1 (expm1.f64 (*.f64 (*.f64 1/16 z) t)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (*.f64 1/16 z) t))) (exp.f64 (*.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 1/16) (*.f64 t z)) (+.f64 1 (expm1.f64 (*.f64 y x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (*.f64 1/16 z) t))) (+.f64 1 (expm1.f64 (*.f64 y x)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 y x (*.f64 (*.f64 1/16 z) t)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 y x (*.f64 (*.f64 1/16 z) t))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 y x (*.f64 (*.f64 1/16 z) t))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 y x (*.f64 (*.f64 1/16 z) t))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 y x (*.f64 (*.f64 1/16 z) t))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (fma.f64 y x (*.f64 (*.f64 1/16 z) t)) 3)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (fma.f64 y x (*.f64 (*.f64 1/16 z) t)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (fma.f64 y x (*.f64 (*.f64 1/16 z) t)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (fma.f64 y x (*.f64 (*.f64 1/16 z) t))) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y x (*.f64 (*.f64 1/16 z) t))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x y (*.f64 (*.f64 1/16 z) t))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y x) 1 (*.f64 (*.f64 1/16 z) t))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1/16 (*.f64 t z) (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 t (*.f64 z 1/16) (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 z (*.f64 1/16 t) (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 t z) 1/16 (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 1/16 z) t) 1 (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 y x) (*.f64 (*.f64 1/16 z) t))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (*.f64 1/16 z) t) (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (*.f64 t z) 2)) (*.f64 (cbrt.f64 (*.f64 t z)) 1/16) (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 y y)) (*.f64 (cbrt.f64 y) x) (*.f64 (*.f64 1/16 z) t))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (*.f64 1/16 z) t)) (pow.f64 (cbrt.f64 (*.f64 (*.f64 1/16 z) t)) 2) (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (*.f64 1/16 z) t)) 2) (cbrt.f64 (*.f64 (*.f64 1/16 z) t)) (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (*.f64 (cbrt.f64 x) y) (*.f64 (*.f64 1/16 z) t))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 y x)) (pow.f64 (cbrt.f64 (*.f64 y x)) 2) (*.f64 (*.f64 1/16 z) t))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 y x)) 2) (cbrt.f64 (*.f64 y x)) (*.f64 (*.f64 1/16 z) t))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 t z)) (*.f64 (sqrt.f64 (*.f64 t z)) 1/16) (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 y) (*.f64 (sqrt.f64 y) x) (*.f64 (*.f64 1/16 z) t))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sqrt.f64 (*.f64 t z)) 1/4) (*.f64 (sqrt.f64 (*.f64 t z)) 1/4) (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) y) (*.f64 (*.f64 1/16 z) t))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 y x)) (sqrt.f64 (*.f64 y x)) (*.f64 (*.f64 1/16 z) t))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 1/16 t) z (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 x) (*.f64 (*.f64 1/16 z) t))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y (sqrt.f64 x)) (sqrt.f64 x) (*.f64 (*.f64 1/16 z) t))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (cbrt.f64 (*.f64 y y))) (cbrt.f64 y) (*.f64 (*.f64 1/16 z) t))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (sqrt.f64 y)) (sqrt.f64 y) (*.f64 (*.f64 1/16 z) t))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 1/16 z) t (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 1/16 (cbrt.f64 (pow.f64 (*.f64 t z) 2))) (cbrt.f64 (*.f64 t z)) (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 1/16 (sqrt.f64 (*.f64 t z))) (sqrt.f64 (*.f64 t z)) (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 1/16 t) 1) z (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 1/16 t) (pow.f64 (cbrt.f64 z) 2)) (cbrt.f64 z) (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 1/16 t) (sqrt.f64 z)) (sqrt.f64 z) (*.f64 y x))))))

simplify10.0ms (0.1%)

Algorithm
egg-herbie
Rules
*-commutative_binary64
associate-*r*_binary64
associate-*l*_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0966
11466
22166
32366
Stop Event
saturated
Counts
90 → 80
Calls
Call 1
Inputs
(*.f64 1/16 (*.f64 t z))
(*.f64 y x)
(*.f64 y x)
(*.f64 1/16 (*.f64 t z))
(*.f64 y x)
(*.f64 y x)
(*.f64 y x)
(*.f64 1/16 (*.f64 t z))
(*.f64 1/16 (*.f64 t z))
(*.f64 y x)
(*.f64 1/16 (*.f64 t z))
(*.f64 1/16 (*.f64 t z))
Outputs
(*.f64 1/16 (*.f64 t z))
(*.f64 y x)
(*.f64 y x)
(*.f64 1/16 (*.f64 t z))
(*.f64 y x)
(*.f64 y x)
(*.f64 y x)
(*.f64 1/16 (*.f64 t z))
(*.f64 1/16 (*.f64 t z))
(*.f64 y x)
(*.f64 1/16 (*.f64 t z))
(*.f64 1/16 (*.f64 t z))

localize8.0ms (0.1%)

Compiler

Compiled 20 to 13 computations (35% saved)

eval114.0ms (1.1%)

Compiler

Compiled 6255 to 3158 computations (49.5% saved)

prune76.0ms (0.7%)

Pruning

15 alts after pruning (7 fresh and 8 done)

PrunedKeptTotal
New3163319
Fresh246
Picked011
Done077
Total31815333
Error
0b
Counts
333 → 15
Alt Table
Click to see full alt table
StatusErrorProgram
20.7b
(fma.f64 a (*.f64 b -1/4) (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
29.5b
(+.f64 (*.f64 1/16 (*.f64 t z)) c)
27.9b
(+.f64 (*.f64 y x) c)
33.6b
(-.f64 (*.f64 y x) (*.f64 1/4 (*.f64 a b)))
49.9b
(*.f64 z (*.f64 1/16 t))
48.1b
(*.f64 a (*.f64 b -1/4))
35.2b
(-.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 1/4 (*.f64 a b)))
14.5b
(fma.f64 (*.f64 1/16 z) t (+.f64 c (*.f64 (*.f64 a b) -1/4)))
48.1b
(*.f64 y x)
35.5b
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
35.5b
(fma.f64 x y (*.f64 1/16 (*.f64 t z)))
27.8b
(fma.f64 (*.f64 b -1/4) a c)
42.2b
c
14.5b
(-.f64 (+.f64 c (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
27.8b
(+.f64 (*.f64 a (*.f64 b -1/4)) c)
Compiler

Compiled 320 to 245 computations (23.4% saved)

localize17.0ms (0.2%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(fma.f64 (*.f64 1/16 z) t (+.f64 c (*.f64 (*.f64 a b) -1/4)))
0.0b
(+.f64 c (*.f64 (*.f64 a b) -1/4))
Compiler

Compiled 44 to 23 computations (47.7% saved)

series8.0ms (0.1%)

Counts
2 → 96
Calls

24 calls:

TimeVariablePointExpression
0.0ms
t
@-inf
(fma.f64 (*.f64 1/16 z) t (+.f64 c (*.f64 (*.f64 a b) -1/4)))
0.0ms
z
@0
(fma.f64 (*.f64 1/16 z) t (+.f64 c (*.f64 (*.f64 a b) -1/4)))
0.0ms
t
@0
(fma.f64 (*.f64 1/16 z) t (+.f64 c (*.f64 (*.f64 a b) -1/4)))
0.0ms
t
@inf
(fma.f64 (*.f64 1/16 z) t (+.f64 c (*.f64 (*.f64 a b) -1/4)))
0.0ms
c
@0
(fma.f64 (*.f64 1/16 z) t (+.f64 c (*.f64 (*.f64 a b) -1/4)))

rewrite69.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
646×log-prod_binary64
414×pow-prod-down_binary64
351×pow2_binary64
318×fma-def_binary64
244×pow1/3_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01327
127123
2339323
Stop Event
node limit
Counts
2 → 92
Calls
Call 1
Inputs
(+.f64 c (*.f64 (*.f64 a b) -1/4))
(fma.f64 (*.f64 1/16 z) t (+.f64 c (*.f64 (*.f64 a b) -1/4)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 a (*.f64 b -1/4) c))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 c c) (+.f64 c (*.f64 1/4 (*.f64 a b)))) (/.f64 (*.f64 1/16 (pow.f64 (*.f64 a b) 2)) (+.f64 c (*.f64 1/4 (*.f64 a b)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 a (*.f64 b -1/4) c) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 a (*.f64 b -1/4) c))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 a (*.f64 b -1/4) c)) (pow.f64 (cbrt.f64 (fma.f64 a (*.f64 b -1/4) c)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 a (*.f64 b -1/4) c)) 2) (cbrt.f64 (fma.f64 a (*.f64 b -1/4) c)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 a (*.f64 b -1/4) c)) (sqrt.f64 (fma.f64 a (*.f64 b -1/4) c)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (pow.f64 (*.f64 a b) 3) -1/64 (pow.f64 c 3)) (/.f64 1 (fma.f64 c c (*.f64 (*.f64 a (*.f64 b -1/4)) (-.f64 (*.f64 a (*.f64 b -1/4)) c)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 c c) (*.f64 1/16 (pow.f64 (*.f64 a b) 2))) (/.f64 1 (+.f64 c (*.f64 1/4 (*.f64 a b)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 c c (*.f64 (*.f64 a (*.f64 b -1/4)) (-.f64 (*.f64 a (*.f64 b -1/4)) c))) (fma.f64 (pow.f64 (*.f64 a b) 3) -1/64 (pow.f64 c 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 c (*.f64 1/4 (*.f64 a b))) (-.f64 (*.f64 c c) (*.f64 1/16 (pow.f64 (*.f64 a b) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 (pow.f64 (*.f64 a b) 3) -1/64 (pow.f64 c 3)) (fma.f64 c c (*.f64 (*.f64 a (*.f64 b -1/4)) (-.f64 (*.f64 a (*.f64 b -1/4)) c))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 (pow.f64 (*.f64 a b) 3) -1/64 (pow.f64 c 3)) (fma.f64 1/16 (pow.f64 (*.f64 a b) 2) (-.f64 (*.f64 c c) (*.f64 (*.f64 c a) (*.f64 b -1/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 c c) (*.f64 1/16 (pow.f64 (*.f64 a b) 2))) (+.f64 c (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (fma.f64 (pow.f64 (*.f64 a b) 3) -1/64 (pow.f64 c 3))) (neg.f64 (fma.f64 c c (*.f64 (*.f64 a (*.f64 b -1/4)) (-.f64 (*.f64 a (*.f64 b -1/4)) c)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (*.f64 c c) (*.f64 1/16 (pow.f64 (*.f64 a b) 2)))) (neg.f64 (+.f64 c (*.f64 1/4 (*.f64 a b)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 1/16 (pow.f64 (*.f64 a b) 2)) (*.f64 c c)) (-.f64 (*.f64 a (*.f64 b -1/4)) c))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 a (*.f64 b -1/4) c) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 a (*.f64 b -1/4) c) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 a (*.f64 b -1/4) c) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 a (*.f64 b -1/4) c)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 a (*.f64 b -1/4) c)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 c c (*.f64 (*.f64 a (*.f64 b -1/4)) (-.f64 (*.f64 a (*.f64 b -1/4)) c))) (fma.f64 (pow.f64 (*.f64 a b) 3) -1/64 (pow.f64 c 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (+.f64 c (*.f64 1/4 (*.f64 a b))) (-.f64 (*.f64 c c) (*.f64 1/16 (pow.f64 (*.f64 a b) 2)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 a (*.f64 b -1/4) c) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 a (*.f64 b -1/4) c)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 a (*.f64 b -1/4) c))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 c)) (pow.f64 (pow.f64 (exp.f64 a) b) -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 c) (+.f64 1 (expm1.f64 (*.f64 a (*.f64 b -1/4))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 c)) (+.f64 1 (expm1.f64 (*.f64 a (*.f64 b -1/4))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 a (*.f64 b -1/4)))) (exp.f64 c)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (pow.f64 (exp.f64 a) b) -1/4) (+.f64 1 (expm1.f64 c))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 a (*.f64 b -1/4)))) (+.f64 1 (expm1.f64 c))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 a (*.f64 b -1/4) c) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 a (*.f64 b -1/4) c)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 a (*.f64 b -1/4) c)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 a (*.f64 b -1/4) c)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 a (*.f64 b -1/4) c)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 c 1 (*.f64 a (*.f64 b -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 a (*.f64 b -1/4) c)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 b (*.f64 a -1/4) c)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 a b) -1/4 c)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1/4 (*.f64 a b) c)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 a (*.f64 b -1/4)) 1 c)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 c (*.f64 a (*.f64 b -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 a (*.f64 b -1/4)) c)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 a b)) 2) (*.f64 (cbrt.f64 (*.f64 a b)) -1/4) c)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 c) (pow.f64 (cbrt.f64 c) 2) (*.f64 a (*.f64 b -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 c) 2) (cbrt.f64 c) (*.f64 a (*.f64 b -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 a) 2) (*.f64 (cbrt.f64 a) (*.f64 b -1/4)) c)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 a (*.f64 b -1/4))) (pow.f64 (cbrt.f64 (*.f64 a (*.f64 b -1/4))) 2) c)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 a (*.f64 b -1/4))) 2) (cbrt.f64 (*.f64 a (*.f64 b -1/4))) c)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 a b)) (*.f64 (sqrt.f64 (*.f64 a b)) -1/4) c)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 c) (sqrt.f64 c) (*.f64 a (*.f64 b -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 a) (*.f64 (sqrt.f64 a) (*.f64 b -1/4)) c)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 a (*.f64 b -1/4))) (sqrt.f64 (*.f64 a (*.f64 b -1/4))) c)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 b -1/4) a c)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -1/4 a) b c)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -1/4 (pow.f64 (cbrt.f64 (*.f64 a b)) 2)) (cbrt.f64 (*.f64 a b)) c)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -1/4 (sqrt.f64 (*.f64 a b))) (sqrt.f64 (*.f64 a b)) c)))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 a (*.f64 b -1/4) c) (*.f64 1/16 (*.f64 z t)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1/16 (*.f64 z t)) (fma.f64 a (*.f64 b -1/4) c))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (fma.f64 1/16 (*.f64 z t) (fma.f64 a (*.f64 b -1/4) c)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 1/16 (*.f64 z t)) 1) (fma.f64 a (*.f64 b -1/4) c))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1/16 (*.f64 z t) c) (*.f64 a (*.f64 b -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1/16 (*.f64 z t) (*.f64 a (*.f64 b -1/4))) c)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (fma.f64 1/16 (*.f64 z t) (fma.f64 a (*.f64 b -1/4) c)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (fma.f64 1/16 (*.f64 z t) (fma.f64 a (*.f64 b -1/4) c))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (fma.f64 1/16 (*.f64 z t) (fma.f64 a (*.f64 b -1/4) c))))) (log.f64 (sqrt.f64 (exp.f64 (fma.f64 1/16 (*.f64 z t) (fma.f64 a (*.f64 b -1/4) c))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 1/16 (*.f64 z t) (fma.f64 a (*.f64 b -1/4) c)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 1/16 (*.f64 z t) (fma.f64 a (*.f64 b -1/4) c)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 1/16 (*.f64 z t) (fma.f64 a (*.f64 b -1/4) c)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 1/16 (*.f64 z t) (fma.f64 a (*.f64 b -1/4) c))) (pow.f64 (cbrt.f64 (fma.f64 1/16 (*.f64 z t) (fma.f64 a (*.f64 b -1/4) c))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 1/16 (*.f64 z t) (fma.f64 a (*.f64 b -1/4) c))) 2) (cbrt.f64 (fma.f64 1/16 (*.f64 z t) (fma.f64 a (*.f64 b -1/4) c))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 1/16 (*.f64 z t) (fma.f64 a (*.f64 b -1/4) c))) (sqrt.f64 (fma.f64 1/16 (*.f64 z t) (fma.f64 a (*.f64 b -1/4) c))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 1/16 (*.f64 z t)) 3) (pow.f64 (fma.f64 a (*.f64 b -1/4) c) 3)) (+.f64 (pow.f64 (*.f64 1/16 (*.f64 z t)) 2) (-.f64 (pow.f64 (fma.f64 a (*.f64 b -1/4) c) 2) (*.f64 (*.f64 1/16 (*.f64 z t)) (fma.f64 a (*.f64 b -1/4) c)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 1/16 (*.f64 z t)) 2) (pow.f64 (fma.f64 a (*.f64 b -1/4) c) 2)) (-.f64 (*.f64 1/16 (*.f64 z t)) (fma.f64 a (*.f64 b -1/4) c)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 1/16 (*.f64 z t) (fma.f64 a (*.f64 b -1/4) c)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 1/16 (*.f64 z t) (fma.f64 a (*.f64 b -1/4) c)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 1/16 (*.f64 z t) (fma.f64 a (*.f64 b -1/4) c)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 1/16 (*.f64 z t) (fma.f64 a (*.f64 b -1/4) c))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 1/16 (*.f64 z t) (fma.f64 a (*.f64 b -1/4) c))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 1/16 (*.f64 z t) (fma.f64 a (*.f64 b -1/4) c)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 1/16 (*.f64 z t) (fma.f64 a (*.f64 b -1/4) c))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 1/16 (*.f64 z t) (fma.f64 a (*.f64 b -1/4) c)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 a (*.f64 b -1/4) c)) (exp.f64 (*.f64 1/16 (*.f64 z t)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 a (*.f64 b -1/4) c))) (exp.f64 (*.f64 1/16 (*.f64 z t)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 1/16 (*.f64 z t))) (+.f64 1 (expm1.f64 (fma.f64 a (*.f64 b -1/4) c)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 1/16 (*.f64 z t) (fma.f64 a (*.f64 b -1/4) c)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 1/16 (*.f64 z t) (fma.f64 a (*.f64 b -1/4) c))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 1/16 (*.f64 z t) (fma.f64 a (*.f64 b -1/4) c))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 1/16 (*.f64 z t) (fma.f64 a (*.f64 b -1/4) c))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 1/16 (*.f64 z t) (fma.f64 a (*.f64 b -1/4) c))) 1))))))

simplify28.0ms (0.3%)

Algorithm
egg-herbie
Rules
36×fma-def_binary64
10×*-commutative_binary64
associate-*r*_binary64
associate-*l*_binary64
+-commutative_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0161186
1301124
2581034
3921034
Stop Event
saturated
Counts
188 → 104
Calls
Call 1
Inputs
(*.f64 -1/4 (*.f64 a b))
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
c
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
c
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
c
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(*.f64 -1/4 (*.f64 a b))
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(*.f64 -1/4 (*.f64 a b))
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
c
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(*.f64 -1/4 (*.f64 a b))
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(*.f64 -1/4 (*.f64 a b))
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(*.f64 1/16 (*.f64 t z))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(*.f64 1/16 (*.f64 t z))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(*.f64 1/16 (*.f64 t z))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(*.f64 1/16 (*.f64 t z))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
c
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
c
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(*.f64 -1/4 (*.f64 a b))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(*.f64 -1/4 (*.f64 a b))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(*.f64 -1/4 (*.f64 a b))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(*.f64 -1/4 (*.f64 a b))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
Outputs
(*.f64 -1/4 (*.f64 a b))
(*.f64 (*.f64 -1/4 a) b)
(*.f64 b (*.f64 -1/4 a))
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(+.f64 (*.f64 (*.f64 -1/4 a) b) c)
(fma.f64 (*.f64 -1/4 a) b c)
(fma.f64 a (*.f64 -1/4 b) c)
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(+.f64 (*.f64 (*.f64 -1/4 a) b) c)
(fma.f64 (*.f64 -1/4 a) b c)
(fma.f64 a (*.f64 -1/4 b) c)
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(+.f64 (*.f64 (*.f64 -1/4 a) b) c)
(fma.f64 (*.f64 -1/4 a) b c)
(fma.f64 a (*.f64 -1/4 b) c)
c
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(+.f64 (*.f64 (*.f64 -1/4 a) b) c)
(fma.f64 (*.f64 -1/4 a) b c)
(fma.f64 a (*.f64 -1/4 b) c)
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(+.f64 (*.f64 (*.f64 -1/4 a) b) c)
(fma.f64 (*.f64 -1/4 a) b c)
(fma.f64 a (*.f64 -1/4 b) c)
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(+.f64 (*.f64 (*.f64 -1/4 a) b) c)
(fma.f64 (*.f64 -1/4 a) b c)
(fma.f64 a (*.f64 -1/4 b) c)
c
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(+.f64 (*.f64 (*.f64 -1/4 a) b) c)
(fma.f64 (*.f64 -1/4 a) b c)
(fma.f64 a (*.f64 -1/4 b) c)
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(+.f64 (*.f64 (*.f64 -1/4 a) b) c)
(fma.f64 (*.f64 -1/4 a) b c)
(fma.f64 a (*.f64 -1/4 b) c)
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(+.f64 (*.f64 (*.f64 -1/4 a) b) c)
(fma.f64 (*.f64 -1/4 a) b c)
(fma.f64 a (*.f64 -1/4 b) c)
c
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(+.f64 (*.f64 (*.f64 -1/4 a) b) c)
(fma.f64 (*.f64 -1/4 a) b c)
(fma.f64 a (*.f64 -1/4 b) c)
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(+.f64 (*.f64 (*.f64 -1/4 a) b) c)
(fma.f64 (*.f64 -1/4 a) b c)
(fma.f64 a (*.f64 -1/4 b) c)
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(+.f64 (*.f64 (*.f64 -1/4 a) b) c)
(fma.f64 (*.f64 -1/4 a) b c)
(fma.f64 a (*.f64 -1/4 b) c)
(*.f64 -1/4 (*.f64 a b))
(*.f64 (*.f64 -1/4 a) b)
(*.f64 b (*.f64 -1/4 a))
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(+.f64 (*.f64 (*.f64 -1/4 a) b) c)
(fma.f64 (*.f64 -1/4 a) b c)
(fma.f64 a (*.f64 -1/4 b) c)
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(+.f64 (*.f64 (*.f64 -1/4 a) b) c)
(fma.f64 (*.f64 -1/4 a) b c)
(fma.f64 a (*.f64 -1/4 b) c)
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(+.f64 (*.f64 (*.f64 -1/4 a) b) c)
(fma.f64 (*.f64 -1/4 a) b c)
(fma.f64 a (*.f64 -1/4 b) c)
(*.f64 -1/4 (*.f64 a b))
(*.f64 (*.f64 -1/4 a) b)
(*.f64 b (*.f64 -1/4 a))
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(+.f64 (*.f64 (*.f64 -1/4 a) b) c)
(fma.f64 (*.f64 -1/4 a) b c)
(fma.f64 a (*.f64 -1/4 b) c)
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(+.f64 (*.f64 (*.f64 -1/4 a) b) c)
(fma.f64 (*.f64 -1/4 a) b c)
(fma.f64 a (*.f64 -1/4 b) c)
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(+.f64 (*.f64 (*.f64 -1/4 a) b) c)
(fma.f64 (*.f64 -1/4 a) b c)
(fma.f64 a (*.f64 -1/4 b) c)
c
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(+.f64 (*.f64 (*.f64 -1/4 a) b) c)
(fma.f64 (*.f64 -1/4 a) b c)
(fma.f64 a (*.f64 -1/4 b) c)
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(+.f64 (*.f64 (*.f64 -1/4 a) b) c)
(fma.f64 (*.f64 -1/4 a) b c)
(fma.f64 a (*.f64 -1/4 b) c)
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(+.f64 (*.f64 (*.f64 -1/4 a) b) c)
(fma.f64 (*.f64 -1/4 a) b c)
(fma.f64 a (*.f64 -1/4 b) c)
(*.f64 -1/4 (*.f64 a b))
(*.f64 (*.f64 -1/4 a) b)
(*.f64 b (*.f64 -1/4 a))
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(+.f64 (*.f64 (*.f64 -1/4 a) b) c)
(fma.f64 (*.f64 -1/4 a) b c)
(fma.f64 a (*.f64 -1/4 b) c)
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(+.f64 (*.f64 (*.f64 -1/4 a) b) c)
(fma.f64 (*.f64 -1/4 a) b c)
(fma.f64 a (*.f64 -1/4 b) c)
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(+.f64 (*.f64 (*.f64 -1/4 a) b) c)
(fma.f64 (*.f64 -1/4 a) b c)
(fma.f64 a (*.f64 -1/4 b) c)
(*.f64 -1/4 (*.f64 a b))
(*.f64 (*.f64 -1/4 a) b)
(*.f64 b (*.f64 -1/4 a))
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(+.f64 (*.f64 (*.f64 -1/4 a) b) c)
(fma.f64 (*.f64 -1/4 a) b c)
(fma.f64 a (*.f64 -1/4 b) c)
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(+.f64 (*.f64 (*.f64 -1/4 a) b) c)
(fma.f64 (*.f64 -1/4 a) b c)
(fma.f64 a (*.f64 -1/4 b) c)
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(+.f64 (*.f64 (*.f64 -1/4 a) b) c)
(fma.f64 (*.f64 -1/4 a) b c)
(fma.f64 a (*.f64 -1/4 b) c)
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(+.f64 (*.f64 (*.f64 -1/4 a) b) c)
(fma.f64 (*.f64 -1/4 a) b c)
(fma.f64 a (*.f64 -1/4 b) c)
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 -1/4 a) b)))
(+.f64 (*.f64 b (*.f64 -1/4 a)) (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 -1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 -1/4 a) b)))
(+.f64 (*.f64 b (*.f64 -1/4 a)) (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 -1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 -1/4 a) b)))
(+.f64 (*.f64 b (*.f64 -1/4 a)) (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 -1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))
(*.f64 1/16 (*.f64 t z))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 -1/4 a) b)))
(+.f64 (*.f64 b (*.f64 -1/4 a)) (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 -1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 -1/4 a) b)))
(+.f64 (*.f64 b (*.f64 -1/4 a)) (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 -1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 -1/4 a) b)))
(+.f64 (*.f64 b (*.f64 -1/4 a)) (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 -1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))
(*.f64 1/16 (*.f64 t z))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 -1/4 a) b)))
(+.f64 (*.f64 b (*.f64 -1/4 a)) (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 -1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 -1/4 a) b)))
(+.f64 (*.f64 b (*.f64 -1/4 a)) (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 -1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 -1/4 a) b)))
(+.f64 (*.f64 b (*.f64 -1/4 a)) (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 -1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))
(+.f64 c (*.f64 -1/4 (*.f64 a b)))
(+.f64 (*.f64 (*.f64 -1/4 a) b) c)
(fma.f64 (*.f64 -1/4 a) b c)
(fma.f64 a (*.f64 -1/4 b) c)
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 -1/4 a) b)))
(+.f64 (*.f64 b (*.f64 -1/4 a)) (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 -1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 -1/4 a) b)))
(+.f64 (*.f64 b (*.f64 -1/4 a)) (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 -1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 -1/4 a) b)))
(+.f64 (*.f64 b (*.f64 -1/4 a)) (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 -1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))
(*.f64 1/16 (*.f64 t z))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 -1/4 a) b)))
(+.f64 (*.f64 b (*.f64 -1/4 a)) (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 -1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 -1/4 a) b)))
(+.f64 (*.f64 b (*.f64 -1/4 a)) (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 -1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 -1/4 a) b)))
(+.f64 (*.f64 b (*.f64 -1/4 a)) (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 -1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))
(*.f64 1/16 (*.f64 t z))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 -1/4 a) b)))
(+.f64 (*.f64 b (*.f64 -1/4 a)) (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 -1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 -1/4 a) b)))
(+.f64 (*.f64 b (*.f64 -1/4 a)) (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 -1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 -1/4 a) b)))
(+.f64 (*.f64 b (*.f64 -1/4 a)) (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 -1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))
(+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 -1/4 a) b))
(fma.f64 1/16 (*.f64 t z) (*.f64 b (*.f64 -1/4 a)))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 -1/4 a) b)))
(+.f64 (*.f64 b (*.f64 -1/4 a)) (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 -1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 -1/4 a) b)))
(+.f64 (*.f64 b (*.f64 -1/4 a)) (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 -1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 -1/4 a) b)))
(+.f64 (*.f64 b (*.f64 -1/4 a)) (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 -1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))
c
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 -1/4 a) b)))
(+.f64 (*.f64 b (*.f64 -1/4 a)) (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 -1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 -1/4 a) b)))
(+.f64 (*.f64 b (*.f64 -1/4 a)) (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 -1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 -1/4 a) b)))
(+.f64 (*.f64 b (*.f64 -1/4 a)) (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 -1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))
c
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 -1/4 a) b)))
(+.f64 (*.f64 b (*.f64 -1/4 a)) (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 -1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 -1/4 a) b)))
(+.f64 (*.f64 b (*.f64 -1/4 a)) (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 -1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 -1/4 a) b)))
(+.f64 (*.f64 b (*.f64 -1/4 a)) (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 -1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) c)
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 -1/4 a) b)))
(+.f64 (*.f64 b (*.f64 -1/4 a)) (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 -1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 -1/4 a) b)))
(+.f64 (*.f64 b (*.f64 -1/4 a)) (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 -1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 -1/4 a) b)))
(+.f64 (*.f64 b (*.f64 -1/4 a)) (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 -1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))
(*.f64 -1/4 (*.f64 a b))
(*.f64 (*.f64 -1/4 a) b)
(*.f64 b (*.f64 -1/4 a))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 -1/4 a) b)))
(+.f64 (*.f64 b (*.f64 -1/4 a)) (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 -1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 -1/4 a) b)))
(+.f64 (*.f64 b (*.f64 -1/4 a)) (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 -1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 -1/4 a) b)))
(+.f64 (*.f64 b (*.f64 -1/4 a)) (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 -1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))
(*.f64 -1/4 (*.f64 a b))
(*.f64 (*.f64 -1/4 a) b)
(*.f64 b (*.f64 -1/4 a))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 -1/4 a) b)))
(+.f64 (*.f64 b (*.f64 -1/4 a)) (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 -1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 -1/4 a) b)))
(+.f64 (*.f64 b (*.f64 -1/4 a)) (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 -1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 -1/4 a) b)))
(+.f64 (*.f64 b (*.f64 -1/4 a)) (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 -1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) c)
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 -1/4 a) b)))
(+.f64 (*.f64 b (*.f64 -1/4 a)) (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 -1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 -1/4 a) b)))
(+.f64 (*.f64 b (*.f64 -1/4 a)) (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 -1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 -1/4 a) b)))
(+.f64 (*.f64 b (*.f64 -1/4 a)) (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 -1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))
(*.f64 -1/4 (*.f64 a b))
(*.f64 (*.f64 -1/4 a) b)
(*.f64 b (*.f64 -1/4 a))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 -1/4 a) b)))
(+.f64 (*.f64 b (*.f64 -1/4 a)) (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 -1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 -1/4 a) b)))
(+.f64 (*.f64 b (*.f64 -1/4 a)) (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 -1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 -1/4 a) b)))
(+.f64 (*.f64 b (*.f64 -1/4 a)) (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 -1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))
(*.f64 -1/4 (*.f64 a b))
(*.f64 (*.f64 -1/4 a) b)
(*.f64 b (*.f64 -1/4 a))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 -1/4 a) b)))
(+.f64 (*.f64 b (*.f64 -1/4 a)) (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 -1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 -1/4 a) b)))
(+.f64 (*.f64 b (*.f64 -1/4 a)) (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 -1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))
(+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))))
(+.f64 c (fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 -1/4 a) b)))
(+.f64 (*.f64 b (*.f64 -1/4 a)) (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 -1/4 (*.f64 a b) (fma.f64 1/16 (*.f64 t z) c))

localize7.0ms (0.1%)

Compiler

Compiled 18 to 13 computations (27.8% saved)

localize9.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (*.f64 1/16 (*.f64 t z)) c)
Compiler

Compiled 26 to 14 computations (46.2% saved)

series2.0ms (0%)

Counts
1 → 36
Calls

9 calls:

TimeVariablePointExpression
0.0ms
t
@0
(+.f64 (*.f64 1/16 (*.f64 t z)) c)
0.0ms
c
@-inf
(+.f64 (*.f64 1/16 (*.f64 t z)) c)
0.0ms
t
@-inf
(+.f64 (*.f64 1/16 (*.f64 t z)) c)
0.0ms
t
@inf
(+.f64 (*.f64 1/16 (*.f64 t z)) c)
0.0ms
c
@inf
(+.f64 (*.f64 1/16 (*.f64 t z)) c)

rewrite64.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
895×pow1_binary64
833×add-log-exp_binary64
833×log1p-expm1-u_binary64
833×expm1-log1p-u_binary64
816×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
088
11738
222658
Stop Event
node limit
Counts
1 → 36
Calls
Call 1
Inputs
(+.f64 (*.f64 1/16 (*.f64 t z)) c)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (fma.f64 (*.f64 1/16 t) z c)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (*.f64 1/16 (*.f64 t z)) 2) (fma.f64 1/16 (*.f64 t z) (neg.f64 c))) (/.f64 (*.f64 c c) (fma.f64 1/16 (*.f64 t z) (neg.f64 c))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (*.f64 1/16 t) z c) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 (*.f64 1/16 t) z c))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 (*.f64 1/16 t) z c)) (pow.f64 (cbrt.f64 (fma.f64 (*.f64 1/16 t) z c)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 (*.f64 1/16 t) z c)) 2) (cbrt.f64 (fma.f64 (*.f64 1/16 t) z c)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 (*.f64 1/16 t) z c)) (sqrt.f64 (fma.f64 (*.f64 1/16 t) z c)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (*.f64 1/16 (*.f64 t z)) 3) (pow.f64 c 3)) (/.f64 1 (+.f64 (pow.f64 (*.f64 1/16 (*.f64 t z)) 2) (*.f64 c (-.f64 c (*.f64 1/16 (*.f64 t z)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (*.f64 1/16 (*.f64 t z)) 2) (*.f64 c c)) (/.f64 1 (fma.f64 1/16 (*.f64 t z) (neg.f64 c))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (pow.f64 (*.f64 1/16 (*.f64 t z)) 2) (*.f64 c (-.f64 c (*.f64 1/16 (*.f64 t z))))) (+.f64 (pow.f64 (*.f64 1/16 (*.f64 t z)) 3) (pow.f64 c 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 1/16 (*.f64 t z) (neg.f64 c)) (-.f64 (pow.f64 (*.f64 1/16 (*.f64 t z)) 2) (*.f64 c c))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 1/16 (*.f64 t z)) 3) (pow.f64 c 3)) (+.f64 (pow.f64 (*.f64 1/16 (*.f64 t z)) 2) (*.f64 c (-.f64 c (*.f64 1/16 (*.f64 t z))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 1/16 (*.f64 t z)) 3) (pow.f64 c 3)) (+.f64 (*.f64 c c) (-.f64 (pow.f64 (*.f64 1/16 (*.f64 t z)) 2) (*.f64 1/16 (*.f64 (*.f64 t z) c)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 1/16 (*.f64 t z)) 2) (*.f64 c c)) (fma.f64 1/16 (*.f64 t z) (neg.f64 c)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 1/16 (*.f64 t z)) 3) (pow.f64 c 3))) (neg.f64 (+.f64 (pow.f64 (*.f64 1/16 (*.f64 t z)) 2) (*.f64 c (-.f64 c (*.f64 1/16 (*.f64 t z)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 1/16 (*.f64 t z)) 2) (*.f64 c c))) (neg.f64 (fma.f64 1/16 (*.f64 t z) (neg.f64 c))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 c c) (pow.f64 (*.f64 1/16 (*.f64 t z)) 2)) (-.f64 c (*.f64 1/16 (*.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 (*.f64 1/16 t) z c) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (*.f64 1/16 t) z c) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 (*.f64 1/16 t) z c)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 (*.f64 1/16 t) z c)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 (*.f64 1/16 t) z c) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 (*.f64 1/16 t) z c)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 (*.f64 1/16 t) z c) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 (*.f64 1/16 t) z c)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 (*.f64 1/16 t) z c)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 (*.f64 1/16 t) z c)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1/16 (*.f64 t z) c)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 t z) 1/16 c)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 1/16 (*.f64 t z)) c)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 c (*.f64 1/16 (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 1/16 (*.f64 t z))) 2) (cbrt.f64 (*.f64 1/16 (*.f64 t z))) c)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 c) 2) (cbrt.f64 c) (*.f64 1/16 (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 1/16 (*.f64 t z))) (sqrt.f64 (*.f64 1/16 (*.f64 t z))) c)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 c) (sqrt.f64 c) (*.f64 1/16 (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 1/16 t) z c)))))

simplify13.0ms (0.1%)

Algorithm
egg-herbie
Rules
fma-def_binary64
*-commutative_binary64
associate-*r*_binary64
associate-*l*_binary64
+-commutative_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
08309
113255
223255
329255
Stop Event
saturated
Counts
72 → 40
Calls
Call 1
Inputs
c
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(*.f64 1/16 (*.f64 t z))
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(*.f64 1/16 (*.f64 t z))
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(+.f64 c (*.f64 1/16 (*.f64 t z)))
c
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(*.f64 1/16 (*.f64 t z))
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(*.f64 1/16 (*.f64 t z))
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(*.f64 1/16 (*.f64 t z))
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(+.f64 c (*.f64 1/16 (*.f64 t z)))
c
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(+.f64 c (*.f64 1/16 (*.f64 t z)))
c
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(+.f64 c (*.f64 1/16 (*.f64 t z)))
Outputs
c
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) c)
(fma.f64 t (*.f64 1/16 z) c)
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) c)
(fma.f64 t (*.f64 1/16 z) c)
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) c)
(fma.f64 t (*.f64 1/16 z) c)
(*.f64 1/16 (*.f64 t z))
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) c)
(fma.f64 t (*.f64 1/16 z) c)
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) c)
(fma.f64 t (*.f64 1/16 z) c)
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) c)
(fma.f64 t (*.f64 1/16 z) c)
(*.f64 1/16 (*.f64 t z))
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) c)
(fma.f64 t (*.f64 1/16 z) c)
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) c)
(fma.f64 t (*.f64 1/16 z) c)
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) c)
(fma.f64 t (*.f64 1/16 z) c)
c
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) c)
(fma.f64 t (*.f64 1/16 z) c)
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) c)
(fma.f64 t (*.f64 1/16 z) c)
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) c)
(fma.f64 t (*.f64 1/16 z) c)
(*.f64 1/16 (*.f64 t z))
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) c)
(fma.f64 t (*.f64 1/16 z) c)
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) c)
(fma.f64 t (*.f64 1/16 z) c)
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) c)
(fma.f64 t (*.f64 1/16 z) c)
(*.f64 1/16 (*.f64 t z))
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) c)
(fma.f64 t (*.f64 1/16 z) c)
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) c)
(fma.f64 t (*.f64 1/16 z) c)
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) c)
(fma.f64 t (*.f64 1/16 z) c)
(*.f64 1/16 (*.f64 t z))
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) c)
(fma.f64 t (*.f64 1/16 z) c)
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) c)
(fma.f64 t (*.f64 1/16 z) c)
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) c)
(fma.f64 t (*.f64 1/16 z) c)
c
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) c)
(fma.f64 t (*.f64 1/16 z) c)
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) c)
(fma.f64 t (*.f64 1/16 z) c)
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) c)
(fma.f64 t (*.f64 1/16 z) c)
c
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) c)
(fma.f64 t (*.f64 1/16 z) c)
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) c)
(fma.f64 t (*.f64 1/16 z) c)
(+.f64 c (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t z) c)
(fma.f64 t (*.f64 1/16 z) c)

localize13.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.0b
(-.f64 (*.f64 y x) (*.f64 1/4 (*.f64 a b)))
Compiler

Compiled 32 to 15 computations (53.1% saved)

series4.0ms (0%)

Counts
1 → 48
Calls

12 calls:

TimeVariablePointExpression
0.0ms
y
@0
(-.f64 (*.f64 y x) (*.f64 1/4 (*.f64 a b)))
0.0ms
y
@inf
(-.f64 (*.f64 y x) (*.f64 1/4 (*.f64 a b)))
0.0ms
y
@-inf
(-.f64 (*.f64 y x) (*.f64 1/4 (*.f64 a b)))
0.0ms
a
@0
(-.f64 (*.f64 y x) (*.f64 1/4 (*.f64 a b)))
0.0ms
a
@-inf
(-.f64 (*.f64 y x) (*.f64 1/4 (*.f64 a b)))

rewrite83.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
573×log-prod_binary64
416×fma-def_binary64
360×pow-prod-down_binary64
288×pow2_binary64
200×pow1/3_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01013
122411
2293411
Stop Event
node limit
Counts
1 → 188
Calls
Call 1
Inputs
(-.f64 (*.f64 y x) (*.f64 1/4 (*.f64 a b)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y x) (*.f64 (*.f64 -1/4 a) b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y x) (*.f64 (*.f64 (*.f64 -1/4 a) b) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y x) (fma.f64 (*.f64 a b) -1/4 (fma.f64 (*.f64 a b) -1/4 (*.f64 (*.f64 1/4 b) a))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 y x (*.f64 (*.f64 -1/4 a) b)) (fma.f64 (*.f64 a b) -1/4 (*.f64 (*.f64 1/4 b) a)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 y x (*.f64 (*.f64 -1/4 a) b)) (fma.f64 (*.f64 (*.f64 -1/4 a) b) 1 (*.f64 (*.f64 1/4 b) a)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 y x (*.f64 (*.f64 -1/4 a) b)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (*.f64 1/4 b) a))) (pow.f64 (cbrt.f64 (*.f64 (*.f64 1/4 b) a)) 2) (*.f64 (*.f64 1/4 b) a)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 y x (*.f64 (*.f64 -1/4 a) b)) (fma.f64 (neg.f64 b) (*.f64 1/4 a) (*.f64 (*.f64 1/4 b) a)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 y x (*.f64 (*.f64 -1/4 a) b)) (*.f64 (fma.f64 (*.f64 a b) -1/4 (*.f64 (*.f64 1/4 b) a)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 y x (*.f64 (*.f64 -1/4 a) b)) (+.f64 (fma.f64 (*.f64 a b) -1/4 (*.f64 (*.f64 1/4 b) a)) (fma.f64 (*.f64 a b) -1/4 (*.f64 (*.f64 1/4 b) a))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 a b) -1/4 (*.f64 (*.f64 1/4 b) a)) (fma.f64 y x (*.f64 (*.f64 -1/4 a) b)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 -1/4 a) b) (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (fma.f64 y x (*.f64 (*.f64 -1/4 a) b)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (fma.f64 y x (*.f64 (*.f64 -1/4 a) b)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (fma.f64 y x (*.f64 (*.f64 -1/4 a) b))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (fma.f64 y x (*.f64 (*.f64 -1/4 a) b))))) (log.f64 (sqrt.f64 (exp.f64 (fma.f64 y x (*.f64 (*.f64 -1/4 a) b))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 y x (*.f64 (*.f64 -1/4 a) b)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 y x (*.f64 (*.f64 -1/4 a) b)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 y x (*.f64 (*.f64 -1/4 a) b))) (pow.f64 (cbrt.f64 (fma.f64 y x (*.f64 (*.f64 -1/4 a) b))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 y x (*.f64 (*.f64 -1/4 a) b))) 2) (cbrt.f64 (fma.f64 y x (*.f64 (*.f64 -1/4 a) b))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 y x (*.f64 (*.f64 -1/4 a) b))) (sqrt.f64 (fma.f64 y x (*.f64 (*.f64 -1/4 a) b))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 (*.f64 (*.f64 1/4 b) a) 3)) (/.f64 1 (fma.f64 (*.f64 (*.f64 1/4 b) a) (fma.f64 y x (*.f64 (*.f64 1/4 b) a)) (pow.f64 (*.f64 y x) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 (*.f64 1/4 b) a) 2)) (/.f64 1 (fma.f64 y x (*.f64 (*.f64 1/4 b) a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 (*.f64 y x)) (*.f64 (sqrt.f64 (*.f64 a b)) 1/2)) (-.f64 (sqrt.f64 (*.f64 y x)) (*.f64 (sqrt.f64 (*.f64 a b)) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (*.f64 (*.f64 1/4 b) a) (fma.f64 y x (*.f64 (*.f64 1/4 b) a)) (pow.f64 (*.f64 y x) 2)) (-.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 (*.f64 (*.f64 1/4 b) a) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 y x (*.f64 (*.f64 1/4 b) a)) (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 (*.f64 1/4 b) a) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 (*.f64 (*.f64 1/4 b) a) 3)) (fma.f64 (*.f64 (*.f64 1/4 b) a) (fma.f64 y x (*.f64 (*.f64 1/4 b) a)) (pow.f64 (*.f64 y x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 (*.f64 1/4 b) a) 2)) (fma.f64 y x (*.f64 (*.f64 1/4 b) a)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 (*.f64 (*.f64 1/4 b) a) 3))) (neg.f64 (fma.f64 (*.f64 (*.f64 1/4 b) a) (fma.f64 y x (*.f64 (*.f64 1/4 b) a)) (pow.f64 (*.f64 y x) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 (*.f64 1/4 b) a) 2))) (neg.f64 (fma.f64 y x (*.f64 (*.f64 1/4 b) a))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 (*.f64 (*.f64 -1/4 a) b) 3)) (+.f64 (pow.f64 (*.f64 y x) 2) (-.f64 (pow.f64 (*.f64 (*.f64 -1/4 a) b) 2) (*.f64 (*.f64 y x) (*.f64 (*.f64 -1/4 a) b)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (fma.f64 y x (*.f64 (*.f64 -1/4 a) b)) 3) (pow.f64 (fma.f64 (*.f64 a b) -1/4 (*.f64 (*.f64 1/4 b) a)) 3)) (+.f64 (pow.f64 (fma.f64 y x (*.f64 (*.f64 -1/4 a) b)) 2) (-.f64 (pow.f64 (fma.f64 (*.f64 a b) -1/4 (*.f64 (*.f64 1/4 b) a)) 2) (*.f64 (fma.f64 y x (*.f64 (*.f64 -1/4 a) b)) (fma.f64 (*.f64 a b) -1/4 (*.f64 (*.f64 1/4 b) a))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 (*.f64 -1/4 a) b) 2)) (-.f64 (*.f64 y x) (*.f64 (*.f64 -1/4 a) b)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (fma.f64 y x (*.f64 (*.f64 -1/4 a) b)) 2) (pow.f64 (fma.f64 (*.f64 a b) -1/4 (*.f64 (*.f64 1/4 b) a)) 2)) (-.f64 (fma.f64 y x (*.f64 (*.f64 -1/4 a) b)) (fma.f64 (*.f64 a b) -1/4 (*.f64 (*.f64 1/4 b) a))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 y x (*.f64 (*.f64 -1/4 a) b)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 y x (*.f64 (*.f64 -1/4 a) b)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 y x (*.f64 (*.f64 -1/4 a) b)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 y x (*.f64 (*.f64 -1/4 a) b))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 y x (*.f64 (*.f64 -1/4 a) b))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 (*.f64 (*.f64 1/4 b) a) (fma.f64 y x (*.f64 (*.f64 1/4 b) a)) (pow.f64 (*.f64 y x) 2)) (-.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 (*.f64 (*.f64 1/4 b) a) 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 y x (*.f64 (*.f64 1/4 b) a)) (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 (*.f64 1/4 b) a) 2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 y x (*.f64 (*.f64 -1/4 a) b)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 y x (*.f64 (*.f64 -1/4 a) b))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 y x (*.f64 (*.f64 -1/4 a) b)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (*.f64 y x))) (pow.f64 (exp.f64 1/4) (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (exp.f64 (*.f64 y x)) (+.f64 1 (expm1.f64 (*.f64 (*.f64 1/4 b) a)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (*.f64 y x))) (+.f64 1 (expm1.f64 (*.f64 (*.f64 1/4 b) a)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 y x))) (pow.f64 (pow.f64 (exp.f64 a) b) -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 y x (*.f64 (*.f64 -1/4 a) b)))) (exp.f64 (fma.f64 (*.f64 a b) -1/4 (*.f64 (*.f64 1/4 b) a)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 (*.f64 a b) -1/4 (*.f64 (*.f64 1/4 b) a))) (exp.f64 (fma.f64 y x (*.f64 (*.f64 -1/4 a) b)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 (*.f64 a b) -1/4 (*.f64 (*.f64 1/4 b) a))) (+.f64 1 (expm1.f64 (fma.f64 y x (*.f64 (*.f64 -1/4 a) b))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (pow.f64 (exp.f64 a) b) -1/4) (+.f64 1 (expm1.f64 (*.f64 y x)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 y x (*.f64 (*.f64 -1/4 a) b)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 y x (*.f64 (*.f64 -1/4 a) b))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 y x (*.f64 (*.f64 -1/4 a) b))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 y x (*.f64 (*.f64 -1/4 a) b))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 y x (*.f64 (*.f64 -1/4 a) b))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (fma.f64 y x (*.f64 (*.f64 -1/4 a) b)))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (fma.f64 y x (*.f64 (*.f64 -1/4 a) b)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (fma.f64 y x (*.f64 (*.f64 -1/4 a) b)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (fma.f64 y x (*.f64 (*.f64 -1/4 a) b))) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y x (*.f64 (*.f64 -1/4 a) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y x (*.f64 (*.f64 (*.f64 -1/4 a) b) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y x (fma.f64 (*.f64 a b) -1/4 (fma.f64 (*.f64 a b) -1/4 (*.f64 (*.f64 1/4 b) a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y x (neg.f64 (-.f64 (*.f64 (*.f64 1/4 b) a) (fma.f64 (*.f64 a b) -1/4 (*.f64 (*.f64 1/4 b) a)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x y (*.f64 (*.f64 -1/4 a) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x y (*.f64 (*.f64 (*.f64 -1/4 a) b) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x y (fma.f64 (*.f64 a b) -1/4 (fma.f64 (*.f64 a b) -1/4 (*.f64 (*.f64 1/4 b) a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x y (neg.f64 (-.f64 (*.f64 (*.f64 1/4 b) a) (fma.f64 (*.f64 a b) -1/4 (*.f64 (*.f64 1/4 b) a)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y x) 1 (*.f64 (*.f64 -1/4 a) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y x) 1 (*.f64 (*.f64 (*.f64 -1/4 a) b) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y x) 1 (fma.f64 (*.f64 a b) -1/4 (fma.f64 (*.f64 a b) -1/4 (*.f64 (*.f64 1/4 b) a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y x) 1 (neg.f64 (-.f64 (*.f64 (*.f64 1/4 b) a) (fma.f64 (*.f64 a b) -1/4 (*.f64 (*.f64 1/4 b) a)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1/4 (*.f64 a (neg.f64 b)) (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 a b) -1/4 (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 y x (*.f64 (*.f64 -1/4 a) b)) 1 (fma.f64 (*.f64 a b) -1/4 (*.f64 (*.f64 1/4 b) a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 y x (*.f64 (*.f64 -1/4 a) b)) 1 (fma.f64 (*.f64 (*.f64 -1/4 a) b) 1 (*.f64 (*.f64 1/4 b) a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 y x (*.f64 (*.f64 -1/4 a) b)) 1 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (*.f64 1/4 b) a))) (pow.f64 (cbrt.f64 (*.f64 (*.f64 1/4 b) a)) 2) (*.f64 (*.f64 1/4 b) a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 y x (*.f64 (*.f64 -1/4 a) b)) 1 (fma.f64 (neg.f64 b) (*.f64 1/4 a) (*.f64 (*.f64 1/4 b) a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 y x (*.f64 (*.f64 -1/4 a) b)) 1 (*.f64 (fma.f64 (*.f64 a b) -1/4 (*.f64 (*.f64 1/4 b) a)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 y x (*.f64 (*.f64 -1/4 a) b)) 1 (+.f64 (fma.f64 (*.f64 a b) -1/4 (*.f64 (*.f64 1/4 b) a)) (fma.f64 (*.f64 a b) -1/4 (*.f64 (*.f64 1/4 b) a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 y x) (*.f64 (*.f64 -1/4 a) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 y x) (*.f64 (*.f64 (*.f64 -1/4 a) b) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 y x) (fma.f64 (*.f64 a b) -1/4 (fma.f64 (*.f64 a b) -1/4 (*.f64 (*.f64 1/4 b) a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 y x) (neg.f64 (-.f64 (*.f64 (*.f64 1/4 b) a) (fma.f64 (*.f64 a b) -1/4 (*.f64 (*.f64 1/4 b) a)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 y x (*.f64 (*.f64 -1/4 a) b)) (fma.f64 (*.f64 a b) -1/4 (*.f64 (*.f64 1/4 b) a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 y x (*.f64 (*.f64 -1/4 a) b)) (fma.f64 (*.f64 (*.f64 -1/4 a) b) 1 (*.f64 (*.f64 1/4 b) a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 y x (*.f64 (*.f64 -1/4 a) b)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (*.f64 1/4 b) a))) (pow.f64 (cbrt.f64 (*.f64 (*.f64 1/4 b) a)) 2) (*.f64 (*.f64 1/4 b) a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 y x (*.f64 (*.f64 -1/4 a) b)) (fma.f64 (neg.f64 b) (*.f64 1/4 a) (*.f64 (*.f64 1/4 b) a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 y x (*.f64 (*.f64 -1/4 a) b)) (*.f64 (fma.f64 (*.f64 a b) -1/4 (*.f64 (*.f64 1/4 b) a)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 y x (*.f64 (*.f64 -1/4 a) b)) (+.f64 (fma.f64 (*.f64 a b) -1/4 (*.f64 (*.f64 1/4 b) a)) (fma.f64 (*.f64 a b) -1/4 (*.f64 (*.f64 1/4 b) a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 (*.f64 a b) -1/4 (*.f64 (*.f64 1/4 b) a)) (fma.f64 y x (*.f64 (*.f64 -1/4 a) b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (*.f64 -1/4 a) b) (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 y y)) (*.f64 (cbrt.f64 y) x) (*.f64 (*.f64 -1/4 a) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 y y)) (*.f64 (cbrt.f64 y) x) (*.f64 (*.f64 (*.f64 -1/4 a) b) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 y y)) (*.f64 (cbrt.f64 y) x) (fma.f64 (*.f64 a b) -1/4 (fma.f64 (*.f64 a b) -1/4 (*.f64 (*.f64 1/4 b) a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 y y)) (*.f64 (cbrt.f64 y) x) (neg.f64 (-.f64 (*.f64 (*.f64 1/4 b) a) (fma.f64 (*.f64 a b) -1/4 (*.f64 (*.f64 1/4 b) a)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (*.f64 1/4 b) a)) 2) (neg.f64 (cbrt.f64 (*.f64 (*.f64 1/4 b) a))) (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (*.f64 (cbrt.f64 x) y) (*.f64 (*.f64 -1/4 a) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (*.f64 (cbrt.f64 x) y) (*.f64 (*.f64 (*.f64 -1/4 a) b) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (*.f64 (cbrt.f64 x) y) (fma.f64 (*.f64 a b) -1/4 (fma.f64 (*.f64 a b) -1/4 (*.f64 (*.f64 1/4 b) a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (*.f64 (cbrt.f64 x) y) (neg.f64 (-.f64 (*.f64 (*.f64 1/4 b) a) (fma.f64 (*.f64 a b) -1/4 (*.f64 (*.f64 1/4 b) a)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 y x (*.f64 (*.f64 -1/4 a) b))) (pow.f64 (cbrt.f64 (fma.f64 y x (*.f64 (*.f64 -1/4 a) b))) 2) (fma.f64 (*.f64 a b) -1/4 (*.f64 (*.f64 1/4 b) a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 y x (*.f64 (*.f64 -1/4 a) b))) (pow.f64 (cbrt.f64 (fma.f64 y x (*.f64 (*.f64 -1/4 a) b))) 2) (fma.f64 (*.f64 (*.f64 -1/4 a) b) 1 (*.f64 (*.f64 1/4 b) a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 y x (*.f64 (*.f64 -1/4 a) b))) (pow.f64 (cbrt.f64 (fma.f64 y x (*.f64 (*.f64 -1/4 a) b))) 2) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (*.f64 1/4 b) a))) (pow.f64 (cbrt.f64 (*.f64 (*.f64 1/4 b) a)) 2) (*.f64 (*.f64 1/4 b) a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 y x (*.f64 (*.f64 -1/4 a) b))) (pow.f64 (cbrt.f64 (fma.f64 y x (*.f64 (*.f64 -1/4 a) b))) 2) (fma.f64 (neg.f64 b) (*.f64 1/4 a) (*.f64 (*.f64 1/4 b) a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 y x (*.f64 (*.f64 -1/4 a) b))) (pow.f64 (cbrt.f64 (fma.f64 y x (*.f64 (*.f64 -1/4 a) b))) 2) (*.f64 (fma.f64 (*.f64 a b) -1/4 (*.f64 (*.f64 1/4 b) a)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 y x (*.f64 (*.f64 -1/4 a) b))) (pow.f64 (cbrt.f64 (fma.f64 y x (*.f64 (*.f64 -1/4 a) b))) 2) (+.f64 (fma.f64 (*.f64 a b) -1/4 (*.f64 (*.f64 1/4 b) a)) (fma.f64 (*.f64 a b) -1/4 (*.f64 (*.f64 1/4 b) a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 y x (*.f64 (*.f64 -1/4 a) b))) 2) (cbrt.f64 (fma.f64 y x (*.f64 (*.f64 -1/4 a) b))) (fma.f64 (*.f64 a b) -1/4 (*.f64 (*.f64 1/4 b) a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 y x (*.f64 (*.f64 -1/4 a) b))) 2) (cbrt.f64 (fma.f64 y x (*.f64 (*.f64 -1/4 a) b))) (fma.f64 (*.f64 (*.f64 -1/4 a) b) 1 (*.f64 (*.f64 1/4 b) a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 y x (*.f64 (*.f64 -1/4 a) b))) 2) (cbrt.f64 (fma.f64 y x (*.f64 (*.f64 -1/4 a) b))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (*.f64 1/4 b) a))) (pow.f64 (cbrt.f64 (*.f64 (*.f64 1/4 b) a)) 2) (*.f64 (*.f64 1/4 b) a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 y x (*.f64 (*.f64 -1/4 a) b))) 2) (cbrt.f64 (fma.f64 y x (*.f64 (*.f64 -1/4 a) b))) (fma.f64 (neg.f64 b) (*.f64 1/4 a) (*.f64 (*.f64 1/4 b) a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 y x (*.f64 (*.f64 -1/4 a) b))) 2) (cbrt.f64 (fma.f64 y x (*.f64 (*.f64 -1/4 a) b))) (*.f64 (fma.f64 (*.f64 a b) -1/4 (*.f64 (*.f64 1/4 b) a)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 y x (*.f64 (*.f64 -1/4 a) b))) 2) (cbrt.f64 (fma.f64 y x (*.f64 (*.f64 -1/4 a) b))) (+.f64 (fma.f64 (*.f64 a b) -1/4 (*.f64 (*.f64 1/4 b) a)) (fma.f64 (*.f64 a b) -1/4 (*.f64 (*.f64 1/4 b) a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 y x)) (pow.f64 (cbrt.f64 (*.f64 y x)) 2) (*.f64 (*.f64 -1/4 a) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 y x)) (pow.f64 (cbrt.f64 (*.f64 y x)) 2) (*.f64 (*.f64 (*.f64 -1/4 a) b) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 y x)) (pow.f64 (cbrt.f64 (*.f64 y x)) 2) (fma.f64 (*.f64 a b) -1/4 (fma.f64 (*.f64 a b) -1/4 (*.f64 (*.f64 1/4 b) a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 y x)) (pow.f64 (cbrt.f64 (*.f64 y x)) 2) (neg.f64 (-.f64 (*.f64 (*.f64 1/4 b) a) (fma.f64 (*.f64 a b) -1/4 (*.f64 (*.f64 1/4 b) a)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 y x)) 2) (cbrt.f64 (*.f64 y x)) (*.f64 (*.f64 -1/4 a) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 y x)) 2) (cbrt.f64 (*.f64 y x)) (*.f64 (*.f64 (*.f64 -1/4 a) b) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 y x)) 2) (cbrt.f64 (*.f64 y x)) (fma.f64 (*.f64 a b) -1/4 (fma.f64 (*.f64 a b) -1/4 (*.f64 (*.f64 1/4 b) a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 y x)) 2) (cbrt.f64 (*.f64 y x)) (neg.f64 (-.f64 (*.f64 (*.f64 1/4 b) a) (fma.f64 (*.f64 a b) -1/4 (*.f64 (*.f64 1/4 b) a)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 y) (*.f64 (sqrt.f64 y) x) (*.f64 (*.f64 -1/4 a) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 y) (*.f64 (sqrt.f64 y) x) (*.f64 (*.f64 (*.f64 -1/4 a) b) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 y) (*.f64 (sqrt.f64 y) x) (fma.f64 (*.f64 a b) -1/4 (fma.f64 (*.f64 a b) -1/4 (*.f64 (*.f64 1/4 b) a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 y) (*.f64 (sqrt.f64 y) x) (neg.f64 (-.f64 (*.f64 (*.f64 1/4 b) a) (fma.f64 (*.f64 a b) -1/4 (*.f64 (*.f64 1/4 b) a)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sqrt.f64 (*.f64 a b)) 1/2) (neg.f64 (*.f64 (sqrt.f64 (*.f64 a b)) 1/2)) (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) y) (*.f64 (*.f64 -1/4 a) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) y) (*.f64 (*.f64 (*.f64 -1/4 a) b) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) y) (fma.f64 (*.f64 a b) -1/4 (fma.f64 (*.f64 a b) -1/4 (*.f64 (*.f64 1/4 b) a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) y) (neg.f64 (-.f64 (*.f64 (*.f64 1/4 b) a) (fma.f64 (*.f64 a b) -1/4 (*.f64 (*.f64 1/4 b) a)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 y x (*.f64 (*.f64 -1/4 a) b))) (sqrt.f64 (fma.f64 y x (*.f64 (*.f64 -1/4 a) b))) (fma.f64 (*.f64 a b) -1/4 (*.f64 (*.f64 1/4 b) a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 y x (*.f64 (*.f64 -1/4 a) b))) (sqrt.f64 (fma.f64 y x (*.f64 (*.f64 -1/4 a) b))) (fma.f64 (*.f64 (*.f64 -1/4 a) b) 1 (*.f64 (*.f64 1/4 b) a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 y x (*.f64 (*.f64 -1/4 a) b))) (sqrt.f64 (fma.f64 y x (*.f64 (*.f64 -1/4 a) b))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (*.f64 1/4 b) a))) (pow.f64 (cbrt.f64 (*.f64 (*.f64 1/4 b) a)) 2) (*.f64 (*.f64 1/4 b) a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 y x (*.f64 (*.f64 -1/4 a) b))) (sqrt.f64 (fma.f64 y x (*.f64 (*.f64 -1/4 a) b))) (fma.f64 (neg.f64 b) (*.f64 1/4 a) (*.f64 (*.f64 1/4 b) a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 y x (*.f64 (*.f64 -1/4 a) b))) (sqrt.f64 (fma.f64 y x (*.f64 (*.f64 -1/4 a) b))) (*.f64 (fma.f64 (*.f64 a b) -1/4 (*.f64 (*.f64 1/4 b) a)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 y x (*.f64 (*.f64 -1/4 a) b))) (sqrt.f64 (fma.f64 y x (*.f64 (*.f64 -1/4 a) b))) (+.f64 (fma.f64 (*.f64 a b) -1/4 (*.f64 (*.f64 1/4 b) a)) (fma.f64 (*.f64 a b) -1/4 (*.f64 (*.f64 1/4 b) a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 y x)) (sqrt.f64 (*.f64 y x)) (*.f64 (*.f64 -1/4 a) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 y x)) (sqrt.f64 (*.f64 y x)) (*.f64 (*.f64 (*.f64 -1/4 a) b) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 y x)) (sqrt.f64 (*.f64 y x)) (fma.f64 (*.f64 a b) -1/4 (fma.f64 (*.f64 a b) -1/4 (*.f64 (*.f64 1/4 b) a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 y x)) (sqrt.f64 (*.f64 y x)) (neg.f64 (-.f64 (*.f64 (*.f64 1/4 b) a) (fma.f64 (*.f64 a b) -1/4 (*.f64 (*.f64 1/4 b) a)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 a (neg.f64 b)) 1/4 (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 (*.f64 (*.f64 1/4 b) a) 3)) (/.f64 1 (fma.f64 (*.f64 (*.f64 1/4 b) a) (fma.f64 y x (*.f64 (*.f64 1/4 b) a)) (pow.f64 (*.f64 y x) 2))) (fma.f64 (*.f64 a b) -1/4 (*.f64 (*.f64 1/4 b) a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 (*.f64 (*.f64 1/4 b) a) 3)) (/.f64 1 (fma.f64 (*.f64 (*.f64 1/4 b) a) (fma.f64 y x (*.f64 (*.f64 1/4 b) a)) (pow.f64 (*.f64 y x) 2))) (fma.f64 (*.f64 (*.f64 -1/4 a) b) 1 (*.f64 (*.f64 1/4 b) a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 (*.f64 (*.f64 1/4 b) a) 3)) (/.f64 1 (fma.f64 (*.f64 (*.f64 1/4 b) a) (fma.f64 y x (*.f64 (*.f64 1/4 b) a)) (pow.f64 (*.f64 y x) 2))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (*.f64 1/4 b) a))) (pow.f64 (cbrt.f64 (*.f64 (*.f64 1/4 b) a)) 2) (*.f64 (*.f64 1/4 b) a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 (*.f64 (*.f64 1/4 b) a) 3)) (/.f64 1 (fma.f64 (*.f64 (*.f64 1/4 b) a) (fma.f64 y x (*.f64 (*.f64 1/4 b) a)) (pow.f64 (*.f64 y x) 2))) (fma.f64 (neg.f64 b) (*.f64 1/4 a) (*.f64 (*.f64 1/4 b) a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 (*.f64 (*.f64 1/4 b) a) 3)) (/.f64 1 (fma.f64 (*.f64 (*.f64 1/4 b) a) (fma.f64 y x (*.f64 (*.f64 1/4 b) a)) (pow.f64 (*.f64 y x) 2))) (*.f64 (fma.f64 (*.f64 a b) -1/4 (*.f64 (*.f64 1/4 b) a)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 (*.f64 (*.f64 1/4 b) a) 3)) (/.f64 1 (fma.f64 (*.f64 (*.f64 1/4 b) a) (fma.f64 y x (*.f64 (*.f64 1/4 b) a)) (pow.f64 (*.f64 y x) 2))) (+.f64 (fma.f64 (*.f64 a b) -1/4 (*.f64 (*.f64 1/4 b) a)) (fma.f64 (*.f64 a b) -1/4 (*.f64 (*.f64 1/4 b) a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 (*.f64 1/4 b) a) 2)) (/.f64 1 (fma.f64 y x (*.f64 (*.f64 1/4 b) a))) (fma.f64 (*.f64 a b) -1/4 (*.f64 (*.f64 1/4 b) a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 (*.f64 1/4 b) a) 2)) (/.f64 1 (fma.f64 y x (*.f64 (*.f64 1/4 b) a))) (fma.f64 (*.f64 (*.f64 -1/4 a) b) 1 (*.f64 (*.f64 1/4 b) a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 (*.f64 1/4 b) a) 2)) (/.f64 1 (fma.f64 y x (*.f64 (*.f64 1/4 b) a))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (*.f64 1/4 b) a))) (pow.f64 (cbrt.f64 (*.f64 (*.f64 1/4 b) a)) 2) (*.f64 (*.f64 1/4 b) a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 (*.f64 1/4 b) a) 2)) (/.f64 1 (fma.f64 y x (*.f64 (*.f64 1/4 b) a))) (fma.f64 (neg.f64 b) (*.f64 1/4 a) (*.f64 (*.f64 1/4 b) a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 (*.f64 1/4 b) a) 2)) (/.f64 1 (fma.f64 y x (*.f64 (*.f64 1/4 b) a))) (*.f64 (fma.f64 (*.f64 a b) -1/4 (*.f64 (*.f64 1/4 b) a)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 (*.f64 1/4 b) a) 2)) (/.f64 1 (fma.f64 y x (*.f64 (*.f64 1/4 b) a))) (+.f64 (fma.f64 (*.f64 a b) -1/4 (*.f64 (*.f64 1/4 b) a)) (fma.f64 (*.f64 a b) -1/4 (*.f64 (*.f64 1/4 b) a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1/4 (*.f64 a b) (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 1/4 a) (neg.f64 b) (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 (*.f64 a b) -1/4 (*.f64 (*.f64 1/4 b) a))) 2) (cbrt.f64 (fma.f64 (*.f64 a b) -1/4 (*.f64 (*.f64 1/4 b) a))) (fma.f64 y x (*.f64 (*.f64 -1/4 a) b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (*.f64 -1/4 a) b)) 2) (cbrt.f64 (*.f64 (*.f64 -1/4 a) b)) (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 (*.f64 a b) -1/4 (*.f64 (*.f64 1/4 b) a))) (sqrt.f64 (fma.f64 (*.f64 a b) -1/4 (*.f64 (*.f64 1/4 b) a))) (fma.f64 y x (*.f64 (*.f64 -1/4 a) b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (*.f64 -1/4 a) b)) (sqrt.f64 (*.f64 (*.f64 -1/4 a) b)) (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (*.f64 (sqrt.f64 (*.f64 a b)) 1/2)) (*.f64 (sqrt.f64 (*.f64 a b)) 1/2) (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 (*.f64 (*.f64 1/4 b) a) (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (*.f64 y x)) (*.f64 (sqrt.f64 (*.f64 a b)) 1/2)) (-.f64 (sqrt.f64 (*.f64 y x)) (*.f64 (sqrt.f64 (*.f64 a b)) 1/2)) (fma.f64 (*.f64 a b) -1/4 (*.f64 (*.f64 1/4 b) a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (*.f64 y x)) (*.f64 (sqrt.f64 (*.f64 a b)) 1/2)) (-.f64 (sqrt.f64 (*.f64 y x)) (*.f64 (sqrt.f64 (*.f64 a b)) 1/2)) (fma.f64 (*.f64 (*.f64 -1/4 a) b) 1 (*.f64 (*.f64 1/4 b) a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (*.f64 y x)) (*.f64 (sqrt.f64 (*.f64 a b)) 1/2)) (-.f64 (sqrt.f64 (*.f64 y x)) (*.f64 (sqrt.f64 (*.f64 a b)) 1/2)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (*.f64 1/4 b) a))) (pow.f64 (cbrt.f64 (*.f64 (*.f64 1/4 b) a)) 2) (*.f64 (*.f64 1/4 b) a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (*.f64 y x)) (*.f64 (sqrt.f64 (*.f64 a b)) 1/2)) (-.f64 (sqrt.f64 (*.f64 y x)) (*.f64 (sqrt.f64 (*.f64 a b)) 1/2)) (fma.f64 (neg.f64 b) (*.f64 1/4 a) (*.f64 (*.f64 1/4 b) a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (*.f64 y x)) (*.f64 (sqrt.f64 (*.f64 a b)) 1/2)) (-.f64 (sqrt.f64 (*.f64 y x)) (*.f64 (sqrt.f64 (*.f64 a b)) 1/2)) (*.f64 (fma.f64 (*.f64 a b) -1/4 (*.f64 (*.f64 1/4 b) a)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (*.f64 y x)) (*.f64 (sqrt.f64 (*.f64 a b)) 1/2)) (-.f64 (sqrt.f64 (*.f64 y x)) (*.f64 (sqrt.f64 (*.f64 a b)) 1/2)) (+.f64 (fma.f64 (*.f64 a b) -1/4 (*.f64 (*.f64 1/4 b) a)) (fma.f64 (*.f64 a b) -1/4 (*.f64 (*.f64 1/4 b) a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (pow.f64 (cbrt.f64 (*.f64 (*.f64 1/4 b) a)) 2)) (cbrt.f64 (*.f64 (*.f64 1/4 b) a)) (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (*.f64 1/4 a)) b (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 x) (*.f64 (*.f64 -1/4 a) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 x) (*.f64 (*.f64 (*.f64 -1/4 a) b) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 x) (fma.f64 (*.f64 a b) -1/4 (fma.f64 (*.f64 a b) -1/4 (*.f64 (*.f64 1/4 b) a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 x) (neg.f64 (-.f64 (*.f64 (*.f64 1/4 b) a) (fma.f64 (*.f64 a b) -1/4 (*.f64 (*.f64 1/4 b) a)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y (sqrt.f64 x)) (sqrt.f64 x) (*.f64 (*.f64 -1/4 a) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y (sqrt.f64 x)) (sqrt.f64 x) (*.f64 (*.f64 (*.f64 -1/4 a) b) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y (sqrt.f64 x)) (sqrt.f64 x) (fma.f64 (*.f64 a b) -1/4 (fma.f64 (*.f64 a b) -1/4 (*.f64 (*.f64 1/4 b) a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y (sqrt.f64 x)) (sqrt.f64 x) (neg.f64 (-.f64 (*.f64 (*.f64 1/4 b) a) (fma.f64 (*.f64 a b) -1/4 (*.f64 (*.f64 1/4 b) a)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (cbrt.f64 (*.f64 y y))) (cbrt.f64 y) (*.f64 (*.f64 -1/4 a) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (cbrt.f64 (*.f64 y y))) (cbrt.f64 y) (*.f64 (*.f64 (*.f64 -1/4 a) b) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (cbrt.f64 (*.f64 y y))) (cbrt.f64 y) (fma.f64 (*.f64 a b) -1/4 (fma.f64 (*.f64 a b) -1/4 (*.f64 (*.f64 1/4 b) a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (cbrt.f64 (*.f64 y y))) (cbrt.f64 y) (neg.f64 (-.f64 (*.f64 (*.f64 1/4 b) a) (fma.f64 (*.f64 a b) -1/4 (*.f64 (*.f64 1/4 b) a)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (sqrt.f64 y)) (sqrt.f64 y) (*.f64 (*.f64 -1/4 a) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (sqrt.f64 y)) (sqrt.f64 y) (*.f64 (*.f64 (*.f64 -1/4 a) b) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (sqrt.f64 y)) (sqrt.f64 y) (fma.f64 (*.f64 a b) -1/4 (fma.f64 (*.f64 a b) -1/4 (*.f64 (*.f64 1/4 b) a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (sqrt.f64 y)) (sqrt.f64 y) (neg.f64 (-.f64 (*.f64 (*.f64 1/4 b) a) (fma.f64 (*.f64 a b) -1/4 (*.f64 (*.f64 1/4 b) a)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -1/4 a) b (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -1/4 b) a (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -1/4 (cbrt.f64 (pow.f64 (*.f64 a b) 2))) (cbrt.f64 (*.f64 a b)) (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -1/4 (sqrt.f64 (*.f64 a b))) (sqrt.f64 (*.f64 a b)) (*.f64 y x))))))

simplify20.0ms (0.2%)

Algorithm
egg-herbie
Rules
fma-def_binary64
*-commutative_binary64
associate-*r*_binary64
associate-*l*_binary64
+-commutative_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
010462
117462
228462
334462
Stop Event
saturated
Counts
236 → 192
Calls
Call 1
Inputs
(*.f64 -1/4 (*.f64 a b))
(+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b)))
(+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b)))
(+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b)))
(*.f64 y x)
(+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b)))
(+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b)))
(+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b)))
(*.f64 y x)
(+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b)))
(+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b)))
(+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b)))
(*.f64 -1/4 (*.f64 a b))
(+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b)))
(+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b)))
(+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b)))
(*.f64 y x)
(+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b)))
(+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b)))
(+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b)))
(*.f64 y x)
(+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b)))
(+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b)))
(+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b)))
(*.f64 y x)
(+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b)))
(+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b)))
(+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b)))
(*.f64 -1/4 (*.f64 a b))
(+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b)))
(+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b)))
(+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b)))
(*.f64 -1/4 (*.f64 a b))
(+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b)))
(+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b)))
(+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b)))
(*.f64 y x)
(+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b)))
(+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b)))
(+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b)))
(*.f64 -1/4 (*.f64 a b))
(+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b)))
(+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b)))
(+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b)))
(*.f64 -1/4 (*.f64 a b))
(+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b)))
(+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b)))
(+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b)))
Outputs
(*.f64 -1/4 (*.f64 a b))
(*.f64 b (*.f64 -1/4 a))
(+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 y x (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 y x (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 y x (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 y x (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 y x (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 y x (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 y x (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 y x (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 y x (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) (*.f64 y x))
(*.f64 -1/4 (*.f64 a b))
(*.f64 b (*.f64 -1/4 a))
(+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 y x (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 y x (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 y x (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 y x (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 y x (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 y x (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 y x (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 y x (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 y x (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 y x (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 y x (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 y x (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) (*.f64 y x))
(*.f64 -1/4 (*.f64 a b))
(*.f64 b (*.f64 -1/4 a))
(+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 y x (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 y x (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 y x (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) (*.f64 y x))
(*.f64 -1/4 (*.f64 a b))
(*.f64 b (*.f64 -1/4 a))
(+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 y x (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 y x (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 y x (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 y x (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 y x (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 y x (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) (*.f64 y x))
(*.f64 -1/4 (*.f64 a b))
(*.f64 b (*.f64 -1/4 a))
(+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 y x (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 y x (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 y x (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) (*.f64 y x))
(*.f64 -1/4 (*.f64 a b))
(*.f64 b (*.f64 -1/4 a))
(+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 y x (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 y x (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 y x (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) (*.f64 y x))

localize15.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.0b
(-.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 1/4 (*.f64 a b)))
Compiler

Compiled 40 to 20 computations (50% saved)

series5.0ms (0%)

Counts
1 → 48
Calls

12 calls:

TimeVariablePointExpression
1.0ms
b
@-inf
(-.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 1/4 (*.f64 a b)))
0.0ms
t
@0
(-.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 1/4 (*.f64 a b)))
0.0ms
t
@inf
(-.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 1/4 (*.f64 a b)))
0.0ms
t
@-inf
(-.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 1/4 (*.f64 a b)))
0.0ms
z
@inf
(-.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 1/4 (*.f64 a b)))

rewrite91.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
670×log-prod_binary64
456×fma-def_binary64
409×pow-prod-down_binary64
332×pow2_binary64
239×pow-unpow_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01216
126514
2339114
Stop Event
node limit
Counts
1 → 199
Calls
Call 1
Inputs
(-.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 1/4 (*.f64 a b)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 z (*.f64 1/16 t)) (*.f64 (*.f64 a b) -1/4))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 z (*.f64 1/16 t)) (*.f64 (*.f64 (*.f64 a b) -1/4) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 z (*.f64 1/16 t)) (fma.f64 (*.f64 a b) -1/4 (fma.f64 (*.f64 a b) -1/4 (*.f64 1/4 (*.f64 a b)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 a b) -1/4)) (fma.f64 (*.f64 a b) -1/4 (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 a b) -1/4)) (fma.f64 (*.f64 (*.f64 a b) -1/4) 1 (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 a b) -1/4)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 1/4 (*.f64 a b)))) (pow.f64 (cbrt.f64 (*.f64 1/4 (*.f64 a b))) 2) (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 a b) -1/4)) (fma.f64 (neg.f64 b) (*.f64 1/4 a) (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 a b) -1/4)) (*.f64 (fma.f64 (*.f64 a b) -1/4 (*.f64 1/4 (*.f64 a b))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 a b) -1/4)) (+.f64 (fma.f64 (*.f64 a b) -1/4 (*.f64 1/4 (*.f64 a b))) (fma.f64 (*.f64 a b) -1/4 (*.f64 1/4 (*.f64 a b)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 a b) -1/4 (*.f64 1/4 (*.f64 a b))) (fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 a b) -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 a b) -1/4) (*.f64 z (*.f64 1/16 t)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 a b) -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 a b) -1/4)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 a b) -1/4))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 a b) -1/4))))) (log.f64 (sqrt.f64 (exp.f64 (fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 a b) -1/4))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 a b) -1/4)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 a b) -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 a b) -1/4))) (pow.f64 (cbrt.f64 (fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 a b) -1/4))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 a b) -1/4))) 2) (cbrt.f64 (fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 a b) -1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 a b) -1/4))) (sqrt.f64 (fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 a b) -1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (*.f64 z (*.f64 1/16 t)) 3) (*.f64 (pow.f64 (*.f64 a b) 3) 1/64)) (/.f64 1 (fma.f64 (*.f64 1/4 (*.f64 a b)) (fma.f64 1/16 (*.f64 t z) (*.f64 1/4 (*.f64 a b))) (pow.f64 (*.f64 z (*.f64 1/16 t)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (*.f64 z (*.f64 1/16 t)) 2) (*.f64 1/16 (pow.f64 (*.f64 a b) 2))) (/.f64 1 (fma.f64 1/16 (*.f64 t z) (*.f64 1/4 (*.f64 a b)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 1/4 (sqrt.f64 (*.f64 t z)) (*.f64 (sqrt.f64 (*.f64 a b)) 1/2)) (-.f64 (*.f64 1/4 (sqrt.f64 (*.f64 t z))) (*.f64 (sqrt.f64 (*.f64 a b)) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (*.f64 1/4 (*.f64 a b)) (fma.f64 1/16 (*.f64 t z) (*.f64 1/4 (*.f64 a b))) (pow.f64 (*.f64 z (*.f64 1/16 t)) 2)) (-.f64 (pow.f64 (*.f64 z (*.f64 1/16 t)) 3) (*.f64 (pow.f64 (*.f64 a b) 3) 1/64))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 1/16 (*.f64 t z) (*.f64 1/4 (*.f64 a b))) (-.f64 (pow.f64 (*.f64 z (*.f64 1/16 t)) 2) (*.f64 1/16 (pow.f64 (*.f64 a b) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 z (*.f64 1/16 t)) 3) (*.f64 (pow.f64 (*.f64 a b) 3) 1/64)) (fma.f64 (*.f64 1/4 (*.f64 a b)) (fma.f64 1/16 (*.f64 t z) (*.f64 1/4 (*.f64 a b))) (pow.f64 (*.f64 z (*.f64 1/16 t)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 z (*.f64 1/16 t)) 2) (*.f64 1/16 (pow.f64 (*.f64 a b) 2))) (fma.f64 1/16 (*.f64 t z) (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 z (*.f64 1/16 t)) 3) (*.f64 (pow.f64 (*.f64 a b) 3) 1/64))) (neg.f64 (fma.f64 (*.f64 1/4 (*.f64 a b)) (fma.f64 1/16 (*.f64 t z) (*.f64 1/4 (*.f64 a b))) (pow.f64 (*.f64 z (*.f64 1/16 t)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 z (*.f64 1/16 t)) 2) (*.f64 1/16 (pow.f64 (*.f64 a b) 2)))) (neg.f64 (fma.f64 1/16 (*.f64 t z) (*.f64 1/4 (*.f64 a b)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 (pow.f64 (*.f64 t z) 3) 1/4096 (pow.f64 (*.f64 (*.f64 a b) -1/4) 3)) (fma.f64 (pow.f64 (*.f64 t z) 2) 1/256 (-.f64 (pow.f64 (*.f64 (*.f64 a b) -1/4) 2) (*.f64 (*.f64 z (*.f64 1/16 t)) (*.f64 (*.f64 a b) -1/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 a b) -1/4)) 3) (pow.f64 (fma.f64 (*.f64 a b) -1/4 (*.f64 1/4 (*.f64 a b))) 3)) (+.f64 (pow.f64 (fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 a b) -1/4)) 2) (-.f64 (pow.f64 (fma.f64 (*.f64 a b) -1/4 (*.f64 1/4 (*.f64 a b))) 2) (*.f64 (fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 a b) -1/4)) (fma.f64 (*.f64 a b) -1/4 (*.f64 1/4 (*.f64 a b)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 z (*.f64 1/16 t)) 2) (pow.f64 (*.f64 (*.f64 a b) -1/4) 2)) (-.f64 (*.f64 z (*.f64 1/16 t)) (*.f64 (*.f64 a b) -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 a b) -1/4)) 2) (pow.f64 (fma.f64 (*.f64 a b) -1/4 (*.f64 1/4 (*.f64 a b))) 2)) (-.f64 (fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 a b) -1/4)) (fma.f64 (*.f64 a b) -1/4 (*.f64 1/4 (*.f64 a b)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 a b) -1/4)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 a b) -1/4)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 a b) -1/4)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 a b) -1/4))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 a b) -1/4))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 (*.f64 1/4 (*.f64 a b)) (fma.f64 1/16 (*.f64 t z) (*.f64 1/4 (*.f64 a b))) (pow.f64 (*.f64 z (*.f64 1/16 t)) 2)) (-.f64 (pow.f64 (*.f64 z (*.f64 1/16 t)) 3) (*.f64 (pow.f64 (*.f64 a b) 3) 1/64))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 1/16 (*.f64 t z) (*.f64 1/4 (*.f64 a b))) (-.f64 (pow.f64 (*.f64 z (*.f64 1/16 t)) 2) (*.f64 1/16 (pow.f64 (*.f64 a b) 2)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 a b) -1/4)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 a b) -1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 a b) -1/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (*.f64 z (*.f64 1/16 t)))) (pow.f64 (exp.f64 a) (*.f64 b 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (pow.f64 (pow.f64 (exp.f64 t) z) 1/16) (+.f64 1 (expm1.f64 (*.f64 1/4 (*.f64 a b))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (*.f64 z (*.f64 1/16 t)))) (+.f64 1 (expm1.f64 (*.f64 1/4 (*.f64 a b))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 z (*.f64 1/16 t)))) (exp.f64 (*.f64 (*.f64 a b) -1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 z (*.f64 1/16 t)))) (pow.f64 (pow.f64 (exp.f64 a) b) -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 a b) -1/4)))) (exp.f64 (fma.f64 (*.f64 a b) -1/4 (*.f64 1/4 (*.f64 a b))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 (*.f64 a b) -1/4 (*.f64 1/4 (*.f64 a b)))) (exp.f64 (fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 a b) -1/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 (*.f64 a b) -1/4 (*.f64 1/4 (*.f64 a b)))) (+.f64 1 (expm1.f64 (fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 a b) -1/4))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 (*.f64 a b) -1/4)) (pow.f64 (pow.f64 (exp.f64 t) z) 1/16)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 (*.f64 a b) -1/4)) (+.f64 1 (expm1.f64 (*.f64 z (*.f64 1/16 t))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (pow.f64 (exp.f64 a) b) -1/4) (+.f64 1 (expm1.f64 (*.f64 z (*.f64 1/16 t))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 a b) -1/4)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 a b) -1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 a b) -1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 a b) -1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 a b) -1/4))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 a b) -1/4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1/16 (*.f64 t z) (*.f64 (*.f64 (*.f64 a b) -1/4) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1/16 (*.f64 t z) (fma.f64 (*.f64 a b) -1/4 (fma.f64 (*.f64 a b) -1/4 (*.f64 1/4 (*.f64 a b)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1/16 (*.f64 t z) (neg.f64 (-.f64 (*.f64 1/4 (*.f64 a b)) (fma.f64 (*.f64 a b) -1/4 (*.f64 1/4 (*.f64 a b))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 t (*.f64 z 1/16) (*.f64 (*.f64 a b) -1/4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 t (*.f64 z 1/16) (*.f64 (*.f64 (*.f64 a b) -1/4) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 t (*.f64 z 1/16) (fma.f64 (*.f64 a b) -1/4 (fma.f64 (*.f64 a b) -1/4 (*.f64 1/4 (*.f64 a b)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 t (*.f64 z 1/16) (neg.f64 (-.f64 (*.f64 1/4 (*.f64 a b)) (fma.f64 (*.f64 a b) -1/4 (*.f64 1/4 (*.f64 a b))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 a b) -1/4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 (*.f64 a b) -1/4) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 z (*.f64 1/16 t) (fma.f64 (*.f64 a b) -1/4 (fma.f64 (*.f64 a b) -1/4 (*.f64 1/4 (*.f64 a b)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 z (*.f64 1/16 t) (neg.f64 (-.f64 (*.f64 1/4 (*.f64 a b)) (fma.f64 (*.f64 a b) -1/4 (*.f64 1/4 (*.f64 a b))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 t z) 1/16 (*.f64 (*.f64 a b) -1/4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 t z) 1/16 (*.f64 (*.f64 (*.f64 a b) -1/4) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 t z) 1/16 (fma.f64 (*.f64 a b) -1/4 (fma.f64 (*.f64 a b) -1/4 (*.f64 1/4 (*.f64 a b)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 t z) 1/16 (neg.f64 (-.f64 (*.f64 1/4 (*.f64 a b)) (fma.f64 (*.f64 a b) -1/4 (*.f64 1/4 (*.f64 a b))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 z (*.f64 1/16 t)) 1 (*.f64 (*.f64 a b) -1/4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 z (*.f64 1/16 t)) 1 (*.f64 (*.f64 (*.f64 a b) -1/4) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 z (*.f64 1/16 t)) 1 (fma.f64 (*.f64 a b) -1/4 (fma.f64 (*.f64 a b) -1/4 (*.f64 1/4 (*.f64 a b)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 z (*.f64 1/16 t)) 1 (neg.f64 (-.f64 (*.f64 1/4 (*.f64 a b)) (fma.f64 (*.f64 a b) -1/4 (*.f64 1/4 (*.f64 a b))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1/4 (*.f64 a (neg.f64 b)) (*.f64 z (*.f64 1/16 t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 a b) -1/4 (*.f64 z (*.f64 1/16 t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 a b) -1/4)) 1 (fma.f64 (*.f64 a b) -1/4 (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 a b) -1/4)) 1 (fma.f64 (*.f64 (*.f64 a b) -1/4) 1 (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 a b) -1/4)) 1 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 1/4 (*.f64 a b)))) (pow.f64 (cbrt.f64 (*.f64 1/4 (*.f64 a b))) 2) (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 a b) -1/4)) 1 (fma.f64 (neg.f64 b) (*.f64 1/4 a) (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 a b) -1/4)) 1 (*.f64 (fma.f64 (*.f64 a b) -1/4 (*.f64 1/4 (*.f64 a b))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 a b) -1/4)) 1 (+.f64 (fma.f64 (*.f64 a b) -1/4 (*.f64 1/4 (*.f64 a b))) (fma.f64 (*.f64 a b) -1/4 (*.f64 1/4 (*.f64 a b)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 z (*.f64 1/16 t)) (*.f64 (*.f64 a b) -1/4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 z (*.f64 1/16 t)) (*.f64 (*.f64 (*.f64 a b) -1/4) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 z (*.f64 1/16 t)) (fma.f64 (*.f64 a b) -1/4 (fma.f64 (*.f64 a b) -1/4 (*.f64 1/4 (*.f64 a b)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 z (*.f64 1/16 t)) (neg.f64 (-.f64 (*.f64 1/4 (*.f64 a b)) (fma.f64 (*.f64 a b) -1/4 (*.f64 1/4 (*.f64 a b))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 a b) -1/4)) (fma.f64 (*.f64 a b) -1/4 (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 a b) -1/4)) (fma.f64 (*.f64 (*.f64 a b) -1/4) 1 (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 a b) -1/4)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 1/4 (*.f64 a b)))) (pow.f64 (cbrt.f64 (*.f64 1/4 (*.f64 a b))) 2) (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 a b) -1/4)) (fma.f64 (neg.f64 b) (*.f64 1/4 a) (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 a b) -1/4)) (*.f64 (fma.f64 (*.f64 a b) -1/4 (*.f64 1/4 (*.f64 a b))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 a b) -1/4)) (+.f64 (fma.f64 (*.f64 a b) -1/4 (*.f64 1/4 (*.f64 a b))) (fma.f64 (*.f64 a b) -1/4 (*.f64 1/4 (*.f64 a b)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 (*.f64 a b) -1/4 (*.f64 1/4 (*.f64 a b))) (fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 a b) -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (*.f64 a b) -1/4) (*.f64 z (*.f64 1/16 t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 1/4 (*.f64 a b))) 2) (neg.f64 (cbrt.f64 (*.f64 1/4 (*.f64 a b)))) (*.f64 z (*.f64 1/16 t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 t z)) 2) (*.f64 (cbrt.f64 (*.f64 t z)) 1/16) (*.f64 (*.f64 a b) -1/4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 t z)) 2) (*.f64 (cbrt.f64 (*.f64 t z)) 1/16) (*.f64 (*.f64 (*.f64 a b) -1/4) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 t z)) 2) (*.f64 (cbrt.f64 (*.f64 t z)) 1/16) (fma.f64 (*.f64 a b) -1/4 (fma.f64 (*.f64 a b) -1/4 (*.f64 1/4 (*.f64 a b)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 t z)) 2) (*.f64 (cbrt.f64 (*.f64 t z)) 1/16) (neg.f64 (-.f64 (*.f64 1/4 (*.f64 a b)) (fma.f64 (*.f64 a b) -1/4 (*.f64 1/4 (*.f64 a b))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 a b) -1/4))) (pow.f64 (cbrt.f64 (fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 a b) -1/4))) 2) (fma.f64 (*.f64 a b) -1/4 (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 a b) -1/4))) (pow.f64 (cbrt.f64 (fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 a b) -1/4))) 2) (fma.f64 (*.f64 (*.f64 a b) -1/4) 1 (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 a b) -1/4))) (pow.f64 (cbrt.f64 (fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 a b) -1/4))) 2) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 1/4 (*.f64 a b)))) (pow.f64 (cbrt.f64 (*.f64 1/4 (*.f64 a b))) 2) (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 a b) -1/4))) (pow.f64 (cbrt.f64 (fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 a b) -1/4))) 2) (fma.f64 (neg.f64 b) (*.f64 1/4 a) (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 a b) -1/4))) (pow.f64 (cbrt.f64 (fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 a b) -1/4))) 2) (*.f64 (fma.f64 (*.f64 a b) -1/4 (*.f64 1/4 (*.f64 a b))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 a b) -1/4))) (pow.f64 (cbrt.f64 (fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 a b) -1/4))) 2) (+.f64 (fma.f64 (*.f64 a b) -1/4 (*.f64 1/4 (*.f64 a b))) (fma.f64 (*.f64 a b) -1/4 (*.f64 1/4 (*.f64 a b)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 a b) -1/4))) 2) (cbrt.f64 (fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 a b) -1/4))) (fma.f64 (*.f64 a b) -1/4 (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 a b) -1/4))) 2) (cbrt.f64 (fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 a b) -1/4))) (fma.f64 (*.f64 (*.f64 a b) -1/4) 1 (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 a b) -1/4))) 2) (cbrt.f64 (fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 a b) -1/4))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 1/4 (*.f64 a b)))) (pow.f64 (cbrt.f64 (*.f64 1/4 (*.f64 a b))) 2) (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 a b) -1/4))) 2) (cbrt.f64 (fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 a b) -1/4))) (fma.f64 (neg.f64 b) (*.f64 1/4 a) (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 a b) -1/4))) 2) (cbrt.f64 (fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 a b) -1/4))) (*.f64 (fma.f64 (*.f64 a b) -1/4 (*.f64 1/4 (*.f64 a b))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 a b) -1/4))) 2) (cbrt.f64 (fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 a b) -1/4))) (+.f64 (fma.f64 (*.f64 a b) -1/4 (*.f64 1/4 (*.f64 a b))) (fma.f64 (*.f64 a b) -1/4 (*.f64 1/4 (*.f64 a b)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 z (*.f64 1/16 t))) (pow.f64 (cbrt.f64 (*.f64 z (*.f64 1/16 t))) 2) (*.f64 (*.f64 a b) -1/4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 z (*.f64 1/16 t))) (pow.f64 (cbrt.f64 (*.f64 z (*.f64 1/16 t))) 2) (*.f64 (*.f64 (*.f64 a b) -1/4) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 z (*.f64 1/16 t))) (pow.f64 (cbrt.f64 (*.f64 z (*.f64 1/16 t))) 2) (fma.f64 (*.f64 a b) -1/4 (fma.f64 (*.f64 a b) -1/4 (*.f64 1/4 (*.f64 a b)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 z (*.f64 1/16 t))) (pow.f64 (cbrt.f64 (*.f64 z (*.f64 1/16 t))) 2) (neg.f64 (-.f64 (*.f64 1/4 (*.f64 a b)) (fma.f64 (*.f64 a b) -1/4 (*.f64 1/4 (*.f64 a b))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 z (*.f64 1/16 t))) 2) (cbrt.f64 (*.f64 z (*.f64 1/16 t))) (*.f64 (*.f64 a b) -1/4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 z (*.f64 1/16 t))) 2) (cbrt.f64 (*.f64 z (*.f64 1/16 t))) (*.f64 (*.f64 (*.f64 a b) -1/4) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 z (*.f64 1/16 t))) 2) (cbrt.f64 (*.f64 z (*.f64 1/16 t))) (fma.f64 (*.f64 a b) -1/4 (fma.f64 (*.f64 a b) -1/4 (*.f64 1/4 (*.f64 a b)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 z (*.f64 1/16 t))) 2) (cbrt.f64 (*.f64 z (*.f64 1/16 t))) (neg.f64 (-.f64 (*.f64 1/4 (*.f64 a b)) (fma.f64 (*.f64 a b) -1/4 (*.f64 1/4 (*.f64 a b))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sqrt.f64 (*.f64 a b)) 1/2) (neg.f64 (*.f64 (sqrt.f64 (*.f64 a b)) 1/2)) (*.f64 z (*.f64 1/16 t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 t z)) (*.f64 (sqrt.f64 (*.f64 t z)) 1/16) (*.f64 (*.f64 a b) -1/4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 t z)) (*.f64 (sqrt.f64 (*.f64 t z)) 1/16) (*.f64 (*.f64 (*.f64 a b) -1/4) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 t z)) (*.f64 (sqrt.f64 (*.f64 t z)) 1/16) (fma.f64 (*.f64 a b) -1/4 (fma.f64 (*.f64 a b) -1/4 (*.f64 1/4 (*.f64 a b)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 t z)) (*.f64 (sqrt.f64 (*.f64 t z)) 1/16) (neg.f64 (-.f64 (*.f64 1/4 (*.f64 a b)) (fma.f64 (*.f64 a b) -1/4 (*.f64 1/4 (*.f64 a b))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 a b) -1/4))) (sqrt.f64 (fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 a b) -1/4))) (fma.f64 (*.f64 a b) -1/4 (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 a b) -1/4))) (sqrt.f64 (fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 a b) -1/4))) (fma.f64 (*.f64 (*.f64 a b) -1/4) 1 (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 a b) -1/4))) (sqrt.f64 (fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 a b) -1/4))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 1/4 (*.f64 a b)))) (pow.f64 (cbrt.f64 (*.f64 1/4 (*.f64 a b))) 2) (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 a b) -1/4))) (sqrt.f64 (fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 a b) -1/4))) (fma.f64 (neg.f64 b) (*.f64 1/4 a) (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 a b) -1/4))) (sqrt.f64 (fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 a b) -1/4))) (*.f64 (fma.f64 (*.f64 a b) -1/4 (*.f64 1/4 (*.f64 a b))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 a b) -1/4))) (sqrt.f64 (fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 a b) -1/4))) (+.f64 (fma.f64 (*.f64 a b) -1/4 (*.f64 1/4 (*.f64 a b))) (fma.f64 (*.f64 a b) -1/4 (*.f64 1/4 (*.f64 a b)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 1/4 (sqrt.f64 (*.f64 t z))) (*.f64 1/4 (sqrt.f64 (*.f64 t z))) (*.f64 (*.f64 a b) -1/4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 1/4 (sqrt.f64 (*.f64 t z))) (*.f64 1/4 (sqrt.f64 (*.f64 t z))) (*.f64 (*.f64 (*.f64 a b) -1/4) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 1/4 (sqrt.f64 (*.f64 t z))) (*.f64 1/4 (sqrt.f64 (*.f64 t z))) (fma.f64 (*.f64 a b) -1/4 (fma.f64 (*.f64 a b) -1/4 (*.f64 1/4 (*.f64 a b)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 1/4 (sqrt.f64 (*.f64 t z))) (*.f64 1/4 (sqrt.f64 (*.f64 t z))) (neg.f64 (-.f64 (*.f64 1/4 (*.f64 a b)) (fma.f64 (*.f64 a b) -1/4 (*.f64 1/4 (*.f64 a b))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 a (neg.f64 b)) 1/4 (*.f64 z (*.f64 1/16 t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 z (*.f64 1/16 t)) 3) (*.f64 (pow.f64 (*.f64 a b) 3) 1/64)) (/.f64 1 (fma.f64 (*.f64 1/4 (*.f64 a b)) (fma.f64 1/16 (*.f64 t z) (*.f64 1/4 (*.f64 a b))) (pow.f64 (*.f64 z (*.f64 1/16 t)) 2))) (fma.f64 (*.f64 a b) -1/4 (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 z (*.f64 1/16 t)) 3) (*.f64 (pow.f64 (*.f64 a b) 3) 1/64)) (/.f64 1 (fma.f64 (*.f64 1/4 (*.f64 a b)) (fma.f64 1/16 (*.f64 t z) (*.f64 1/4 (*.f64 a b))) (pow.f64 (*.f64 z (*.f64 1/16 t)) 2))) (fma.f64 (*.f64 (*.f64 a b) -1/4) 1 (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 z (*.f64 1/16 t)) 3) (*.f64 (pow.f64 (*.f64 a b) 3) 1/64)) (/.f64 1 (fma.f64 (*.f64 1/4 (*.f64 a b)) (fma.f64 1/16 (*.f64 t z) (*.f64 1/4 (*.f64 a b))) (pow.f64 (*.f64 z (*.f64 1/16 t)) 2))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 1/4 (*.f64 a b)))) (pow.f64 (cbrt.f64 (*.f64 1/4 (*.f64 a b))) 2) (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 z (*.f64 1/16 t)) 3) (*.f64 (pow.f64 (*.f64 a b) 3) 1/64)) (/.f64 1 (fma.f64 (*.f64 1/4 (*.f64 a b)) (fma.f64 1/16 (*.f64 t z) (*.f64 1/4 (*.f64 a b))) (pow.f64 (*.f64 z (*.f64 1/16 t)) 2))) (fma.f64 (neg.f64 b) (*.f64 1/4 a) (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 z (*.f64 1/16 t)) 3) (*.f64 (pow.f64 (*.f64 a b) 3) 1/64)) (/.f64 1 (fma.f64 (*.f64 1/4 (*.f64 a b)) (fma.f64 1/16 (*.f64 t z) (*.f64 1/4 (*.f64 a b))) (pow.f64 (*.f64 z (*.f64 1/16 t)) 2))) (*.f64 (fma.f64 (*.f64 a b) -1/4 (*.f64 1/4 (*.f64 a b))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 z (*.f64 1/16 t)) 3) (*.f64 (pow.f64 (*.f64 a b) 3) 1/64)) (/.f64 1 (fma.f64 (*.f64 1/4 (*.f64 a b)) (fma.f64 1/16 (*.f64 t z) (*.f64 1/4 (*.f64 a b))) (pow.f64 (*.f64 z (*.f64 1/16 t)) 2))) (+.f64 (fma.f64 (*.f64 a b) -1/4 (*.f64 1/4 (*.f64 a b))) (fma.f64 (*.f64 a b) -1/4 (*.f64 1/4 (*.f64 a b)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 z (*.f64 1/16 t)) 2) (*.f64 1/16 (pow.f64 (*.f64 a b) 2))) (/.f64 1 (fma.f64 1/16 (*.f64 t z) (*.f64 1/4 (*.f64 a b)))) (fma.f64 (*.f64 a b) -1/4 (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 z (*.f64 1/16 t)) 2) (*.f64 1/16 (pow.f64 (*.f64 a b) 2))) (/.f64 1 (fma.f64 1/16 (*.f64 t z) (*.f64 1/4 (*.f64 a b)))) (fma.f64 (*.f64 (*.f64 a b) -1/4) 1 (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 z (*.f64 1/16 t)) 2) (*.f64 1/16 (pow.f64 (*.f64 a b) 2))) (/.f64 1 (fma.f64 1/16 (*.f64 t z) (*.f64 1/4 (*.f64 a b)))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 1/4 (*.f64 a b)))) (pow.f64 (cbrt.f64 (*.f64 1/4 (*.f64 a b))) 2) (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 z (*.f64 1/16 t)) 2) (*.f64 1/16 (pow.f64 (*.f64 a b) 2))) (/.f64 1 (fma.f64 1/16 (*.f64 t z) (*.f64 1/4 (*.f64 a b)))) (fma.f64 (neg.f64 b) (*.f64 1/4 a) (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 z (*.f64 1/16 t)) 2) (*.f64 1/16 (pow.f64 (*.f64 a b) 2))) (/.f64 1 (fma.f64 1/16 (*.f64 t z) (*.f64 1/4 (*.f64 a b)))) (*.f64 (fma.f64 (*.f64 a b) -1/4 (*.f64 1/4 (*.f64 a b))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 z (*.f64 1/16 t)) 2) (*.f64 1/16 (pow.f64 (*.f64 a b) 2))) (/.f64 1 (fma.f64 1/16 (*.f64 t z) (*.f64 1/4 (*.f64 a b)))) (+.f64 (fma.f64 (*.f64 a b) -1/4 (*.f64 1/4 (*.f64 a b))) (fma.f64 (*.f64 a b) -1/4 (*.f64 1/4 (*.f64 a b)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1/4 (*.f64 a b) (*.f64 z (*.f64 1/16 t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 1/16 t) z (*.f64 (*.f64 a b) -1/4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 1/16 t) z (*.f64 (*.f64 (*.f64 a b) -1/4) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 1/16 t) z (fma.f64 (*.f64 a b) -1/4 (fma.f64 (*.f64 a b) -1/4 (*.f64 1/4 (*.f64 a b)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 1/16 t) z (neg.f64 (-.f64 (*.f64 1/4 (*.f64 a b)) (fma.f64 (*.f64 a b) -1/4 (*.f64 1/4 (*.f64 a b))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 1/4 a) (neg.f64 b) (*.f64 z (*.f64 1/16 t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 (*.f64 a b) -1/4 (*.f64 1/4 (*.f64 a b)))) 2) (cbrt.f64 (fma.f64 (*.f64 a b) -1/4 (*.f64 1/4 (*.f64 a b)))) (fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 a b) -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (*.f64 a b) -1/4)) 2) (cbrt.f64 (*.f64 (*.f64 a b) -1/4)) (*.f64 z (*.f64 1/16 t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 (*.f64 a b) -1/4 (*.f64 1/4 (*.f64 a b)))) (sqrt.f64 (fma.f64 (*.f64 a b) -1/4 (*.f64 1/4 (*.f64 a b)))) (fma.f64 z (*.f64 1/16 t) (*.f64 (*.f64 a b) -1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (*.f64 a b) -1/4)) (sqrt.f64 (*.f64 (*.f64 a b) -1/4)) (*.f64 z (*.f64 1/16 t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (*.f64 (sqrt.f64 (*.f64 a b)) 1/2)) (*.f64 (sqrt.f64 (*.f64 a b)) 1/2) (*.f64 z (*.f64 1/16 t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 (*.f64 1/4 (*.f64 a b)) (*.f64 z (*.f64 1/16 t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 1/4 (sqrt.f64 (*.f64 t z)) (*.f64 (sqrt.f64 (*.f64 a b)) 1/2)) (-.f64 (*.f64 1/4 (sqrt.f64 (*.f64 t z))) (*.f64 (sqrt.f64 (*.f64 a b)) 1/2)) (fma.f64 (*.f64 a b) -1/4 (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 1/4 (sqrt.f64 (*.f64 t z)) (*.f64 (sqrt.f64 (*.f64 a b)) 1/2)) (-.f64 (*.f64 1/4 (sqrt.f64 (*.f64 t z))) (*.f64 (sqrt.f64 (*.f64 a b)) 1/2)) (fma.f64 (*.f64 (*.f64 a b) -1/4) 1 (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 1/4 (sqrt.f64 (*.f64 t z)) (*.f64 (sqrt.f64 (*.f64 a b)) 1/2)) (-.f64 (*.f64 1/4 (sqrt.f64 (*.f64 t z))) (*.f64 (sqrt.f64 (*.f64 a b)) 1/2)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 1/4 (*.f64 a b)))) (pow.f64 (cbrt.f64 (*.f64 1/4 (*.f64 a b))) 2) (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 1/4 (sqrt.f64 (*.f64 t z)) (*.f64 (sqrt.f64 (*.f64 a b)) 1/2)) (-.f64 (*.f64 1/4 (sqrt.f64 (*.f64 t z))) (*.f64 (sqrt.f64 (*.f64 a b)) 1/2)) (fma.f64 (neg.f64 b) (*.f64 1/4 a) (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 1/4 (sqrt.f64 (*.f64 t z)) (*.f64 (sqrt.f64 (*.f64 a b)) 1/2)) (-.f64 (*.f64 1/4 (sqrt.f64 (*.f64 t z))) (*.f64 (sqrt.f64 (*.f64 a b)) 1/2)) (*.f64 (fma.f64 (*.f64 a b) -1/4 (*.f64 1/4 (*.f64 a b))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 1/4 (sqrt.f64 (*.f64 t z)) (*.f64 (sqrt.f64 (*.f64 a b)) 1/2)) (-.f64 (*.f64 1/4 (sqrt.f64 (*.f64 t z))) (*.f64 (sqrt.f64 (*.f64 a b)) 1/2)) (+.f64 (fma.f64 (*.f64 a b) -1/4 (*.f64 1/4 (*.f64 a b))) (fma.f64 (*.f64 a b) -1/4 (*.f64 1/4 (*.f64 a b)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (pow.f64 (cbrt.f64 (*.f64 1/4 (*.f64 a b))) 2)) (cbrt.f64 (*.f64 1/4 (*.f64 a b))) (*.f64 z (*.f64 1/16 t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (*.f64 1/4 a)) b (*.f64 z (*.f64 1/16 t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -1/4 a) b (*.f64 z (*.f64 1/16 t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -1/4 b) a (*.f64 z (*.f64 1/16 t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -1/4 (pow.f64 (cbrt.f64 (*.f64 a b)) 2)) (cbrt.f64 (*.f64 a b)) (*.f64 z (*.f64 1/16 t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -1/4 (sqrt.f64 (*.f64 a b))) (sqrt.f64 (*.f64 a b)) (*.f64 z (*.f64 1/16 t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 1/16 z) t (*.f64 (*.f64 a b) -1/4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 1/16 z) t (*.f64 (*.f64 (*.f64 a b) -1/4) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 1/16 z) t (fma.f64 (*.f64 a b) -1/4 (fma.f64 (*.f64 a b) -1/4 (*.f64 1/4 (*.f64 a b)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 1/16 z) t (neg.f64 (-.f64 (*.f64 1/4 (*.f64 a b)) (fma.f64 (*.f64 a b) -1/4 (*.f64 1/4 (*.f64 a b))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 1/16 (pow.f64 (cbrt.f64 (*.f64 t z)) 2)) (cbrt.f64 (*.f64 t z)) (*.f64 (*.f64 a b) -1/4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 1/16 (pow.f64 (cbrt.f64 (*.f64 t z)) 2)) (cbrt.f64 (*.f64 t z)) (*.f64 (*.f64 (*.f64 a b) -1/4) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 1/16 (pow.f64 (cbrt.f64 (*.f64 t z)) 2)) (cbrt.f64 (*.f64 t z)) (fma.f64 (*.f64 a b) -1/4 (fma.f64 (*.f64 a b) -1/4 (*.f64 1/4 (*.f64 a b)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 1/16 (pow.f64 (cbrt.f64 (*.f64 t z)) 2)) (cbrt.f64 (*.f64 t z)) (neg.f64 (-.f64 (*.f64 1/4 (*.f64 a b)) (fma.f64 (*.f64 a b) -1/4 (*.f64 1/4 (*.f64 a b))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 1/16 (sqrt.f64 (*.f64 t z))) (sqrt.f64 (*.f64 t z)) (*.f64 (*.f64 a b) -1/4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 1/16 (sqrt.f64 (*.f64 t z))) (sqrt.f64 (*.f64 t z)) (*.f64 (*.f64 (*.f64 a b) -1/4) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 1/16 (sqrt.f64 (*.f64 t z))) (sqrt.f64 (*.f64 t z)) (fma.f64 (*.f64 a b) -1/4 (fma.f64 (*.f64 a b) -1/4 (*.f64 1/4 (*.f64 a b)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 1/16 (sqrt.f64 (*.f64 t z))) (sqrt.f64 (*.f64 t z)) (neg.f64 (-.f64 (*.f64 1/4 (*.f64 a b)) (fma.f64 (*.f64 a b) -1/4 (*.f64 1/4 (*.f64 a b))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 1/16 t) 1) z (*.f64 (*.f64 a b) -1/4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 1/16 t) 1) z (*.f64 (*.f64 (*.f64 a b) -1/4) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 1/16 t) 1) z (fma.f64 (*.f64 a b) -1/4 (fma.f64 (*.f64 a b) -1/4 (*.f64 1/4 (*.f64 a b)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 1/16 t) 1) z (neg.f64 (-.f64 (*.f64 1/4 (*.f64 a b)) (fma.f64 (*.f64 a b) -1/4 (*.f64 1/4 (*.f64 a b))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 1/16 t) (cbrt.f64 (*.f64 z z))) (cbrt.f64 z) (*.f64 (*.f64 a b) -1/4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 1/16 t) (cbrt.f64 (*.f64 z z))) (cbrt.f64 z) (*.f64 (*.f64 (*.f64 a b) -1/4) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 1/16 t) (cbrt.f64 (*.f64 z z))) (cbrt.f64 z) (fma.f64 (*.f64 a b) -1/4 (fma.f64 (*.f64 a b) -1/4 (*.f64 1/4 (*.f64 a b)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 1/16 t) (cbrt.f64 (*.f64 z z))) (cbrt.f64 z) (neg.f64 (-.f64 (*.f64 1/4 (*.f64 a b)) (fma.f64 (*.f64 a b) -1/4 (*.f64 1/4 (*.f64 a b))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 1/16 t) (sqrt.f64 z)) (sqrt.f64 z) (*.f64 (*.f64 a b) -1/4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 1/16 t) (sqrt.f64 z)) (sqrt.f64 z) (*.f64 (*.f64 (*.f64 a b) -1/4) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 1/16 t) (sqrt.f64 z)) (sqrt.f64 z) (fma.f64 (*.f64 a b) -1/4 (fma.f64 (*.f64 a b) -1/4 (*.f64 1/4 (*.f64 a b)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 1/16 t) (sqrt.f64 z)) (sqrt.f64 z) (neg.f64 (-.f64 (*.f64 1/4 (*.f64 a b)) (fma.f64 (*.f64 a b) -1/4 (*.f64 1/4 (*.f64 a b))))))))))

simplify23.0ms (0.2%)

Algorithm
egg-herbie
Rules
12×fma-def_binary64
10×*-commutative_binary64
associate-*r*_binary64
associate-*l*_binary64
+-commutative_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
012588
122588
241588
353588
Stop Event
saturated
Counts
247 → 203
Calls
Call 1
Inputs
(*.f64 -1/4 (*.f64 a b))
(+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))
(+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))
(+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))
(*.f64 1/16 (*.f64 t z))
(+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))
(+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))
(+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))
(*.f64 1/16 (*.f64 t z))
(+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))
(+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))
(+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))
(*.f64 -1/4 (*.f64 a b))
(+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))
(+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))
(+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))
(*.f64 1/16 (*.f64 t z))
(+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))
(+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))
(+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))
(*.f64 1/16 (*.f64 t z))
(+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))
(+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))
(+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))
(*.f64 1/16 (*.f64 t z))
(+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))
(+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))
(+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))
(*.f64 -1/4 (*.f64 a b))
(+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))
(+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))
(+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))
(*.f64 -1/4 (*.f64 a b))
(+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))
(+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))
(+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))
(*.f64 1/16 (*.f64 t z))
(+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))
(+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))
(+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))
(*.f64 -1/4 (*.f64 a b))
(+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))
(+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))
(+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))
(*.f64 -1/4 (*.f64 a b))
(+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))
(+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))
(+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))
Outputs
(*.f64 -1/4 (*.f64 a b))
(+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) (*.f64 1/16 (*.f64 t z)))
(+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) (*.f64 1/16 (*.f64 t z)))
(+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) (*.f64 1/16 (*.f64 t z)))
(*.f64 1/16 (*.f64 t z))
(+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) (*.f64 1/16 (*.f64 t z)))
(+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) (*.f64 1/16 (*.f64 t z)))
(+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) (*.f64 1/16 (*.f64 t z)))
(*.f64 1/16 (*.f64 t z))
(+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) (*.f64 1/16 (*.f64 t z)))
(+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) (*.f64 1/16 (*.f64 t z)))
(+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) (*.f64 1/16 (*.f64 t z)))
(*.f64 -1/4 (*.f64 a b))
(+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) (*.f64 1/16 (*.f64 t z)))
(+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) (*.f64 1/16 (*.f64 t z)))
(+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) (*.f64 1/16 (*.f64 t z)))
(*.f64 1/16 (*.f64 t z))
(+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) (*.f64 1/16 (*.f64 t z)))
(+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) (*.f64 1/16 (*.f64 t z)))
(+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) (*.f64 1/16 (*.f64 t z)))
(*.f64 1/16 (*.f64 t z))
(+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) (*.f64 1/16 (*.f64 t z)))
(+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) (*.f64 1/16 (*.f64 t z)))
(+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) (*.f64 1/16 (*.f64 t z)))
(*.f64 1/16 (*.f64 t z))
(+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) (*.f64 1/16 (*.f64 t z)))
(+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) (*.f64 1/16 (*.f64 t z)))
(+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) (*.f64 1/16 (*.f64 t z)))
(*.f64 -1/4 (*.f64 a b))
(+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) (*.f64 1/16 (*.f64 t z)))
(+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) (*.f64 1/16 (*.f64 t z)))
(+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) (*.f64 1/16 (*.f64 t z)))
(*.f64 -1/4 (*.f64 a b))
(+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) (*.f64 1/16 (*.f64 t z)))
(+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) (*.f64 1/16 (*.f64 t z)))
(+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) (*.f64 1/16 (*.f64 t z)))
(*.f64 1/16 (*.f64 t z))
(+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) (*.f64 1/16 (*.f64 t z)))
(+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) (*.f64 1/16 (*.f64 t z)))
(+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) (*.f64 1/16 (*.f64 t z)))
(*.f64 -1/4 (*.f64 a b))
(+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) (*.f64 1/16 (*.f64 t z)))
(+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) (*.f64 1/16 (*.f64 t z)))
(+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) (*.f64 1/16 (*.f64 t z)))
(*.f64 -1/4 (*.f64 a b))
(+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) (*.f64 1/16 (*.f64 t z)))
(+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) (*.f64 1/16 (*.f64 t z)))
(+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))
(fma.f64 -1/4 (*.f64 a b) (*.f64 1/16 (*.f64 t z)))

eval259.0ms (2.5%)

Compiler

Compiled 11604 to 6298 computations (45.7% saved)

prune250.0ms (2.4%)

Pruning

15 alts after pruning (3 fresh and 12 done)

PrunedKeptTotal
New5363539
Fresh202
Picked011
Done11112
Total53915554
Error
0b
Counts
554 → 15
Alt Table
Click to see full alt table
StatusErrorProgram
29.5b
(+.f64 (*.f64 1/16 (*.f64 t z)) c)
27.9b
(+.f64 (*.f64 y x) c)
33.6b
(-.f64 (*.f64 y x) (*.f64 1/4 (*.f64 a b)))
49.9b
(*.f64 z (*.f64 1/16 t))
48.1b
(*.f64 a (*.f64 b -1/4))
35.5b
(fma.f64 x y (*.f64 1/16 (*.f64 t z)))
42.2b
c
29.5b
(fma.f64 (*.f64 1/16 z) t c)
14.5b
(-.f64 (+.f64 c (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
35.2b
(-.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 1/4 (*.f64 a b)))
48.1b
(*.f64 y x)
35.5b
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
35.2b
(fma.f64 (*.f64 -1/4 b) a (*.f64 z (*.f64 1/16 t)))
27.8b
(fma.f64 (*.f64 b -1/4) a c)
27.8b
(+.f64 (*.f64 a (*.f64 b -1/4)) c)
Compiler

Compiled 210 to 163 computations (22.4% saved)

regimes505.0ms (4.9%)

Counts
27 → 1
Calls
Call 1
Inputs
(fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(fma.f64 x y (fma.f64 t (*.f64 z 1/16) (fma.f64 (*.f64 a b) -1/4 c)))
(fma.f64 a (*.f64 b -1/4) (fma.f64 y x c))
(fma.f64 x y (fma.f64 t (*.f64 z 1/16) c))
(fma.f64 a (*.f64 b -1/4) (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(fma.f64 (*.f64 1/16 z) t (+.f64 c (*.f64 (*.f64 a b) -1/4)))
(fma.f64 (*.f64 -1/4 b) a (*.f64 z (*.f64 1/16 t)))
(fma.f64 x y (*.f64 1/16 (*.f64 t z)))
(fma.f64 (*.f64 1/16 z) t c)
(fma.f64 (*.f64 b -1/4) a c)
(+.f64 (-.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 z t) 16)) (/.f64 (*.f64 a b) 4)) c)
(-.f64 (+.f64 c (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
(-.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 1/4 (*.f64 a b)))
(-.f64 (+.f64 c (*.f64 y x)) (*.f64 1/4 (*.f64 a b)))
(+.f64 (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) c)
(-.f64 (*.f64 y x) (*.f64 1/4 (*.f64 a b)))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(+.f64 (*.f64 1/16 (*.f64 t z)) c)
(+.f64 (*.f64 a (*.f64 b -1/4)) c)
(*.f64 z (*.f64 1/16 t))
(*.f64 a (*.f64 b -1/4))
(+.f64 (*.f64 y x) c)
(*.f64 y x)
c
c
c
c
Outputs
(fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
Calls

22 calls:

51.0ms
(+.f64 (*.f64 x y) (/.f64 (*.f64 z t) 16))
35.0ms
(/.f64 (*.f64 z t) 16)
26.0ms
(*.f64 a b)
25.0ms
(/.f64 (*.f64 a b) 4)
24.0ms
(/.f64 (*.f64 a b) 4)
Results
ErrorSegmentsBranch
0.0b1x
0.0b1y
0.0b1z
0.0b1t
0.0b1a
0.0b1b
0.0b1c
0.0b1(+.f64 (-.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 z t) 16)) (/.f64 (*.f64 a b) 4)) c)
0.0b1(-.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 z t) 16)) (/.f64 (*.f64 a b) 4))
0.0b1(-.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 z t) 16)) (/.f64 (*.f64 a b) 4))
0.0b1(+.f64 (*.f64 x y) (/.f64 (*.f64 z t) 16))
0.0b1(+.f64 (*.f64 x y) (/.f64 (*.f64 z t) 16))
0.0b1(*.f64 x y)
0.0b1(*.f64 x y)
0.0b1(/.f64 (*.f64 z t) 16)
0.0b1(/.f64 (*.f64 z t) 16)
0.0b1(*.f64 z t)
0.0b1(*.f64 z t)
0.0b1(/.f64 (*.f64 a b) 4)
0.0b1(/.f64 (*.f64 a b) 4)
0.0b1(*.f64 a b)
0.0b1(*.f64 a b)
Compiler

Compiled 490 to 315 computations (35.7% saved)

regimes443.0ms (4.3%)

Counts
25 → 1
Calls
Call 1
Inputs
(fma.f64 a (*.f64 b -1/4) (fma.f64 y x c))
(fma.f64 x y (fma.f64 t (*.f64 z 1/16) c))
(fma.f64 a (*.f64 b -1/4) (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))))
(fma.f64 (*.f64 1/16 z) t (+.f64 c (*.f64 (*.f64 a b) -1/4)))
(fma.f64 (*.f64 -1/4 b) a (*.f64 z (*.f64 1/16 t)))
(fma.f64 x y (*.f64 1/16 (*.f64 t z)))
(fma.f64 (*.f64 1/16 z) t c)
(fma.f64 (*.f64 b -1/4) a c)
(+.f64 (-.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 z t) 16)) (/.f64 (*.f64 a b) 4)) c)
(-.f64 (+.f64 c (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
(-.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 1/4 (*.f64 a b)))
(-.f64 (+.f64 c (*.f64 y x)) (*.f64 1/4 (*.f64 a b)))
(+.f64 (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) c)
(-.f64 (*.f64 y x) (*.f64 1/4 (*.f64 a b)))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(+.f64 (*.f64 1/16 (*.f64 t z)) c)
(+.f64 (*.f64 a (*.f64 b -1/4)) c)
(*.f64 z (*.f64 1/16 t))
(*.f64 a (*.f64 b -1/4))
(+.f64 (*.f64 y x) c)
(*.f64 y x)
c
c
c
c
Outputs
(+.f64 (-.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 z t) 16)) (/.f64 (*.f64 a b) 4)) c)
Calls

15 calls:

103.0ms
z
85.0ms
(/.f64 (*.f64 z t) 16)
47.0ms
b
27.0ms
x
26.0ms
y
Results
ErrorSegmentsBranch
0.0b1x
0.0b1y
0.0b1z
0.0b1t
0.0b1a
0.0b1b
0.0b1c
0.0b1(+.f64 (-.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 z t) 16)) (/.f64 (*.f64 a b) 4)) c)
0.0b1(-.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 z t) 16)) (/.f64 (*.f64 a b) 4))
0.0b1(+.f64 (*.f64 x y) (/.f64 (*.f64 z t) 16))
0.0b1(*.f64 x y)
0.0b1(/.f64 (*.f64 z t) 16)
0.0b1(*.f64 z t)
0.0b1(/.f64 (*.f64 a b) 4)
0.0b1(*.f64 a b)
Compiler

Compiled 370 to 231 computations (37.6% saved)

regimes553.0ms (5.3%)

Counts
16 → 3
Calls
Call 1
Inputs
(-.f64 (+.f64 c (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
(-.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 1/4 (*.f64 a b)))
(-.f64 (+.f64 c (*.f64 y x)) (*.f64 1/4 (*.f64 a b)))
(+.f64 (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) c)
(-.f64 (*.f64 y x) (*.f64 1/4 (*.f64 a b)))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(+.f64 (*.f64 1/16 (*.f64 t z)) c)
(+.f64 (*.f64 a (*.f64 b -1/4)) c)
(*.f64 z (*.f64 1/16 t))
(*.f64 a (*.f64 b -1/4))
(+.f64 (*.f64 y x) c)
(*.f64 y x)
c
c
c
c
Outputs
(-.f64 (+.f64 c (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
(+.f64 (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) c)
(-.f64 (+.f64 c (*.f64 y x)) (*.f64 1/4 (*.f64 a b)))
Calls

8 calls:

179.0ms
b
108.0ms
c
54.0ms
a
50.0ms
t
49.0ms
x
Results
ErrorSegmentsBranch
7.4b6x
5.6b3y
5.5b4z
6.6b6t
6.6b5a
5.8b6b
6.9b6c
5.4b3(*.f64 a b)
Compiler

Compiled 173 to 106 computations (38.7% saved)

bsearch1.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.00014614117785411132
0.00027046663008692363
0.0ms
-318542911.79388994
-8239632.192301444
Compiler

Compiled 34 to 26 computations (23.5% saved)

regimes800.0ms (7.7%)

Counts
12 → 7
Calls
Call 1
Inputs
(-.f64 (*.f64 y x) (*.f64 1/4 (*.f64 a b)))
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(+.f64 (*.f64 1/16 (*.f64 t z)) c)
(+.f64 (*.f64 a (*.f64 b -1/4)) c)
(*.f64 z (*.f64 1/16 t))
(*.f64 a (*.f64 b -1/4))
(+.f64 (*.f64 y x) c)
(*.f64 y x)
c
c
c
c
Outputs
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(+.f64 (*.f64 1/16 (*.f64 t z)) c)
(+.f64 (*.f64 a (*.f64 b -1/4)) c)
(+.f64 (*.f64 y x) c)
(+.f64 (*.f64 a (*.f64 b -1/4)) c)
(+.f64 (*.f64 y x) c)
(+.f64 (*.f64 1/16 (*.f64 t z)) c)
Calls

9 calls:

226.0ms
a
114.0ms
t
89.0ms
z
86.0ms
b
77.0ms
x
Results
ErrorSegmentsBranch
18.8b9x
17.8b4y
15.7b7z
16.9b9t
16.7b10a
19.2b5b
16.1b3c
19.6b3(*.f64 a b)
19.6b3(*.f64 a b)
Compiler

Compiled 137 to 95 computations (30.7% saved)

bsearch163.0ms (1.6%)

Algorithm
binary-search
Steps
TimeLeftRight
30.0ms
1.6320095734144689e-18
2.676250169398319e-18
27.0ms
7.327320089958261e-243
7.280134601137326e-242
31.0ms
-1.5283880744284696e-201
-1.0084016454778112e-201
30.0ms
-4.309850309758476e-166
-3.323314411429689e-166
29.0ms
-5.631268661282474e+34
-7.061157999366682e+33
14.0ms
-4.957562579206603e+143
-5.738639400238959e+134
Compiler

Compiled 66 to 51 computations (22.7% saved)

regimes184.0ms (1.8%)

Accuracy

Total -28.1b remaining (-81.9%)

Threshold costs -28.1b (-81.9%)

Counts
5 → 3
Calls
Call 1
Inputs
(*.f64 y x)
c
c
c
c
Outputs
c
(*.f64 y x)
c
Calls

7 calls:

55.0ms
x
24.0ms
a
22.0ms
y
22.0ms
c
21.0ms
z
Results
ErrorSegmentsBranch
38.0b5x
35.4b5y
37.7b4z
39.8b3t
39.8b5a
38.8b4b
34.3b3c
Compiler

Compiled 70 to 57 computations (18.6% saved)

bsearch204.0ms (2%)

Algorithm
binary-search
Steps
TimeLeftRight
172.0ms
8.026464602532605e+35
6.378344954856724e+37
31.0ms
-1030405013769350.9
-319338325737142.8
Compiler

Compiled 34 to 26 computations (23.5% saved)

simplify14.0ms (0.1%)

Algorithm
egg-herbie
Rules
15×+-commutative_binary64
12×*-commutative_binary64
sub-neg_binary64
neg-sub0_binary64
neg-mul-1_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
070235
194235
2110235
3122235
4130235
5135235
6137235
Stop Event
fuel
saturated
Calls
Call 1
Inputs
(fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(+.f64 (-.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 z t) 16)) (/.f64 (*.f64 a b) 4)) c)
(if (<=.f64 (*.f64 a b) -200000000) (-.f64 (+.f64 c (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b))) (if (<=.f64 (*.f64 a b) 7378697629483821/36893488147419103232) (+.f64 (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) c) (-.f64 (+.f64 c (*.f64 y x)) (*.f64 1/4 (*.f64 a b)))))
(if (<=.f64 z -100000000000000005928380124081487003706362488767045328864850074482999577828473980652023296508018124569151792237293382948229697163514582401024) (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) (if (<=.f64 z -56312686612824744422852399596568576) (+.f64 (*.f64 1/16 (*.f64 t z)) c) (if (<=.f64 z -457825048573167808/1062275985633534197379176413104937254659186235454063846398888276400807119721704485478325004530458571337778658972493002030693158675305414478819039957533174703887662541670786438063456256) (+.f64 (*.f64 a (*.f64 b -1/4)) c) (if (<=.f64 z -8430057141619477/5515652263101987298728728207430913795608113109085112352897269396216198887424215820128660001943808587833784893551335930816647064191168732319583111500951066614122648616177179922993422016587311577585463592732098692120576) (+.f64 (*.f64 y x) c) (if (<=.f64 z 901283494058400384/123003155723136208567847447683223664415731869180715065944930703618254955521953492303010368693540149343822709050322214299552689203876695953600699775494388206142090885899729347827083318884583758435450548517566916626912548274908112766882031433928533568160966639616) (+.f64 (*.f64 a (*.f64 b -1/4)) c) (if (<=.f64 z 8473878181138711/5192296858534827628530496329220096) (+.f64 (*.f64 y x) c) (+.f64 (*.f64 1/16 (*.f64 t z)) c)))))))
(if (<=.f64 c -8243240110154807/8) c (if (<=.f64 c 802646460253260500391854315401117696) (*.f64 y x) c))
c
Outputs
(fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
(+.f64 (-.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 z t) 16)) (/.f64 (*.f64 a b) 4)) c)
(+.f64 c (-.f64 (+.f64 (/.f64 (*.f64 t z) 16) (*.f64 y x)) (/.f64 (*.f64 a b) 4)))
(if (<=.f64 (*.f64 a b) -200000000) (-.f64 (+.f64 c (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b))) (if (<=.f64 (*.f64 a b) 7378697629483821/36893488147419103232) (+.f64 (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) c) (-.f64 (+.f64 c (*.f64 y x)) (*.f64 1/4 (*.f64 a b)))))
(if (<=.f64 (*.f64 a b) -200000000) (+.f64 (+.f64 c (*.f64 1/16 (*.f64 t z))) (*.f64 -1/4 (*.f64 a b))) (if (<=.f64 (*.f64 a b) 7378697629483821/36893488147419103232) (+.f64 c (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 y x))) (+.f64 (+.f64 c (*.f64 y x)) (*.f64 -1/4 (*.f64 a b)))))
(if (<=.f64 z -100000000000000005928380124081487003706362488767045328864850074482999577828473980652023296508018124569151792237293382948229697163514582401024) (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) (if (<=.f64 z -56312686612824744422852399596568576) (+.f64 (*.f64 1/16 (*.f64 t z)) c) (if (<=.f64 z -457825048573167808/1062275985633534197379176413104937254659186235454063846398888276400807119721704485478325004530458571337778658972493002030693158675305414478819039957533174703887662541670786438063456256) (+.f64 (*.f64 a (*.f64 b -1/4)) c) (if (<=.f64 z -8430057141619477/5515652263101987298728728207430913795608113109085112352897269396216198887424215820128660001943808587833784893551335930816647064191168732319583111500951066614122648616177179922993422016587311577585463592732098692120576) (+.f64 (*.f64 y x) c) (if (<=.f64 z 901283494058400384/123003155723136208567847447683223664415731869180715065944930703618254955521953492303010368693540149343822709050322214299552689203876695953600699775494388206142090885899729347827083318884583758435450548517566916626912548274908112766882031433928533568160966639616) (+.f64 (*.f64 a (*.f64 b -1/4)) c) (if (<=.f64 z 8473878181138711/5192296858534827628530496329220096) (+.f64 (*.f64 y x) c) (+.f64 (*.f64 1/16 (*.f64 t z)) c)))))))
(if (<=.f64 z -100000000000000005928380124081487003706362488767045328864850074482999577828473980652023296508018124569151792237293382948229697163514582401024) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 y x)) (if (<=.f64 z -56312686612824744422852399596568576) (+.f64 c (*.f64 1/16 (*.f64 t z))) (if (<=.f64 z -7153516383955747/16598062275523971834049631454764644604049784928969747599982629318762611245651632585598828195788415177152791546445203156729580604301647101231547499336455854748244727213606038094741504) (+.f64 c (*.f64 a (*.f64 b -1/4))) (if (<=.f64 z -8430057141619477/5515652263101987298728728207430913795608113109085112352897269396216198887424215820128660001943808587833784893551335930816647064191168732319583111500951066614122648616177179922993422016587311577585463592732098692120576) (+.f64 c (*.f64 y x)) (if (<=.f64 z 7041277297331253/960962154087001629436308185025184878247905227974336452694771122017616840015261658617268505418282416748614914455642299215255384405286687137505466996049907860485085046091635529899088428785810612776957410293491536147754283397719630991265870577566668501257551872) (+.f64 c (*.f64 a (*.f64 b -1/4))) (if (<=.f64 z 8473878181138711/5192296858534827628530496329220096) (+.f64 c (*.f64 y x)) (+.f64 c (*.f64 1/16 (*.f64 t z)))))))))
(if (<=.f64 c -8243240110154807/8) c (if (<=.f64 c 802646460253260500391854315401117696) (*.f64 y x) c))
c
Compiler

Compiled 205 to 127 computations (38% saved)

soundness231.0ms (2.2%)

Algorithm
egg-herbie
Rules
1185×fma-neg_binary64
706×fma-def_binary64
344×cancel-sign-sub-inv_binary64
115×distribute-rgt-neg-in_binary64
113×sub-neg_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0303091
1713083
21682945
34422945
47182945
511512945
621262945
729582945
833482945
934542945
1034542945
1137512945
1237512945
Stop Event
saturated
Compiler

Compiled 302 to 211 computations (30.1% saved)

end109.0ms (1%)

Remove

(sort a b)

(sort z t)

(sort x y)

Compiler

Compiled 296 to 168 computations (43.2% saved)

Profiling

Loading profile data...