Details

Time bar (total: 12.4s)

analyze477.0ms (3.9%)

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

Compiled 24 to 16 computations (33.3% saved)

sample2.9s (23.6%)

Results
1.7s8256×body256valid
1.2s5801×body256invalid

preprocess47.0ms (0.4%)

Algorithm
egg-herbie
Rules
771×fma-def_binary64
329×associate-+l+_binary64
267×associate-+r+_binary64
212×+-commutative_binary64
28×*-commutative_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0133580
1363464
21010464
31727464
41866464
51872464
088
188
Stop Event
unsound
saturated
Calls
Call 1
Inputs
0
1
2
3
4
5
6
7
Outputs
0
1
0
2
3
2
4
5
4
6
7
6
Call 2
Inputs
(+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a b)) (*.f64 c i))
(+.f64 (+.f64 (+.f64 (*.f64 y x) (*.f64 z t)) (*.f64 a b)) (*.f64 c i))
(+.f64 (+.f64 (+.f64 (*.f64 z y) (*.f64 x t)) (*.f64 a b)) (*.f64 c i))
(+.f64 (+.f64 (+.f64 (*.f64 t y) (*.f64 z x)) (*.f64 a b)) (*.f64 c i))
(+.f64 (+.f64 (+.f64 (*.f64 a y) (*.f64 z t)) (*.f64 x b)) (*.f64 c i))
(+.f64 (+.f64 (+.f64 (*.f64 b y) (*.f64 z t)) (*.f64 a x)) (*.f64 c i))
(+.f64 (+.f64 (+.f64 (*.f64 c y) (*.f64 z t)) (*.f64 a b)) (*.f64 x i))
(+.f64 (+.f64 (+.f64 (*.f64 i y) (*.f64 z t)) (*.f64 a b)) (*.f64 c x))
(+.f64 (+.f64 (+.f64 (*.f64 x z) (*.f64 y t)) (*.f64 a b)) (*.f64 c i))
(+.f64 (+.f64 (+.f64 (*.f64 x t) (*.f64 z y)) (*.f64 a b)) (*.f64 c i))
(+.f64 (+.f64 (+.f64 (*.f64 x a) (*.f64 z t)) (*.f64 y b)) (*.f64 c i))
(+.f64 (+.f64 (+.f64 (*.f64 x b) (*.f64 z t)) (*.f64 a y)) (*.f64 c i))
(+.f64 (+.f64 (+.f64 (*.f64 x c) (*.f64 z t)) (*.f64 a b)) (*.f64 y i))
(+.f64 (+.f64 (+.f64 (*.f64 x i) (*.f64 z t)) (*.f64 a b)) (*.f64 c y))
(+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 t z)) (*.f64 a b)) (*.f64 c i))
(+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 a t)) (*.f64 z b)) (*.f64 c i))
(+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 b t)) (*.f64 a z)) (*.f64 c i))
(+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 c t)) (*.f64 a b)) (*.f64 z i))
(+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 i t)) (*.f64 a b)) (*.f64 c z))
(+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 z a)) (*.f64 t b)) (*.f64 c i))
(+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 z b)) (*.f64 a t)) (*.f64 c i))
(+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 z c)) (*.f64 a b)) (*.f64 t i))
(+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 z i)) (*.f64 a b)) (*.f64 c t))
(+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 b a)) (*.f64 c i))
(+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 c b)) (*.f64 a i))
(+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 i b)) (*.f64 c a))
(+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a c)) (*.f64 b i))
(+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a i)) (*.f64 c b))
(+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a b)) (*.f64 i c))
Outputs
(+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a b)) (*.f64 c i))
(+.f64 (fma.f64 x y (*.f64 z t)) (+.f64 (*.f64 a b) (*.f64 c i)))
(fma.f64 c i (fma.f64 a b (fma.f64 x y (*.f64 z t))))
(fma.f64 c i (fma.f64 z t (fma.f64 a b (*.f64 x y))))
(+.f64 (+.f64 (+.f64 (*.f64 y x) (*.f64 z t)) (*.f64 a b)) (*.f64 c i))
(+.f64 (fma.f64 x y (*.f64 z t)) (+.f64 (*.f64 a b) (*.f64 c i)))
(fma.f64 c i (fma.f64 a b (fma.f64 x y (*.f64 z t))))
(fma.f64 c i (fma.f64 z t (fma.f64 a b (*.f64 x y))))
(+.f64 (+.f64 (+.f64 (*.f64 z y) (*.f64 x t)) (*.f64 a b)) (*.f64 c i))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (fma.f64 x t (*.f64 y z))))
(fma.f64 c i (fma.f64 x t (fma.f64 y z (*.f64 a b))))
(fma.f64 a b (fma.f64 c i (fma.f64 x t (*.f64 y z))))
(fma.f64 x t (fma.f64 c i (fma.f64 y z (*.f64 a b))))
(+.f64 (+.f64 (+.f64 (*.f64 t y) (*.f64 z x)) (*.f64 a b)) (*.f64 c i))
(+.f64 (fma.f64 t y (*.f64 x z)) (+.f64 (*.f64 a b) (*.f64 c i)))
(fma.f64 c i (fma.f64 x z (fma.f64 y t (*.f64 a b))))
(fma.f64 y t (fma.f64 x z (fma.f64 a b (*.f64 c i))))
(fma.f64 x z (fma.f64 a b (fma.f64 c i (*.f64 y t))))
(+.f64 (+.f64 (+.f64 (*.f64 a y) (*.f64 z t)) (*.f64 x b)) (*.f64 c i))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y a) (fma.f64 x b (*.f64 z t))))
(fma.f64 c i (fma.f64 x b (fma.f64 y a (*.f64 z t))))
(fma.f64 x b (fma.f64 z t (fma.f64 y a (*.f64 c i))))
(fma.f64 x b (fma.f64 y a (fma.f64 z t (*.f64 c i))))
(+.f64 (+.f64 (+.f64 (*.f64 b y) (*.f64 z t)) (*.f64 a x)) (*.f64 c i))
(+.f64 (*.f64 c i) (+.f64 (fma.f64 b y (*.f64 z t)) (*.f64 x a)))
(fma.f64 c i (fma.f64 x a (fma.f64 y b (*.f64 z t))))
(fma.f64 z t (fma.f64 y b (fma.f64 x a (*.f64 c i))))
(+.f64 (+.f64 (+.f64 (*.f64 c y) (*.f64 z t)) (*.f64 a b)) (*.f64 x i))
(+.f64 (fma.f64 c y (*.f64 z t)) (+.f64 (*.f64 a b) (*.f64 x i)))
(fma.f64 x i (fma.f64 y c (fma.f64 z t (*.f64 a b))))
(+.f64 (+.f64 (+.f64 (*.f64 i y) (*.f64 z t)) (*.f64 a b)) (*.f64 c x))
(+.f64 (fma.f64 i y (*.f64 z t)) (+.f64 (*.f64 a b) (*.f64 x c)))
(fma.f64 x c (fma.f64 y i (fma.f64 z t (*.f64 a b))))
(+.f64 (+.f64 (+.f64 (*.f64 x z) (*.f64 y t)) (*.f64 a b)) (*.f64 c i))
(+.f64 (fma.f64 t y (*.f64 x z)) (+.f64 (*.f64 a b) (*.f64 c i)))
(fma.f64 c i (fma.f64 x z (fma.f64 y t (*.f64 a b))))
(fma.f64 y t (fma.f64 x z (fma.f64 a b (*.f64 c i))))
(fma.f64 x z (fma.f64 a b (fma.f64 c i (*.f64 y t))))
(+.f64 (+.f64 (+.f64 (*.f64 x t) (*.f64 z y)) (*.f64 a b)) (*.f64 c i))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (fma.f64 x t (*.f64 y z))))
(fma.f64 c i (fma.f64 x t (fma.f64 y z (*.f64 a b))))
(fma.f64 a b (fma.f64 c i (fma.f64 x t (*.f64 y z))))
(fma.f64 x t (fma.f64 c i (fma.f64 y z (*.f64 a b))))
(+.f64 (+.f64 (+.f64 (*.f64 x a) (*.f64 z t)) (*.f64 y b)) (*.f64 c i))
(+.f64 (*.f64 c i) (+.f64 (fma.f64 b y (*.f64 z t)) (*.f64 x a)))
(fma.f64 c i (fma.f64 x a (fma.f64 y b (*.f64 z t))))
(fma.f64 z t (fma.f64 y b (fma.f64 x a (*.f64 c i))))
(+.f64 (+.f64 (+.f64 (*.f64 x b) (*.f64 z t)) (*.f64 a y)) (*.f64 c i))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y a) (fma.f64 x b (*.f64 z t))))
(fma.f64 c i (fma.f64 x b (fma.f64 y a (*.f64 z t))))
(fma.f64 x b (fma.f64 z t (fma.f64 y a (*.f64 c i))))
(fma.f64 x b (fma.f64 y a (fma.f64 z t (*.f64 c i))))
(+.f64 (+.f64 (+.f64 (*.f64 x c) (*.f64 z t)) (*.f64 a b)) (*.f64 y i))
(+.f64 (fma.f64 i y (*.f64 z t)) (+.f64 (*.f64 a b) (*.f64 x c)))
(fma.f64 x c (fma.f64 y i (fma.f64 z t (*.f64 a b))))
(+.f64 (+.f64 (+.f64 (*.f64 x i) (*.f64 z t)) (*.f64 a b)) (*.f64 c y))
(+.f64 (fma.f64 c y (*.f64 z t)) (+.f64 (*.f64 a b) (*.f64 x i)))
(fma.f64 x i (fma.f64 y c (fma.f64 z t (*.f64 a b))))
(+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 t z)) (*.f64 a b)) (*.f64 c i))
(+.f64 (fma.f64 x y (*.f64 z t)) (+.f64 (*.f64 a b) (*.f64 c i)))
(fma.f64 c i (fma.f64 a b (fma.f64 x y (*.f64 z t))))
(fma.f64 c i (fma.f64 z t (fma.f64 a b (*.f64 x y))))
(+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 a t)) (*.f64 z b)) (*.f64 c i))
(+.f64 (*.f64 c i) (+.f64 (fma.f64 x y (*.f64 t a)) (*.f64 z b)))
(fma.f64 c i (fma.f64 x y (fma.f64 z b (*.f64 t a))))
(fma.f64 x y (fma.f64 z b (fma.f64 t a (*.f64 c i))))
(+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 b t)) (*.f64 a z)) (*.f64 c i))
(+.f64 (*.f64 c i) (+.f64 (fma.f64 x y (*.f64 t b)) (*.f64 z a)))
(fma.f64 c i (fma.f64 t b (fma.f64 x y (*.f64 z a))))
(fma.f64 z a (fma.f64 c i (fma.f64 x y (*.f64 t b))))
(fma.f64 z a (fma.f64 t b (fma.f64 x y (*.f64 c i))))
(+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 c t)) (*.f64 a b)) (*.f64 z i))
(+.f64 (fma.f64 x y (*.f64 t c)) (+.f64 (*.f64 a b) (*.f64 z i)))
(fma.f64 z i (fma.f64 x y (fma.f64 a b (*.f64 t c))))
(fma.f64 x y (fma.f64 z i (fma.f64 a b (*.f64 t c))))
(+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 i t)) (*.f64 a b)) (*.f64 c z))
(+.f64 (fma.f64 x y (*.f64 t i)) (+.f64 (*.f64 a b) (*.f64 z c)))
(fma.f64 z c (fma.f64 x y (fma.f64 t i (*.f64 a b))))
(fma.f64 x y (fma.f64 t i (fma.f64 z c (*.f64 a b))))
(+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 z a)) (*.f64 t b)) (*.f64 c i))
(+.f64 (*.f64 c i) (+.f64 (fma.f64 x y (*.f64 t b)) (*.f64 z a)))
(fma.f64 c i (fma.f64 t b (fma.f64 x y (*.f64 z a))))
(fma.f64 z a (fma.f64 c i (fma.f64 x y (*.f64 t b))))
(fma.f64 z a (fma.f64 t b (fma.f64 x y (*.f64 c i))))
(+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 z b)) (*.f64 a t)) (*.f64 c i))
(+.f64 (*.f64 c i) (+.f64 (fma.f64 x y (*.f64 t a)) (*.f64 z b)))
(fma.f64 c i (fma.f64 x y (fma.f64 z b (*.f64 t a))))
(fma.f64 x y (fma.f64 z b (fma.f64 t a (*.f64 c i))))
(+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 z c)) (*.f64 a b)) (*.f64 t i))
(+.f64 (fma.f64 x y (*.f64 t i)) (+.f64 (*.f64 a b) (*.f64 z c)))
(fma.f64 z c (fma.f64 x y (fma.f64 t i (*.f64 a b))))
(fma.f64 x y (fma.f64 t i (fma.f64 z c (*.f64 a b))))
(+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 z i)) (*.f64 a b)) (*.f64 c t))
(+.f64 (fma.f64 x y (*.f64 t c)) (+.f64 (*.f64 a b) (*.f64 z i)))
(fma.f64 z i (fma.f64 x y (fma.f64 a b (*.f64 t c))))
(fma.f64 x y (fma.f64 z i (fma.f64 a b (*.f64 t c))))
(+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 b a)) (*.f64 c i))
(+.f64 (fma.f64 x y (*.f64 z t)) (+.f64 (*.f64 a b) (*.f64 c i)))
(fma.f64 c i (fma.f64 a b (fma.f64 x y (*.f64 z t))))
(fma.f64 c i (fma.f64 z t (fma.f64 a b (*.f64 x y))))
(+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 c b)) (*.f64 a i))
(+.f64 (fma.f64 x y (*.f64 z t)) (+.f64 (*.f64 b c) (*.f64 a i)))
(fma.f64 a i (fma.f64 b c (fma.f64 x y (*.f64 z t))))
(fma.f64 a i (fma.f64 x y (fma.f64 b c (*.f64 z t))))
(fma.f64 x y (fma.f64 a i (fma.f64 b c (*.f64 z t))))
(+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 i b)) (*.f64 c a))
(+.f64 (fma.f64 x y (*.f64 z t)) (+.f64 (*.f64 b i) (*.f64 a c)))
(fma.f64 a c (fma.f64 b i (fma.f64 x y (*.f64 z t))))
(fma.f64 a c (fma.f64 z t (fma.f64 x y (*.f64 b i))))
(fma.f64 x y (fma.f64 b i (fma.f64 a c (*.f64 z t))))
(+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a c)) (*.f64 b i))
(+.f64 (fma.f64 x y (*.f64 z t)) (+.f64 (*.f64 b i) (*.f64 a c)))
(fma.f64 a c (fma.f64 b i (fma.f64 x y (*.f64 z t))))
(fma.f64 a c (fma.f64 z t (fma.f64 x y (*.f64 b i))))
(fma.f64 x y (fma.f64 b i (fma.f64 a c (*.f64 z t))))
(+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a i)) (*.f64 c b))
(+.f64 (fma.f64 x y (*.f64 z t)) (+.f64 (*.f64 b c) (*.f64 a i)))
(fma.f64 a i (fma.f64 b c (fma.f64 x y (*.f64 z t))))
(fma.f64 a i (fma.f64 x y (fma.f64 b c (*.f64 z t))))
(fma.f64 x y (fma.f64 a i (fma.f64 b c (*.f64 z t))))
(+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a b)) (*.f64 i c))
(+.f64 (fma.f64 x y (*.f64 z t)) (+.f64 (*.f64 a b) (*.f64 c i)))
(fma.f64 c i (fma.f64 a b (fma.f64 x y (*.f64 z t))))
(fma.f64 c i (fma.f64 z t (fma.f64 a b (*.f64 x y))))
Symmetry

(sort x y)

(sort z t)

(sort a b)

(sort c i)

Compiler

Compiled 31 to 23 computations (25.8% saved)

simplify8.0ms (0.1%)

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

Useful iterations: 1 (0.0ms)

IterNodesCost
01620
12816
26316
312416
415016
515216
Stop Event
saturated
Counts
1 → 2
Calls
Call 1
Inputs
(+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a b)) (*.f64 c i))
Outputs
(+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a b)) (*.f64 c i))
(+.f64 (fma.f64 x y (*.f64 z t)) (+.f64 (*.f64 a b) (*.f64 c i)))
(fma.f64 c i (fma.f64 a b (fma.f64 x y (*.f64 z t))))
(fma.f64 x y (fma.f64 z t (fma.f64 c i (*.f64 a b))))

eval1.0ms (0%)

Compiler

Compiled 35 to 18 computations (48.6% saved)

prune2.0ms (0%)

Pruning

3 alts after pruning (3 fresh and 0 done)

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

Compiled 43 to 27 computations (37.2% saved)

localize17.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a b)) (*.f64 c i))
0.0b
(+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a b))
Compiler

Compiled 61 to 15 computations (75.4% saved)

series18.0ms (0.1%)

Counts
2 → 168
Calls

42 calls:

TimeVariablePointExpression
1.0ms
a
@inf
(+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a b))
1.0ms
x
@0
(+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a b))
1.0ms
y
@-inf
(+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a b))
1.0ms
c
@0
(+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a b)) (*.f64 c i))
1.0ms
x
@inf
(+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a b))

