Details

Time bar (total: 1.5s)

analyze0.0ms (0%)

Algorithm
search
Search
TrueOtherFalseIter
0%0%100%0
0%0%100%1
Compiler

Compiled 24 to 16 computations (33.3% saved)

sample927.0ms (62.5%)

Results
912.0ms8256×body64valid

preprocess63.0ms (4.2%)

Algorithm
egg-herbie
Rules
794×fma-neg_binary64
524×cancel-sign-sub-inv_binary64
499×associate-*l*_binary64
406×fma-def_binary64
339×sub-neg_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01840
14940
214840
342540
4100540
5310840
6597540
7737640
022
Stop Event
saturated
node limit
Calls
Call 1
Inputs
0
1
Outputs
0
1
Call 2
Inputs
(-.f64 (*.f64 9 (pow.f64 x 4)) (*.f64 (*.f64 y y) (-.f64 (*.f64 y y) 2)))
(-.f64 (*.f64 9 (pow.f64 y 4)) (*.f64 (*.f64 x x) (-.f64 (*.f64 x x) 2)))
Outputs
(-.f64 (*.f64 9 (pow.f64 x 4)) (*.f64 (*.f64 y y) (-.f64 (*.f64 y y) 2)))
(-.f64 (*.f64 9 (pow.f64 x 4)) (*.f64 y (*.f64 y (fma.f64 y y -2))))
(-.f64 (*.f64 9 (pow.f64 x 4)) (*.f64 (*.f64 y y) (fma.f64 y y -2)))
(fma.f64 y (*.f64 y 2) (-.f64 (*.f64 9 (pow.f64 x 4)) (pow.f64 y 4)))
(-.f64 (*.f64 9 (pow.f64 y 4)) (*.f64 (*.f64 x x) (-.f64 (*.f64 x x) 2)))
(-.f64 (*.f64 9 (pow.f64 y 4)) (*.f64 x (*.f64 x (fma.f64 x x -2))))
(-.f64 (*.f64 9 (pow.f64 y 4)) (*.f64 (*.f64 x x) (fma.f64 x x -2)))
(fma.f64 9 (pow.f64 y 4) (*.f64 (*.f64 x (fma.f64 x x -2)) (neg.f64 x)))
Compiler

Compiled 17 to 11 computations (35.3% saved)

simplify79.0ms (5.3%)

Algorithm
egg-herbie
Rules
1518×fma-def_binary64
790×fma-neg_binary64
462×cancel-sign-sub-inv_binary64
382×distribute-rgt-neg-in_binary64
357×sqr-pow_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01220
12920
28220
323520
449120
5110720
6217720
7393920
8481120
9556120
10585920
11618520
12657720
Stop Event
node limit
Counts
1 → 2
Calls
Call 1
Inputs
(-.f64 (*.f64 9 (pow.f64 x 4)) (*.f64 (*.f64 y y) (-.f64 (*.f64 y y) 2)))
Outputs
(-.f64 (*.f64 9 (pow.f64 x 4)) (*.f64 (*.f64 y y) (-.f64 (*.f64 y y) 2)))
(-.f64 (*.f64 9 (pow.f64 x 4)) (*.f64 y (*.f64 y (fma.f64 y y -2))))
(-.f64 (*.f64 9 (pow.f64 x 4)) (*.f64 (*.f64 y y) (fma.f64 y y -2)))
(fma.f64 9 (pow.f64 x 4) (-.f64 (*.f64 y (*.f64 y 2)) (pow.f64 y 4)))
(fma.f64 y (*.f64 y 2) (neg.f64 (fma.f64 (pow.f64 x 4) -9 (pow.f64 y 4))))
(fma.f64 y (*.f64 y 2) (neg.f64 (fma.f64 9 (pow.f64 x 4) (pow.f64 y 4))))

