Details

Time bar (total: 11.7s)

analyze769.0ms (6.6%)

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.3s (19.5%)

Results
1.3s8256×body256valid
928.0ms5770×body256invalid

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

simplify9.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 3 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))
0.0b
(+.f64 (*.f64 x y) (*.f64 z t))
Compiler

Compiled 61 to 15 computations (75.4% saved)

series30.0ms (0.3%)

Counts
3 → 216
Calls

54 calls:

TimeVariablePointExpression
7.0ms
a
@0
(+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a b)) (*.f64 c i))
1.0ms
a
@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
@0
(+.f64 (*.f64 x y) (*.f64 z t))
1.0ms
z
@0
(+.f64 (*.f64 x y) (*.f64 z t))

rewrite94.0ms (0.8%)

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
01642
134836
2505836
Stop Event
node limit
Counts
3 → 157
Calls
Call 1
Inputs
(+.f64 (*.f64 x y) (*.f64 z t))
(+.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 x y (*.f64 z t)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (*.f64 x y) 2) (-.f64 (*.f64 x y) (*.f64 z t))) (/.f64 (pow.f64 (*.f64 z t) 2) (-.f64 (*.f64 x y) (*.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 x y (*.f64 z t)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 x y (*.f64 z t)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 x y (*.f64 z t))) (pow.f64 (cbrt.f64 (fma.f64 x y (*.f64 z t))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 x y (*.f64 z t))) 2) (cbrt.f64 (fma.f64 x y (*.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 x y (*.f64 z t))) (sqrt.f64 (fma.f64 x y (*.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (*.f64 x y) 3) (pow.f64 (*.f64 z t) 3)) (/.f64 1 (+.f64 (pow.f64 (*.f64 x y) 2) (*.f64 (*.f64 z t) (-.f64 (*.f64 z t) (*.f64 x y))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (*.f64 x y) 2) (pow.f64 (*.f64 z t) 2)) (/.f64 1 (-.f64 (*.f64 x y) (*.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (pow.f64 (*.f64 x y) 2) (*.f64 (*.f64 z t) (-.f64 (*.f64 z t) (*.f64 x y)))) (+.f64 (pow.f64 (*.f64 x y) 3) (pow.f64 (*.f64 z t) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (-.f64 (pow.f64 (*.f64 x y) 2) (pow.f64 (*.f64 z t) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 x y) 3) (pow.f64 (*.f64 z t) 3)) (+.f64 (pow.f64 (*.f64 x y) 2) (*.f64 (*.f64 z t) (-.f64 (*.f64 z t) (*.f64 x y)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 x y) 3) (pow.f64 (*.f64 z t) 3)) (+.f64 (pow.f64 (*.f64 z t) 2) (-.f64 (pow.f64 (*.f64 x y) 2) (*.f64 (*.f64 x y) (*.f64 z t)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 x y) 2) (pow.f64 (*.f64 z t) 2)) (-.f64 (*.f64 x y) (*.f64 z t)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 x y) 3) (pow.f64 (*.f64 z t) 3))) (neg.f64 (+.f64 (pow.f64 (*.f64 x y) 2) (*.f64 (*.f64 z t) (-.f64 (*.f64 z t) (*.f64 x y))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 x y) 2) (pow.f64 (*.f64 z t) 2))) (neg.f64 (-.f64 (*.f64 x y) (*.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 z t) 2) (pow.f64 (*.f64 x y) 2)) (-.f64 (*.f64 z t) (*.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 x y (*.f64 z t)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 x y (*.f64 z t))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 x y (*.f64 z t))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 x y (*.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.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 x y))) (pow.f64 (exp.f64 t) z)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 x) y) (+.f64 1 (expm1.f64 (*.f64 z t)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x y))) (+.f64 1 (expm1.f64 (*.f64 z t)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 z t))) (pow.f64 (exp.f64 x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 t) z) (+.f64 1 (expm1.f64 (*.f64 x y)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 z t))) (+.f64 1 (expm1.f64 (*.f64 x y)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 x y (*.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 x y (*.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 x y (*.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 x y (*.f64 z t))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x y (*.f64 z t))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y x (*.f64 z t))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 z t (*.f64 x y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 t z (*.f64 x y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 x y) (*.f64 z t))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 z t) (*.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 x y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 x y)) 2) (cbrt.f64 (*.f64 x y)) (*.f64 z t))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 z t)) (sqrt.f64 (*.f64 z t)) (*.f64 x y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 x y)) (sqrt.f64 (*.f64 x y)) (*.f64 z t))))))
((#(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)))))))

simplify58.0ms (0.5%)

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
0222392
1532392
21042392
31382392
41422392
Stop Event
saturated
Counts
373 → 178
Calls
Call 1
Inputs
(*.f64 t z)
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(*.f64 y x)
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(*.f64 y x)
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(*.f64 t z)
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(*.f64 y x)
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(*.f64 y x)
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(*.f64 y x)
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(*.f64 t z)
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(*.f64 t z)
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(*.f64 y x)
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(*.f64 t z)
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(*.f64 t z)
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(+.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 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 t z)
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 y x (*.f64 t z))
(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 y x) (*.f64 t z))
(fma.f64 y x (*.f64 t z))
(fma.f64 t z (*.f64 y x))
(*.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 y x) (*.f64 t z))
(fma.f64 y x (*.f64 t z))
(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 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 y x) (*.f64 t z))
(fma.f64 y x (*.f64 t z))
(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 t z)
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 y x (*.f64 t z))
(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 y x) (*.f64 t z))
(fma.f64 y x (*.f64 t z))
(fma.f64 t z (*.f64 y x))
(*.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 y x) (*.f64 t z))
(fma.f64 y x (*.f64 t z))
(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 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 y x) (*.f64 t z))
(fma.f64 y x (*.f64 t z))
(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 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 y x) (*.f64 t z))
(fma.f64 y x (*.f64 t z))
(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 t z)
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 y x (*.f64 t z))
(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 y x) (*.f64 t z))
(fma.f64 y x (*.f64 t z))
(fma.f64 t z (*.f64 y x))
(*.f64 t z)
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 y x (*.f64 t z))
(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 y x) (*.f64 t z))
(fma.f64 y x (*.f64 t z))
(fma.f64 t z (*.f64 y x))
(*.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 y x) (*.f64 t z))
(fma.f64 y x (*.f64 t z))
(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 t z)
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 y x (*.f64 t z))
(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 y x) (*.f64 t z))
(fma.f64 y x (*.f64 t z))
(fma.f64 t z (*.f64 y x))
(*.f64 t z)
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 y x (*.f64 t z))
(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 y x) (*.f64 t z))
(fma.f64 y x (*.f64 t z))
(fma.f64 t z (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 a b (*.f64 t z))
(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 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 a b (*.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)))
(fma.f64 t z (fma.f64 a b (*.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)))
(fma.f64 t z (fma.f64 a b (*.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)))
(fma.f64 t z (fma.f64 a b (*.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)))
(fma.f64 t z (fma.f64 a b (*.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)))
(fma.f64 t z (fma.f64 a b (*.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)))
(fma.f64 t z (fma.f64 a b (*.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)))
(fma.f64 t z (fma.f64 a b (*.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)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 a b (*.f64 t z))
(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 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 a b (*.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)))
(fma.f64 t z (fma.f64 a b (*.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)))
(fma.f64 t z (fma.f64 a b (*.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)))
(fma.f64 t z (fma.f64 a b (*.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)))
(fma.f64 t z (fma.f64 a b (*.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)))
(fma.f64 t z (fma.f64 a b (*.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)))
(fma.f64 t z (fma.f64 a b (*.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)))
(fma.f64 t z (fma.f64 a b (*.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)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (*.f64 y x))
(fma.f64 a b (*.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)))
(fma.f64 t z (fma.f64 a b (*.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)))
(fma.f64 t z (fma.f64 a b (*.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)))
(fma.f64 t z (fma.f64 a b (*.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)))
(fma.f64 t z (fma.f64 a b (*.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)))
(fma.f64 t z (fma.f64 a b (*.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)))
(fma.f64 t z (fma.f64 a b (*.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)))
(fma.f64 t z (fma.f64 a b (*.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)))
(fma.f64 t z (fma.f64 a b (*.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)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (*.f64 y x))
(fma.f64 a b (*.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)))
(fma.f64 t z (fma.f64 a b (*.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)))
(fma.f64 t z (fma.f64 a b (*.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)))
(fma.f64 t z (fma.f64 a b (*.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)))
(fma.f64 t z (fma.f64 a b (*.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)))
(fma.f64 t z (fma.f64 a b (*.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)))
(fma.f64 t z (fma.f64 a b (*.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)))
(fma.f64 t z (fma.f64 a b (*.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)))
(fma.f64 t z (fma.f64 a b (*.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)))
(fma.f64 t z (fma.f64 a b (*.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)))
(fma.f64 t z (fma.f64 a b (*.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)))
(fma.f64 t z (fma.f64 a b (*.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)))
(fma.f64 t z (fma.f64 a b (*.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)))
(fma.f64 t z (fma.f64 a b (*.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)))
(fma.f64 t z (fma.f64 a b (*.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)))
(fma.f64 t z (fma.f64 a b (*.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)))
(fma.f64 t z (fma.f64 a b (*.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)))
(fma.f64 t z (fma.f64 a b (*.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)))
(fma.f64 t z (fma.f64 a b (*.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)))
(fma.f64 t z (fma.f64 a b (*.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)))
(fma.f64 t z (fma.f64 a b (*.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)))
(fma.f64 t z (fma.f64 a b (*.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)))
(fma.f64 t z (fma.f64 a b (*.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)))
(fma.f64 t z (fma.f64 a b (*.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)))
(fma.f64 t z (fma.f64 a b (*.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)))
(fma.f64 t z (fma.f64 a b (*.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)))
(fma.f64 t z (fma.f64 a b (*.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)))
(fma.f64 t z (fma.f64 a b (*.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 c i (fma.f64 t z (*.f64 a b)))
(fma.f64 t z (fma.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 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))))
(fma.f64 t z (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))))
(fma.f64 t z (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))))
(fma.f64 t z (fma.f64 a b (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))))
(fma.f64 t z (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))))
(fma.f64 t z (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))))
(fma.f64 t z (fma.f64 a b (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))))
(fma.f64 t z (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))))
(fma.f64 t z (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))))
(fma.f64 t z (fma.f64 a b (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 c i (fma.f64 t z (*.f64 a b)))
(fma.f64 t z (fma.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 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))))
(fma.f64 t z (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))))
(fma.f64 t z (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))))
(fma.f64 t z (fma.f64 a b (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))))
(fma.f64 t z (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))))
(fma.f64 t z (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))))
(fma.f64 t z (fma.f64 a b (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))))
(fma.f64 t z (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))))
(fma.f64 t z (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))))
(fma.f64 t z (fma.f64 a b (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 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))))
(fma.f64 t z (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))))
(fma.f64 t z (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))))
(fma.f64 t z (fma.f64 a b (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))))
(fma.f64 t z (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))))
(fma.f64 t z (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))))
(fma.f64 t z (fma.f64 a b (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))))
(fma.f64 t z (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))))
(fma.f64 t z (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))))
(fma.f64 t z (fma.f64 a b (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 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))))
(fma.f64 t z (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))))
(fma.f64 t z (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))))
(fma.f64 t z (fma.f64 a b (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))))
(fma.f64 t z (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))))
(fma.f64 t z (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))))
(fma.f64 t z (fma.f64 a b (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))))
(fma.f64 t z (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))))
(fma.f64 t z (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))))
(fma.f64 t z (fma.f64 a b (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))))
(fma.f64 t z (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))))
(fma.f64 t z (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))))
(fma.f64 t z (fma.f64 a b (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))))
(fma.f64 t z (fma.f64 a b (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))))
(fma.f64 t z (fma.f64 a b (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))))
(fma.f64 t z (fma.f64 a b (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))))
(fma.f64 t z (fma.f64 a b (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))))
(fma.f64 t z (fma.f64 a b (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))))
(fma.f64 t z (fma.f64 a b (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))))
(fma.f64 t z (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))))
(fma.f64 t z (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))))
(fma.f64 t z (fma.f64 a b (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))))
(fma.f64 t z (fma.f64 a b (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))))
(fma.f64 t z (fma.f64 a b (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))))
(fma.f64 t z (fma.f64 a b (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))))
(fma.f64 t z (fma.f64 a b (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))))
(fma.f64 t z (fma.f64 a b (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))))
(fma.f64 t z (fma.f64 a b (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)))
(fma.f64 t z (fma.f64 a b (*.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))))
(fma.f64 t z (fma.f64 a b (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))))
(fma.f64 t z (fma.f64 a b (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))))
(fma.f64 t z (fma.f64 a b (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))))
(fma.f64 t z (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))))
(fma.f64 t z (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))))
(fma.f64 t z (fma.f64 a b (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))))
(fma.f64 t z (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))))
(fma.f64 t z (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))))
(fma.f64 t z (fma.f64 a b (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)))
(fma.f64 t z (fma.f64 a b (*.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))))
(fma.f64 t z (fma.f64 a b (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))))
(fma.f64 t z (fma.f64 a b (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))))
(fma.f64 t z (fma.f64 a b (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))))
(fma.f64 t z (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))))
(fma.f64 t z (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))))
(fma.f64 t z (fma.f64 a b (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))))
(fma.f64 t z (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))))
(fma.f64 t z (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))))
(fma.f64 t z (fma.f64 a b (fma.f64 y x (*.f64 c i))))

localize14.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(fma.f64 c i (*.f64 a b))
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)

series22.0ms (0.2%)

Counts
3 → 216
Calls

54 calls:

TimeVariablePointExpression
2.0ms
y
@-inf
(fma.f64 x y (fma.f64 z t (fma.f64 c i (*.f64 a b))))
2.0ms
c
@-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
z
@0
(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))))

