Details

Time bar (total: 21.3s)

analyze842.0ms (4%)

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

Compiled 25 to 18 computations (28% saved)

sample3.4s (15.9%)

Results
2.2s8256×body256valid
1.1s4118×body256infinite
Bogosity

preprocess120.0ms (0.6%)

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 (0.7%)

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)))

eval2.0ms (0%)

Compiler

Compiled 38 to 23 computations (39.5% saved)

prune3.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
(+.f64 (-.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 z t) 16)) (/.f64 (*.f64 a b) 4)) c)
0.0b
(fma.f64 x y (fma.f64 t (*.f64 z 1/16) (fma.f64 (*.f64 a b) -1/4 c)))
Compiler

Compiled 45 to 31 computations (31.1% saved)

localize58.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(/.f64 (*.f64 a b) 4)
0.0b
(+.f64 (*.f64 x y) (/.f64 (*.f64 z t) 16))
0.0b
(+.f64 (-.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 z t) 16)) (/.f64 (*.f64 a b) 4)) c)
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)

series55.0ms (0.3%)

Counts
4 → 228
Calls

57 calls:

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

rewrite171.0ms (0.8%)

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
01861
141157
2606757
Stop Event
node limit
Counts
4 → 175
Calls
Call 1
Inputs
(-.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 z t) 16)) (/.f64 (*.f64 a b) 4))
(+.f64 (-.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 z t) 16)) (/.f64 (*.f64 a b) 4)) c)
(+.f64 (*.f64 x y) (/.f64 (*.f64 z t) 16))
(/.f64 (*.f64 a b) 4)
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 (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)))))))
((#(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 (exp.f64 (log1p.f64 (*.f64 a (*.f64 b 1/4)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 a (/.f64 1 (/.f64 4 b)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 a (*.f64 b 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 b (*.f64 a 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 a b) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 a (*.f64 b 1/4)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 a (*.f64 b 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 a (*.f64 b 1/4))) (pow.f64 (cbrt.f64 (*.f64 a (*.f64 b 1/4))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 a (*.f64 b 1/4))) 2) (cbrt.f64 (*.f64 a (*.f64 b 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 a b)) 2) (*.f64 (cbrt.f64 (*.f64 a b)) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (*.f64 a b)) 1/2) (*.f64 (sqrt.f64 (*.f64 a b)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 a b)) (*.f64 (sqrt.f64 (*.f64 a b)) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 a (neg.f64 b)) -1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 a b))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 a 4) b)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 a (*.f64 b 1/4)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 a (*.f64 b 1/4))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sqrt.f64 (*.f64 a b)) 1/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (*.f64 a b) 3) 1/64) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 4 (*.f64 a b)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (*.f64 a b) -4))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 a (*.f64 b 1/4)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (pow.f64 (exp.f64 b) a) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 a (*.f64 b 1/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (*.f64 a b) 3) 1/64))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 a (*.f64 b 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 a (*.f64 b 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 a (*.f64 b 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 a (*.f64 b 1/4))) 1))))))

simplify428.0ms (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
0303259
1713251
21683113
34423113
47183113
511513113
621263113
729583113
833483113
934543113
1034543113
1137513113
1237513113
Stop Event
saturated
Counts
403 → 198
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 (+.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)))
(*.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 1/4 (*.f64 a b))
(*.f64 1/4 (*.f64 a b))
(*.f64 1/4 (*.f64 a b))
(*.f64 1/4 (*.f64 a b))
(*.f64 1/4 (*.f64 a b))
(*.f64 1/4 (*.f64 a b))
(*.f64 1/4 (*.f64 a b))
(*.f64 1/4 (*.f64 a b))
(*.f64 1/4 (*.f64 a b))
(*.f64 1/4 (*.f64 a b))
(*.f64 1/4 (*.f64 a b))
(*.f64 1/4 (*.f64 a b))
(*.f64 1/4 (*.f64 a b))
(*.f64 1/4 (*.f64 a b))
(*.f64 1/4 (*.f64 a b))
(*.f64 1/4 (*.f64 a b))
(*.f64 1/4 (*.f64 a b))
(*.f64 1/4 (*.f64 a b))
(*.f64 1/4 (*.f64 a b))
(*.f64 1/4 (*.f64 a b))
(*.f64 1/4 (*.f64 a b))
(*.f64 1/4 (*.f64 a b))
(*.f64 1/4 (*.f64 a b))
(*.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 (+.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)))
(*.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 1/4 (*.f64 a b))
(*.f64 1/4 (*.f64 a b))
(*.f64 1/4 (*.f64 a b))
(*.f64 1/4 (*.f64 a b))
(*.f64 1/4 (*.f64 a b))
(*.f64 1/4 (*.f64 a b))
(*.f64 1/4 (*.f64 a b))
(*.f64 1/4 (*.f64 a b))
(*.f64 1/4 (*.f64 a b))
(*.f64 1/4 (*.f64 a b))
(*.f64 1/4 (*.f64 a b))
(*.f64 1/4 (*.f64 a b))
(*.f64 1/4 (*.f64 a b))
(*.f64 1/4 (*.f64 a b))
(*.f64 1/4 (*.f64 a b))
(*.f64 1/4 (*.f64 a b))
(*.f64 1/4 (*.f64 a b))
(*.f64 1/4 (*.f64 a b))
(*.f64 1/4 (*.f64 a b))
(*.f64 1/4 (*.f64 a b))
(*.f64 1/4 (*.f64 a b))
(*.f64 1/4 (*.f64 a b))
(*.f64 1/4 (*.f64 a b))
(*.f64 1/4 (*.f64 a b))

localize47.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)

series19.0ms (0.1%)

Counts
2 → 96
Calls

24 calls:

TimeVariablePointExpression
1.0ms
t
@0
(fma.f64 t (*.f64 z 1/16) (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
@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))
1.0ms
a
@0
(fma.f64 (*.f64 a b) -1/4 c)

rewrite124.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))))))

simplify63.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))

eval233.0ms (1.1%)

Compiler

Compiled 6734 to 3524 computations (47.7% saved)

prune125.0ms (0.6%)

Pruning

10 alts after pruning (10 fresh and 0 done)