rewrite88.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
922×log-prod_binary64
509×fma-neg_binary64
330×expm1-udef_binary64
330×log1p-udef_binary64
276×log-pow_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01634
134828
2505828
Stop Event
node limit
Counts
2 → 112
Calls
Call 1
Inputs
(+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a b))
(+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a b)) (*.f64 c i))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 2) (-.f64 (fma.f64 x y (*.f64 z t)) (*.f64 a b))) (/.f64 (pow.f64 (*.f64 a b) 2) (-.f64 (fma.f64 x y (*.f64 z t)) (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 a b (fma.f64 x y (*.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t)))) (pow.f64 (cbrt.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t)))) 2) (cbrt.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t)))) (sqrt.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 3) (pow.f64 (*.f64 a b) 3)) (/.f64 1 (+.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 2) (*.f64 (*.f64 a b) (-.f64 (*.f64 a b) (fma.f64 x y (*.f64 z t)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 2) (pow.f64 (*.f64 a b) 2)) (/.f64 1 (-.f64 (fma.f64 x y (*.f64 z t)) (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 2) (*.f64 (*.f64 a b) (-.f64 (*.f64 a b) (fma.f64 x y (*.f64 z t))))) (+.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 3) (pow.f64 (*.f64 a b) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 (fma.f64 x y (*.f64 z t)) (*.f64 a b)) (-.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 2) (pow.f64 (*.f64 a b) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 3) (pow.f64 (*.f64 a b) 3)) (+.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 2) (*.f64 (*.f64 a b) (-.f64 (*.f64 a b) (fma.f64 x y (*.f64 z t))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 3) (pow.f64 (*.f64 a b) 3)) (+.f64 (pow.f64 (*.f64 a b) 2) (-.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 2) (*.f64 (fma.f64 x y (*.f64 z t)) (*.f64 a b)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 2) (pow.f64 (*.f64 a b) 2)) (-.f64 (fma.f64 x y (*.f64 z t)) (*.f64 a b)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 3) (pow.f64 (*.f64 a b) 3))) (neg.f64 (+.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 2) (*.f64 (*.f64 a b) (-.f64 (*.f64 a b) (fma.f64 x y (*.f64 z t)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 2) (pow.f64 (*.f64 a b) 2))) (neg.f64 (-.f64 (fma.f64 x y (*.f64 z t)) (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 x y) 3) (pow.f64 (fma.f64 z t (*.f64 a b)) 3)) (+.f64 (pow.f64 (*.f64 x y) 2) (-.f64 (*.f64 (fma.f64 z t (*.f64 a b)) (fma.f64 z t (*.f64 a b))) (*.f64 (*.f64 x y) (fma.f64 z t (*.f64 a b))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 x y) 2) (*.f64 (fma.f64 z t (*.f64 a b)) (fma.f64 z t (*.f64 a b)))) (-.f64 (*.f64 x y) (fma.f64 z t (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 a b) 2) (pow.f64 (fma.f64 x y (*.f64 z t)) 2)) (-.f64 (*.f64 a b) (fma.f64 x y (*.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x y))) (exp.f64 (fma.f64 z t (*.f64 a b)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 x) y) (*.f64 (pow.f64 (exp.f64 t) z) (pow.f64 (exp.f64 a) b))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x y))) (*.f64 (pow.f64 (exp.f64 t) z) (pow.f64 (exp.f64 a) b))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 x y (*.f64 z t)))) (pow.f64 (exp.f64 a) b)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 x y (*.f64 z t))) (+.f64 1 (expm1.f64 (*.f64 a b)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 x y (*.f64 z t)))) (+.f64 1 (expm1.f64 (*.f64 a b)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 a b))) (exp.f64 (fma.f64 x y (*.f64 z t)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 a) b) (+.f64 1 (expm1.f64 (fma.f64 x y (*.f64 z t))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 a b))) (+.f64 1 (expm1.f64 (fma.f64 x y (*.f64 z t))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 z t (*.f64 a b))) (pow.f64 (exp.f64 x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (*.f64 (pow.f64 (exp.f64 t) z) (pow.f64 (exp.f64 a) b)) (pow.f64 (exp.f64 x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 z t (*.f64 a b))) (+.f64 1 (expm1.f64 (*.f64 x y)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (*.f64 (pow.f64 (exp.f64 t) z) (pow.f64 (exp.f64 a) b)) (+.f64 1 (expm1.f64 (*.f64 x y)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x y (fma.f64 z t (*.f64 a b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y x (fma.f64 z t (*.f64 a b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 a b (fma.f64 x y (*.f64 z t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 b a (fma.f64 x y (*.f64 z t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 x y) (fma.f64 z t (*.f64 a b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 x y (*.f64 z t)) (*.f64 a b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 a b) (fma.f64 x y (*.f64 z t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 a b)) 2) (cbrt.f64 (*.f64 a b)) (fma.f64 x y (*.f64 z t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 x y (*.f64 z t))) 2) (cbrt.f64 (fma.f64 x y (*.f64 z t))) (*.f64 a b))))) (#(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 t (*.f64 a b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 a b)) (sqrt.f64 (*.f64 a b)) (fma.f64 x y (*.f64 z t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 x y (*.f64 z t))) (sqrt.f64 (fma.f64 x y (*.f64 z t))) (*.f64 a b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 x y)) (sqrt.f64 (*.f64 x y)) (fma.f64 z t (*.f64 a b)))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 c i (fma.f64 a b (fma.f64 x y (*.f64 z t)))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t))) 2) (-.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t))) (*.f64 c i))) (/.f64 (pow.f64 (*.f64 c i) 2) (-.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t))) (*.f64 c i))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 c i (fma.f64 a b (fma.f64 x y (*.f64 z t)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 c i (fma.f64 a b (fma.f64 x y (*.f64 z t)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 c i (fma.f64 a b (fma.f64 x y (*.f64 z t))))) (pow.f64 (cbrt.f64 (fma.f64 c i (fma.f64 a b (fma.f64 x y (*.f64 z t))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 c i (fma.f64 a b (fma.f64 x y (*.f64 z t))))) 2) (cbrt.f64 (fma.f64 c i (fma.f64 a b (fma.f64 x y (*.f64 z t))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 c i (fma.f64 a b (fma.f64 x y (*.f64 z t))))) (sqrt.f64 (fma.f64 c i (fma.f64 a b (fma.f64 x y (*.f64 z t))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t))) 3) (pow.f64 (*.f64 c i) 3)) (/.f64 1 (+.f64 (pow.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t))) 2) (*.f64 (*.f64 c i) (-.f64 (*.f64 c i) (fma.f64 a b (fma.f64 x y (*.f64 z t))))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t))) 2) (pow.f64 (*.f64 c i) 2)) (/.f64 1 (-.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t))) (*.f64 c i))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (pow.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t))) 2) (*.f64 (*.f64 c i) (-.f64 (*.f64 c i) (fma.f64 a b (fma.f64 x y (*.f64 z t)))))) (+.f64 (pow.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t))) 3) (pow.f64 (*.f64 c i) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t))) (*.f64 c i)) (-.f64 (pow.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t))) 2) (pow.f64 (*.f64 c i) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t))) 3) (pow.f64 (*.f64 c i) 3)) (+.f64 (pow.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t))) 2) (*.f64 (*.f64 c i) (-.f64 (*.f64 c i) (fma.f64 a b (fma.f64 x y (*.f64 z t)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t))) 3) (pow.f64 (*.f64 c i) 3)) (+.f64 (pow.f64 (*.f64 c i) 2) (-.f64 (pow.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t))) 2) (*.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t))) (*.f64 c i)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t))) 2) (pow.f64 (*.f64 c i) 2)) (-.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t))) (*.f64 c i)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t))) 3) (pow.f64 (*.f64 c i) 3))) (neg.f64 (+.f64 (pow.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t))) 2) (*.f64 (*.f64 c i) (-.f64 (*.f64 c i) (fma.f64 a b (fma.f64 x y (*.f64 z t))))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t))) 2) (pow.f64 (*.f64 c i) 2))) (neg.f64 (-.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t))) (*.f64 c i))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 3) (pow.f64 (fma.f64 a b (*.f64 c i)) 3)) (+.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 2) (-.f64 (*.f64 (fma.f64 a b (*.f64 c i)) (fma.f64 a b (*.f64 c i))) (*.f64 (fma.f64 x y (*.f64 z t)) (fma.f64 a b (*.f64 c i))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 2) (*.f64 (fma.f64 a b (*.f64 c i)) (fma.f64 a b (*.f64 c i)))) (-.f64 (fma.f64 x y (*.f64 z t)) (fma.f64 a b (*.f64 c i))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 c i) 2) (pow.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t))) 2)) (-.f64 (*.f64 c i) (fma.f64 a b (fma.f64 x y (*.f64 z t)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 c i (fma.f64 a b (fma.f64 x y (*.f64 z t)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 c i (fma.f64 a b (fma.f64 x y (*.f64 z t)))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 c i (fma.f64 a b (fma.f64 x y (*.f64 z t))))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 c i (fma.f64 a b (fma.f64 x y (*.f64 z t))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 c i (fma.f64 a b (fma.f64 x y (*.f64 z t)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 c i (fma.f64 a b (fma.f64 x y (*.f64 z t))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 c i (fma.f64 a b (fma.f64 x y (*.f64 z t)))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 x y (*.f64 z t)))) (exp.f64 (fma.f64 a b (*.f64 c i)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 x y (*.f64 z t))) (*.f64 (pow.f64 (exp.f64 a) b) (pow.f64 (exp.f64 i) c))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 x y (*.f64 z t)))) (*.f64 (pow.f64 (exp.f64 a) b) (pow.f64 (exp.f64 i) c))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t))))) (pow.f64 (exp.f64 i) c)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t)))) (+.f64 1 (expm1.f64 (*.f64 c i)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t))))) (+.f64 1 (expm1.f64 (*.f64 c i)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 c i))) (exp.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 i) c) (+.f64 1 (expm1.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t)))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 c i))) (+.f64 1 (expm1.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t)))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 a b (*.f64 c i))) (exp.f64 (fma.f64 x y (*.f64 z t)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (*.f64 (pow.f64 (exp.f64 a) b) (pow.f64 (exp.f64 i) c)) (exp.f64 (fma.f64 x y (*.f64 z t)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 a b (*.f64 c i))) (+.f64 1 (expm1.f64 (fma.f64 x y (*.f64 z t))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (*.f64 (pow.f64 (exp.f64 a) b) (pow.f64 (exp.f64 i) c)) (+.f64 1 (expm1.f64 (fma.f64 x y (*.f64 z t))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 c i (fma.f64 a b (fma.f64 x y (*.f64 z t)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 c i (fma.f64 a b (fma.f64 x y (*.f64 z t))))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 c i (fma.f64 a b (fma.f64 x y (*.f64 z t))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 c i (fma.f64 a b (fma.f64 x y (*.f64 z t))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 c i (fma.f64 a b (fma.f64 x y (*.f64 z t))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 c i (fma.f64 a b (fma.f64 x y (*.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 i c (fma.f64 a b (fma.f64 x y (*.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 x y (*.f64 z t)) (fma.f64 a b (*.f64 c i)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 a b (fma.f64 x y (*.f64 z t))) (*.f64 c i))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 c i) (fma.f64 a b (fma.f64 x y (*.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 c i)) 2) (cbrt.f64 (*.f64 c i)) (fma.f64 a b (fma.f64 x y (*.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t)))) 2) (cbrt.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t)))) (*.f64 c i))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 x y (*.f64 z t))) 2) (cbrt.f64 (fma.f64 x y (*.f64 z t))) (fma.f64 a b (*.f64 c i)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 c i)) (sqrt.f64 (*.f64 c i)) (fma.f64 a b (fma.f64 x y (*.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t)))) (sqrt.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t)))) (*.f64 c i))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 x y (*.f64 z t))) (sqrt.f64 (fma.f64 x y (*.f64 z t))) (fma.f64 a b (*.f64 c i)))))))

simplify50.0ms (0.4%)

Algorithm
egg-herbie
Rules
56×fma-def_binary64
22×associate-+l+_binary64
17×associate-+r+_binary64
16×+-commutative_binary64
*-commutative_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0222056
1532056
21042056
31382056
41422056
Stop Event
saturated
Counts
280 → 133
Calls
Call 1
Inputs
(+.f64 (*.f64 a b) (*.f64 t z))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(*.f64 y x)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(*.f64 y x)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (*.f64 t z))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(*.f64 y x)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(*.f64 y x)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (*.f64 y x))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(*.f64 t z)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(*.f64 t z)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (*.f64 y x))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(*.f64 t z)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(*.f64 t z)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(*.f64 a b)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(*.f64 a b)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(*.f64 a b)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(*.f64 a b)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(*.f64 y x)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(*.f64 y x)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(*.f64 y x)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(*.f64 y x)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(*.f64 t z)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(*.f64 t z)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(*.f64 t z)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(*.f64 t z)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(*.f64 a b)
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(*.f64 a b)
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(*.f64 a b)
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(*.f64 a b)
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(*.f64 c i)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(*.f64 c i)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(*.f64 c i)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(*.f64 c i)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
Outputs
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 a b (*.f64 t z))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(*.f64 y x)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(*.f64 y x)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 a b (*.f64 t z))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(*.f64 y x)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(*.f64 y x)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(+.f64 (*.f64 a b) (*.f64 y x))
(fma.f64 a b (*.f64 y x))
(fma.f64 y x (*.f64 a b))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(*.f64 t z)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(*.f64 t z)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(+.f64 (*.f64 a b) (*.f64 y x))
(fma.f64 a b (*.f64 y x))
(fma.f64 y x (*.f64 a b))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(*.f64 t z)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(*.f64 t z)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 y x (*.f64 t z))
(fma.f64 t z (*.f64 y x))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(*.f64 a b)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(*.f64 a b)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 y x (*.f64 t z))
(fma.f64 t z (*.f64 y x))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(*.f64 a b)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(*.f64 a b)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(fma.f64 c i (fma.f64 a b (*.f64 t z)))
(fma.f64 a b (fma.f64 c i (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x))))
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x))))
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x))))
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i))))
(*.f64 y x)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x))))
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x))))
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x))))
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i))))
(*.f64 y x)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x))))
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x))))
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x))))
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(fma.f64 c i (fma.f64 a b (*.f64 t z)))
(fma.f64 a b (fma.f64 c i (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x))))
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x))))
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x))))
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i))))
(*.f64 y x)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x))))
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x))))
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x))))
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i))))
(*.f64 y x)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x))))
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x))))
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x))))
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 y x)))
(fma.f64 c i (fma.f64 a b (*.f64 y x)))
(fma.f64 c i (fma.f64 y x (*.f64 a b)))
(fma.f64 a b (fma.f64 y x (*.f64 c i)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x))))
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x))))
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x))))
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i))))
(*.f64 t z)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x))))
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x))))
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x))))
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i))))
(*.f64 t z)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x))))
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x))))
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x))))
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 y x)))
(fma.f64 c i (fma.f64 a b (*.f64 y x)))
(fma.f64 c i (fma.f64 y x (*.f64 a b)))
(fma.f64 a b (fma.f64 y x (*.f64 c i)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x))))
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x))))
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x))))
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i))))
(*.f64 t z)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x))))
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x))))
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x))))
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i))))
(*.f64 t z)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x))))
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x))))
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x))))
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(fma.f64 c i (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 c i)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x))))
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x))))
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x))))
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i))))
(*.f64 a b)
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x))))
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x))))
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x))))
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i))))
(*.f64 a b)
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x))))
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x))))
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x))))
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(fma.f64 c i (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 c i)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x))))
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x))))
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x))))
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i))))
(*.f64 a b)
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x))))
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x))))
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x))))
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i))))
(*.f64 a b)
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x))))
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x))))
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x))))
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x))))
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x))))
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x))))
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i))))
(*.f64 c i)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x))))
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x))))
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x))))
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i))))
(*.f64 c i)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x))))
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x))))
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x))))
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x))))
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x))))
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x))))
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i))))
(*.f64 c i)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x))))
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x))))
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x))))
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i))))
(*.f64 c i)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x))))
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x))))
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x))))
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i))))

localize13.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(fma.f64 z t (fma.f64 c i (*.f64 a b)))
0.0b
(fma.f64 x y (fma.f64 z t (fma.f64 c i (*.f64 a b))))
Compiler

Compiled 46 to 12 computations (73.9% saved)

series17.0ms (0.1%)

Counts
2 → 168
Calls

42 calls:

TimeVariablePointExpression
2.0ms
y
@-inf
(fma.f64 x y (fma.f64 z t (fma.f64 c i (*.f64 a b))))
1.0ms
x
@0
(fma.f64 x y (fma.f64 z t (fma.f64 c i (*.f64 a b))))
1.0ms
x
@inf
(fma.f64 x y (fma.f64 z t (fma.f64 c i (*.f64 a b))))
1.0ms
c
@-inf
(fma.f64 x y (fma.f64 z t (fma.f64 c i (*.f64 a b))))
1.0ms
x
@-inf
(fma.f64 x y (fma.f64 z t (fma.f64 c i (*.f64 a b))))