rewrite73.0ms (0.6%)

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
01336
125536
2303836
Stop Event
node limit
Counts
3 → 92
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)))
(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))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 a b) (*.f64 c i))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 c i) (*.f64 a b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (fma.f64 c i (*.f64 a b)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 c i) 1) (*.f64 a b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (fma.f64 c i (*.f64 a b)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (fma.f64 c i (*.f64 a b))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (fma.f64 c i (*.f64 a b))))) (log.f64 (sqrt.f64 (exp.f64 (fma.f64 c i (*.f64 a b))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 c i (*.f64 a b)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 c i (*.f64 a b)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 c i (*.f64 a b)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 c i (*.f64 a b))) (cbrt.f64 (pow.f64 (fma.f64 c i (*.f64 a b)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (fma.f64 c i (*.f64 a b)) 2)) (cbrt.f64 (fma.f64 c i (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 c i (*.f64 a b))) (sqrt.f64 (fma.f64 c i (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 c i) 3) (pow.f64 (*.f64 a b) 3)) (+.f64 (pow.f64 (*.f64 c i) 2) (-.f64 (pow.f64 (*.f64 a b) 2) (*.f64 (*.f64 c i) (*.f64 a b)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 c i) 2) (pow.f64 (*.f64 a b) 2)) (-.f64 (*.f64 c i) (*.f64 a b)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 c i (*.f64 a b)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 c i (*.f64 a b)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 c i (*.f64 a b)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 c i (*.f64 a b))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 c i (*.f64 a b))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 c i (*.f64 a b)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 c i (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 c i (*.f64 a b)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 a) b) (exp.f64 (*.f64 c i))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 a b))) (exp.f64 (*.f64 c i))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 c i)) (+.f64 1 (expm1.f64 (*.f64 a b)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 c i (*.f64 a b)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 c i (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 c i (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 c i (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 c i (*.f64 a b))) 1))))))

simplify73.0ms (0.6%)

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
0262392
1622392
21032392
31232392
41272392
Stop Event
saturated
Counts
308 → 113
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)))
(*.f64 a b)
(+.f64 (*.f64 c i) (*.f64 a b))
(+.f64 (*.f64 c i) (*.f64 a b))
(+.f64 (*.f64 c i) (*.f64 a b))
(*.f64 c i)
(+.f64 (*.f64 a b) (*.f64 c i))
(+.f64 (*.f64 a b) (*.f64 c i))
(+.f64 (*.f64 a b) (*.f64 c i))
(*.f64 c i)
(+.f64 (*.f64 a b) (*.f64 c i))
(+.f64 (*.f64 a b) (*.f64 c i))
(+.f64 (*.f64 a b) (*.f64 c i))
(*.f64 a b)
(+.f64 (*.f64 c i) (*.f64 a b))
(+.f64 (*.f64 c i) (*.f64 a b))
(+.f64 (*.f64 c i) (*.f64 a b))
(*.f64 c i)
(+.f64 (*.f64 a b) (*.f64 c i))
(+.f64 (*.f64 a b) (*.f64 c i))
(+.f64 (*.f64 a b) (*.f64 c i))
(*.f64 c i)
(+.f64 (*.f64 a b) (*.f64 c i))
(+.f64 (*.f64 a b) (*.f64 c i))
(+.f64 (*.f64 a b) (*.f64 c i))
(*.f64 c i)
(+.f64 (*.f64 a b) (*.f64 c i))
(+.f64 (*.f64 a b) (*.f64 c i))
(+.f64 (*.f64 a b) (*.f64 c i))
(*.f64 a b)
(+.f64 (*.f64 c i) (*.f64 a b))
(+.f64 (*.f64 c i) (*.f64 a b))
(+.f64 (*.f64 c i) (*.f64 a b))
(*.f64 a b)
(+.f64 (*.f64 c i) (*.f64 a b))
(+.f64 (*.f64 c i) (*.f64 a b))
(+.f64 (*.f64 c i) (*.f64 a b))
(*.f64 c i)
(+.f64 (*.f64 a b) (*.f64 c i))
(+.f64 (*.f64 a b) (*.f64 c i))
(+.f64 (*.f64 a b) (*.f64 c i))
(*.f64 a b)
(+.f64 (*.f64 c i) (*.f64 a b))
(+.f64 (*.f64 c i) (*.f64 a b))
(+.f64 (*.f64 c i) (*.f64 a b))
(*.f64 a b)
(+.f64 (*.f64 c i) (*.f64 a b))
(+.f64 (*.f64 c i) (*.f64 a b))
(+.f64 (*.f64 c i) (*.f64 a b))
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 y x (fma.f64 c i (*.f64 a b)))
(+.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 y x (fma.f64 c i (*.f64 a b)))
(+.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)))
(+.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)))
(+.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)))
(*.f64 a b)
(+.f64 (*.f64 c i) (*.f64 a b))
(fma.f64 c i (*.f64 a b))
(+.f64 (*.f64 c i) (*.f64 a b))
(fma.f64 c i (*.f64 a b))
(+.f64 (*.f64 c i) (*.f64 a b))
(fma.f64 c i (*.f64 a b))
(*.f64 c i)
(+.f64 (*.f64 a b) (*.f64 c i))
(fma.f64 c i (*.f64 a b))
(+.f64 (*.f64 a b) (*.f64 c i))
(fma.f64 c i (*.f64 a b))
(+.f64 (*.f64 a b) (*.f64 c i))
(fma.f64 c i (*.f64 a b))
(*.f64 c i)
(+.f64 (*.f64 a b) (*.f64 c i))
(fma.f64 c i (*.f64 a b))
(+.f64 (*.f64 a b) (*.f64 c i))
(fma.f64 c i (*.f64 a b))
(+.f64 (*.f64 a b) (*.f64 c i))
(fma.f64 c i (*.f64 a b))
(*.f64 a b)
(+.f64 (*.f64 c i) (*.f64 a b))
(fma.f64 c i (*.f64 a b))
(+.f64 (*.f64 c i) (*.f64 a b))
(fma.f64 c i (*.f64 a b))
(+.f64 (*.f64 c i) (*.f64 a b))
(fma.f64 c i (*.f64 a b))
(*.f64 c i)
(+.f64 (*.f64 a b) (*.f64 c i))
(fma.f64 c i (*.f64 a b))
(+.f64 (*.f64 a b) (*.f64 c i))
(fma.f64 c i (*.f64 a b))
(+.f64 (*.f64 a b) (*.f64 c i))
(fma.f64 c i (*.f64 a b))
(*.f64 c i)
(+.f64 (*.f64 a b) (*.f64 c i))
(fma.f64 c i (*.f64 a b))
(+.f64 (*.f64 a b) (*.f64 c i))
(fma.f64 c i (*.f64 a b))
(+.f64 (*.f64 a b) (*.f64 c i))
(fma.f64 c i (*.f64 a b))
(*.f64 c i)
(+.f64 (*.f64 a b) (*.f64 c i))
(fma.f64 c i (*.f64 a b))
(+.f64 (*.f64 a b) (*.f64 c i))
(fma.f64 c i (*.f64 a b))
(+.f64 (*.f64 a b) (*.f64 c i))
(fma.f64 c i (*.f64 a b))
(*.f64 a b)
(+.f64 (*.f64 c i) (*.f64 a b))
(fma.f64 c i (*.f64 a b))
(+.f64 (*.f64 c i) (*.f64 a b))
(fma.f64 c i (*.f64 a b))
(+.f64 (*.f64 c i) (*.f64 a b))
(fma.f64 c i (*.f64 a b))
(*.f64 a b)
(+.f64 (*.f64 c i) (*.f64 a b))
(fma.f64 c i (*.f64 a b))
(+.f64 (*.f64 c i) (*.f64 a b))
(fma.f64 c i (*.f64 a b))
(+.f64 (*.f64 c i) (*.f64 a b))
(fma.f64 c i (*.f64 a b))
(*.f64 c i)
(+.f64 (*.f64 a b) (*.f64 c i))
(fma.f64 c i (*.f64 a b))
(+.f64 (*.f64 a b) (*.f64 c i))
(fma.f64 c i (*.f64 a b))
(+.f64 (*.f64 a b) (*.f64 c i))
(fma.f64 c i (*.f64 a b))
(*.f64 a b)
(+.f64 (*.f64 c i) (*.f64 a b))
(fma.f64 c i (*.f64 a b))
(+.f64 (*.f64 c i) (*.f64 a b))
(fma.f64 c i (*.f64 a b))
(+.f64 (*.f64 c i) (*.f64 a b))
(fma.f64 c i (*.f64 a b))
(*.f64 a b)
(+.f64 (*.f64 c i) (*.f64 a b))
(fma.f64 c i (*.f64 a b))
(+.f64 (*.f64 c i) (*.f64 a b))
(fma.f64 c i (*.f64 a b))
(+.f64 (*.f64 c i) (*.f64 a b))
(fma.f64 c i (*.f64 a b))

eval62.0ms (0.5%)

Compiler

Compiled 5667 to 1284 computations (77.3% saved)

prune82.0ms (0.7%)

Pruning

12 alts after pruning (12 fresh and 0 done)

PrunedKeptTotal
New27912291
Fresh000
Picked101
Done101
Total28112293
Error
0b
Counts
293 → 12
Alt Table
Click to see full alt table
StatusErrorProgram
0.0b
(+.f64 (+.f64 (fma.f64 z t (*.f64 x y)) (*.f64 a b)) (*.f64 c i))
13.9b
(fma.f64 t z (fma.f64 a b (*.f64 c i)))
44.4b
(*.f64 t z)
15.7b
(fma.f64 x y (+.f64 (*.f64 c i) (*.f64 t z)))
49.3b
(*.f64 y x)
15.5b
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
32.3b
(+.f64 (*.f64 a b) (*.f64 c i))
13.9b
(fma.f64 c i (fma.f64 a b (*.f64 t z)))
13.9b
(+.f64 (fma.f64 t z (*.f64 a b)) (*.f64 c i))
47.6b
(*.f64 c i)
47.3b
(*.f64 a b)
15.7b
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))
Compiler

Compiled 378 to 266 computations (29.6% saved)

localize17.0ms (0.1%)

Local error

Found 3 expressions with local error:

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

Compiled 55 to 14 computations (74.5% saved)

series17.0ms (0.1%)

Counts
3 → 216
Calls

54 calls:

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

rewrite93.0ms (0.8%)

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

simplify57.0ms (0.5%)

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
0222392
1532392
21042392
31382392
41422392
Stop Event
saturated
Counts
414 → 219
Calls
Call 1
Inputs
(+.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 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 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 y x)
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(*.f64 t z)
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(*.f64 t z)
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(*.f64 y x)
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(*.f64 t z)
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(*.f64 t z)
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(*.f64 t z)
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(*.f64 y x)
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(*.f64 y x)
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(*.f64 t z)
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(*.f64 y x)
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(*.f64 y x)
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(+.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 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 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 y x))
(fma.f64 a b (*.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)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.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)))
(*.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)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.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)))
(*.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)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.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)))
(+.f64 (*.f64 a b) (*.f64 y x))
(fma.f64 a b (*.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)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.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)))
(*.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)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.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)))
(*.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)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.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)))
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 a b (*.f64 t z))
(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)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.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)))
(*.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)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.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)))
(*.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)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.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)))
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 a b (*.f64 t z))
(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)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.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)))
(*.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)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.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)))
(*.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)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.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)))
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.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)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.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)))
(*.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)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.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)))
(*.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)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.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)))
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.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)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.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)))
(*.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)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.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)))
(*.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)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.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)))
(*.f64 y x)
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 y x (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 y x (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 y x (*.f64 t z))
(*.f64 t z)
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 y x (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 y x (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 y x (*.f64 t z))
(*.f64 t z)
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 y x (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 y x (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 y x (*.f64 t z))
(*.f64 y x)
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 y x (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 y x (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 y x (*.f64 t z))
(*.f64 t z)
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 y x (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 y x (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 y x (*.f64 t z))
(*.f64 t z)
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 y x (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 y x (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 y x (*.f64 t z))
(*.f64 t z)
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 y x (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 y x (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 y x (*.f64 t z))
(*.f64 y x)
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 y x (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 y x (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 y x (*.f64 t z))
(*.f64 y x)
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 y x (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 y x (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 y x (*.f64 t z))
(*.f64 t z)
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 y x (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 y x (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 y x (*.f64 t z))
(*.f64 y x)
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 y x (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 y x (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 y x (*.f64 t z))
(*.f64 y x)
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 y x (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(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 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 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 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 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 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 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 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 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 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 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 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 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 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)))
(fma.f64 t z (fma.f64 c i (*.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 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 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 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 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 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 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)))
(fma.f64 t z (fma.f64 c i (*.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 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 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 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 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 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 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))))

localize7.0ms (0.1%)

Compiler

Compiled 13 to 9 computations (30.8% saved)

localize6.0ms (0%)

Compiler

Compiled 13 to 9 computations (30.8% saved)

localize10.0ms (0.1%)

Local error

Found 1 expressions with local error:

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

Compiled 25 to 11 computations (56% saved)

series4.0ms (0%)

Counts
1 → 30
Calls

12 calls:

TimeVariablePointExpression
0.0ms
a
@0
(+.f64 (*.f64 a b) (*.f64 c i))
0.0ms
a
@inf
(+.f64 (*.f64 a b) (*.f64 c i))
0.0ms
a
@-inf
(+.f64 (*.f64 a b) (*.f64 c i))
0.0ms
c
@inf
(+.f64 (*.f64 a b) (*.f64 c i))
0.0ms
i
@inf
(+.f64 (*.f64 a b) (*.f64 c i))

rewrite58.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 a b) (*.f64 c i))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (fma.f64 a b (*.f64 c i))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (*.f64 a b) 2) (-.f64 (*.f64 a b) (*.f64 c i))) (/.f64 (pow.f64 (*.f64 c i) 2) (-.f64 (*.f64 a b) (*.f64 c i))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 a b (*.f64 c i)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 a b (*.f64 c i)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 a b (*.f64 c i))) (pow.f64 (cbrt.f64 (fma.f64 a b (*.f64 c i))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 a b (*.f64 c i))) 2) (cbrt.f64 (fma.f64 a b (*.f64 c i))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 a b (*.f64 c i))) (sqrt.f64 (fma.f64 a b (*.f64 c i))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (*.f64 a b) 3) (pow.f64 (*.f64 c i) 3)) (/.f64 1 (+.f64 (pow.f64 (*.f64 a b) 2) (*.f64 (*.f64 c i) (-.f64 (*.f64 c i) (*.f64 a b))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (*.f64 a b) 2) (pow.f64 (*.f64 c i) 2)) (/.f64 1 (-.f64 (*.f64 a b) (*.f64 c i))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (pow.f64 (*.f64 a b) 2) (*.f64 (*.f64 c i) (-.f64 (*.f64 c i) (*.f64 a b)))) (+.f64 (pow.f64 (*.f64 a b) 3) (pow.f64 (*.f64 c i) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 (*.f64 a b) (*.f64 c i)) (-.f64 (pow.f64 (*.f64 a b) 2) (pow.f64 (*.f64 c i) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 a b) 3) (pow.f64 (*.f64 c i) 3)) (+.f64 (pow.f64 (*.f64 a b) 2) (*.f64 (*.f64 c i) (-.f64 (*.f64 c i) (*.f64 a b)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 a b) 3) (pow.f64 (*.f64 c i) 3)) (+.f64 (pow.f64 (*.f64 c i) 2) (-.f64 (pow.f64 (*.f64 a b) 2) (*.f64 (*.f64 a b) (*.f64 c i)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 a b) 2) (pow.f64 (*.f64 c i) 2)) (-.f64 (*.f64 a b) (*.f64 c i)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 a b) 3) (pow.f64 (*.f64 c i) 3))) (neg.f64 (+.f64 (pow.f64 (*.f64 a b) 2) (*.f64 (*.f64 c i) (-.f64 (*.f64 c i) (*.f64 a b))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 a b) 2) (pow.f64 (*.f64 c i) 2))) (neg.f64 (-.f64 (*.f64 a b) (*.f64 c i))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 c i) 2) (pow.f64 (*.f64 a b) 2)) (-.f64 (*.f64 c i) (*.f64 a b)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 a b (*.f64 c i)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 a b (*.f64 c i)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 a b (*.f64 c i))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 a b (*.f64 c i))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 a b (*.f64 c i)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 a b (*.f64 c i))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 a b (*.f64 c i)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 a b (*.f64 c i))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 a b (*.f64 c i))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 a b (*.f64 c i))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 a b (*.f64 c i))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 b a (*.f64 c i))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 c i (*.f64 a b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 i c (*.f64 a b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 a b) (*.f64 c i))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 c i) (*.f64 a b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 c i)) 2) (cbrt.f64 (*.f64 c i)) (*.f64 a b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 a b)) 2) (cbrt.f64 (*.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)) (*.f64 a b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 a b)) (sqrt.f64 (*.f64 a b)) (*.f64 c i))))))