PrunedKeptTotal
New27210282
Fresh000
Picked101
Done101
Total27410284
Error
0b
Counts
284 → 10
Alt Table
Click to see full alt table
StatusErrorProgram
16.0b
(fma.f64 x y (+.f64 c (*.f64 1/16 (*.f64 t z))))
13.7b
(-.f64 (+.f64 c (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
16.0b
(+.f64 (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) c)
29.3b
(+.f64 (*.f64 1/16 (*.f64 t z)) c)
45.0b
c
31.9b
(+.f64 (*.f64 y x) c)
16.5b
(fma.f64 a (*.f64 b -1/4) (fma.f64 y x c))
16.5b
(-.f64 (+.f64 c (*.f64 y x)) (*.f64 1/4 (*.f64 a b)))
0.0b
(fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
29.9b
(+.f64 (*.f64 a (*.f64 b -1/4)) c)
Compiler

Compiled 308 to 225 computations (26.9% saved)

localize41.0ms (0.2%)

Local error

Found 2 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 1/16 (*.f64 t z) c)
Compiler

Compiled 51 to 23 computations (54.9% saved)

series26.0ms (0.1%)

Counts
2 → 120
Calls

30 calls:

TimeVariablePointExpression
2.0ms
a
@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
@-inf
(fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
1.0ms
x
@-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)))

rewrite118.0ms (0.6%)

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
01527
129827
2340727
Stop Event
node limit
Counts
2 → 61
Calls
Call 1
Inputs
(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 1/16 (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1/16 (*.f64 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 1/16 (*.f64 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 1/16 (*.f64 t z)) 3) (pow.f64 c 3)) (+.f64 (pow.f64 (*.f64 1/16 (*.f64 t z)) 2) (-.f64 (*.f64 c c) (*.f64 (*.f64 1/16 (*.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 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 1/16 (*.f64 t z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 c)) (exp.f64 (*.f64 1/16 (*.f64 t z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.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 +.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)) (*.f64 (*.f64 a b) -1/4))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 a 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 (*.f64 a 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 (*.f64 a b) -1/4) 3) (pow.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)) 3)) (+.f64 (pow.f64 (*.f64 (*.f64 a b) -1/4) 2) (-.f64 (pow.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)) 2) (*.f64 (*.f64 (*.f64 a 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 (*.f64 a b) -1/4) 2) (pow.f64 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)) 2)) (-.f64 (*.f64 (*.f64 a 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 (*.f64 a 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 (*.f64 a b) -1/4))))))) (#(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 (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))))))

simplify100.0ms (0.5%)

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

Useful iterations: 2 (0.0ms)

IterNodesCost
0241814
1521760
21081622
32071622
42191622
Stop Event
saturated
Counts
181 → 76
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 (*.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 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)
(+.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 1/16 (*.f64 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/4 (*.f64 a b) (fma.f64 t (*.f64 1/16 z) c)))
(fma.f64 t (*.f64 1/16 z) (fma.f64 -1/4 (*.f64 a b) (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/4 (*.f64 a b) (fma.f64 t (*.f64 1/16 z) c)))
(fma.f64 t (*.f64 1/16 z) (fma.f64 -1/4 (*.f64 a b) (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/4 (*.f64 a b) (fma.f64 t (*.f64 1/16 z) c)))
(fma.f64 t (*.f64 1/16 z) (fma.f64 -1/4 (*.f64 a b) (fma.f64 y x 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/4 (*.f64 a b) (fma.f64 t (*.f64 1/16 z) c)))
(fma.f64 t (*.f64 1/16 z) (fma.f64 -1/4 (*.f64 a b) (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/4 (*.f64 a b) (fma.f64 t (*.f64 1/16 z) c)))
(fma.f64 t (*.f64 1/16 z) (fma.f64 -1/4 (*.f64 a b) (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/4 (*.f64 a b) (fma.f64 t (*.f64 1/16 z) c)))
(fma.f64 t (*.f64 1/16 z) (fma.f64 -1/4 (*.f64 a b) (fma.f64 y x 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/4 (*.f64 a b) (fma.f64 t (*.f64 1/16 z) c)))
(fma.f64 t (*.f64 1/16 z) (fma.f64 -1/4 (*.f64 a b) (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/4 (*.f64 a b) (fma.f64 t (*.f64 1/16 z) c)))
(fma.f64 t (*.f64 1/16 z) (fma.f64 -1/4 (*.f64 a b) (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/4 (*.f64 a b) (fma.f64 t (*.f64 1/16 z) c)))
(fma.f64 t (*.f64 1/16 z) (fma.f64 -1/4 (*.f64 a b) (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 1/16 (*.f64 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/4 (*.f64 a b) (fma.f64 t (*.f64 1/16 z) c)))
(fma.f64 t (*.f64 1/16 z) (fma.f64 -1/4 (*.f64 a b) (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/4 (*.f64 a b) (fma.f64 t (*.f64 1/16 z) c)))
(fma.f64 t (*.f64 1/16 z) (fma.f64 -1/4 (*.f64 a b) (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/4 (*.f64 a b) (fma.f64 t (*.f64 1/16 z) c)))
(fma.f64 t (*.f64 1/16 z) (fma.f64 -1/4 (*.f64 a b) (fma.f64 y x 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/4 (*.f64 a b) (fma.f64 t (*.f64 1/16 z) c)))
(fma.f64 t (*.f64 1/16 z) (fma.f64 -1/4 (*.f64 a b) (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/4 (*.f64 a b) (fma.f64 t (*.f64 1/16 z) c)))
(fma.f64 t (*.f64 1/16 z) (fma.f64 -1/4 (*.f64 a b) (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/4 (*.f64 a b) (fma.f64 t (*.f64 1/16 z) c)))
(fma.f64 t (*.f64 1/16 z) (fma.f64 -1/4 (*.f64 a b) (fma.f64 y x 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/4 (*.f64 a b) (fma.f64 t (*.f64 1/16 z) c)))
(fma.f64 t (*.f64 1/16 z) (fma.f64 -1/4 (*.f64 a b) (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/4 (*.f64 a b) (fma.f64 t (*.f64 1/16 z) c)))
(fma.f64 t (*.f64 1/16 z) (fma.f64 -1/4 (*.f64 a b) (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/4 (*.f64 a b) (fma.f64 t (*.f64 1/16 z) c)))
(fma.f64 t (*.f64 1/16 z) (fma.f64 -1/4 (*.f64 a b) (fma.f64 y x 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))))
(fma.f64 -1/4 (*.f64 a b) (fma.f64 t (*.f64 1/16 z) 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/4 (*.f64 a b) (fma.f64 t (*.f64 1/16 z) c)))
(fma.f64 t (*.f64 1/16 z) (fma.f64 -1/4 (*.f64 a b) (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/4 (*.f64 a b) (fma.f64 t (*.f64 1/16 z) c)))
(fma.f64 t (*.f64 1/16 z) (fma.f64 -1/4 (*.f64 a b) (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/4 (*.f64 a b) (fma.f64 t (*.f64 1/16 z) c)))
(fma.f64 t (*.f64 1/16 z) (fma.f64 -1/4 (*.f64 a b) (fma.f64 y x 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/4 (*.f64 a b) (fma.f64 t (*.f64 1/16 z) c)))
(fma.f64 t (*.f64 1/16 z) (fma.f64 -1/4 (*.f64 a b) (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/4 (*.f64 a b) (fma.f64 t (*.f64 1/16 z) c)))
(fma.f64 t (*.f64 1/16 z) (fma.f64 -1/4 (*.f64 a b) (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/4 (*.f64 a b) (fma.f64 t (*.f64 1/16 z) c)))
(fma.f64 t (*.f64 1/16 z) (fma.f64 -1/4 (*.f64 a b) (fma.f64 y x 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/4 (*.f64 a b) (fma.f64 t (*.f64 1/16 z) c)))
(fma.f64 t (*.f64 1/16 z) (fma.f64 -1/4 (*.f64 a b) (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/4 (*.f64 a b) (fma.f64 t (*.f64 1/16 z) c)))
(fma.f64 t (*.f64 1/16 z) (fma.f64 -1/4 (*.f64 a b) (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/4 (*.f64 a b) (fma.f64 t (*.f64 1/16 z) c)))
(fma.f64 t (*.f64 1/16 z) (fma.f64 -1/4 (*.f64 a b) (fma.f64 y x 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))))
(fma.f64 -1/4 (*.f64 a b) (fma.f64 t (*.f64 1/16 z) 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/4 (*.f64 a b) (fma.f64 t (*.f64 1/16 z) c)))
(fma.f64 t (*.f64 1/16 z) (fma.f64 -1/4 (*.f64 a b) (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/4 (*.f64 a b) (fma.f64 t (*.f64 1/16 z) c)))
(fma.f64 t (*.f64 1/16 z) (fma.f64 -1/4 (*.f64 a b) (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/4 (*.f64 a b) (fma.f64 t (*.f64 1/16 z) c)))
(fma.f64 t (*.f64 1/16 z) (fma.f64 -1/4 (*.f64 a b) (fma.f64 y x 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/4 (*.f64 a b) (fma.f64 t (*.f64 1/16 z) c)))
(fma.f64 t (*.f64 1/16 z) (fma.f64 -1/4 (*.f64 a b) (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/4 (*.f64 a b) (fma.f64 t (*.f64 1/16 z) c)))
(fma.f64 t (*.f64 1/16 z) (fma.f64 -1/4 (*.f64 a b) (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/4 (*.f64 a b) (fma.f64 t (*.f64 1/16 z) c)))
(fma.f64 t (*.f64 1/16 z) (fma.f64 -1/4 (*.f64 a b) (fma.f64 y x 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/4 (*.f64 a b) (fma.f64 t (*.f64 1/16 z) c)))
(fma.f64 t (*.f64 1/16 z) (fma.f64 -1/4 (*.f64 a b) (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/4 (*.f64 a b) (fma.f64 t (*.f64 1/16 z) c)))
(fma.f64 t (*.f64 1/16 z) (fma.f64 -1/4 (*.f64 a b) (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/4 (*.f64 a b) (fma.f64 t (*.f64 1/16 z) c)))
(fma.f64 t (*.f64 1/16 z) (fma.f64 -1/4 (*.f64 a b) (fma.f64 y x 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))))
(fma.f64 -1/4 (*.f64 a b) (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/4 (*.f64 a b) (fma.f64 t (*.f64 1/16 z) c)))
(fma.f64 t (*.f64 1/16 z) (fma.f64 -1/4 (*.f64 a b) (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/4 (*.f64 a b) (fma.f64 t (*.f64 1/16 z) c)))
(fma.f64 t (*.f64 1/16 z) (fma.f64 -1/4 (*.f64 a b) (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/4 (*.f64 a b) (fma.f64 t (*.f64 1/16 z) c)))
(fma.f64 t (*.f64 1/16 z) (fma.f64 -1/4 (*.f64 a b) (fma.f64 y x 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/4 (*.f64 a b) (fma.f64 t (*.f64 1/16 z) c)))
(fma.f64 t (*.f64 1/16 z) (fma.f64 -1/4 (*.f64 a b) (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/4 (*.f64 a b) (fma.f64 t (*.f64 1/16 z) c)))
(fma.f64 t (*.f64 1/16 z) (fma.f64 -1/4 (*.f64 a b) (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/4 (*.f64 a b) (fma.f64 t (*.f64 1/16 z) c)))
(fma.f64 t (*.f64 1/16 z) (fma.f64 -1/4 (*.f64 a b) (fma.f64 y x 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/4 (*.f64 a b) (fma.f64 t (*.f64 1/16 z) c)))
(fma.f64 t (*.f64 1/16 z) (fma.f64 -1/4 (*.f64 a b) (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/4 (*.f64 a b) (fma.f64 t (*.f64 1/16 z) c)))
(fma.f64 t (*.f64 1/16 z) (fma.f64 -1/4 (*.f64 a b) (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/4 (*.f64 a b) (fma.f64 t (*.f64 1/16 z) c)))
(fma.f64 t (*.f64 1/16 z) (fma.f64 -1/4 (*.f64 a b) (fma.f64 y x 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))))
(fma.f64 -1/4 (*.f64 a b) (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/4 (*.f64 a b) (fma.f64 t (*.f64 1/16 z) c)))
(fma.f64 t (*.f64 1/16 z) (fma.f64 -1/4 (*.f64 a b) (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/4 (*.f64 a b) (fma.f64 t (*.f64 1/16 z) c)))
(fma.f64 t (*.f64 1/16 z) (fma.f64 -1/4 (*.f64 a b) (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/4 (*.f64 a b) (fma.f64 t (*.f64 1/16 z) c)))
(fma.f64 t (*.f64 1/16 z) (fma.f64 -1/4 (*.f64 a b) (fma.f64 y x 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/4 (*.f64 a b) (fma.f64 t (*.f64 1/16 z) c)))
(fma.f64 t (*.f64 1/16 z) (fma.f64 -1/4 (*.f64 a b) (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/4 (*.f64 a b) (fma.f64 t (*.f64 1/16 z) c)))
(fma.f64 t (*.f64 1/16 z) (fma.f64 -1/4 (*.f64 a b) (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/4 (*.f64 a b) (fma.f64 t (*.f64 1/16 z) c)))
(fma.f64 t (*.f64 1/16 z) (fma.f64 -1/4 (*.f64 a b) (fma.f64 y x 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/4 (*.f64 a b) (fma.f64 t (*.f64 1/16 z) c)))
(fma.f64 t (*.f64 1/16 z) (fma.f64 -1/4 (*.f64 a b) (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/4 (*.f64 a b) (fma.f64 t (*.f64 1/16 z) c)))
(fma.f64 t (*.f64 1/16 z) (fma.f64 -1/4 (*.f64 a b) (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/4 (*.f64 a b) (fma.f64 t (*.f64 1/16 z) c)))
(fma.f64 t (*.f64 1/16 z) (fma.f64 -1/4 (*.f64 a b) (fma.f64 y x 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 1/16 (*.f64 t z) (fma.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 (fma.f64 y x (fma.f64 1/16 (*.f64 t z) (*.f64 -1/4 (*.f64 a b)))))
(fma.f64 y x (fma.f64 -1/4 (*.f64 a b) (fma.f64 t (*.f64 1/16 z) c)))
(fma.f64 t (*.f64 1/16 z) (fma.f64 -1/4 (*.f64 a b) (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/4 (*.f64 a b) (fma.f64 t (*.f64 1/16 z) c)))
(fma.f64 t (*.f64 1/16 z) (fma.f64 -1/4 (*.f64 a b) (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/4 (*.f64 a b) (fma.f64 t (*.f64 1/16 z) c)))
(fma.f64 t (*.f64 1/16 z) (fma.f64 -1/4 (*.f64 a b) (fma.f64 y x 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/4 (*.f64 a b) (fma.f64 t (*.f64 1/16 z) c)))
(fma.f64 t (*.f64 1/16 z) (fma.f64 -1/4 (*.f64 a b) (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/4 (*.f64 a b) (fma.f64 t (*.f64 1/16 z) c)))
(fma.f64 t (*.f64 1/16 z) (fma.f64 -1/4 (*.f64 a b) (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/4 (*.f64 a b) (fma.f64 t (*.f64 1/16 z) c)))
(fma.f64 t (*.f64 1/16 z) (fma.f64 -1/4 (*.f64 a b) (fma.f64 y x 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/4 (*.f64 a b) (fma.f64 t (*.f64 1/16 z) c)))
(fma.f64 t (*.f64 1/16 z) (fma.f64 -1/4 (*.f64 a b) (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/4 (*.f64 a b) (fma.f64 t (*.f64 1/16 z) c)))
(fma.f64 t (*.f64 1/16 z) (fma.f64 -1/4 (*.f64 a b) (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/4 (*.f64 a b) (fma.f64 t (*.f64 1/16 z) c)))
(fma.f64 t (*.f64 1/16 z) (fma.f64 -1/4 (*.f64 a b) (fma.f64 y x c)))

localize17.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (*.f64 y x) c)
Compiler

Compiled 18 to 9 computations (50% saved)

series5.0ms (0%)

Counts
1 → 36
Calls

9 calls:

TimeVariablePointExpression
1.0ms
y
@0
(+.f64 (*.f64 y x) c)
1.0ms
c
@-inf
(+.f64 (*.f64 y x) c)
1.0ms
y
@-inf
(+.f64 (*.f64 y x) c)
1.0ms
x
@-inf
(+.f64 (*.f64 y x) c)
1.0ms
y
@inf
(+.f64 (*.f64 y x) c)

rewrite72.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
707×pow1_binary64
655×add-log-exp_binary64
655×log1p-expm1-u_binary64
655×expm1-log1p-u_binary64
640×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
065
11295
217755
Stop Event
node limit
Counts
1 → 35
Calls
Call 1
Inputs
(+.f64 (*.f64 y x) c)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (fma.f64 y x c)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (*.f64 y x) 2) (-.f64 (*.f64 y x) c)) (/.f64 (*.f64 c c) (-.f64 (*.f64 y x) c)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 y x c) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 y x c))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 y x c)) (pow.f64 (cbrt.f64 (fma.f64 y x c)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 y x c)) 2) (cbrt.f64 (fma.f64 y x c)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 y x c)) (sqrt.f64 (fma.f64 y x c)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 c 3)) (/.f64 1 (+.f64 (pow.f64 (*.f64 y x) 2) (*.f64 c (-.f64 c (*.f64 y x))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (*.f64 c c)) (/.f64 1 (-.f64 (*.f64 y x) c)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (pow.f64 (*.f64 y x) 2) (*.f64 c (-.f64 c (*.f64 y x)))) (+.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 c 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 (*.f64 y x) c) (-.f64 (pow.f64 (*.f64 y x) 2) (*.f64 c c))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 c 3)) (+.f64 (pow.f64 (*.f64 y x) 2) (*.f64 c (-.f64 c (*.f64 y x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 c 3)) (+.f64 (*.f64 c c) (-.f64 (pow.f64 (*.f64 y x) 2) (*.f64 y (*.f64 x c)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (*.f64 c c)) (-.f64 (*.f64 y x) c))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 c 3))) (neg.f64 (+.f64 (pow.f64 (*.f64 y x) 2) (*.f64 c (-.f64 c (*.f64 y x))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (*.f64 c c))) (neg.f64 (-.f64 (*.f64 y x) c)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 c c) (pow.f64 (*.f64 y x) 2)) (-.f64 c (*.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 y x c) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 y x c) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 y x c)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 y x c)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 y x c) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 y x c)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 y x c) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 y x c)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 y x c)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 y x c)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y x c)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x y c)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 y x) c)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 c (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 c) 2) (cbrt.f64 c) (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 y x)) 2) (cbrt.f64 (*.f64 y x)) c)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 c) (sqrt.f64 c) (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 y x)) (sqrt.f64 (*.f64 y x)) c)))))

simplify23.0ms (0.1%)

Algorithm
egg-herbie
Rules
fma-def_binary64
+-commutative_binary64
*-commutative_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
06213
18159
210159
Stop Event
saturated
Counts
71 → 38
Calls
Call 1
Inputs
c
(+.f64 c (*.f64 y x))
(+.f64 c (*.f64 y x))
(+.f64 c (*.f64 y x))
(*.f64 y x)
(+.f64 c (*.f64 y x))
(+.f64 c (*.f64 y x))
(+.f64 c (*.f64 y x))
(*.f64 y x)
(+.f64 c (*.f64 y x))
(+.f64 c (*.f64 y x))
(+.f64 c (*.f64 y x))
c
(+.f64 c (*.f64 y x))
(+.f64 c (*.f64 y x))
(+.f64 c (*.f64 y x))
(*.f64 y x)
(+.f64 c (*.f64 y x))
(+.f64 c (*.f64 y x))
(+.f64 c (*.f64 y x))
(*.f64 y x)
(+.f64 c (*.f64 y x))
(+.f64 c (*.f64 y x))
(+.f64 c (*.f64 y x))
(*.f64 y x)
(+.f64 c (*.f64 y x))
(+.f64 c (*.f64 y x))
(+.f64 c (*.f64 y x))
c
(+.f64 c (*.f64 y x))
(+.f64 c (*.f64 y x))
(+.f64 c (*.f64 y x))
c
(+.f64 c (*.f64 y x))
(+.f64 c (*.f64 y x))
(+.f64 c (*.f64 y x))
Outputs
c
(+.f64 c (*.f64 y x))
(fma.f64 y x c)
(+.f64 c (*.f64 y x))
(fma.f64 y x c)
(+.f64 c (*.f64 y x))
(fma.f64 y x c)
(*.f64 y x)
(+.f64 c (*.f64 y x))
(fma.f64 y x c)
(+.f64 c (*.f64 y x))
(fma.f64 y x c)
(+.f64 c (*.f64 y x))
(fma.f64 y x c)
(*.f64 y x)
(+.f64 c (*.f64 y x))
(fma.f64 y x c)
(+.f64 c (*.f64 y x))
(fma.f64 y x c)
(+.f64 c (*.f64 y x))
(fma.f64 y x c)
c
(+.f64 c (*.f64 y x))
(fma.f64 y x c)
(+.f64 c (*.f64 y x))
(fma.f64 y x c)
(+.f64 c (*.f64 y x))
(fma.f64 y x c)
(*.f64 y x)
(+.f64 c (*.f64 y x))
(fma.f64 y x c)
(+.f64 c (*.f64 y x))
(fma.f64 y x c)
(+.f64 c (*.f64 y x))
(fma.f64 y x c)
(*.f64 y x)
(+.f64 c (*.f64 y x))
(fma.f64 y x c)
(+.f64 c (*.f64 y x))
(fma.f64 y x c)
(+.f64 c (*.f64 y x))
(fma.f64 y x c)
(*.f64 y x)
(+.f64 c (*.f64 y x))
(fma.f64 y x c)
(+.f64 c (*.f64 y x))
(fma.f64 y x c)
(+.f64 c (*.f64 y x))
(fma.f64 y x c)
c
(+.f64 c (*.f64 y x))
(fma.f64 y x c)
(+.f64 c (*.f64 y x))
(fma.f64 y x c)
(+.f64 c (*.f64 y x))
(fma.f64 y x c)
c
(+.f64 c (*.f64 y x))
(fma.f64 y x c)
(+.f64 c (*.f64 y x))
(fma.f64 y x c)
(+.f64 c (*.f64 y x))
(fma.f64 y x c)

localize25.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)

series6.0ms (0%)

Counts
1 → 36
Calls

9 calls:

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

rewrite86.0ms (0.4%)

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)))))

simplify28.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)

localize30.0ms (0.1%)

Local error

Found 3 expressions with local error:

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

Compiled 40 to 16 computations (60% saved)

series17.0ms (0.1%)

Counts
3 → 42
Calls

30 calls:

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

rewrite144.0ms (0.7%)

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
01230
126726
2379624
Stop Event
node limit
Counts
3 → 232
Calls
Call 1
Inputs
(-.f64 (+.f64 c (*.f64 y x)) (*.f64 1/4 (*.f64 a b)))
(+.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)))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 y x c))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 c c) (-.f64 c (*.f64 y x))) (/.f64 (pow.f64 (*.f64 y x) 2) (-.f64 c (*.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 y x c) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 y x c))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 y x c)) (pow.f64 (cbrt.f64 (fma.f64 y x c)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 y x c)) 2) (cbrt.f64 (fma.f64 y x c)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 y x c)) (sqrt.f64 (fma.f64 y x c)))))) (#(struct:change #<rule egg-rr> (2) ((x *.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))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 c c) (pow.f64 (*.f64 y x) 2)) (/.f64 1 (-.f64 c (*.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 c c (*.f64 (*.f64 y x) (fma.f64 y x (neg.f64 c)))) (+.f64 (pow.f64 c 3) (pow.f64 (*.f64 y x) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 c (*.f64 y x)) (-.f64 (*.f64 c c) (pow.f64 (*.f64 y x) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 c 3) (pow.f64 (*.f64 y x) 3)) (fma.f64 c c (*.f64 (*.f64 y x) (fma.f64 y x (neg.f64 c)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 c 3) (pow.f64 (*.f64 y x) 3)) (+.f64 (pow.f64 (*.f64 y x) 2) (-.f64 (*.f64 c c) (*.f64 (*.f64 c y) x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 c c) (pow.f64 (*.f64 y x) 2)) (-.f64 c (*.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 c 3) (pow.f64 (*.f64 y x) 3))) (neg.f64 (fma.f64 c c (*.f64 (*.f64 y x) (fma.f64 y x (neg.f64 c))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (*.f64 c c) (pow.f64 (*.f64 y x) 2))) (neg.f64 (-.f64 c (*.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (*.f64 c c)) (fma.f64 y x (neg.f64 c)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 y x c) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 y x c) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 y x c)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 y x c)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 y x c) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 c c (*.f64 (*.f64 y x) (fma.f64 y x (neg.f64 c)))) (+.f64 (pow.f64 c 3) (pow.f64 (*.f64 y x) 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (-.f64 c (*.f64 y x)) (-.f64 (*.f64 c c) (pow.f64 (*.f64 y x) 2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 y x c) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 y x c)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 y x c))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 c)) (pow.f64 (exp.f64 y) x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 c) (+.f64 1 (expm1.f64 (*.f64 y x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 c)) (+.f64 1 (expm1.f64 (*.f64 y x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 y x))) (exp.f64 c)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 y) x) (+.f64 1 (expm1.f64 c))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 y x))) (+.f64 1 (expm1.f64 c))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 y x c) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 y x c)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 y x c)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 y x c)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 y x c)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 c 1 (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y x c)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x y c)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y x) 1 c)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 c (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.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) c)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 y x)) 2) (cbrt.f64 (*.f64 y x)) c)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 c) (pow.f64 (cbrt.f64 c) 2) (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 c) 2) (cbrt.f64 c) (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 y) 2) (*.f64 (cbrt.f64 y) x) c)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (*.f64 (cbrt.f64 x) y) c)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 y x)) (sqrt.f64 (*.f64 y x)) c)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 c) (sqrt.f64 c) (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 y) (*.f64 (sqrt.f64 y) x) c)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) y) c)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 x) c)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y (sqrt.f64 x)) (sqrt.f64 x) c)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (pow.f64 (cbrt.f64 y) 2)) (cbrt.f64 y) c)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (sqrt.f64 y)) (sqrt.f64 y) c)))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 1/4 (*.f64 a b)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 a) b) 1/4)) 2)) (log.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 a) b) 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 a) b) 1/4))) (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 a) b) 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 1/4 (*.f64 a b)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 1/4 (*.f64 a b)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (*.f64 a b) 2) 1/16) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 1/4 (*.f64 a b))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sqrt.f64 (*.f64 a b)) 1/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (*.f64 a b) 3) 1/64) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (pow.f64 (*.f64 a b) 2) 1/16))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (pow.f64 (exp.f64 a) b) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 1/4 (*.f64 a b)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (*.f64 a b) 3) 1/64))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 1/4 (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 1/4 (*.f64 a b))) 1))))))

simplify86.0ms (0.4%)

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
017367
136363
280323
3188323
4284323
5430323
6708323
7980323
81233323
91627323
101648323
Stop Event
saturated
Counts
274 → 243
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))))
(*.f64 y x)
c
c
c
(*.f64 y x)
(*.f64 y x)
c
(*.f64 y x)
(*.f64 y x)
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))
(*.f64 y x)
c
c
c
(*.f64 y x)
(*.f64 y x)
c
(*.f64 y x)
(*.f64 y x)