rewrite66.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
621×log-prod_binary64
405×pow-prod-down_binary64
350×pow2_binary64
304×prod-diff_binary64
245×pow1/3_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify48.0ms (0.4%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
0252056
1612056
21032056
31232056
41272056
Stop Event
saturated
Counts
230 → 84
Calls
Call 1
Inputs
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(*.f64 y x)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(*.f64 y x)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(*.f64 y x)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(*.f64 y x)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(*.f64 t z)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(*.f64 t z)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(*.f64 t z)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(*.f64 t z)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(*.f64 c i)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(*.f64 c i)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(*.f64 c i)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(*.f64 c i)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(*.f64 a b)
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(*.f64 a b)
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(*.f64 a b)
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(*.f64 a b)
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 c i) (*.f64 a b))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(*.f64 t z)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(*.f64 t z)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(+.f64 (*.f64 c i) (*.f64 a b))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(*.f64 t z)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(*.f64 t z)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(+.f64 (*.f64 a b) (*.f64 t z))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(*.f64 c i)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(*.f64 c i)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(+.f64 (*.f64 a b) (*.f64 t z))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(*.f64 c i)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(*.f64 c i)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(+.f64 (*.f64 c i) (*.f64 t z))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(*.f64 a b)
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(*.f64 a b)
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(+.f64 (*.f64 c i) (*.f64 t z))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(*.f64 a b)
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(*.f64 a b)
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
Outputs
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(fma.f64 c i (fma.f64 a b (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x))))
(fma.f64 c i (fma.f64 y x (fma.f64 a b (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x))))
(fma.f64 c i (fma.f64 y x (fma.f64 a b (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x))))
(fma.f64 c i (fma.f64 y x (fma.f64 a b (*.f64 t z))))
(*.f64 y x)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x))))
(fma.f64 c i (fma.f64 y x (fma.f64 a b (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x))))
(fma.f64 c i (fma.f64 y x (fma.f64 a b (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x))))
(fma.f64 c i (fma.f64 y x (fma.f64 a b (*.f64 t z))))
(*.f64 y x)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x))))
(fma.f64 c i (fma.f64 y x (fma.f64 a b (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x))))
(fma.f64 c i (fma.f64 y x (fma.f64 a b (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x))))
(fma.f64 c i (fma.f64 y x (fma.f64 a b (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(fma.f64 c i (fma.f64 a b (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x))))
(fma.f64 c i (fma.f64 y x (fma.f64 a b (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x))))
(fma.f64 c i (fma.f64 y x (fma.f64 a b (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x))))
(fma.f64 c i (fma.f64 y x (fma.f64 a b (*.f64 t z))))
(*.f64 y x)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x))))
(fma.f64 c i (fma.f64 y x (fma.f64 a b (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x))))
(fma.f64 c i (fma.f64 y x (fma.f64 a b (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x))))
(fma.f64 c i (fma.f64 y x (fma.f64 a b (*.f64 t z))))
(*.f64 y x)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x))))
(fma.f64 c i (fma.f64 y x (fma.f64 a b (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x))))
(fma.f64 c i (fma.f64 y x (fma.f64 a b (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x))))
(fma.f64 c i (fma.f64 y x (fma.f64 a b (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 y x)))
(fma.f64 c i (fma.f64 a b (*.f64 y x)))
(fma.f64 a b (fma.f64 y x (*.f64 c i)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x))))
(fma.f64 c i (fma.f64 y x (fma.f64 a b (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x))))
(fma.f64 c i (fma.f64 y x (fma.f64 a b (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x))))
(fma.f64 c i (fma.f64 y x (fma.f64 a b (*.f64 t z))))
(*.f64 t z)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x))))
(fma.f64 c i (fma.f64 y x (fma.f64 a b (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x))))
(fma.f64 c i (fma.f64 y x (fma.f64 a b (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x))))
(fma.f64 c i (fma.f64 y x (fma.f64 a b (*.f64 t z))))
(*.f64 t z)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x))))
(fma.f64 c i (fma.f64 y x (fma.f64 a b (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x))))
(fma.f64 c i (fma.f64 y x (fma.f64 a b (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x))))
(fma.f64 c i (fma.f64 y x (fma.f64 a b (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 y x)))
(fma.f64 c i (fma.f64 a b (*.f64 y x)))
(fma.f64 a b (fma.f64 y x (*.f64 c i)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x))))
(fma.f64 c i (fma.f64 y x (fma.f64 a b (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x))))
(fma.f64 c i (fma.f64 y x (fma.f64 a b (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x))))
(fma.f64 c i (fma.f64 y x (fma.f64 a b (*.f64 t z))))
(*.f64 t z)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x))))
(fma.f64 c i (fma.f64 y x (fma.f64 a b (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x))))
(fma.f64 c i (fma.f64 y x (fma.f64 a b (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x))))
(fma.f64 c i (fma.f64 y x (fma.f64 a b (*.f64 t z))))
(*.f64 t z)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x))))
(fma.f64 c i (fma.f64 y x (fma.f64 a b (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x))))
(fma.f64 c i (fma.f64 y x (fma.f64 a b (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x))))
(fma.f64 c i (fma.f64 y x (fma.f64 a b (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 y x (fma.f64 a b (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x))))
(fma.f64 c i (fma.f64 y x (fma.f64 a b (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x))))
(fma.f64 c i (fma.f64 y x (fma.f64 a b (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x))))
(fma.f64 c i (fma.f64 y x (fma.f64 a b (*.f64 t z))))
(*.f64 c i)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x))))
(fma.f64 c i (fma.f64 y x (fma.f64 a b (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x))))
(fma.f64 c i (fma.f64 y x (fma.f64 a b (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x))))
(fma.f64 c i (fma.f64 y x (fma.f64 a b (*.f64 t z))))
(*.f64 c i)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x))))
(fma.f64 c i (fma.f64 y x (fma.f64 a b (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x))))
(fma.f64 c i (fma.f64 y x (fma.f64 a b (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x))))
(fma.f64 c i (fma.f64 y x (fma.f64 a b (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 y x (fma.f64 a b (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x))))
(fma.f64 c i (fma.f64 y x (fma.f64 a b (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x))))
(fma.f64 c i (fma.f64 y x (fma.f64 a b (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x))))
(fma.f64 c i (fma.f64 y x (fma.f64 a b (*.f64 t z))))
(*.f64 c i)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x))))
(fma.f64 c i (fma.f64 y x (fma.f64 a b (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x))))
(fma.f64 c i (fma.f64 y x (fma.f64 a b (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x))))
(fma.f64 c i (fma.f64 y x (fma.f64 a b (*.f64 t z))))
(*.f64 c i)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x))))
(fma.f64 c i (fma.f64 y x (fma.f64 a b (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x))))
(fma.f64 c i (fma.f64 y x (fma.f64 a b (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x))))
(fma.f64 c i (fma.f64 y x (fma.f64 a b (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(fma.f64 c i (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 c i)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x))))
(fma.f64 c i (fma.f64 y x (fma.f64 a b (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x))))
(fma.f64 c i (fma.f64 y x (fma.f64 a b (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x))))
(fma.f64 c i (fma.f64 y x (fma.f64 a b (*.f64 t z))))
(*.f64 a b)
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x))))
(fma.f64 c i (fma.f64 y x (fma.f64 a b (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x))))
(fma.f64 c i (fma.f64 y x (fma.f64 a b (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x))))
(fma.f64 c i (fma.f64 y x (fma.f64 a b (*.f64 t z))))
(*.f64 a b)
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x))))
(fma.f64 c i (fma.f64 y x (fma.f64 a b (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x))))
(fma.f64 c i (fma.f64 y x (fma.f64 a b (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x))))
(fma.f64 c i (fma.f64 y x (fma.f64 a b (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(fma.f64 c i (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 c i)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x))))
(fma.f64 c i (fma.f64 y x (fma.f64 a b (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x))))
(fma.f64 c i (fma.f64 y x (fma.f64 a b (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x))))
(fma.f64 c i (fma.f64 y x (fma.f64 a b (*.f64 t z))))
(*.f64 a b)
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x))))
(fma.f64 c i (fma.f64 y x (fma.f64 a b (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x))))
(fma.f64 c i (fma.f64 y x (fma.f64 a b (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x))))
(fma.f64 c i (fma.f64 y x (fma.f64 a b (*.f64 t z))))
(*.f64 a b)
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x))))
(fma.f64 c i (fma.f64 y x (fma.f64 a b (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x))))
(fma.f64 c i (fma.f64 y x (fma.f64 a b (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x))))
(fma.f64 c i (fma.f64 y x (fma.f64 a b (*.f64 t z))))
(+.f64 (*.f64 c i) (*.f64 a b))
(fma.f64 c i (*.f64 a b))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(fma.f64 c i (fma.f64 a b (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(fma.f64 c i (fma.f64 a b (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(fma.f64 c i (fma.f64 a b (*.f64 t z)))
(*.f64 t z)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(fma.f64 c i (fma.f64 a b (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(fma.f64 c i (fma.f64 a b (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(fma.f64 c i (fma.f64 a b (*.f64 t z)))
(*.f64 t z)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(fma.f64 c i (fma.f64 a b (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(fma.f64 c i (fma.f64 a b (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(fma.f64 c i (fma.f64 a b (*.f64 t z)))
(+.f64 (*.f64 c i) (*.f64 a b))
(fma.f64 c i (*.f64 a b))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(fma.f64 c i (fma.f64 a b (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(fma.f64 c i (fma.f64 a b (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(fma.f64 c i (fma.f64 a b (*.f64 t z)))
(*.f64 t z)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(fma.f64 c i (fma.f64 a b (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(fma.f64 c i (fma.f64 a b (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(fma.f64 c i (fma.f64 a b (*.f64 t z)))
(*.f64 t z)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(fma.f64 c i (fma.f64 a b (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(fma.f64 c i (fma.f64 a b (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(fma.f64 c i (fma.f64 a b (*.f64 t z)))
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 a b (*.f64 t z))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(fma.f64 c i (fma.f64 a b (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(fma.f64 c i (fma.f64 a b (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(fma.f64 c i (fma.f64 a b (*.f64 t z)))
(*.f64 c i)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(fma.f64 c i (fma.f64 a b (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(fma.f64 c i (fma.f64 a b (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(fma.f64 c i (fma.f64 a b (*.f64 t z)))
(*.f64 c i)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(fma.f64 c i (fma.f64 a b (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(fma.f64 c i (fma.f64 a b (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(fma.f64 c i (fma.f64 a b (*.f64 t z)))
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 a b (*.f64 t z))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(fma.f64 c i (fma.f64 a b (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(fma.f64 c i (fma.f64 a b (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(fma.f64 c i (fma.f64 a b (*.f64 t z)))
(*.f64 c i)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(fma.f64 c i (fma.f64 a b (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(fma.f64 c i (fma.f64 a b (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(fma.f64 c i (fma.f64 a b (*.f64 t z)))
(*.f64 c i)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(fma.f64 c i (fma.f64 a b (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(fma.f64 c i (fma.f64 a b (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(fma.f64 c i (fma.f64 a b (*.f64 t z)))
(+.f64 (*.f64 c i) (*.f64 t z))
(fma.f64 c i (*.f64 t z))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(fma.f64 c i (fma.f64 a b (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(fma.f64 c i (fma.f64 a b (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(fma.f64 c i (fma.f64 a b (*.f64 t z)))
(*.f64 a b)
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(fma.f64 c i (fma.f64 a b (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(fma.f64 c i (fma.f64 a b (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(fma.f64 c i (fma.f64 a b (*.f64 t z)))
(*.f64 a b)
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(fma.f64 c i (fma.f64 a b (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(fma.f64 c i (fma.f64 a b (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(fma.f64 c i (fma.f64 a b (*.f64 t z)))
(+.f64 (*.f64 c i) (*.f64 t z))
(fma.f64 c i (*.f64 t z))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(fma.f64 c i (fma.f64 a b (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(fma.f64 c i (fma.f64 a b (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(fma.f64 c i (fma.f64 a b (*.f64 t z)))
(*.f64 a b)
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(fma.f64 c i (fma.f64 a b (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(fma.f64 c i (fma.f64 a b (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(fma.f64 c i (fma.f64 a b (*.f64 t z)))
(*.f64 a b)
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(fma.f64 c i (fma.f64 a b (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(fma.f64 c i (fma.f64 a b (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(fma.f64 c i (fma.f64 a b (*.f64 t z)))

eval43.0ms (0.3%)

Compiler

Compiled 4148 to 845 computations (79.6% saved)

prune55.0ms (0.4%)

Pruning

13 alts after pruning (13 fresh and 0 done)

PrunedKeptTotal
New20413217
Fresh000
Picked101
Done101
Total20613219
Error
0b
Counts
219 → 13
Alt Table
Click to see full alt table
StatusErrorProgram
0.0b
(+.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b))) (*.f64 x y))
0.0b
(fma.f64 i c (fma.f64 a b (fma.f64 x y (*.f64 z t))))
15.8b
(fma.f64 x y (+.f64 (*.f64 c i) (*.f64 t z)))
49.3b
(*.f64 y x)
29.7b
(+.f64 (*.f64 a b) (*.f64 c i))
29.3b
(+.f64 (*.f64 t z) (*.f64 c i))
31.7b
(+.f64 (*.f64 y x) (*.f64 c i))
47.5b
(*.f64 a b)
15.8b
(fma.f64 t z (fma.f64 y x (*.f64 c i)))
13.5b
(+.f64 (fma.f64 a b (*.f64 t z)) (*.f64 c i))
44.9b
(*.f64 c i)
18.3b
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
47.1b
(*.f64 t z)
Compiler

Compiled 404 to 284 computations (29.7% saved)

localize15.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(fma.f64 z t (fma.f64 c i (*.f64 a b)))
0.0b
(+.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b))) (*.f64 x y))
Compiler

Compiled 50 to 13 computations (74% saved)

series8.0ms (0.1%)

Counts
1 → 96
Calls

24 calls:

TimeVariablePointExpression
0.0ms
z
@0
(+.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b))) (*.f64 x y))
0.0ms
z
@inf
(+.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b))) (*.f64 x y))
0.0ms
z
@-inf
(+.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b))) (*.f64 x y))
0.0ms
i
@inf
(+.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b))) (*.f64 x y))
0.0ms
x
@-inf
(+.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b))) (*.f64 x y))

rewrite70.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
718×log-prod_binary64
394×pow2_binary64
351×fma-def_binary64
274×pow1/3_binary64
270×expm1-udef_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01418
128516
2366816
Stop Event
node limit
Counts
1 → 68
Calls
Call 1
Inputs
(+.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b))) (*.f64 x y))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 x y (fma.f64 z t (fma.f64 c i (*.f64 a b)))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b))) 2) (-.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b))) (*.f64 x y))) (/.f64 (pow.f64 (*.f64 x y) 2) (-.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b))) (*.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 x y (fma.f64 z t (fma.f64 c i (*.f64 a b)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 x y (fma.f64 z t (fma.f64 c i (*.f64 a b)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 x y (fma.f64 z t (fma.f64 c i (*.f64 a b))))) (pow.f64 (cbrt.f64 (fma.f64 x y (fma.f64 z t (fma.f64 c i (*.f64 a b))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 x y (fma.f64 z t (fma.f64 c i (*.f64 a b))))) 2) (cbrt.f64 (fma.f64 x y (fma.f64 z t (fma.f64 c i (*.f64 a b))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 x y (fma.f64 z t (fma.f64 c i (*.f64 a b))))) (sqrt.f64 (fma.f64 x y (fma.f64 z t (fma.f64 c i (*.f64 a b))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b))) 3) (pow.f64 (*.f64 x y) 3)) (/.f64 1 (fma.f64 (*.f64 x y) (-.f64 (*.f64 x y) (fma.f64 z t (fma.f64 c i (*.f64 a b)))) (pow.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b))) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b))) 2) (pow.f64 (*.f64 x y) 2)) (/.f64 1 (-.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b))) (*.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (*.f64 x y) (-.f64 (*.f64 x y) (fma.f64 z t (fma.f64 c i (*.f64 a b)))) (pow.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b))) 2)) (+.f64 (pow.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b))) 3) (pow.f64 (*.f64 x y) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b))) (*.f64 x y)) (-.f64 (pow.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b))) 2) (pow.f64 (*.f64 x y) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b))) 3) (pow.f64 (*.f64 x y) 3)) (fma.f64 (*.f64 x y) (-.f64 (*.f64 x y) (fma.f64 z t (fma.f64 c i (*.f64 a b)))) (pow.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b))) 3) (pow.f64 (*.f64 x y) 3)) (+.f64 (pow.f64 (*.f64 x y) 2) (-.f64 (pow.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b))) 2) (*.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b))) (*.f64 x y)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b))) 2) (pow.f64 (*.f64 x y) 2)) (-.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b))) (*.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b))) 3) (pow.f64 (*.f64 x y) 3))) (neg.f64 (fma.f64 (*.f64 x y) (-.f64 (*.f64 x y) (fma.f64 z t (fma.f64 c i (*.f64 a b)))) (pow.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b))) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b))) 2) (pow.f64 (*.f64 x y) 2))) (neg.f64 (-.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b))) (*.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 x y) 2) (pow.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b))) 2)) (-.f64 (*.f64 x y) (fma.f64 z t (fma.f64 c i (*.f64 a b)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 x y (fma.f64 z t (fma.f64 c i (*.f64 a b)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 x y (fma.f64 z t (fma.f64 c i (*.f64 a b)))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 x y (fma.f64 z t (fma.f64 c i (*.f64 a b)))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 x y (fma.f64 z t (fma.f64 c i (*.f64 a b))))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 x y (fma.f64 z t (fma.f64 c i (*.f64 a b))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 (*.f64 x y) (-.f64 (*.f64 x y) (fma.f64 z t (fma.f64 c i (*.f64 a b)))) (pow.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b))) 2)) (+.f64 (pow.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b))) 3) (pow.f64 (*.f64 x y) 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (-.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b))) (*.f64 x y)) (-.f64 (pow.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b))) 2) (pow.f64 (*.f64 x y) 2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 x y (fma.f64 z t (fma.f64 c i (*.f64 a b)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 x y (fma.f64 z t (fma.f64 c i (*.f64 a b))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 x y (fma.f64 z t (fma.f64 c i (*.f64 a b)))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b))))) (pow.f64 (exp.f64 x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b)))) (+.f64 1 (expm1.f64 (*.f64 x y)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b))))) (+.f64 1 (expm1.f64 (*.f64 x y)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x y))) (exp.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 x) y) (+.f64 1 (expm1.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b)))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x y))) (+.f64 1 (expm1.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b)))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 x y (fma.f64 z t (fma.f64 c i (*.f64 a b)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 x y (fma.f64 z t (fma.f64 c i (*.f64 a b))))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 x y (fma.f64 z t (fma.f64 c i (*.f64 a b))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 x y (fma.f64 z t (fma.f64 c i (*.f64 a b))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 x y (fma.f64 z t (fma.f64 c i (*.f64 a b))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 z t (+.f64 (fma.f64 c i (*.f64 a b)) (*.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 t z (+.f64 (fma.f64 c i (*.f64 a b)) (*.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b))) 1 (*.f64 x y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x y (fma.f64 z t (fma.f64 c i (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y x (fma.f64 z t (fma.f64 c i (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x y) 1 (fma.f64 z t (fma.f64 c i (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 z t (fma.f64 c i (*.f64 a b))) (*.f64 x y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 x y) (fma.f64 z t (fma.f64 c i (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 z t) (+.f64 (fma.f64 c i (*.f64 a b)) (*.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (*.f64 (cbrt.f64 x) y) (fma.f64 z t (fma.f64 c i (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 z) 2) (*.f64 (cbrt.f64 z) t) (+.f64 (fma.f64 c i (*.f64 a b)) (*.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 y) 2) (*.f64 (cbrt.f64 y) x) (fma.f64 z t (fma.f64 c i (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 x y)) (cbrt.f64 (pow.f64 (*.f64 x y) 2)) (fma.f64 z t (fma.f64 c i (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (*.f64 x y) 2)) (cbrt.f64 (*.f64 x y)) (fma.f64 z t (fma.f64 c i (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b)))) (cbrt.f64 (pow.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b))) 2)) (*.f64 x y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b))) 2)) (cbrt.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b)))) (*.f64 x y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) y) (fma.f64 z t (fma.f64 c i (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 z) (*.f64 (sqrt.f64 z) t) (+.f64 (fma.f64 c i (*.f64 a b)) (*.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 y) (*.f64 (sqrt.f64 y) x) (fma.f64 z t (fma.f64 c i (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 x y)) (sqrt.f64 (*.f64 x y)) (fma.f64 z t (fma.f64 c i (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b)))) (sqrt.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b)))) (*.f64 x y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 z t)) 2) (cbrt.f64 (*.f64 z t)) (+.f64 (fma.f64 c i (*.f64 a b)) (*.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 z t)) (sqrt.f64 (*.f64 z t)) (+.f64 (fma.f64 c i (*.f64 a b)) (*.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sqrt.f64 z) (sqrt.f64 t)) (*.f64 (sqrt.f64 z) (sqrt.f64 t)) (+.f64 (fma.f64 c i (*.f64 a b)) (*.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 z (pow.f64 (cbrt.f64 t) 2)) (cbrt.f64 t) (+.f64 (fma.f64 c i (*.f64 a b)) (*.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 z (sqrt.f64 t)) (sqrt.f64 t) (+.f64 (fma.f64 c i (*.f64 a b)) (*.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (pow.f64 (cbrt.f64 y) 2)) (cbrt.f64 y) (fma.f64 z t (fma.f64 c i (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (sqrt.f64 y)) (sqrt.f64 y) (fma.f64 z t (fma.f64 c i (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 x) (fma.f64 z t (fma.f64 c i (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y (sqrt.f64 x)) (sqrt.f64 x) (fma.f64 z t (fma.f64 c i (*.f64 a b))))))))

simplify35.0ms (0.3%)

Algorithm
egg-herbie
Rules
56×fma-def_binary64
22×associate-+l+_binary64
17×associate-+r+_binary64
16×+-commutative_binary64
*-commutative_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0221312
1531312
21021312
31361312
41401312
Stop Event
saturated
Counts
164 → 83
Calls
Call 1
Inputs
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(*.f64 t z)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(*.f64 t z)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(*.f64 t z)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(*.f64 t z)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(*.f64 c i)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(*.f64 c i)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(*.f64 c i)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(*.f64 c i)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(*.f64 a b)
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(*.f64 a b)
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(*.f64 a b)
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(*.f64 a b)
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(*.f64 y x)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(*.f64 y x)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(*.f64 y x)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(*.f64 y x)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
Outputs
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 y x)))
(fma.f64 c i (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b))))
(*.f64 t z)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b))))
(*.f64 t z)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 y x)))
(fma.f64 c i (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b))))
(*.f64 t z)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b))))
(*.f64 t z)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 y x (fma.f64 t z (*.f64 a b)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b))))
(*.f64 c i)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b))))
(*.f64 c i)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 y x (fma.f64 t z (*.f64 a b)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b))))
(*.f64 c i)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b))))
(*.f64 c i)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 c i (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b))))
(*.f64 a b)
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b))))
(*.f64 a b)
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 c i (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b))))
(*.f64 a b)
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b))))
(*.f64 a b)
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(fma.f64 c i (fma.f64 a b (*.f64 t z)))
(fma.f64 c i (fma.f64 t z (*.f64 a b)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b))))
(*.f64 y x)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b))))
(*.f64 y x)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(fma.f64 c i (fma.f64 a b (*.f64 t z)))
(fma.f64 c i (fma.f64 t z (*.f64 a b)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b))))
(*.f64 y x)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b))))
(*.f64 y x)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z))))
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b))))

localize5.0ms (0%)

Compiler

Compiled 13 to 9 computations (30.8% saved)

localize5.0ms (0%)

Compiler

Compiled 13 to 9 computations (30.8% saved)

localize9.0ms (0.1%)

Local error

Found 1 expressions with local error:

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

Compiled 25 to 11 computations (56% saved)

series7.0ms (0.1%)

Counts
1 → 48
Calls

12 calls:

TimeVariablePointExpression
4.0ms
i
@0
(+.f64 (*.f64 y x) (*.f64 c i))
0.0ms
y
@0
(+.f64 (*.f64 y x) (*.f64 c i))
0.0ms
y
@inf
(+.f64 (*.f64 y x) (*.f64 c i))
0.0ms
i
@inf
(+.f64 (*.f64 y x) (*.f64 c i))
0.0ms
y
@-inf
(+.f64 (*.f64 y x) (*.f64 c i))

rewrite57.0ms (0.5%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
088
11688
222708
Stop Event
node limit
Counts
1 → 37
Calls
Call 1
Inputs
(+.f64 (*.f64 y x) (*.f64 c i))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (fma.f64 y x (*.f64 c i))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (*.f64 y x) 2) (-.f64 (*.f64 y x) (*.f64 c i))) (/.f64 (pow.f64 (*.f64 c i) 2) (-.f64 (*.f64 y x) (*.f64 c i))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 y x (*.f64 c i)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 y x (*.f64 c i)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 y x (*.f64 c i))) (pow.f64 (cbrt.f64 (fma.f64 y x (*.f64 c i))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 y x (*.f64 c i))) 2) (cbrt.f64 (fma.f64 y x (*.f64 c i))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 y x (*.f64 c i))) (sqrt.f64 (fma.f64 y x (*.f64 c i))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 (*.f64 c i) 3)) (/.f64 1 (+.f64 (pow.f64 (*.f64 y x) 2) (*.f64 (*.f64 c i) (-.f64 (*.f64 c i) (*.f64 y x))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 c i) 2)) (/.f64 1 (-.f64 (*.f64 y x) (*.f64 c i))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (pow.f64 (*.f64 y x) 2) (*.f64 (*.f64 c i) (-.f64 (*.f64 c i) (*.f64 y x)))) (+.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 (*.f64 c i) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 (*.f64 y x) (*.f64 c i)) (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 c i) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 (*.f64 c i) 3)) (+.f64 (pow.f64 (*.f64 y x) 2) (*.f64 (*.f64 c i) (-.f64 (*.f64 c i) (*.f64 y x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 (*.f64 c i) 3)) (+.f64 (pow.f64 (*.f64 c i) 2) (-.f64 (pow.f64 (*.f64 y x) 2) (*.f64 (*.f64 y x) (*.f64 c i)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 c i) 2)) (-.f64 (*.f64 y x) (*.f64 c i)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 (*.f64 c i) 3))) (neg.f64 (+.f64 (pow.f64 (*.f64 y x) 2) (*.f64 (*.f64 c i) (-.f64 (*.f64 c i) (*.f64 y x))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 c i) 2))) (neg.f64 (-.f64 (*.f64 y x) (*.f64 c i))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 c i) 2) (pow.f64 (*.f64 y x) 2)) (-.f64 (*.f64 c i) (*.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 y x (*.f64 c i)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 y x (*.f64 c i)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 y x (*.f64 c i))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 y x (*.f64 c i))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 y x (*.f64 c i)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 y x (*.f64 c i))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 y x (*.f64 c i)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 y x (*.f64 c i))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 y x (*.f64 c i))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 y x (*.f64 c i))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y x (*.f64 c i))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x y (*.f64 c i))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 c i (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 i c (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 y x) (*.f64 c i))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 c i) (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 c i)) 2) (cbrt.f64 (*.f64 c i)) (*.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)) (*.f64 c i))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 c i)) (sqrt.f64 (*.f64 c i)) (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 y x)) (sqrt.f64 (*.f64 y x)) (*.f64 c i))))))

simplify12.0ms (0.1%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
08336
112336
215336
Stop Event
saturated
Counts
85 → 40
Calls
Call 1
Inputs
(*.f64 c i)
(+.f64 (*.f64 c i) (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 c i) (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 c i) (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(*.f64 c i)
(+.f64 (*.f64 c i) (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 c i) (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 c i) (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 c i) (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(*.f64 c i)
(+.f64 (*.f64 c i) (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(*.f64 c i)
(+.f64 (*.f64 c i) (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 c i) (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(*.f64 c i)
(+.f64 (*.f64 c i) (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(*.f64 c i)
(+.f64 (*.f64 c i) (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
Outputs
(*.f64 c i)
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(*.f64 c i)
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(*.f64 c i)
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(*.f64 c i)
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(*.f64 c i)
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(*.f64 c i)
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))

localize12.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (*.f64 c i) (*.f64 t z))
0.0b
(fma.f64 x y (+.f64 (*.f64 c i) (*.f64 t z)))
Compiler

Compiled 37 to 12 computations (67.6% saved)

series9.0ms (0.1%)

Counts
2 → 84
Calls

30 calls:

TimeVariablePointExpression
0.0ms
x
@0
(fma.f64 x y (+.f64 (*.f64 c i) (*.f64 t z)))
0.0ms
i
@inf
(fma.f64 x y (+.f64 (*.f64 c i) (*.f64 t z)))
0.0ms
x
@inf
(fma.f64 x y (+.f64 (*.f64 c i) (*.f64 t z)))
0.0ms
t
@-inf
(fma.f64 x y (+.f64 (*.f64 c i) (*.f64 t z)))
0.0ms
c
@inf
(fma.f64 x y (+.f64 (*.f64 c i) (*.f64 t z)))

rewrite67.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
581×log-prod_binary64
406×pow-prod-down_binary64
371×fma-def_binary64
312×pow2_binary64
215×pow1/3_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01120
122720
2297820
Stop Event
node limit
Counts
2 → 108
Calls
Call 1
Inputs
(fma.f64 x y (+.f64 (*.f64 c i) (*.f64 t z)))
(+.f64 (*.f64 c i) (*.f64 t z))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 c i (*.f64 t z)) (*.f64 x y))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x y) (fma.f64 c i (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (fma.f64 x y (fma.f64 c i (*.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 x y) 1) (fma.f64 c i (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x y (*.f64 c i)) (*.f64 t z))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x y (*.f64 t z)) (*.f64 c i))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (fma.f64 x y (fma.f64 c i (*.f64 t z))))) 2)) (log.f64 (cbrt.f64 (exp.f64 (fma.f64 x y (fma.f64 c i (*.f64 t z)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (fma.f64 x y (fma.f64 c i (*.f64 t z)))))) (log.f64 (sqrt.f64 (exp.f64 (fma.f64 x y (fma.f64 c i (*.f64 t z)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 x y (fma.f64 c i (*.f64 t z))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 x y (fma.f64 c i (*.f64 t z))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 x y (fma.f64 c i (*.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 x y (fma.f64 c i (*.f64 t z)))) (pow.f64 (cbrt.f64 (fma.f64 x y (fma.f64 c i (*.f64 t z)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 x y (fma.f64 c i (*.f64 t z)))) 2) (cbrt.f64 (fma.f64 x y (fma.f64 c i (*.f64 t z)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 x y (fma.f64 c i (*.f64 t z)))) (sqrt.f64 (fma.f64 x y (fma.f64 c i (*.f64 t z)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 x y) 3) (pow.f64 (fma.f64 c i (*.f64 t z)) 3)) (+.f64 (pow.f64 (*.f64 x y) 2) (-.f64 (pow.f64 (fma.f64 c i (*.f64 t z)) 2) (*.f64 (*.f64 x y) (fma.f64 c i (*.f64 t z))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 x y) 2) (pow.f64 (fma.f64 c i (*.f64 t z)) 2)) (-.f64 (*.f64 x y) (fma.f64 c i (*.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 x y (fma.f64 c i (*.f64 t z))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 x y (fma.f64 c i (*.f64 t z))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 x y (fma.f64 c i (*.f64 t z))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 x y (fma.f64 c i (*.f64 t z)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 x y (fma.f64 c i (*.f64 t z)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 x y (fma.f64 c i (*.f64 t z))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 x y (fma.f64 c i (*.f64 t z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 x y (fma.f64 c i (*.f64 t z))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 c i (*.f64 t z))) (exp.f64 (*.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 c i (*.f64 t z)))) (exp.f64 (*.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 x y)) (+.f64 1 (expm1.f64 (fma.f64 c i (*.f64 t z))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 x y (fma.f64 c i (*.f64 t z))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 x y (fma.f64 c i (*.f64 t z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 x y (fma.f64 c i (*.f64 t z)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 x y (fma.f64 c i (*.f64 t z)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 x y (fma.f64 c i (*.f64 t z)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (fma.f64 x y (fma.f64 c i (*.f64 t z))))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (fma.f64 x y (fma.f64 c i (*.f64 t z))))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (fma.f64 x y (fma.f64 c i (*.f64 t z))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (fma.f64 x y (fma.f64 c i (*.f64 t z)))) 1) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 c i (*.f64 t z)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (*.f64 c i) 2) (-.f64 (*.f64 c i) (*.f64 t z))) (/.f64 (pow.f64 (*.f64 t z) 2) (-.f64 (*.f64 c i) (*.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 c i (*.f64 t z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 c i (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 c i (*.f64 t z))) (pow.f64 (cbrt.f64 (fma.f64 c i (*.f64 t z))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 c i (*.f64 t z))) 2) (cbrt.f64 (fma.f64 c i (*.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 c i (*.f64 t z))) (sqrt.f64 (fma.f64 c i (*.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (*.f64 c i) 3) (pow.f64 (*.f64 t z) 3)) (/.f64 1 (fma.f64 (*.f64 t z) (-.f64 (*.f64 t z) (*.f64 c i)) (pow.f64 (*.f64 c i) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (*.f64 c i) 2) (pow.f64 (*.f64 t z) 2)) (/.f64 1 (-.f64 (*.f64 c i) (*.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (*.f64 t z) (-.f64 (*.f64 t z) (*.f64 c i)) (pow.f64 (*.f64 c i) 2)) (+.f64 (pow.f64 (*.f64 c i) 3) (pow.f64 (*.f64 t z) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 (*.f64 c i) (*.f64 t z)) (-.f64 (pow.f64 (*.f64 c i) 2) (pow.f64 (*.f64 t z) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 c i) 3) (pow.f64 (*.f64 t z) 3)) (fma.f64 (*.f64 t z) (-.f64 (*.f64 t z) (*.f64 c i)) (pow.f64 (*.f64 c i) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 c i) 3) (pow.f64 (*.f64 t z) 3)) (+.f64 (pow.f64 (*.f64 t z) 2) (-.f64 (pow.f64 (*.f64 c i) 2) (*.f64 (*.f64 c i) (*.f64 t z)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 c i) 2) (pow.f64 (*.f64 t z) 2)) (-.f64 (*.f64 c i) (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 c i) 3) (pow.f64 (*.f64 t z) 3))) (neg.f64 (fma.f64 (*.f64 t z) (-.f64 (*.f64 t z) (*.f64 c i)) (pow.f64 (*.f64 c i) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 c i) 2) (pow.f64 (*.f64 t z) 2))) (neg.f64 (-.f64 (*.f64 c i) (*.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 t z) 2) (pow.f64 (*.f64 c i) 2)) (-.f64 (*.f64 t z) (*.f64 c i)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 c i (*.f64 t z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 c i (*.f64 t z)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 c i (*.f64 t z)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 c i (*.f64 t z))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 c i (*.f64 t z))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 (*.f64 t z) (-.f64 (*.f64 t z) (*.f64 c i)) (pow.f64 (*.f64 c i) 2)) (+.f64 (pow.f64 (*.f64 c i) 3) (pow.f64 (*.f64 t z) 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (-.f64 (*.f64 c i) (*.f64 t z)) (-.f64 (pow.f64 (*.f64 c i) 2) (pow.f64 (*.f64 t z) 2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 c i (*.f64 t z)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 c i (*.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 c i (*.f64 t z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 c i))) (pow.f64 (exp.f64 z) t)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 i) c) (+.f64 1 (expm1.f64 (*.f64 t z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 c i))) (+.f64 1 (expm1.f64 (*.f64 t z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 t z))) (pow.f64 (exp.f64 i) c)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 z) t) (+.f64 1 (expm1.f64 (*.f64 c i)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 t z))) (+.f64 1 (expm1.f64 (*.f64 c i)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 c i (*.f64 t z)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 c i (*.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 c i (*.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 c i (*.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 c i (*.f64 t z))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (fma.f64 c i (*.f64 t z)))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (fma.f64 c i (*.f64 t z)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (fma.f64 c i (*.f64 t z)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (fma.f64 c i (*.f64 t z))) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 c i (*.f64 t z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 i c (*.f64 t z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 c i) 1 (*.f64 t z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 t z (*.f64 c i))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 z t (*.f64 c i))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 t z) 1 (*.f64 c i))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 c i) (*.f64 t z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 t z) (*.f64 c i))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 z) 2) (*.f64 (cbrt.f64 z) t) (*.f64 c i))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 i) 2) (*.f64 (cbrt.f64 i) c) (*.f64 t z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 t z)) (cbrt.f64 (pow.f64 (*.f64 t z) 2)) (*.f64 c i))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (*.f64 t z) 2)) (cbrt.f64 (*.f64 t z)) (*.f64 c i))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 c i)) (cbrt.f64 (pow.f64 (*.f64 c i) 2)) (*.f64 t z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (*.f64 c i) 2)) (cbrt.f64 (*.f64 c i)) (*.f64 t z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 t) 2) (*.f64 (cbrt.f64 t) z) (*.f64 c i))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 c) 2) (*.f64 (cbrt.f64 c) i) (*.f64 t z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 z) (*.f64 (sqrt.f64 z) t) (*.f64 c i))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 i) (*.f64 (sqrt.f64 i) c) (*.f64 t z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 t z)) (sqrt.f64 (*.f64 t z)) (*.f64 c i))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 c i)) (sqrt.f64 (*.f64 c i)) (*.f64 t z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 t) (*.f64 (sqrt.f64 t) z) (*.f64 c i))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 c) (*.f64 (sqrt.f64 c) i) (*.f64 t z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 t (pow.f64 (cbrt.f64 z) 2)) (cbrt.f64 z) (*.f64 c i))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 t (sqrt.f64 z)) (sqrt.f64 z) (*.f64 c i))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 z (pow.f64 (cbrt.f64 t) 2)) (cbrt.f64 t) (*.f64 c i))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 z (sqrt.f64 t)) (sqrt.f64 t) (*.f64 c i))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 c (pow.f64 (cbrt.f64 i) 2)) (cbrt.f64 i) (*.f64 t z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 c (sqrt.f64 i)) (sqrt.f64 i) (*.f64 t z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 i (pow.f64 (cbrt.f64 c) 2)) (cbrt.f64 c) (*.f64 t z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 i (sqrt.f64 c)) (sqrt.f64 c) (*.f64 t z))))))