simplify9.0ms (0.1%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
08192
112192
215192
Stop Event
saturated
Counts
67 → 40
Calls
Call 1
Inputs
(*.f64 c i)
(*.f64 a b)
(+.f64 (*.f64 c i) (*.f64 a b))
(+.f64 (*.f64 c i) (*.f64 a b))
(+.f64 (*.f64 c i) (*.f64 a b))
(*.f64 a b)
(+.f64 (*.f64 c i) (*.f64 a b))
(+.f64 (*.f64 c i) (*.f64 a b))
(+.f64 (*.f64 c i) (*.f64 a b))
(*.f64 c i)
(*.f64 a b)
(+.f64 (*.f64 c i) (*.f64 a b))
(+.f64 (*.f64 c i) (*.f64 a b))
(+.f64 (*.f64 c i) (*.f64 a b))
(*.f64 a b)
(+.f64 (*.f64 c i) (*.f64 a b))
(+.f64 (*.f64 c i) (*.f64 a b))
(+.f64 (*.f64 c i) (*.f64 a b))
(*.f64 a b)
(+.f64 (*.f64 c i) (*.f64 a b))
(+.f64 (*.f64 c i) (*.f64 a b))
(+.f64 (*.f64 c i) (*.f64 a b))
(*.f64 c i)
(*.f64 c i)
(*.f64 a b)
(+.f64 (*.f64 c i) (*.f64 a b))
(+.f64 (*.f64 c i) (*.f64 a b))
(+.f64 (*.f64 c i) (*.f64 a b))
(*.f64 c i)
(*.f64 c i)
Outputs
(*.f64 c i)
(*.f64 a b)
(+.f64 (*.f64 c i) (*.f64 a b))
(fma.f64 c i (*.f64 a b))
(+.f64 (*.f64 c i) (*.f64 a b))
(fma.f64 c i (*.f64 a b))
(+.f64 (*.f64 c i) (*.f64 a b))
(fma.f64 c i (*.f64 a b))
(*.f64 a b)
(+.f64 (*.f64 c i) (*.f64 a b))
(fma.f64 c i (*.f64 a b))
(+.f64 (*.f64 c i) (*.f64 a b))
(fma.f64 c i (*.f64 a b))
(+.f64 (*.f64 c i) (*.f64 a b))
(fma.f64 c i (*.f64 a b))
(*.f64 c i)
(*.f64 a b)
(+.f64 (*.f64 c i) (*.f64 a b))
(fma.f64 c i (*.f64 a b))
(+.f64 (*.f64 c i) (*.f64 a b))
(fma.f64 c i (*.f64 a b))
(+.f64 (*.f64 c i) (*.f64 a b))
(fma.f64 c i (*.f64 a b))
(*.f64 a b)
(+.f64 (*.f64 c i) (*.f64 a b))
(fma.f64 c i (*.f64 a b))
(+.f64 (*.f64 c i) (*.f64 a b))
(fma.f64 c i (*.f64 a b))
(+.f64 (*.f64 c i) (*.f64 a b))
(fma.f64 c i (*.f64 a b))
(*.f64 a b)
(+.f64 (*.f64 c i) (*.f64 a b))
(fma.f64 c i (*.f64 a b))
(+.f64 (*.f64 c i) (*.f64 a b))
(fma.f64 c i (*.f64 a b))
(+.f64 (*.f64 c i) (*.f64 a b))
(fma.f64 c i (*.f64 a b))
(*.f64 c i)
(*.f64 c i)
(*.f64 a b)
(+.f64 (*.f64 c i) (*.f64 a b))
(fma.f64 c i (*.f64 a b))
(+.f64 (*.f64 c i) (*.f64 a b))
(fma.f64 c i (*.f64 a b))
(+.f64 (*.f64 c i) (*.f64 a b))
(fma.f64 c i (*.f64 a b))
(*.f64 c i)
(*.f64 c i)

localize14.0ms (0.1%)

Local error

Found 2 expressions with local error:

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

Compiled 41 to 13 computations (68.3% saved)

series9.0ms (0.1%)

Counts
2 → 30
Calls

30 calls:

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

rewrite78.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
681×log-prod_binary64
679×fma-def_binary64
358×pow2_binary64
338×fma-neg_binary64
245×pow1/3_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify11.0ms (0.1%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
013144
122144
231144
Stop Event
saturated
Counts
201 → 179
Calls
Call 1
Inputs
(*.f64 t z)
(*.f64 y x)
(*.f64 y x)
(*.f64 t z)
(*.f64 y x)
(*.f64 y x)
(*.f64 y x)
(*.f64 t z)
(*.f64 t z)
(*.f64 y x)
(*.f64 t z)
(*.f64 t z)
(+.f64 (*.f64 y x) (*.f64 t z))
(*.f64 c i)
(*.f64 c i)
(+.f64 (*.f64 y x) (*.f64 t z))
(*.f64 c i)
(*.f64 c i)
(+.f64 (*.f64 c i) (*.f64 t z))
(*.f64 y x)
(*.f64 y x)
(+.f64 (*.f64 c i) (*.f64 t z))
(*.f64 y x)
(*.f64 y x)
(+.f64 (*.f64 c i) (*.f64 y x))
(*.f64 t z)
(*.f64 t z)
(+.f64 (*.f64 c i) (*.f64 y x))
(*.f64 t z)
(*.f64 t z)
Outputs
(*.f64 t z)
(*.f64 y x)
(*.f64 y x)
(*.f64 t z)
(*.f64 y x)
(*.f64 y x)
(*.f64 y x)
(*.f64 t z)
(*.f64 t z)
(*.f64 y x)
(*.f64 t z)
(*.f64 t z)
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 y x (*.f64 t z))
(fma.f64 t z (*.f64 y x))
(*.f64 c i)
(*.f64 c i)
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 y x (*.f64 t z))
(fma.f64 t z (*.f64 y x))
(*.f64 c i)
(*.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 y x)
(*.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 y x)
(*.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 t z)
(*.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 t z)
(*.f64 t z)

eval90.0ms (0.8%)

Compiler

Compiled 7898 to 1775 computations (77.5% saved)

prune135.0ms (1.1%)

Pruning

15 alts after pruning (12 fresh and 3 done)

PrunedKeptTotal
New4308438
Fresh347
Picked101
Done134
Total43515450
Error
0b
Counts
450 → 15
Alt Table
Click to see full alt table
StatusErrorProgram
32.3b
(fma.f64 i c (*.f64 a b))
44.4b
(*.f64 t z)
15.7b
(fma.f64 x y (+.f64 (*.f64 c i) (*.f64 t z)))
49.3b
(*.f64 y x)
30.9b
(fma.f64 t z (*.f64 y x))
13.9b
(fma.f64 c i (fma.f64 a b (*.f64 t z)))
29.7b
(+.f64 (*.f64 t z) (*.f64 c i))
15.5b
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
32.3b
(fma.f64 b a (*.f64 c i))
32.3b
(+.f64 (*.f64 a b) (*.f64 c i))
47.6b
(*.f64 c i)
30.9b
(+.f64 (*.f64 y x) (*.f64 t z))
47.3b
(*.f64 a b)
34.1b
(+.f64 (*.f64 y x) (*.f64 c i))
13.9b
(+.f64 (fma.f64 t z (*.f64 a b)) (*.f64 c i))
Compiler

Compiled 399 to 287 computations (28.1% saved)

localize14.0ms (0.1%)

Local error

Found 2 expressions with local error:

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

Compiled 32 to 11 computations (65.6% saved)

series10.0ms (0.1%)

Counts
2 → 120
Calls

30 calls:

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

rewrite66.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
956×pow1_binary64
869×add-log-exp_binary64
869×log1p-expm1-u_binary64
869×expm1-log1p-u_binary64
847×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify31.0ms (0.3%)

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
0151080
1301080
2421080
3441080
Stop Event
saturated
Counts
163 → 54
Calls
Call 1
Inputs
(*.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))
(*.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 (*.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 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)))
Outputs
(*.f64 t z)
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 a b (*.f64 t z))
(fma.f64 t z (*.f64 a b))
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 a b (*.f64 t z))
(fma.f64 t z (*.f64 a b))
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 a b (*.f64 t z))
(fma.f64 t z (*.f64 a b))
(*.f64 a b)
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 a b (*.f64 t z))
(fma.f64 t z (*.f64 a b))
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 a b (*.f64 t z))
(fma.f64 t z (*.f64 a b))
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 a b (*.f64 t z))
(fma.f64 t z (*.f64 a b))
(*.f64 a b)
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 a b (*.f64 t z))
(fma.f64 t z (*.f64 a b))
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 a b (*.f64 t z))
(fma.f64 t z (*.f64 a b))
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 a b (*.f64 t z))
(fma.f64 t z (*.f64 a b))
(*.f64 t z)
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 a b (*.f64 t z))
(fma.f64 t z (*.f64 a b))
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 a b (*.f64 t z))
(fma.f64 t z (*.f64 a b))
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 a b (*.f64 t z))
(fma.f64 t z (*.f64 a b))
(*.f64 a b)
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 a b (*.f64 t z))
(fma.f64 t z (*.f64 a b))
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 a b (*.f64 t z))
(fma.f64 t z (*.f64 a b))
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 a b (*.f64 t z))
(fma.f64 t z (*.f64 a b))
(*.f64 a b)
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 a b (*.f64 t z))
(fma.f64 t z (*.f64 a b))
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 a b (*.f64 t z))
(fma.f64 t z (*.f64 a b))
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 a b (*.f64 t z))
(fma.f64 t z (*.f64 a b))
(*.f64 a b)
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 a b (*.f64 t z))
(fma.f64 t z (*.f64 a b))
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 a b (*.f64 t z))
(fma.f64 t z (*.f64 a b))
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 a b (*.f64 t z))
(fma.f64 t z (*.f64 a b))
(*.f64 t z)
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 a b (*.f64 t z))
(fma.f64 t z (*.f64 a b))
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 a b (*.f64 t z))
(fma.f64 t z (*.f64 a b))
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 a b (*.f64 t z))
(fma.f64 t z (*.f64 a b))
(*.f64 t z)
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 a b (*.f64 t z))
(fma.f64 t z (*.f64 a b))
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 a b (*.f64 t z))
(fma.f64 t z (*.f64 a b))
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 a b (*.f64 t z))
(fma.f64 t z (*.f64 a b))
(*.f64 a b)
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 a b (*.f64 t z))
(fma.f64 t z (*.f64 a b))
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 a b (*.f64 t z))
(fma.f64 t z (*.f64 a b))
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 a b (*.f64 t z))
(fma.f64 t z (*.f64 a b))
(*.f64 t z)
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 a b (*.f64 t z))
(fma.f64 t z (*.f64 a b))
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 a b (*.f64 t z))
(fma.f64 t z (*.f64 a b))
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 a b (*.f64 t z))
(fma.f64 t z (*.f64 a b))
(*.f64 t z)
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 a b (*.f64 t z))
(fma.f64 t z (*.f64 a b))
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 a b (*.f64 t z))
(fma.f64 t z (*.f64 a b))
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 a b (*.f64 t z))
(fma.f64 t z (*.f64 a b))
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 a b (*.f64 t z))
(fma.f64 t z (*.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)))
(fma.f64 t z (fma.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)))
(fma.f64 t z (fma.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)))
(fma.f64 t z (fma.f64 c i (*.f64 a b)))
(*.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)))
(fma.f64 t z (fma.f64 c i (*.f64 a b)))
(+.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)))
(fma.f64 t z (fma.f64 c i (*.f64 a b)))
(+.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)))
(fma.f64 t z (fma.f64 c i (*.f64 a b)))
(*.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)))
(fma.f64 t z (fma.f64 c i (*.f64 a b)))
(+.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)))
(fma.f64 t z (fma.f64 c i (*.f64 a b)))
(+.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)))
(fma.f64 t z (fma.f64 c i (*.f64 a b)))
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 a b (*.f64 t z))
(fma.f64 t z (*.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)))
(fma.f64 t z (fma.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)))
(fma.f64 t z (fma.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)))
(fma.f64 t z (fma.f64 c i (*.f64 a b)))
(*.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)))
(fma.f64 t z (fma.f64 c i (*.f64 a b)))
(+.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)))
(fma.f64 t z (fma.f64 c i (*.f64 a b)))
(+.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)))
(fma.f64 t z (fma.f64 c i (*.f64 a b)))
(*.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)))
(fma.f64 t z (fma.f64 c i (*.f64 a b)))
(+.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)))
(fma.f64 t z (fma.f64 c i (*.f64 a b)))
(+.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)))
(fma.f64 t z (fma.f64 c i (*.f64 a b)))
(+.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)))
(fma.f64 t z (fma.f64 c i (*.f64 a b)))
(+.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)))
(fma.f64 t z (fma.f64 c i (*.f64 a b)))
(+.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)))
(fma.f64 t z (fma.f64 c i (*.f64 a b)))
(*.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)))
(fma.f64 t z (fma.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)))
(fma.f64 t z (fma.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)))
(fma.f64 t z (fma.f64 c i (*.f64 a b)))
(*.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)))
(fma.f64 t z (fma.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)))
(fma.f64 t z (fma.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)))
(fma.f64 t z (fma.f64 c i (*.f64 a b)))
(+.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)))
(fma.f64 t z (fma.f64 c i (*.f64 a b)))
(+.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)))
(fma.f64 t z (fma.f64 c i (*.f64 a b)))
(+.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)))
(fma.f64 t z (fma.f64 c i (*.f64 a b)))
(*.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)))
(fma.f64 t z (fma.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)))
(fma.f64 t z (fma.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)))
(fma.f64 t z (fma.f64 c i (*.f64 a b)))
(*.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)))
(fma.f64 t z (fma.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)))
(fma.f64 t z (fma.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)))
(fma.f64 t z (fma.f64 c i (*.f64 a b)))
(+.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 a b (fma.f64 c i (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 c i)))
(fma.f64 t z (fma.f64 c i (*.f64 a b)))
(+.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)))
(fma.f64 t z (fma.f64 c i (*.f64 a b)))
(+.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)))
(fma.f64 t z (fma.f64 c i (*.f64 a b)))
(*.f64 t z)
(+.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)))
(fma.f64 t z (fma.f64 c i (*.f64 a b)))
(+.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)))
(fma.f64 t z (fma.f64 c i (*.f64 a b)))
(+.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)))
(fma.f64 t z (fma.f64 c i (*.f64 a b)))
(*.f64 t z)
(+.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)))
(fma.f64 t z (fma.f64 c i (*.f64 a b)))
(+.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)))
(fma.f64 t z (fma.f64 c i (*.f64 a b)))
(+.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)))
(fma.f64 t z (fma.f64 c i (*.f64 a b)))
(+.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 a b (fma.f64 c i (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 c i)))
(fma.f64 t z (fma.f64 c i (*.f64 a b)))
(+.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)))
(fma.f64 t z (fma.f64 c i (*.f64 a b)))
(+.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)))
(fma.f64 t z (fma.f64 c i (*.f64 a b)))
(*.f64 t z)
(+.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)))
(fma.f64 t z (fma.f64 c i (*.f64 a b)))
(+.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)))
(fma.f64 t z (fma.f64 c i (*.f64 a b)))
(+.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)))
(fma.f64 t z (fma.f64 c i (*.f64 a b)))
(*.f64 t z)
(+.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)))
(fma.f64 t z (fma.f64 c i (*.f64 a b)))
(+.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)))
(fma.f64 t z (fma.f64 c i (*.f64 a b)))
(+.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)))
(fma.f64 t z (fma.f64 c i (*.f64 a b)))

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 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
c
@inf
(+.f64 (*.f64 t z) (*.f64 c i))
0.0ms
t
@-inf
(+.f64 (*.f64 t z) (*.f64 c i))
0.0ms
t
@inf
(+.f64 (*.f64 t z) (*.f64 c i))
0.0ms
z
@inf
(+.f64 (*.f64 t z) (*.f64 c i))

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