localize25.0ms (0.1%)

Local error

Found 1 expressions with local error:

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

Compiled 38 to 18 computations (52.6% saved)

series4.0ms (0%)

Counts
1 → 9
Calls

9 calls:

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

rewrite90.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
904×pow1_binary64
843×add-log-exp_binary64
843×log1p-expm1-u_binary64
843×expm1-log1p-u_binary64
826×add-exp-log_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0810
11728
222788
Stop Event
node limit
Counts
1 → 36
Calls
Call 1
Inputs
(+.f64 c (*.f64 1/16 (*.f64 t z)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (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 (+.f64 (pow.f64 c 3) (*.f64 (pow.f64 (*.f64 t z) 3) 1/4096)) (/.f64 1 (fma.f64 c c (*.f64 (*.f64 1/16 (*.f64 t z)) (-.f64 (*.f64 1/16 (*.f64 t z)) 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)) (-.f64 (*.f64 1/16 (*.f64 t z)) c))) (+.f64 (pow.f64 c 3) (*.f64 (pow.f64 (*.f64 t z) 3) 1/4096))))))) (#(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 (+.f64 (pow.f64 c 3) (*.f64 (pow.f64 (*.f64 t z) 3) 1/4096)) (fma.f64 c c (*.f64 (*.f64 1/16 (*.f64 t z)) (-.f64 (*.f64 1/16 (*.f64 t z)) c))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 c 3) (*.f64 (pow.f64 (*.f64 t z) 3) 1/4096)) (+.f64 (*.f64 (pow.f64 (*.f64 t z) 2) 1/256) (-.f64 (*.f64 c c) (*.f64 c (*.f64 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 (+.f64 (pow.f64 c 3) (*.f64 (pow.f64 (*.f64 t z) 3) 1/4096))) (neg.f64 (fma.f64 c c (*.f64 (*.f64 1/16 (*.f64 t z)) (-.f64 (*.f64 1/16 (*.f64 t z)) 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 (-.f64 (*.f64 (pow.f64 (*.f64 t z) 2) 1/256) (*.f64 c c)) (-.f64 (*.f64 1/16 (*.f64 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) 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 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 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 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 (pow.f64 (cbrt.f64 c) 2) (cbrt.f64 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 (sqrt.f64 c) (sqrt.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 (*.f64 1/16 t) z c)))))

simplify18.0ms (0.1%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
0739
11139
21839
32039
Stop Event
saturated
Counts
45 → 38
Calls
Call 1
Inputs
(*.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 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))

eval248.0ms (1.2%)

Compiler

Compiled 7630 to 3402 computations (55.4% saved)

prune162.0ms (0.8%)

Pruning

12 alts after pruning (10 fresh and 2 done)

PrunedKeptTotal
New4287435
Fresh235
Picked101
Done224
Total43312445
Error
0b
Counts
445 → 12
Alt Table
Click to see full alt table
StatusErrorProgram
29.9b
(fma.f64 (*.f64 b -1/4) a c)
29.3b
(+.f64 (*.f64 1/16 (*.f64 t z)) c)
18.1b
(fma.f64 a (*.f64 b -1/4) (fma.f64 y x (*.f64 1/16 (*.f64 t z))))
34.5b
(-.f64 (*.f64 y x) (*.f64 1/4 (*.f64 a b)))
49.7b
(*.f64 y x)
16.0b
(+.f64 (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) c)
31.9b
(+.f64 (*.f64 y x) c)
31.9b
(fma.f64 y x c)
45.0b
c
13.7b
(-.f64 (+.f64 c (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
29.9b
(+.f64 (*.f64 a (*.f64 b -1/4)) c)
47.4b
(*.f64 a (*.f64 b -1/4))
Compiler

Compiled 302 to 229 computations (24.2% saved)

localize19.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(*.f64 1/4 (*.f64 a b))
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)

series5.0ms (0%)

Counts
1 → 33
Calls

15 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
t
@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
t
@-inf
(-.f64 (+.f64 c (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))

rewrite92.0ms (0.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
01419
130817
2426715
Stop Event
node limit
Counts
1 → 157
Calls
Call 1
Inputs
(-.f64 (+.f64 c (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
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))))))

simplify68.0ms (0.3%)

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
019418
141414
295374
3224374
4337374
5541374
6883374
71255374
81579374
92006374
102027374
Stop Event
saturated
Counts
190 → 170
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))))
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))

localize5.0ms (0%)

Compiler

Compiled 12 to 8 computations (33.3% saved)

localize10.0ms (0%)

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)

series3.0ms (0%)

Counts
1 → 36
Calls

9 calls:

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

rewrite57.0ms (0.3%)

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)

localize16.0ms (0.1%)

Local error

Found 2 expressions with local error:

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

Compiled 44 to 19 computations (56.8% saved)

series8.0ms (0%)

Counts
2 → 72
Calls

27 calls:

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