simplify22.0ms (0.2%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
014792
126792
239792
343792
Stop Event
saturated
Counts
192 → 118
Calls
Call 1
Inputs
(+.f64 (*.f64 c i) (*.f64 t z))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(*.f64 y x)
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(*.f64 y x)
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 c i) (*.f64 t z))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(*.f64 y x)
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(*.f64 y x)
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(*.f64 c i)
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(*.f64 c i)
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(*.f64 c i)
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(*.f64 c i)
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 c i) (*.f64 y x))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(*.f64 t z)
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(*.f64 t z)
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 c i) (*.f64 y x))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(*.f64 t z)
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(*.f64 t z)
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(*.f64 t z)
(*.f64 c i)
(*.f64 c i)
(*.f64 t z)
(*.f64 c i)
(*.f64 c i)
(*.f64 c i)
(*.f64 t z)
(*.f64 t z)
(*.f64 c i)
(*.f64 t z)
(*.f64 t z)
Outputs
(+.f64 (*.f64 c i) (*.f64 t z))
(fma.f64 c i (*.f64 t z))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(*.f64 y x)
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(*.f64 y x)
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(+.f64 (*.f64 c i) (*.f64 t z))
(fma.f64 c i (*.f64 t z))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(*.f64 y x)
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(*.f64 y x)
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 y x (*.f64 t z))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(*.f64 c i)
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(*.f64 c i)
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 y x (*.f64 t z))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(*.f64 c i)
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(*.f64 c i)
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(fma.f64 y x (*.f64 c i))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(*.f64 t z)
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(*.f64 t z)
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(fma.f64 y x (*.f64 c i))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(*.f64 t z)
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(*.f64 t z)
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(*.f64 t z)
(*.f64 c i)
(*.f64 c i)
(*.f64 t z)
(*.f64 c i)
(*.f64 c i)
(*.f64 c i)
(*.f64 t z)
(*.f64 t z)
(*.f64 c i)
(*.f64 t z)
(*.f64 t z)

eval141.0ms (1.1%)

Compiler

Compiled 4612 to 1116 computations (75.8% saved)

prune177.0ms (1.4%)

Pruning

14 alts after pruning (11 fresh and 3 done)

PrunedKeptTotal
New2709279
Fresh628
Picked101
Done134
Total27814292
Error
0b
Counts
292 → 14
Alt Table
Click to see full alt table
StatusErrorProgram
33.6b
(+.f64 (*.f64 y x) (*.f64 t z))
29.7b
(+.f64 (*.f64 a b) (*.f64 c i))
47.1b
(*.f64 t z)
18.3b
(+.f64 (+.f64 (*.f64 a b) (*.f64 t z)) (*.f64 x y))
49.3b
(*.f64 y x)
44.9b
(*.f64 c i)
31.7b
(fma.f64 i c (*.f64 y x))
0.0b
(+.f64 (+.f64 (fma.f64 z t (*.f64 c i)) (*.f64 a b)) (*.f64 x y))
18.3b
(fma.f64 y x (fma.f64 t z (*.f64 a b)))
31.7b
(fma.f64 y x (*.f64 c i))
18.3b
(+.f64 (fma.f64 a b (*.f64 t z)) (*.f64 x y))
29.3b
(+.f64 (*.f64 t z) (*.f64 c i))
31.7b
(+.f64 (*.f64 y x) (*.f64 c i))
47.5b
(*.f64 a b)
Compiler

Compiled 379 to 271 computations (28.5% saved)

localize34.0ms (0.3%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (+.f64 (fma.f64 z t (*.f64 c i)) (*.f64 a b)) (*.f64 x y))
0.0b
(+.f64 (fma.f64 z t (*.f64 c i)) (*.f64 a b))
Compiler

Compiled 55 to 14 computations (74.5% saved)

series17.0ms (0.1%)

Counts
2 → 168
Calls

42 calls:

TimeVariablePointExpression
2.0ms
z
@0
(+.f64 (fma.f64 z t (*.f64 c i)) (*.f64 a b))
1.0ms
z
@-inf
(+.f64 (fma.f64 z t (*.f64 c i)) (*.f64 a b))
1.0ms
z
@inf
(+.f64 (fma.f64 z t (*.f64 c i)) (*.f64 a b))
1.0ms
t
@-inf
(+.f64 (fma.f64 z t (*.f64 c i)) (*.f64 a b))
1.0ms
c
@0
(+.f64 (fma.f64 z t (*.f64 c i)) (*.f64 a b))