simplify18.0ms (0.2%)

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

localize9.0ms (0.1%)

Local error

Found 1 expressions with local error:

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

Compiled 21 to 10 computations (52.4% saved)

series4.0ms (0%)

Counts
1 → 48
Calls

12 calls:

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

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 b a (*.f64 c i))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 c i) (*.f64 b a))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 b a) (*.f64 c i))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 b a) 1) (*.f64 c i))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (fma.f64 b a (*.f64 c i))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 b a (*.f64 c i)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 b a (*.f64 c i)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 b a (*.f64 c i))) (pow.f64 (cbrt.f64 (fma.f64 b a (*.f64 c i))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 b a (*.f64 c i))) 2) (cbrt.f64 (fma.f64 b a (*.f64 c i))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 b a (*.f64 c i))) (sqrt.f64 (fma.f64 b a (*.f64 c i))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 b a) 3) (pow.f64 (*.f64 c i) 3)) (+.f64 (*.f64 (*.f64 b a) (*.f64 b a)) (-.f64 (pow.f64 (*.f64 c i) 2) (*.f64 (*.f64 b a) (*.f64 c i)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 b a) (*.f64 b a)) (pow.f64 (*.f64 c i) 2)) (-.f64 (*.f64 b a) (*.f64 c i)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 b a (*.f64 c i)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 b a (*.f64 c i)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 b a (*.f64 c i))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 b a (*.f64 c i))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 b a (*.f64 c i)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 b a (*.f64 c i))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 b a (*.f64 c i)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 b a (*.f64 c i))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 b a (*.f64 c i))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 b a (*.f64 c i))))))))