rewrite85.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
706×fma-def_binary64
667×log-prod_binary64
354×pow2_binary64
325×fma-neg_binary64
244×pow1/3_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01225
126323
2367223
Stop Event
node limit
Counts
2 → 181
Calls
Call 1
Inputs
(+.f64 (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) c)
(+.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 t (*.f64 z 1/16) (fma.f64 y x c)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (fma.f64 y x (*.f64 t (*.f64 z 1/16))) 2) (-.f64 (fma.f64 y x (*.f64 t (*.f64 z 1/16))) c)) (/.f64 (*.f64 c c) (-.f64 (fma.f64 y x (*.f64 t (*.f64 z 1/16))) c)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 t (*.f64 z 1/16) (fma.f64 y x c)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 t (*.f64 z 1/16) (fma.f64 y x c)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 t (*.f64 z 1/16) (fma.f64 y x c))) (pow.f64 (cbrt.f64 (fma.f64 t (*.f64 z 1/16) (fma.f64 y x c))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 t (*.f64 z 1/16) (fma.f64 y x c))) 2) (cbrt.f64 (fma.f64 t (*.f64 z 1/16) (fma.f64 y x c))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 t (*.f64 z 1/16) (fma.f64 y x c))) (sqrt.f64 (fma.f64 t (*.f64 z 1/16) (fma.f64 y x c))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (fma.f64 y x (*.f64 t (*.f64 z 1/16))) 3) (pow.f64 c 3)) (/.f64 1 (fma.f64 c (-.f64 c (fma.f64 y x (*.f64 t (*.f64 z 1/16)))) (pow.f64 (fma.f64 y x (*.f64 t (*.f64 z 1/16))) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (fma.f64 y x (*.f64 t (*.f64 z 1/16))) 2) (*.f64 c c)) (/.f64 1 (-.f64 (fma.f64 y x (*.f64 t (*.f64 z 1/16))) c)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 c (-.f64 c (fma.f64 y x (*.f64 t (*.f64 z 1/16)))) (pow.f64 (fma.f64 y x (*.f64 t (*.f64 z 1/16))) 2)) (+.f64 (pow.f64 (fma.f64 y x (*.f64 t (*.f64 z 1/16))) 3) (pow.f64 c 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 (fma.f64 y x (*.f64 t (*.f64 z 1/16))) c) (-.f64 (pow.f64 (fma.f64 y x (*.f64 t (*.f64 z 1/16))) 2) (*.f64 c c))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (fma.f64 y x (*.f64 t (*.f64 z 1/16))) 3) (pow.f64 c 3)) (fma.f64 c (-.f64 c (fma.f64 y x (*.f64 t (*.f64 z 1/16)))) (pow.f64 (fma.f64 y x (*.f64 t (*.f64 z 1/16))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (fma.f64 y x (*.f64 t (*.f64 z 1/16))) 3) (pow.f64 c 3)) (fma.f64 c c (-.f64 (pow.f64 (fma.f64 y x (*.f64 t (*.f64 z 1/16))) 2) (*.f64 (fma.f64 y x (*.f64 t (*.f64 z 1/16))) c))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (fma.f64 y x (*.f64 t (*.f64 z 1/16))) 2) (*.f64 c c)) (-.f64 (fma.f64 y x (*.f64 t (*.f64 z 1/16))) c))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 (fma.f64 y x (*.f64 t (*.f64 z 1/16))) 3) (pow.f64 c 3))) (neg.f64 (fma.f64 c (-.f64 c (fma.f64 y x (*.f64 t (*.f64 z 1/16)))) (pow.f64 (fma.f64 y x (*.f64 t (*.f64 z 1/16))) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (fma.f64 y x (*.f64 t (*.f64 z 1/16))) 2) (*.f64 c c))) (neg.f64 (-.f64 (fma.f64 y x (*.f64 t (*.f64 z 1/16))) 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 /.f64 (-.f64 (*.f64 c c) (pow.f64 (fma.f64 y x (*.f64 t (*.f64 z 1/16))) 2)) (-.f64 c (fma.f64 y x (*.f64 t (*.f64 z 1/16)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 t (*.f64 z 1/16) (fma.f64 y x c)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 t (*.f64 z 1/16) (fma.f64 y x c)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 t (*.f64 z 1/16) (fma.f64 y x c)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 t (*.f64 z 1/16) (fma.f64 y x c))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 t (*.f64 z 1/16) (fma.f64 y x c))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 c (-.f64 c (fma.f64 y x (*.f64 t (*.f64 z 1/16)))) (pow.f64 (fma.f64 y x (*.f64 t (*.f64 z 1/16))) 2)) (+.f64 (pow.f64 (fma.f64 y x (*.f64 t (*.f64 z 1/16))) 3) (pow.f64 c 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (-.f64 (fma.f64 y x (*.f64 t (*.f64 z 1/16))) c) (-.f64 (pow.f64 (fma.f64 y x (*.f64 t (*.f64 z 1/16))) 2) (*.f64 c c))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 t (*.f64 z 1/16) (fma.f64 y x c)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 t (*.f64 z 1/16) (fma.f64 y x c))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 t (*.f64 z 1/16) (fma.f64 y x c)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 y x))) (exp.f64 (fma.f64 1/16 (*.f64 t z) c))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 y) x) (*.f64 (pow.f64 (pow.f64 (exp.f64 t) z) 1/16) (exp.f64 c))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 y x))) (*.f64 (pow.f64 (pow.f64 (exp.f64 t) z) 1/16) (exp.f64 c))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 y x (*.f64 t (*.f64 z 1/16))))) (exp.f64 c)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 y x (*.f64 t (*.f64 z 1/16)))) (+.f64 1 (expm1.f64 c))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 y x (*.f64 t (*.f64 z 1/16))))) (+.f64 1 (expm1.f64 c))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 c)) (exp.f64 (fma.f64 y x (*.f64 t (*.f64 z 1/16))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 c) (+.f64 1 (expm1.f64 (fma.f64 y x (*.f64 t (*.f64 z 1/16)))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 c)) (+.f64 1 (expm1.f64 (fma.f64 y x (*.f64 t (*.f64 z 1/16)))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 1/16 (*.f64 t z) c)) (pow.f64 (exp.f64 y) x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (*.f64 (pow.f64 (pow.f64 (exp.f64 t) z) 1/16) (exp.f64 c)) (pow.f64 (exp.f64 y) x)))))) (#(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 y x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (*.f64 (pow.f64 (pow.f64 (exp.f64 t) z) 1/16) (exp.f64 c)) (+.f64 1 (expm1.f64 (*.f64 y x)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 t (*.f64 z 1/16) (fma.f64 y x c)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 t (*.f64 z 1/16) (fma.f64 y x c))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 t (*.f64 z 1/16) (fma.f64 y x c))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 t (*.f64 z 1/16) (fma.f64 y x c))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 t (*.f64 z 1/16) (fma.f64 y x c))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y x (fma.f64 1/16 (*.f64 t z) c))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y x (*.f64 (fma.f64 1/16 (*.f64 t z) c) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x y (fma.f64 1/16 (*.f64 t z) c))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x y (*.f64 (fma.f64 1/16 (*.f64 t z) c) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y x) 1 (fma.f64 1/16 (*.f64 t z) c))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y x) 1 (*.f64 (fma.f64 1/16 (*.f64 t z) c) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1/16 (*.f64 t z) (fma.f64 y x c))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 t (*.f64 z 1/16) (fma.f64 y x c))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 z (*.f64 1/16 t) (fma.f64 y x c))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 t z) 1/16 (fma.f64 y x c))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 t (*.f64 z 1/16)) 1 (fma.f64 y x c))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 y x (*.f64 t (*.f64 z 1/16))) 1 c)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 c 1 (fma.f64 y x (*.f64 t (*.f64 z 1/16))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 y x) (fma.f64 1/16 (*.f64 t z) c))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 y x) (*.f64 (fma.f64 1/16 (*.f64 t z) c) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 t (*.f64 z 1/16)) (fma.f64 y x c))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 y x (*.f64 t (*.f64 z 1/16))) c)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 c (fma.f64 y x (*.f64 t (*.f64 z 1/16))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 1/16 (*.f64 t z) c) (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 c) (pow.f64 (cbrt.f64 c) 2) (fma.f64 y x (*.f64 t (*.f64 z 1/16))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 c) 2) (cbrt.f64 c) (fma.f64 y x (*.f64 t (*.f64 z 1/16))))))) (#(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 y x c))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 y) 2) (*.f64 (cbrt.f64 y) x) (fma.f64 1/16 (*.f64 t z) c))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 y) 2) (*.f64 (cbrt.f64 y) x) (*.f64 (fma.f64 1/16 (*.f64 t z) c) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 t (*.f64 z 1/16))) (pow.f64 (cbrt.f64 (*.f64 t (*.f64 z 1/16))) 2) (fma.f64 y x c))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 t (*.f64 z 1/16))) 2) (cbrt.f64 (*.f64 t (*.f64 z 1/16))) (fma.f64 y x c))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (*.f64 (cbrt.f64 x) y) (fma.f64 1/16 (*.f64 t z) c))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (*.f64 (cbrt.f64 x) y) (*.f64 (fma.f64 1/16 (*.f64 t z) c) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 y x (*.f64 t (*.f64 z 1/16)))) (pow.f64 (cbrt.f64 (fma.f64 y x (*.f64 t (*.f64 z 1/16)))) 2) c)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 y x (*.f64 t (*.f64 z 1/16)))) 2) (cbrt.f64 (fma.f64 y x (*.f64 t (*.f64 z 1/16)))) c)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 y x)) (pow.f64 (cbrt.f64 (*.f64 y x)) 2) (fma.f64 1/16 (*.f64 t z) c))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 y x)) (pow.f64 (cbrt.f64 (*.f64 y x)) 2) (*.f64 (fma.f64 1/16 (*.f64 t z) c) 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 1/16 (*.f64 t z) c))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 y x)) 2) (cbrt.f64 (*.f64 y x)) (*.f64 (fma.f64 1/16 (*.f64 t z) c) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 c) (sqrt.f64 c) (fma.f64 y x (*.f64 t (*.f64 z 1/16))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 t z)) (*.f64 (sqrt.f64 (*.f64 t z)) 1/16) (fma.f64 y x c))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 y) (*.f64 (sqrt.f64 y) x) (fma.f64 1/16 (*.f64 t z) c))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 y) (*.f64 (sqrt.f64 y) x) (*.f64 (fma.f64 1/16 (*.f64 t z) c) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 t (*.f64 z 1/16))) (sqrt.f64 (*.f64 t (*.f64 z 1/16))) (fma.f64 y x c))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) y) (fma.f64 1/16 (*.f64 t z) c))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) y) (*.f64 (fma.f64 1/16 (*.f64 t z) c) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 y x (*.f64 t (*.f64 z 1/16)))) (sqrt.f64 (fma.f64 y x (*.f64 t (*.f64 z 1/16)))) c)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 y x)) (sqrt.f64 (*.f64 y x)) (fma.f64 1/16 (*.f64 t z) c))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 y x)) (sqrt.f64 (*.f64 y x)) (*.f64 (fma.f64 1/16 (*.f64 t z) c) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (pow.f64 (*.f64 t z) 3) 1/4096 (pow.f64 (*.f64 y x) 3)) (/.f64 1 (fma.f64 (*.f64 t (*.f64 z 1/16)) (-.f64 (*.f64 t (*.f64 z 1/16)) (*.f64 y x)) (pow.f64 (*.f64 y x) 2))) c)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 t (*.f64 z 1/16)) 2)) (/.f64 1 (fma.f64 y x (*.f64 -1/16 (*.f64 t z)))) c)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 1/16 t) z (fma.f64 y x c))))) (#(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 y x))))) (#(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 y x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 x) (fma.f64 1/16 (*.f64 t z) c))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 x) (*.f64 (fma.f64 1/16 (*.f64 t z) c) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y (sqrt.f64 x)) (sqrt.f64 x) (fma.f64 1/16 (*.f64 t z) c))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y (sqrt.f64 x)) (sqrt.f64 x) (*.f64 (fma.f64 1/16 (*.f64 t z) c) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (pow.f64 (cbrt.f64 y) 2)) (cbrt.f64 y) (fma.f64 1/16 (*.f64 t z) c))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (pow.f64 (cbrt.f64 y) 2)) (cbrt.f64 y) (*.f64 (fma.f64 1/16 (*.f64 t z) c) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (sqrt.f64 y)) (sqrt.f64 y) (fma.f64 1/16 (*.f64 t z) c))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (sqrt.f64 y)) (sqrt.f64 y) (*.f64 (fma.f64 1/16 (*.f64 t z) c) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 1/16 z) t (fma.f64 y x c))))) (#(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 y x c))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 1/16 (sqrt.f64 (*.f64 t z))) (sqrt.f64 (*.f64 t z)) (fma.f64 y x c))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 1/16 t) 1) z (fma.f64 y x c))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 1/16 t) (pow.f64 (cbrt.f64 z) 2)) (cbrt.f64 z) (fma.f64 y x c))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 1/16 t) (sqrt.f64 z)) (sqrt.f64 z) (fma.f64 y x c))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 y x (*.f64 t (*.f64 z 1/16))))) 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 t (*.f64 z 1/16)) 2) (fma.f64 y x (*.f64 -1/16 (*.f64 t z)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 y x (*.f64 t (*.f64 z 1/16))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 y x (*.f64 t (*.f64 z 1/16))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 y x (*.f64 t (*.f64 z 1/16)))) (pow.f64 (cbrt.f64 (fma.f64 y x (*.f64 t (*.f64 z 1/16)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 y x (*.f64 t (*.f64 z 1/16)))) 2) (cbrt.f64 (fma.f64 y x (*.f64 t (*.f64 z 1/16)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 y x (*.f64 t (*.f64 z 1/16)))) (sqrt.f64 (fma.f64 y x (*.f64 t (*.f64 z 1/16)))))))) (#(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 t (*.f64 z 1/16)) (-.f64 (*.f64 t (*.f64 z 1/16)) (*.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 t (*.f64 z 1/16)) 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 t (*.f64 z 1/16)) (-.f64 (*.f64 t (*.f64 z 1/16)) (*.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 t (*.f64 z 1/16)) 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 t (*.f64 z 1/16)) (-.f64 (*.f64 t (*.f64 z 1/16)) (*.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 t (*.f64 z 1/16)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 t (*.f64 z 1/16)) 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 t (*.f64 z 1/16)) (-.f64 (*.f64 t (*.f64 z 1/16)) (*.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 t (*.f64 z 1/16)) 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 t (*.f64 z 1/16)) 2) (pow.f64 (*.f64 y x) 2)) (-.f64 (*.f64 t (*.f64 z 1/16)) (*.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 y x (*.f64 t (*.f64 z 1/16))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 y x (*.f64 t (*.f64 z 1/16))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 y x (*.f64 t (*.f64 z 1/16)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 y x (*.f64 t (*.f64 z 1/16)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 y x (*.f64 t (*.f64 z 1/16))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 (*.f64 t (*.f64 z 1/16)) (-.f64 (*.f64 t (*.f64 z 1/16)) (*.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 t (*.f64 z 1/16)) 2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 y x (*.f64 t (*.f64 z 1/16))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 y x (*.f64 t (*.f64 z 1/16)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 y x (*.f64 t (*.f64 z 1/16))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 y x))) (pow.f64 (pow.f64 (exp.f64 t) z) 1/16)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 y) x) (+.f64 1 (expm1.f64 (*.f64 t (*.f64 z 1/16))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 y x))) (+.f64 1 (expm1.f64 (*.f64 t (*.f64 z 1/16))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 t (*.f64 z 1/16)))) (pow.f64 (exp.f64 y) x)))))) (#(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 y x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 t (*.f64 z 1/16)))) (+.f64 1 (expm1.f64 (*.f64 y x)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 y x (*.f64 t (*.f64 z 1/16))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 y x (*.f64 t (*.f64 z 1/16)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 y x (*.f64 t (*.f64 z 1/16)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 y x (*.f64 t (*.f64 z 1/16)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 y x (*.f64 t (*.f64 z 1/16)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y x (*.f64 t (*.f64 z 1/16)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x y (*.f64 t (*.f64 z 1/16)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y x) 1 (*.f64 t (*.f64 z 1/16)))))) (#(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 t (*.f64 z 1/16)) 1 (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 y x) (*.f64 t (*.f64 z 1/16)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 t (*.f64 z 1/16)) (*.f64 y x))))) (#(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 y x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 y) 2) (*.f64 (cbrt.f64 y) x) (*.f64 t (*.f64 z 1/16)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 t (*.f64 z 1/16))) (pow.f64 (cbrt.f64 (*.f64 t (*.f64 z 1/16))) 2) (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 t (*.f64 z 1/16))) 2) (cbrt.f64 (*.f64 t (*.f64 z 1/16))) (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (*.f64 (cbrt.f64 x) y) (*.f64 t (*.f64 z 1/16)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 y x)) (pow.f64 (cbrt.f64 (*.f64 y x)) 2) (*.f64 t (*.f64 z 1/16)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 y x)) 2) (cbrt.f64 (*.f64 y x)) (*.f64 t (*.f64 z 1/16)))))) (#(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 t (*.f64 z 1/16)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 t (*.f64 z 1/16))) (sqrt.f64 (*.f64 t (*.f64 z 1/16))) (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) y) (*.f64 t (*.f64 z 1/16)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 y x)) (sqrt.f64 (*.f64 y x)) (*.f64 t (*.f64 z 1/16)))))) (#(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 t (*.f64 z 1/16)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y (sqrt.f64 x)) (sqrt.f64 x) (*.f64 t (*.f64 z 1/16)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (pow.f64 (cbrt.f64 y) 2)) (cbrt.f64 y) (*.f64 t (*.f64 z 1/16)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (sqrt.f64 y)) (sqrt.f64 y) (*.f64 t (*.f64 z 1/16)))))) (#(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 (pow.f64 (cbrt.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))))))

simplify27.0ms (0.1%)

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

Useful iterations: 2 (0.0ms)

IterNodesCost
014787
125779
244689
363689
Stop Event
saturated
Counts
253 → 190
Calls
Call 1
Inputs
(+.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 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 c (*.f64 1/16 (*.f64 t z)))
(fma.f64 1/16 (*.f64 t 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 (fma.f64 1/16 (*.f64 t z) c) (*.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 (fma.f64 1/16 (*.f64 t z) c) (*.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 (fma.f64 1/16 (*.f64 t z) c) (*.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 (fma.f64 1/16 (*.f64 t z) c) (*.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 (fma.f64 1/16 (*.f64 t z) c) (*.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 (fma.f64 1/16 (*.f64 t z) c) (*.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 (fma.f64 1/16 (*.f64 t z) c) (*.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 (fma.f64 1/16 (*.f64 t z) c) (*.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 (fma.f64 1/16 (*.f64 t z) c) (*.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 1/16 (*.f64 t 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 (fma.f64 1/16 (*.f64 t z) c) (*.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 (fma.f64 1/16 (*.f64 t z) c) (*.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 (fma.f64 1/16 (*.f64 t z) c) (*.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 (fma.f64 1/16 (*.f64 t z) c) (*.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 (fma.f64 1/16 (*.f64 t z) c) (*.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 (fma.f64 1/16 (*.f64 t z) c) (*.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 (fma.f64 1/16 (*.f64 t z) c) (*.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 (fma.f64 1/16 (*.f64 t z) c) (*.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 (fma.f64 1/16 (*.f64 t z) c) (*.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 (fma.f64 1/16 (*.f64 t z) c) (*.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 (fma.f64 1/16 (*.f64 t z) c) (*.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 (fma.f64 1/16 (*.f64 t z) c) (*.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 (fma.f64 1/16 (*.f64 t z) c) (*.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 (fma.f64 1/16 (*.f64 t z) c) (*.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 (fma.f64 1/16 (*.f64 t z) c) (*.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 (fma.f64 1/16 (*.f64 t z) c) (*.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 (fma.f64 1/16 (*.f64 t z) c) (*.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 (fma.f64 1/16 (*.f64 t z) c) (*.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 (fma.f64 1/16 (*.f64 t z) c) (*.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 (fma.f64 1/16 (*.f64 t z) c) (*.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 (fma.f64 1/16 (*.f64 t z) c) (*.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 (fma.f64 1/16 (*.f64 t z) c) (*.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 (fma.f64 1/16 (*.f64 t z) c) (*.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 (fma.f64 1/16 (*.f64 t z) c) (*.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 (fma.f64 1/16 (*.f64 t z) c) (*.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 (fma.f64 1/16 (*.f64 t z) c) (*.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 (fma.f64 1/16 (*.f64 t z) c) (*.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 1/16 (*.f64 t 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 (fma.f64 1/16 (*.f64 t z) c) (*.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 (fma.f64 1/16 (*.f64 t z) c) (*.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 (fma.f64 1/16 (*.f64 t z) c) (*.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 (fma.f64 1/16 (*.f64 t z) c) (*.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 (fma.f64 1/16 (*.f64 t z) c) (*.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 (fma.f64 1/16 (*.f64 t z) c) (*.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 (fma.f64 1/16 (*.f64 t z) c) (*.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 (fma.f64 1/16 (*.f64 t z) c) (*.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 (fma.f64 1/16 (*.f64 t z) c) (*.f64 y x))
(fma.f64 1/16 (*.f64 t z) (fma.f64 y x c))
(*.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))

localize9.0ms (0%)

Compiler

Compiled 20 to 13 computations (35% saved)

eval215.0ms (1%)

Compiler

Compiled 8614 to 4284 computations (50.3% saved)

prune180.0ms (0.8%)

Pruning

13 alts after pruning (8 fresh and 5 done)

PrunedKeptTotal
New4505455
Fresh235
Picked011
Done246
Total45413467
Error
0b
Counts
467 → 13
Alt Table
Click to see full alt table
StatusErrorProgram
29.9b
(fma.f64 (*.f64 b -1/4) a c)
29.3b
(+.f64 (*.f64 1/16 (*.f64 t z)) c)
33.8b
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
45.0b
c
34.5b
(-.f64 (*.f64 y x) (*.f64 1/4 (*.f64 a b)))
49.7b
(*.f64 y x)
29.9b
(+.f64 (*.f64 a (*.f64 b -1/4)) c)
13.6b
(fma.f64 (*.f64 -1/4 b) a (fma.f64 1/16 (*.f64 t z) c))
31.3b
(-.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 1/4 (*.f64 a b)))
31.9b
(+.f64 (*.f64 y x) c)
31.9b
(fma.f64 y x c)
46.7b
(*.f64 (*.f64 1/16 t) z)
47.4b
(*.f64 a (*.f64 b -1/4))
Compiler

Compiled 277 to 214 computations (22.7% saved)

localize15.0ms (0.1%)

Local error

Found 2 expressions with local error:

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

Compiled 37 to 19 computations (48.6% saved)

series16.0ms (0.1%)

Counts
1 → 60
Calls

15 calls:

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

rewrite85.0ms (0.4%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
01215
123915
2270115
Stop Event
node limit
Counts
1 → 37
Calls
Call 1
Inputs
(fma.f64 (*.f64 -1/4 b) a (fma.f64 1/16 (*.f64 t z) c))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1/16 (*.f64 t z) c) (*.f64 -1/4 (*.f64 b a)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 -1/4 (*.f64 b a)) (fma.f64 1/16 (*.f64 t z) c))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (fma.f64 -1/4 (*.f64 b a) (fma.f64 1/16 (*.f64 t z) c)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 -1/4 (*.f64 b a)) 1) (fma.f64 1/16 (*.f64 t z) c))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 -1/4 (*.f64 b a) (*.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 -1/4 (*.f64 b a) (fma.f64 1/16 (*.f64 t z) c)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (fma.f64 -1/4 (*.f64 b a) (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/4 (*.f64 b a) (fma.f64 1/16 (*.f64 t z) c))))) (log.f64 (sqrt.f64 (exp.f64 (fma.f64 -1/4 (*.f64 b a) (fma.f64 1/16 (*.f64 t z) c))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 -1/4 (*.f64 b a) (fma.f64 1/16 (*.f64 t z) c)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 -1/4 (*.f64 b a) (fma.f64 1/16 (*.f64 t z) c)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 -1/4 (*.f64 b a) (fma.f64 1/16 (*.f64 t z) c)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 -1/4 (*.f64 b a) (fma.f64 1/16 (*.f64 t z) c))) (pow.f64 (cbrt.f64 (fma.f64 -1/4 (*.f64 b a) (fma.f64 1/16 (*.f64 t z) c))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 -1/4 (*.f64 b a) (fma.f64 1/16 (*.f64 t z) c))) 2) (cbrt.f64 (fma.f64 -1/4 (*.f64 b a) (fma.f64 1/16 (*.f64 t z) c))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 -1/4 (*.f64 b a) (fma.f64 1/16 (*.f64 t z) c))) (sqrt.f64 (fma.f64 -1/4 (*.f64 b a) (fma.f64 1/16 (*.f64 t z) c))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 -1/4 (*.f64 b a)) 3) (pow.f64 (fma.f64 1/16 (*.f64 t z) c) 3)) (+.f64 (pow.f64 (*.f64 -1/4 (*.f64 b a)) 2) (-.f64 (pow.f64 (fma.f64 1/16 (*.f64 t z) c) 2) (*.f64 (*.f64 -1/4 (*.f64 b a)) (fma.f64 1/16 (*.f64 t z) c)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 -1/4 (*.f64 b a)) 2) (pow.f64 (fma.f64 1/16 (*.f64 t z) c) 2)) (-.f64 (*.f64 -1/4 (*.f64 b a)) (fma.f64 1/16 (*.f64 t z) c)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 -1/4 (*.f64 b a) (fma.f64 1/16 (*.f64 t z) c)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 -1/4 (*.f64 b a) (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/4 (*.f64 b a) (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/4 (*.f64 b a) (fma.f64 1/16 (*.f64 t z) c))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 -1/4 (*.f64 b a) (fma.f64 1/16 (*.f64 t z) c))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (fma.f64 -1/4 (*.f64 b a) (fma.f64 1/16 (*.f64 t z) c))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (fma.f64 -1/4 (*.f64 b a) (fma.f64 1/16 (*.f64 t z) c)))) 2)) (cbrt.f64 (log.f64 (fma.f64 -1/4 (*.f64 b a) (fma.f64 1/16 (*.f64 t z) c)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (fma.f64 -1/4 (*.f64 b a) (fma.f64 1/16 (*.f64 t z) c))))) (sqrt.f64 (log.f64 (fma.f64 -1/4 (*.f64 b a) (fma.f64 1/16 (*.f64 t z) c)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 -1/4 (*.f64 b a) (fma.f64 1/16 (*.f64 t z) c)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 -1/4 (*.f64 b a) (fma.f64 1/16 (*.f64 t z) c))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 -1/4 (*.f64 b a) (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 (exp.f64 a) (*.f64 -1/4 b))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 a) (*.f64 -1/4 b)) (+.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 -1/4 (*.f64 b a) (fma.f64 1/16 (*.f64 t z) c)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 -1/4 (*.f64 b a) (fma.f64 1/16 (*.f64 t z) c))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 -1/4 (*.f64 b a) (fma.f64 1/16 (*.f64 t z) c))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 -1/4 (*.f64 b a) (fma.f64 1/16 (*.f64 t z) c))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 -1/4 (*.f64 b a) (fma.f64 1/16 (*.f64 t z) c))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (fma.f64 -1/4 (*.f64 b a) (fma.f64 1/16 (*.f64 t z) c)))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (fma.f64 -1/4 (*.f64 b a) (fma.f64 1/16 (*.f64 t z) c)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (fma.f64 -1/4 (*.f64 b a) (fma.f64 1/16 (*.f64 t z) c)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (fma.f64 -1/4 (*.f64 b a) (fma.f64 1/16 (*.f64 t z) c))) 1) 1))))))

simplify26.0ms (0.1%)

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
016877
130869
258779
392779
Stop Event
saturated
Counts
97 → 48
Calls
Call 1
Inputs
(+.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 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))))
Outputs
(+.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/16 (*.f64 t z)) (fma.f64 -1/4 (*.f64 a b) c))
(fma.f64 1/16 (*.f64 t z) (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/16 (*.f64 t z)) (fma.f64 -1/4 (*.f64 a b) c))
(fma.f64 1/16 (*.f64 t z) (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/16 (*.f64 t z)) (fma.f64 -1/4 (*.f64 a b) c))
(fma.f64 1/16 (*.f64 t z) (fma.f64 -1/4 (*.f64 a b) 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/16 (*.f64 t z)) (fma.f64 -1/4 (*.f64 a b) c))
(fma.f64 1/16 (*.f64 t z) (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/16 (*.f64 t z)) (fma.f64 -1/4 (*.f64 a b) c))
(fma.f64 1/16 (*.f64 t z) (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/16 (*.f64 t z)) (fma.f64 -1/4 (*.f64 a b) c))
(fma.f64 1/16 (*.f64 t z) (fma.f64 -1/4 (*.f64 a b) 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/16 (*.f64 t z)) (fma.f64 -1/4 (*.f64 a b) c))
(fma.f64 1/16 (*.f64 t z) (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/16 (*.f64 t z)) (fma.f64 -1/4 (*.f64 a b) c))
(fma.f64 1/16 (*.f64 t z) (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/16 (*.f64 t z)) (fma.f64 -1/4 (*.f64 a b) c))
(fma.f64 1/16 (*.f64 t z) (fma.f64 -1/4 (*.f64 a b) 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/16 (*.f64 t z)) (fma.f64 -1/4 (*.f64 a b) c))
(fma.f64 1/16 (*.f64 t z) (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/16 (*.f64 t z)) (fma.f64 -1/4 (*.f64 a b) c))
(fma.f64 1/16 (*.f64 t z) (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/16 (*.f64 t z)) (fma.f64 -1/4 (*.f64 a b) c))
(fma.f64 1/16 (*.f64 t z) (fma.f64 -1/4 (*.f64 a b) 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/16 (*.f64 t z)) (fma.f64 -1/4 (*.f64 a b) c))
(fma.f64 1/16 (*.f64 t z) (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/16 (*.f64 t z)) (fma.f64 -1/4 (*.f64 a b) c))
(fma.f64 1/16 (*.f64 t z) (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/16 (*.f64 t z)) (fma.f64 -1/4 (*.f64 a b) c))
(fma.f64 1/16 (*.f64 t z) (fma.f64 -1/4 (*.f64 a b) 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/16 (*.f64 t z)) (fma.f64 -1/4 (*.f64 a b) c))
(fma.f64 1/16 (*.f64 t z) (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/16 (*.f64 t z)) (fma.f64 -1/4 (*.f64 a b) c))
(fma.f64 1/16 (*.f64 t z) (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/16 (*.f64 t z)) (fma.f64 -1/4 (*.f64 a b) c))
(fma.f64 1/16 (*.f64 t z) (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/16 (*.f64 t z)) (fma.f64 -1/4 (*.f64 a b) c))
(fma.f64 1/16 (*.f64 t z) (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/16 (*.f64 t z)) (fma.f64 -1/4 (*.f64 a b) c))
(fma.f64 1/16 (*.f64 t z) (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/16 (*.f64 t z)) (fma.f64 -1/4 (*.f64 a b) c))
(fma.f64 1/16 (*.f64 t z) (fma.f64 -1/4 (*.f64 a b) 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/16 (*.f64 t z)) (fma.f64 -1/4 (*.f64 a b) c))
(fma.f64 1/16 (*.f64 t z) (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/16 (*.f64 t z)) (fma.f64 -1/4 (*.f64 a b) c))
(fma.f64 1/16 (*.f64 t z) (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/16 (*.f64 t z)) (fma.f64 -1/4 (*.f64 a b) c))
(fma.f64 1/16 (*.f64 t z) (fma.f64 -1/4 (*.f64 a b) 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/16 (*.f64 t z)) (fma.f64 -1/4 (*.f64 a b) c))
(fma.f64 1/16 (*.f64 t z) (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/16 (*.f64 t z)) (fma.f64 -1/4 (*.f64 a b) c))
(fma.f64 1/16 (*.f64 t z) (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/16 (*.f64 t z)) (fma.f64 -1/4 (*.f64 a b) c))
(fma.f64 1/16 (*.f64 t z) (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/16 (*.f64 t z)) (fma.f64 -1/4 (*.f64 a b) c))
(fma.f64 1/16 (*.f64 t z) (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/16 (*.f64 t z)) (fma.f64 -1/4 (*.f64 a b) c))
(fma.f64 1/16 (*.f64 t z) (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/16 (*.f64 t z)) (fma.f64 -1/4 (*.f64 a b) c))
(fma.f64 1/16 (*.f64 t z) (fma.f64 -1/4 (*.f64 a b) 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/16 (*.f64 t z)) (fma.f64 -1/4 (*.f64 a b) c))
(fma.f64 1/16 (*.f64 t z) (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/16 (*.f64 t z)) (fma.f64 -1/4 (*.f64 a b) c))
(fma.f64 1/16 (*.f64 t z) (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/16 (*.f64 t z)) (fma.f64 -1/4 (*.f64 a b) c))
(fma.f64 1/16 (*.f64 t z) (fma.f64 -1/4 (*.f64 a b) 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/16 (*.f64 t z)) (fma.f64 -1/4 (*.f64 a b) c))
(fma.f64 1/16 (*.f64 t z) (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/16 (*.f64 t z)) (fma.f64 -1/4 (*.f64 a b) c))
(fma.f64 1/16 (*.f64 t z) (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/16 (*.f64 t z)) (fma.f64 -1/4 (*.f64 a b) c))
(fma.f64 1/16 (*.f64 t z) (fma.f64 -1/4 (*.f64 a b) 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)))
(+.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/16 (*.f64 t z)) (fma.f64 -1/4 (*.f64 a b) c))
(fma.f64 1/16 (*.f64 t z) (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/16 (*.f64 t z)) (fma.f64 -1/4 (*.f64 a b) c))
(fma.f64 1/16 (*.f64 t z) (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/16 (*.f64 t z)) (fma.f64 -1/4 (*.f64 a b) c))
(fma.f64 1/16 (*.f64 t z) (fma.f64 -1/4 (*.f64 a b) 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/16 (*.f64 t z)) (fma.f64 -1/4 (*.f64 a b) c))
(fma.f64 1/16 (*.f64 t z) (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/16 (*.f64 t z)) (fma.f64 -1/4 (*.f64 a b) c))
(fma.f64 1/16 (*.f64 t z) (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/16 (*.f64 t z)) (fma.f64 -1/4 (*.f64 a b) c))
(fma.f64 1/16 (*.f64 t z) (fma.f64 -1/4 (*.f64 a b) 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/16 (*.f64 t z)) (fma.f64 -1/4 (*.f64 a b) c))
(fma.f64 1/16 (*.f64 t z) (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/16 (*.f64 t z)) (fma.f64 -1/4 (*.f64 a b) c))
(fma.f64 1/16 (*.f64 t z) (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/16 (*.f64 t z)) (fma.f64 -1/4 (*.f64 a b) c))
(fma.f64 1/16 (*.f64 t z) (fma.f64 -1/4 (*.f64 a b) c))

localize8.0ms (0%)

Compiler

Compiled 18 to 13 computations (27.8% saved)

localize8.0ms (0%)

Local error

Found 1 expressions with local error:

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

Compiled 18 to 13 computations (27.8% saved)

series3.0ms (0%)

Counts
1 → 24
Calls

6 calls:

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

rewrite65.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
553×pow1_binary64
512×add-log-exp_binary64
512×log1p-expm1-u_binary64
512×expm1-log1p-u_binary64
501×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify11.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))

localize19.0ms (0.1%)

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)

localize22.0ms (0.1%)

Local error

Found 2 expressions with local error:

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

Compiled 32 to 15 computations (53.1% saved)

series21.0ms (0.1%)

Counts
1 → 48
Calls

12 calls:

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

rewrite178.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))))))

simplify40.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))

eval275.0ms (1.3%)

Compiler

Compiled 6971 to 3730 computations (46.5% saved)

prune93.0ms (0.4%)

Pruning

13 alts after pruning (4 fresh and 9 done)

PrunedKeptTotal
New3702372
Fresh123
Picked011
Done189
Total37213385
Error
0b
Counts
385 → 13
Alt Table
Click to see full alt table
StatusErrorProgram
29.9b
(fma.f64 (*.f64 b -1/4) a c)
29.3b
(+.f64 (*.f64 1/16 (*.f64 t z)) c)
31.9b
(fma.f64 y x c)
31.3b
(fma.f64 (*.f64 -1/4 b) a (*.f64 1/16 (*.f64 t z)))
45.0b
c
34.5b
(-.f64 (*.f64 y x) (*.f64 1/4 (*.f64 a b)))
49.7b
(*.f64 y x)
31.3b
(-.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 1/4 (*.f64 a b)))
33.8b
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
31.9b
(+.f64 (*.f64 y x) c)
46.7b
(*.f64 (*.f64 1/16 t) z)
29.9b
(+.f64 (*.f64 a (*.f64 b -1/4)) c)
47.4b
(*.f64 a (*.f64 b -1/4))
Compiler

Compiled 173 to 135 computations (22% saved)

regimes614.0ms (2.9%)

Counts
26 → 1
Calls
Call 1
Inputs
c
c
c
c
(*.f64 y x)
(*.f64 (*.f64 1/16 t) z)
(*.f64 a (*.f64 b -1/4))
(+.f64 (*.f64 y x) c)
(+.f64 (*.f64 1/16 (*.f64 t z)) c)
(+.f64 (*.f64 a (*.f64 b -1/4)) c)
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(-.f64 (*.f64 y x) (*.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))) c)
(-.f64 (+.f64 c (*.f64 y x)) (*.f64 1/4 (*.f64 a b)))
(-.f64 (+.f64 c (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
(+.f64 (-.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 z t) 16)) (/.f64 (*.f64 a b) 4)) c)
(fma.f64 y x c)
(fma.f64 (*.f64 b -1/4) a c)
(fma.f64 (*.f64 -1/4 b) a (*.f64 1/16 (*.f64 t z)))
(fma.f64 x y (+.f64 c (*.f64 1/16 (*.f64 t z))))
(fma.f64 a (*.f64 b -1/4) (fma.f64 y x c))
(fma.f64 (*.f64 -1/4 b) a (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 a (*.f64 b -1/4) (fma.f64 y x (*.f64 1/16 (*.f64 t z))))
(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)))
Outputs
(fma.f64 a (*.f64 b -1/4) (fma.f64 y x (fma.f64 1/16 (*.f64 t z) c)))
Calls

22 calls:

82.0ms
(*.f64 z t)
55.0ms
(/.f64 (*.f64 a b) 4)
52.0ms
(/.f64 (*.f64 z t) 16)
34.0ms
(-.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 z t) 16)) (/.f64 (*.f64 a b) 4))
33.0ms
(+.f64 (-.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 z t) 16)) (/.f64 (*.f64 a b) 4)) c)
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 479 to 307 computations (35.9% saved)