prune2.0ms (0.2%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New112
Fresh011
Picked000
Done000
Total123
Error
62.0b
Counts
3 → 1
Alt Table
StatusErrorProgram
62.0b
(-.f64 (*.f64 9 (pow.f64 x 4)) (*.f64 (*.f64 y y) (-.f64 (*.f64 y y) 2)))
Compiler

Compiled 65 to 43 computations (33.8% saved)

localize8.0ms (0.5%)

Local error

Found 1 expressions with local error:

NewErrorProgram
62.0b
(-.f64 (*.f64 9 (pow.f64 x 4)) (*.f64 (*.f64 y y) (-.f64 (*.f64 y y) 2)))

series5.0ms (0.3%)

Counts
1 → 24
Calls

6 calls:

TimeVariablePointExpression
1.0ms
x
@0
(-.f64 (*.f64 9 (pow.f64 x 4)) (*.f64 (*.f64 y y) (-.f64 (*.f64 y y) 2)))
1.0ms
y
@0
(-.f64 (*.f64 9 (pow.f64 x 4)) (*.f64 (*.f64 y y) (-.f64 (*.f64 y y) 2)))
1.0ms
x
@inf
(-.f64 (*.f64 9 (pow.f64 x 4)) (*.f64 (*.f64 y y) (-.f64 (*.f64 y y) 2)))
1.0ms
y
@inf
(-.f64 (*.f64 9 (pow.f64 x 4)) (*.f64 (*.f64 y y) (-.f64 (*.f64 y y) 2)))
0.0ms
y
@-inf
(-.f64 (*.f64 9 (pow.f64 x 4)) (*.f64 (*.f64 y y) (-.f64 (*.f64 y y) 2)))

rewrite83.0ms (5.6%)

Algorithm
batch-egg-rewrite
Rules
604×log-prod_binary64
541×fma-def_binary64
337×pow2_binary64
234×fma-neg_binary64
229×expm1-udef_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01220
128020
2356620
Stop Event
node limit
Counts
1 → 170
Calls
Call 1
Inputs
(-.f64 (*.f64 9 (pow.f64 x 4)) (*.f64 (*.f64 y y) (-.f64 (*.f64 y y) 2)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 9 (pow.f64 x 4)) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 9 (pow.f64 x 4)) (*.f64 (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 9 (pow.f64 x 4)) (fma.f64 (*.f64 y y) (neg.f64 (fma.f64 y y -2)) (fma.f64 (*.f64 y y) (neg.f64 (fma.f64 y y -2)) (*.f64 (*.f64 y y) (fma.f64 y y -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 9 (pow.f64 x 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y)))) (fma.f64 (*.f64 y y) (neg.f64 (fma.f64 y y -2)) (*.f64 (*.f64 y y) (fma.f64 y y -2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 9 (pow.f64 x 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y)))) (fma.f64 (neg.f64 (*.f64 y (fma.f64 y y -2))) y (*.f64 (*.f64 y y) (fma.f64 y y -2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 9 (pow.f64 x 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y)))) (fma.f64 (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y))) 1 (*.f64 (*.f64 y y) (fma.f64 y y -2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 9 (pow.f64 x 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y)))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (*.f64 y y) (fma.f64 y y -2)))) (cbrt.f64 (pow.f64 (*.f64 y (sqrt.f64 (fma.f64 y y -2))) 4)) (*.f64 (*.f64 y y) (fma.f64 y y -2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 9 (pow.f64 x 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y)))) (*.f64 (fma.f64 (*.f64 y y) (neg.f64 (fma.f64 y y -2)) (*.f64 (*.f64 y y) (fma.f64 y y -2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 9 (pow.f64 x 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y)))) (+.f64 (fma.f64 (*.f64 y y) (neg.f64 (fma.f64 y y -2)) (*.f64 (*.f64 y y) (fma.f64 y y -2))) (fma.f64 (*.f64 y y) (neg.f64 (fma.f64 y y -2)) (*.f64 (*.f64 y y) (fma.f64 y y -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 y y) (neg.f64 (fma.f64 y y -2)) (*.f64 (*.f64 y y) (fma.f64 y y -2))) (fma.f64 9 (pow.f64 x 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y))) (*.f64 9 (pow.f64 x 4)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (fma.f64 9 (pow.f64 x 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (fma.f64 9 (pow.f64 x 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y)))))) 2)) (log.f64 (cbrt.f64 (exp.f64 (fma.f64 9 (pow.f64 x 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y))))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (fma.f64 9 (pow.f64 x 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y))))))) (log.f64 (sqrt.f64 (exp.f64 (fma.f64 9 (pow.f64 x 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y))))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 9 (pow.f64 x 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 9 (pow.f64 x 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 9 (pow.f64 x 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y))))) (pow.f64 (cbrt.f64 (fma.f64 9 (pow.f64 x 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 9 (pow.f64 x 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y))))) 2) (cbrt.f64 (fma.f64 9 (pow.f64 x 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 9 (pow.f64 x 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y))))) (sqrt.f64 (fma.f64 9 (pow.f64 x 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 (pow.f64 x 12) 729) (pow.f64 (*.f64 y (sqrt.f64 (fma.f64 y y -2))) 6)) (/.f64 1 (fma.f64 (*.f64 (*.f64 y y) (fma.f64 y y -2)) (fma.f64 (*.f64 y y) (fma.f64 y y -2) (*.f64 9 (pow.f64 x 4))) (*.f64 (pow.f64 x 8) 81))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 (pow.f64 x 8) 81) (pow.f64 (*.f64 y (sqrt.f64 (fma.f64 y y -2))) 4)) (/.f64 1 (fma.f64 (*.f64 y y) (fma.f64 y y -2) (*.f64 9 (pow.f64 x 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 3 (*.f64 x x) (*.f64 y (sqrt.f64 (fma.f64 y y -2)))) (-.f64 (*.f64 3 (*.f64 x x)) (*.f64 y (sqrt.f64 (fma.f64 y y -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (*.f64 (*.f64 y y) (fma.f64 y y -2)) (fma.f64 (*.f64 y y) (fma.f64 y y -2) (*.f64 9 (pow.f64 x 4))) (*.f64 (pow.f64 x 8) 81)) (-.f64 (*.f64 (pow.f64 x 12) 729) (pow.f64 (*.f64 y (sqrt.f64 (fma.f64 y y -2))) 6))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (*.f64 y y) (fma.f64 y y -2) (*.f64 9 (pow.f64 x 4))) (-.f64 (*.f64 (pow.f64 x 8) 81) (pow.f64 (*.f64 y (sqrt.f64 (fma.f64 y y -2))) 4))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (pow.f64 x 12) 729) (pow.f64 (*.f64 y (sqrt.f64 (fma.f64 y y -2))) 6)) (fma.f64 (*.f64 (*.f64 y y) (fma.f64 y y -2)) (fma.f64 (*.f64 y y) (fma.f64 y y -2) (*.f64 9 (pow.f64 x 4))) (*.f64 (pow.f64 x 8) 81)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (pow.f64 x 8) 81) (pow.f64 (*.f64 y (sqrt.f64 (fma.f64 y y -2))) 4)) (fma.f64 (*.f64 y y) (fma.f64 y y -2) (*.f64 9 (pow.f64 x 4))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (*.f64 (pow.f64 x 12) 729) (pow.f64 (*.f64 y (sqrt.f64 (fma.f64 y y -2))) 6))) (neg.f64 (fma.f64 (*.f64 (*.f64 y y) (fma.f64 y y -2)) (fma.f64 (*.f64 y y) (fma.f64 y y -2) (*.f64 9 (pow.f64 x 4))) (*.f64 (pow.f64 x 8) 81))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (*.f64 (pow.f64 x 8) 81) (pow.f64 (*.f64 y (sqrt.f64 (fma.f64 y y -2))) 4))) (neg.f64 (fma.f64 (*.f64 y y) (fma.f64 y y -2) (*.f64 9 (pow.f64 x 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 (pow.f64 x 12) 729 (pow.f64 (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y))) 3)) (fma.f64 (pow.f64 x 8) 81 (-.f64 (pow.f64 (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y))) 2) (*.f64 (*.f64 9 (pow.f64 x 4)) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (fma.f64 9 (pow.f64 x 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y)))) 3) (pow.f64 (fma.f64 (*.f64 y y) (neg.f64 (fma.f64 y y -2)) (*.f64 (*.f64 y y) (fma.f64 y y -2))) 3)) (+.f64 (pow.f64 (fma.f64 9 (pow.f64 x 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y)))) 2) (-.f64 (pow.f64 (fma.f64 (*.f64 y y) (neg.f64 (fma.f64 y y -2)) (*.f64 (*.f64 y y) (fma.f64 y y -2))) 2) (*.f64 (fma.f64 9 (pow.f64 x 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y)))) (fma.f64 (*.f64 y y) (neg.f64 (fma.f64 y y -2)) (*.f64 (*.f64 y y) (fma.f64 y y -2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (pow.f64 x 8) 81) (pow.f64 (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y))) 2)) (-.f64 (*.f64 9 (pow.f64 x 4)) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (fma.f64 9 (pow.f64 x 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y)))) 2) (pow.f64 (fma.f64 (*.f64 y y) (neg.f64 (fma.f64 y y -2)) (*.f64 (*.f64 y y) (fma.f64 y y -2))) 2)) (-.f64 (fma.f64 9 (pow.f64 x 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y)))) (fma.f64 (*.f64 y y) (neg.f64 (fma.f64 y y -2)) (*.f64 (*.f64 y y) (fma.f64 y y -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 9 (pow.f64 x 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 9 (pow.f64 x 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y)))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 9 (pow.f64 x 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y)))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 9 (pow.f64 x 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y))))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 9 (pow.f64 x 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 (*.f64 (*.f64 y y) (fma.f64 y y -2)) (fma.f64 (*.f64 y y) (fma.f64 y y -2) (*.f64 9 (pow.f64 x 4))) (*.f64 (pow.f64 x 8) 81)) (-.f64 (*.f64 (pow.f64 x 12) 729) (pow.f64 (*.f64 y (sqrt.f64 (fma.f64 y y -2))) 6))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 (*.f64 y y) (fma.f64 y y -2) (*.f64 9 (pow.f64 x 4))) (-.f64 (*.f64 (pow.f64 x 8) 81) (pow.f64 (*.f64 y (sqrt.f64 (fma.f64 y y -2))) 4))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 9 (pow.f64 x 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 9 (pow.f64 x 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 9 (pow.f64 x 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y)))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (*.f64 9 (pow.f64 x 4)))) (pow.f64 (pow.f64 (exp.f64 y) y) (fma.f64 y y -2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (pow.f64 (exp.f64 (pow.f64 x 4)) 9) (+.f64 1 (expm1.f64 (*.f64 (*.f64 y y) (fma.f64 y y -2))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (*.f64 9 (pow.f64 x 4)))) (+.f64 1 (expm1.f64 (*.f64 (*.f64 y y) (fma.f64 y y -2))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 9 (pow.f64 x 4)))) (exp.f64 (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 9 (pow.f64 x 4)))) (pow.f64 (pow.f64 (exp.f64 y) y) (neg.f64 (fma.f64 y y -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 9 (pow.f64 x 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y)))))) (exp.f64 (fma.f64 (*.f64 y y) (neg.f64 (fma.f64 y y -2)) (*.f64 (*.f64 y y) (fma.f64 y y -2))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 (*.f64 y y) (neg.f64 (fma.f64 y y -2)) (*.f64 (*.f64 y y) (fma.f64 y y -2)))) (exp.f64 (fma.f64 9 (pow.f64 x 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y)))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 (*.f64 y y) (neg.f64 (fma.f64 y y -2)) (*.f64 (*.f64 y y) (fma.f64 y y -2)))) (+.f64 1 (expm1.f64 (fma.f64 9 (pow.f64 x 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y))))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y)))) (pow.f64 (exp.f64 (pow.f64 x 4)) 9)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y)))) (+.f64 1 (expm1.f64 (*.f64 9 (pow.f64 x 4))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (pow.f64 (exp.f64 y) y) (neg.f64 (fma.f64 y y -2))) (+.f64 1 (expm1.f64 (*.f64 9 (pow.f64 x 4))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 9 (pow.f64 x 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 9 (pow.f64 x 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 9 (pow.f64 x 4) (*.f64 (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 9 (pow.f64 x 4) (fma.f64 (*.f64 y y) (neg.f64 (fma.f64 y y -2)) (fma.f64 (*.f64 y y) (neg.f64 (fma.f64 y y -2)) (*.f64 (*.f64 y y) (fma.f64 y y -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 9 (pow.f64 x 4) (neg.f64 (-.f64 (*.f64 (*.f64 y y) (fma.f64 y y -2)) (fma.f64 (*.f64 y y) (neg.f64 (fma.f64 y y -2)) (*.f64 (*.f64 y y) (fma.f64 y y -2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 x 4) 9 (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 x 4) 9 (*.f64 (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 x 4) 9 (fma.f64 (*.f64 y y) (neg.f64 (fma.f64 y y -2)) (fma.f64 (*.f64 y y) (neg.f64 (fma.f64 y y -2)) (*.f64 (*.f64 y y) (fma.f64 y y -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 x 4) 9 (neg.f64 (-.f64 (*.f64 (*.f64 y y) (fma.f64 y y -2)) (fma.f64 (*.f64 y y) (neg.f64 (fma.f64 y y -2)) (*.f64 (*.f64 y y) (fma.f64 y y -2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 9 (pow.f64 x 4)) 1 (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 9 (pow.f64 x 4)) 1 (*.f64 (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 9 (pow.f64 x 4)) 1 (fma.f64 (*.f64 y y) (neg.f64 (fma.f64 y y -2)) (fma.f64 (*.f64 y y) (neg.f64 (fma.f64 y y -2)) (*.f64 (*.f64 y y) (fma.f64 y y -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 9 (pow.f64 x 4)) 1 (neg.f64 (-.f64 (*.f64 (*.f64 y y) (fma.f64 y y -2)) (fma.f64 (*.f64 y y) (neg.f64 (fma.f64 y y -2)) (*.f64 (*.f64 y y) (fma.f64 y y -2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y (neg.f64 (*.f64 y (fma.f64 y y -2))) (*.f64 9 (pow.f64 x 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y y) (neg.f64 (fma.f64 y y -2)) (*.f64 9 (pow.f64 x 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y)) (*.f64 9 (pow.f64 x 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 9 (pow.f64 x 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y)))) 1 (fma.f64 (*.f64 y y) (neg.f64 (fma.f64 y y -2)) (*.f64 (*.f64 y y) (fma.f64 y y -2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 9 (pow.f64 x 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y)))) 1 (fma.f64 (neg.f64 (*.f64 y (fma.f64 y y -2))) y (*.f64 (*.f64 y y) (fma.f64 y y -2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 9 (pow.f64 x 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y)))) 1 (fma.f64 (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y))) 1 (*.f64 (*.f64 y y) (fma.f64 y y -2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 9 (pow.f64 x 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y)))) 1 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (*.f64 y y) (fma.f64 y y -2)))) (cbrt.f64 (pow.f64 (*.f64 y (sqrt.f64 (fma.f64 y y -2))) 4)) (*.f64 (*.f64 y y) (fma.f64 y y -2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 9 (pow.f64 x 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y)))) 1 (*.f64 (fma.f64 (*.f64 y y) (neg.f64 (fma.f64 y y -2)) (*.f64 (*.f64 y y) (fma.f64 y y -2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 9 (pow.f64 x 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y)))) 1 (+.f64 (fma.f64 (*.f64 y y) (neg.f64 (fma.f64 y y -2)) (*.f64 (*.f64 y y) (fma.f64 y y -2))) (fma.f64 (*.f64 y y) (neg.f64 (fma.f64 y y -2)) (*.f64 (*.f64 y y) (fma.f64 y y -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 9 (pow.f64 x 4)) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 9 (pow.f64 x 4)) (*.f64 (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 9 (pow.f64 x 4)) (fma.f64 (*.f64 y y) (neg.f64 (fma.f64 y y -2)) (fma.f64 (*.f64 y y) (neg.f64 (fma.f64 y y -2)) (*.f64 (*.f64 y y) (fma.f64 y y -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 9 (pow.f64 x 4)) (neg.f64 (-.f64 (*.f64 (*.f64 y y) (fma.f64 y y -2)) (fma.f64 (*.f64 y y) (neg.f64 (fma.f64 y y -2)) (*.f64 (*.f64 y y) (fma.f64 y y -2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 9 (pow.f64 x 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y)))) (fma.f64 (*.f64 y y) (neg.f64 (fma.f64 y y -2)) (*.f64 (*.f64 y y) (fma.f64 y y -2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 9 (pow.f64 x 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y)))) (fma.f64 (neg.f64 (*.f64 y (fma.f64 y y -2))) y (*.f64 (*.f64 y y) (fma.f64 y y -2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 9 (pow.f64 x 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y)))) (fma.f64 (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y))) 1 (*.f64 (*.f64 y y) (fma.f64 y y -2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 9 (pow.f64 x 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y)))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (*.f64 y y) (fma.f64 y y -2)))) (cbrt.f64 (pow.f64 (*.f64 y (sqrt.f64 (fma.f64 y y -2))) 4)) (*.f64 (*.f64 y y) (fma.f64 y y -2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 9 (pow.f64 x 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y)))) (*.f64 (fma.f64 (*.f64 y y) (neg.f64 (fma.f64 y y -2)) (*.f64 (*.f64 y y) (fma.f64 y y -2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 9 (pow.f64 x 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y)))) (+.f64 (fma.f64 (*.f64 y y) (neg.f64 (fma.f64 y y -2)) (*.f64 (*.f64 y y) (fma.f64 y y -2))) (fma.f64 (*.f64 y y) (neg.f64 (fma.f64 y y -2)) (*.f64 (*.f64 y y) (fma.f64 y y -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 (*.f64 y y) (neg.f64 (fma.f64 y y -2)) (*.f64 (*.f64 y y) (fma.f64 y y -2))) (fma.f64 9 (pow.f64 x 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y))) (*.f64 9 (pow.f64 x 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (*.f64 y (sqrt.f64 (fma.f64 y y -2))) 4)) (neg.f64 (cbrt.f64 (*.f64 (*.f64 y y) (fma.f64 y y -2)))) (*.f64 9 (pow.f64 x 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 x 8)) (*.f64 (pow.f64 (cbrt.f64 x) 4) 9) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 x 8)) (*.f64 (pow.f64 (cbrt.f64 x) 4) 9) (*.f64 (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 x 8)) (*.f64 (pow.f64 (cbrt.f64 x) 4) 9) (fma.f64 (*.f64 y y) (neg.f64 (fma.f64 y y -2)) (fma.f64 (*.f64 y y) (neg.f64 (fma.f64 y y -2)) (*.f64 (*.f64 y y) (fma.f64 y y -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 x 8)) (*.f64 (pow.f64 (cbrt.f64 x) 4) 9) (neg.f64 (-.f64 (*.f64 (*.f64 y y) (fma.f64 y y -2)) (fma.f64 (*.f64 y y) (neg.f64 (fma.f64 y y -2)) (*.f64 (*.f64 y y) (fma.f64 y y -2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 9 (pow.f64 x 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y))))) (pow.f64 (cbrt.f64 (fma.f64 9 (pow.f64 x 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y))))) 2) (fma.f64 (*.f64 y y) (neg.f64 (fma.f64 y y -2)) (*.f64 (*.f64 y y) (fma.f64 y y -2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 9 (pow.f64 x 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y))))) (pow.f64 (cbrt.f64 (fma.f64 9 (pow.f64 x 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y))))) 2) (fma.f64 (neg.f64 (*.f64 y (fma.f64 y y -2))) y (*.f64 (*.f64 y y) (fma.f64 y y -2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 9 (pow.f64 x 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y))))) (pow.f64 (cbrt.f64 (fma.f64 9 (pow.f64 x 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y))))) 2) (fma.f64 (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y))) 1 (*.f64 (*.f64 y y) (fma.f64 y y -2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 9 (pow.f64 x 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y))))) (pow.f64 (cbrt.f64 (fma.f64 9 (pow.f64 x 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y))))) 2) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (*.f64 y y) (fma.f64 y y -2)))) (cbrt.f64 (pow.f64 (*.f64 y (sqrt.f64 (fma.f64 y y -2))) 4)) (*.f64 (*.f64 y y) (fma.f64 y y -2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 9 (pow.f64 x 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y))))) (pow.f64 (cbrt.f64 (fma.f64 9 (pow.f64 x 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y))))) 2) (*.f64 (fma.f64 (*.f64 y y) (neg.f64 (fma.f64 y y -2)) (*.f64 (*.f64 y y) (fma.f64 y y -2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 9 (pow.f64 x 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y))))) (pow.f64 (cbrt.f64 (fma.f64 9 (pow.f64 x 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y))))) 2) (+.f64 (fma.f64 (*.f64 y y) (neg.f64 (fma.f64 y y -2)) (*.f64 (*.f64 y y) (fma.f64 y y -2))) (fma.f64 (*.f64 y y) (neg.f64 (fma.f64 y y -2)) (*.f64 (*.f64 y y) (fma.f64 y y -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 9 (pow.f64 x 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y))))) 2) (cbrt.f64 (fma.f64 9 (pow.f64 x 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y))))) (fma.f64 (*.f64 y y) (neg.f64 (fma.f64 y y -2)) (*.f64 (*.f64 y y) (fma.f64 y y -2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 9 (pow.f64 x 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y))))) 2) (cbrt.f64 (fma.f64 9 (pow.f64 x 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y))))) (fma.f64 (neg.f64 (*.f64 y (fma.f64 y y -2))) y (*.f64 (*.f64 y y) (fma.f64 y y -2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 9 (pow.f64 x 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y))))) 2) (cbrt.f64 (fma.f64 9 (pow.f64 x 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y))))) (fma.f64 (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y))) 1 (*.f64 (*.f64 y y) (fma.f64 y y -2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 9 (pow.f64 x 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y))))) 2) (cbrt.f64 (fma.f64 9 (pow.f64 x 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y))))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (*.f64 y y) (fma.f64 y y -2)))) (cbrt.f64 (pow.f64 (*.f64 y (sqrt.f64 (fma.f64 y y -2))) 4)) (*.f64 (*.f64 y y) (fma.f64 y y -2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 9 (pow.f64 x 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y))))) 2) (cbrt.f64 (fma.f64 9 (pow.f64 x 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y))))) (*.f64 (fma.f64 (*.f64 y y) (neg.f64 (fma.f64 y y -2)) (*.f64 (*.f64 y y) (fma.f64 y y -2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 9 (pow.f64 x 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y))))) 2) (cbrt.f64 (fma.f64 9 (pow.f64 x 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y))))) (+.f64 (fma.f64 (*.f64 y y) (neg.f64 (fma.f64 y y -2)) (*.f64 (*.f64 y y) (fma.f64 y y -2))) (fma.f64 (*.f64 y y) (neg.f64 (fma.f64 y y -2)) (*.f64 (*.f64 y y) (fma.f64 y y -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 9 (pow.f64 x 4))) (cbrt.f64 (*.f64 (pow.f64 x 8) 81)) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 9 (pow.f64 x 4))) (cbrt.f64 (*.f64 (pow.f64 x 8) 81)) (*.f64 (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 9 (pow.f64 x 4))) (cbrt.f64 (*.f64 (pow.f64 x 8) 81)) (fma.f64 (*.f64 y y) (neg.f64 (fma.f64 y y -2)) (fma.f64 (*.f64 y y) (neg.f64 (fma.f64 y y -2)) (*.f64 (*.f64 y y) (fma.f64 y y -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 9 (pow.f64 x 4))) (cbrt.f64 (*.f64 (pow.f64 x 8) 81)) (neg.f64 (-.f64 (*.f64 (*.f64 y y) (fma.f64 y y -2)) (fma.f64 (*.f64 y y) (neg.f64 (fma.f64 y y -2)) (*.f64 (*.f64 y y) (fma.f64 y y -2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (pow.f64 x 8) 81)) (cbrt.f64 (*.f64 9 (pow.f64 x 4))) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (pow.f64 x 8) 81)) (cbrt.f64 (*.f64 9 (pow.f64 x 4))) (*.f64 (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (pow.f64 x 8) 81)) (cbrt.f64 (*.f64 9 (pow.f64 x 4))) (fma.f64 (*.f64 y y) (neg.f64 (fma.f64 y y -2)) (fma.f64 (*.f64 y y) (neg.f64 (fma.f64 y y -2)) (*.f64 (*.f64 y y) (fma.f64 y y -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (pow.f64 x 8) 81)) (cbrt.f64 (*.f64 9 (pow.f64 x 4))) (neg.f64 (-.f64 (*.f64 (*.f64 y y) (fma.f64 y y -2)) (fma.f64 (*.f64 y y) (neg.f64 (fma.f64 y y -2)) (*.f64 (*.f64 y y) (fma.f64 y y -2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y (sqrt.f64 (fma.f64 y y -2))) (neg.f64 (*.f64 y (sqrt.f64 (fma.f64 y y -2)))) (*.f64 9 (pow.f64 x 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 9 (pow.f64 x 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y))))) (sqrt.f64 (fma.f64 9 (pow.f64 x 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y))))) (fma.f64 (*.f64 y y) (neg.f64 (fma.f64 y y -2)) (*.f64 (*.f64 y y) (fma.f64 y y -2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 9 (pow.f64 x 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y))))) (sqrt.f64 (fma.f64 9 (pow.f64 x 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y))))) (fma.f64 (neg.f64 (*.f64 y (fma.f64 y y -2))) y (*.f64 (*.f64 y y) (fma.f64 y y -2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 9 (pow.f64 x 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y))))) (sqrt.f64 (fma.f64 9 (pow.f64 x 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y))))) (fma.f64 (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y))) 1 (*.f64 (*.f64 y y) (fma.f64 y y -2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 9 (pow.f64 x 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y))))) (sqrt.f64 (fma.f64 9 (pow.f64 x 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y))))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (*.f64 y y) (fma.f64 y y -2)))) (cbrt.f64 (pow.f64 (*.f64 y (sqrt.f64 (fma.f64 y y -2))) 4)) (*.f64 (*.f64 y y) (fma.f64 y y -2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 9 (pow.f64 x 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y))))) (sqrt.f64 (fma.f64 9 (pow.f64 x 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y))))) (*.f64 (fma.f64 (*.f64 y y) (neg.f64 (fma.f64 y y -2)) (*.f64 (*.f64 y y) (fma.f64 y y -2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 9 (pow.f64 x 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y))))) (sqrt.f64 (fma.f64 9 (pow.f64 x 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y))))) (+.f64 (fma.f64 (*.f64 y y) (neg.f64 (fma.f64 y y -2)) (*.f64 (*.f64 y y) (fma.f64 y y -2))) (fma.f64 (*.f64 y y) (neg.f64 (fma.f64 y y -2)) (*.f64 (*.f64 y y) (fma.f64 y y -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 3 (*.f64 x x)) (*.f64 3 (*.f64 x x)) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 3 (*.f64 x x)) (*.f64 3 (*.f64 x x)) (*.f64 (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 3 (*.f64 x x)) (*.f64 3 (*.f64 x x)) (fma.f64 (*.f64 y y) (neg.f64 (fma.f64 y y -2)) (fma.f64 (*.f64 y y) (neg.f64 (fma.f64 y y -2)) (*.f64 (*.f64 y y) (fma.f64 y y -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 3 (*.f64 x x)) (*.f64 3 (*.f64 x x)) (neg.f64 (-.f64 (*.f64 (*.f64 y y) (fma.f64 y y -2)) (fma.f64 (*.f64 y y) (neg.f64 (fma.f64 y y -2)) (*.f64 (*.f64 y y) (fma.f64 y y -2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (fma.f64 y y -2)) (*.f64 y y) (*.f64 9 (pow.f64 x 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 (pow.f64 x 12) 729) (pow.f64 (*.f64 y (sqrt.f64 (fma.f64 y y -2))) 6)) (/.f64 1 (fma.f64 (*.f64 (*.f64 y y) (fma.f64 y y -2)) (fma.f64 (*.f64 y y) (fma.f64 y y -2) (*.f64 9 (pow.f64 x 4))) (*.f64 (pow.f64 x 8) 81))) (fma.f64 (*.f64 y y) (neg.f64 (fma.f64 y y -2)) (*.f64 (*.f64 y y) (fma.f64 y y -2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 (pow.f64 x 12) 729) (pow.f64 (*.f64 y (sqrt.f64 (fma.f64 y y -2))) 6)) (/.f64 1 (fma.f64 (*.f64 (*.f64 y y) (fma.f64 y y -2)) (fma.f64 (*.f64 y y) (fma.f64 y y -2) (*.f64 9 (pow.f64 x 4))) (*.f64 (pow.f64 x 8) 81))) (fma.f64 (neg.f64 (*.f64 y (fma.f64 y y -2))) y (*.f64 (*.f64 y y) (fma.f64 y y -2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 (pow.f64 x 12) 729) (pow.f64 (*.f64 y (sqrt.f64 (fma.f64 y y -2))) 6)) (/.f64 1 (fma.f64 (*.f64 (*.f64 y y) (fma.f64 y y -2)) (fma.f64 (*.f64 y y) (fma.f64 y y -2) (*.f64 9 (pow.f64 x 4))) (*.f64 (pow.f64 x 8) 81))) (fma.f64 (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y))) 1 (*.f64 (*.f64 y y) (fma.f64 y y -2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 (pow.f64 x 12) 729) (pow.f64 (*.f64 y (sqrt.f64 (fma.f64 y y -2))) 6)) (/.f64 1 (fma.f64 (*.f64 (*.f64 y y) (fma.f64 y y -2)) (fma.f64 (*.f64 y y) (fma.f64 y y -2) (*.f64 9 (pow.f64 x 4))) (*.f64 (pow.f64 x 8) 81))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (*.f64 y y) (fma.f64 y y -2)))) (cbrt.f64 (pow.f64 (*.f64 y (sqrt.f64 (fma.f64 y y -2))) 4)) (*.f64 (*.f64 y y) (fma.f64 y y -2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 (pow.f64 x 12) 729) (pow.f64 (*.f64 y (sqrt.f64 (fma.f64 y y -2))) 6)) (/.f64 1 (fma.f64 (*.f64 (*.f64 y y) (fma.f64 y y -2)) (fma.f64 (*.f64 y y) (fma.f64 y y -2) (*.f64 9 (pow.f64 x 4))) (*.f64 (pow.f64 x 8) 81))) (*.f64 (fma.f64 (*.f64 y y) (neg.f64 (fma.f64 y y -2)) (*.f64 (*.f64 y y) (fma.f64 y y -2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 (pow.f64 x 12) 729) (pow.f64 (*.f64 y (sqrt.f64 (fma.f64 y y -2))) 6)) (/.f64 1 (fma.f64 (*.f64 (*.f64 y y) (fma.f64 y y -2)) (fma.f64 (*.f64 y y) (fma.f64 y y -2) (*.f64 9 (pow.f64 x 4))) (*.f64 (pow.f64 x 8) 81))) (+.f64 (fma.f64 (*.f64 y y) (neg.f64 (fma.f64 y y -2)) (*.f64 (*.f64 y y) (fma.f64 y y -2))) (fma.f64 (*.f64 y y) (neg.f64 (fma.f64 y y -2)) (*.f64 (*.f64 y y) (fma.f64 y y -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 (pow.f64 x 8) 81) (pow.f64 (*.f64 y (sqrt.f64 (fma.f64 y y -2))) 4)) (/.f64 1 (fma.f64 (*.f64 y y) (fma.f64 y y -2) (*.f64 9 (pow.f64 x 4)))) (fma.f64 (*.f64 y y) (neg.f64 (fma.f64 y y -2)) (*.f64 (*.f64 y y) (fma.f64 y y -2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 (pow.f64 x 8) 81) (pow.f64 (*.f64 y (sqrt.f64 (fma.f64 y y -2))) 4)) (/.f64 1 (fma.f64 (*.f64 y y) (fma.f64 y y -2) (*.f64 9 (pow.f64 x 4)))) (fma.f64 (neg.f64 (*.f64 y (fma.f64 y y -2))) y (*.f64 (*.f64 y y) (fma.f64 y y -2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 (pow.f64 x 8) 81) (pow.f64 (*.f64 y (sqrt.f64 (fma.f64 y y -2))) 4)) (/.f64 1 (fma.f64 (*.f64 y y) (fma.f64 y y -2) (*.f64 9 (pow.f64 x 4)))) (fma.f64 (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y))) 1 (*.f64 (*.f64 y y) (fma.f64 y y -2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 (pow.f64 x 8) 81) (pow.f64 (*.f64 y (sqrt.f64 (fma.f64 y y -2))) 4)) (/.f64 1 (fma.f64 (*.f64 y y) (fma.f64 y y -2) (*.f64 9 (pow.f64 x 4)))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (*.f64 y y) (fma.f64 y y -2)))) (cbrt.f64 (pow.f64 (*.f64 y (sqrt.f64 (fma.f64 y y -2))) 4)) (*.f64 (*.f64 y y) (fma.f64 y y -2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 (pow.f64 x 8) 81) (pow.f64 (*.f64 y (sqrt.f64 (fma.f64 y y -2))) 4)) (/.f64 1 (fma.f64 (*.f64 y y) (fma.f64 y y -2) (*.f64 9 (pow.f64 x 4)))) (*.f64 (fma.f64 (*.f64 y y) (neg.f64 (fma.f64 y y -2)) (*.f64 (*.f64 y y) (fma.f64 y y -2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 (pow.f64 x 8) 81) (pow.f64 (*.f64 y (sqrt.f64 (fma.f64 y y -2))) 4)) (/.f64 1 (fma.f64 (*.f64 y y) (fma.f64 y y -2) (*.f64 9 (pow.f64 x 4)))) (+.f64 (fma.f64 (*.f64 y y) (neg.f64 (fma.f64 y y -2)) (*.f64 (*.f64 y y) (fma.f64 y y -2))) (fma.f64 (*.f64 y y) (neg.f64 (fma.f64 y y -2)) (*.f64 (*.f64 y y) (fma.f64 y y -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x x) (*.f64 (*.f64 x x) 9) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x x) (*.f64 (*.f64 x x) 9) (*.f64 (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x x) (*.f64 (*.f64 x x) 9) (fma.f64 (*.f64 y y) (neg.f64 (fma.f64 y y -2)) (fma.f64 (*.f64 y y) (neg.f64 (fma.f64 y y -2)) (*.f64 (*.f64 y y) (fma.f64 y y -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x x) (*.f64 (*.f64 x x) 9) (neg.f64 (-.f64 (*.f64 (*.f64 y y) (fma.f64 y y -2)) (fma.f64 (*.f64 y y) (neg.f64 (fma.f64 y y -2)) (*.f64 (*.f64 y y) (fma.f64 y y -2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y (neg.f64 y)) (fma.f64 y y -2) (*.f64 9 (pow.f64 x 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y)))) 2) (cbrt.f64 (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y)))) (*.f64 9 (pow.f64 x 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 (*.f64 y y) (neg.f64 (fma.f64 y y -2)) (*.f64 (*.f64 y y) (fma.f64 y y -2)))) 2) (cbrt.f64 (fma.f64 (*.f64 y y) (neg.f64 (fma.f64 y y -2)) (*.f64 (*.f64 y y) (fma.f64 y y -2)))) (fma.f64 9 (pow.f64 x 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y)))) (sqrt.f64 (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y)))) (*.f64 9 (pow.f64 x 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 (*.f64 y y) (neg.f64 (fma.f64 y y -2)) (*.f64 (*.f64 y y) (fma.f64 y y -2)))) (sqrt.f64 (fma.f64 (*.f64 y y) (neg.f64 (fma.f64 y y -2)) (*.f64 (*.f64 y y) (fma.f64 y y -2)))) (fma.f64 9 (pow.f64 x 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (*.f64 y (sqrt.f64 (fma.f64 y y -2)))) (*.f64 y (sqrt.f64 (fma.f64 y y -2))) (*.f64 9 (pow.f64 x 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 (*.f64 (*.f64 y y) (fma.f64 y y -2)) (*.f64 9 (pow.f64 x 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 3 (*.f64 x x) (*.f64 y (sqrt.f64 (fma.f64 y y -2)))) (-.f64 (*.f64 3 (*.f64 x x)) (*.f64 y (sqrt.f64 (fma.f64 y y -2)))) (fma.f64 (*.f64 y y) (neg.f64 (fma.f64 y y -2)) (*.f64 (*.f64 y y) (fma.f64 y y -2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 3 (*.f64 x x) (*.f64 y (sqrt.f64 (fma.f64 y y -2)))) (-.f64 (*.f64 3 (*.f64 x x)) (*.f64 y (sqrt.f64 (fma.f64 y y -2)))) (fma.f64 (neg.f64 (*.f64 y (fma.f64 y y -2))) y (*.f64 (*.f64 y y) (fma.f64 y y -2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 3 (*.f64 x x) (*.f64 y (sqrt.f64 (fma.f64 y y -2)))) (-.f64 (*.f64 3 (*.f64 x x)) (*.f64 y (sqrt.f64 (fma.f64 y y -2)))) (fma.f64 (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y))) 1 (*.f64 (*.f64 y y) (fma.f64 y y -2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 3 (*.f64 x x) (*.f64 y (sqrt.f64 (fma.f64 y y -2)))) (-.f64 (*.f64 3 (*.f64 x x)) (*.f64 y (sqrt.f64 (fma.f64 y y -2)))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (*.f64 y y) (fma.f64 y y -2)))) (cbrt.f64 (pow.f64 (*.f64 y (sqrt.f64 (fma.f64 y y -2))) 4)) (*.f64 (*.f64 y y) (fma.f64 y y -2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 3 (*.f64 x x) (*.f64 y (sqrt.f64 (fma.f64 y y -2)))) (-.f64 (*.f64 3 (*.f64 x x)) (*.f64 y (sqrt.f64 (fma.f64 y y -2)))) (*.f64 (fma.f64 (*.f64 y y) (neg.f64 (fma.f64 y y -2)) (*.f64 (*.f64 y y) (fma.f64 y y -2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 3 (*.f64 x x) (*.f64 y (sqrt.f64 (fma.f64 y y -2)))) (-.f64 (*.f64 3 (*.f64 x x)) (*.f64 y (sqrt.f64 (fma.f64 y y -2)))) (+.f64 (fma.f64 (*.f64 y y) (neg.f64 (fma.f64 y y -2)) (*.f64 (*.f64 y y) (fma.f64 y y -2))) (fma.f64 (*.f64 y y) (neg.f64 (fma.f64 y y -2)) (*.f64 (*.f64 y y) (fma.f64 y y -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 y) (*.f64 y (fma.f64 y y -2)) (*.f64 9 (pow.f64 x 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (cbrt.f64 (pow.f64 (*.f64 y (sqrt.f64 (fma.f64 y y -2))) 4))) (cbrt.f64 (*.f64 (*.f64 y y) (fma.f64 y y -2))) (*.f64 9 (pow.f64 x 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 y (neg.f64 y)) 1) (fma.f64 y y -2) (*.f64 9 (pow.f64 x 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 y (neg.f64 y)) (pow.f64 (cbrt.f64 (fma.f64 y y -2)) 2)) (cbrt.f64 (fma.f64 y y -2)) (*.f64 9 (pow.f64 x 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 y (neg.f64 y)) (sqrt.f64 (fma.f64 y y -2))) (sqrt.f64 (fma.f64 y y -2)) (*.f64 9 (pow.f64 x 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 9 (cbrt.f64 (pow.f64 x 8))) (pow.f64 (cbrt.f64 x) 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 9 (cbrt.f64 (pow.f64 x 8))) (pow.f64 (cbrt.f64 x) 4) (*.f64 (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 9 (cbrt.f64 (pow.f64 x 8))) (pow.f64 (cbrt.f64 x) 4) (fma.f64 (*.f64 y y) (neg.f64 (fma.f64 y y -2)) (fma.f64 (*.f64 y y) (neg.f64 (fma.f64 y y -2)) (*.f64 (*.f64 y y) (fma.f64 y y -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 9 (cbrt.f64 (pow.f64 x 8))) (pow.f64 (cbrt.f64 x) 4) (neg.f64 (-.f64 (*.f64 (*.f64 y y) (fma.f64 y y -2)) (fma.f64 (*.f64 y y) (neg.f64 (fma.f64 y y -2)) (*.f64 (*.f64 y y) (fma.f64 y y -2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 9 (*.f64 x x)) (*.f64 x x) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 9 (*.f64 x x)) (*.f64 x x) (*.f64 (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 9 (*.f64 x x)) (*.f64 x x) (fma.f64 (*.f64 y y) (neg.f64 (fma.f64 y y -2)) (fma.f64 (*.f64 y y) (neg.f64 (fma.f64 y y -2)) (*.f64 (*.f64 y y) (fma.f64 y y -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 9 (*.f64 x x)) (*.f64 x x) (neg.f64 (-.f64 (*.f64 (*.f64 y y) (fma.f64 y y -2)) (fma.f64 (*.f64 y y) (neg.f64 (fma.f64 y y -2)) (*.f64 (*.f64 y y) (fma.f64 y y -2))))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 9 (pow.f64 x 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 9 (pow.f64 x 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 9 (pow.f64 x 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 9 (pow.f64 x 4) (*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y))))))))))

simplify82.0ms (5.5%)

Algorithm
egg-herbie
Rules
656×fma-def_binary64
640×fma-neg_binary64
572×distribute-rgt-neg-in_binary64
454×cancel-sign-sub-inv_binary64
438×distribute-lft-neg-in_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
020422
150386
2127386
3373386
41239386
52987386
64902386
76382386
87408386
Stop Event
node limit
Counts
194 → 180
Calls
Call 1
Inputs
(*.f64 -1 (*.f64 (-.f64 (pow.f64 y 2) 2) (pow.f64 y 2)))
(+.f64 (*.f64 9 (pow.f64 x 4)) (*.f64 -1 (*.f64 (-.f64 (pow.f64 y 2) 2) (pow.f64 y 2))))
(+.f64 (*.f64 9 (pow.f64 x 4)) (*.f64 -1 (*.f64 (-.f64 (pow.f64 y 2) 2) (pow.f64 y 2))))
(+.f64 (*.f64 9 (pow.f64 x 4)) (*.f64 -1 (*.f64 (-.f64 (pow.f64 y 2) 2) (pow.f64 y 2))))
(*.f64 9 (pow.f64 x 4))
(+.f64 (*.f64 9 (pow.f64 x 4)) (*.f64 -1 (*.f64 (-.f64 (pow.f64 y 2) 2) (pow.f64 y 2))))
(+.f64 (*.f64 9 (pow.f64 x 4)) (*.f64 -1 (*.f64 (-.f64 (pow.f64 y 2) 2) (pow.f64 y 2))))
(+.f64 (*.f64 9 (pow.f64 x 4)) (*.f64 -1 (*.f64 (-.f64 (pow.f64 y 2) 2) (pow.f64 y 2))))
(*.f64 9 (pow.f64 x 4))
(+.f64 (*.f64 9 (pow.f64 x 4)) (*.f64 -1 (*.f64 (-.f64 (pow.f64 y 2) 2) (pow.f64 y 2))))
(+.f64 (*.f64 9 (pow.f64 x 4)) (*.f64 -1 (*.f64 (-.f64 (pow.f64 y 2) 2) (pow.f64 y 2))))
(+.f64 (*.f64 9 (pow.f64 x 4)) (*.f64 -1 (*.f64 (-.f64 (pow.f64 y 2) 2) (pow.f64 y 2))))
(*.f64 9 (pow.f64 x 4))
(+.f64 (*.f64 9 (pow.f64 x 4)) (*.f64 2 (pow.f64 y 2)))
(+.f64 (*.f64 9 (pow.f64 x 4)) (+.f64 (*.f64 2 (pow.f64 y 2)) (*.f64 -1 (pow.f64 y 4))))
(+.f64 (*.f64 9 (pow.f64 x 4)) (+.f64 (*.f64 2 (pow.f64 y 2)) (*.f64 -1 (pow.f64 y 4))))
(*.f64 -1 (pow.f64 y 4))
(+.f64 (*.f64 2 (pow.f64 y 2)) (*.f64 -1 (pow.f64 y 4)))
(+.f64 (*.f64 9 (pow.f64 x 4)) (+.f64 (*.f64 2 (pow.f64 y 2)) (*.f64 -1 (pow.f64 y 4))))
(+.f64 (*.f64 9 (pow.f64 x 4)) (+.f64 (*.f64 2 (pow.f64 y 2)) (*.f64 -1 (pow.f64 y 4))))
(*.f64 -1 (pow.f64 y 4))
(+.f64 (*.f64 2 (pow.f64 y 2)) (*.f64 -1 (pow.f64 y 4)))
(+.f64 (*.f64 9 (pow.f64 x 4)) (+.f64 (*.f64 2 (pow.f64 y 2)) (*.f64 -1 (pow.f64 y 4))))
(+.f64 (*.f64 9 (pow.f64 x 4)) (+.f64 (*.f64 2 (pow.f64 y 2)) (*.f64 -1 (pow.f64 y 4))))
Outputs
(*.f64 -1 (*.f64 (-.f64 (pow.f64 y 2) 2) (pow.f64 y 2)))
(neg.f64 (*.f64 (*.f64 y y) (+.f64 (*.f64 y y) -2)))
(*.f64 (fma.f64 y y -2) (neg.f64 (*.f64 y y)))
(*.f64 (*.f64 y y) (-.f64 2 (*.f64 y y)))
(*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y)))
(+.f64 (*.f64 9 (pow.f64 x 4)) (*.f64 -1 (*.f64 (-.f64 (pow.f64 y 2) 2) (pow.f64 y 2))))
(fma.f64 9 (pow.f64 x 4) (neg.f64 (*.f64 (*.f64 y y) (+.f64 (*.f64 y y) -2))))
(-.f64 (*.f64 9 (pow.f64 x 4)) (*.f64 y (*.f64 y (fma.f64 y y -2))))
(-.f64 (*.f64 9 (pow.f64 x 4)) (*.f64 (*.f64 y y) (fma.f64 y y -2)))
(fma.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y)) (*.f64 9 (pow.f64 x 4)))
(+.f64 (*.f64 9 (pow.f64 x 4)) (*.f64 -1 (*.f64 (-.f64 (pow.f64 y 2) 2) (pow.f64 y 2))))
(fma.f64 9 (pow.f64 x 4) (neg.f64 (*.f64 (*.f64 y y) (+.f64 (*.f64 y y) -2))))
(-.f64 (*.f64 9 (pow.f64 x 4)) (*.f64 y (*.f64 y (fma.f64 y y -2))))
(-.f64 (*.f64 9 (pow.f64 x 4)) (*.f64 (*.f64 y y) (fma.f64 y y -2)))
(fma.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y)) (*.f64 9 (pow.f64 x 4)))
(+.f64 (*.f64 9 (pow.f64 x 4)) (*.f64 -1 (*.f64 (-.f64 (pow.f64 y 2) 2) (pow.f64 y 2))))
(fma.f64 9 (pow.f64 x 4) (neg.f64 (*.f64 (*.f64 y y) (+.f64 (*.f64 y y) -2))))
(-.f64 (*.f64 9 (pow.f64 x 4)) (*.f64 y (*.f64 y (fma.f64 y y -2))))
(-.f64 (*.f64 9 (pow.f64 x 4)) (*.f64 (*.f64 y y) (fma.f64 y y -2)))
(fma.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y)) (*.f64 9 (pow.f64 x 4)))
(*.f64 9 (pow.f64 x 4))
(+.f64 (*.f64 9 (pow.f64 x 4)) (*.f64 -1 (*.f64 (-.f64 (pow.f64 y 2) 2) (pow.f64 y 2))))
(fma.f64 9 (pow.f64 x 4) (neg.f64 (*.f64 (*.f64 y y) (+.f64 (*.f64 y y) -2))))
(-.f64 (*.f64 9 (pow.f64 x 4)) (*.f64 y (*.f64 y (fma.f64 y y -2))))
(-.f64 (*.f64 9 (pow.f64 x 4)) (*.f64 (*.f64 y y) (fma.f64 y y -2)))
(fma.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y)) (*.f64 9 (pow.f64 x 4)))
(+.f64 (*.f64 9 (pow.f64 x 4)) (*.f64 -1 (*.f64 (-.f64 (pow.f64 y 2) 2) (pow.f64 y 2))))
(fma.f64 9 (pow.f64 x 4) (neg.f64 (*.f64 (*.f64 y y) (+.f64 (*.f64 y y) -2))))
(-.f64 (*.f64 9 (pow.f64 x 4)) (*.f64 y (*.f64 y (fma.f64 y y -2))))
(-.f64 (*.f64 9 (pow.f64 x 4)) (*.f64 (*.f64 y y) (fma.f64 y y -2)))
(fma.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y)) (*.f64 9 (pow.f64 x 4)))
(+.f64 (*.f64 9 (pow.f64 x 4)) (*.f64 -1 (*.f64 (-.f64 (pow.f64 y 2) 2) (pow.f64 y 2))))
(fma.f64 9 (pow.f64 x 4) (neg.f64 (*.f64 (*.f64 y y) (+.f64 (*.f64 y y) -2))))
(-.f64 (*.f64 9 (pow.f64 x 4)) (*.f64 y (*.f64 y (fma.f64 y y -2))))
(-.f64 (*.f64 9 (pow.f64 x 4)) (*.f64 (*.f64 y y) (fma.f64 y y -2)))
(fma.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y)) (*.f64 9 (pow.f64 x 4)))
(*.f64 9 (pow.f64 x 4))
(+.f64 (*.f64 9 (pow.f64 x 4)) (*.f64 -1 (*.f64 (-.f64 (pow.f64 y 2) 2) (pow.f64 y 2))))
(fma.f64 9 (pow.f64 x 4) (neg.f64 (*.f64 (*.f64 y y) (+.f64 (*.f64 y y) -2))))
(-.f64 (*.f64 9 (pow.f64 x 4)) (*.f64 y (*.f64 y (fma.f64 y y -2))))
(-.f64 (*.f64 9 (pow.f64 x 4)) (*.f64 (*.f64 y y) (fma.f64 y y -2)))
(fma.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y)) (*.f64 9 (pow.f64 x 4)))
(+.f64 (*.f64 9 (pow.f64 x 4)) (*.f64 -1 (*.f64 (-.f64 (pow.f64 y 2) 2) (pow.f64 y 2))))
(fma.f64 9 (pow.f64 x 4) (neg.f64 (*.f64 (*.f64 y y) (+.f64 (*.f64 y y) -2))))
(-.f64 (*.f64 9 (pow.f64 x 4)) (*.f64 y (*.f64 y (fma.f64 y y -2))))
(-.f64 (*.f64 9 (pow.f64 x 4)) (*.f64 (*.f64 y y) (fma.f64 y y -2)))
(fma.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y)) (*.f64 9 (pow.f64 x 4)))
(+.f64 (*.f64 9 (pow.f64 x 4)) (*.f64 -1 (*.f64 (-.f64 (pow.f64 y 2) 2) (pow.f64 y 2))))
(fma.f64 9 (pow.f64 x 4) (neg.f64 (*.f64 (*.f64 y y) (+.f64 (*.f64 y y) -2))))
(-.f64 (*.f64 9 (pow.f64 x 4)) (*.f64 y (*.f64 y (fma.f64 y y -2))))
(-.f64 (*.f64 9 (pow.f64 x 4)) (*.f64 (*.f64 y y) (fma.f64 y y -2)))
(fma.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y)) (*.f64 9 (pow.f64 x 4)))
(*.f64 9 (pow.f64 x 4))
(+.f64 (*.f64 9 (pow.f64 x 4)) (*.f64 2 (pow.f64 y 2)))
(fma.f64 9 (pow.f64 x 4) (*.f64 2 (*.f64 y y)))
(fma.f64 2 (*.f64 y y) (*.f64 9 (pow.f64 x 4)))
(fma.f64 y (*.f64 y 2) (*.f64 9 (pow.f64 x 4)))
(+.f64 (*.f64 9 (pow.f64 x 4)) (+.f64 (*.f64 2 (pow.f64 y 2)) (*.f64 -1 (pow.f64 y 4))))
(fma.f64 9 (pow.f64 x 4) (neg.f64 (*.f64 (*.f64 y y) (+.f64 (*.f64 y y) -2))))
(-.f64 (*.f64 9 (pow.f64 x 4)) (*.f64 y (*.f64 y (fma.f64 y y -2))))
(-.f64 (*.f64 9 (pow.f64 x 4)) (*.f64 (*.f64 y y) (fma.f64 y y -2)))
(fma.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y)) (*.f64 9 (pow.f64 x 4)))
(+.f64 (*.f64 9 (pow.f64 x 4)) (+.f64 (*.f64 2 (pow.f64 y 2)) (*.f64 -1 (pow.f64 y 4))))
(fma.f64 9 (pow.f64 x 4) (neg.f64 (*.f64 (*.f64 y y) (+.f64 (*.f64 y y) -2))))
(-.f64 (*.f64 9 (pow.f64 x 4)) (*.f64 y (*.f64 y (fma.f64 y y -2))))
(-.f64 (*.f64 9 (pow.f64 x 4)) (*.f64 (*.f64 y y) (fma.f64 y y -2)))
(fma.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y)) (*.f64 9 (pow.f64 x 4)))
(*.f64 -1 (pow.f64 y 4))
(neg.f64 (pow.f64 y 4))
(+.f64 (*.f64 2 (pow.f64 y 2)) (*.f64 -1 (pow.f64 y 4)))
(neg.f64 (*.f64 (*.f64 y y) (+.f64 (*.f64 y y) -2)))
(*.f64 (fma.f64 y y -2) (neg.f64 (*.f64 y y)))
(*.f64 (*.f64 y y) (-.f64 2 (*.f64 y y)))
(*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y)))
(+.f64 (*.f64 9 (pow.f64 x 4)) (+.f64 (*.f64 2 (pow.f64 y 2)) (*.f64 -1 (pow.f64 y 4))))
(fma.f64 9 (pow.f64 x 4) (neg.f64 (*.f64 (*.f64 y y) (+.f64 (*.f64 y y) -2))))
(-.f64 (*.f64 9 (pow.f64 x 4)) (*.f64 y (*.f64 y (fma.f64 y y -2))))
(-.f64 (*.f64 9 (pow.f64 x 4)) (*.f64 (*.f64 y y) (fma.f64 y y -2)))
(fma.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y)) (*.f64 9 (pow.f64 x 4)))
(+.f64 (*.f64 9 (pow.f64 x 4)) (+.f64 (*.f64 2 (pow.f64 y 2)) (*.f64 -1 (pow.f64 y 4))))
(fma.f64 9 (pow.f64 x 4) (neg.f64 (*.f64 (*.f64 y y) (+.f64 (*.f64 y y) -2))))
(-.f64 (*.f64 9 (pow.f64 x 4)) (*.f64 y (*.f64 y (fma.f64 y y -2))))
(-.f64 (*.f64 9 (pow.f64 x 4)) (*.f64 (*.f64 y y) (fma.f64 y y -2)))
(fma.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y)) (*.f64 9 (pow.f64 x 4)))
(*.f64 -1 (pow.f64 y 4))
(neg.f64 (pow.f64 y 4))
(+.f64 (*.f64 2 (pow.f64 y 2)) (*.f64 -1 (pow.f64 y 4)))
(neg.f64 (*.f64 (*.f64 y y) (+.f64 (*.f64 y y) -2)))
(*.f64 (fma.f64 y y -2) (neg.f64 (*.f64 y y)))
(*.f64 (*.f64 y y) (-.f64 2 (*.f64 y y)))
(*.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y)))
(+.f64 (*.f64 9 (pow.f64 x 4)) (+.f64 (*.f64 2 (pow.f64 y 2)) (*.f64 -1 (pow.f64 y 4))))
(fma.f64 9 (pow.f64 x 4) (neg.f64 (*.f64 (*.f64 y y) (+.f64 (*.f64 y y) -2))))
(-.f64 (*.f64 9 (pow.f64 x 4)) (*.f64 y (*.f64 y (fma.f64 y y -2))))
(-.f64 (*.f64 9 (pow.f64 x 4)) (*.f64 (*.f64 y y) (fma.f64 y y -2)))
(fma.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y)) (*.f64 9 (pow.f64 x 4)))
(+.f64 (*.f64 9 (pow.f64 x 4)) (+.f64 (*.f64 2 (pow.f64 y 2)) (*.f64 -1 (pow.f64 y 4))))
(fma.f64 9 (pow.f64 x 4) (neg.f64 (*.f64 (*.f64 y y) (+.f64 (*.f64 y y) -2))))
(-.f64 (*.f64 9 (pow.f64 x 4)) (*.f64 y (*.f64 y (fma.f64 y y -2))))
(-.f64 (*.f64 9 (pow.f64 x 4)) (*.f64 (*.f64 y y) (fma.f64 y y -2)))
(fma.f64 (fma.f64 y y -2) (*.f64 y (neg.f64 y)) (*.f64 9 (pow.f64 x 4)))

prune186.0ms (12.6%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New1791180
Fresh000
Picked101
Done000
Total1801181
Error
0b
Counts
181 → 1
Alt Table
StatusErrorProgram
0b
(fma.f64 (neg.f64 y) (*.f64 y (fma.f64 y y -2)) (*.f64 9 (pow.f64 x 4)))
Compiler

Compiled 5974 to 3287 computations (45% saved)

localize11.0ms (0.8%)

prune1.0ms (0.1%)

Pruning

1 alts after pruning (0 fresh and 1 done)

PrunedKeptTotal
New000
Fresh000
Picked011
Done000
Total011
Error
0b
Counts
1 → 1
Alt Table
StatusErrorProgram
0b
(fma.f64 (neg.f64 y) (*.f64 y (fma.f64 y y -2)) (*.f64 9 (pow.f64 x 4)))
Compiler

Compiled 18 to 13 computations (27.8% saved)

regimes16.0ms (1.1%)

Accuracy

Total -62.0b remaining (-∞%)

Threshold costs -62.0b (-∞%)

Counts
2 → 1
Calls
Call 1
Inputs
(fma.f64 (neg.f64 y) (*.f64 y (fma.f64 y y -2)) (*.f64 9 (pow.f64 x 4)))
(-.f64 (*.f64 9 (pow.f64 x 4)) (*.f64 (*.f64 y y) (-.f64 (*.f64 y y) 2)))
Outputs
(fma.f64 (neg.f64 y) (*.f64 y (fma.f64 y y -2)) (*.f64 9 (pow.f64 x 4)))
Results
3.0ms0bx
2.0ms0by
2.0ms0b(-.f64 (*.f64 9 (pow.f64 x 4)) (*.f64 (*.f64 y y) (-.f64 (*.f64 y y) 2)))
2.0ms0b(*.f64 9 (pow.f64 x 4))
2.0ms0b(pow.f64 x 4)
2.0ms0b(*.f64 (*.f64 y y) (-.f64 (*.f64 y y) 2))
2.0ms0b(*.f64 y y)
Compiler

Compiled 82 to 54 computations (34.1% saved)

simplify2.0ms (0.2%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
01220
11820
22020
32120
Stop Event
saturated
Calls
Call 1
Inputs
(fma.f64 (neg.f64 y) (*.f64 y (fma.f64 y y -2)) (*.f64 9 (pow.f64 x 4)))
Outputs
(fma.f64 (neg.f64 y) (*.f64 y (fma.f64 y y -2)) (*.f64 9 (pow.f64 x 4)))

end19.0ms (1.3%)

Stop Event
done
Compiler

Compiled 32 to 22 computations (31.3% saved)

Profiling

Loading profile data...