simplify11.0ms (0.1%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
09336
113336
215336
Stop Event
saturated
Counts
69 → 26
Calls
Call 1
Inputs
(*.f64 c i)
(+.f64 (*.f64 a b) (*.f64 c i))
(+.f64 (*.f64 a b) (*.f64 c i))
(+.f64 (*.f64 a b) (*.f64 c i))
(*.f64 a b)
(+.f64 (*.f64 c i) (*.f64 a b))
(+.f64 (*.f64 c i) (*.f64 a b))
(+.f64 (*.f64 c i) (*.f64 a b))
(*.f64 a b)
(+.f64 (*.f64 c i) (*.f64 a b))
(+.f64 (*.f64 c i) (*.f64 a b))
(+.f64 (*.f64 c i) (*.f64 a b))
(*.f64 c i)
(+.f64 (*.f64 a b) (*.f64 c i))
(+.f64 (*.f64 a b) (*.f64 c i))
(+.f64 (*.f64 a b) (*.f64 c i))
(*.f64 a b)
(+.f64 (*.f64 c i) (*.f64 a b))
(+.f64 (*.f64 c i) (*.f64 a b))
(+.f64 (*.f64 c i) (*.f64 a b))
(*.f64 a b)
(+.f64 (*.f64 c i) (*.f64 a b))
(+.f64 (*.f64 c i) (*.f64 a b))
(+.f64 (*.f64 c i) (*.f64 a b))
(*.f64 a b)
(+.f64 (*.f64 c i) (*.f64 a b))
(+.f64 (*.f64 c i) (*.f64 a b))
(+.f64 (*.f64 c i) (*.f64 a b))
(*.f64 c i)
(+.f64 (*.f64 a b) (*.f64 c i))
(+.f64 (*.f64 a b) (*.f64 c i))
(+.f64 (*.f64 a b) (*.f64 c i))
(*.f64 c i)
(+.f64 (*.f64 a b) (*.f64 c i))
(+.f64 (*.f64 a b) (*.f64 c i))
(+.f64 (*.f64 a b) (*.f64 c i))
(*.f64 a b)
(+.f64 (*.f64 c i) (*.f64 a b))
(+.f64 (*.f64 c i) (*.f64 a b))
(+.f64 (*.f64 c i) (*.f64 a b))
(*.f64 c i)
(+.f64 (*.f64 a b) (*.f64 c i))
(+.f64 (*.f64 a b) (*.f64 c i))
(+.f64 (*.f64 a b) (*.f64 c i))
(*.f64 c i)
(+.f64 (*.f64 a b) (*.f64 c i))
(+.f64 (*.f64 a b) (*.f64 c i))
(+.f64 (*.f64 a b) (*.f64 c i))
Outputs
(*.f64 c i)
(+.f64 (*.f64 a b) (*.f64 c i))
(fma.f64 c i (*.f64 a b))
(+.f64 (*.f64 a b) (*.f64 c i))
(fma.f64 c i (*.f64 a b))
(+.f64 (*.f64 a b) (*.f64 c i))
(fma.f64 c i (*.f64 a b))
(*.f64 a b)
(+.f64 (*.f64 c i) (*.f64 a b))
(fma.f64 c i (*.f64 a b))
(+.f64 (*.f64 c i) (*.f64 a b))
(fma.f64 c i (*.f64 a b))
(+.f64 (*.f64 c i) (*.f64 a b))
(fma.f64 c i (*.f64 a b))
(*.f64 a b)
(+.f64 (*.f64 c i) (*.f64 a b))
(fma.f64 c i (*.f64 a b))
(+.f64 (*.f64 c i) (*.f64 a b))
(fma.f64 c i (*.f64 a b))
(+.f64 (*.f64 c i) (*.f64 a b))
(fma.f64 c i (*.f64 a b))
(*.f64 c i)
(+.f64 (*.f64 a b) (*.f64 c i))
(fma.f64 c i (*.f64 a b))
(+.f64 (*.f64 a b) (*.f64 c i))
(fma.f64 c i (*.f64 a b))
(+.f64 (*.f64 a b) (*.f64 c i))
(fma.f64 c i (*.f64 a b))
(*.f64 a b)
(+.f64 (*.f64 c i) (*.f64 a b))
(fma.f64 c i (*.f64 a b))
(+.f64 (*.f64 c i) (*.f64 a b))
(fma.f64 c i (*.f64 a b))
(+.f64 (*.f64 c i) (*.f64 a b))
(fma.f64 c i (*.f64 a b))
(*.f64 a b)
(+.f64 (*.f64 c i) (*.f64 a b))
(fma.f64 c i (*.f64 a b))
(+.f64 (*.f64 c i) (*.f64 a b))
(fma.f64 c i (*.f64 a b))
(+.f64 (*.f64 c i) (*.f64 a b))
(fma.f64 c i (*.f64 a b))
(*.f64 a b)
(+.f64 (*.f64 c i) (*.f64 a b))
(fma.f64 c i (*.f64 a b))
(+.f64 (*.f64 c i) (*.f64 a b))
(fma.f64 c i (*.f64 a b))
(+.f64 (*.f64 c i) (*.f64 a b))
(fma.f64 c i (*.f64 a b))
(*.f64 c i)
(+.f64 (*.f64 a b) (*.f64 c i))
(fma.f64 c i (*.f64 a b))
(+.f64 (*.f64 a b) (*.f64 c i))
(fma.f64 c i (*.f64 a b))
(+.f64 (*.f64 a b) (*.f64 c i))
(fma.f64 c i (*.f64 a b))
(*.f64 c i)
(+.f64 (*.f64 a b) (*.f64 c i))
(fma.f64 c i (*.f64 a b))
(+.f64 (*.f64 a b) (*.f64 c i))
(fma.f64 c i (*.f64 a b))
(+.f64 (*.f64 a b) (*.f64 c i))
(fma.f64 c i (*.f64 a b))
(*.f64 a b)
(+.f64 (*.f64 c i) (*.f64 a b))
(fma.f64 c i (*.f64 a b))
(+.f64 (*.f64 c i) (*.f64 a b))
(fma.f64 c i (*.f64 a b))
(+.f64 (*.f64 c i) (*.f64 a b))
(fma.f64 c i (*.f64 a b))
(*.f64 c i)
(+.f64 (*.f64 a b) (*.f64 c i))
(fma.f64 c i (*.f64 a b))
(+.f64 (*.f64 a b) (*.f64 c i))
(fma.f64 c i (*.f64 a b))
(+.f64 (*.f64 a b) (*.f64 c i))
(fma.f64 c i (*.f64 a b))
(*.f64 c i)
(+.f64 (*.f64 a b) (*.f64 c i))
(fma.f64 c i (*.f64 a b))
(+.f64 (*.f64 a b) (*.f64 c i))
(fma.f64 c i (*.f64 a b))
(+.f64 (*.f64 a b) (*.f64 c i))
(fma.f64 c i (*.f64 a b))

eval38.0ms (0.3%)

Compiler

Compiled 2438 to 684 computations (71.9% saved)

prune53.0ms (0.5%)

Pruning

15 alts after pruning (8 fresh and 7 done)

PrunedKeptTotal
New1854189
Fresh347
Picked011
Done167
Total18915204
Error
0b
Counts
204 → 15
Alt Table
Click to see full alt table
StatusErrorProgram
32.3b
(fma.f64 i c (*.f64 a b))
44.4b
(*.f64 t z)
32.3b
(+.f64 (*.f64 a b) (*.f64 c i))
49.3b
(*.f64 y x)
47.3b
(*.f64 a b)
30.9b
(fma.f64 y x (*.f64 t z))
30.9b
(fma.f64 z t (*.f64 y x))
29.7b
(+.f64 (*.f64 t z) (*.f64 c i))
15.5b
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
32.3b
(fma.f64 b a (*.f64 c i))
13.9b
(+.f64 (fma.f64 a b (*.f64 t z)) (*.f64 c i))
47.6b
(*.f64 c i)
30.9b
(+.f64 (*.f64 y x) (*.f64 t z))
34.1b
(+.f64 (*.f64 y x) (*.f64 c i))
13.9b
(+.f64 (fma.f64 t z (*.f64 a b)) (*.f64 c i))
Compiler

Compiled 338 to 244 computations (27.8% saved)

localize12.0ms (0.1%)

Local error

Found 2 expressions with local error:

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

Compiled 36 to 12 computations (66.7% saved)

series5.0ms (0%)

Counts
1 → 72
Calls

18 calls:

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

rewrite64.0ms (0.6%)

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 a b (*.f64 t z)) (*.f64 c i))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 a b (fma.f64 t z (*.f64 c i))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (fma.f64 a b (*.f64 t z)) 2) (-.f64 (fma.f64 a b (*.f64 t z)) (*.f64 c i))) (/.f64 (pow.f64 (*.f64 c i) 2) (-.f64 (fma.f64 a b (*.f64 t z)) (*.f64 c i))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 a b (fma.f64 t z (*.f64 c i))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 a b (fma.f64 t z (*.f64 c i))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 a b (fma.f64 t z (*.f64 c i)))) (pow.f64 (cbrt.f64 (fma.f64 a b (fma.f64 t z (*.f64 c i)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 a b (fma.f64 t z (*.f64 c i)))) 2) (cbrt.f64 (fma.f64 a b (fma.f64 t z (*.f64 c i)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 a b (fma.f64 t z (*.f64 c i)))) (sqrt.f64 (fma.f64 a b (fma.f64 t z (*.f64 c i)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (fma.f64 a b (*.f64 t z)) 3) (pow.f64 (*.f64 c i) 3)) (/.f64 1 (fma.f64 (*.f64 c i) (-.f64 (*.f64 c i) (fma.f64 a b (*.f64 t z))) (pow.f64 (fma.f64 a b (*.f64 t z)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (fma.f64 a b (*.f64 t z)) 2) (pow.f64 (*.f64 c i) 2)) (/.f64 1 (-.f64 (fma.f64 a b (*.f64 t z)) (*.f64 c i))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (*.f64 c i) (-.f64 (*.f64 c i) (fma.f64 a b (*.f64 t z))) (pow.f64 (fma.f64 a b (*.f64 t z)) 2)) (+.f64 (pow.f64 (fma.f64 a b (*.f64 t z)) 3) (pow.f64 (*.f64 c i) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 (fma.f64 a b (*.f64 t z)) (*.f64 c i)) (-.f64 (pow.f64 (fma.f64 a b (*.f64 t z)) 2) (pow.f64 (*.f64 c i) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (fma.f64 a b (*.f64 t z)) 3) (pow.f64 (*.f64 c i) 3)) (fma.f64 (*.f64 c i) (-.f64 (*.f64 c i) (fma.f64 a b (*.f64 t z))) (pow.f64 (fma.f64 a b (*.f64 t z)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (fma.f64 a b (*.f64 t z)) 3) (pow.f64 (*.f64 c i) 3)) (+.f64 (pow.f64 (*.f64 c i) 2) (-.f64 (pow.f64 (fma.f64 a b (*.f64 t z)) 2) (*.f64 (fma.f64 a b (*.f64 t z)) (*.f64 c i)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (fma.f64 a b (*.f64 t z)) 2) (pow.f64 (*.f64 c i) 2)) (-.f64 (fma.f64 a b (*.f64 t z)) (*.f64 c i)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 (fma.f64 a b (*.f64 t z)) 3) (pow.f64 (*.f64 c i) 3))) (neg.f64 (fma.f64 (*.f64 c i) (-.f64 (*.f64 c i) (fma.f64 a b (*.f64 t z))) (pow.f64 (fma.f64 a b (*.f64 t z)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (fma.f64 a b (*.f64 t z)) 2) (pow.f64 (*.f64 c i) 2))) (neg.f64 (-.f64 (fma.f64 a b (*.f64 t z)) (*.f64 c i))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 c i) 2) (pow.f64 (fma.f64 a b (*.f64 t z)) 2)) (-.f64 (*.f64 c i) (fma.f64 a b (*.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 a b (fma.f64 t z (*.f64 c i))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 a b (fma.f64 t z (*.f64 c i))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 a b (fma.f64 t z (*.f64 c i))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 a b (fma.f64 t z (*.f64 c i)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 a b (fma.f64 t z (*.f64 c i)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 (*.f64 c i) (-.f64 (*.f64 c i) (fma.f64 a b (*.f64 t z))) (pow.f64 (fma.f64 a b (*.f64 t z)) 2)) (+.f64 (pow.f64 (fma.f64 a b (*.f64 t z)) 3) (pow.f64 (*.f64 c i) 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (-.f64 (fma.f64 a b (*.f64 t z)) (*.f64 c i)) (-.f64 (pow.f64 (fma.f64 a b (*.f64 t z)) 2) (pow.f64 (*.f64 c i) 2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 a b (fma.f64 t z (*.f64 c i))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 a b (fma.f64 t z (*.f64 c i)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 a b (fma.f64 t z (*.f64 c i))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 a b (*.f64 t z)))) (pow.f64 (exp.f64 c) i)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 a b (*.f64 t z))) (+.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 (*.f64 t z)))) (+.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 (*.f64 t z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 c) i) (+.f64 1 (expm1.f64 (fma.f64 a b (*.f64 t z))))))))) (#(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 (*.f64 t z))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 a b (fma.f64 t z (*.f64 c i))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 a b (fma.f64 t z (*.f64 c i)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 a b (fma.f64 t z (*.f64 c i)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 a b (fma.f64 t z (*.f64 c i)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 a b (fma.f64 t z (*.f64 c i)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (fma.f64 a b (fma.f64 t z (*.f64 c i))) 3)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (fma.f64 a b (fma.f64 t z (*.f64 c i))))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (fma.f64 a b (fma.f64 t z (*.f64 c i))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (fma.f64 a b (fma.f64 t z (*.f64 c i)))) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 a b (fma.f64 t z (*.f64 c i)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 b a (fma.f64 t z (*.f64 c i)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 a b (*.f64 t z)) 1 (*.f64 c i))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 c i (fma.f64 a b (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 i c (fma.f64 a b (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 c i) 1 (fma.f64 a b (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 a b (*.f64 t z)) (*.f64 c i))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 c i) (fma.f64 a b (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 a b) (fma.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) (fma.f64 a b (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 a) 2) (*.f64 (cbrt.f64 a) b) (fma.f64 t z (*.f64 c i)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 i i)) (*.f64 (cbrt.f64 i) c) (fma.f64 a b (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 c i)) (pow.f64 (cbrt.f64 (*.f64 c i)) 2) (fma.f64 a b (*.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)) (fma.f64 a b (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 a b (*.f64 t z))) (pow.f64 (cbrt.f64 (fma.f64 a b (*.f64 t z))) 2) (*.f64 c i))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 a b (*.f64 t z))) 2) (cbrt.f64 (fma.f64 a b (*.f64 t z))) (*.f64 c i))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 c) (*.f64 (sqrt.f64 c) i) (fma.f64 a b (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 a) (*.f64 (sqrt.f64 a) b) (fma.f64 t z (*.f64 c i)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 i) (*.f64 (sqrt.f64 i) c) (fma.f64 a b (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 c i)) (sqrt.f64 (*.f64 c i)) (fma.f64 a b (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 a b (*.f64 t z))) (sqrt.f64 (fma.f64 a b (*.f64 t z))) (*.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 t z (*.f64 c i)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 a b)) (sqrt.f64 (*.f64 a b)) (fma.f64 t z (*.f64 c i)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 a (pow.f64 (cbrt.f64 b) 2)) (cbrt.f64 b) (fma.f64 t z (*.f64 c i)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 a (sqrt.f64 b)) (sqrt.f64 b) (fma.f64 t z (*.f64 c i)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 c (cbrt.f64 (*.f64 i i))) (cbrt.f64 i) (fma.f64 a b (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 c (sqrt.f64 i)) (sqrt.f64 i) (fma.f64 a b (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 i (pow.f64 (cbrt.f64 c) 2)) (cbrt.f64 c) (fma.f64 a b (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 i (sqrt.f64 c)) (sqrt.f64 c) (fma.f64 a b (*.f64 t z)))))))

simplify21.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
015744
130744
242744
344744
Stop Event
saturated
Counts
143 → 83
Calls
Call 1
Inputs
(+.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 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)))
Outputs
(+.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)))
(fma.f64 c i (fma.f64 t z (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.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)))
(fma.f64 c i (fma.f64 t z (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.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)))
(fma.f64 c i (fma.f64 t z (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 c i)))
(*.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)))
(fma.f64 t z (fma.f64 a b (*.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 c i (fma.f64 t z (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.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 c i (fma.f64 t z (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 c i)))
(*.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)))
(fma.f64 t z (fma.f64 a b (*.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 c i (fma.f64 t z (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.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 c i (fma.f64 t z (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 c i)))
(+.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)))
(fma.f64 c i (fma.f64 t z (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.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)))
(fma.f64 c i (fma.f64 t z (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.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)))
(fma.f64 c i (fma.f64 t z (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 c i)))
(*.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)))
(fma.f64 t z (fma.f64 a b (*.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 c i (fma.f64 t z (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.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 c i (fma.f64 t z (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 c i)))
(*.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)))
(fma.f64 t z (fma.f64 a b (*.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 c i (fma.f64 t z (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.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 c i (fma.f64 t z (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 c i)))
(+.f64 (*.f64 c i) (*.f64 a b))
(fma.f64 c i (*.f64 a b))
(fma.f64 a b (*.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)))
(fma.f64 c i (fma.f64 t z (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.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)))
(fma.f64 c i (fma.f64 t z (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.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)))
(fma.f64 c i (fma.f64 t z (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.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)))
(fma.f64 c i (fma.f64 t z (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.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)))
(fma.f64 c i (fma.f64 t z (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.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)))
(fma.f64 c i (fma.f64 t z (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.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)))
(fma.f64 c i (fma.f64 t z (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.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)))
(fma.f64 c i (fma.f64 t z (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.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)))
(fma.f64 c i (fma.f64 t z (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 c i)))
(+.f64 (*.f64 c i) (*.f64 a b))
(fma.f64 c i (*.f64 a b))
(fma.f64 a b (*.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)))
(fma.f64 c i (fma.f64 t z (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.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)))
(fma.f64 c i (fma.f64 t z (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.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)))
(fma.f64 c i (fma.f64 t z (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.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)))
(fma.f64 c i (fma.f64 t z (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.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)))
(fma.f64 c i (fma.f64 t z (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.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)))
(fma.f64 c i (fma.f64 t z (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.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)))
(fma.f64 c i (fma.f64 t z (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.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)))
(fma.f64 c i (fma.f64 t z (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.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)))
(fma.f64 c i (fma.f64 t z (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 c i)))
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 a b (*.f64 t z))
(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)))
(fma.f64 t z (fma.f64 a b (*.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 c i (fma.f64 t z (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.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 c i (fma.f64 t z (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 c i)))
(*.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)))
(fma.f64 c i (fma.f64 t z (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.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)))
(fma.f64 c i (fma.f64 t z (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.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)))
(fma.f64 c i (fma.f64 t z (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 c i)))
(*.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)))
(fma.f64 c i (fma.f64 t z (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.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)))
(fma.f64 c i (fma.f64 t z (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.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)))
(fma.f64 c i (fma.f64 t z (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 c i)))
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 a b (*.f64 t z))
(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)))
(fma.f64 t z (fma.f64 a b (*.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 c i (fma.f64 t z (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.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 c i (fma.f64 t z (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 c i)))
(*.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)))
(fma.f64 c i (fma.f64 t z (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.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)))
(fma.f64 c i (fma.f64 t z (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.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)))
(fma.f64 c i (fma.f64 t z (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 c i)))
(*.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)))
(fma.f64 c i (fma.f64 t z (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.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)))
(fma.f64 c i (fma.f64 t z (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.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)))
(fma.f64 c i (fma.f64 t z (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 c i)))

localize5.0ms (0%)

Compiler

Compiled 13 to 9 computations (30.8% saved)

localize13.0ms (0.1%)

Local error

Found 2 expressions with local error:

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

Compiled 41 to 13 computations (68.3% saved)

series6.0ms (0%)

Counts
1 → 18
Calls

18 calls:

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

rewrite68.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
681×log-prod_binary64
679×fma-def_binary64
358×pow2_binary64
338×fma-neg_binary64
245×pow1/3_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify9.0ms (0.1%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
01396
12296
23196
Stop Event
saturated
Counts
121 → 112
Calls
Call 1
Inputs
(+.f64 (*.f64 y x) (*.f64 t z))
(*.f64 a b)
(*.f64 a b)
(+.f64 (*.f64 y x) (*.f64 t z))
(*.f64 a b)
(*.f64 a b)
(+.f64 (*.f64 a b) (*.f64 t z))
(*.f64 y x)
(*.f64 y x)
(+.f64 (*.f64 a b) (*.f64 t z))
(*.f64 y x)
(*.f64 y x)
(+.f64 (*.f64 a b) (*.f64 y x))
(*.f64 t z)
(*.f64 t z)
(+.f64 (*.f64 a b) (*.f64 y x))
(*.f64 t z)
(*.f64 t z)
Outputs
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 y x (*.f64 t z))
(*.f64 a b)
(*.f64 a b)
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 y x (*.f64 t z))
(*.f64 a b)
(*.f64 a b)
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 a b (*.f64 t z))
(fma.f64 t z (*.f64 a b))
(*.f64 y x)
(*.f64 y x)
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 a b (*.f64 t z))
(fma.f64 t z (*.f64 a b))
(*.f64 y x)
(*.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 t z)
(*.f64 t z)
(+.f64 (*.f64 a b) (*.f64 y x))
(fma.f64 a b (*.f64 y x))
(fma.f64 y x (*.f64 a b))
(*.f64 t z)
(*.f64 t z)

localize14.0ms (0.1%)

Local error

Found 1 expressions with local error:

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

Compiled 21 to 10 computations (52.4% saved)

series4.0ms (0%)

Counts
1 → 48
Calls

12 calls:

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