regimes287.0ms (1.4%)

Counts
24 → 1
Calls
Call 1
Inputs
c
c
c
c
(*.f64 y x)
(*.f64 (*.f64 1/16 t) z)
(*.f64 a (*.f64 b -1/4))
(+.f64 (*.f64 y x) c)
(+.f64 (*.f64 1/16 (*.f64 t z)) c)
(+.f64 (*.f64 a (*.f64 b -1/4)) c)
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(-.f64 (*.f64 y x) (*.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))) c)
(-.f64 (+.f64 c (*.f64 y x)) (*.f64 1/4 (*.f64 a b)))
(-.f64 (+.f64 c (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
(+.f64 (-.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 z t) 16)) (/.f64 (*.f64 a b) 4)) c)
(fma.f64 y x c)
(fma.f64 (*.f64 b -1/4) a c)
(fma.f64 (*.f64 -1/4 b) a (*.f64 1/16 (*.f64 t z)))
(fma.f64 x y (+.f64 c (*.f64 1/16 (*.f64 t z))))
(fma.f64 a (*.f64 b -1/4) (fma.f64 y x c))
(fma.f64 (*.f64 -1/4 b) a (fma.f64 1/16 (*.f64 t z) c))
(fma.f64 a (*.f64 b -1/4) (fma.f64 y x (*.f64 1/16 (*.f64 t z))))
Outputs
(+.f64 (-.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 z t) 16)) (/.f64 (*.f64 a b) 4)) c)
Calls

15 calls:

46.0ms
t
45.0ms
(+.f64 (-.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 z t) 16)) (/.f64 (*.f64 a b) 4)) c)
20.0ms
y
18.0ms
(*.f64 z t)
17.0ms
(/.f64 (*.f64 z t) 16)
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 359 to 223 computations (37.9% saved)

regimes605.0ms (2.8%)

Counts
16 → 3
Calls
Call 1
Inputs
c
c
c
c
(*.f64 y x)
(*.f64 (*.f64 1/16 t) z)
(*.f64 a (*.f64 b -1/4))
(+.f64 (*.f64 y x) c)
(+.f64 (*.f64 1/16 (*.f64 t z)) c)
(+.f64 (*.f64 a (*.f64 b -1/4)) c)
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(-.f64 (*.f64 y x) (*.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))) c)
(-.f64 (+.f64 c (*.f64 y x)) (*.f64 1/4 (*.f64 a b)))
(-.f64 (+.f64 c (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
Outputs
(-.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 c (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))
Calls

8 calls:

153.0ms
y
113.0ms
t
88.0ms
z
79.0ms
c
54.0ms
x
Results
ErrorSegmentsBranch
7.8b3x
6.9b3y
7.5b3z
6.0b9t
6.3b3a
6.6b5b
9.1b6c
5.0b3(*.f64 a b)
Compiler

Compiled 173 to 106 computations (38.7% saved)

bsearch1.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
2.3091765510199392e-114
3.232936046799759e-111
0.0ms
-1.6629287000669023e-20
-9.88105944177249e-31
Compiler

Compiled 34 to 26 computations (23.5% saved)

regimes441.0ms (2.1%)

Counts
15 → 3
Calls
Call 1
Inputs
c
c
c
c
(*.f64 y x)
(*.f64 (*.f64 1/16 t) z)
(*.f64 a (*.f64 b -1/4))
(+.f64 (*.f64 y x) c)
(+.f64 (*.f64 1/16 (*.f64 t z)) c)
(+.f64 (*.f64 a (*.f64 b -1/4)) c)
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(-.f64 (*.f64 y x) (*.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))) c)
(-.f64 (+.f64 c (*.f64 y x)) (*.f64 1/4 (*.f64 a b)))
Outputs
(-.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 c (*.f64 y x)) (*.f64 1/4 (*.f64 a b)))
Calls

8 calls:

114.0ms
x
82.0ms
t
63.0ms
y
47.0ms
(*.f64 a b)
41.0ms
c
Results
ErrorSegmentsBranch
12.2b5x
11.2b4y
8.5b3z
9.2b5t
8.8b2a
7.6b3b
12.4b4c
5.0b3(*.f64 a b)
Compiler

Compiled 160 to 100 computations (37.5% saved)

bsearch1.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
64959473286277460.0
1.1227976238678503e+23
0.0ms
-1.6629287000669023e-20
-9.88105944177249e-31
Compiler

Compiled 34 to 26 computations (23.5% saved)

regimes785.0ms (3.7%)

Counts
14 → 3
Calls
Call 1
Inputs
c
c
c
c
(*.f64 y x)
(*.f64 (*.f64 1/16 t) z)
(*.f64 a (*.f64 b -1/4))
(+.f64 (*.f64 y x) c)
(+.f64 (*.f64 1/16 (*.f64 t z)) c)
(+.f64 (*.f64 a (*.f64 b -1/4)) c)
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(-.f64 (*.f64 y x) (*.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))) c)
Outputs
(+.f64 (*.f64 a (*.f64 b -1/4)) c)
(+.f64 (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) c)
(-.f64 (*.f64 y x) (*.f64 1/4 (*.f64 a b)))
Calls