rewrite92.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
818×log-prod_binary64
713×fma-def_binary64
327×fma-neg_binary64
300×expm1-udef_binary64
300×log1p-udef_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01534
131628
2435128
Stop Event
node limit
Counts
2 → 169
Calls
Call 1
Inputs
(+.f64 (fma.f64 z t (*.f64 c i)) (*.f64 a b))
(+.f64 (+.f64 (fma.f64 z t (*.f64 c i)) (*.f64 a b)) (*.f64 x y))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (fma.f64 z t (*.f64 c i)) 2) (-.f64 (fma.f64 z t (*.f64 c i)) (*.f64 a b))) (/.f64 (pow.f64 (*.f64 a b) 2) (-.f64 (fma.f64 z t (*.f64 c i)) (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 z t (fma.f64 c i (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b)))) (cbrt.f64 (pow.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b))) 2)) (cbrt.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b)))) (sqrt.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (fma.f64 z t (*.f64 c i)) 3) (pow.f64 (*.f64 a b) 3)) (/.f64 1 (fma.f64 (*.f64 a b) (-.f64 (*.f64 a b) (fma.f64 z t (*.f64 c i))) (pow.f64 (fma.f64 z t (*.f64 c i)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (fma.f64 z t (*.f64 c i)) 2) (pow.f64 (*.f64 a b) 2)) (/.f64 1 (-.f64 (fma.f64 z t (*.f64 c i)) (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (*.f64 a b) (-.f64 (*.f64 a b) (fma.f64 z t (*.f64 c i))) (pow.f64 (fma.f64 z t (*.f64 c i)) 2)) (+.f64 (pow.f64 (fma.f64 z t (*.f64 c i)) 3) (pow.f64 (*.f64 a b) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 (fma.f64 z t (*.f64 c i)) (*.f64 a b)) (-.f64 (pow.f64 (fma.f64 z t (*.f64 c i)) 2) (pow.f64 (*.f64 a b) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (fma.f64 z t (*.f64 c i)) 3) (pow.f64 (*.f64 a b) 3)) (fma.f64 (*.f64 a b) (-.f64 (*.f64 a b) (fma.f64 z t (*.f64 c i))) (pow.f64 (fma.f64 z t (*.f64 c i)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (fma.f64 z t (*.f64 c i)) 3) (pow.f64 (*.f64 a b) 3)) (+.f64 (pow.f64 (*.f64 a b) 2) (-.f64 (pow.f64 (fma.f64 z t (*.f64 c i)) 2) (*.f64 (fma.f64 z t (*.f64 c i)) (*.f64 a b)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (fma.f64 z t (*.f64 c i)) 2) (pow.f64 (*.f64 a b) 2)) (-.f64 (fma.f64 z t (*.f64 c i)) (*.f64 a b)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 (fma.f64 z t (*.f64 c i)) 3) (pow.f64 (*.f64 a b) 3))) (neg.f64 (fma.f64 (*.f64 a b) (-.f64 (*.f64 a b) (fma.f64 z t (*.f64 c i))) (pow.f64 (fma.f64 z t (*.f64 c i)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (fma.f64 z t (*.f64 c i)) 2) (pow.f64 (*.f64 a b) 2))) (neg.f64 (-.f64 (fma.f64 z t (*.f64 c i)) (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 a b) 2) (pow.f64 (fma.f64 z t (*.f64 c i)) 2)) (-.f64 (*.f64 a b) (fma.f64 z t (*.f64 c i))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 z t (*.f64 c i)))) (pow.f64 (exp.f64 a) b)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 z t (*.f64 c i))) (+.f64 1 (expm1.f64 (*.f64 a b)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 z t (*.f64 c i)))) (+.f64 1 (expm1.f64 (*.f64 a b)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 a b))) (exp.f64 (fma.f64 z t (*.f64 c i)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 a) b) (+.f64 1 (expm1.f64 (fma.f64 z t (*.f64 c i))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 a b))) (+.f64 1 (expm1.f64 (fma.f64 z t (*.f64 c i))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 z t (fma.f64 c i (*.f64 a b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 t z (fma.f64 c i (*.f64 a b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 z t (*.f64 c i)) 1 (*.f64 a b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 a b (fma.f64 z t (*.f64 c i)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 b a (fma.f64 z t (*.f64 c i)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 a b) 1 (fma.f64 z t (*.f64 c i)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 z t (*.f64 c i)) (*.f64 a b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 a b) (fma.f64 z t (*.f64 c i)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 z t) (fma.f64 c i (*.f64 a b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 b) 2) (*.f64 (cbrt.f64 b) a) (fma.f64 z t (*.f64 c i)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 a a)) (*.f64 (cbrt.f64 a) b) (fma.f64 z t (*.f64 c i)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 z z)) (*.f64 (cbrt.f64 z) t) (fma.f64 c i (*.f64 a b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 a b)) (pow.f64 (cbrt.f64 (*.f64 a b)) 2) (fma.f64 z t (*.f64 c i)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 a b)) 2) (cbrt.f64 (*.f64 a b)) (fma.f64 z t (*.f64 c i)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 z t (*.f64 c i))) (pow.f64 (cbrt.f64 (fma.f64 z t (*.f64 c i))) 2) (*.f64 a b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 z t (*.f64 c i))) 2) (cbrt.f64 (fma.f64 z t (*.f64 c i))) (*.f64 a b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 b) (*.f64 (sqrt.f64 b) a) (fma.f64 z t (*.f64 c i)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 a) (*.f64 (sqrt.f64 a) b) (fma.f64 z t (*.f64 c i)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 z) (*.f64 (sqrt.f64 z) t) (fma.f64 c i (*.f64 a b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 a b)) (sqrt.f64 (*.f64 a b)) (fma.f64 z t (*.f64 c i)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 z t (*.f64 c i))) (sqrt.f64 (fma.f64 z t (*.f64 c i))) (*.f64 a b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (*.f64 z t)) (cbrt.f64 (*.f64 z t))) (cbrt.f64 (*.f64 z t)) (fma.f64 c i (*.f64 a b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 z t)) (sqrt.f64 (*.f64 z t)) (fma.f64 c i (*.f64 a b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sqrt.f64 z) (sqrt.f64 t)) (*.f64 (sqrt.f64 z) (sqrt.f64 t)) (fma.f64 c i (*.f64 a b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 a (pow.f64 (cbrt.f64 b) 2)) (cbrt.f64 b) (fma.f64 z t (*.f64 c i)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 a (sqrt.f64 b)) (sqrt.f64 b) (fma.f64 z t (*.f64 c i)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 b (cbrt.f64 (*.f64 a a))) (cbrt.f64 a) (fma.f64 z t (*.f64 c i)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 b (sqrt.f64 a)) (sqrt.f64 a) (fma.f64 z t (*.f64 c i)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 z (pow.f64 (cbrt.f64 t) 2)) (cbrt.f64 t) (fma.f64 c i (*.f64 a b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 z (sqrt.f64 t)) (sqrt.f64 t) (fma.f64 c i (*.f64 a b)))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 z t (fma.f64 c i (fma.f64 x y (*.f64 a b)))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b))) 2) (-.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b))) (*.f64 x y))) (/.f64 (pow.f64 (*.f64 x y) 2) (-.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b))) (*.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 z t (fma.f64 c i (fma.f64 x y (*.f64 a b)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 z t (fma.f64 c i (fma.f64 x y (*.f64 a b)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 z t (fma.f64 c i (fma.f64 x y (*.f64 a b))))) (pow.f64 (cbrt.f64 (fma.f64 z t (fma.f64 c i (fma.f64 x y (*.f64 a b))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 z t (fma.f64 c i (fma.f64 x y (*.f64 a b))))) 2) (cbrt.f64 (fma.f64 z t (fma.f64 c i (fma.f64 x y (*.f64 a b))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 z t (fma.f64 c i (fma.f64 x y (*.f64 a b))))) (sqrt.f64 (fma.f64 z t (fma.f64 c i (fma.f64 x y (*.f64 a b))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b))) 3) (pow.f64 (*.f64 x y) 3)) (/.f64 1 (fma.f64 (*.f64 x y) (-.f64 (*.f64 x y) (fma.f64 z t (fma.f64 c i (*.f64 a b)))) (pow.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b))) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b))) 2) (pow.f64 (*.f64 x y) 2)) (/.f64 1 (-.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b))) (*.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (*.f64 x y) (-.f64 (*.f64 x y) (fma.f64 z t (fma.f64 c i (*.f64 a b)))) (pow.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b))) 2)) (+.f64 (pow.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b))) 3) (pow.f64 (*.f64 x y) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b))) (*.f64 x y)) (-.f64 (pow.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b))) 2) (pow.f64 (*.f64 x y) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b))) 3) (pow.f64 (*.f64 x y) 3)) (fma.f64 (*.f64 x y) (-.f64 (*.f64 x y) (fma.f64 z t (fma.f64 c i (*.f64 a b)))) (pow.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b))) 3) (pow.f64 (*.f64 x y) 3)) (+.f64 (pow.f64 (*.f64 x y) 2) (-.f64 (pow.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b))) 2) (*.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b))) (*.f64 x y)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b))) 2) (pow.f64 (*.f64 x y) 2)) (-.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b))) (*.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b))) 3) (pow.f64 (*.f64 x y) 3))) (neg.f64 (fma.f64 (*.f64 x y) (-.f64 (*.f64 x y) (fma.f64 z t (fma.f64 c i (*.f64 a b)))) (pow.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b))) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b))) 2) (pow.f64 (*.f64 x y) 2))) (neg.f64 (-.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b))) (*.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (fma.f64 z t (*.f64 c i)) 3) (pow.f64 (fma.f64 x y (*.f64 a b)) 3)) (+.f64 (pow.f64 (fma.f64 z t (*.f64 c i)) 2) (-.f64 (*.f64 (fma.f64 x y (*.f64 a b)) (fma.f64 x y (*.f64 a b))) (*.f64 (fma.f64 z t (*.f64 c i)) (fma.f64 x y (*.f64 a b))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (fma.f64 z t (*.f64 c i)) 2) (*.f64 (fma.f64 x y (*.f64 a b)) (fma.f64 x y (*.f64 a b)))) (-.f64 (fma.f64 z t (*.f64 c i)) (fma.f64 x y (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 x y) 2) (pow.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b))) 2)) (-.f64 (*.f64 x y) (fma.f64 z t (fma.f64 c i (*.f64 a b)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 z t (fma.f64 c i (fma.f64 x y (*.f64 a b)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 z t (fma.f64 c i (fma.f64 x y (*.f64 a b)))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 z t (fma.f64 c i (fma.f64 x y (*.f64 a b))))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 z t (fma.f64 c i (fma.f64 x y (*.f64 a b))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 z t (fma.f64 c i (fma.f64 x y (*.f64 a b)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 z t (fma.f64 c i (fma.f64 x y (*.f64 a b))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 z t (fma.f64 c i (fma.f64 x y (*.f64 a b)))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 z t (*.f64 c i)))) (exp.f64 (fma.f64 x y (*.f64 a b)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 z t (*.f64 c i))) (*.f64 (pow.f64 (exp.f64 a) b) (pow.f64 (exp.f64 x) y))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 z t (*.f64 c i)))) (*.f64 (pow.f64 (exp.f64 a) b) (pow.f64 (exp.f64 x) y))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b))))) (pow.f64 (exp.f64 x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b)))) (+.f64 1 (expm1.f64 (*.f64 x y)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b))))) (+.f64 1 (expm1.f64 (*.f64 x y)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x y))) (exp.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 x) y) (+.f64 1 (expm1.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b)))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x y))) (+.f64 1 (expm1.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b)))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 x y (*.f64 a b))) (exp.f64 (fma.f64 z t (*.f64 c i)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (*.f64 (pow.f64 (exp.f64 a) b) (pow.f64 (exp.f64 x) y)) (exp.f64 (fma.f64 z t (*.f64 c i)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 x y (*.f64 a b))) (+.f64 1 (expm1.f64 (fma.f64 z t (*.f64 c i))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (*.f64 (pow.f64 (exp.f64 a) b) (pow.f64 (exp.f64 x) y)) (+.f64 1 (expm1.f64 (fma.f64 z t (*.f64 c i))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 z t (fma.f64 c i (fma.f64 x y (*.f64 a b)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 z t (fma.f64 c i (fma.f64 x y (*.f64 a b))))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 z t (fma.f64 c i (fma.f64 x y (*.f64 a b))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 z t (fma.f64 c i (fma.f64 x y (*.f64 a b))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 z t (fma.f64 c i (fma.f64 x y (*.f64 a b))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 z t (fma.f64 c i (fma.f64 x y (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 t z (fma.f64 c i (fma.f64 x y (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 z t (*.f64 c i)) 1 (fma.f64 x y (*.f64 a b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 z t (*.f64 c i)) 1 (*.f64 (fma.f64 x y (*.f64 a b)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 a b (+.f64 (fma.f64 z t (*.f64 c i)) (*.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 b a (+.f64 (fma.f64 z t (*.f64 c i)) (*.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 a b) 1 (+.f64 (fma.f64 z t (*.f64 c i)) (*.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b))) 1 (*.f64 x y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x y (fma.f64 z t (fma.f64 c i (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y x (fma.f64 z t (fma.f64 c i (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x y) 1 (fma.f64 z t (fma.f64 c i (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 z t (*.f64 c i)) (fma.f64 x y (*.f64 a b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 z t (*.f64 c i)) (*.f64 (fma.f64 x y (*.f64 a b)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 a b) (+.f64 (fma.f64 z t (*.f64 c i)) (*.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 z t (fma.f64 c i (*.f64 a b))) (*.f64 x y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 x y) (fma.f64 z t (fma.f64 c i (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 z t) (fma.f64 c i (fma.f64 x y (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 x y (*.f64 a b)) (fma.f64 z t (*.f64 c i)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (*.f64 (cbrt.f64 x) y) (fma.f64 z t (fma.f64 c i (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 b) 2) (*.f64 (cbrt.f64 b) a) (+.f64 (fma.f64 z t (*.f64 c i)) (*.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 x y)) (cbrt.f64 (pow.f64 (*.f64 x y) 2)) (fma.f64 z t (fma.f64 c i (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (*.f64 x y) 2)) (cbrt.f64 (*.f64 x y)) (fma.f64 z t (fma.f64 c i (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b)))) (cbrt.f64 (pow.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b))) 2)) (*.f64 x y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b))) 2)) (cbrt.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b)))) (*.f64 x y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 a a)) (*.f64 (cbrt.f64 a) b) (+.f64 (fma.f64 z t (*.f64 c i)) (*.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 z z)) (*.f64 (cbrt.f64 z) t) (fma.f64 c i (fma.f64 x y (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 y) 2) (*.f64 (cbrt.f64 y) x) (fma.f64 z t (fma.f64 c i (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 a b)) (pow.f64 (cbrt.f64 (*.f64 a b)) 2) (+.f64 (fma.f64 z t (*.f64 c i)) (*.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 a b)) 2) (cbrt.f64 (*.f64 a b)) (+.f64 (fma.f64 z t (*.f64 c i)) (*.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 z t (*.f64 c i))) (pow.f64 (cbrt.f64 (fma.f64 z t (*.f64 c i))) 2) (fma.f64 x y (*.f64 a b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 z t (*.f64 c i))) (pow.f64 (cbrt.f64 (fma.f64 z t (*.f64 c i))) 2) (*.f64 (fma.f64 x y (*.f64 a b)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 z t (*.f64 c i))) 2) (cbrt.f64 (fma.f64 z t (*.f64 c i))) (fma.f64 x y (*.f64 a b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 z t (*.f64 c i))) 2) (cbrt.f64 (fma.f64 z t (*.f64 c i))) (*.f64 (fma.f64 x y (*.f64 a b)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) y) (fma.f64 z t (fma.f64 c i (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 b) (*.f64 (sqrt.f64 b) a) (+.f64 (fma.f64 z t (*.f64 c i)) (*.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 x y)) (sqrt.f64 (*.f64 x y)) (fma.f64 z t (fma.f64 c i (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b)))) (sqrt.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b)))) (*.f64 x y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 a) (*.f64 (sqrt.f64 a) b) (+.f64 (fma.f64 z t (*.f64 c i)) (*.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 z) (*.f64 (sqrt.f64 z) t) (fma.f64 c i (fma.f64 x y (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 y) (*.f64 (sqrt.f64 y) x) (fma.f64 z t (fma.f64 c i (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 a b)) (sqrt.f64 (*.f64 a b)) (+.f64 (fma.f64 z t (*.f64 c i)) (*.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 z t (*.f64 c i))) (sqrt.f64 (fma.f64 z t (*.f64 c i))) (fma.f64 x y (*.f64 a b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 z t (*.f64 c i))) (sqrt.f64 (fma.f64 z t (*.f64 c i))) (*.f64 (fma.f64 x y (*.f64 a b)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (pow.f64 (fma.f64 z t (*.f64 c i)) 3) (pow.f64 (*.f64 a b) 3)) (/.f64 1 (fma.f64 (*.f64 a b) (-.f64 (*.f64 a b) (fma.f64 z t (*.f64 c i))) (pow.f64 (fma.f64 z t (*.f64 c i)) 2))) (*.f64 x y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (fma.f64 z t (*.f64 c i)) 2) (pow.f64 (*.f64 a b) 2)) (/.f64 1 (-.f64 (fma.f64 z t (*.f64 c i)) (*.f64 a b))) (*.f64 x y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (*.f64 z t)) (cbrt.f64 (*.f64 z t))) (cbrt.f64 (*.f64 z t)) (fma.f64 c i (fma.f64 x y (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (fma.f64 x y (*.f64 a b))) (cbrt.f64 (fma.f64 x y (*.f64 a b)))) (cbrt.f64 (fma.f64 x y (*.f64 a b))) (fma.f64 z t (*.f64 c i)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 z t)) (sqrt.f64 (*.f64 z t)) (fma.f64 c i (fma.f64 x y (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 x y (*.f64 a b))) (sqrt.f64 (fma.f64 x y (*.f64 a b))) (fma.f64 z t (*.f64 c i)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sqrt.f64 z) (sqrt.f64 t)) (*.f64 (sqrt.f64 z) (sqrt.f64 t)) (fma.f64 c i (fma.f64 x y (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (pow.f64 (cbrt.f64 y) 2)) (cbrt.f64 y) (fma.f64 z t (fma.f64 c i (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (sqrt.f64 y)) (sqrt.f64 y) (fma.f64 z t (fma.f64 c i (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 x) (fma.f64 z t (fma.f64 c i (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y (sqrt.f64 x)) (sqrt.f64 x) (fma.f64 z t (fma.f64 c i (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 a (pow.f64 (cbrt.f64 b) 2)) (cbrt.f64 b) (+.f64 (fma.f64 z t (*.f64 c i)) (*.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 a (sqrt.f64 b)) (sqrt.f64 b) (+.f64 (fma.f64 z t (*.f64 c i)) (*.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 b (cbrt.f64 (*.f64 a a))) (cbrt.f64 a) (+.f64 (fma.f64 z t (*.f64 c i)) (*.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 b (sqrt.f64 a)) (sqrt.f64 a) (+.f64 (fma.f64 z t (*.f64 c i)) (*.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 z (pow.f64 (cbrt.f64 t) 2)) (cbrt.f64 t) (fma.f64 c i (fma.f64 x y (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 z (sqrt.f64 t)) (sqrt.f64 t) (fma.f64 c i (fma.f64 x y (*.f64 a b))))))))

simplify84.0ms (0.7%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
0252056
1612056
21032056
31232056
41272056
Stop Event
saturated
Counts
337 → 191
Calls
Call 1
Inputs
(+.f64 (*.f64 a b) (*.f64 c i))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(*.f64 t z)
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(*.f64 t z)
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(+.f64 (*.f64 a b) (*.f64 c i))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(*.f64 t z)
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(*.f64 t z)
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(+.f64 (*.f64 a b) (*.f64 t z))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(*.f64 c i)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(*.f64 c i)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(+.f64 (*.f64 a b) (*.f64 t z))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(*.f64 c i)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(*.f64 c i)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(+.f64 (*.f64 c i) (*.f64 t z))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(*.f64 a b)
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(*.f64 a b)
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(+.f64 (*.f64 c i) (*.f64 t z))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(*.f64 a b)
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(*.f64 a b)
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 y x)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(*.f64 t z)
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(*.f64 t z)
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 y x)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(*.f64 t z)
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(*.f64 t z)
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(*.f64 c i)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(*.f64 c i)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(*.f64 c i)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(*.f64 c i)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(*.f64 a b)
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(*.f64 a b)
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(*.f64 a b)
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(*.f64 a b)
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(*.f64 y x)
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(*.f64 y x)
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(*.f64 y x)
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(*.f64 y x)
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
Outputs
(+.f64 (*.f64 a b) (*.f64 c i))
(fma.f64 a b (*.f64 c i))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(fma.f64 a b (fma.f64 c i (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 c i)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(fma.f64 a b (fma.f64 c i (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 c i)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(fma.f64 a b (fma.f64 c i (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 c i)))
(*.f64 t z)
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(fma.f64 a b (fma.f64 c i (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 c i)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(fma.f64 a b (fma.f64 c i (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 c i)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(fma.f64 a b (fma.f64 c i (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 c i)))
(*.f64 t z)
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(fma.f64 a b (fma.f64 c i (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 c i)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(fma.f64 a b (fma.f64 c i (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 c i)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(fma.f64 a b (fma.f64 c i (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 c i)))
(+.f64 (*.f64 a b) (*.f64 c i))
(fma.f64 a b (*.f64 c i))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(fma.f64 a b (fma.f64 c i (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 c i)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(fma.f64 a b (fma.f64 c i (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 c i)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(fma.f64 a b (fma.f64 c i (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 c i)))
(*.f64 t z)
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(fma.f64 a b (fma.f64 c i (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 c i)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(fma.f64 a b (fma.f64 c i (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 c i)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(fma.f64 a b (fma.f64 c i (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 c i)))
(*.f64 t z)
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(fma.f64 a b (fma.f64 c i (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 c i)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(fma.f64 a b (fma.f64 c i (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 c i)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(fma.f64 a b (fma.f64 c i (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 c i)))
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 a b (*.f64 t z))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(fma.f64 a b (fma.f64 c i (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 c i)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(fma.f64 a b (fma.f64 c i (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 c i)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(fma.f64 a b (fma.f64 c i (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 c i)))
(*.f64 c i)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(fma.f64 a b (fma.f64 c i (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 c i)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(fma.f64 a b (fma.f64 c i (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 c i)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(fma.f64 a b (fma.f64 c i (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 c i)))
(*.f64 c i)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(fma.f64 a b (fma.f64 c i (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 c i)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(fma.f64 a b (fma.f64 c i (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 c i)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(fma.f64 a b (fma.f64 c i (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 c i)))
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 a b (*.f64 t z))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(fma.f64 a b (fma.f64 c i (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 c i)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(fma.f64 a b (fma.f64 c i (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 c i)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(fma.f64 a b (fma.f64 c i (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 c i)))
(*.f64 c i)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(fma.f64 a b (fma.f64 c i (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 c i)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(fma.f64 a b (fma.f64 c i (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 c i)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(fma.f64 a b (fma.f64 c i (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 c i)))
(*.f64 c i)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(fma.f64 a b (fma.f64 c i (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 c i)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(fma.f64 a b (fma.f64 c i (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 c i)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(fma.f64 a b (fma.f64 c i (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 c i)))
(+.f64 (*.f64 c i) (*.f64 t z))
(fma.f64 c i (*.f64 t z))
(fma.f64 t z (*.f64 c i))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(fma.f64 a b (fma.f64 c i (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 c i)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(fma.f64 a b (fma.f64 c i (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 c i)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(fma.f64 a b (fma.f64 c i (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 c i)))
(*.f64 a b)
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(fma.f64 a b (fma.f64 c i (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 c i)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(fma.f64 a b (fma.f64 c i (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 c i)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(fma.f64 a b (fma.f64 c i (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 c i)))
(*.f64 a b)
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(fma.f64 a b (fma.f64 c i (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 c i)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(fma.f64 a b (fma.f64 c i (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 c i)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(fma.f64 a b (fma.f64 c i (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 c i)))
(+.f64 (*.f64 c i) (*.f64 t z))
(fma.f64 c i (*.f64 t z))
(fma.f64 t z (*.f64 c i))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(fma.f64 a b (fma.f64 c i (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 c i)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(fma.f64 a b (fma.f64 c i (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 c i)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(fma.f64 a b (fma.f64 c i (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 c i)))
(*.f64 a b)
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(fma.f64 a b (fma.f64 c i (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 c i)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(fma.f64 a b (fma.f64 c i (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 c i)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(fma.f64 a b (fma.f64 c i (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 c i)))
(*.f64 a b)
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(fma.f64 a b (fma.f64 c i (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 c i)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(fma.f64 a b (fma.f64 c i (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 c i)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z)))
(fma.f64 a b (fma.f64 c i (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 c i)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 y x)))
(fma.f64 a b (fma.f64 c i (*.f64 y x)))
(fma.f64 c i (fma.f64 y x (*.f64 a b)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 y x (fma.f64 t z (*.f64 c i))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 y x (fma.f64 t z (*.f64 c i))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 y x (fma.f64 t z (*.f64 c i))))
(*.f64 t z)
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 y x (fma.f64 t z (*.f64 c i))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 y x (fma.f64 t z (*.f64 c i))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 y x (fma.f64 t z (*.f64 c i))))
(*.f64 t z)
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 y x (fma.f64 t z (*.f64 c i))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 y x (fma.f64 t z (*.f64 c i))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 y x (fma.f64 t z (*.f64 c i))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 y x)))
(fma.f64 a b (fma.f64 c i (*.f64 y x)))
(fma.f64 c i (fma.f64 y x (*.f64 a b)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 y x (fma.f64 t z (*.f64 c i))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 y x (fma.f64 t z (*.f64 c i))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 y x (fma.f64 t z (*.f64 c i))))
(*.f64 t z)
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 y x (fma.f64 t z (*.f64 c i))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 y x (fma.f64 t z (*.f64 c i))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 y x (fma.f64 t z (*.f64 c i))))
(*.f64 t z)
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 y x (fma.f64 t z (*.f64 c i))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 y x (fma.f64 t z (*.f64 c i))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 y x (fma.f64 t z (*.f64 c i))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 y x (fma.f64 t z (*.f64 c i))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 y x (fma.f64 t z (*.f64 c i))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 y x (fma.f64 t z (*.f64 c i))))
(*.f64 c i)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 y x (fma.f64 t z (*.f64 c i))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 y x (fma.f64 t z (*.f64 c i))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 y x (fma.f64 t z (*.f64 c i))))
(*.f64 c i)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 y x (fma.f64 t z (*.f64 c i))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 y x (fma.f64 t z (*.f64 c i))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 y x (fma.f64 t z (*.f64 c i))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 y x (fma.f64 t z (*.f64 c i))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 y x (fma.f64 t z (*.f64 c i))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 y x (fma.f64 t z (*.f64 c i))))
(*.f64 c i)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 y x (fma.f64 t z (*.f64 c i))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 y x (fma.f64 t z (*.f64 c i))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 y x (fma.f64 t z (*.f64 c i))))
(*.f64 c i)
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 y x (fma.f64 t z (*.f64 c i))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 y x (fma.f64 t z (*.f64 c i))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 y x (fma.f64 t z (*.f64 c i))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(fma.f64 y x (fma.f64 t z (*.f64 c i)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 y x (fma.f64 t z (*.f64 c i))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 y x (fma.f64 t z (*.f64 c i))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 y x (fma.f64 t z (*.f64 c i))))
(*.f64 a b)
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 y x (fma.f64 t z (*.f64 c i))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 y x (fma.f64 t z (*.f64 c i))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 y x (fma.f64 t z (*.f64 c i))))
(*.f64 a b)
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 y x (fma.f64 t z (*.f64 c i))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 y x (fma.f64 t z (*.f64 c i))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 y x (fma.f64 t z (*.f64 c i))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(fma.f64 y x (fma.f64 t z (*.f64 c i)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 y x (fma.f64 t z (*.f64 c i))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 y x (fma.f64 t z (*.f64 c i))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 y x (fma.f64 t z (*.f64 c i))))
(*.f64 a b)
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 y x (fma.f64 t z (*.f64 c i))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 y x (fma.f64 t z (*.f64 c i))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 y x (fma.f64 t z (*.f64 c i))))
(*.f64 a b)
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 y x (fma.f64 t z (*.f64 c i))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 y x (fma.f64 t z (*.f64 c i))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 y x (fma.f64 t z (*.f64 c i))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(fma.f64 a b (fma.f64 c i (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 c i)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 y x (fma.f64 t z (*.f64 c i))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 y x (fma.f64 t z (*.f64 c i))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 y x (fma.f64 t z (*.f64 c i))))
(*.f64 y x)
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 y x (fma.f64 t z (*.f64 c i))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 y x (fma.f64 t z (*.f64 c i))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 y x (fma.f64 t z (*.f64 c i))))
(*.f64 y x)
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 y x (fma.f64 t z (*.f64 c i))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 y x (fma.f64 t z (*.f64 c i))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 y x (fma.f64 t z (*.f64 c i))))
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z)))
(fma.f64 a b (fma.f64 c i (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 c i)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 y x (fma.f64 t z (*.f64 c i))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 y x (fma.f64 t z (*.f64 c i))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 y x (fma.f64 t z (*.f64 c i))))
(*.f64 y x)
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 y x (fma.f64 t z (*.f64 c i))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 y x (fma.f64 t z (*.f64 c i))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 y x (fma.f64 t z (*.f64 c i))))
(*.f64 y x)
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 y x (fma.f64 t z (*.f64 c i))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 y x (fma.f64 t z (*.f64 c i))))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z))))
(fma.f64 a b (fma.f64 y x (fma.f64 t z (*.f64 c i))))

localize6.0ms (0%)

Compiler

Compiled 13 to 9 computations (30.8% saved)

localize9.0ms (0.1%)

Compiler

Compiled 25 to 11 computations (56% saved)

localize10.0ms (0.1%)

Compiler

Compiled 25 to 11 computations (56% saved)

localize8.0ms (0.1%)

Local error

Found 1 expressions with local error:

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

Compiled 21 to 10 computations (52.4% saved)

series4.0ms (0%)

Counts
1 → 48
Calls

12 calls:

TimeVariablePointExpression
1.0ms
i
@0
(fma.f64 i c (*.f64 y x))
0.0ms
c
@inf
(fma.f64 i c (*.f64 y x))
0.0ms
c
@-inf
(fma.f64 i c (*.f64 y x))
0.0ms
i
@-inf
(fma.f64 i c (*.f64 y x))
0.0ms
x
@0
(fma.f64 i c (*.f64 y x))

rewrite69.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
661×pow1_binary64
602×add-log-exp_binary64
602×log1p-expm1-u_binary64
602×expm1-log1p-u_binary64
587×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify14.0ms (0.1%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
08336
112336
215336
Stop Event
saturated
Counts
69 → 25
Calls
Call 1
Inputs
(*.f64 y x)
(+.f64 (*.f64 c i) (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(*.f64 c i)
(+.f64 (*.f64 c i) (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(*.f64 c i)
(+.f64 (*.f64 c i) (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 c i) (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(*.f64 c i)
(+.f64 (*.f64 c i) (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(*.f64 c i)
(+.f64 (*.f64 c i) (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(*.f64 c i)
(+.f64 (*.f64 c i) (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 c i) (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 c i) (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(*.f64 c i)
(+.f64 (*.f64 c i) (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 c i) (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 c i) (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
Outputs
(*.f64 y x)
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(fma.f64 y x (*.f64 c i))
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(fma.f64 y x (*.f64 c i))
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(fma.f64 y x (*.f64 c i))
(*.f64 c i)
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(fma.f64 y x (*.f64 c i))
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(fma.f64 y x (*.f64 c i))
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(fma.f64 y x (*.f64 c i))
(*.f64 c i)
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(fma.f64 y x (*.f64 c i))
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(fma.f64 y x (*.f64 c i))
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(fma.f64 y x (*.f64 c i))
(*.f64 y x)
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(fma.f64 y x (*.f64 c i))
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(fma.f64 y x (*.f64 c i))
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(fma.f64 y x (*.f64 c i))
(*.f64 c i)
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(fma.f64 y x (*.f64 c i))
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(fma.f64 y x (*.f64 c i))
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(fma.f64 y x (*.f64 c i))
(*.f64 c i)
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(fma.f64 y x (*.f64 c i))
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(fma.f64 y x (*.f64 c i))
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(fma.f64 y x (*.f64 c i))
(*.f64 c i)
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(fma.f64 y x (*.f64 c i))
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(fma.f64 y x (*.f64 c i))
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(fma.f64 y x (*.f64 c i))
(*.f64 y x)
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(fma.f64 y x (*.f64 c i))
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(fma.f64 y x (*.f64 c i))
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(fma.f64 y x (*.f64 c i))
(*.f64 y x)
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(fma.f64 y x (*.f64 c i))
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(fma.f64 y x (*.f64 c i))
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(fma.f64 y x (*.f64 c i))
(*.f64 c i)
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(fma.f64 y x (*.f64 c i))
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(fma.f64 y x (*.f64 c i))
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(fma.f64 y x (*.f64 c i))
(*.f64 y x)
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(fma.f64 y x (*.f64 c i))
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(fma.f64 y x (*.f64 c i))
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(fma.f64 y x (*.f64 c i))
(*.f64 y x)
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(fma.f64 y x (*.f64 c i))
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(fma.f64 y x (*.f64 c i))
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(fma.f64 y x (*.f64 c i))

eval50.0ms (0.4%)

Compiler

Compiled 4070 to 820 computations (79.9% saved)

prune81.0ms (0.7%)

Pruning

15 alts after pruning (8 fresh and 7 done)

PrunedKeptTotal
New2133216
Fresh156
Picked011
Done167
Total21515230
Error
0b
Counts
230 → 15
Alt Table
Click to see full alt table
StatusErrorProgram
33.6b
(+.f64 (*.f64 y x) (*.f64 t z))
29.7b
(+.f64 (*.f64 a b) (*.f64 c i))
47.1b
(*.f64 t z)
18.3b
(+.f64 (+.f64 (*.f64 a b) (*.f64 t z)) (*.f64 x y))
49.3b
(*.f64 y x)
31.7b
(fma.f64 y x (*.f64 c i))
44.9b
(*.f64 c i)
31.7b
(fma.f64 i c (*.f64 y x))
15.8b
(+.f64 (fma.f64 t z (*.f64 c i)) (*.f64 x y))
18.3b
(+.f64 (fma.f64 a b (*.f64 t z)) (*.f64 x y))
29.3b
(+.f64 (*.f64 t z) (*.f64 c i))
31.7b
(+.f64 (*.f64 y x) (*.f64 c i))
47.5b
(*.f64 a b)
34.5b
(+.f64 (*.f64 a b) (*.f64 x y))
18.3b
(fma.f64 y x (fma.f64 t z (*.f64 a b)))
Compiler

Compiled 346 to 248 computations (28.3% saved)

localize13.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (fma.f64 t z (*.f64 c i)) (*.f64 x y))
Compiler

Compiled 36 to 12 computations (66.7% saved)

series7.0ms (0.1%)

Counts
1 → 72
Calls

18 calls:

TimeVariablePointExpression
1.0ms
x
@inf
(+.f64 (fma.f64 t z (*.f64 c i)) (*.f64 x y))
0.0ms
z
@-inf
(+.f64 (fma.f64 t z (*.f64 c i)) (*.f64 x y))
0.0ms
t
@0
(+.f64 (fma.f64 t z (*.f64 c i)) (*.f64 x y))
0.0ms
t
@inf
(+.f64 (fma.f64 t z (*.f64 c i)) (*.f64 x y))
0.0ms
z
@inf
(+.f64 (fma.f64 t z (*.f64 c i)) (*.f64 x y))

rewrite60.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
577×log-prod_binary64
400×pow-prod-down_binary64
319×fma-def_binary64
312×pow2_binary64
217×pow1/3_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify22.0ms (0.2%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
014744
126744
239744
343744
Stop Event
saturated
Counts
143 → 82
Calls
Call 1
Inputs
(+.f64 (*.f64 c i) (*.f64 y x))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(*.f64 t z)
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(*.f64 t z)
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 c i) (*.f64 y x))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(*.f64 t z)
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(*.f64 t z)
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(*.f64 c i)
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(*.f64 c i)
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(*.f64 c i)
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(*.f64 c i)
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 c i) (*.f64 t z))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(*.f64 y x)
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(*.f64 y x)
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 c i) (*.f64 t z))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(*.f64 y x)
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(*.f64 y x)
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
Outputs
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(fma.f64 c i (fma.f64 t z (*.f64 y x)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(fma.f64 c i (fma.f64 t z (*.f64 y x)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(fma.f64 c i (fma.f64 t z (*.f64 y x)))
(*.f64 t z)
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(fma.f64 c i (fma.f64 t z (*.f64 y x)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(fma.f64 c i (fma.f64 t z (*.f64 y x)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(fma.f64 c i (fma.f64 t z (*.f64 y x)))
(*.f64 t z)
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(fma.f64 c i (fma.f64 t z (*.f64 y x)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(fma.f64 c i (fma.f64 t z (*.f64 y x)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(fma.f64 c i (fma.f64 t z (*.f64 y x)))
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(fma.f64 c i (fma.f64 t z (*.f64 y x)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(fma.f64 c i (fma.f64 t z (*.f64 y x)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(fma.f64 c i (fma.f64 t z (*.f64 y x)))
(*.f64 t z)
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(fma.f64 c i (fma.f64 t z (*.f64 y x)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(fma.f64 c i (fma.f64 t z (*.f64 y x)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(fma.f64 c i (fma.f64 t z (*.f64 y x)))
(*.f64 t z)
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(fma.f64 c i (fma.f64 t z (*.f64 y x)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(fma.f64 c i (fma.f64 t z (*.f64 y x)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(fma.f64 c i (fma.f64 t z (*.f64 y x)))
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 y x (*.f64 t z))
(fma.f64 t z (*.f64 y x))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(fma.f64 c i (fma.f64 t z (*.f64 y x)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(fma.f64 c i (fma.f64 t z (*.f64 y x)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(fma.f64 c i (fma.f64 t z (*.f64 y x)))
(*.f64 c i)
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(fma.f64 c i (fma.f64 t z (*.f64 y x)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(fma.f64 c i (fma.f64 t z (*.f64 y x)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(fma.f64 c i (fma.f64 t z (*.f64 y x)))
(*.f64 c i)
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(fma.f64 c i (fma.f64 t z (*.f64 y x)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(fma.f64 c i (fma.f64 t z (*.f64 y x)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(fma.f64 c i (fma.f64 t z (*.f64 y x)))
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 y x (*.f64 t z))
(fma.f64 t z (*.f64 y x))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(fma.f64 c i (fma.f64 t z (*.f64 y x)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(fma.f64 c i (fma.f64 t z (*.f64 y x)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(fma.f64 c i (fma.f64 t z (*.f64 y x)))
(*.f64 c i)
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(fma.f64 c i (fma.f64 t z (*.f64 y x)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(fma.f64 c i (fma.f64 t z (*.f64 y x)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(fma.f64 c i (fma.f64 t z (*.f64 y x)))
(*.f64 c i)
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(fma.f64 c i (fma.f64 t z (*.f64 y x)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(fma.f64 c i (fma.f64 t z (*.f64 y x)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(fma.f64 c i (fma.f64 t z (*.f64 y x)))
(+.f64 (*.f64 c i) (*.f64 t z))
(fma.f64 c i (*.f64 t z))
(fma.f64 t z (*.f64 c i))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(fma.f64 c i (fma.f64 t z (*.f64 y x)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(fma.f64 c i (fma.f64 t z (*.f64 y x)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(fma.f64 c i (fma.f64 t z (*.f64 y x)))
(*.f64 y x)
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(fma.f64 c i (fma.f64 t z (*.f64 y x)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(fma.f64 c i (fma.f64 t z (*.f64 y x)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(fma.f64 c i (fma.f64 t z (*.f64 y x)))
(*.f64 y x)
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(fma.f64 c i (fma.f64 t z (*.f64 y x)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(fma.f64 c i (fma.f64 t z (*.f64 y x)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(fma.f64 c i (fma.f64 t z (*.f64 y x)))
(+.f64 (*.f64 c i) (*.f64 t z))
(fma.f64 c i (*.f64 t z))
(fma.f64 t z (*.f64 c i))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(fma.f64 c i (fma.f64 t z (*.f64 y x)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(fma.f64 c i (fma.f64 t z (*.f64 y x)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(fma.f64 c i (fma.f64 t z (*.f64 y x)))
(*.f64 y x)
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(fma.f64 c i (fma.f64 t z (*.f64 y x)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(fma.f64 c i (fma.f64 t z (*.f64 y x)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(fma.f64 c i (fma.f64 t z (*.f64 y x)))
(*.f64 y x)
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(fma.f64 c i (fma.f64 t z (*.f64 y x)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(fma.f64 c i (fma.f64 t z (*.f64 y x)))
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 c i (fma.f64 y x (*.f64 t z)))
(fma.f64 c i (fma.f64 t z (*.f64 y x)))

localize6.0ms (0%)

Compiler

Compiled 13 to 9 computations (30.8% saved)

localize9.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (*.f64 t z) (*.f64 c i))
Compiler

Compiled 25 to 11 computations (56% saved)

series3.0ms (0%)

Counts
1 → 48
Calls

12 calls:

TimeVariablePointExpression
0.0ms
t
@0
(+.f64 (*.f64 t z) (*.f64 c i))
0.0ms
t
@inf
(+.f64 (*.f64 t z) (*.f64 c i))
0.0ms
c
@inf
(+.f64 (*.f64 t z) (*.f64 c i))
0.0ms
z
@inf
(+.f64 (*.f64 t z) (*.f64 c i))
0.0ms
i
@inf
(+.f64 (*.f64 t z) (*.f64 c i))

rewrite78.0ms (0.6%)

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

Useful iterations: 0 (0.0ms)

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

simplify14.0ms (0.1%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
08336
112336
215336
Stop Event
saturated
Counts
85 → 40
Calls
Call 1
Inputs
(*.f64 c i)
(+.f64 (*.f64 c i) (*.f64 t z))
(+.f64 (*.f64 c i) (*.f64 t z))
(+.f64 (*.f64 c i) (*.f64 t z))
(*.f64 t z)
(+.f64 (*.f64 c i) (*.f64 t z))
(+.f64 (*.f64 c i) (*.f64 t z))
(+.f64 (*.f64 c i) (*.f64 t z))
(*.f64 t z)
(+.f64 (*.f64 c i) (*.f64 t z))
(+.f64 (*.f64 c i) (*.f64 t z))
(+.f64 (*.f64 c i) (*.f64 t z))
(*.f64 c i)
(+.f64 (*.f64 c i) (*.f64 t z))
(+.f64 (*.f64 c i) (*.f64 t z))
(+.f64 (*.f64 c i) (*.f64 t z))
(*.f64 t z)
(+.f64 (*.f64 c i) (*.f64 t z))
(+.f64 (*.f64 c i) (*.f64 t z))
(+.f64 (*.f64 c i) (*.f64 t z))
(*.f64 t z)
(+.f64 (*.f64 c i) (*.f64 t z))
(+.f64 (*.f64 c i) (*.f64 t z))
(+.f64 (*.f64 c i) (*.f64 t z))
(*.f64 t z)
(+.f64 (*.f64 c i) (*.f64 t z))
(+.f64 (*.f64 c i) (*.f64 t z))
(+.f64 (*.f64 c i) (*.f64 t z))
(*.f64 c i)
(+.f64 (*.f64 c i) (*.f64 t z))
(+.f64 (*.f64 c i) (*.f64 t z))
(+.f64 (*.f64 c i) (*.f64 t z))
(*.f64 c i)
(+.f64 (*.f64 c i) (*.f64 t z))
(+.f64 (*.f64 c i) (*.f64 t z))
(+.f64 (*.f64 c i) (*.f64 t z))
(*.f64 t z)
(+.f64 (*.f64 c i) (*.f64 t z))
(+.f64 (*.f64 c i) (*.f64 t z))
(+.f64 (*.f64 c i) (*.f64 t z))
(*.f64 c i)
(+.f64 (*.f64 c i) (*.f64 t z))
(+.f64 (*.f64 c i) (*.f64 t z))
(+.f64 (*.f64 c i) (*.f64 t z))
(*.f64 c i)
(+.f64 (*.f64 c i) (*.f64 t z))
(+.f64 (*.f64 c i) (*.f64 t z))
(+.f64 (*.f64 c i) (*.f64 t z))
Outputs
(*.f64 c i)
(+.f64 (*.f64 c i) (*.f64 t z))
(fma.f64 c i (*.f64 t z))
(+.f64 (*.f64 c i) (*.f64 t z))
(fma.f64 c i (*.f64 t z))
(+.f64 (*.f64 c i) (*.f64 t z))
(fma.f64 c i (*.f64 t z))
(*.f64 t z)
(+.f64 (*.f64 c i) (*.f64 t z))
(fma.f64 c i (*.f64 t z))
(+.f64 (*.f64 c i) (*.f64 t z))
(fma.f64 c i (*.f64 t z))
(+.f64 (*.f64 c i) (*.f64 t z))
(fma.f64 c i (*.f64 t z))
(*.f64 t z)
(+.f64 (*.f64 c i) (*.f64 t z))
(fma.f64 c i (*.f64 t z))
(+.f64 (*.f64 c i) (*.f64 t z))
(fma.f64 c i (*.f64 t z))
(+.f64 (*.f64 c i) (*.f64 t z))
(fma.f64 c i (*.f64 t z))
(*.f64 c i)
(+.f64 (*.f64 c i) (*.f64 t z))
(fma.f64 c i (*.f64 t z))
(+.f64 (*.f64 c i) (*.f64 t z))
(fma.f64 c i (*.f64 t z))
(+.f64 (*.f64 c i) (*.f64 t z))
(fma.f64 c i (*.f64 t z))
(*.f64 t z)
(+.f64 (*.f64 c i) (*.f64 t z))
(fma.f64 c i (*.f64 t z))
(+.f64 (*.f64 c i) (*.f64 t z))
(fma.f64 c i (*.f64 t z))
(+.f64 (*.f64 c i) (*.f64 t z))
(fma.f64 c i (*.f64 t z))
(*.f64 t z)
(+.f64 (*.f64 c i) (*.f64 t z))
(fma.f64 c i (*.f64 t z))
(+.f64 (*.f64 c i) (*.f64 t z))
(fma.f64 c i (*.f64 t z))
(+.f64 (*.f64 c i) (*.f64 t z))
(fma.f64 c i (*.f64 t z))
(*.f64 t z)
(+.f64 (*.f64 c i) (*.f64 t z))
(fma.f64 c i (*.f64 t z))
(+.f64 (*.f64 c i) (*.f64 t z))
(fma.f64 c i (*.f64 t z))
(+.f64 (*.f64 c i) (*.f64 t z))
(fma.f64 c i (*.f64 t z))
(*.f64 c i)
(+.f64 (*.f64 c i) (*.f64 t z))
(fma.f64 c i (*.f64 t z))
(+.f64 (*.f64 c i) (*.f64 t z))
(fma.f64 c i (*.f64 t z))
(+.f64 (*.f64 c i) (*.f64 t z))
(fma.f64 c i (*.f64 t z))
(*.f64 c i)
(+.f64 (*.f64 c i) (*.f64 t z))
(fma.f64 c i (*.f64 t z))
(+.f64 (*.f64 c i) (*.f64 t z))
(fma.f64 c i (*.f64 t z))
(+.f64 (*.f64 c i) (*.f64 t z))
(fma.f64 c i (*.f64 t z))
(*.f64 t z)
(+.f64 (*.f64 c i) (*.f64 t z))
(fma.f64 c i (*.f64 t z))
(+.f64 (*.f64 c i) (*.f64 t z))
(fma.f64 c i (*.f64 t z))
(+.f64 (*.f64 c i) (*.f64 t z))
(fma.f64 c i (*.f64 t z))
(*.f64 c i)
(+.f64 (*.f64 c i) (*.f64 t z))
(fma.f64 c i (*.f64 t z))
(+.f64 (*.f64 c i) (*.f64 t z))
(fma.f64 c i (*.f64 t z))
(+.f64 (*.f64 c i) (*.f64 t z))
(fma.f64 c i (*.f64 t z))
(*.f64 c i)
(+.f64 (*.f64 c i) (*.f64 t z))
(fma.f64 c i (*.f64 t z))
(+.f64 (*.f64 c i) (*.f64 t z))
(fma.f64 c i (*.f64 t z))
(+.f64 (*.f64 c i) (*.f64 t z))
(fma.f64 c i (*.f64 t z))

localize8.0ms (0.1%)

Local error

Found 1 expressions with local error:

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

Compiled 21 to 10 computations (52.4% saved)

series4.0ms (0%)

Counts
1 → 48
Calls

12 calls:

TimeVariablePointExpression
1.0ms
y
@0
(fma.f64 y x (*.f64 c i))
0.0ms
x
@-inf
(fma.f64 y x (*.f64 c i))
0.0ms
x
@inf
(fma.f64 y x (*.f64 c i))
0.0ms
y
@-inf
(fma.f64 y x (*.f64 c i))
0.0ms
y
@inf
(fma.f64 y x (*.f64 c i))

rewrite46.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
661×pow1_binary64
602×add-log-exp_binary64
602×log1p-expm1-u_binary64
602×expm1-log1p-u_binary64
587×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify39.0ms (0.3%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
08336
112336
215336
Stop Event
saturated
Counts
69 → 24
Calls
Call 1
Inputs
(*.f64 c i)
(+.f64 (*.f64 c i) (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 c i) (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 c i) (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(*.f64 c i)
(+.f64 (*.f64 c i) (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 c i) (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 c i) (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 c i) (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(*.f64 c i)
(+.f64 (*.f64 c i) (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(*.f64 c i)
(+.f64 (*.f64 c i) (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 c i) (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(*.f64 c i)
(+.f64 (*.f64 c i) (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(*.f64 c i)
(+.f64 (*.f64 c i) (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
Outputs
(*.f64 c i)
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(*.f64 c i)
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(*.f64 c i)
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(*.f64 c i)
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(*.f64 c i)
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(*.f64 c i)
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))
(+.f64 (*.f64 c i) (*.f64 y x))
(fma.f64 c i (*.f64 y x))

localize11.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.0b
(fma.f64 t z (*.f64 a b))
Compiler

Compiled 32 to 11 computations (65.6% saved)

series3.0ms (0%)

Counts
1 → 48
Calls

12 calls:

TimeVariablePointExpression
0.0ms
t
@0
(fma.f64 t z (*.f64 a b))
0.0ms
b
@inf
(fma.f64 t z (*.f64 a b))
0.0ms
t
@-inf
(fma.f64 t z (*.f64 a b))
0.0ms
z
@-inf
(fma.f64 t z (*.f64 a b))
0.0ms
a
@inf
(fma.f64 t z (*.f64 a b))

rewrite51.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
661×pow1_binary64
602×add-log-exp_binary64
602×log1p-expm1-u_binary64
602×expm1-log1p-u_binary64
587×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
078
11378
216268
Stop Event
node limit
Counts
1 → 21
Calls
Call 1
Inputs
(fma.f64 t z (*.f64 a b))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 a b) (*.f64 t z))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 t z) (*.f64 a b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 t z) 1) (*.f64 a b))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (fma.f64 t z (*.f64 a b))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 t z (*.f64 a b)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 t z (*.f64 a b)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 t z (*.f64 a b))) (pow.f64 (cbrt.f64 (fma.f64 t z (*.f64 a b))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 t z (*.f64 a b))) 2) (cbrt.f64 (fma.f64 t z (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 t z (*.f64 a b))) (sqrt.f64 (fma.f64 t z (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 t z) 3) (pow.f64 (*.f64 a b) 3)) (+.f64 (*.f64 (*.f64 t z) (*.f64 t z)) (-.f64 (pow.f64 (*.f64 a b) 2) (*.f64 (*.f64 t z) (*.f64 a b)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 t z) (*.f64 t z)) (pow.f64 (*.f64 a b) 2)) (-.f64 (*.f64 t z) (*.f64 a b)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 t z (*.f64 a b)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 t z (*.f64 a b)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 t z (*.f64 a b))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 t z (*.f64 a b))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 t z (*.f64 a b)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 t z (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 t z (*.f64 a b)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 t z (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 t z (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 t z (*.f64 a b))))))))

simplify12.0ms (0.1%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
08336
112336
215336
Stop Event
saturated
Counts
69 → 24
Calls
Call 1
Inputs
(*.f64 a b)
(+.f64 (*.f64 a b) (*.f64 t z))
(+.f64 (*.f64 a b) (*.f64 t z))
(+.f64 (*.f64 a b) (*.f64 t z))
(*.f64 t z)
(+.f64 (*.f64 a b) (*.f64 t z))
(+.f64 (*.f64 a b) (*.f64 t z))
(+.f64 (*.f64 a b) (*.f64 t z))
(*.f64 t z)
(+.f64 (*.f64 a b) (*.f64 t z))
(+.f64 (*.f64 a b) (*.f64 t z))
(+.f64 (*.f64 a b) (*.f64 t z))
(*.f64 a b)
(+.f64 (*.f64 a b) (*.f64 t z))
(+.f64 (*.f64 a b) (*.f64 t z))
(+.f64 (*.f64 a b) (*.f64 t z))
(*.f64 t z)
(+.f64 (*.f64 a b) (*.f64 t z))
(+.f64 (*.f64 a b) (*.f64 t z))
(+.f64 (*.f64 a b) (*.f64 t z))
(*.f64 t z)
(+.f64 (*.f64 a b) (*.f64 t z))
(+.f64 (*.f64 a b) (*.f64 t z))
(+.f64 (*.f64 a b) (*.f64 t z))
(*.f64 t z)
(+.f64 (*.f64 a b) (*.f64 t z))
(+.f64 (*.f64 a b) (*.f64 t z))
(+.f64 (*.f64 a b) (*.f64 t z))
(*.f64 a b)
(+.f64 (*.f64 a b) (*.f64 t z))
(+.f64 (*.f64 a b) (*.f64 t z))
(+.f64 (*.f64 a b) (*.f64 t z))
(*.f64 a b)
(+.f64 (*.f64 a b) (*.f64 t z))
(+.f64 (*.f64 a b) (*.f64 t z))
(+.f64 (*.f64 a b) (*.f64 t z))
(*.f64 t z)
(+.f64 (*.f64 a b) (*.f64 t z))
(+.f64 (*.f64 a b) (*.f64 t z))
(+.f64 (*.f64 a b) (*.f64 t z))
(*.f64 a b)
(+.f64 (*.f64 a b) (*.f64 t z))
(+.f64 (*.f64 a b) (*.f64 t z))
(+.f64 (*.f64 a b) (*.f64 t z))
(*.f64 a b)
(+.f64 (*.f64 a b) (*.f64 t z))
(+.f64 (*.f64 a b) (*.f64 t z))
(+.f64 (*.f64 a b) (*.f64 t z))
Outputs
(*.f64 a b)
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 a b (*.f64 t z))
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 a b (*.f64 t z))
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 a b (*.f64 t z))
(*.f64 t z)
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 a b (*.f64 t z))
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 a b (*.f64 t z))
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 a b (*.f64 t z))
(*.f64 t z)
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 a b (*.f64 t z))
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 a b (*.f64 t z))
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 a b (*.f64 t z))
(*.f64 a b)
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 a b (*.f64 t z))
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 a b (*.f64 t z))
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 a b (*.f64 t z))
(*.f64 t z)
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 a b (*.f64 t z))
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 a b (*.f64 t z))
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 a b (*.f64 t z))
(*.f64 t z)
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 a b (*.f64 t z))
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 a b (*.f64 t z))
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 a b (*.f64 t z))
(*.f64 t z)
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 a b (*.f64 t z))
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 a b (*.f64 t z))
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 a b (*.f64 t z))
(*.f64 a b)
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 a b (*.f64 t z))
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 a b (*.f64 t z))
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 a b (*.f64 t z))
(*.f64 a b)
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 a b (*.f64 t z))
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 a b (*.f64 t z))
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 a b (*.f64 t z))
(*.f64 t z)
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 a b (*.f64 t z))
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 a b (*.f64 t z))
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 a b (*.f64 t z))
(*.f64 a b)
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 a b (*.f64 t z))
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 a b (*.f64 t z))
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 a b (*.f64 t z))
(*.f64 a b)
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 a b (*.f64 t z))
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 a b (*.f64 t z))
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 a b (*.f64 t z))

eval35.0ms (0.3%)

Compiler

Compiled 2429 to 630 computations (74.1% saved)

prune44.0ms (0.4%)

Pruning

15 alts after pruning (4 fresh and 11 done)

PrunedKeptTotal
New1691170
Fresh033
Picked011
Done11011
Total17015185
Error
0b
Counts
185 → 15
Alt Table
Click to see full alt table
StatusErrorProgram
33.6b
(+.f64 (*.f64 y x) (*.f64 t z))
29.7b
(+.f64 (*.f64 a b) (*.f64 c i))
47.1b
(*.f64 t z)
18.3b
(+.f64 (+.f64 (*.f64 a b) (*.f64 t z)) (*.f64 x y))
49.3b
(*.f64 y x)
31.7b
(+.f64 (*.f64 y x) (*.f64 c i))
29.2b
(fma.f64 z t (*.f64 c i))
31.7b
(fma.f64 y x (*.f64 c i))
44.9b
(*.f64 c i)
31.7b
(fma.f64 i c (*.f64 y x))
18.3b
(+.f64 (fma.f64 a b (*.f64 t z)) (*.f64 x y))
29.3b
(+.f64 (*.f64 t z) (*.f64 c i))
47.5b
(*.f64 a b)
34.5b
(+.f64 (*.f64 a b) (*.f64 x y))
18.3b
(fma.f64 y x (fma.f64 t z (*.f64 a b)))
Compiler

Compiled 215 to 157 computations (27% saved)

regimes404.0ms (3.3%)

Counts
28 → 1
Calls
Call 1
Inputs
(*.f64 t z)
(*.f64 c i)
(*.f64 y x)
(*.f64 a b)
(*.f64 c i)
(*.f64 t z)
(+.f64 (*.f64 a b) (*.f64 x y))
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 a b) (*.f64 c i))
(+.f64 (*.f64 t z) (*.f64 c i))
(+.f64 (*.f64 y x) (*.f64 c i))
(+.f64 (+.f64 (*.f64 a b) (*.f64 t z)) (*.f64 x y))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a b)) (*.f64 c i))
(fma.f64 z t (*.f64 c i))
(fma.f64 y x (*.f64 c i))
(fma.f64 i c (*.f64 y x))
(fma.f64 y x (*.f64 c i))
(+.f64 (fma.f64 t z (*.f64 c i)) (*.f64 x y))
(+.f64 (fma.f64 a b (*.f64 t z)) (*.f64 x y))
(fma.f64 x y (+.f64 (*.f64 c i) (*.f64 t z)))
(+.f64 (fma.f64 a b (*.f64 t z)) (*.f64 c i))
(+.f64 (+.f64 (fma.f64 z t (*.f64 c i)) (*.f64 a b)) (*.f64 x y))
(fma.f64 y x (fma.f64 t z (*.f64 a b)))
(fma.f64 t z (fma.f64 y x (*.f64 c i)))
(+.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b))) (*.f64 x y))
(fma.f64 i c (fma.f64 a b (fma.f64 x y (*.f64 z t))))
(fma.f64 x y (fma.f64 z t (fma.f64 c i (*.f64 a b))))
Outputs
(fma.f64 x y (fma.f64 z t (fma.f64 c i (*.f64 a b))))
Calls

20 calls:

32.0ms
(+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a b))
31.0ms
(+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a b))
31.0ms
(+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a b)) (*.f64 c i))
30.0ms
c
29.0ms
i
Results
ErrorSegmentsBranch
0.0b1x
0.0b1y
0.0b1z
0.0b1t
0.0b1a
0.0b1b
0.0b1c
0.0b1i
0.0b1(+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a b)) (*.f64 c i))
0.0b1(+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a b))
0.0b1(+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a b))
0.0b1(+.f64 (*.f64 x y) (*.f64 z t))
0.0b1(+.f64 (*.f64 x y) (*.f64 z t))
0.0b1(*.f64 x y)
0.0b1(*.f64 x y)
0.0b1(*.f64 z t)
0.0b1(*.f64 z t)
0.0b1(*.f64 a b)
0.0b1(*.f64 c i)
0.0b1(*.f64 c i)
Compiler

Compiled 471 to 237 computations (49.7% saved)

regimes282.0ms (2.3%)

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

19 calls:

19.0ms
a
15.0ms
i
15.0ms
c
15.0ms
(+.f64 (*.f64 x y) (*.f64 z t))
15.0ms
t
Results
ErrorSegmentsBranch
0.0b1x
0.0b1y
0.0b1z
0.0b1t
0.0b1a
0.0b1b
0.0b1c
0.0b1i
0.0b1(+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a b)) (*.f64 c i))
0.0b1(+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a b))
0.0b1(+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a b))
0.0b1(+.f64 (*.f64 x y) (*.f64 z t))
0.0b1(+.f64 (*.f64 x y) (*.f64 z t))
0.0b1(*.f64 x y)
0.0b1(*.f64 z t)
0.0b1(*.f64 z t)
0.0b1(*.f64 a b)
0.0b1(*.f64 c i)
0.0b1(*.f64 c i)
Compiler

Compiled 448 to 227 computations (49.3% saved)

regimes253.0ms (2%)

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

18 calls:

16.0ms
(+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a b))
15.0ms
(+.f64 (*.f64 x y) (*.f64 z t))
15.0ms
c
14.0ms
(+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a b)) (*.f64 c i))
14.0ms
(+.f64 (*.f64 x y) (*.f64 z t))
Results
ErrorSegmentsBranch
0.0b1x
0.0b1y
0.0b1z
0.0b1t
0.0b1a
0.0b1b
0.0b1c
0.0b1i
0.0b1(+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a b)) (*.f64 c i))
0.0b1(+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a b))
0.0b1(+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a b))
0.0b1(+.f64 (*.f64 x y) (*.f64 z t))
0.0b1(+.f64 (*.f64 x y) (*.f64 z t))
0.0b1(*.f64 x y)
0.0b1(*.f64 z t)
0.0b1(*.f64 z t)
0.0b1(*.f64 a b)
0.0b1(*.f64 c i)
Compiler

Compiled 412 to 212 computations (48.5% saved)

regimes193.0ms (1.6%)

Counts
22 → 1
Calls
Call 1
Inputs
(*.f64 t z)
(*.f64 c i)
(*.f64 y x)
(*.f64 a b)
(*.f64 c i)
(*.f64 t z)
(+.f64 (*.f64 a b) (*.f64 x y))
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 a b) (*.f64 c i))
(+.f64 (*.f64 t z) (*.f64 c i))
(+.f64 (*.f64 y x) (*.f64 c i))
(+.f64 (+.f64 (*.f64 a b) (*.f64 t z)) (*.f64 x y))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a b)) (*.f64 c i))
(fma.f64 z t (*.f64 c i))
(fma.f64 y x (*.f64 c i))
(fma.f64 i c (*.f64 y x))
(fma.f64 y x (*.f64 c i))
(+.f64 (fma.f64 t z (*.f64 c i)) (*.f64 x y))
(+.f64 (fma.f64 a b (*.f64 t z)) (*.f64 x y))
(fma.f64 x y (+.f64 (*.f64 c i) (*.f64 t z)))
(+.f64 (fma.f64 a b (*.f64 t z)) (*.f64 c i))
Outputs
(+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a b)) (*.f64 c i))
Calls

15 calls:

14.0ms
c
13.0ms
(+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a b)) (*.f64 c i))
13.0ms
(+.f64 (*.f64 x y) (*.f64 z t))
13.0ms
t
13.0ms
(+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a b))
Results
ErrorSegmentsBranch
0.0b1x
0.0b1y
0.0b1z
0.0b1t
0.0b1a
0.0b1b
0.0b1c
0.0b1i
0.0b1(+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a b)) (*.f64 c i))
0.0b1(+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a b))
0.0b1(+.f64 (*.f64 x y) (*.f64 z t))
0.0b1(*.f64 x y)
0.0b1(*.f64 z t)
0.0b1(*.f64 a b)
0.0b1(*.f64 c i)
Compiler

Compiled 335 to 174 computations (48.1% saved)

regimes541.0ms (4.4%)

Counts
13 → 3
Calls
Call 1
Inputs
(*.f64 t z)
(*.f64 c i)
(*.f64 y x)
(*.f64 a b)
(*.f64 c i)
(*.f64 t z)
(+.f64 (*.f64 a b) (*.f64 x y))
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 a b) (*.f64 c i))
(+.f64 (*.f64 t z) (*.f64 c i))
(+.f64 (*.f64 y x) (*.f64 c i))
(+.f64 (+.f64 (*.f64 a b) (*.f64 t z)) (*.f64 x y))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
Outputs
(+.f64 (*.f64 t z) (*.f64 c i))
(+.f64 (+.f64 (*.f64 a b) (*.f64 t z)) (*.f64 x y))
(+.f64 (*.f64 t z) (*.f64 c i))
Calls

11 calls:

81.0ms
b
71.0ms
y
61.0ms
z
58.0ms
x
55.0ms
t
Results
ErrorSegmentsBranch
12.4b7x
10.8b9y
11.0b8z
11.2b8t
13.5b7a
10.8b12b
12.9b3c
10.2b5i
11.4b5(*.f64 x y)
11.3b7(*.f64 a b)
7.7b3(*.f64 c i)
Compiler

Compiled 188 to 112 computations (40.4% saved)

bsearch26.0ms (0.2%)

Algorithm
binary-search
Steps
TimeLeftRight
25.0ms
7.703326665501798e+62
4.0431708113752695e+71
0.0ms
-3.742297516876225e+55
-3.5950535174928095e+55
Compiler

Compiled 34 to 25 computations (26.5% saved)

regimes681.0ms (5.5%)

Counts
11 → 9
Calls
Call 1
Inputs
(*.f64 t z)
(*.f64 c i)
(*.f64 y x)
(*.f64 a b)
(*.f64 c i)
(*.f64 t z)
(+.f64 (*.f64 a b) (*.f64 x y))
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 a b) (*.f64 c i))
(+.f64 (*.f64 t z) (*.f64 c i))
(+.f64 (*.f64 y x) (*.f64 c i))
Outputs
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 a b) (*.f64 c i))
(+.f64 (*.f64 t z) (*.f64 c i))
(+.f64 (*.f64 a b) (*.f64 c i))
(+.f64 (*.f64 t z) (*.f64 c i))
(+.f64 (*.f64 a b) (*.f64 c i))
(+.f64 (*.f64 t z) (*.f64 c i))
(+.f64 (*.f64 a b) (*.f64 c i))
(+.f64 (*.f64 y x) (*.f64 t z))
Calls

12 calls:

98.0ms
t
78.0ms
z
62.0ms
y
60.0ms
c
59.0ms
x
Results
ErrorSegmentsBranch
17.1b8x
16.1b8y
13.3b11z
13.3b16t
16.9b7a
18.2b7b
18.9b8c
19.0b6i
12.8b9(*.f64 x y)
12.8b9(*.f64 x y)
13.9b7(*.f64 a b)
17.1b8(*.f64 c i)
Compiler

Compiled 177 to 118 computations (33.3% saved)

bsearch1.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
6.240615394610098e+108
2.6578832441215288e+110
0.0ms
0.00783327137267043
8492608872841.793
0.0ms
2.283584708124278e-25
2.3593237820987344e-25
0.0ms
1.216249712102338e-166
5.362750873609075e-151
0.0ms
1.3852843328680824e-204
4.252399944461895e-204
0.0ms
-5.5804881556430315e-176
-1.290642645439034e-179
0.0ms
-1.5445140289322994e+42
-4.237677442325192e+34
0.0ms
-9.44226154486548e+93
-1.5038782417542726e+88
Compiler

Compiled 34 to 25 computations (26.5% saved)

regimes494.0ms (4%)

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

12 calls:

63.0ms
t
50.0ms
c
48.0ms
x
48.0ms
(*.f64 c i)
43.0ms
z
Results
ErrorSegmentsBranch
17.8b9x
18.9b5y
17.1b7z
16.8b11t
21.9b5a
20.6b7b
20.8b7c
21.6b4i
15.1b7(*.f64 x y)
15.1b7(*.f64 x y)
17.1b6(*.f64 a b)
18.2b9(*.f64 c i)
Compiler

Compiled 163 to 116 computations (28.8% saved)

bsearch1.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
6.240615394610098e+108
2.6578832441215288e+110
0.0ms
5.227984355144226e-176
7.997486810498894e-172
0.0ms
1.3852843328680824e-204
4.252399944461895e-204
0.0ms
-7.621989449789556e-62
-5.050417583235469e-62
0.0ms
-1.5445140289322994e+42
-4.237677442325192e+34
0.0ms
-9.44226154486548e+93
-1.5038782417542726e+88
Compiler

Compiled 34 to 25 computations (26.5% saved)

regimes438.0ms (3.5%)

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

12 calls:

57.0ms
c
51.0ms
y
41.0ms
(*.f64 x y)
41.0ms
(*.f64 x y)
40.0ms
(*.f64 a b)
Results
ErrorSegmentsBranch
26.7b7x
22.6b10y
22.2b6z
24.6b5t
25.2b3a
24.3b7b
23.3b11c
24.6b6i
23.7b8(*.f64 x y)
23.7b8(*.f64 x y)
18.4b8(*.f64 a b)
20.6b7(*.f64 c i)
Compiler

Compiled 156 to 115 computations (26.3% saved)

bsearch180.0ms (1.5%)

Algorithm
binary-search
Steps
TimeLeftRight
25.0ms
3.7143353556154977e-17
2.975944917595033e-14
25.0ms
3.76775614528453e-83
2.7521550020713176e-79
25.0ms
2.946772324054719e-149
2.1762976487588843e-144
25.0ms
-7.781851573985181e-202
-3.376774293851523e-202
29.0ms
-5.357299628203318e-24
-7.869967573948081e-33
25.0ms
-4.284678858099299e-12
-1.548443582720691e-12
25.0ms
-6.602995088872467e+95
-9.826200164919301e+78
Compiler

Compiled 34 to 25 computations (26.5% saved)

regimes348.0ms (2.8%)

Counts
7 → 5
Calls
Call 1
Inputs
(*.f64 t z)
(*.f64 c i)
(*.f64 y x)
(*.f64 a b)
(*.f64 c i)
(*.f64 t z)
(+.f64 (*.f64 a b) (*.f64 x y))
Outputs
(*.f64 c i)
(+.f64 (*.f64 a b) (*.f64 x y))
(*.f64 t z)
(+.f64 (*.f64 a b) (*.f64 x y))
(*.f64 c i)
Calls

11 calls:

56.0ms
b
46.0ms
y
41.0ms
(*.f64 x y)
37.0ms
x
32.0ms
t
Results
ErrorSegmentsBranch
28.5b7x
26.2b9y
26.0b6z
26.4b7t
30.6b5a
26.0b12b
29.0b3c
27.8b3i
24.2b10(*.f64 x y)
26.7b6(*.f64 a b)
22.3b5(*.f64 c i)
Compiler

Compiled 138 to 105 computations (23.9% saved)

bsearch144.0ms (1.2%)

Algorithm
binary-search
Steps
TimeLeftRight
48.0ms
7.703326665501798e+62
4.0431708113752695e+71
70.0ms
-7.230569029682756e-156
-5.202966361405067e-162
26.0ms
-1.2837655069738792e-84
-1.2253465891740646e-86
0.0ms
-3.742297516876225e+55
-3.5950535174928095e+55
Compiler

Compiled 34 to 25 computations (26.5% saved)

regimes605.0ms (4.9%)

Counts
6 → 11
Calls
Call 1
Inputs
(*.f64 t z)
(*.f64 c i)
(*.f64 y x)
(*.f64 a b)
(*.f64 c i)
(*.f64 t z)
Outputs
(*.f64 t z)
(*.f64 c i)
(*.f64 a b)
(*.f64 c i)
(*.f64 a b)
(*.f64 y x)
(*.f64 c i)
(*.f64 a b)
(*.f64 y x)
(*.f64 a b)
(*.f64 t z)
Calls

10 calls:

132.0ms
y
79.0ms
b
66.0ms
c
61.0ms
z
60.0ms
(*.f64 a b)
Results
ErrorSegmentsBranch
33.3b9x
32.1b9y
29.3b11z
31.4b13t
34.6b7a
32.9b10b
34.3b8c
35.5b4i
31.7b5(*.f64 a b)
31.5b7(*.f64 c i)
Compiler

Compiled 120 to 94 computations (21.7% saved)

bsearch511.0ms (4.1%)

Algorithm
10×binary-search
Steps
TimeLeftRight
119.0ms
1.8456618392961016e-131
8.676574545565619e-130
43.0ms
4.8175726525463826e-210
9.826715948933193e-204
26.0ms
1.0695877401982802e-263
1.472767599513134e-257
28.0ms
1.587811603621264e-308
1.8113460241838386e-303
28.0ms
-4.0798840007093424e-227
-3.419026375579721e-227
28.0ms
-6.265415425150223e-156
-1.1999420499474422e-164
28.0ms
-5.0510511457650253e-144
-3.346000024114288e-148
42.0ms
-3.653461646652633e-50
-4.7033103280047795e-55
50.0ms
-2.1442213362759935e+64
-1.5304861004958247e+64
120.0ms
-1.7799527946651298e+128
-5.605222465915596e+126
Compiler

Compiled 202 to 165 computations (18.3% saved)

regimes425.0ms (3.4%)

Counts
3 → 7
Calls
Call 1
Inputs
(*.f64 t z)
(*.f64 c i)
(*.f64 y x)
Outputs
(*.f64 t z)
(*.f64 c i)
(*.f64 t z)
(*.f64 c i)
(*.f64 y x)
(*.f64 c i)
(*.f64 t z)
Calls

9 calls:

136.0ms
z
64.0ms
t
50.0ms
x
49.0ms
i
47.0ms
b
Results
ErrorSegmentsBranch
34.8b8x
36.4b6y
34.3b7z
35.1b7t
40.2b7a
37.4b9b
36.4b5c
35.0b8i
34.9b5(*.f64 c i)
Compiler

Compiled 100 to 84 computations (16% saved)

bsearch491.0ms (4%)

Algorithm
binary-search
Steps
TimeLeftRight
62.0ms
4.6984800791498024e-126
6.757367871460118e-118
27.0ms
-4.0798840007093424e-227
-3.419026375579721e-227
28.0ms
-5.0510511457650253e-144
-3.346000024114288e-148
85.0ms
-1.9283599011860352e-12
-1.1029755908744575e-14
53.0ms
-2658816.1203759187
-423976.7431919519
236.0ms
-1.7799527946651298e+128
-5.605222465915596e+126
Compiler

Compiled 202 to 165 computations (18.3% saved)

regimes316.0ms (2.6%)

Accuracy

Total -26.7b remaining (-74.8%)

Threshold costs -26.7b (-74.8%)

Counts
2 → 5
Calls
Call 1
Inputs
(*.f64 t z)
(*.f64 c i)
Outputs
(*.f64 t z)
(*.f64 c i)
(*.f64 t z)
(*.f64 c i)
(*.f64 t z)
Calls

9 calls:

58.0ms
b
56.0ms
y
48.0ms
t
40.0ms
i
38.0ms
z
Results
ErrorSegmentsBranch
41.8b2x
40.9b4y
35.7b5z
38.1b3t
42.1b5a
39.1b8b
38.1b3c
37.5b5i
35.9b3(*.f64 c i)
Compiler

Compiled 97 to 83 computations (14.4% saved)

bsearch262.0ms (2.1%)

Algorithm
binary-search
Steps
TimeLeftRight
26.0ms
4.6984800791498024e-126
6.757367871460118e-118
27.0ms
-1.9283599011860352e-12
-1.1029755908744575e-14
26.0ms
-2658816.1203759187
-423976.7431919519
183.0ms
-1.7799527946651298e+128
-5.605222465915596e+126
Compiler

Compiled 202 to 165 computations (18.3% saved)

simplify22.0ms (0.2%)

Algorithm
egg-herbie
Rules
11×+-commutative_binary64
*-commutative_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0145819
1164819
Stop Event
fuel
saturated
Calls
Call 1
Inputs
(fma.f64 x y (fma.f64 z t (fma.f64 c i (*.f64 a b))))
(+.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b))) (*.f64 x y))
(+.f64 (+.f64 (fma.f64 z t (*.f64 c i)) (*.f64 a b)) (*.f64 x y))
(+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a b)) (*.f64 c i))
(if (<=.f64 (*.f64 c i) -35999999999999998735107051514203216762497681614681669632) (+.f64 (*.f64 t z) (*.f64 c i)) (if (<=.f64 (*.f64 c i) 770332666550179790687549429404533633848880070799980628897955840) (+.f64 (+.f64 (*.f64 a b) (*.f64 t z)) (*.f64 x y)) (+.f64 (*.f64 t z) (*.f64 c i))))
(if (<=.f64 (*.f64 x y) -5000000000000000101094395635779734942880481616071788705688884281040020024990821546793489137664) (+.f64 (*.f64 y x) (*.f64 t z)) (if (<=.f64 (*.f64 x y) -1000000000000000044885712678075916785549312) (+.f64 (*.f64 a b) (*.f64 c i)) (if (<=.f64 (*.f64 x y) -228122030881109760/4562440617622195218641171605700291324893228507248559930579192517899275167208677386505912811317371399778642309573594407310688704721375437998252661319722214188251994674360264950082874192246603776) (+.f64 (*.f64 t z) (*.f64 c i)) (if (<=.f64 (*.f64 x y) 722947573429303680/361473786714651839609485931802192366508973300717001923159475447150424810286233407987951861887389439612274926783780351561999781998832434041296198795326329101623141899709787663433296905279066051548640942013290819886814068736) (+.f64 (*.f64 a b) (*.f64 c i)) (if (<=.f64 (*.f64 x y) 212455197126706848/1062275985633534197379176413104937254659186235454063846398888276400807119721704485478325004530458571337778658972493002030693158675305414478819039957533174703887662541670786438063456256) (+.f64 (*.f64 t z) (*.f64 c i)) (if (<=.f64 (*.f64 x y) 2504478220538107/10889035741470030830827987437816582766592) (+.f64 (*.f64 a b) (*.f64 c i)) (if (<=.f64 (*.f64 x y) 184467440737095520/18446744073709551616) (+.f64 (*.f64 t z) (*.f64 c i)) (if (<=.f64 (*.f64 x y) 9999999999999999818508707188399807864717650964328171247958398369899072554380053298205803424393137676263358464) (+.f64 (*.f64 a b) (*.f64 c i)) (+.f64 (*.f64 y x) (*.f64 t z))))))))))
(if (<=.f64 (*.f64 x y) -5000000000000000101094395635779734942880481616071788705688884281040020024990821546793489137664) (+.f64 (*.f64 y x) (*.f64 t z)) (if (<=.f64 (*.f64 x y) -1000000000000000044885712678075916785549312) (+.f64 (*.f64 a b) (*.f64 c i)) (if (<=.f64 (*.f64 x y) -6947525354238972/115792089237316195423570985008687907853269984665640564039457584007913129639936) (+.f64 (*.f64 y x) (*.f64 t z)) (if (<=.f64 (*.f64 x y) 722947573429303680/361473786714651839609485931802192366508973300717001923159475447150424810286233407987951861887389439612274926783780351561999781998832434041296198795326329101623141899709787663433296905279066051548640942013290819886814068736) (+.f64 (*.f64 a b) (*.f64 c i)) (if (<=.f64 (*.f64 x y) 456244061762219520/4562440617622195218641171605700291324893228507248559930579192517899275167208677386505912811317371399778642309573594407310688704721375437998252661319722214188251994674360264950082874192246603776) (*.f64 t z) (if (<=.f64 (*.f64 x y) 9999999999999999818508707188399807864717650964328171247958398369899072554380053298205803424393137676263358464) (+.f64 (*.f64 a b) (*.f64 c i)) (+.f64 (*.f64 y x) (*.f64 t z))))))))
(if (<=.f64 (*.f64 a b) -660299508887246652429464060797736154408131795993292531795277279391773394376928194811479478763520) (+.f64 (*.f64 a b) (*.f64 x y)) (if (<=.f64 (*.f64 a b) -339467232890923840/79228162514264337593543950336) (*.f64 c i) (if (<=.f64 (*.f64 a b) -7291978391158755/1361129467683753853853498429727072845824) (+.f64 (*.f64 y x) (*.f64 t z)) (if (<=.f64 (*.f64 a b) -8584397449035025/11031304526203974597457456414861827591216226218170224705794538792432397774848431640257320003887617175667569787102671861633294128382337464639166223001902133228245297232354359845986844033174623155170927185464197384241152) (*.f64 c i) (if (<=.f64 (*.f64 a b) 6787724624930759/230344386280611654799899571593522271174128492457058131614758685317726084130380178960334883128519211886075950624436269830308263222041308144077235977260296389382897664) (+.f64 (*.f64 y x) (*.f64 t z)) (if (<=.f64 (*.f64 a b) 2575321049868511/68351585149469122636640694597425667667286544715412888638305331450311031224980497600734786781970432) (*.f64 c i) (if (<=.f64 (*.f64 a b) 6026853687033497/162259276829213363391578010288128) (+.f64 (*.f64 y x) (*.f64 t z)) (+.f64 (*.f64 a b) (*.f64 x y)))))))))
(if (<=.f64 (*.f64 c i) -35999999999999998735107051514203216762497681614681669632) (*.f64 c i) (if (<=.f64 (*.f64 c i) -175494814723753/136703170298938245273281389194851335334573089430825777276610662900622062449960995201469573563940864) (+.f64 (*.f64 a b) (*.f64 x y)) (if (<=.f64 (*.f64 c i) -1788339540990432000/247330401473104534060502521019647190035131349101211839914063056092897225106531867170316401061243044989597671426016139339351365034306751209967546155101893167916606772148699136) (*.f64 t z) (if (<=.f64 (*.f64 c i) 770332666550179790687549429404533633848880070799980628897955840) (+.f64 (*.f64 a b) (*.f64 x y)) (*.f64 c i)))))
(if (<=.f64 z -174999999999999984296643953265823805501562512914298044967121931927174465666231202628510192083799102918013249979761369250751578112) (*.f64 t z) (if (<=.f64 z -21442213362759935491791607234482442565745759948949355400766947328) (*.f64 c i) (if (<=.f64 z -984971311442353408/26959946667150639794667015087019630673637144422540572481103610249216) (*.f64 a b) (if (<=.f64 z -1109582210772729/219673525124179510879420825570604582952621929604585773100622830693937381868724993667921908501166545759273481964527387457187903615990932602002368905315681828864) (*.f64 c i) (if (<=.f64 z -1549627712498186496/247330401473104534060502521019647190035131349101211839914063056092897225106531867170316401061243044989597671426016139339351365034306751209967546155101893167916606772148699136) (*.f64 a b) (if (<=.f64 z -8705512128385759/213376461852155336770555257303080249508632266314109061132680249976449191610164226288685830427889737303773757138989863694268441652931819682571627393674586561475045042544448465870818505149178048791326880516348371263414103937199246761317244076032) (*.f64 y x) (if (<=.f64 z 1606883232002191/101201126653655309176247673359458653524778324882071059178450679013715169783997673445980191850718562247593538932158405955694904368692896738433506699970369254960758712138283180682233453871046608170619883839236372534281003741712346349309051677824579778170405028256179384776166707307615251266093163754323003131653853870546747392) (*.f64 c i) (if (<=.f64 z 24269028545766980/2269007733883335972287082669296112915239349672942191252221331572442536403137824056312817862695551072066953619064625508194663368599769448406663254670871573830845597595897613333042429214224697474472410882236254024057110212260250671521235807709272244389361641091086035023229622419456) (*.f64 a b) (if (<=.f64 z 111451278687289/23134322349737717735007099635340311456574291245888123082206428617627187858318938111228919160792924135185595314161942499967986047925275778642956722900885062503881081581426410459731001937860227299113020288850612472756100399104) (*.f64 y x) (if (<=.f64 z 1843741494782769/99895953610111751404211111353381321783955140565279076827493022708011895642232499843849795298031743077114461795885011932654335221737225129801285632) (*.f64 a b) (*.f64 t z)))))))))))
(if (<=.f64 z -174999999999999984296643953265823805501562512914298044967121931927174465666231202628510192083799102918013249979761369250751578112) (*.f64 t z) (if (<=.f64 z -11419528283092170/4294967296) (*.f64 c i) (if (<=.f64 z -152780411637157920/79228162514264337593543950336) (*.f64 t z) (if (<=.f64 z -1109582210772729/219673525124179510879420825570604582952621929604585773100622830693937381868724993667921908501166545759273481964527387457187903615990932602002368905315681828864) (*.f64 c i) (if (<=.f64 z -8705512128385759/213376461852155336770555257303080249508632266314109061132680249976449191610164226288685830427889737303773757138989863694268441652931819682571627393674586561475045042544448465870818505149178048791326880516348371263414103937199246761317244076032) (*.f64 y x) (if (<=.f64 z 14667473375774464000/3121748550315992231381597229793166305748598142664971150859156959625371738819765620120306103063491971159826931121406622895447975679288285306290176) (*.f64 c i) (*.f64 t z)))))))
(if (<=.f64 z -174999999999999984296643953265823805501562512914298044967121931927174465666231202628510192083799102918013249979761369250751578112) (*.f64 t z) (if (<=.f64 z -11419528283092170/4294967296) (*.f64 c i) (if (<=.f64 z -152780411637157920/79228162514264337593543950336) (*.f64 t z) (if (<=.f64 z 14667473375774464000/3121748550315992231381597229793166305748598142664971150859156959625371738819765620120306103063491971159826931121406622895447975679288285306290176) (*.f64 c i) (*.f64 t z)))))
(*.f64 t z)
Outputs
(fma.f64 x y (fma.f64 z t (fma.f64 c i (*.f64 a b))))
(+.f64 (fma.f64 z t (fma.f64 c i (*.f64 a b))) (*.f64 x y))
(+.f64 (+.f64 (fma.f64 z t (*.f64 c i)) (*.f64 a b)) (*.f64 x y))
(+.f64 (*.f64 x y) (+.f64 (*.f64 a b) (fma.f64 z t (*.f64 c i))))
(+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a b)) (*.f64 c i))
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 x y) (*.f64 z t))))
(if (<=.f64 (*.f64 c i) -35999999999999998735107051514203216762497681614681669632) (+.f64 (*.f64 t z) (*.f64 c i)) (if (<=.f64 (*.f64 c i) 770332666550179790687549429404533633848880070799980628897955840) (+.f64 (+.f64 (*.f64 a b) (*.f64 t z)) (*.f64 x y)) (+.f64 (*.f64 t z) (*.f64 c i))))
(if (<=.f64 (*.f64 c i) -35999999999999998735107051514203216762497681614681669632) (+.f64 (*.f64 c i) (*.f64 z t)) (if (<=.f64 (*.f64 c i) 770332666550179790687549429404533633848880070799980628897955840) (+.f64 (*.f64 x y) (+.f64 (*.f64 a b) (*.f64 z t))) (+.f64 (*.f64 c i) (*.f64 z t))))
(if (<=.f64 (*.f64 x y) -5000000000000000101094395635779734942880481616071788705688884281040020024990821546793489137664) (+.f64 (*.f64 y x) (*.f64 t z)) (if (<=.f64 (*.f64 x y) -1000000000000000044885712678075916785549312) (+.f64 (*.f64 a b) (*.f64 c i)) (if (<=.f64 (*.f64 x y) -228122030881109760/4562440617622195218641171605700291324893228507248559930579192517899275167208677386505912811317371399778642309573594407310688704721375437998252661319722214188251994674360264950082874192246603776) (+.f64 (*.f64 t z) (*.f64 c i)) (if (<=.f64 (*.f64 x y) 722947573429303680/361473786714651839609485931802192366508973300717001923159475447150424810286233407987951861887389439612274926783780351561999781998832434041296198795326329101623141899709787663433296905279066051548640942013290819886814068736) (+.f64 (*.f64 a b) (*.f64 c i)) (if (<=.f64 (*.f64 x y) 212455197126706848/1062275985633534197379176413104937254659186235454063846398888276400807119721704485478325004530458571337778658972493002030693158675305414478819039957533174703887662541670786438063456256) (+.f64 (*.f64 t z) (*.f64 c i)) (if (<=.f64 (*.f64 x y) 2504478220538107/10889035741470030830827987437816582766592) (+.f64 (*.f64 a b) (*.f64 c i)) (if (<=.f64 (*.f64 x y) 184467440737095520/18446744073709551616) (+.f64 (*.f64 t z) (*.f64 c i)) (if (<=.f64 (*.f64 x y) 9999999999999999818508707188399807864717650964328171247958398369899072554380053298205803424393137676263358464) (+.f64 (*.f64 a b) (*.f64 c i)) (+.f64 (*.f64 y x) (*.f64 t z))))))))))
(if (<=.f64 (*.f64 x y) -5000000000000000101094395635779734942880481616071788705688884281040020024990821546793489137664) (+.f64 (*.f64 x y) (*.f64 z t)) (if (<=.f64 (*.f64 x y) -1000000000000000044885712678075916785549312) (+.f64 (*.f64 a b) (*.f64 c i)) (if (<=.f64 (*.f64 x y) -891101683129335/17822033662586700072817076584766762987864173856439687228824970773044043621908896041038721919208482030385321521771853153557377752817872804680674458280164899172859354196719784961261227313463296) (+.f64 (*.f64 c i) (*.f64 z t)) (if (<=.f64 (*.f64 x y) 5648027917416435/2824013958708217496949108842204627863351353911851577524683401930862693830361198499905873920995229996970897865498283996578123296865878390947626553088486946106430796091482716120572632072492703527723757359478834530365734912) (+.f64 (*.f64 a b) (*.f64 c i)) (if (<=.f64 (*.f64 x y) 6639224910209589/33196124551047943668099262909529289208099569857939495199965258637525222491303265171197656391576830354305583092890406313459161208603294202463094998672911709496489454427212076189483008) (+.f64 (*.f64 c i) (*.f64 z t)) (if (<=.f64 (*.f64 x y) 2504478220538107/10889035741470030830827987437816582766592) (+.f64 (*.f64 a b) (*.f64 c i)) (if (<=.f64 (*.f64 x y) 5764607523034235/576460752303423488) (+.f64 (*.f64 c i) (*.f64 z t)) (if (<=.f64 (*.f64 x y) 9999999999999999818508707188399807864717650964328171247958398369899072554380053298205803424393137676263358464) (+.f64 (*.f64 a b) (*.f64 c i)) (+.f64 (*.f64 x y) (*.f64 z t))))))))))
(if (<=.f64 (*.f64 x y) -5000000000000000101094395635779734942880481616071788705688884281040020024990821546793489137664) (+.f64 (*.f64 y x) (*.f64 t z)) (if (<=.f64 (*.f64 x y) -1000000000000000044885712678075916785549312) (+.f64 (*.f64 a b) (*.f64 c i)) (if (<=.f64 (*.f64 x y) -6947525354238972/115792089237316195423570985008687907853269984665640564039457584007913129639936) (+.f64 (*.f64 y x) (*.f64 t z)) (if (<=.f64 (*.f64 x y) 722947573429303680/361473786714651839609485931802192366508973300717001923159475447150424810286233407987951861887389439612274926783780351561999781998832434041296198795326329101623141899709787663433296905279066051548640942013290819886814068736) (+.f64 (*.f64 a b) (*.f64 c i)) (if (<=.f64 (*.f64 x y) 456244061762219520/4562440617622195218641171605700291324893228507248559930579192517899275167208677386505912811317371399778642309573594407310688704721375437998252661319722214188251994674360264950082874192246603776) (*.f64 t z) (if (<=.f64 (*.f64 x y) 9999999999999999818508707188399807864717650964328171247958398369899072554380053298205803424393137676263358464) (+.f64 (*.f64 a b) (*.f64 c i)) (+.f64 (*.f64 y x) (*.f64 t z))))))))
(if (<=.f64 (*.f64 x y) -5000000000000000101094395635779734942880481616071788705688884281040020024990821546793489137664) (+.f64 (*.f64 x y) (*.f64 z t)) (if (<=.f64 (*.f64 x y) -1000000000000000044885712678075916785549312) (+.f64 (*.f64 a b) (*.f64 c i)) (if (<=.f64 (*.f64 x y) -1736881338559743/28948022309329048855892746252171976963317496166410141009864396001978282409984) (+.f64 (*.f64 x y) (*.f64 z t)) (if (<=.f64 (*.f64 x y) 5648027917416435/2824013958708217496949108842204627863351353911851577524683401930862693830361198499905873920995229996970897865498283996578123296865878390947626553088486946106430796091482716120572632072492703527723757359478834530365734912) (+.f64 (*.f64 a b) (*.f64 c i)) (if (<=.f64 (*.f64 x y) 891101683129335/8911016831293350036408538292383381493932086928219843614412485386522021810954448020519360959604241015192660760885926576778688876408936402340337229140082449586429677098359892480630613656731648) (*.f64 z t) (if (<=.f64 (*.f64 x y) 9999999999999999818508707188399807864717650964328171247958398369899072554380053298205803424393137676263358464) (+.f64 (*.f64 a b) (*.f64 c i)) (+.f64 (*.f64 x y) (*.f64 z t))))))))
(if (<=.f64 (*.f64 a b) -660299508887246652429464060797736154408131795993292531795277279391773394376928194811479478763520) (+.f64 (*.f64 a b) (*.f64 x y)) (if (<=.f64 (*.f64 a b) -339467232890923840/79228162514264337593543950336) (*.f64 c i) (if (<=.f64 (*.f64 a b) -7291978391158755/1361129467683753853853498429727072845824) (+.f64 (*.f64 y x) (*.f64 t z)) (if (<=.f64 (*.f64 a b) -8584397449035025/11031304526203974597457456414861827591216226218170224705794538792432397774848431640257320003887617175667569787102671861633294128382337464639166223001902133228245297232354359845986844033174623155170927185464197384241152) (*.f64 c i) (if (<=.f64 (*.f64 a b) 6787724624930759/230344386280611654799899571593522271174128492457058131614758685317726084130380178960334883128519211886075950624436269830308263222041308144077235977260296389382897664) (+.f64 (*.f64 y x) (*.f64 t z)) (if (<=.f64 (*.f64 a b) 2575321049868511/68351585149469122636640694597425667667286544715412888638305331450311031224980497600734786781970432) (*.f64 c i) (if (<=.f64 (*.f64 a b) 6026853687033497/162259276829213363391578010288128) (+.f64 (*.f64 y x) (*.f64 t z)) (+.f64 (*.f64 a b) (*.f64 x y)))))))))
(if (<=.f64 (*.f64 a b) -660299508887246652429464060797736154408131795993292531795277279391773394376928194811479478763520) (+.f64 (*.f64 a b) (*.f64 x y)) (if (<=.f64 (*.f64 a b) -5304175513920685/1237940039285380274899124224) (*.f64 c i) (if (<=.f64 (*.f64 a b) -7291978391158755/1361129467683753853853498429727072845824) (+.f64 (*.f64 x y) (*.f64 z t)) (if (<=.f64 (*.f64 a b) -8584397449035025/11031304526203974597457456414861827591216226218170224705794538792432397774848431640257320003887617175667569787102671861633294128382337464639166223001902133228245297232354359845986844033174623155170927185464197384241152) (*.f64 c i) (if (<=.f64 (*.f64 a b) 6787724624930759/230344386280611654799899571593522271174128492457058131614758685317726084130380178960334883128519211886075950624436269830308263222041308144077235977260296389382897664) (+.f64 (*.f64 x y) (*.f64 z t)) (if (<=.f64 (*.f64 a b) 2575321049868511/68351585149469122636640694597425667667286544715412888638305331450311031224980497600734786781970432) (*.f64 c i) (if (<=.f64 (*.f64 a b) 6026853687033497/162259276829213363391578010288128) (+.f64 (*.f64 x y) (*.f64 z t)) (+.f64 (*.f64 a b) (*.f64 x y)))))))))
(if (<=.f64 (*.f64 c i) -35999999999999998735107051514203216762497681614681669632) (*.f64 c i) (if (<=.f64 (*.f64 c i) -175494814723753/136703170298938245273281389194851335334573089430825777276610662900622062449960995201469573563940864) (+.f64 (*.f64 a b) (*.f64 x y)) (if (<=.f64 (*.f64 c i) -1788339540990432000/247330401473104534060502521019647190035131349101211839914063056092897225106531867170316401061243044989597671426016139339351365034306751209967546155101893167916606772148699136) (*.f64 t z) (if (<=.f64 (*.f64 c i) 770332666550179790687549429404533633848880070799980628897955840) (+.f64 (*.f64 a b) (*.f64 x y)) (*.f64 c i)))))
(if (<=.f64 (*.f64 c i) -35999999999999998735107051514203216762497681614681669632) (*.f64 c i) (if (<=.f64 (*.f64 c i) -175494814723753/136703170298938245273281389194851335334573089430825777276610662900622062449960995201469573563940864) (+.f64 (*.f64 a b) (*.f64 x y)) (if (<=.f64 (*.f64 c i) -6985701331993875/966134380754314586173837972732996836074731832426608749664308812862879785572390106134048441645480644490615904007875544294341269665260746913935727168366770187174245203705856) (*.f64 z t) (if (<=.f64 (*.f64 c i) 770332666550179790687549429404533633848880070799980628897955840) (+.f64 (*.f64 a b) (*.f64 x y)) (*.f64 c i)))))
(if (<=.f64 z -174999999999999984296643953265823805501562512914298044967121931927174465666231202628510192083799102918013249979761369250751578112) (*.f64 t z) (if (<=.f64 z -21442213362759935491791607234482442565745759948949355400766947328) (*.f64 c i) (if (<=.f64 z -984971311442353408/26959946667150639794667015087019630673637144422540572481103610249216) (*.f64 a b) (if (<=.f64 z -1109582210772729/219673525124179510879420825570604582952621929604585773100622830693937381868724993667921908501166545759273481964527387457187903615990932602002368905315681828864) (*.f64 c i) (if (<=.f64 z -1549627712498186496/247330401473104534060502521019647190035131349101211839914063056092897225106531867170316401061243044989597671426016139339351365034306751209967546155101893167916606772148699136) (*.f64 a b) (if (<=.f64 z -8705512128385759/213376461852155336770555257303080249508632266314109061132680249976449191610164226288685830427889737303773757138989863694268441652931819682571627393674586561475045042544448465870818505149178048791326880516348371263414103937199246761317244076032) (*.f64 y x) (if (<=.f64 z 1606883232002191/101201126653655309176247673359458653524778324882071059178450679013715169783997673445980191850718562247593538932158405955694904368692896738433506699970369254960758712138283180682233453871046608170619883839236372534281003741712346349309051677824579778170405028256179384776166707307615251266093163754323003131653853870546747392) (*.f64 c i) (if (<=.f64 z 24269028545766980/2269007733883335972287082669296112915239349672942191252221331572442536403137824056312817862695551072066953619064625508194663368599769448406663254670871573830845597595897613333042429214224697474472410882236254024057110212260250671521235807709272244389361641091086035023229622419456) (*.f64 a b) (if (<=.f64 z 111451278687289/23134322349737717735007099635340311456574291245888123082206428617627187858318938111228919160792924135185595314161942499967986047925275778642956722900885062503881081581426410459731001937860227299113020288850612472756100399104) (*.f64 y x) (if (<=.f64 z 1843741494782769/99895953610111751404211111353381321783955140565279076827493022708011895642232499843849795298031743077114461795885011932654335221737225129801285632) (*.f64 a b) (*.f64 t z)))))))))))
(if (<=.f64 z -174999999999999984296643953265823805501562512914298044967121931927174465666231202628510192083799102918013249979761369250751578112) (*.f64 z t) (if (<=.f64 z -21442213362759935491791607234482442565745759948949355400766947328) (*.f64 c i) (if (<=.f64 z -3847544185321693/105312291668557186697918027683670432318895095400549111254310977536) (*.f64 a b) (if (<=.f64 z -1109582210772729/219673525124179510879420825570604582952621929604585773100622830693937381868724993667921908501166545759273481964527387457187903615990932602002368905315681828864) (*.f64 c i) (if (<=.f64 z -6053233251946041/966134380754314586173837972732996836074731832426608749664308812862879785572390106134048441645480644490615904007875544294341269665260746913935727168366770187174245203705856) (*.f64 a b) (if (<=.f64 z -8705512128385759/213376461852155336770555257303080249508632266314109061132680249976449191610164226288685830427889737303773757138989863694268441652931819682571627393674586561475045042544448465870818505149178048791326880516348371263414103937199246761317244076032) (*.f64 x y) (if (<=.f64 z 1606883232002191/101201126653655309176247673359458653524778324882071059178450679013715169783997673445980191850718562247593538932158405955694904368692896738433506699970369254960758712138283180682233453871046608170619883839236372534281003741712346349309051677824579778170405028256179384776166707307615251266093163754323003131653853870546747392) (*.f64 c i) (if (<=.f64 z 6067257136441745/567251933470833993071770667324028228809837418235547813055332893110634100784456014078204465673887768016738404766156377048665842149942362101665813667717893457711399398974403333260607303556174368618102720559063506014277553065062667880308951927318061097340410272771508755807405604864) (*.f64 a b) (if (<=.f64 z 111451278687289/23134322349737717735007099635340311456574291245888123082206428617627187858318938111228919160792924135185595314161942499967986047925275778642956722900885062503881081581426410459731001937860227299113020288850612472756100399104) (*.f64 x y) (if (<=.f64 z 1843741494782769/99895953610111751404211111353381321783955140565279076827493022708011895642232499843849795298031743077114461795885011932654335221737225129801285632) (*.f64 a b) (*.f64 z t)))))))))))
(if (<=.f64 z -174999999999999984296643953265823805501562512914298044967121931927174465666231202628510192083799102918013249979761369250751578112) (*.f64 t z) (if (<=.f64 z -11419528283092170/4294967296) (*.f64 c i) (if (<=.f64 z -152780411637157920/79228162514264337593543950336) (*.f64 t z) (if (<=.f64 z -1109582210772729/219673525124179510879420825570604582952621929604585773100622830693937381868724993667921908501166545759273481964527387457187903615990932602002368905315681828864) (*.f64 c i) (if (<=.f64 z -8705512128385759/213376461852155336770555257303080249508632266314109061132680249976449191610164226288685830427889737303773757138989863694268441652931819682571627393674586561475045042544448465870818505149178048791326880516348371263414103937199246761317244076032) (*.f64 y x) (if (<=.f64 z 14667473375774464000/3121748550315992231381597229793166305748598142664971150859156959625371738819765620120306103063491971159826931121406622895447975679288285306290176) (*.f64 c i) (*.f64 t z)))))))
(if (<=.f64 z -174999999999999984296643953265823805501562512914298044967121931927174465666231202628510192083799102918013249979761369250751578112) (*.f64 z t) (if (<=.f64 z -5709764141546085/2147483648) (*.f64 c i) (if (<=.f64 z -4774387863661185/2475880078570760549798248448) (*.f64 z t) (if (<=.f64 z -1109582210772729/219673525124179510879420825570604582952621929604585773100622830693937381868724993667921908501166545759273481964527387457187903615990932602002368905315681828864) (*.f64 c i) (if (<=.f64 z -8705512128385759/213376461852155336770555257303080249508632266314109061132680249976449191610164226288685830427889737303773757138989863694268441652931819682571627393674586561475045042544448465870818505149178048791326880516348371263414103937199246761317244076032) (*.f64 x y) (if (<=.f64 z 7161852234264875/1524291284333980581729295522359944485228807686848130444755447734192076044345588681699368214386470689042884243711624327585667956874652483059712) (*.f64 c i) (*.f64 z t)))))))
(if (<=.f64 z -174999999999999984296643953265823805501562512914298044967121931927174465666231202628510192083799102918013249979761369250751578112) (*.f64 t z) (if (<=.f64 z -11419528283092170/4294967296) (*.f64 c i) (if (<=.f64 z -152780411637157920/79228162514264337593543950336) (*.f64 t z) (if (<=.f64 z 14667473375774464000/3121748550315992231381597229793166305748598142664971150859156959625371738819765620120306103063491971159826931121406622895447975679288285306290176) (*.f64 c i) (*.f64 t z)))))
(if (<=.f64 z -174999999999999984296643953265823805501562512914298044967121931927174465666231202628510192083799102918013249979761369250751578112) (*.f64 z t) (if (<=.f64 z -5709764141546085/2147483648) (*.f64 c i) (if (<=.f64 z -4774387863661185/2475880078570760549798248448) (*.f64 z t) (if (<=.f64 z 7161852234264875/1524291284333980581729295522359944485228807686848130444755447734192076044345588681699368214386470689042884243711624327585667956874652483059712) (*.f64 c i) (*.f64 z t)))))
(*.f64 t z)
(*.f64 z t)
Compiler

Compiled 672 to 308 computations (54.2% saved)

soundness36.0ms (0.3%)

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

Useful iterations: 1 (0.0ms)

IterNodesCost
01620
12816
26316
312416
415016
515216
Stop Event
saturated
Compiler

Compiled 153 to 97 computations (36.6% saved)

end252.0ms (2%)

Remove

(sort c i)

(sort a b)

(sort z t)

(sort x y)

Compiler

Compiled 736 to 264 computations (64.1% saved)

Profiling

Loading profile data...