rewrite48.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 t z))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 t z) (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y x) (*.f64 t z))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 y x) 1) (*.f64 t z))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (fma.f64 y x (*.f64 t z))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 y x (*.f64 t z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 y x (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 y x (*.f64 t z))) (pow.f64 (cbrt.f64 (fma.f64 y x (*.f64 t z))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 y x (*.f64 t z))) 2) (cbrt.f64 (fma.f64 y x (*.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 y x (*.f64 t z))) (sqrt.f64 (fma.f64 y x (*.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 (*.f64 t z) 3)) (+.f64 (*.f64 (*.f64 y x) (*.f64 y x)) (-.f64 (pow.f64 (*.f64 t z) 2) (*.f64 (*.f64 y x) (*.f64 t z)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 y x) (*.f64 y x)) (pow.f64 (*.f64 t z) 2)) (-.f64 (*.f64 y x) (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 y x (*.f64 t z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 y x (*.f64 t z)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 y x (*.f64 t z))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 y x (*.f64 t z))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 y x (*.f64 t z)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 y x (*.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 y x (*.f64 t z)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 y x (*.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 y x (*.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 y x (*.f64 t z))))))))

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 t z)
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(*.f64 y x)
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(*.f64 y x)
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(*.f64 t z)
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(*.f64 y x)
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(*.f64 y x)
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(*.f64 y x)
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(*.f64 t z)
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(*.f64 t z)
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(*.f64 y x)
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(*.f64 t z)
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(*.f64 t z)
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
Outputs
(*.f64 t z)
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 y x (*.f64 t z))
(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 y x) (*.f64 t z))
(fma.f64 y x (*.f64 t z))
(fma.f64 t z (*.f64 y x))
(*.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 y x) (*.f64 t z))
(fma.f64 y x (*.f64 t z))
(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 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 y x) (*.f64 t z))
(fma.f64 y x (*.f64 t z))
(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 t z)
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 y x (*.f64 t z))
(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 y x) (*.f64 t z))
(fma.f64 y x (*.f64 t z))
(fma.f64 t z (*.f64 y x))
(*.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 y x) (*.f64 t z))
(fma.f64 y x (*.f64 t z))
(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 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 y x) (*.f64 t z))
(fma.f64 y x (*.f64 t z))
(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 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 y x) (*.f64 t z))
(fma.f64 y x (*.f64 t z))
(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 t z)
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 y x (*.f64 t z))
(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 y x) (*.f64 t z))
(fma.f64 y x (*.f64 t z))
(fma.f64 t z (*.f64 y x))
(*.f64 t z)
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 y x (*.f64 t z))
(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 y x) (*.f64 t z))
(fma.f64 y x (*.f64 t z))
(fma.f64 t z (*.f64 y x))
(*.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 y x) (*.f64 t z))
(fma.f64 y x (*.f64 t z))
(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 t z)
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 y x (*.f64 t z))
(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 y x) (*.f64 t z))
(fma.f64 y x (*.f64 t z))
(fma.f64 t z (*.f64 y x))
(*.f64 t z)
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 y x (*.f64 t z))
(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 y x) (*.f64 t z))
(fma.f64 y x (*.f64 t z))
(fma.f64 t z (*.f64 y x))

localize13.0ms (0.1%)

Local error

Found 2 expressions with local error:

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

Compiled 36 to 12 computations (66.7% saved)

series10.0ms (0.1%)

Counts
2 → 120
Calls

30 calls:

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

rewrite70.0ms (0.6%)

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

simplify26.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
0151080
1301080
2421080
3441080
Stop Event
saturated
Counts
226 → 117
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))
(+.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 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 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)))
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))
(+.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 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 t z)
(+.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 t z)
(+.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 a b))
(fma.f64 c i (*.f64 a b))
(+.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 t z)
(+.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 t z)
(+.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 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)))

eval93.0ms (0.8%)

Compiler

Compiled 6760 to 1620 computations (76% saved)

prune103.0ms (0.9%)

Pruning

16 alts after pruning (5 fresh and 11 done)

PrunedKeptTotal
New4272429
Fresh033
Picked101
Done01111
Total42816444
Error
0b
Counts
444 → 16
Alt Table
Click to see full alt table
StatusErrorProgram
32.3b
(fma.f64 i c (*.f64 a b))
44.4b
(*.f64 t z)
32.3b
(+.f64 (*.f64 a b) (*.f64 c i))
49.3b
(*.f64 y x)
28.9b
(+.f64 (*.f64 a b) (*.f64 t z))
30.9b
(+.f64 (*.f64 y x) (*.f64 t z))
47.3b
(*.f64 a b)
30.9b
(fma.f64 y x (*.f64 t z))
30.9b
(fma.f64 z t (*.f64 y x))
29.7b
(+.f64 (*.f64 t z) (*.f64 c i))
15.5b
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
32.3b
(fma.f64 b a (*.f64 c i))
13.9b
(+.f64 (fma.f64 a b (*.f64 t z)) (*.f64 c i))
47.6b
(*.f64 c i)
28.9b
(fma.f64 t z (*.f64 a b))
34.1b
(+.f64 (*.f64 y x) (*.f64 c i))
Compiler

Compiled 226 to 166 computations (26.5% saved)

regimes300.0ms (2.6%)

Counts
28 → 1
Calls
Call 1
Inputs
(*.f64 y x)
(*.f64 c i)
(*.f64 t z)
(*.f64 y x)
(*.f64 c i)
(*.f64 a b)
(+.f64 (*.f64 a b) (*.f64 t z))
(+.f64 (*.f64 t z) (*.f64 c i))
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 c i))
(+.f64 (*.f64 a b) (*.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 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a b)) (*.f64 c i))
(fma.f64 t z (*.f64 a b))
(fma.f64 y x (*.f64 t z))
(fma.f64 z t (*.f64 y x))
(fma.f64 i c (*.f64 a b))
(fma.f64 t z (*.f64 y x))
(fma.f64 b a (*.f64 c i))
(+.f64 (fma.f64 a b (*.f64 t z)) (*.f64 c i))
(+.f64 (fma.f64 t z (*.f64 a b)) (*.f64 c i))
(fma.f64 x y (+.f64 (*.f64 c i) (*.f64 t z)))
(+.f64 (fma.f64 t z (*.f64 a b)) (*.f64 c i))
(+.f64 (+.f64 (fma.f64 z t (*.f64 x y)) (*.f64 a b)) (*.f64 c i))
(fma.f64 t z (fma.f64 a b (*.f64 c i)))
(fma.f64 c i (fma.f64 a b (*.f64 t z)))
(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:

16.0ms
b
16.0ms
y
16.0ms
(+.f64 (*.f64 x y) (*.f64 z t))
16.0ms
t
15.0ms
(+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a b)) (*.f64 c 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 458 to 234 computations (48.9% saved)

regimes317.0ms (2.7%)

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

18 calls:

25.0ms
(*.f64 z t)
24.0ms
(*.f64 z t)
24.0ms
(*.f64 x y)
23.0ms
(*.f64 a b)
21.0ms
(*.f64 c 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 z t)
0.0b1(*.f64 z t)
0.0b1(*.f64 a b)
0.0b1(*.f64 c i)
Compiler

Compiled 424 to 213 computations (49.8% saved)

regimes205.0ms (1.7%)

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

15 calls:

17.0ms
(+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a b)) (*.f64 c i))
14.0ms
(+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a b))
13.0ms
z
13.0ms
b
13.0ms
a
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 347 to 174 computations (49.9% saved)

regimes467.0ms (4%)

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

10 calls:

110.0ms
t
65.0ms
z
54.0ms
x
54.0ms
y
43.0ms
b
Results
ErrorSegmentsBranch
10.3b6x
8.6b7y
9.7b8z
9.3b6t
6.5b5a
7.1b6b
9.0b3c
6.2b3i
3.9b3(*.f64 a b)
4.6b3(*.f64 c i)
Compiler

Compiled 177 to 101 computations (42.9% saved)

bsearch62.0ms (0.5%)

Algorithm
binary-search
Steps
TimeLeftRight
36.0ms
1.1582583005635591e+55
1.823136266955213e+59
26.0ms
-1.1553018113381797e+112
-2.3809225541469617e+102
Compiler

Compiled 34 to 25 computations (26.5% saved)

regimes509.0ms (4.3%)

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

10 calls:

71.0ms
y
65.0ms
t
64.0ms
a
63.0ms
(*.f64 a b)
48.0ms
x
Results
ErrorSegmentsBranch
13.2b3x
9.8b7y
13.2b3z
9.9b9t
12.1b5a
13.4b2b
10.6b3c
7.8b5i
10.1b10(*.f64 a b)
6.2b3(*.f64 c i)
Compiler

Compiled 166 to 100 computations (39.8% saved)

bsearch109.0ms (0.9%)

Algorithm
binary-search
Steps
TimeLeftRight
49.0ms
2.4055591713342117e+161
6.496337123062773e+163
59.0ms
-3.730310327670248e+69
-3.3810436989808224e+65
Compiler

Compiled 34 to 25 computations (26.5% saved)

regimes718.0ms (6.1%)

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

10 calls:

121.0ms
a
99.0ms
y
92.0ms
b
87.0ms
t
81.0ms
z
Results
ErrorSegmentsBranch
19.5b6x
15.6b11y
18.0b9z
15.8b10t
18.0b8a
16.6b7b
19.3b4c
18.9b4i
15.3b4(*.f64 a b)
14.0b8(*.f64 c i)
Compiler

Compiled 155 to 99 computations (36.1% saved)

bsearch231.0ms (2%)

Algorithm
binary-search
Steps
TimeLeftRight
25.0ms
1.5632087357188235e+89
2.2702078333394624e+101
24.0ms
2.5195180782021278e+35
4.1119202564281685e+35
53.0ms
2.3671736483091406e-22
8.755625587234672e-22
26.0ms
2.8320565703961553e-245
3.091712796529242e-245
27.0ms
-3.573402175545362e-207
-4.3365643902668414e-214
26.0ms
-3.2401571766324545e-141
-5.487784404592129e-155
49.0ms
-4.697473897752212e-19
-2.202755198586552e-23
Compiler

Compiled 34 to 25 computations (26.5% saved)

regimes562.0ms (4.8%)

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

10 calls:

105.0ms
x
82.0ms
z
76.0ms
(*.f64 c i)
73.0ms
t
53.0ms
y
Results
ErrorSegmentsBranch
21.7b4x
17.6b8y
21.5b7z
19.3b6t
19.1b6a
18.6b8b
20.2b4c
20.0b4i
16.6b4(*.f64 a b)
13.6b9(*.f64 c i)
Compiler

Compiled 148 to 98 computations (33.8% saved)

bsearch292.0ms (2.5%)

Algorithm
binary-search
Steps
TimeLeftRight
27.0ms
2.4055591713342117e+161
6.496337123062773e+163
35.0ms
1.5632087357188235e+89
2.2702078333394624e+101
40.0ms
2.5195180782021278e+35
4.1119202564281685e+35
27.0ms
2.3671736483091406e-22
8.755625587234672e-22
37.0ms
2.8320565703961553e-245
3.091712796529242e-245
25.0ms
-3.573402175545362e-207
-4.3365643902668414e-214
48.0ms
-3.2401571766324545e-141
-5.487784404592129e-155
52.0ms
-4.697473897752212e-19
-2.202755198586552e-23
Compiler

Compiled 34 to 25 computations (26.5% saved)

regimes351.0ms (3%)

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

10 calls:

60.0ms
t
47.0ms
b
43.0ms
y
43.0ms
(*.f64 c i)
35.0ms
a
Results
ErrorSegmentsBranch
21.8b4x
19.0b7y
27.9b2z
21.1b9t
19.4b6a
18.6b8b
20.2b4c
21.2b3i
17.4b4(*.f64 a b)
14.9b7(*.f64 c i)
Compiler

Compiled 141 to 97 computations (31.2% saved)

bsearch189.0ms (1.6%)

Algorithm
binary-search
Steps
TimeLeftRight
28.0ms
1.544313631646826e+127
1.257249628063493e+128
28.0ms
2.3671736483091406e-22
8.755625587234672e-22
48.0ms
2.8320565703961553e-245
3.091712796529242e-245
33.0ms
-3.573402175545362e-207
-4.3365643902668414e-214
26.0ms
-3.2401571766324545e-141
-5.487784404592129e-155
27.0ms
-4.697473897752212e-19
-2.202755198586552e-23
Compiler

Compiled 34 to 25 computations (26.5% saved)

regimes404.0ms (3.4%)

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

10 calls:

57.0ms
t
56.0ms
y
54.0ms
a
53.0ms
z
44.0ms
(*.f64 c i)
Results
ErrorSegmentsBranch
23.0b6x
20.7b9y
26.6b4z
23.6b4t
20.5b5a
22.9b3b
22.6b3c
21.2b3i
18.5b3(*.f64 a b)
18.4b3(*.f64 c i)
Compiler

Compiled 134 to 96 computations (28.4% saved)

bsearch57.0ms (0.5%)

Algorithm
binary-search
Steps
TimeLeftRight
28.0ms
1.544313631646826e+127
1.257249628063493e+128
28.0ms
-4.697473897752212e-19
-2.202755198586552e-23
Compiler

Compiled 34 to 25 computations (26.5% saved)

regimes226.0ms (1.9%)

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

10 calls:

38.0ms
y
31.0ms
t
31.0ms
a
23.0ms
i
22.0ms
x
Results
ErrorSegmentsBranch
25.4b4x
24.3b7y
27.7b3z
26.0b5t
26.5b5a
28.9b1b
24.8b3c
24.2b3i
27.9b3(*.f64 a b)
20.7b3(*.f64 c i)
Compiler

Compiled 127 to 95 computations (25.2% saved)

bsearch57.0ms (0.5%)

Algorithm
binary-search
Steps
TimeLeftRight
30.0ms
2.4055591713342117e+161
6.496337123062773e+163
27.0ms
-5.3576405773166224e+88
-6.318088850013185e+85
Compiler

Compiled 34 to 25 computations (26.5% saved)

regimes399.0ms (3.4%)

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

10 calls:

65.0ms
z
60.0ms
a
42.0ms
y
39.0ms
(*.f64 a b)
37.0ms
i
Results
ErrorSegmentsBranch
36.3b6x
34.1b9y
30.8b15z
33.9b6t
33.6b9a
34.7b5b
33.3b7c
34.8b6i
28.2b8(*.f64 a b)
31.6b6(*.f64 c i)
Compiler

Compiled 120 to 94 computations (21.7% saved)

bsearch185.0ms (1.6%)

Algorithm
binary-search
Steps
TimeLeftRight
25.0ms
1.1582583005635591e+55
1.823136266955213e+59
28.0ms
5.081296903240095e+40
3.1074479349692074e+44
27.0ms
2.3613567618600614e-34
2.7790631221027114e-34
26.0ms
-2.146227844735673e-238
-2.9972447781677835e-241
26.0ms
-4.5103890722006376e-108
-1.2933922968450098e-123
27.0ms
-6.632817441089542e-51
-3.669013459385834e-52
25.0ms
-1.1553018113381797e+112
-2.3809225541469617e+102
Compiler

Compiled 34 to 25 computations (26.5% saved)

regimes245.0ms (2.1%)

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

9 calls:

47.0ms
y
42.0ms
x
34.0ms
z
32.0ms
a
20.0ms
(*.f64 c i)
Results
ErrorSegmentsBranch
37.7b4x
34.9b8y
35.7b8z
38.6b3t
40.2b7a
40.4b4b
35.7b4c
35.9b4i
33.7b5(*.f64 c i)
Compiler

Compiled 106 to 84 computations (20.8% saved)

bsearch187.0ms (1.6%)