9 calls:

257.0ms
y
138.0ms
x
131.0ms
(*.f64 a b)
71.0ms
z
52.0ms
c
Results
ErrorSegmentsBranch
12.8b5x
12.0b8y
12.7b3z
13.8b3t
10.4b2a
9.5b4b
12.3b5c
7.6b3(*.f64 a b)
7.6b3(*.f64 a b)
Compiler

Compiled 159 to 104 computations (34.6% saved)

bsearch1.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
7.434685725565817e+57
3.6990459525954984e+79
0.0ms
-8.275490143053718e+58
-6.117123463335505e+52
Compiler

Compiled 34 to 26 computations (23.5% saved)

regimes1.3s (6.2%)

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

9 calls:

379.0ms
x
192.0ms
b
177.0ms
t
163.0ms
(*.f64 a b)
121.0ms
a
Results
ErrorSegmentsBranch
17.1b10x
17.6b6y
18.3b6z
17.2b9t
17.0b7a
14.6b11b
15.0b6c
15.2b6(*.f64 a b)
15.2b6(*.f64 a b)
Compiler

Compiled 148 to 100 computations (32.4% saved)

bsearch792.0ms (3.7%)

Algorithm
10×binary-search
Steps
TimeLeftRight
58.0ms
4.218993214844959e+285
4.293610099072639e+290
206.0ms
4.3393528461897727e+257
2.188655785525466e+258
127.0ms
1.9811697459021985e+231
4.935725541367179e+233
25.0ms
2.8089471999629863e+184
6.901592988310835e+186
12.0ms
5.03867305933006e+140
2.016225022705732e+142
120.0ms
7.982394603357595e+57
1.1526664851376782e+58
29.0ms
1.7948754687142242e+30
6.457828010820234e+32
159.0ms
1.1639123791181285e-25
7.923283072604857e-25
29.0ms
2.9228611281942957e-117
3.2167290469538454e-115
28.0ms
-4.04839252956605e-159
-1.1049941105676132e-159
Compiler

Compiled 938 to 732 computations (22% saved)

regimes434.0ms (2%)

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

9 calls:

77.0ms
t
54.0ms
x
48.0ms
(*.f64 a b)
47.0ms
b
45.0ms
a
Results
ErrorSegmentsBranch
19.9b7x
19.0b4y
18.5b6z
17.7b10t
17.3b7a
17.5b6b
16.4b6c
15.2b6(*.f64 a b)
15.2b6(*.f64 a b)
Compiler

Compiled 137 to 95 computations (30.7% saved)

bsearch1.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
3.2412263650285057e+27
6.319534871266571e+37
0.0ms
-3.012775087839923e-117
-1.0494549505708095e-117
0.0ms
-2.071418120535433e-61
-5.342673004125122e-63
0.0ms
-1.6460739662025738e-36
-1.8461746273570226e-43
0.0ms
-1.588613481425378e+44
-4.2179526622118695e+40
Compiler

Compiled 34 to 26 computations (23.5% saved)

regimes400.0ms (1.9%)

Counts
11 → 10
Calls
Call 1
Inputs
c
c
c
c
(*.f64 y x)
(*.f64 (*.f64 1/16 t) z)
(*.f64 a (*.f64 b -1/4))
(+.f64 (*.f64 y x) c)
(+.f64 (*.f64 1/16 (*.f64 t z)) c)
(+.f64 (*.f64 a (*.f64 b -1/4)) c)
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
Outputs
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(+.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) (*.f64 1/16 (*.f64 t z)))
(+.f64 (*.f64 a (*.f64 b -1/4)) c)
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(+.f64 (*.f64 a (*.f64 b -1/4)) c)
(+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))
(+.f64 (*.f64 1/16 (*.f64 t z)) c)
Calls

7 calls:

101.0ms
x
70.0ms
t
67.0ms
z
52.0ms
y
48.0ms
b
Results
ErrorSegmentsBranch
19.6b8x
19.2b4y
18.4b7z
17.9b10t
18.5b6a
18.9b6b
19.9b3c
Compiler

Compiled 108 to 75 computations (30.6% saved)

bsearch569.0ms (2.7%)

Algorithm
binary-search
Steps
TimeLeftRight
10.0ms
3.03993475527479e+129
1.264286801608074e+130
155.0ms
5.877918753419281e+72
1.7124574958847727e+74
57.0ms
0.029639936124417593
712.907828725259
60.0ms
9.144909023192843e-21
2.5209000329539754e-19
57.0ms
9.455774866077695e-64
4.2904416215475334e-57
57.0ms
2.517687032542628e-90
6.767900619362298e-89
58.0ms
7.150303631180973e-193
1.1029238791060154e-191
57.0ms
5.676692576998345e-267
3.40515527172682e-256
57.0ms
-1.4610896689249652e-186
-1.5072255086133636e-201
Compiler

Compiled 290 to 226 computations (22.1% saved)

regimes537.0ms (2.5%)

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

7 calls:

216.0ms
a
132.0ms
c
58.0ms
x
52.0ms
t
27.0ms
b
Results
ErrorSegmentsBranch
20.8b7x
19.7b4y
19.7b4z
19.8b9t
19.0b6a
19.5b5b
23.1b8c
Compiler

Compiled 99 to 72 computations (27.3% saved)

bsearch244.0ms (1.1%)

Algorithm
binary-search
Steps
TimeLeftRight
29.0ms
-1.244384097950414e-277
-7.035263418316275e-283
30.0ms
-2.0823346778247216e-195
-1.1593840075237554e-201
30.0ms
-4.720080894573427e-76
-3.58889845892265e-77
28.0ms
-8.331305519933894e+27
-1.3789966839821756e+25
126.0ms
-8.95507710322931e+95
-4.743145537973443e+95
Compiler

Compiled 154 to 122 computations (20.8% saved)

regimes305.0ms (1.4%)

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

7 calls:

103.0ms
z
42.0ms
c
39.0ms
y
36.0ms
b
36.0ms
t
Results
ErrorSegmentsBranch
23.4b3x
22.7b3y
22.0b5z
22.0b7t
21.8b6a
21.1b7b
24.1b7c
Compiler

Compiled 92 to 68 computations (26.1% saved)

bsearch329.0ms (1.5%)

Algorithm
binary-search
Steps
TimeLeftRight
31.0ms
4.218993214844959e+285
4.293610099072639e+290
45.0ms
1.5286243579261224e+195
7.9893356137205e+197
135.0ms
2.590408341962152e+78
1.0361674948287461e+79
41.0ms
486.1938319483654
7288.0645607830875
47.0ms
1.1450783104180212e-56
6.189621076154343e-52
28.0ms
-3.970598339454207e-90
-5.620227049551793e-96
Compiler

Compiled 678 to 546 computations (19.5% saved)

regimes804.0ms (3.8%)

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

7 calls:

230.0ms
c
134.0ms
b
131.0ms
x
94.0ms
y
83.0ms
z
Results
ErrorSegmentsBranch
27.2b7x
30.4b3y
26.5b5z
26.2b5t
26.5b4a
24.8b8b
25.5b10c
Compiler

Compiled 85 to 64 computations (24.7% saved)

bsearch731.0ms (3.4%)

Algorithm
binary-search
Steps
TimeLeftRight
107.0ms
3.4867918587173054e+212
1.3966448387730475e+218
89.0ms
4.471637661216875e+154
7.378272079213326e+155
122.0ms
5.03867305933006e+140
2.016225022705732e+142
227.0ms
7.982394603357595e+57
1.1526664851376782e+58
57.0ms
1.8050314883847044e-93
8.396113554723849e-89
61.0ms
9.00476416142008e-106
6.282932443032409e-100
68.0ms
-3.583124208257808e-89
-3.970598339454207e-90
Compiler

Compiled 736 to 593 computations (19.4% saved)

regimes1.3s (5.9%)

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

7 calls:

469.0ms
x
232.0ms
b
192.0ms
a
118.0ms
t
111.0ms
c
Results
ErrorSegmentsBranch
35.4b8x
34.7b8y
36.0b5z
33.5b9t
35.1b7a
33.3b9b
28.7b9c
Compiler

Compiled 80 to 63 computations (21.3% saved)

bsearch445.0ms (2.1%)

Algorithm
binary-search
Steps
TimeLeftRight
27.0ms
1.815067079719887e+94
1.4182592771918685e+103
153.0ms
5.714270454769437e+59
8.534945306445078e+59
40.0ms
0.010714215479033928
1827.9505769663783
30.0ms
1.6232664476791848e-180
1.4512382401405005e-179
39.0ms
1.5179572167878022e-270
3.305757816016693e-269
29.0ms
-1.1657054458150758e-247
-6.347724329468426e-249
72.0ms
-23489.31727342009
-278.5514983465733
55.0ms
-7.808715646699018e+64
-2.461402941209299e+64
Compiler

Compiled 34 to 26 computations (23.5% saved)

regimes286.0ms (1.3%)

Counts
6 → 6
Calls
Call 1
Inputs
c
c
c
c
(*.f64 y x)
(*.f64 (*.f64 1/16 t) z)
Outputs
c
(*.f64 (*.f64 1/16 t) z)
(*.f64 y x)
(*.f64 (*.f64 1/16 t) z)
(*.f64 y x)
c
Calls

7 calls:

70.0ms
b
65.0ms
x
36.0ms
t
32.0ms
a
29.0ms
c
Results
ErrorSegmentsBranch
35.6b8x
36.6b6y
37.1b6z
35.1b7t
40.2b7a
38.8b8b
31.9b6c
Compiler

Compiled 75 to 60 computations (20% saved)

bsearch159.0ms (0.7%)

Algorithm
binary-search
Steps
TimeLeftRight
28.0ms
7.349731980644859e+105
7.856687377701761e+114
29.0ms
9.538439067119094e+92
1.815067079719887e+94
30.0ms
0.010714215479033928
1827.9505769663783
43.0ms
1.6232664476791848e-180
1.4512382401405005e-179
28.0ms
-2.461402941209299e+64
-1.3345421592894425e+60
Compiler

Compiled 34 to 26 computations (23.5% saved)

regimes141.0ms (0.7%)

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

7 calls:

39.0ms
c
23.0ms
b
22.0ms
y
19.0ms
x
18.0ms
z
Results
ErrorSegmentsBranch
39.6b5x
40.5b2y
42.0b5z
43.6b3t
45.0b1a
41.3b5b
36.5b3c
Compiler

Compiled 70 to 57 computations (18.6% saved)

bsearch85.0ms (0.4%)

Algorithm
binary-search
Steps
TimeLeftRight
50.0ms
7.349731980644859e+105
7.856687377701761e+114
34.0ms
-4.814924538003789e+31
-1.6625372990081516e+25
Compiler

Compiled 34 to 26 computations (23.5% saved)

regimes52.0ms (0.2%)

Accuracy

Total -0.0b remaining (-0%)

Threshold costs -0.0b (-0%)

Counts
4 → 1
Calls
Call 1
Inputs
c
c
c
c
Outputs
c
Calls

7 calls:

8.0ms
y
8.0ms
a
7.0ms
b
7.0ms
t
7.0ms
c
Results
ErrorSegmentsBranch
45.0b1x
45.0b1y
45.0b1z
45.0b1t
45.0b1a
45.0b1b
45.0b1c
Compiler

Compiled 67 to 56 computations (16.4% saved)

simplify64.0ms (0.3%)