Algorithm
binary-search
Steps
TimeLeftRight
32.0ms
2.5195180782021278e+35
4.1119202564281685e+35
43.0ms
3.1747270639606527e-119
5.911479028190967e-118
57.0ms
2.10456845868089e-194
8.310793968305321e-179
56.0ms
-5.3576405773166224e+88
-6.318088850013185e+85
Compiler

Compiled 34 to 25 computations (26.5% saved)

regimes139.0ms (1.2%)

Accuracy

Total -25.3b remaining (-67.9%)

Threshold costs -25.3b (-67.9%)

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

9 calls:

25.0ms
b
19.0ms
i
19.0ms
t
16.0ms
y
16.0ms
x
Results
ErrorSegmentsBranch
41.0b5x
39.9b5y
45.6b3z
43.8b6t
44.6b4a
42.6b7b
40.7b3c
40.1b5i
37.2b3(*.f64 c i)
Compiler

Compiled 97 to 83 computations (14.4% saved)

bsearch51.0ms (0.4%)

Algorithm
binary-search
Steps
TimeLeftRight
27.0ms
2.0806116872131426e+51
2.213761646236922e+56
24.0ms
-326085129881.50037
-1.3372650137967302e-13
Compiler

Compiled 34 to 25 computations (26.5% saved)

simplify21.0ms (0.2%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
0117870
1133870
Stop Event
fuel
saturated
Calls
Call 1
Inputs
(fma.f64 x y (fma.f64 z t (fma.f64 c i (*.f64 a b))))
(+.f64 (+.f64 (fma.f64 z t (*.f64 x y)) (*.f64 a b)) (*.f64 c i))
(+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a b)) (*.f64 c i))
(if (<=.f64 (*.f64 a b) -11553018113381797042588965916715127028631916771312662572937322602885941532255084854521946094703747393325260341248) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) (if (<=.f64 (*.f64 a b) 11582583005635591089361570729530777222685367927341842432) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) (+.f64 (*.f64 a b) (*.f64 c i))))
(if (<=.f64 (*.f64 c i) -3730310327670248102398705034679095943855274199423880575606378196893696) (+.f64 (*.f64 t z) (*.f64 c i)) (if (<=.f64 (*.f64 c i) 240555917133421172609153810671373407550125335870594327065598654934585825539065269799621373382077146123305418010057778709541227526602363434548253704849164288917504) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) (+.f64 (*.f64 y x) (*.f64 c i))))
(if (<=.f64 (*.f64 c i) -38110435878669/81129638414606681695789005144064) (+.f64 (*.f64 t z) (*.f64 c i)) (if (<=.f64 (*.f64 c i) -5560755851150469/1716199415032652428745475199770348304317358825035826352348615864796385795849414013030639910165363638744324077847870214509280496999929160953143507072778764288) (+.f64 (*.f64 a b) (*.f64 t z)) (if (<=.f64 (*.f64 c i) -1291691215848757/361473786714651839609485931802192366508973300717001923159475447150424810286233407987951861887389439612274926783780351561999781998832434041296198795326329101623141899709787663433296905279066051548640942013290819886814068736) (+.f64 (*.f64 y x) (*.f64 t z)) (if (<=.f64 (*.f64 c i) 6967037906903387/246006311446272417135694895366447328831463738361430131889861407236509911043906984606020737387080298687645418100644428599105378407753391907201399550988776412284181771799458695654166637769167516870901097035133833253825096549816225533764062867857067136321933279232) (+.f64 (*.f64 a b) (*.f64 t z)) (if (<=.f64 (*.f64 c i) 80550745195950752/340282366920938463463374607431768211456) (+.f64 (*.f64 y x) (*.f64 t z)) (if (<=.f64 (*.f64 c i) 251951807820212778680075430133760000) (+.f64 (*.f64 a b) (*.f64 t z)) (if (<=.f64 (*.f64 c i) 156320873571882346747435767309226164538503298946114356645845818390925219691775412515373056) (+.f64 (*.f64 y x) (*.f64 c i)) (+.f64 (*.f64 a b) (*.f64 c i)))))))))
(if (<=.f64 (*.f64 c i) -38110435878669/81129638414606681695789005144064) (+.f64 (*.f64 t z) (*.f64 c i)) (if (<=.f64 (*.f64 c i) -5560755851150469/1716199415032652428745475199770348304317358825035826352348615864796385795849414013030639910165363638744324077847870214509280496999929160953143507072778764288) (+.f64 (*.f64 a b) (*.f64 t z)) (if (<=.f64 (*.f64 c i) -1291691215848757/361473786714651839609485931802192366508973300717001923159475447150424810286233407987951861887389439612274926783780351561999781998832434041296198795326329101623141899709787663433296905279066051548640942013290819886814068736) (+.f64 (*.f64 y x) (*.f64 t z)) (if (<=.f64 (*.f64 c i) 6967037906903387/246006311446272417135694895366447328831463738361430131889861407236509911043906984606020737387080298687645418100644428599105378407753391907201399550988776412284181771799458695654166637769167516870901097035133833253825096549816225533764062867857067136321933279232) (+.f64 (*.f64 a b) (*.f64 t z)) (if (<=.f64 (*.f64 c i) 80550745195950752/340282366920938463463374607431768211456) (+.f64 (*.f64 y x) (*.f64 t z)) (if (<=.f64 (*.f64 c i) 251951807820212778680075430133760000) (+.f64 (*.f64 a b) (*.f64 t z)) (if (<=.f64 (*.f64 c i) 156320873571882346747435767309226164538503298946114356645845818390925219691775412515373056) (+.f64 (*.f64 y x) (*.f64 c i)) (if (<=.f64 (*.f64 c i) 240555917133421172609153810671373407550125335870594327065598654934585825539065269799621373382077146123305418010057778709541227526602363434548253704849164288917504) (+.f64 (*.f64 a b) (*.f64 t z)) (+.f64 (*.f64 y x) (*.f64 c i))))))))))
(if (<=.f64 (*.f64 c i) -38110435878669/81129638414606681695789005144064) (+.f64 (*.f64 t z) (*.f64 c i)) (if (<=.f64 (*.f64 c i) -5560755851150469/1716199415032652428745475199770348304317358825035826352348615864796385795849414013030639910165363638744324077847870214509280496999929160953143507072778764288) (+.f64 (*.f64 a b) (*.f64 t z)) (if (<=.f64 (*.f64 c i) -1291691215848757/361473786714651839609485931802192366508973300717001923159475447150424810286233407987951861887389439612274926783780351561999781998832434041296198795326329101623141899709787663433296905279066051548640942013290819886814068736) (+.f64 (*.f64 y x) (*.f64 t z)) (if (<=.f64 (*.f64 c i) 6967037906903387/246006311446272417135694895366447328831463738361430131889861407236509911043906984606020737387080298687645418100644428599105378407753391907201399550988776412284181771799458695654166637769167516870901097035133833253825096549816225533764062867857067136321933279232) (+.f64 (*.f64 a b) (*.f64 t z)) (if (<=.f64 (*.f64 c i) 80550745195950752/340282366920938463463374607431768211456) (+.f64 (*.f64 y x) (*.f64 t z)) (if (<=.f64 (*.f64 c i) 15443136316468260302180700826558841729363014749888326772190847647636302672754106752089717068218018978686485066562271141710266368) (+.f64 (*.f64 a b) (*.f64 t z)) (+.f64 (*.f64 t z) (*.f64 c i))))))))
(if (<=.f64 (*.f64 c i) -38110435878669/81129638414606681695789005144064) (+.f64 (*.f64 t z) (*.f64 c i)) (if (<=.f64 (*.f64 c i) 15443136316468260302180700826558841729363014749888326772190847647636302672754106752089717068218018978686485066562271141710266368) (+.f64 (*.f64 a b) (*.f64 t z)) (+.f64 (*.f64 t z) (*.f64 c i))))
(if (<=.f64 (*.f64 c i) -53576405773166223806483318082635287107247431698946462001843824604282522794950996057391104) (*.f64 c i) (if (<=.f64 (*.f64 c i) 240555917133421172609153810671373407550125335870594327065598654934585825539065269799621373382077146123305418010057778709541227526602363434548253704849164288917504) (+.f64 (*.f64 a b) (*.f64 t z)) (*.f64 c i)))
(if (<=.f64 (*.f64 a b) -11553018113381797042588965916715127028631916771312662572937322602885941532255084854521946094703747393325260341248) (*.f64 a b) (if (<=.f64 (*.f64 a b) -178820404464720640/26959946667150639794667015087019630673637144422540572481103610249216) (*.f64 y x) (if (<=.f64 (*.f64 a b) -763294622142603008/169230328010303641331690318856389386196071598838855992136870091590247882556495704531248437872567112920983350278405979725889536) (*.f64 t z) (if (<=.f64 (*.f64 a b) -6294078774532151/29326237612518360273324834748083034614499060912302748190148044495166529541481373859169571088204419456439664137440255713356182385415243137741255706666562129531405183291370713192721204491754474266874920968429307133415352886893299285622127397997029678383104) (*.f64 y x) (if (<=.f64 (*.f64 a b) 2760901419024703/11692013098647223345629478661730264157247460343808) (*.f64 t z) (if (<=.f64 (*.f64 a b) 50812969032400945445150752179804899901440) (*.f64 c i) (if (<=.f64 (*.f64 a b) 11582583005635591089361570729530777222685367927341842432) (*.f64 y x) (*.f64 a b))))))))
(if (<=.f64 (*.f64 c i) -53576405773166223806483318082635287107247431698946462001843824604282522794950996057391104) (*.f64 c i) (if (<=.f64 (*.f64 c i) 1771250577083787776/84162174424773976115855838126082058648805436845170781751972494449099714468753293153818664580441415219631727501698851483408310916002940861810045036330430093599283578738055113571066620126149163476340692027772502016) (*.f64 t z) (if (<=.f64 (*.f64 c i) 23075145691558984/726838724295606890549323807888004534353641360687318060281490199180639288113397923326191050713763565560762521606266177933534601628614656) (*.f64 y x) (if (<=.f64 (*.f64 c i) 251951807820212778680075430133760000) (*.f64 t z) (*.f64 c i)))))
(if (<=.f64 (*.f64 c i) -2671289383989251/8192) (*.f64 c i) (if (<=.f64 (*.f64 c i) 2080611687213142576500581778175952909025479590150144) (*.f64 y x) (*.f64 c i)))
(*.f64 y x)
Outputs
(fma.f64 x y (fma.f64 z t (fma.f64 c i (*.f64 a b))))
(+.f64 (+.f64 (fma.f64 z t (*.f64 x y)) (*.f64 a b)) (*.f64 c i))
(+.f64 (+.f64 (*.f64 a b) (fma.f64 z t (*.f64 x y))) (*.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 a b) -11553018113381797042588965916715127028631916771312662572937322602885941532255084854521946094703747393325260341248) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) (if (<=.f64 (*.f64 a b) 11582583005635591089361570729530777222685367927341842432) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) (+.f64 (*.f64 a b) (*.f64 c i))))
(if (<=.f64 (*.f64 a b) -11553018113381797042588965916715127028631916771312662572937322602885941532255084854521946094703747393325260341248) (+.f64 (*.f64 a b) (+.f64 (*.f64 x y) (*.f64 z t))) (if (<=.f64 (*.f64 a b) 11582583005635591089361570729530777222685367927341842432) (+.f64 (*.f64 c i) (+.f64 (*.f64 x y) (*.f64 z t))) (+.f64 (*.f64 a b) (*.f64 c i))))
(if (<=.f64 (*.f64 c i) -3730310327670248102398705034679095943855274199423880575606378196893696) (+.f64 (*.f64 t z) (*.f64 c i)) (if (<=.f64 (*.f64 c i) 240555917133421172609153810671373407550125335870594327065598654934585825539065269799621373382077146123305418010057778709541227526602363434548253704849164288917504) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) (+.f64 (*.f64 y x) (*.f64 c i))))
(if (<=.f64 (*.f64 c i) -3730310327670248102398705034679095943855274199423880575606378196893696) (+.f64 (*.f64 c i) (*.f64 z t)) (if (<=.f64 (*.f64 c i) 240555917133421172609153810671373407550125335870594327065598654934585825539065269799621373382077146123305418010057778709541227526602363434548253704849164288917504) (+.f64 (*.f64 a b) (+.f64 (*.f64 x y) (*.f64 z t))) (+.f64 (*.f64 c i) (*.f64 x y))))
(if (<=.f64 (*.f64 c i) -38110435878669/81129638414606681695789005144064) (+.f64 (*.f64 t z) (*.f64 c i)) (if (<=.f64 (*.f64 c i) -5560755851150469/1716199415032652428745475199770348304317358825035826352348615864796385795849414013030639910165363638744324077847870214509280496999929160953143507072778764288) (+.f64 (*.f64 a b) (*.f64 t z)) (if (<=.f64 (*.f64 c i) -1291691215848757/361473786714651839609485931802192366508973300717001923159475447150424810286233407987951861887389439612274926783780351561999781998832434041296198795326329101623141899709787663433296905279066051548640942013290819886814068736) (+.f64 (*.f64 y x) (*.f64 t z)) (if (<=.f64 (*.f64 c i) 6967037906903387/246006311446272417135694895366447328831463738361430131889861407236509911043906984606020737387080298687645418100644428599105378407753391907201399550988776412284181771799458695654166637769167516870901097035133833253825096549816225533764062867857067136321933279232) (+.f64 (*.f64 a b) (*.f64 t z)) (if (<=.f64 (*.f64 c i) 80550745195950752/340282366920938463463374607431768211456) (+.f64 (*.f64 y x) (*.f64 t z)) (if (<=.f64 (*.f64 c i) 251951807820212778680075430133760000) (+.f64 (*.f64 a b) (*.f64 t z)) (if (<=.f64 (*.f64 c i) 156320873571882346747435767309226164538503298946114356645845818390925219691775412515373056) (+.f64 (*.f64 y x) (*.f64 c i)) (+.f64 (*.f64 a b) (*.f64 c i)))))))))
(if (<=.f64 (*.f64 c i) -38110435878669/81129638414606681695789005144064) (+.f64 (*.f64 c i) (*.f64 z t)) (if (<=.f64 (*.f64 c i) -5560755851150469/1716199415032652428745475199770348304317358825035826352348615864796385795849414013030639910165363638744324077847870214509280496999929160953143507072778764288) (+.f64 (*.f64 a b) (*.f64 z t)) (if (<=.f64 (*.f64 c i) -1291691215848757/361473786714651839609485931802192366508973300717001923159475447150424810286233407987951861887389439612274926783780351561999781998832434041296198795326329101623141899709787663433296905279066051548640942013290819886814068736) (+.f64 (*.f64 x y) (*.f64 z t)) (if (<=.f64 (*.f64 c i) 6967037906903387/246006311446272417135694895366447328831463738361430131889861407236509911043906984606020737387080298687645418100644428599105378407753391907201399550988776412284181771799458695654166637769167516870901097035133833253825096549816225533764062867857067136321933279232) (+.f64 (*.f64 a b) (*.f64 z t)) (if (<=.f64 (*.f64 c i) 2517210787373461/10633823966279326983230456482242756608) (+.f64 (*.f64 x y) (*.f64 z t)) (if (<=.f64 (*.f64 c i) 251951807820212778680075430133760000) (+.f64 (*.f64 a b) (*.f64 z t)) (if (<=.f64 (*.f64 c i) 156320873571882346747435767309226164538503298946114356645845818390925219691775412515373056) (+.f64 (*.f64 c i) (*.f64 x y)) (+.f64 (*.f64 a b) (*.f64 c i)))))))))
(if (<=.f64 (*.f64 c i) -38110435878669/81129638414606681695789005144064) (+.f64 (*.f64 t z) (*.f64 c i)) (if (<=.f64 (*.f64 c i) -5560755851150469/1716199415032652428745475199770348304317358825035826352348615864796385795849414013030639910165363638744324077847870214509280496999929160953143507072778764288) (+.f64 (*.f64 a b) (*.f64 t z)) (if (<=.f64 (*.f64 c i) -1291691215848757/361473786714651839609485931802192366508973300717001923159475447150424810286233407987951861887389439612274926783780351561999781998832434041296198795326329101623141899709787663433296905279066051548640942013290819886814068736) (+.f64 (*.f64 y x) (*.f64 t z)) (if (<=.f64 (*.f64 c i) 6967037906903387/246006311446272417135694895366447328831463738361430131889861407236509911043906984606020737387080298687645418100644428599105378407753391907201399550988776412284181771799458695654166637769167516870901097035133833253825096549816225533764062867857067136321933279232) (+.f64 (*.f64 a b) (*.f64 t z)) (if (<=.f64 (*.f64 c i) 80550745195950752/340282366920938463463374607431768211456) (+.f64 (*.f64 y x) (*.f64 t z)) (if (<=.f64 (*.f64 c i) 251951807820212778680075430133760000) (+.f64 (*.f64 a b) (*.f64 t z)) (if (<=.f64 (*.f64 c i) 156320873571882346747435767309226164538503298946114356645845818390925219691775412515373056) (+.f64 (*.f64 y x) (*.f64 c i)) (if (<=.f64 (*.f64 c i) 240555917133421172609153810671373407550125335870594327065598654934585825539065269799621373382077146123305418010057778709541227526602363434548253704849164288917504) (+.f64 (*.f64 a b) (*.f64 t z)) (+.f64 (*.f64 y x) (*.f64 c i))))))))))
(if (<=.f64 (*.f64 c i) -38110435878669/81129638414606681695789005144064) (+.f64 (*.f64 c i) (*.f64 z t)) (if (<=.f64 (*.f64 c i) -5560755851150469/1716199415032652428745475199770348304317358825035826352348615864796385795849414013030639910165363638744324077847870214509280496999929160953143507072778764288) (+.f64 (*.f64 a b) (*.f64 z t)) (if (<=.f64 (*.f64 c i) -1291691215848757/361473786714651839609485931802192366508973300717001923159475447150424810286233407987951861887389439612274926783780351561999781998832434041296198795326329101623141899709787663433296905279066051548640942013290819886814068736) (+.f64 (*.f64 x y) (*.f64 z t)) (if (<=.f64 (*.f64 c i) 6967037906903387/246006311446272417135694895366447328831463738361430131889861407236509911043906984606020737387080298687645418100644428599105378407753391907201399550988776412284181771799458695654166637769167516870901097035133833253825096549816225533764062867857067136321933279232) (+.f64 (*.f64 a b) (*.f64 z t)) (if (<=.f64 (*.f64 c i) 2517210787373461/10633823966279326983230456482242756608) (+.f64 (*.f64 x y) (*.f64 z t)) (if (<=.f64 (*.f64 c i) 251951807820212778680075430133760000) (+.f64 (*.f64 a b) (*.f64 z t)) (if (<=.f64 (*.f64 c i) 156320873571882346747435767309226164538503298946114356645845818390925219691775412515373056) (+.f64 (*.f64 c i) (*.f64 x y)) (if (<=.f64 (*.f64 c i) 240555917133421172609153810671373407550125335870594327065598654934585825539065269799621373382077146123305418010057778709541227526602363434548253704849164288917504) (+.f64 (*.f64 a b) (*.f64 z t)) (+.f64 (*.f64 c i) (*.f64 x y))))))))))
(if (<=.f64 (*.f64 c i) -38110435878669/81129638414606681695789005144064) (+.f64 (*.f64 t z) (*.f64 c i)) (if (<=.f64 (*.f64 c i) -5560755851150469/1716199415032652428745475199770348304317358825035826352348615864796385795849414013030639910165363638744324077847870214509280496999929160953143507072778764288) (+.f64 (*.f64 a b) (*.f64 t z)) (if (<=.f64 (*.f64 c i) -1291691215848757/361473786714651839609485931802192366508973300717001923159475447150424810286233407987951861887389439612274926783780351561999781998832434041296198795326329101623141899709787663433296905279066051548640942013290819886814068736) (+.f64 (*.f64 y x) (*.f64 t z)) (if (<=.f64 (*.f64 c i) 6967037906903387/246006311446272417135694895366447328831463738361430131889861407236509911043906984606020737387080298687645418100644428599105378407753391907201399550988776412284181771799458695654166637769167516870901097035133833253825096549816225533764062867857067136321933279232) (+.f64 (*.f64 a b) (*.f64 t z)) (if (<=.f64 (*.f64 c i) 80550745195950752/340282366920938463463374607431768211456) (+.f64 (*.f64 y x) (*.f64 t z)) (if (<=.f64 (*.f64 c i) 15443136316468260302180700826558841729363014749888326772190847647636302672754106752089717068218018978686485066562271141710266368) (+.f64 (*.f64 a b) (*.f64 t z)) (+.f64 (*.f64 t z) (*.f64 c i))))))))
(if (<=.f64 (*.f64 c i) -38110435878669/81129638414606681695789005144064) (+.f64 (*.f64 c i) (*.f64 z t)) (if (<=.f64 (*.f64 c i) -5560755851150469/1716199415032652428745475199770348304317358825035826352348615864796385795849414013030639910165363638744324077847870214509280496999929160953143507072778764288) (+.f64 (*.f64 a b) (*.f64 z t)) (if (<=.f64 (*.f64 c i) -1291691215848757/361473786714651839609485931802192366508973300717001923159475447150424810286233407987951861887389439612274926783780351561999781998832434041296198795326329101623141899709787663433296905279066051548640942013290819886814068736) (+.f64 (*.f64 x y) (*.f64 z t)) (if (<=.f64 (*.f64 c i) 6967037906903387/246006311446272417135694895366447328831463738361430131889861407236509911043906984606020737387080298687645418100644428599105378407753391907201399550988776412284181771799458695654166637769167516870901097035133833253825096549816225533764062867857067136321933279232) (+.f64 (*.f64 a b) (*.f64 z t)) (if (<=.f64 (*.f64 c i) 2517210787373461/10633823966279326983230456482242756608) (+.f64 (*.f64 x y) (*.f64 z t)) (if (<=.f64 (*.f64 c i) 15443136316468260302180700826558841729363014749888326772190847647636302672754106752089717068218018978686485066562271141710266368) (+.f64 (*.f64 a b) (*.f64 z t)) (+.f64 (*.f64 c i) (*.f64 z t))))))))
(if (<=.f64 (*.f64 c i) -38110435878669/81129638414606681695789005144064) (+.f64 (*.f64 t z) (*.f64 c i)) (if (<=.f64 (*.f64 c i) 15443136316468260302180700826558841729363014749888326772190847647636302672754106752089717068218018978686485066562271141710266368) (+.f64 (*.f64 a b) (*.f64 t z)) (+.f64 (*.f64 t z) (*.f64 c i))))
(if (<=.f64 (*.f64 c i) -38110435878669/81129638414606681695789005144064) (+.f64 (*.f64 c i) (*.f64 z t)) (if (<=.f64 (*.f64 c i) 15443136316468260302180700826558841729363014749888326772190847647636302672754106752089717068218018978686485066562271141710266368) (+.f64 (*.f64 a b) (*.f64 z t)) (+.f64 (*.f64 c i) (*.f64 z t))))
(if (<=.f64 (*.f64 c i) -53576405773166223806483318082635287107247431698946462001843824604282522794950996057391104) (*.f64 c i) (if (<=.f64 (*.f64 c i) 240555917133421172609153810671373407550125335870594327065598654934585825539065269799621373382077146123305418010057778709541227526602363434548253704849164288917504) (+.f64 (*.f64 a b) (*.f64 t z)) (*.f64 c i)))
(if (<=.f64 (*.f64 c i) -53576405773166223806483318082635287107247431698946462001843824604282522794950996057391104) (*.f64 c i) (if (<=.f64 (*.f64 c i) 240555917133421172609153810671373407550125335870594327065598654934585825539065269799621373382077146123305418010057778709541227526602363434548253704849164288917504) (+.f64 (*.f64 a b) (*.f64 z t)) (*.f64 c i)))
(if (<=.f64 (*.f64 a b) -11553018113381797042588965916715127028631916771312662572937322602885941532255084854521946094703747393325260341248) (*.f64 a b) (if (<=.f64 (*.f64 a b) -178820404464720640/26959946667150639794667015087019630673637144422540572481103610249216) (*.f64 y x) (if (<=.f64 (*.f64 a b) -763294622142603008/169230328010303641331690318856389386196071598838855992136870091590247882556495704531248437872567112920983350278405979725889536) (*.f64 t z) (if (<=.f64 (*.f64 a b) -6294078774532151/29326237612518360273324834748083034614499060912302748190148044495166529541481373859169571088204419456439664137440255713356182385415243137741255706666562129531405183291370713192721204491754474266874920968429307133415352886893299285622127397997029678383104) (*.f64 y x) (if (<=.f64 (*.f64 a b) 2760901419024703/11692013098647223345629478661730264157247460343808) (*.f64 t z) (if (<=.f64 (*.f64 a b) 50812969032400945445150752179804899901440) (*.f64 c i) (if (<=.f64 (*.f64 a b) 11582583005635591089361570729530777222685367927341842432) (*.f64 y x) (*.f64 a b))))))))
(if (<=.f64 (*.f64 a b) -11553018113381797042588965916715127028631916771312662572937322602885941532255084854521946094703747393325260341248) (*.f64 a b) (if (<=.f64 (*.f64 a b) -698517204940315/105312291668557186697918027683670432318895095400549111254310977536) (*.f64 x y) (if (<=.f64 (*.f64 a b) -2981619617744543/661055968790248598951915308032771039828404682964281219284648795274405791236311345825189210439715284847591212025023358304256) (*.f64 z t) (if (<=.f64 (*.f64 a b) -6294078774532151/29326237612518360273324834748083034614499060912302748190148044495166529541481373859169571088204419456439664137440255713356182385415243137741255706666562129531405183291370713192721204491754474266874920968429307133415352886893299285622127397997029678383104) (*.f64 x y) (if (<=.f64 (*.f64 a b) 2760901419024703/11692013098647223345629478661730264157247460343808) (*.f64 z t) (if (<=.f64 (*.f64 a b) 50812969032400945445150752179804899901440) (*.f64 c i) (if (<=.f64 (*.f64 a b) 11582583005635591089361570729530777222685367927341842432) (*.f64 x y) (*.f64 a b))))))))
(if (<=.f64 (*.f64 c i) -53576405773166223806483318082635287107247431698946462001843824604282522794950996057391104) (*.f64 c i) (if (<=.f64 (*.f64 c i) 1771250577083787776/84162174424773976115855838126082058648805436845170781751972494449099714468753293153818664580441415219631727501698851483408310916002940861810045036330430093599283578738055113571066620126149163476340692027772502016) (*.f64 t z) (if (<=.f64 (*.f64 c i) 23075145691558984/726838724295606890549323807888004534353641360687318060281490199180639288113397923326191050713763565560762521606266177933534601628614656) (*.f64 y x) (if (<=.f64 (*.f64 c i) 251951807820212778680075430133760000) (*.f64 t z) (*.f64 c i)))))
(if (<=.f64 (*.f64 c i) -53576405773166223806483318082635287107247431698946462001843824604282522794950996057391104) (*.f64 c i) (if (<=.f64 (*.f64 c i) 3459473783366773/164379246923386672101280933840004020798448118838224183109321278220897879821783775691052079258674639100843217776755569303531857257818243870722744211582871276561100739722763893693489492433885084914727914116743168) (*.f64 z t) (if (<=.f64 (*.f64 c i) 2884393211444873/90854840536950861318665475986000566794205170085914757535186274897579911014174740415773881339220445695095315200783272241691825203576832) (*.f64 x y) (if (<=.f64 (*.f64 c i) 251951807820212778680075430133760000) (*.f64 z t) (*.f64 c i)))))
(if (<=.f64 (*.f64 c i) -2671289383989251/8192) (*.f64 c i) (if (<=.f64 (*.f64 c i) 2080611687213142576500581778175952909025479590150144) (*.f64 y x) (*.f64 c i)))
(if (<=.f64 (*.f64 c i) -2671289383989251/8192) (*.f64 c i) (if (<=.f64 (*.f64 c i) 2080611687213142576500581778175952909025479590150144) (*.f64 x y) (*.f64 c i)))
(*.f64 y x)
(*.f64 x y)
Compiler

Compiled 712 to 314 computations (55.9% saved)

soundness18.0ms (0.2%)

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)

end179.0ms (1.5%)

Remove

(sort c i)

(sort a b)

(sort z t)

(sort x y)

Compiler

Compiled 768 to 248 computations (67.7% saved)

Profiling

Loading profile data...