Algorithm
egg-herbie
Rules
17×+-commutative_binary64
14×*-commutative_binary64
10×sub-neg_binary64
cancel-sign-sub-inv_binary64
neg-sub0_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02221143
12551143
22751143
32871143
42951143
53001143
63021143
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) -6646139978924579/664613997892457936451903530140172288) (-.f64 (+.f64 c (*.f64 y x)) (*.f64 1/4 (*.f64 a b))) (if (<=.f64 (*.f64 a b) 2772669694120815/693167423530203714894603546035770925859109268843954143792619895153655326951406405759993601526034894524347802740350892957243539456) (+.f64 (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) c) (-.f64 (+.f64 c (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))))
(if (<=.f64 (*.f64 a b) -6646139978924579/664613997892457936451903530140172288) (-.f64 (+.f64 c (*.f64 y x)) (*.f64 1/4 (*.f64 a b))) (if (<=.f64 (*.f64 a b) 100000000000000000) (+.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) -49999999999999998584394024780232100424968164183088578953216) (+.f64 (*.f64 a (*.f64 b -1/4)) c) (if (<=.f64 (*.f64 a b) 9999999999999999438119489974413630815797154428513196965888) (+.f64 (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) c) (-.f64 (*.f64 y x) (*.f64 1/4 (*.f64 a b)))))
(if (<=.f64 b -8010324397266307/1978643211784836272484020168157177520281050792809694719312504448743177800852254937362531208489944359916781371408129114714810920274454009679740369240815145343332854177189593088) (+.f64 (*.f64 a (*.f64 b -1/4)) c) (if (<=.f64 b 2074656888388633/709803441694928604052074031140629428079727891296209043243642772637343054798240159498233447962659731992932150006119314388217384402944) (+.f64 (*.f64 1/16 (*.f64 t z)) c) (if (<=.f64 b 5069553398462687/43556142965880123323311949751266331066368) (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) (if (<=.f64 b 1794875468714224236793859932160) (+.f64 (*.f64 1/16 (*.f64 t z)) c) (if (<=.f64 b 11500000000000000120425529670065845928457043215077603278848) (+.f64 (*.f64 y x) c) (if (<=.f64 b 10000000000000000508222848402996879704791089448509839788449208028871961714412352270078388372553960191290960287445781834331294577148468377157632) (-.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 1/4 (*.f64 a b))) (if (<=.f64 b 999999999999999979617044168753715171107129451866841652067632118957448454785561110036171446110395985078602511391629572118883509758736380261518894779920079058604308854941977225917932503040) (-.f64 (*.f64 y x) (*.f64 1/4 (*.f64 a b))) (if (<=.f64 b 2000000000000000112950822041041682829681252763966116749401130328310913127935156394378439523178919965959536338695072724193131961289213847754610320291206559558839567880608124639637128476165182553839199176610603506544803697392590258176) (-.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 1/4 (*.f64 a b))) (if (<=.f64 b 2149999999999999898074107963305809529218251292484149598370074098894335376855494106464460620537861603635919240698064214485381143558044700143860232576306352787966011572504254814677045879310529583871249277212594113107824987369448371239763622742886393150324080640) (+.f64 (*.f64 y x) c) (if (<=.f64 b 4249999999999999981713237554170037907363188573939176465006025024402204295920875490536614438381730033140373120895339650917931487962756383076570966645270399826069706480125876739175720038665583818728936713592741295545808445118556511026221918670430332910309201847803904152790886241269710848) (-.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 1/4 (*.f64 a b))) (+.f64 (*.f64 y x) c)))))))))))
(if (<=.f64 (*.f64 a b) -100000000000000008821361405306422640701865984) (+.f64 (*.f64 a (*.f64 b -1/4)) c) (if (<=.f64 (*.f64 a b) -2993155353253689/2993155353253689176481146537402947624255349848014848) (-.f64 (*.f64 y x) (*.f64 1/4 (*.f64 a b))) (if (<=.f64 (*.f64 a b) -2894802230932905/14474011154664524427946373126085988481658748083205070504932198000989141204992) (+.f64 (*.f64 1/16 (*.f64 t z)) c) (if (<=.f64 (*.f64 a b) -5678427533559429/2839213766779714416208296124562517712318911565184836172974571090549372219192960637992933791850638927971728600024477257552869537611776) (-.f64 (*.f64 y x) (*.f64 1/4 (*.f64 a b))) (if (<=.f64 (*.f64 a b) 4999999999999999791559868416) (+.f64 (*.f64 1/16 (*.f64 t z)) c) (-.f64 (*.f64 y x) (*.f64 1/4 (*.f64 a b))))))))
(if (<=.f64 t -3578853897235187/2449441655328671218473925200700819802261115891310932980616707775308160183158275122807205904404441104841876294862561960570988912251863537292521360689146388717906188066642938460312627143172697498123763712) (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) (if (<=.f64 t 6594795192364733/1161731959748268017810986326679609812602547032546401921137321765090578638406565916832162745700122148898280252961088260195667644723081957584211586391486245801392945969099578026517723757683045106929874371704962060317240428677248343818872733547147389127353160238636049931893566678761472) (+.f64 (*.f64 a (*.f64 b -1/4)) c) (if (<=.f64 t 1836502384636071/2568425733177916751582514591250062824975751856847252861083144972201529372215371495172688738416791235950675277761805770367685269653410060480042878305982363696267199058168185838960773319279454451792623658074112) (+.f64 (*.f64 y x) c) (if (<=.f64 t 5774311724632667/2293498615990071511610820895302086940796564989168281123737588839386922876088484808070018553110125686554624) (+.f64 (*.f64 a (*.f64 b -1/4)) c) (if (<=.f64 t 27372598177521/28948022309329048855892746252171976963317496166410141009864396001978282409984) (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) (if (<=.f64 t 47483082392711/5192296858534827628530496329220096) (+.f64 (*.f64 a (*.f64 b -1/4)) c) (if (<=.f64 t 1067891242281699/36028797018963968) (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) (if (<=.f64 t 169999999999999995546453021296755194706307008289722553445664860276625768448) (+.f64 (*.f64 a (*.f64 b -1/4)) c) (if (<=.f64 t 10000000000000000597830782460516151851749290252338090708736359498322008205751130936310560341066601403445681992244323541365884452864) (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) (+.f64 (*.f64 1/16 (*.f64 t z)) c))))))))))
(if (<=.f64 a -879999999999999958507063942391341293078620439980425991327011484655074736196101580184131712581632) (+.f64 (*.f64 a (*.f64 b -1/4)) c) (if (<=.f64 a -8331305519933894265696944128) (+.f64 (*.f64 1/16 (*.f64 t z)) c) (if (<=.f64 a -1922994918691027/4074071952668972172536891376818756322102936787331872501272280898708762599526673412366794752) (+.f64 (*.f64 y x) c) (if (<=.f64 a -1369170424733123/657516987693546688405123735360016083193792475352896732437285112883591519287135102764208317034698556403372871107022277214127429031272975482890976846331485106244402958891055574773957969735540339658911656466972672) (+.f64 (*.f64 1/16 (*.f64 t z)) c) (if (<=.f64 a -4967183886466875/39916806190694396233127454260736771321349025208709150830050944848744237837379281315699159309852714021786848936883849904879448759767871873214783435965696628406400113459021713530350754428887259743653067134890878479866616209102417407777777105368960883150142418137515120832847169904606880198557696) (+.f64 (*.f64 y x) c) (+.f64 (*.f64 1/16 (*.f64 t z)) c))))))
(if (<=.f64 b -2276640449047675/573374653997517877902705223825521735199141247292070280934397209846730719022121202017504638277531421638656) (*.f64 a (*.f64 b -1/4)) (if (<=.f64 b 5057945629258681/441711766194596082395824375185729628956870974218904739530401550323154944) (+.f64 (*.f64 1/16 (*.f64 t z)) c) (if (<=.f64 b 2138303086320793/4398046511104) (+.f64 (*.f64 y x) c) (if (<=.f64 b 10200000000000000621423919753026934057083457562046272401518147178481984028540928) (+.f64 (*.f64 1/16 (*.f64 t z)) c) (if (<=.f64 b 1550000000000000100626514996523646205052654078358212506446285373342462566996680185260894607870308957342410274810817687037987160234119176681152459773573300954226587263291337575220698307989663121408) (*.f64 a (*.f64 b -1/4)) (if (<=.f64 b 419999999999999973992224492943769515117226154171216241261454658571411506879612514597715134860394628838496469769374130952273555881673838272450193959189347306050904490037667736779721336903821971111565107369609503152484162474346796848056911431144632473261188082099021696323972937297520737910784) (+.f64 (*.f64 1/16 (*.f64 t z)) c) (+.f64 (*.f64 y x) c)))))))
(if (<=.f64 b -5136181507849877/143343663499379469475676305956380433799785311823017570233599302461682679755530300504376159569382855409664) (*.f64 a (*.f64 b -1/4)) (if (<=.f64 b 4650510231605673/5164499756173817179311838344006023748659411585658447025661318713081295244033682389259290706560275662871806343945494986752) (+.f64 (*.f64 y x) c) (if (<=.f64 b 2119596656859555/1174271291386916613944740298394668513687841274454159935353645485766104512557304221731849499192384351515967488) (*.f64 (*.f64 1/16 t) z) (if (<=.f64 b 11500000000000000120425529670065845928457043215077603278848) (+.f64 (*.f64 y x) c) (if (<=.f64 b 509999999999999973119502929338104769456966078680513336036570771749400500731561389616658449373592156006326358418795642204090736571906212757504) (*.f64 (*.f64 1/16 t) z) (if (<=.f64 b 730000000000000037391668303784325757831176237460949261484165381120381399327790526050450291402167436707870261051682460593038110991950785359638420996543741952) (+.f64 (*.f64 y x) c) (if (<=.f64 b 349999999999999987045660426466893192810038112540410661816788739318555054250209106943300580971443533231712310790740585608701928492892797695648736692705265827415274187176706084214617606526973007435051420870458212352) (*.f64 a (*.f64 b -1/4)) (+.f64 (*.f64 y x) c))))))))
(if (<=.f64 c -78087156466990183230250997021601969198265598006493671403760386048) c (if (<=.f64 c -6456694367661259/274877906944) (*.f64 a (*.f64 b -1/4)) (if (<=.f64 c -458833435132479/3936100983140358674171118325863157261303419813782882110237782515784158576702511753696331798193284779002326689610310857585686054524054270515222392815820422596546908348791339130466666204306680269934417552562141332061201544797059608540225005885713074181150932467712) (*.f64 (*.f64 1/16 t) z) (if (<=.f64 c 902891219083735/594806763391113225119224999259960224052504080663757783622308743726376262864161749418067325798462540235919489516077189220181834098217962283116332232440957850313188336178983949577074563933719094748095678312940574882427099482751152035262839576139463233204818042181657565129506139525873664) (*.f64 a (*.f64 b -1/4)) (if (<=.f64 c 3791901068346781/2335969596222563951944279862118549158345332995711262684456546569164428885610842821891027359394494156686664862501680336543072616817344224255105362595697773664385021273272455654442431586430261133312) (*.f64 (*.f64 1/16 t) z) (if (<=.f64 c 6176324715384883/576460752303423488) (*.f64 y x) (if (<=.f64 c 571427045476943708290240676035754327286726818611806722850816) (*.f64 (*.f64 1/16 t) z) (if (<=.f64 c 18150670797198870870816109970726220012165214965813398300933776314678046888366863598036025606144) (*.f64 a (*.f64 b -1/4)) c))))))))
(if (<=.f64 c -24614029412092991026595048744224346948118756850499611739717369856) c (if (<=.f64 c 3791901068346781/2335969596222563951944279862118549158345332995711262684456546569164428885610842821891027359394494156686664862501680336543072616817344224255105362595697773664385021273272455654442431586430261133312) (*.f64 (*.f64 1/16 t) z) (if (<=.f64 c 6176324715384883/576460752303423488) (*.f64 y x) (if (<=.f64 c 953843906711909419136335900486224840305013802480134443331257592666353894751980579567819554816) (*.f64 (*.f64 1/16 t) z) (if (<=.f64 c 7349731980644859168764032721895208261180982046666963641225128063426982931287060295673849770407512246321152) (*.f64 y x) c)))))
(if (<=.f64 c -48149245380037888976626900795392) c (if (<=.f64 c 7349731980644859168764032721895208261180982046666963641225128063426982931287060295673849770407512246321152) (*.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) -6646139978924579/664613997892457936451903530140172288) (-.f64 (+.f64 c (*.f64 y x)) (*.f64 1/4 (*.f64 a b))) (if (<=.f64 (*.f64 a b) 2772669694120815/693167423530203714894603546035770925859109268843954143792619895153655326951406405759993601526034894524347802740350892957243539456) (+.f64 (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) c) (-.f64 (+.f64 c (*.f64 1/16 (*.f64 t z))) (*.f64 1/4 (*.f64 a b)))))
(if (<=.f64 (*.f64 a b) -6646139978924579/664613997892457936451903530140172288) (+.f64 (+.f64 c (*.f64 y x)) (*.f64 -1/4 (*.f64 a b))) (if (<=.f64 (*.f64 a b) 2772669694120815/693167423530203714894603546035770925859109268843954143792619895153655326951406405759993601526034894524347802740350892957243539456) (+.f64 c (+.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)))))
(if (<=.f64 (*.f64 a b) -6646139978924579/664613997892457936451903530140172288) (-.f64 (+.f64 c (*.f64 y x)) (*.f64 (*.f64 a b) 1/4)) (if (<=.f64 (*.f64 a b) 2772669694120815/693167423530203714894603546035770925859109268843954143792619895153655326951406405759993601526034894524347802740350892957243539456) (+.f64 c (+.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)))))
(if (<=.f64 (*.f64 a b) -6646139978924579/664613997892457936451903530140172288) (-.f64 (+.f64 c (*.f64 y x)) (*.f64 1/4 (*.f64 a b))) (if (<=.f64 (*.f64 a b) 100000000000000000) (+.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) -6646139978924579/664613997892457936451903530140172288) (+.f64 (+.f64 c (*.f64 y x)) (*.f64 -1/4 (*.f64 a b))) (if (<=.f64 (*.f64 a b) 100000000000000000) (+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))) (+.f64 (+.f64 c (*.f64 y x)) (*.f64 -1/4 (*.f64 a b)))))
(if (<=.f64 (*.f64 a b) -6646139978924579/664613997892457936451903530140172288) (-.f64 (+.f64 c (*.f64 y x)) (*.f64 (*.f64 a b) 1/4)) (if (<=.f64 (*.f64 a b) 100000000000000000) (+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))) (-.f64 (+.f64 c (*.f64 y x)) (*.f64 (*.f64 a b) 1/4))))
(if (<=.f64 (*.f64 a b) -49999999999999998584394024780232100424968164183088578953216) (+.f64 (*.f64 a (*.f64 b -1/4)) c) (if (<=.f64 (*.f64 a b) 9999999999999999438119489974413630815797154428513196965888) (+.f64 (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) c) (-.f64 (*.f64 y x) (*.f64 1/4 (*.f64 a b)))))
(if (<=.f64 (*.f64 a b) -49999999999999998584394024780232100424968164183088578953216) (+.f64 c (*.f64 a (*.f64 b -1/4))) (if (<=.f64 (*.f64 a b) 9999999999999999438119489974413630815797154428513196965888) (+.f64 c (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z)))) (+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b)))))
(if (<=.f64 b -8010324397266307/1978643211784836272484020168157177520281050792809694719312504448743177800852254937362531208489944359916781371408129114714810920274454009679740369240815145343332854177189593088) (+.f64 (*.f64 a (*.f64 b -1/4)) c) (if (<=.f64 b 2074656888388633/709803441694928604052074031140629428079727891296209043243642772637343054798240159498233447962659731992932150006119314388217384402944) (+.f64 (*.f64 1/16 (*.f64 t z)) c) (if (<=.f64 b 5069553398462687/43556142965880123323311949751266331066368) (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) (if (<=.f64 b 1794875468714224236793859932160) (+.f64 (*.f64 1/16 (*.f64 t z)) c) (if (<=.f64 b 11500000000000000120425529670065845928457043215077603278848) (+.f64 (*.f64 y x) c) (if (<=.f64 b 10000000000000000508222848402996879704791089448509839788449208028871961714412352270078388372553960191290960287445781834331294577148468377157632) (-.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 1/4 (*.f64 a b))) (if (<=.f64 b 999999999999999979617044168753715171107129451866841652067632118957448454785561110036171446110395985078602511391629572118883509758736380261518894779920079058604308854941977225917932503040) (-.f64 (*.f64 y x) (*.f64 1/4 (*.f64 a b))) (if (<=.f64 b 2000000000000000112950822041041682829681252763966116749401130328310913127935156394378439523178919965959536338695072724193131961289213847754610320291206559558839567880608124639637128476165182553839199176610603506544803697392590258176) (-.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 1/4 (*.f64 a b))) (if (<=.f64 b 2149999999999999898074107963305809529218251292484149598370074098894335376855494106464460620537861603635919240698064214485381143558044700143860232576306352787966011572504254814677045879310529583871249277212594113107824987369448371239763622742886393150324080640) (+.f64 (*.f64 y x) c) (if (<=.f64 b 4249999999999999981713237554170037907363188573939176465006025024402204295920875490536614438381730033140373120895339650917931487962756383076570966645270399826069706480125876739175720038665583818728936713592741295545808445118556511026221918670430332910309201847803904152790886241269710848) (-.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 1/4 (*.f64 a b))) (+.f64 (*.f64 y x) c)))))))))))
(if (<=.f64 b -8010324397266307/1978643211784836272484020168157177520281050792809694719312504448743177800852254937362531208489944359916781371408129114714810920274454009679740369240815145343332854177189593088) (+.f64 c (*.f64 a (*.f64 b -1/4))) (if (<=.f64 b 2074656888388633/709803441694928604052074031140629428079727891296209043243642772637343054798240159498233447962659731992932150006119314388217384402944) (+.f64 c (*.f64 1/16 (*.f64 t z))) (if (<=.f64 b 5069553398462687/43556142965880123323311949751266331066368) (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) (if (<=.f64 b 1794875468714224236793859932160) (+.f64 c (*.f64 1/16 (*.f64 t z))) (if (<=.f64 b 11500000000000000120425529670065845928457043215077603278848) (+.f64 c (*.f64 y x)) (if (<=.f64 b 10000000000000000508222848402996879704791089448509839788449208028871961714412352270078388372553960191290960287445781834331294577148468377157632) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))) (if (<=.f64 b 999999999999999979617044168753715171107129451866841652067632118957448454785561110036171446110395985078602511391629572118883509758736380261518894779920079058604308854941977225917932503040) (+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b))) (if (<=.f64 b 2000000000000000112950822041041682829681252763966116749401130328310913127935156394378439523178919965959536338695072724193131961289213847754610320291206559558839567880608124639637128476165182553839199176610603506544803697392590258176) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))) (if (<=.f64 b 2149999999999999898074107963305809529218251292484149598370074098894335376855494106464460620537861603635919240698064214485381143558044700143860232576306352787966011572504254814677045879310529583871249277212594113107824987369448371239763622742886393150324080640) (+.f64 c (*.f64 y x)) (if (<=.f64 b 4249999999999999981713237554170037907363188573939176465006025024402204295920875490536614438381730033140373120895339650917931487962756383076570966645270399826069706480125876739175720038665583818728936713592741295545808445118556511026221918670430332910309201847803904152790886241269710848) (+.f64 (*.f64 1/16 (*.f64 t z)) (*.f64 -1/4 (*.f64 a b))) (+.f64 c (*.f64 y x))))))))))))
(if (<=.f64 (*.f64 a b) -100000000000000008821361405306422640701865984) (+.f64 (*.f64 a (*.f64 b -1/4)) c) (if (<=.f64 (*.f64 a b) -2993155353253689/2993155353253689176481146537402947624255349848014848) (-.f64 (*.f64 y x) (*.f64 1/4 (*.f64 a b))) (if (<=.f64 (*.f64 a b) -2894802230932905/14474011154664524427946373126085988481658748083205070504932198000989141204992) (+.f64 (*.f64 1/16 (*.f64 t z)) c) (if (<=.f64 (*.f64 a b) -5678427533559429/2839213766779714416208296124562517712318911565184836172974571090549372219192960637992933791850638927971728600024477257552869537611776) (-.f64 (*.f64 y x) (*.f64 1/4 (*.f64 a b))) (if (<=.f64 (*.f64 a b) 4999999999999999791559868416) (+.f64 (*.f64 1/16 (*.f64 t z)) c) (-.f64 (*.f64 y x) (*.f64 1/4 (*.f64 a b))))))))
(if (<=.f64 (*.f64 a b) -100000000000000008821361405306422640701865984) (+.f64 c (*.f64 a (*.f64 b -1/4))) (if (<=.f64 (*.f64 a b) -2993155353253689/2993155353253689176481146537402947624255349848014848) (+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b))) (if (<=.f64 (*.f64 a b) -2894802230932905/14474011154664524427946373126085988481658748083205070504932198000989141204992) (+.f64 c (*.f64 1/16 (*.f64 t z))) (if (<=.f64 (*.f64 a b) -5678427533559429/2839213766779714416208296124562517712318911565184836172974571090549372219192960637992933791850638927971728600024477257552869537611776) (+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b))) (if (<=.f64 (*.f64 a b) 4999999999999999791559868416) (+.f64 c (*.f64 1/16 (*.f64 t z))) (+.f64 (*.f64 y x) (*.f64 -1/4 (*.f64 a b))))))))
(if (<=.f64 t -3578853897235187/2449441655328671218473925200700819802261115891310932980616707775308160183158275122807205904404441104841876294862561960570988912251863537292521360689146388717906188066642938460312627143172697498123763712) (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) (if (<=.f64 t 6594795192364733/1161731959748268017810986326679609812602547032546401921137321765090578638406565916832162745700122148898280252961088260195667644723081957584211586391486245801392945969099578026517723757683045106929874371704962060317240428677248343818872733547147389127353160238636049931893566678761472) (+.f64 (*.f64 a (*.f64 b -1/4)) c) (if (<=.f64 t 1836502384636071/2568425733177916751582514591250062824975751856847252861083144972201529372215371495172688738416791235950675277761805770367685269653410060480042878305982363696267199058168185838960773319279454451792623658074112) (+.f64 (*.f64 y x) c) (if (<=.f64 t 5774311724632667/2293498615990071511610820895302086940796564989168281123737588839386922876088484808070018553110125686554624) (+.f64 (*.f64 a (*.f64 b -1/4)) c) (if (<=.f64 t 27372598177521/28948022309329048855892746252171976963317496166410141009864396001978282409984) (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) (if (<=.f64 t 47483082392711/5192296858534827628530496329220096) (+.f64 (*.f64 a (*.f64 b -1/4)) c) (if (<=.f64 t 1067891242281699/36028797018963968) (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) (if (<=.f64 t 169999999999999995546453021296755194706307008289722553445664860276625768448) (+.f64 (*.f64 a (*.f64 b -1/4)) c) (if (<=.f64 t 10000000000000000597830782460516151851749290252338090708736359498322008205751130936310560341066601403445681992244323541365884452864) (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) (+.f64 (*.f64 1/16 (*.f64 t z)) c))))))))))
(if (<=.f64 t -3578853897235187/2449441655328671218473925200700819802261115891310932980616707775308160183158275122807205904404441104841876294862561960570988912251863537292521360689146388717906188066642938460312627143172697498123763712) (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) (if (<=.f64 t 6594795192364733/1161731959748268017810986326679609812602547032546401921137321765090578638406565916832162745700122148898280252961088260195667644723081957584211586391486245801392945969099578026517723757683045106929874371704962060317240428677248343818872733547147389127353160238636049931893566678761472) (+.f64 c (*.f64 a (*.f64 b -1/4))) (if (<=.f64 t 1836502384636071/2568425733177916751582514591250062824975751856847252861083144972201529372215371495172688738416791235950675277761805770367685269653410060480042878305982363696267199058168185838960773319279454451792623658074112) (+.f64 c (*.f64 y x)) (if (<=.f64 t 5774311724632667/2293498615990071511610820895302086940796564989168281123737588839386922876088484808070018553110125686554624) (+.f64 c (*.f64 a (*.f64 b -1/4))) (if (<=.f64 t 27372598177521/28948022309329048855892746252171976963317496166410141009864396001978282409984) (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) (if (<=.f64 t 47483082392711/5192296858534827628530496329220096) (+.f64 c (*.f64 a (*.f64 b -1/4))) (if (<=.f64 t 1067891242281699/36028797018963968) (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) (if (<=.f64 t 169999999999999995546453021296755194706307008289722553445664860276625768448) (+.f64 c (*.f64 a (*.f64 b -1/4))) (if (<=.f64 t 10000000000000000597830782460516151851749290252338090708736359498322008205751130936310560341066601403445681992244323541365884452864) (+.f64 (*.f64 y x) (*.f64 1/16 (*.f64 t z))) (+.f64 c (*.f64 1/16 (*.f64 t z))))))))))))
(if (<=.f64 a -879999999999999958507063942391341293078620439980425991327011484655074736196101580184131712581632) (+.f64 (*.f64 a (*.f64 b -1/4)) c) (if (<=.f64 a -8331305519933894265696944128) (+.f64 (*.f64 1/16 (*.f64 t z)) c) (if (<=.f64 a -1922994918691027/4074071952668972172536891376818756322102936787331872501272280898708762599526673412366794752) (+.f64 (*.f64 y x) c) (if (<=.f64 a -1369170424733123/657516987693546688405123735360016083193792475352896732437285112883591519287135102764208317034698556403372871107022277214127429031272975482890976846331485106244402958891055574773957969735540339658911656466972672) (+.f64 (*.f64 1/16 (*.f64 t z)) c) (if (<=.f64 a -4967183886466875/39916806190694396233127454260736771321349025208709150830050944848744237837379281315699159309852714021786848936883849904879448759767871873214783435965696628406400113459021713530350754428887259743653067134890878479866616209102417407777777105368960883150142418137515120832847169904606880198557696) (+.f64 (*.f64 y x) c) (+.f64 (*.f64 1/16 (*.f64 t z)) c))))))
(if (<=.f64 a -879999999999999958507063942391341293078620439980425991327011484655074736196101580184131712581632) (+.f64 c (*.f64 a (*.f64 b -1/4))) (if (<=.f64 a -8331305519933894265696944128) (+.f64 c (*.f64 1/16 (*.f64 t z))) (if (<=.f64 a -1922994918691027/4074071952668972172536891376818756322102936787331872501272280898708762599526673412366794752) (+.f64 c (*.f64 y x)) (if (<=.f64 a -1369170424733123/657516987693546688405123735360016083193792475352896732437285112883591519287135102764208317034698556403372871107022277214127429031272975482890976846331485106244402958891055574773957969735540339658911656466972672) (+.f64 c (*.f64 1/16 (*.f64 t z))) (if (<=.f64 a -4967183886466875/39916806190694396233127454260736771321349025208709150830050944848744237837379281315699159309852714021786848936883849904879448759767871873214783435965696628406400113459021713530350754428887259743653067134890878479866616209102417407777777105368960883150142418137515120832847169904606880198557696) (+.f64 c (*.f64 y x)) (+.f64 c (*.f64 1/16 (*.f64 t z))))))))
(if (<=.f64 b -2276640449047675/573374653997517877902705223825521735199141247292070280934397209846730719022121202017504638277531421638656) (*.f64 a (*.f64 b -1/4)) (if (<=.f64 b 5057945629258681/441711766194596082395824375185729628956870974218904739530401550323154944) (+.f64 (*.f64 1/16 (*.f64 t z)) c) (if (<=.f64 b 2138303086320793/4398046511104) (+.f64 (*.f64 y x) c) (if (<=.f64 b 10200000000000000621423919753026934057083457562046272401518147178481984028540928) (+.f64 (*.f64 1/16 (*.f64 t z)) c) (if (<=.f64 b 1550000000000000100626514996523646205052654078358212506446285373342462566996680185260894607870308957342410274810817687037987160234119176681152459773573300954226587263291337575220698307989663121408) (*.f64 a (*.f64 b -1/4)) (if (<=.f64 b 419999999999999973992224492943769515117226154171216241261454658571411506879612514597715134860394628838496469769374130952273555881673838272450193959189347306050904490037667736779721336903821971111565107369609503152484162474346796848056911431144632473261188082099021696323972937297520737910784) (+.f64 (*.f64 1/16 (*.f64 t z)) c) (+.f64 (*.f64 y x) c)))))))
(if (<=.f64 b -2276640449047675/573374653997517877902705223825521735199141247292070280934397209846730719022121202017504638277531421638656) (*.f64 a (*.f64 b -1/4)) (if (<=.f64 b 5057945629258681/441711766194596082395824375185729628956870974218904739530401550323154944) (+.f64 c (*.f64 1/16 (*.f64 t z))) (if (<=.f64 b 2138303086320793/4398046511104) (+.f64 c (*.f64 y x)) (if (<=.f64 b 10200000000000000621423919753026934057083457562046272401518147178481984028540928) (+.f64 c (*.f64 1/16 (*.f64 t z))) (if (<=.f64 b 1550000000000000100626514996523646205052654078358212506446285373342462566996680185260894607870308957342410274810817687037987160234119176681152459773573300954226587263291337575220698307989663121408) (*.f64 a (*.f64 b -1/4)) (if (<=.f64 b 419999999999999973992224492943769515117226154171216241261454658571411506879612514597715134860394628838496469769374130952273555881673838272450193959189347306050904490037667736779721336903821971111565107369609503152484162474346796848056911431144632473261188082099021696323972937297520737910784) (+.f64 c (*.f64 1/16 (*.f64 t z))) (+.f64 c (*.f64 y x))))))))
(if (<=.f64 b -5136181507849877/143343663499379469475676305956380433799785311823017570233599302461682679755530300504376159569382855409664) (*.f64 a (*.f64 b -1/4)) (if (<=.f64 b 4650510231605673/5164499756173817179311838344006023748659411585658447025661318713081295244033682389259290706560275662871806343945494986752) (+.f64 (*.f64 y x) c) (if (<=.f64 b 2119596656859555/1174271291386916613944740298394668513687841274454159935353645485766104512557304221731849499192384351515967488) (*.f64 (*.f64 1/16 t) z) (if (<=.f64 b 11500000000000000120425529670065845928457043215077603278848) (+.f64 (*.f64 y x) c) (if (<=.f64 b 509999999999999973119502929338104769456966078680513336036570771749400500731561389616658449373592156006326358418795642204090736571906212757504) (*.f64 (*.f64 1/16 t) z) (if (<=.f64 b 730000000000000037391668303784325757831176237460949261484165381120381399327790526050450291402167436707870261051682460593038110991950785359638420996543741952) (+.f64 (*.f64 y x) c) (if (<=.f64 b 349999999999999987045660426466893192810038112540410661816788739318555054250209106943300580971443533231712310790740585608701928492892797695648736692705265827415274187176706084214617606526973007435051420870458212352) (*.f64 a (*.f64 b -1/4)) (+.f64 (*.f64 y x) c))))))))
(if (<=.f64 b -5136181507849877/143343663499379469475676305956380433799785311823017570233599302461682679755530300504376159569382855409664) (*.f64 a (*.f64 b -1/4)) (if (<=.f64 b 4650510231605673/5164499756173817179311838344006023748659411585658447025661318713081295244033682389259290706560275662871806343945494986752) (+.f64 c (*.f64 y x)) (if (<=.f64 b 2119596656859555/1174271291386916613944740298394668513687841274454159935353645485766104512557304221731849499192384351515967488) (*.f64 z (*.f64 1/16 t)) (if (<=.f64 b 11500000000000000120425529670065845928457043215077603278848) (+.f64 c (*.f64 y x)) (if (<=.f64 b 509999999999999973119502929338104769456966078680513336036570771749400500731561389616658449373592156006326358418795642204090736571906212757504) (*.f64 z (*.f64 1/16 t)) (if (<=.f64 b 730000000000000037391668303784325757831176237460949261484165381120381399327790526050450291402167436707870261051682460593038110991950785359638420996543741952) (+.f64 c (*.f64 y x)) (if (<=.f64 b 349999999999999987045660426466893192810038112540410661816788739318555054250209106943300580971443533231712310790740585608701928492892797695648736692705265827415274187176706084214617606526973007435051420870458212352) (*.f64 a (*.f64 b -1/4)) (+.f64 c (*.f64 y x)))))))))
(if (<=.f64 c -78087156466990183230250997021601969198265598006493671403760386048) c (if (<=.f64 c -6456694367661259/274877906944) (*.f64 a (*.f64 b -1/4)) (if (<=.f64 c -458833435132479/3936100983140358674171118325863157261303419813782882110237782515784158576702511753696331798193284779002326689610310857585686054524054270515222392815820422596546908348791339130466666204306680269934417552562141332061201544797059608540225005885713074181150932467712) (*.f64 (*.f64 1/16 t) z) (if (<=.f64 c 902891219083735/594806763391113225119224999259960224052504080663757783622308743726376262864161749418067325798462540235919489516077189220181834098217962283116332232440957850313188336178983949577074563933719094748095678312940574882427099482751152035262839576139463233204818042181657565129506139525873664) (*.f64 a (*.f64 b -1/4)) (if (<=.f64 c 3791901068346781/2335969596222563951944279862118549158345332995711262684456546569164428885610842821891027359394494156686664862501680336543072616817344224255105362595697773664385021273272455654442431586430261133312) (*.f64 (*.f64 1/16 t) z) (if (<=.f64 c 6176324715384883/576460752303423488) (*.f64 y x) (if (<=.f64 c 571427045476943708290240676035754327286726818611806722850816) (*.f64 (*.f64 1/16 t) z) (if (<=.f64 c 18150670797198870870816109970726220012165214965813398300933776314678046888366863598036025606144) (*.f64 a (*.f64 b -1/4)) c))))))))
(if (<=.f64 c -78087156466990183230250997021601969198265598006493671403760386048) c (if (<=.f64 c -6456694367661259/274877906944) (*.f64 a (*.f64 b -1/4)) (if (<=.f64 c -458833435132479/3936100983140358674171118325863157261303419813782882110237782515784158576702511753696331798193284779002326689610310857585686054524054270515222392815820422596546908348791339130466666204306680269934417552562141332061201544797059608540225005885713074181150932467712) (*.f64 z (*.f64 1/16 t)) (if (<=.f64 c 902891219083735/594806763391113225119224999259960224052504080663757783622308743726376262864161749418067325798462540235919489516077189220181834098217962283116332232440957850313188336178983949577074563933719094748095678312940574882427099482751152035262839576139463233204818042181657565129506139525873664) (*.f64 a (*.f64 b -1/4)) (if (<=.f64 c 3791901068346781/2335969596222563951944279862118549158345332995711262684456546569164428885610842821891027359394494156686664862501680336543072616817344224255105362595697773664385021273272455654442431586430261133312) (*.f64 z (*.f64 1/16 t)) (if (<=.f64 c 6176324715384883/576460752303423488) (*.f64 y x) (if (<=.f64 c 571427045476943708290240676035754327286726818611806722850816) (*.f64 z (*.f64 1/16 t)) (if (<=.f64 c 18150670797198870870816109970726220012165214965813398300933776314678046888366863598036025606144) (*.f64 a (*.f64 b -1/4)) c))))))))
(if (<=.f64 c -24614029412092991026595048744224346948118756850499611739717369856) c (if (<=.f64 c 3791901068346781/2335969596222563951944279862118549158345332995711262684456546569164428885610842821891027359394494156686664862501680336543072616817344224255105362595697773664385021273272455654442431586430261133312) (*.f64 (*.f64 1/16 t) z) (if (<=.f64 c 6176324715384883/576460752303423488) (*.f64 y x) (if (<=.f64 c 953843906711909419136335900486224840305013802480134443331257592666353894751980579567819554816) (*.f64 (*.f64 1/16 t) z) (if (<=.f64 c 7349731980644859168764032721895208261180982046666963641225128063426982931287060295673849770407512246321152) (*.f64 y x) c)))))
(if (<=.f64 c -24614029412092991026595048744224346948118756850499611739717369856) c (if (<=.f64 c 3791901068346781/2335969596222563951944279862118549158345332995711262684456546569164428885610842821891027359394494156686664862501680336543072616817344224255105362595697773664385021273272455654442431586430261133312) (*.f64 z (*.f64 1/16 t)) (if (<=.f64 c 6176324715384883/576460752303423488) (*.f64 y x) (if (<=.f64 c 953843906711909419136335900486224840305013802480134443331257592666353894751980579567819554816) (*.f64 z (*.f64 1/16 t)) (if (<=.f64 c 7349731980644859168764032721895208261180982046666963641225128063426982931287060295673849770407512246321152) (*.f64 y x) c)))))
(if (<=.f64 c -48149245380037888976626900795392) c (if (<=.f64 c 7349731980644859168764032721895208261180982046666963641225128063426982931287060295673849770407512246321152) (*.f64 y x) c))
c
Compiler

Compiled 894 to 522 computations (41.6% saved)

soundness245.0ms (1.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
0303259
1713251
21683113
34423113
47183113
511513113
621263113
729583113
833483113
934543113
1034543113
1137513113
1237513113
Stop Event
saturated
Compiler

Compiled 302 to 211 computations (30.1% saved)

end450.0ms (2.1%)

Remove

(sort a b)

(sort z t)

(sort x y)

Compiler

Compiled 922 to 476 computations (48.4% saved)

Profiling

Loading profile data...