Details

Time bar (total: 6.0s)

analyze417.0ms (7%)

Algorithm
search
Search
TrueOtherFalseIter
0%99.9%0.1%0
0%99.9%0.1%1
0%99.9%0.1%2
0%99.9%0.1%3
0%99.9%0.1%4
0%99.9%0.1%5
0%99.9%0.1%6
12.5%87.4%0.1%7
18.7%81.1%0.1%8
25%70.2%4.8%9
37.4%56.9%5.6%10
44.5%49.9%5.6%11
50.3%41.3%8.3%12
Compiler

Compiled 11 to 8 computations (27.3% saved)

sample1.1s (18.5%)

Results
1.1s8256×body256valid
36.0ms383×body256invalid

preprocess41.0ms (0.7%)

Algorithm
egg-herbie
Rules
447×fma-def_binary64
313×fma-neg_binary64
108×distribute-rgt-neg-in_binary64
90×cancel-sign-sub-inv_binary64
78×distribute-rgt-in_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01640
14040
27540
311040
419740
533640
668740
7143040
8163740
9169140
10169440
11169440
12169440
033
133
Stop Event
unsound
saturated
Calls
Call 1
Inputs
0
1
2
Outputs
0
1
0
2
Call 2
Inputs
(-.f64 (*.f64 (*.f64 x 3) y) z)
(-.f64 (*.f64 (*.f64 y 3) x) z)
(-.f64 (*.f64 (*.f64 z 3) y) x)
(-.f64 (*.f64 (*.f64 x 3) z) y)
Outputs
(-.f64 (*.f64 (*.f64 x 3) y) z)
(-.f64 (*.f64 x (*.f64 3 y)) z)
(-.f64 (*.f64 3 (*.f64 x y)) z)
(-.f64 (*.f64 (*.f64 y 3) x) z)
(-.f64 (*.f64 x (*.f64 3 y)) z)
(-.f64 (*.f64 3 (*.f64 x y)) z)
(-.f64 (*.f64 (*.f64 z 3) y) x)
(-.f64 (*.f64 y (*.f64 3 z)) x)
(fma.f64 z (*.f64 3 y) (neg.f64 x))
(fma.f64 3 (*.f64 y z) (neg.f64 x))
(-.f64 (*.f64 z (*.f64 3 y)) x)
(-.f64 (*.f64 (*.f64 x 3) z) y)
(fma.f64 (*.f64 x 3) z (neg.f64 y))
Symmetry

(sort x y)

Compiler

Compiled 13 to 10 computations (23.1% saved)

simplify16.0ms (0.3%)

Algorithm
egg-herbie
Rules
192×fma-def_binary64
125×fma-neg_binary64
44×distribute-rgt-neg-in_binary64
37×cancel-sign-sub-inv_binary64
27×unsub-neg_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0810
11510
22910
34210
47610
513310
624610
742310
857710
969610
1074610
1174810
Stop Event
saturated
Counts
1 → 2
Calls
Call 1
Inputs
(-.f64 (*.f64 (*.f64 x 3) y) z)
Outputs
(-.f64 (*.f64 (*.f64 x 3) y) z)
(-.f64 (*.f64 x (*.f64 3 y)) z)
(fma.f64 3 (*.f64 x y) (neg.f64 z))
(neg.f64 (fma.f64 x (*.f64 y -3) z))

eval1.0ms (0%)

Compiler

Compiled 17 to 11 computations (35.3% saved)

prune2.0ms (0%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
0.1b
Counts
3 → 2
Alt Table
Click to see full alt table
StatusErrorProgram
0.1b
(neg.f64 (fma.f64 x (*.f64 y -3) z))
0.1b
(-.f64 (*.f64 (*.f64 x 3) y) z)
Compiler

Compiled 20 to 14 computations (30% saved)

localize27.0ms (0.5%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(*.f64 (*.f64 x 3) y)
0.0b
(-.f64 (*.f64 (*.f64 x 3) y) z)
0.0b
(-.f64 (*.f64 (*.f64 x 3) y) z)
0.2b
(*.f64 (*.f64 x 3) y)
Compiler

Compiled 22 to 13 computations (40.9% saved)

series7.0ms (0.1%)

Counts
2 → 60
Calls

15 calls:

TimeVariablePointExpression
1.0ms
y
@0
(*.f64 (*.f64 x 3) y)
1.0ms
x
@inf
(*.f64 (*.f64 x 3) y)
1.0ms
x
@0
(*.f64 (*.f64 x 3) y)
1.0ms
y
@inf
(*.f64 (*.f64 x 3) y)
0.0ms
z
@0
(-.f64 (*.f64 (*.f64 x 3) y) z)

rewrite51.0ms (0.9%)

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

Useful iterations: 0 (0.0ms)

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

simplify40.0ms (0.7%)

Algorithm
egg-herbie
Rules
195×fma-def_binary64
122×fma-neg_binary64
44×distribute-rgt-neg-in_binary64
37×cancel-sign-sub-inv_binary64
28×unsub-neg_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
011485
119485
232485
343485
476485
5133485
6246485
7422485
8576485
9695485
10745485
11747485
Stop Event
saturated
Counts
109 → 56
Calls
Call 1
Inputs
(*.f64 3 (*.f64 y x))
(*.f64 3 (*.f64 y x))
(*.f64 3 (*.f64 y x))
(*.f64 3 (*.f64 y x))
(*.f64 3 (*.f64 y x))
(*.f64 3 (*.f64 y x))
(*.f64 3 (*.f64 y x))
(*.f64 3 (*.f64 y x))
(*.f64 3 (*.f64 y x))
(*.f64 3 (*.f64 y x))
(*.f64 3 (*.f64 y x))
(*.f64 3 (*.f64 y x))
(*.f64 3 (*.f64 y x))
(*.f64 3 (*.f64 y x))
(*.f64 3 (*.f64 y x))
(*.f64 3 (*.f64 y x))
(*.f64 3 (*.f64 y x))
(*.f64 3 (*.f64 y x))
(*.f64 3 (*.f64 y x))
(*.f64 3 (*.f64 y x))
(*.f64 3 (*.f64 y x))
(*.f64 3 (*.f64 y x))
(*.f64 3 (*.f64 y x))
(*.f64 3 (*.f64 y x))
(*.f64 -1 z)
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(*.f64 3 (*.f64 y x))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(*.f64 3 (*.f64 y x))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(*.f64 -1 z)
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(*.f64 3 (*.f64 y x))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(*.f64 3 (*.f64 y x))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(*.f64 3 (*.f64 y x))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(*.f64 -1 z)
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(*.f64 -1 z)
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
Outputs
(*.f64 3 (*.f64 y x))
(*.f64 x (*.f64 3 y))
(*.f64 3 (*.f64 y x))
(*.f64 x (*.f64 3 y))
(*.f64 3 (*.f64 y x))
(*.f64 x (*.f64 3 y))
(*.f64 3 (*.f64 y x))
(*.f64 x (*.f64 3 y))
(*.f64 3 (*.f64 y x))
(*.f64 x (*.f64 3 y))
(*.f64 3 (*.f64 y x))
(*.f64 x (*.f64 3 y))
(*.f64 3 (*.f64 y x))
(*.f64 x (*.f64 3 y))
(*.f64 3 (*.f64 y x))
(*.f64 x (*.f64 3 y))
(*.f64 3 (*.f64 y x))
(*.f64 x (*.f64 3 y))
(*.f64 3 (*.f64 y x))
(*.f64 x (*.f64 3 y))
(*.f64 3 (*.f64 y x))
(*.f64 x (*.f64 3 y))
(*.f64 3 (*.f64 y x))
(*.f64 x (*.f64 3 y))
(*.f64 3 (*.f64 y x))
(*.f64 x (*.f64 3 y))
(*.f64 3 (*.f64 y x))
(*.f64 x (*.f64 3 y))
(*.f64 3 (*.f64 y x))
(*.f64 x (*.f64 3 y))
(*.f64 3 (*.f64 y x))
(*.f64 x (*.f64 3 y))
(*.f64 3 (*.f64 y x))
(*.f64 x (*.f64 3 y))
(*.f64 3 (*.f64 y x))
(*.f64 x (*.f64 3 y))
(*.f64 3 (*.f64 y x))
(*.f64 x (*.f64 3 y))
(*.f64 3 (*.f64 y x))
(*.f64 x (*.f64 3 y))
(*.f64 3 (*.f64 y x))
(*.f64 x (*.f64 3 y))
(*.f64 3 (*.f64 y x))
(*.f64 x (*.f64 3 y))
(*.f64 3 (*.f64 y x))
(*.f64 x (*.f64 3 y))
(*.f64 3 (*.f64 y x))
(*.f64 x (*.f64 3 y))
(*.f64 -1 z)
(neg.f64 z)
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 x (*.f64 3 y)) z)
(-.f64 (*.f64 3 (*.f64 y x)) z)
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 x (*.f64 3 y)) z)
(-.f64 (*.f64 3 (*.f64 y x)) z)
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 x (*.f64 3 y)) z)
(-.f64 (*.f64 3 (*.f64 y x)) z)
(*.f64 3 (*.f64 y x))
(*.f64 x (*.f64 3 y))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 x (*.f64 3 y)) z)
(-.f64 (*.f64 3 (*.f64 y x)) z)
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 x (*.f64 3 y)) z)
(-.f64 (*.f64 3 (*.f64 y x)) z)
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 x (*.f64 3 y)) z)
(-.f64 (*.f64 3 (*.f64 y x)) z)
(*.f64 3 (*.f64 y x))
(*.f64 x (*.f64 3 y))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 x (*.f64 3 y)) z)
(-.f64 (*.f64 3 (*.f64 y x)) z)
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 x (*.f64 3 y)) z)
(-.f64 (*.f64 3 (*.f64 y x)) z)
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 x (*.f64 3 y)) z)
(-.f64 (*.f64 3 (*.f64 y x)) z)
(*.f64 -1 z)
(neg.f64 z)
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 x (*.f64 3 y)) z)
(-.f64 (*.f64 3 (*.f64 y x)) z)
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 x (*.f64 3 y)) z)
(-.f64 (*.f64 3 (*.f64 y x)) z)
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 x (*.f64 3 y)) z)
(-.f64 (*.f64 3 (*.f64 y x)) z)
(*.f64 3 (*.f64 y x))
(*.f64 x (*.f64 3 y))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 x (*.f64 3 y)) z)
(-.f64 (*.f64 3 (*.f64 y x)) z)
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 x (*.f64 3 y)) z)
(-.f64 (*.f64 3 (*.f64 y x)) z)
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 x (*.f64 3 y)) z)
(-.f64 (*.f64 3 (*.f64 y x)) z)
(*.f64 3 (*.f64 y x))
(*.f64 x (*.f64 3 y))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 x (*.f64 3 y)) z)
(-.f64 (*.f64 3 (*.f64 y x)) z)
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 x (*.f64 3 y)) z)
(-.f64 (*.f64 3 (*.f64 y x)) z)
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 x (*.f64 3 y)) z)
(-.f64 (*.f64 3 (*.f64 y x)) z)
(*.f64 3 (*.f64 y x))
(*.f64 x (*.f64 3 y))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 x (*.f64 3 y)) z)
(-.f64 (*.f64 3 (*.f64 y x)) z)
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 x (*.f64 3 y)) z)
(-.f64 (*.f64 3 (*.f64 y x)) z)
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 x (*.f64 3 y)) z)
(-.f64 (*.f64 3 (*.f64 y x)) z)
(*.f64 -1 z)
(neg.f64 z)
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 x (*.f64 3 y)) z)
(-.f64 (*.f64 3 (*.f64 y x)) z)
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 x (*.f64 3 y)) z)
(-.f64 (*.f64 3 (*.f64 y x)) z)
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 x (*.f64 3 y)) z)
(-.f64 (*.f64 3 (*.f64 y x)) z)
(*.f64 -1 z)
(neg.f64 z)
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 x (*.f64 3 y)) z)
(-.f64 (*.f64 3 (*.f64 y x)) z)
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 x (*.f64 3 y)) z)
(-.f64 (*.f64 3 (*.f64 y x)) z)
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 x (*.f64 3 y)) z)
(-.f64 (*.f64 3 (*.f64 y x)) z)

localize11.0ms (0.2%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.1b
(fma.f64 x (*.f64 y -3) z)
0.1b
(fma.f64 x (*.f64 y -3) z)
Compiler

Compiled 23 to 13 computations (43.5% saved)

series638.0ms (10.7%)

Counts
1 → 36
Calls

9 calls:

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

rewrite46.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
641×pow1_binary64
589×add-log-exp_binary64
589×log1p-expm1-u_binary64
589×expm1-log1p-u_binary64
576×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify11.0ms (0.2%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
08255
114255
223255
329255
Stop Event
saturated
Counts
57 → 25
Calls
Call 1
Inputs
z
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(*.f64 -3 (*.f64 y x))
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(*.f64 -3 (*.f64 y x))
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(+.f64 (*.f64 -3 (*.f64 y x)) z)
z
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(*.f64 -3 (*.f64 y x))
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(*.f64 -3 (*.f64 y x))
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(*.f64 -3 (*.f64 y x))
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(+.f64 (*.f64 -3 (*.f64 y x)) z)
z
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(+.f64 (*.f64 -3 (*.f64 y x)) z)
z
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(+.f64 (*.f64 -3 (*.f64 y x)) z)
Outputs
z
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(fma.f64 -3 (*.f64 y x) z)
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(fma.f64 -3 (*.f64 y x) z)
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(fma.f64 -3 (*.f64 y x) z)
(*.f64 -3 (*.f64 y x))
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(fma.f64 -3 (*.f64 y x) z)
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(fma.f64 -3 (*.f64 y x) z)
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(fma.f64 -3 (*.f64 y x) z)
(*.f64 -3 (*.f64 y x))
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(fma.f64 -3 (*.f64 y x) z)
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(fma.f64 -3 (*.f64 y x) z)
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(fma.f64 -3 (*.f64 y x) z)
z
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(fma.f64 -3 (*.f64 y x) z)
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(fma.f64 -3 (*.f64 y x) z)
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(fma.f64 -3 (*.f64 y x) z)
(*.f64 -3 (*.f64 y x))
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(fma.f64 -3 (*.f64 y x) z)
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(fma.f64 -3 (*.f64 y x) z)
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(fma.f64 -3 (*.f64 y x) z)
(*.f64 -3 (*.f64 y x))
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(fma.f64 -3 (*.f64 y x) z)
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(fma.f64 -3 (*.f64 y x) z)
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(fma.f64 -3 (*.f64 y x) z)
(*.f64 -3 (*.f64 y x))
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(fma.f64 -3 (*.f64 y x) z)
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(fma.f64 -3 (*.f64 y x) z)
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(fma.f64 -3 (*.f64 y x) z)
z
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(fma.f64 -3 (*.f64 y x) z)
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(fma.f64 -3 (*.f64 y x) z)
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(fma.f64 -3 (*.f64 y x) z)
z
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(fma.f64 -3 (*.f64 y x) z)
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(fma.f64 -3 (*.f64 y x) z)
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(fma.f64 -3 (*.f64 y x) z)

eval23.0ms (0.4%)

Compiler

Compiled 1014 to 624 computations (38.5% saved)

prune18.0ms (0.3%)

Pruning

9 alts after pruning (8 fresh and 1 done)

PrunedKeptTotal
New73881
Fresh000
Picked101
Done011
Total74983
Error
0.0b
Counts
83 → 9
Alt Table
Click to see full alt table
StatusErrorProgram
0.1b
(fma.f64 y (*.f64 x 3) (neg.f64 z))
0.1b
(-.f64 (*.f64 x (*.f64 3 y)) z)
33.3b
(neg.f64 (pow.f64 (sqrt.f64 (fma.f64 x (*.f64 y -3) z)) 2))
0.1b
(neg.f64 (fma.f64 -3 (*.f64 y x) z))
0.2b
(-.f64 (*.f64 3 (*.f64 y x)) z)
21.5b
(-.f64 (cbrt.f64 (pow.f64 (*.f64 x (*.f64 3 y)) 3)) z)
31.8b
(neg.f64 (*.f64 -3 (*.f64 y x)))
31.3b
(neg.f64 z)
0.1b
(-.f64 (*.f64 (*.f64 x 3) y) z)
Compiler

Compiled 170 to 125 computations (26.5% saved)

localize9.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.1b
(fma.f64 y (*.f64 x 3) (neg.f64 z))
0.1b
(fma.f64 y (*.f64 x 3) (neg.f64 z))
Compiler

Compiled 19 to 10 computations (47.4% saved)

series4.0ms (0.1%)

Counts
1 → 36
Calls

9 calls:

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

rewrite45.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
671×pow1_binary64
617×add-log-exp_binary64
616×log1p-expm1-u_binary64
616×expm1-log1p-u_binary64
604×add-exp-log_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify30.0ms (0.5%)

Algorithm
egg-herbie
Rules
195×fma-def_binary64
122×fma-neg_binary64
44×distribute-rgt-neg-in_binary64
37×cancel-sign-sub-inv_binary64
28×unsub-neg_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
011317
119317
232317
343317
476317
5133317
6246317
7423317
8577317
9696317
10746317
11748317
Stop Event
saturated
Counts
59 → 30
Calls
Call 1
Inputs
(*.f64 -1 z)
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(*.f64 3 (*.f64 y x))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(*.f64 3 (*.f64 y x))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(*.f64 -1 z)
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(*.f64 3 (*.f64 y x))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(*.f64 3 (*.f64 y x))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(*.f64 3 (*.f64 y x))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(*.f64 -1 z)
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(*.f64 -1 z)
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
Outputs
(*.f64 -1 z)
(neg.f64 z)
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 x (*.f64 3 y)) z)
(-.f64 (*.f64 3 (*.f64 y x)) z)
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 x (*.f64 3 y)) z)
(-.f64 (*.f64 3 (*.f64 y x)) z)
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 x (*.f64 3 y)) z)
(-.f64 (*.f64 3 (*.f64 y x)) z)
(*.f64 3 (*.f64 y x))
(*.f64 x (*.f64 3 y))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 x (*.f64 3 y)) z)
(-.f64 (*.f64 3 (*.f64 y x)) z)
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 x (*.f64 3 y)) z)
(-.f64 (*.f64 3 (*.f64 y x)) z)
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 x (*.f64 3 y)) z)
(-.f64 (*.f64 3 (*.f64 y x)) z)
(*.f64 3 (*.f64 y x))
(*.f64 x (*.f64 3 y))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 x (*.f64 3 y)) z)
(-.f64 (*.f64 3 (*.f64 y x)) z)
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 x (*.f64 3 y)) z)
(-.f64 (*.f64 3 (*.f64 y x)) z)
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 x (*.f64 3 y)) z)
(-.f64 (*.f64 3 (*.f64 y x)) z)
(*.f64 -1 z)
(neg.f64 z)
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 x (*.f64 3 y)) z)
(-.f64 (*.f64 3 (*.f64 y x)) z)
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 x (*.f64 3 y)) z)
(-.f64 (*.f64 3 (*.f64 y x)) z)
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 x (*.f64 3 y)) z)
(-.f64 (*.f64 3 (*.f64 y x)) z)
(*.f64 3 (*.f64 y x))
(*.f64 x (*.f64 3 y))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 x (*.f64 3 y)) z)
(-.f64 (*.f64 3 (*.f64 y x)) z)
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 x (*.f64 3 y)) z)
(-.f64 (*.f64 3 (*.f64 y x)) z)
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 x (*.f64 3 y)) z)
(-.f64 (*.f64 3 (*.f64 y x)) z)
(*.f64 3 (*.f64 y x))
(*.f64 x (*.f64 3 y))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 x (*.f64 3 y)) z)
(-.f64 (*.f64 3 (*.f64 y x)) z)
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 x (*.f64 3 y)) z)
(-.f64 (*.f64 3 (*.f64 y x)) z)
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 x (*.f64 3 y)) z)
(-.f64 (*.f64 3 (*.f64 y x)) z)
(*.f64 3 (*.f64 y x))
(*.f64 x (*.f64 3 y))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 x (*.f64 3 y)) z)
(-.f64 (*.f64 3 (*.f64 y x)) z)
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 x (*.f64 3 y)) z)
(-.f64 (*.f64 3 (*.f64 y x)) z)
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 x (*.f64 3 y)) z)
(-.f64 (*.f64 3 (*.f64 y x)) z)
(*.f64 -1 z)
(neg.f64 z)
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 x (*.f64 3 y)) z)
(-.f64 (*.f64 3 (*.f64 y x)) z)
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 x (*.f64 3 y)) z)
(-.f64 (*.f64 3 (*.f64 y x)) z)
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 x (*.f64 3 y)) z)
(-.f64 (*.f64 3 (*.f64 y x)) z)
(*.f64 -1 z)
(neg.f64 z)
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 x (*.f64 3 y)) z)
(-.f64 (*.f64 3 (*.f64 y x)) z)
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 x (*.f64 3 y)) z)
(-.f64 (*.f64 3 (*.f64 y x)) z)
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 x (*.f64 3 y)) z)
(-.f64 (*.f64 3 (*.f64 y x)) z)

localize3.0ms (0.1%)

Compiler

Compiled 6 to 4 computations (33.3% saved)

localize22.0ms (0.4%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.3b
(*.f64 3 (*.f64 y x))
0.0b
(-.f64 (*.f64 3 (*.f64 y x)) z)
0.0b
(-.f64 (*.f64 3 (*.f64 y x)) z)
0.3b
(*.f64 3 (*.f64 y x))
Compiler

Compiled 22 to 10 computations (54.5% saved)

series4.0ms (0.1%)

Counts
2 → 36
Calls

15 calls:

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

rewrite51.0ms (0.9%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
0817
117217
2224817
Stop Event
node limit
Counts
2 → 49
Calls
Call 1
Inputs
(*.f64 3 (*.f64 y x))
(-.f64 (*.f64 3 (*.f64 y x)) z)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 3 (*.f64 y x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 3 (*.f64 y x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 3 (*.f64 y x))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 3 (*.f64 y x))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 3 (*.f64 y x)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (pow.f64 (exp.f64 y) x) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 3 (*.f64 y x)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 3 (*.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 3 (*.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 3 (*.f64 y x))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 3 (*.f64 y x)) (neg.f64 z))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 3 (*.f64 y x)) (*.f64 (neg.f64 z) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 3 (*.f64 y x)) z) (fma.f64 (neg.f64 z) 1 z))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 3 (*.f64 y x)) z) (fma.f64 (neg.f64 (cbrt.f64 z)) (pow.f64 (cbrt.f64 z) 2) z))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 3 (*.f64 y x)) z) (fma.f64 (neg.f64 (sqrt.f64 z)) (sqrt.f64 z) z))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 z) (*.f64 3 (*.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 3 (*.f64 y x)) z) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (*.f64 3 (*.f64 y x)) z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 (*.f64 3 (*.f64 y x)) z)) (pow.f64 (cbrt.f64 (-.f64 (*.f64 3 (*.f64 y x)) z)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 3 (*.f64 y x)) z)) 2) (cbrt.f64 (-.f64 (*.f64 3 (*.f64 y x)) z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 (*.f64 3 (*.f64 y x)) z)) (sqrt.f64 (-.f64 (*.f64 3 (*.f64 y x)) z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (*.f64 3 (*.f64 y x)) 3) (pow.f64 z 3)) (/.f64 1 (+.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9) (*.f64 z (fma.f64 3 (*.f64 y x) z)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9) (*.f64 z z)) (/.f64 1 (fma.f64 3 (*.f64 y x) z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 (*.f64 3 (*.f64 y x))) (sqrt.f64 z)) (-.f64 (sqrt.f64 (*.f64 3 (*.f64 y x))) (sqrt.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9) (*.f64 z (fma.f64 3 (*.f64 y x) z))) (-.f64 (pow.f64 (*.f64 3 (*.f64 y x)) 3) (pow.f64 z 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 3 (*.f64 y x) z) (-.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9) (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 3 (*.f64 y x)) 3) (pow.f64 z 3)) (+.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9) (*.f64 z (fma.f64 3 (*.f64 y x) z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9) (*.f64 z z)) (fma.f64 3 (*.f64 y x) z))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 3 (*.f64 y x)) 3) (pow.f64 z 3))) (neg.f64 (+.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9) (*.f64 z (fma.f64 3 (*.f64 y x) z)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9) (*.f64 z z))) (neg.f64 (fma.f64 3 (*.f64 y x) z)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 3 (*.f64 y x)) 3) (pow.f64 (neg.f64 z) 3)) (+.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9) (-.f64 (*.f64 (neg.f64 z) (neg.f64 z)) (*.f64 (*.f64 3 (*.f64 y x)) (neg.f64 z)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9) (*.f64 (neg.f64 z) (neg.f64 z))) (-.f64 (*.f64 3 (*.f64 y x)) (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (*.f64 3 (*.f64 y x)) z) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (*.f64 3 (*.f64 y x)) z) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (-.f64 (*.f64 3 (*.f64 y x)) z)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (-.f64 (*.f64 3 (*.f64 y x)) z)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (-.f64 (*.f64 3 (*.f64 y x)) z) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (-.f64 (*.f64 3 (*.f64 y x)) z)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (-.f64 (*.f64 3 (*.f64 y x)) z) 3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 3 (*.f64 y x) (neg.f64 z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y x) 3 (neg.f64 z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 3 (*.f64 y x)) (neg.f64 z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 3 (*.f64 y x))) 2) (cbrt.f64 (*.f64 3 (*.f64 y x))) (neg.f64 z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 3 (*.f64 y x))) (sqrt.f64 (*.f64 3 (*.f64 y x))) (neg.f64 z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 3 y) x (neg.f64 z))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (-.f64 (*.f64 3 (*.f64 y x)) z)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (-.f64 (*.f64 3 (*.f64 y x)) z)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (-.f64 (*.f64 3 (*.f64 y x)) z)))))))

simplify141.0ms (2.4%)

Algorithm
egg-herbie
Rules
195×fma-def_binary64
122×fma-neg_binary64
44×distribute-rgt-neg-in_binary64
37×cancel-sign-sub-inv_binary64
28×unsub-neg_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
011317
119317
232317
343317
476317
5133317
6246317
7423317
8577317
9696317
10746317
11748317
Stop Event
saturated
Counts
85 → 56
Calls
Call 1
Inputs
(*.f64 -1 z)
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(*.f64 3 (*.f64 y x))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(*.f64 3 (*.f64 y x))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(*.f64 -1 z)
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(*.f64 3 (*.f64 y x))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(*.f64 3 (*.f64 y x))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(*.f64 3 (*.f64 y x))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(*.f64 -1 z)
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(*.f64 -1 z)
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
Outputs
(*.f64 -1 z)
(neg.f64 z)
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 x (*.f64 3 y)) z)
(-.f64 (*.f64 3 (*.f64 y x)) z)
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 x (*.f64 3 y)) z)
(-.f64 (*.f64 3 (*.f64 y x)) z)
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 x (*.f64 3 y)) z)
(-.f64 (*.f64 3 (*.f64 y x)) z)
(*.f64 3 (*.f64 y x))
(*.f64 x (*.f64 3 y))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 x (*.f64 3 y)) z)
(-.f64 (*.f64 3 (*.f64 y x)) z)
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 x (*.f64 3 y)) z)
(-.f64 (*.f64 3 (*.f64 y x)) z)
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 x (*.f64 3 y)) z)
(-.f64 (*.f64 3 (*.f64 y x)) z)
(*.f64 3 (*.f64 y x))
(*.f64 x (*.f64 3 y))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 x (*.f64 3 y)) z)
(-.f64 (*.f64 3 (*.f64 y x)) z)
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 x (*.f64 3 y)) z)
(-.f64 (*.f64 3 (*.f64 y x)) z)
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 x (*.f64 3 y)) z)
(-.f64 (*.f64 3 (*.f64 y x)) z)
(*.f64 -1 z)
(neg.f64 z)
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 x (*.f64 3 y)) z)
(-.f64 (*.f64 3 (*.f64 y x)) z)
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 x (*.f64 3 y)) z)
(-.f64 (*.f64 3 (*.f64 y x)) z)
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 x (*.f64 3 y)) z)
(-.f64 (*.f64 3 (*.f64 y x)) z)
(*.f64 3 (*.f64 y x))
(*.f64 x (*.f64 3 y))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 x (*.f64 3 y)) z)
(-.f64 (*.f64 3 (*.f64 y x)) z)
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 x (*.f64 3 y)) z)
(-.f64 (*.f64 3 (*.f64 y x)) z)
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 x (*.f64 3 y)) z)
(-.f64 (*.f64 3 (*.f64 y x)) z)
(*.f64 3 (*.f64 y x))
(*.f64 x (*.f64 3 y))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 x (*.f64 3 y)) z)
(-.f64 (*.f64 3 (*.f64 y x)) z)
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 x (*.f64 3 y)) z)
(-.f64 (*.f64 3 (*.f64 y x)) z)
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 x (*.f64 3 y)) z)
(-.f64 (*.f64 3 (*.f64 y x)) z)
(*.f64 3 (*.f64 y x))
(*.f64 x (*.f64 3 y))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 x (*.f64 3 y)) z)
(-.f64 (*.f64 3 (*.f64 y x)) z)
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 x (*.f64 3 y)) z)
(-.f64 (*.f64 3 (*.f64 y x)) z)
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 x (*.f64 3 y)) z)
(-.f64 (*.f64 3 (*.f64 y x)) z)
(*.f64 -1 z)
(neg.f64 z)
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 x (*.f64 3 y)) z)
(-.f64 (*.f64 3 (*.f64 y x)) z)
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 x (*.f64 3 y)) z)
(-.f64 (*.f64 3 (*.f64 y x)) z)
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 x (*.f64 3 y)) z)
(-.f64 (*.f64 3 (*.f64 y x)) z)
(*.f64 -1 z)
(neg.f64 z)
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 x (*.f64 3 y)) z)
(-.f64 (*.f64 3 (*.f64 y x)) z)
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 x (*.f64 3 y)) z)
(-.f64 (*.f64 3 (*.f64 y x)) z)
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 x (*.f64 3 y)) z)
(-.f64 (*.f64 3 (*.f64 y x)) z)

localize10.0ms (0.2%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.1b
(fma.f64 -3 (*.f64 y x) z)
0.1b
(fma.f64 -3 (*.f64 y x) z)
Compiler

Compiled 23 to 10 computations (56.5% saved)

series4.0ms (0.1%)

Counts
1 → 36
Calls

9 calls:

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

rewrite42.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
642×pow1_binary64
590×add-log-exp_binary64
590×log1p-expm1-u_binary64
590×expm1-log1p-u_binary64
578×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify11.0ms (0.2%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
08255
114255
223255
329255
Stop Event
saturated
Counts
57 → 24
Calls
Call 1
Inputs
z
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(*.f64 -3 (*.f64 y x))
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(*.f64 -3 (*.f64 y x))
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(+.f64 (*.f64 -3 (*.f64 y x)) z)
z
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(*.f64 -3 (*.f64 y x))
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(*.f64 -3 (*.f64 y x))
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(*.f64 -3 (*.f64 y x))
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(+.f64 (*.f64 -3 (*.f64 y x)) z)
z
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(+.f64 (*.f64 -3 (*.f64 y x)) z)
z
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(+.f64 (*.f64 -3 (*.f64 y x)) z)
Outputs
z
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(fma.f64 -3 (*.f64 y x) z)
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(fma.f64 -3 (*.f64 y x) z)
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(fma.f64 -3 (*.f64 y x) z)
(*.f64 -3 (*.f64 y x))
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(fma.f64 -3 (*.f64 y x) z)
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(fma.f64 -3 (*.f64 y x) z)
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(fma.f64 -3 (*.f64 y x) z)
(*.f64 -3 (*.f64 y x))
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(fma.f64 -3 (*.f64 y x) z)
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(fma.f64 -3 (*.f64 y x) z)
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(fma.f64 -3 (*.f64 y x) z)
z
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(fma.f64 -3 (*.f64 y x) z)
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(fma.f64 -3 (*.f64 y x) z)
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(fma.f64 -3 (*.f64 y x) z)
(*.f64 -3 (*.f64 y x))
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(fma.f64 -3 (*.f64 y x) z)
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(fma.f64 -3 (*.f64 y x) z)
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(fma.f64 -3 (*.f64 y x) z)
(*.f64 -3 (*.f64 y x))
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(fma.f64 -3 (*.f64 y x) z)
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(fma.f64 -3 (*.f64 y x) z)
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(fma.f64 -3 (*.f64 y x) z)
(*.f64 -3 (*.f64 y x))
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(fma.f64 -3 (*.f64 y x) z)
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(fma.f64 -3 (*.f64 y x) z)
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(fma.f64 -3 (*.f64 y x) z)
z
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(fma.f64 -3 (*.f64 y x) z)
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(fma.f64 -3 (*.f64 y x) z)
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(fma.f64 -3 (*.f64 y x) z)
z
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(fma.f64 -3 (*.f64 y x) z)
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(fma.f64 -3 (*.f64 y x) z)
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(fma.f64 -3 (*.f64 y x) z)

localize21.0ms (0.3%)

Local error

Found 6 expressions with local error:

NewErrorProgram
0.2b
(pow.f64 (sqrt.f64 (fma.f64 x (*.f64 y -3) z)) 2)
0.1b
(fma.f64 x (*.f64 y -3) z)
0.0b
(sqrt.f64 (fma.f64 x (*.f64 y -3) z))
0.0b
(sqrt.f64 (fma.f64 x (*.f64 y -3) z))
0.1b
(fma.f64 x (*.f64 y -3) z)
0.2b
(pow.f64 (sqrt.f64 (fma.f64 x (*.f64 y -3) z)) 2)
Compiler

Compiled 43 to 27 computations (37.2% saved)

series20.0ms (0.3%)

Counts
2 → 24
Calls

18 calls:

TimeVariablePointExpression
3.0ms
z
@0
(pow.f64 (sqrt.f64 (fma.f64 x (*.f64 y -3) z)) 2)
2.0ms
y
@-inf
(sqrt.f64 (fma.f64 x (*.f64 y -3) z))
2.0ms
x
@inf
(pow.f64 (sqrt.f64 (fma.f64 x (*.f64 y -3) z)) 2)
2.0ms
y
@inf
(pow.f64 (sqrt.f64 (fma.f64 x (*.f64 y -3) z)) 2)
1.0ms
z
@inf
(pow.f64 (sqrt.f64 (fma.f64 x (*.f64 y -3) z)) 2)

rewrite49.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
787×pow1_binary64
727×add-log-exp_binary64
727×log1p-expm1-u_binary64
727×expm1-log1p-u_binary64
710×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01018
120418
2201218
Stop Event
node limit
Counts
2 → 42
Calls
Call 1
Inputs
(pow.f64 (sqrt.f64 (fma.f64 x (*.f64 y -3) z)) 2)
(sqrt.f64 (fma.f64 x (*.f64 y -3) z))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 z (*.f64 x (*.f64 y -3)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (*.f64 y -3)) z)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 x (*.f64 y -3)) 1) z)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (fma.f64 x (*.f64 y -3) z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 x (*.f64 y -3) z) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 x (*.f64 y -3) z)) (sqrt.f64 (fma.f64 x (*.f64 y -3) z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 x (*.f64 y -3) z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 x (*.f64 y -3) z)) (pow.f64 (cbrt.f64 (fma.f64 x (*.f64 y -3) z)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 x (*.f64 y -3) z)) (*.f64 (cbrt.f64 (sqrt.f64 (fma.f64 x (*.f64 y -3) z))) (sqrt.f64 (fma.f64 x (*.f64 y -3) z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 x (*.f64 y -3) z)) 2) (cbrt.f64 (fma.f64 x (*.f64 y -3) z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (fma.f64 x (*.f64 y -3) z) 1/4) (*.f64 (pow.f64 (fma.f64 x (*.f64 y -3) z) 1/4) (sqrt.f64 (fma.f64 x (*.f64 y -3) z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (fma.f64 x (*.f64 y -3) z)) (pow.f64 (fma.f64 x (*.f64 y -3) z) 1/4)) (pow.f64 (fma.f64 x (*.f64 y -3) z) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (fma.f64 x (*.f64 y -3) z)) (cbrt.f64 (fma.f64 x (*.f64 y -3) z))) (cbrt.f64 (sqrt.f64 (fma.f64 x (*.f64 y -3) z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 x (*.f64 y -3)) 3) (pow.f64 z 3)) (+.f64 (*.f64 (*.f64 x (*.f64 y -3)) (*.f64 x (*.f64 y -3))) (-.f64 (*.f64 z z) (*.f64 (*.f64 x (*.f64 y -3)) z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 x (*.f64 y -3)) (*.f64 x (*.f64 y -3))) (*.f64 z z)) (-.f64 (*.f64 x (*.f64 y -3)) z))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 x (*.f64 y -3) z) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 x (*.f64 y -3) z)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 x (*.f64 y -3) z) 3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x (*.f64 y -3) z)))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 x (*.f64 y -3) z)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 x (*.f64 y -3) z)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 x (*.f64 y -3) z)))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (sqrt.f64 (fma.f64 x (*.f64 y -3) z))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 x (*.f64 y -3) z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (fma.f64 x (*.f64 y -3) z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (sqrt.f64 (fma.f64 x (*.f64 y -3) z))) (cbrt.f64 (fma.f64 x (*.f64 y -3) z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 x (*.f64 y -3) z)) (cbrt.f64 (sqrt.f64 (fma.f64 x (*.f64 y -3) z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (fma.f64 x (*.f64 y -3) z) 1/4) (pow.f64 (fma.f64 x (*.f64 y -3) z) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (fma.f64 x (*.f64 y -3) z)) 2)) (sqrt.f64 (cbrt.f64 (fma.f64 x (*.f64 y -3) z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/2) (sqrt.f64 (fma.f64 x (*.f64 y -3) z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (fma.f64 x (*.f64 y -3) z)) 2) 1/2) (pow.f64 (cbrt.f64 (fma.f64 x (*.f64 y -3) z)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 x (*.f64 y -3) z) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 x (*.f64 y -3) z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 x (*.f64 y -3) z) 3/2) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (sqrt.f64 (fma.f64 x (*.f64 y -3) z))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 x (*.f64 y -3) z) 1/4) 2)))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (sqrt.f64 (fma.f64 x (*.f64 y -3) z)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (sqrt.f64 (fma.f64 x (*.f64 y -3) z))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 x (*.f64 y -3) z) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (sqrt.f64 (fma.f64 x (*.f64 y -3) z))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (sqrt.f64 (fma.f64 x (*.f64 y -3) z))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (sqrt.f64 (fma.f64 x (*.f64 y -3) z))))))))

simplify53.0ms (0.9%)

Algorithm
egg-herbie
Rules
679×associate-*r*_binary64
663×associate-*l*_binary64
589×unswap-sqr_binary64
538×fma-def_binary64
405×associate-/r*_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0130740
1372685
21283635
36654633
Stop Event
node limit
Counts
66 → 69
Calls
Call 1
Inputs
z
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(+.f64 (*.f64 -3 (*.f64 y x)) (+.f64 (*.f64 (+.f64 (*.f64 -9/4 (/.f64 (pow.f64 y 2) z)) (*.f64 9/4 (/.f64 (pow.f64 y 2) z))) (pow.f64 x 2)) z))
(+.f64 (*.f64 -3 (*.f64 y x)) (+.f64 (*.f64 (+.f64 (*.f64 -9/4 (/.f64 (pow.f64 y 2) z)) (*.f64 9/4 (/.f64 (pow.f64 y 2) z))) (pow.f64 x 2)) (+.f64 (*.f64 (+.f64 (*.f64 -27/8 (/.f64 (pow.f64 y 3) (pow.f64 z 2))) (*.f64 27/8 (/.f64 (pow.f64 y 3) (pow.f64 z 2)))) (pow.f64 x 3)) z)))
z
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(+.f64 (*.f64 -3 (*.f64 y x)) (+.f64 z (*.f64 (+.f64 (*.f64 9/4 (/.f64 (pow.f64 x 2) z)) (*.f64 -9/4 (/.f64 (pow.f64 x 2) z))) (pow.f64 y 2))))
(+.f64 (*.f64 -3 (*.f64 y x)) (+.f64 (*.f64 (+.f64 (*.f64 -27/8 (/.f64 (pow.f64 x 3) (pow.f64 z 2))) (*.f64 27/8 (/.f64 (pow.f64 x 3) (pow.f64 z 2)))) (pow.f64 y 3)) (+.f64 z (*.f64 (+.f64 (*.f64 9/4 (/.f64 (pow.f64 x 2) z)) (*.f64 -9/4 (/.f64 (pow.f64 x 2) z))) (pow.f64 y 2)))))
(*.f64 y (*.f64 (pow.f64 (sqrt.f64 -3) 2) x))
(+.f64 z (*.f64 y (*.f64 (pow.f64 (sqrt.f64 -3) 2) x)))
(+.f64 (*.f64 (+.f64 (*.f64 -1 (+.f64 (pow.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 y 3) (pow.f64 x 3)))) (/.f64 1 (pow.f64 (sqrt.f64 -3) 3)))) 2) (*.f64 1/16 (/.f64 1 (*.f64 (pow.f64 y 3) (*.f64 (pow.f64 (sqrt.f64 -3) 6) (pow.f64 x 3))))))) (*.f64 5/64 (/.f64 1 (*.f64 (pow.f64 y 3) (*.f64 (pow.f64 (sqrt.f64 -3) 6) (pow.f64 x 3)))))) (pow.f64 z 4)) (+.f64 z (*.f64 y (*.f64 (pow.f64 (sqrt.f64 -3) 2) x))))
(+.f64 (*.f64 (+.f64 (*.f64 -1 (+.f64 (pow.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 y 3) (pow.f64 x 3)))) (/.f64 1 (pow.f64 (sqrt.f64 -3) 3)))) 2) (*.f64 1/16 (/.f64 1 (*.f64 (pow.f64 y 3) (*.f64 (pow.f64 (sqrt.f64 -3) 6) (pow.f64 x 3))))))) (*.f64 5/64 (/.f64 1 (*.f64 (pow.f64 y 3) (*.f64 (pow.f64 (sqrt.f64 -3) 6) (pow.f64 x 3)))))) (pow.f64 z 4)) (+.f64 z (*.f64 y (*.f64 (pow.f64 (sqrt.f64 -3) 2) x))))
(sqrt.f64 z)
(+.f64 (sqrt.f64 z) (*.f64 -3/2 (*.f64 (*.f64 y x) (sqrt.f64 (/.f64 1 z)))))
(+.f64 (*.f64 -9/8 (*.f64 (*.f64 (pow.f64 y 2) (pow.f64 x 2)) (sqrt.f64 (/.f64 1 (pow.f64 z 3))))) (+.f64 (sqrt.f64 z) (*.f64 -3/2 (*.f64 (*.f64 y x) (sqrt.f64 (/.f64 1 z))))))
(+.f64 (*.f64 -9/8 (*.f64 (*.f64 (pow.f64 y 2) (pow.f64 x 2)) (sqrt.f64 (/.f64 1 (pow.f64 z 3))))) (+.f64 (sqrt.f64 z) (+.f64 (*.f64 -27/16 (*.f64 (*.f64 (pow.f64 y 3) (pow.f64 x 3)) (sqrt.f64 (/.f64 1 (pow.f64 z 5))))) (*.f64 -3/2 (*.f64 (*.f64 y x) (sqrt.f64 (/.f64 1 z)))))))
(sqrt.f64 z)
(+.f64 (sqrt.f64 z) (*.f64 -3/2 (*.f64 (*.f64 y x) (sqrt.f64 (/.f64 1 z)))))
(+.f64 (*.f64 -9/8 (*.f64 (*.f64 (pow.f64 y 2) (pow.f64 x 2)) (sqrt.f64 (/.f64 1 (pow.f64 z 3))))) (+.f64 (sqrt.f64 z) (*.f64 -3/2 (*.f64 (*.f64 y x) (sqrt.f64 (/.f64 1 z))))))
(+.f64 (*.f64 -9/8 (*.f64 (*.f64 (pow.f64 y 2) (pow.f64 x 2)) (sqrt.f64 (/.f64 1 (pow.f64 z 3))))) (+.f64 (sqrt.f64 z) (+.f64 (*.f64 -27/16 (*.f64 (*.f64 (pow.f64 y 3) (pow.f64 x 3)) (sqrt.f64 (/.f64 1 (pow.f64 z 5))))) (*.f64 -3/2 (*.f64 (*.f64 y x) (sqrt.f64 (/.f64 1 z)))))))
(*.f64 (sqrt.f64 (*.f64 y x)) (sqrt.f64 -3))
(+.f64 (*.f64 (sqrt.f64 (*.f64 y x)) (sqrt.f64 -3)) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 y x))) (/.f64 z (sqrt.f64 -3)))))
(+.f64 (*.f64 (sqrt.f64 (*.f64 y x)) (sqrt.f64 -3)) (+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 y 3) (pow.f64 x 3)))) (/.f64 (pow.f64 z 2) (pow.f64 (sqrt.f64 -3) 3)))) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 y x))) (/.f64 z (sqrt.f64 -3))))))
(+.f64 (*.f64 (sqrt.f64 (*.f64 y x)) (sqrt.f64 -3)) (+.f64 (*.f64 1/16 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 y 5) (pow.f64 x 5)))) (/.f64 (pow.f64 z 3) (pow.f64 (sqrt.f64 -3) 5)))) (+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 y 3) (pow.f64 x 3)))) (/.f64 (pow.f64 z 2) (pow.f64 (sqrt.f64 -3) 3)))) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 y x))) (/.f64 z (sqrt.f64 -3)))))))
Outputs
z
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(fma.f64 -3 (*.f64 y x) z)
(+.f64 (*.f64 -3 (*.f64 y x)) (+.f64 (*.f64 (+.f64 (*.f64 -9/4 (/.f64 (pow.f64 y 2) z)) (*.f64 9/4 (/.f64 (pow.f64 y 2) z))) (pow.f64 x 2)) z))
(fma.f64 -3 (*.f64 y x) z)
(+.f64 (*.f64 -3 (*.f64 y x)) (+.f64 (*.f64 (+.f64 (*.f64 -9/4 (/.f64 (pow.f64 y 2) z)) (*.f64 9/4 (/.f64 (pow.f64 y 2) z))) (pow.f64 x 2)) (+.f64 (*.f64 (+.f64 (*.f64 -27/8 (/.f64 (pow.f64 y 3) (pow.f64 z 2))) (*.f64 27/8 (/.f64 (pow.f64 y 3) (pow.f64 z 2)))) (pow.f64 x 3)) z)))
(fma.f64 -3 (*.f64 y x) z)
z
(+.f64 (*.f64 -3 (*.f64 y x)) z)
(fma.f64 -3 (*.f64 y x) z)
(+.f64 (*.f64 -3 (*.f64 y x)) (+.f64 z (*.f64 (+.f64 (*.f64 9/4 (/.f64 (pow.f64 x 2) z)) (*.f64 -9/4 (/.f64 (pow.f64 x 2) z))) (pow.f64 y 2))))
(fma.f64 -3 (*.f64 y x) z)
(+.f64 (*.f64 -3 (*.f64 y x)) (+.f64 (*.f64 (+.f64 (*.f64 -27/8 (/.f64 (pow.f64 x 3) (pow.f64 z 2))) (*.f64 27/8 (/.f64 (pow.f64 x 3) (pow.f64 z 2)))) (pow.f64 y 3)) (+.f64 z (*.f64 (+.f64 (*.f64 9/4 (/.f64 (pow.f64 x 2) z)) (*.f64 -9/4 (/.f64 (pow.f64 x 2) z))) (pow.f64 y 2)))))
(fma.f64 -3 (*.f64 y x) z)
(*.f64 y (*.f64 (pow.f64 (sqrt.f64 -3) 2) x))
(*.f64 (*.f64 y (pow.f64 (sqrt.f64 -3) 2)) x)
(*.f64 -3 (*.f64 y x))
(+.f64 z (*.f64 y (*.f64 (pow.f64 (sqrt.f64 -3) 2) x)))
(fma.f64 -3 (*.f64 y x) z)
(+.f64 (*.f64 (+.f64 (*.f64 -1 (+.f64 (pow.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 y 3) (pow.f64 x 3)))) (/.f64 1 (pow.f64 (sqrt.f64 -3) 3)))) 2) (*.f64 1/16 (/.f64 1 (*.f64 (pow.f64 y 3) (*.f64 (pow.f64 (sqrt.f64 -3) 6) (pow.f64 x 3))))))) (*.f64 5/64 (/.f64 1 (*.f64 (pow.f64 y 3) (*.f64 (pow.f64 (sqrt.f64 -3) 6) (pow.f64 x 3)))))) (pow.f64 z 4)) (+.f64 z (*.f64 y (*.f64 (pow.f64 (sqrt.f64 -3) 2) x))))
(fma.f64 (fma.f64 -1 (+.f64 (pow.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 y 3) (pow.f64 x 3)))) (/.f64 1 (pow.f64 (sqrt.f64 -3) 3)))) 2) (/.f64 1/16 (*.f64 (*.f64 (pow.f64 y 3) (pow.f64 (sqrt.f64 -3) 6)) (pow.f64 x 3)))) (/.f64 5/64 (*.f64 (*.f64 (pow.f64 y 3) (pow.f64 (sqrt.f64 -3) 6)) (pow.f64 x 3)))) (pow.f64 z 4) (+.f64 z (*.f64 (*.f64 y (pow.f64 (sqrt.f64 -3) 2)) x)))
(fma.f64 (-.f64 (/.f64 (/.f64 5/64 (pow.f64 y 3)) (*.f64 (pow.f64 x 3) -27)) (+.f64 (pow.f64 (*.f64 (sqrt.f64 (/.f64 (/.f64 1 (pow.f64 y 3)) (pow.f64 x 3))) (*.f64 (/.f64 -1/3 (sqrt.f64 -3)) -1/8)) 2) (/.f64 1/16 (*.f64 (pow.f64 y 3) (*.f64 (pow.f64 x 3) -27))))) (pow.f64 z 4) (fma.f64 -3 (*.f64 y x) z))
(fma.f64 -3 (*.f64 y x) (fma.f64 (fma.f64 -1 (pow.f64 (*.f64 (sqrt.f64 (/.f64 (/.f64 1 (pow.f64 x 3)) (pow.f64 y 3))) (/.f64 1/24 (sqrt.f64 -3))) 2) (*.f64 (/.f64 (/.f64 -1/27 (pow.f64 x 3)) (pow.f64 y 3)) 1/64)) (pow.f64 z 4) z))
(fma.f64 -3 (*.f64 y x) (fma.f64 (-.f64 (*.f64 (/.f64 (/.f64 -1/27 (pow.f64 x 3)) (pow.f64 y 3)) 1/64) (pow.f64 (*.f64 (sqrt.f64 (/.f64 (/.f64 1 (pow.f64 x 3)) (pow.f64 y 3))) (/.f64 1/24 (sqrt.f64 -3))) 2)) (pow.f64 z 4) z))
(+.f64 (*.f64 (+.f64 (*.f64 -1 (+.f64 (pow.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 y 3) (pow.f64 x 3)))) (/.f64 1 (pow.f64 (sqrt.f64 -3) 3)))) 2) (*.f64 1/16 (/.f64 1 (*.f64 (pow.f64 y 3) (*.f64 (pow.f64 (sqrt.f64 -3) 6) (pow.f64 x 3))))))) (*.f64 5/64 (/.f64 1 (*.f64 (pow.f64 y 3) (*.f64 (pow.f64 (sqrt.f64 -3) 6) (pow.f64 x 3)))))) (pow.f64 z 4)) (+.f64 z (*.f64 y (*.f64 (pow.f64 (sqrt.f64 -3) 2) x))))
(fma.f64 (fma.f64 -1 (+.f64 (pow.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 y 3) (pow.f64 x 3)))) (/.f64 1 (pow.f64 (sqrt.f64 -3) 3)))) 2) (/.f64 1/16 (*.f64 (*.f64 (pow.f64 y 3) (pow.f64 (sqrt.f64 -3) 6)) (pow.f64 x 3)))) (/.f64 5/64 (*.f64 (*.f64 (pow.f64 y 3) (pow.f64 (sqrt.f64 -3) 6)) (pow.f64 x 3)))) (pow.f64 z 4) (+.f64 z (*.f64 (*.f64 y (pow.f64 (sqrt.f64 -3) 2)) x)))
(fma.f64 (-.f64 (/.f64 (/.f64 5/64 (pow.f64 y 3)) (*.f64 (pow.f64 x 3) -27)) (+.f64 (pow.f64 (*.f64 (sqrt.f64 (/.f64 (/.f64 1 (pow.f64 y 3)) (pow.f64 x 3))) (*.f64 (/.f64 -1/3 (sqrt.f64 -3)) -1/8)) 2) (/.f64 1/16 (*.f64 (pow.f64 y 3) (*.f64 (pow.f64 x 3) -27))))) (pow.f64 z 4) (fma.f64 -3 (*.f64 y x) z))
(fma.f64 -3 (*.f64 y x) (fma.f64 (fma.f64 -1 (pow.f64 (*.f64 (sqrt.f64 (/.f64 (/.f64 1 (pow.f64 x 3)) (pow.f64 y 3))) (/.f64 1/24 (sqrt.f64 -3))) 2) (*.f64 (/.f64 (/.f64 -1/27 (pow.f64 x 3)) (pow.f64 y 3)) 1/64)) (pow.f64 z 4) z))
(fma.f64 -3 (*.f64 y x) (fma.f64 (-.f64 (*.f64 (/.f64 (/.f64 -1/27 (pow.f64 x 3)) (pow.f64 y 3)) 1/64) (pow.f64 (*.f64 (sqrt.f64 (/.f64 (/.f64 1 (pow.f64 x 3)) (pow.f64 y 3))) (/.f64 1/24 (sqrt.f64 -3))) 2)) (pow.f64 z 4) z))
(sqrt.f64 z)
(+.f64 (sqrt.f64 z) (*.f64 -3/2 (*.f64 (*.f64 y x) (sqrt.f64 (/.f64 1 z)))))
(+.f64 (sqrt.f64 z) (*.f64 -3/2 (*.f64 y (*.f64 x (sqrt.f64 (/.f64 1 z))))))
(fma.f64 -3/2 (*.f64 y (*.f64 x (sqrt.f64 (/.f64 1 z)))) (sqrt.f64 z))
(fma.f64 y (*.f64 -3/2 (*.f64 x (sqrt.f64 (/.f64 1 z)))) (sqrt.f64 z))
(+.f64 (*.f64 -9/8 (*.f64 (*.f64 (pow.f64 y 2) (pow.f64 x 2)) (sqrt.f64 (/.f64 1 (pow.f64 z 3))))) (+.f64 (sqrt.f64 z) (*.f64 -3/2 (*.f64 (*.f64 y x) (sqrt.f64 (/.f64 1 z))))))
(fma.f64 -9/8 (*.f64 (*.f64 (*.f64 y y) (*.f64 x x)) (sqrt.f64 (/.f64 1 (pow.f64 z 3)))) (+.f64 (sqrt.f64 z) (*.f64 -3/2 (*.f64 y (*.f64 x (sqrt.f64 (/.f64 1 z)))))))
(fma.f64 (*.f64 -9/8 (*.f64 (*.f64 y x) (*.f64 y x))) (sqrt.f64 (/.f64 1 (pow.f64 z 3))) (fma.f64 -3/2 (*.f64 y (*.f64 x (sqrt.f64 (/.f64 1 z)))) (sqrt.f64 z)))
(fma.f64 (*.f64 y (*.f64 x (*.f64 y x))) (*.f64 -9/8 (sqrt.f64 (/.f64 1 (pow.f64 z 3)))) (fma.f64 y (*.f64 -3/2 (*.f64 x (sqrt.f64 (/.f64 1 z)))) (sqrt.f64 z)))
(+.f64 (*.f64 -9/8 (*.f64 (*.f64 (pow.f64 y 2) (pow.f64 x 2)) (sqrt.f64 (/.f64 1 (pow.f64 z 3))))) (+.f64 (sqrt.f64 z) (+.f64 (*.f64 -27/16 (*.f64 (*.f64 (pow.f64 y 3) (pow.f64 x 3)) (sqrt.f64 (/.f64 1 (pow.f64 z 5))))) (*.f64 -3/2 (*.f64 (*.f64 y x) (sqrt.f64 (/.f64 1 z)))))))
(fma.f64 -9/8 (*.f64 (*.f64 (*.f64 y y) (*.f64 x x)) (sqrt.f64 (/.f64 1 (pow.f64 z 3)))) (+.f64 (sqrt.f64 z) (fma.f64 -27/16 (*.f64 (pow.f64 y 3) (*.f64 (pow.f64 x 3) (sqrt.f64 (/.f64 1 (pow.f64 z 5))))) (*.f64 -3/2 (*.f64 y (*.f64 x (sqrt.f64 (/.f64 1 z))))))))
(+.f64 (fma.f64 -3/2 (*.f64 y (*.f64 x (sqrt.f64 (/.f64 1 z)))) (*.f64 (*.f64 (pow.f64 y 3) (pow.f64 x 3)) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 z 5))) -27/16))) (fma.f64 -9/8 (*.f64 (*.f64 x x) (*.f64 (*.f64 y y) (sqrt.f64 (/.f64 1 (pow.f64 z 3))))) (sqrt.f64 z)))
(fma.f64 (*.f64 y y) (*.f64 (*.f64 x x) (*.f64 -9/8 (sqrt.f64 (/.f64 1 (pow.f64 z 3))))) (fma.f64 y (*.f64 -3/2 (*.f64 x (sqrt.f64 (/.f64 1 z)))) (fma.f64 (pow.f64 y 3) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 z 5))) (*.f64 (pow.f64 x 3) -27/16)) (sqrt.f64 z))))
(sqrt.f64 z)
(+.f64 (sqrt.f64 z) (*.f64 -3/2 (*.f64 (*.f64 y x) (sqrt.f64 (/.f64 1 z)))))
(+.f64 (sqrt.f64 z) (*.f64 -3/2 (*.f64 y (*.f64 x (sqrt.f64 (/.f64 1 z))))))
(fma.f64 -3/2 (*.f64 y (*.f64 x (sqrt.f64 (/.f64 1 z)))) (sqrt.f64 z))
(fma.f64 y (*.f64 -3/2 (*.f64 x (sqrt.f64 (/.f64 1 z)))) (sqrt.f64 z))
(+.f64 (*.f64 -9/8 (*.f64 (*.f64 (pow.f64 y 2) (pow.f64 x 2)) (sqrt.f64 (/.f64 1 (pow.f64 z 3))))) (+.f64 (sqrt.f64 z) (*.f64 -3/2 (*.f64 (*.f64 y x) (sqrt.f64 (/.f64 1 z))))))
(fma.f64 -9/8 (*.f64 (*.f64 (*.f64 y y) (*.f64 x x)) (sqrt.f64 (/.f64 1 (pow.f64 z 3)))) (+.f64 (sqrt.f64 z) (*.f64 -3/2 (*.f64 y (*.f64 x (sqrt.f64 (/.f64 1 z)))))))
(fma.f64 (*.f64 -9/8 (*.f64 (*.f64 y x) (*.f64 y x))) (sqrt.f64 (/.f64 1 (pow.f64 z 3))) (fma.f64 -3/2 (*.f64 y (*.f64 x (sqrt.f64 (/.f64 1 z)))) (sqrt.f64 z)))
(fma.f64 (*.f64 y (*.f64 x (*.f64 y x))) (*.f64 -9/8 (sqrt.f64 (/.f64 1 (pow.f64 z 3)))) (fma.f64 y (*.f64 -3/2 (*.f64 x (sqrt.f64 (/.f64 1 z)))) (sqrt.f64 z)))
(+.f64 (*.f64 -9/8 (*.f64 (*.f64 (pow.f64 y 2) (pow.f64 x 2)) (sqrt.f64 (/.f64 1 (pow.f64 z 3))))) (+.f64 (sqrt.f64 z) (+.f64 (*.f64 -27/16 (*.f64 (*.f64 (pow.f64 y 3) (pow.f64 x 3)) (sqrt.f64 (/.f64 1 (pow.f64 z 5))))) (*.f64 -3/2 (*.f64 (*.f64 y x) (sqrt.f64 (/.f64 1 z)))))))
(fma.f64 -9/8 (*.f64 (*.f64 (*.f64 y y) (*.f64 x x)) (sqrt.f64 (/.f64 1 (pow.f64 z 3)))) (+.f64 (sqrt.f64 z) (fma.f64 -27/16 (*.f64 (pow.f64 y 3) (*.f64 (pow.f64 x 3) (sqrt.f64 (/.f64 1 (pow.f64 z 5))))) (*.f64 -3/2 (*.f64 y (*.f64 x (sqrt.f64 (/.f64 1 z))))))))
(+.f64 (fma.f64 -3/2 (*.f64 y (*.f64 x (sqrt.f64 (/.f64 1 z)))) (*.f64 (*.f64 (pow.f64 y 3) (pow.f64 x 3)) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 z 5))) -27/16))) (fma.f64 -9/8 (*.f64 (*.f64 x x) (*.f64 (*.f64 y y) (sqrt.f64 (/.f64 1 (pow.f64 z 3))))) (sqrt.f64 z)))
(fma.f64 (*.f64 y y) (*.f64 (*.f64 x x) (*.f64 -9/8 (sqrt.f64 (/.f64 1 (pow.f64 z 3))))) (fma.f64 y (*.f64 -3/2 (*.f64 x (sqrt.f64 (/.f64 1 z)))) (fma.f64 (pow.f64 y 3) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 z 5))) (*.f64 (pow.f64 x 3) -27/16)) (sqrt.f64 z))))
(*.f64 (sqrt.f64 (*.f64 y x)) (sqrt.f64 -3))
(*.f64 (sqrt.f64 -3) (sqrt.f64 (*.f64 y x)))
(+.f64 (*.f64 (sqrt.f64 (*.f64 y x)) (sqrt.f64 -3)) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 y x))) (/.f64 z (sqrt.f64 -3)))))
(fma.f64 (sqrt.f64 (*.f64 y x)) (sqrt.f64 -3) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 y x))) (/.f64 z (sqrt.f64 -3)))))
(fma.f64 (sqrt.f64 -3) (sqrt.f64 (*.f64 y x)) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 y x))) (/.f64 z (sqrt.f64 -3)))))
(fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 y x))) (/.f64 z (sqrt.f64 -3))) (*.f64 (sqrt.f64 -3) (sqrt.f64 (*.f64 y x))))
(+.f64 (*.f64 (sqrt.f64 (*.f64 y x)) (sqrt.f64 -3)) (+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 y 3) (pow.f64 x 3)))) (/.f64 (pow.f64 z 2) (pow.f64 (sqrt.f64 -3) 3)))) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 y x))) (/.f64 z (sqrt.f64 -3))))))
(fma.f64 (sqrt.f64 (*.f64 y x)) (sqrt.f64 -3) (fma.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 y 3) (pow.f64 x 3)))) (/.f64 (*.f64 z z) (pow.f64 (sqrt.f64 -3) 3))) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 y x))) (/.f64 z (sqrt.f64 -3))))))
(fma.f64 (sqrt.f64 -3) (sqrt.f64 (*.f64 y x)) (fma.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 (/.f64 1 (pow.f64 y 3)) (pow.f64 x 3))) (*.f64 (/.f64 z (sqrt.f64 -3)) (/.f64 z -3))) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 y x))) (/.f64 z (sqrt.f64 -3))))))
(fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 y x))) (/.f64 z (sqrt.f64 -3))) (fma.f64 (sqrt.f64 -3) (sqrt.f64 (*.f64 y x)) (*.f64 (/.f64 (sqrt.f64 (/.f64 (/.f64 1 (pow.f64 x 3)) (pow.f64 y 3))) (/.f64 (sqrt.f64 -3) (*.f64 z z))) 1/24)))
(+.f64 (*.f64 (sqrt.f64 (*.f64 y x)) (sqrt.f64 -3)) (+.f64 (*.f64 1/16 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 y 5) (pow.f64 x 5)))) (/.f64 (pow.f64 z 3) (pow.f64 (sqrt.f64 -3) 5)))) (+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 y 3) (pow.f64 x 3)))) (/.f64 (pow.f64 z 2) (pow.f64 (sqrt.f64 -3) 3)))) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 y x))) (/.f64 z (sqrt.f64 -3)))))))
(fma.f64 (sqrt.f64 (*.f64 y x)) (sqrt.f64 -3) (fma.f64 1/16 (*.f64 (sqrt.f64 (/.f64 (/.f64 1 (pow.f64 y 5)) (pow.f64 x 5))) (/.f64 (pow.f64 z 3) (pow.f64 (sqrt.f64 -3) 5))) (fma.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 y 3) (pow.f64 x 3)))) (/.f64 (*.f64 z z) (pow.f64 (sqrt.f64 -3) 3))) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 y x))) (/.f64 z (sqrt.f64 -3)))))))
(fma.f64 (sqrt.f64 -3) (sqrt.f64 (*.f64 y x)) (fma.f64 1/16 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 y 5) (pow.f64 x 5)))) (/.f64 (pow.f64 z 3) (pow.f64 (sqrt.f64 -3) 5))) (fma.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 (/.f64 1 (pow.f64 y 3)) (pow.f64 x 3))) (*.f64 (/.f64 z (sqrt.f64 -3)) (/.f64 z -3))) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 y x))) (/.f64 z (sqrt.f64 -3)))))))
(fma.f64 (sqrt.f64 -3) (sqrt.f64 (*.f64 y x)) (fma.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 y 5) (pow.f64 x 5)))) (/.f64 (*.f64 (pow.f64 z 3) 1/16) (pow.f64 (sqrt.f64 -3) 5)) (fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 y x))) (/.f64 z (sqrt.f64 -3))) (*.f64 (/.f64 (sqrt.f64 (/.f64 (/.f64 1 (pow.f64 x 3)) (pow.f64 y 3))) (/.f64 (sqrt.f64 -3) (*.f64 z z))) 1/24))))

eval70.0ms (1.2%)

Compiler

Compiled 3080 to 1983 computations (35.6% saved)

prune33.0ms (0.6%)

Pruning

9 alts after pruning (4 fresh and 5 done)

PrunedKeptTotal
New2004204
Fresh303
Picked101
Done055
Total2049213
Error
0.0b
Counts
213 → 9
Alt Table
Click to see full alt table
StatusErrorProgram
0.2b
(-.f64 (*.f64 3 (*.f64 y x)) z)
47.3b
(neg.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 y x))) 2))
0.1b
(neg.f64 (fma.f64 -3 (*.f64 y x) z))
31.8b
(*.f64 3 (*.f64 y x))
0.1b
(fma.f64 y (*.f64 x 3) (neg.f64 z))
28.0b
(/.f64 (-.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9) (*.f64 (neg.f64 z) (neg.f64 z))) (-.f64 (*.f64 3 (*.f64 y x)) (neg.f64 z)))
31.7b
(*.f64 x (*.f64 3 y))
31.3b
(neg.f64 z)
0.1b
(-.f64 (*.f64 (*.f64 x 3) y) z)
Compiler

Compiled 98 to 69 computations (29.6% saved)

localize6.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.3b
(*.f64 x (*.f64 3 y))
0.3b
(*.f64 x (*.f64 3 y))
Compiler

Compiled 14 to 9 computations (35.7% saved)

series7.0ms (0.1%)

Counts
1 → 24
Calls

6 calls:

TimeVariablePointExpression
6.0ms
y
@inf
(*.f64 x (*.f64 3 y))
0.0ms
x
@0
(*.f64 x (*.f64 3 y))
0.0ms
y
@-inf
(*.f64 x (*.f64 3 y))
0.0ms
x
@-inf
(*.f64 x (*.f64 3 y))
0.0ms
x
@inf
(*.f64 x (*.f64 3 y))

rewrite37.0ms (0.6%)

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

Useful iterations: 0 (0.0ms)

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

simplify10.0ms (0.2%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
06168
110168
217168
319168
Stop Event
saturated
Counts
35 → 13
Calls
Call 1
Inputs
(*.f64 3 (*.f64 y x))
(*.f64 3 (*.f64 y x))
(*.f64 3 (*.f64 y x))
(*.f64 3 (*.f64 y x))
(*.f64 3 (*.f64 y x))
(*.f64 3 (*.f64 y x))
(*.f64 3 (*.f64 y x))
(*.f64 3 (*.f64 y x))
(*.f64 3 (*.f64 y x))
(*.f64 3 (*.f64 y x))
(*.f64 3 (*.f64 y x))
(*.f64 3 (*.f64 y x))
(*.f64 3 (*.f64 y x))
(*.f64 3 (*.f64 y x))
(*.f64 3 (*.f64 y x))
(*.f64 3 (*.f64 y x))
(*.f64 3 (*.f64 y x))
(*.f64 3 (*.f64 y x))
(*.f64 3 (*.f64 y x))
(*.f64 3 (*.f64 y x))
(*.f64 3 (*.f64 y x))
(*.f64 3 (*.f64 y x))
(*.f64 3 (*.f64 y x))
(*.f64 3 (*.f64 y x))
Outputs
(*.f64 3 (*.f64 y x))
(*.f64 x (*.f64 3 y))
(*.f64 3 (*.f64 y x))
(*.f64 x (*.f64 3 y))
(*.f64 3 (*.f64 y x))
(*.f64 x (*.f64 3 y))
(*.f64 3 (*.f64 y x))
(*.f64 x (*.f64 3 y))
(*.f64 3 (*.f64 y x))
(*.f64 x (*.f64 3 y))
(*.f64 3 (*.f64 y x))
(*.f64 x (*.f64 3 y))
(*.f64 3 (*.f64 y x))
(*.f64 x (*.f64 3 y))
(*.f64 3 (*.f64 y x))
(*.f64 x (*.f64 3 y))
(*.f64 3 (*.f64 y x))
(*.f64 x (*.f64 3 y))
(*.f64 3 (*.f64 y x))
(*.f64 x (*.f64 3 y))
(*.f64 3 (*.f64 y x))
(*.f64 x (*.f64 3 y))
(*.f64 3 (*.f64 y x))
(*.f64 x (*.f64 3 y))
(*.f64 3 (*.f64 y x))
(*.f64 x (*.f64 3 y))
(*.f64 3 (*.f64 y x))
(*.f64 x (*.f64 3 y))
(*.f64 3 (*.f64 y x))
(*.f64 x (*.f64 3 y))
(*.f64 3 (*.f64 y x))
(*.f64 x (*.f64 3 y))
(*.f64 3 (*.f64 y x))
(*.f64 x (*.f64 3 y))
(*.f64 3 (*.f64 y x))
(*.f64 x (*.f64 3 y))
(*.f64 3 (*.f64 y x))
(*.f64 x (*.f64 3 y))
(*.f64 3 (*.f64 y x))
(*.f64 x (*.f64 3 y))
(*.f64 3 (*.f64 y x))
(*.f64 x (*.f64 3 y))
(*.f64 3 (*.f64 y x))
(*.f64 x (*.f64 3 y))
(*.f64 3 (*.f64 y x))
(*.f64 x (*.f64 3 y))
(*.f64 3 (*.f64 y x))
(*.f64 x (*.f64 3 y))

localize26.0ms (0.4%)

Local error

Found 8 expressions with local error:

NewErrorProgram
0.3b
(*.f64 3 (*.f64 y x))
0.2b
(pow.f64 (*.f64 y x) 2)
0.1b
(*.f64 (pow.f64 (*.f64 y x) 2) 9)
0.0b
(-.f64 (*.f64 3 (*.f64 y x)) (neg.f64 z))
0.2b
(pow.f64 (*.f64 y x) 2)
0.3b
(*.f64 3 (*.f64 y x))
1.8b
(-.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9) (*.f64 (neg.f64 z) (neg.f64 z)))
26.4b
(/.f64 (-.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9) (*.f64 (neg.f64 z) (neg.f64 z))) (-.f64 (*.f64 3 (*.f64 y x)) (neg.f64 z)))
Compiler

Compiled 79 to 34 computations (57% saved)

series19.0ms (0.3%)

Counts
3 → 96
Calls

24 calls:

TimeVariablePointExpression
6.0ms
y
@-inf
(/.f64 (-.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9) (*.f64 (neg.f64 z) (neg.f64 z))) (-.f64 (*.f64 3 (*.f64 y x)) (neg.f64 z)))
1.0ms
y
@0
(/.f64 (-.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9) (*.f64 (neg.f64 z) (neg.f64 z))) (-.f64 (*.f64 3 (*.f64 y x)) (neg.f64 z)))
1.0ms
z
@inf
(-.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9) (*.f64 (neg.f64 z) (neg.f64 z)))
1.0ms
z
@0
(/.f64 (-.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9) (*.f64 (neg.f64 z) (neg.f64 z))) (-.f64 (*.f64 3 (*.f64 y x)) (neg.f64 z)))
1.0ms
y
@inf
(/.f64 (-.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9) (*.f64 (neg.f64 z) (neg.f64 z))) (-.f64 (*.f64 3 (*.f64 y x)) (neg.f64 z)))

rewrite109.0ms (1.8%)

Algorithm
batch-egg-rewrite
Rules
754×log-prod_binary64
535×fma-def_binary64
336×fma-neg_binary64
249×expm1-udef_binary64
249×log1p-udef_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01653
137226
2527726
Stop Event
node limit
Counts
3 → 412
Calls
Call 1
Inputs
(/.f64 (-.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9) (*.f64 (neg.f64 z) (neg.f64 z))) (-.f64 (*.f64 3 (*.f64 y x)) (neg.f64 z)))
(-.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9) (*.f64 (neg.f64 z) (neg.f64 z)))
(pow.f64 (*.f64 y x) 2)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 z (*.f64 (*.f64 y x) 3))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 y x) 3) z)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 y x) 3 z) (+.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 y x) 3 z) (fma.f64 (neg.f64 (cbrt.f64 z)) (cbrt.f64 (*.f64 z z)) z))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 9 (/.f64 (pow.f64 (*.f64 y x) 2) (fma.f64 (*.f64 y x) 3 z))) (/.f64 (*.f64 z z) (fma.f64 (*.f64 y x) 3 z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (fma.f64 (*.f64 y x) 3 z))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 y x) 3 0) z)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (fma.f64 (*.f64 y x) 3 z))) (cbrt.f64 (exp.f64 (fma.f64 (*.f64 y x) 3 z))))) (log.f64 (cbrt.f64 (exp.f64 (fma.f64 (*.f64 y x) 3 z)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (fma.f64 (*.f64 y x) 3 z)))) (log.f64 (sqrt.f64 (exp.f64 (fma.f64 (*.f64 y x) 3 z)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (*.f64 y x) 3) z)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 9 (/.f64 (pow.f64 (*.f64 y x) 2) (fma.f64 (*.f64 y x) 3 z))) (/.f64 (*.f64 z z) (fma.f64 (*.f64 y x) 3 z)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 (*.f64 y x) 3 z))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 27 (pow.f64 (*.f64 y x) 3)) (fma.f64 z (fma.f64 (*.f64 y x) 3 z) (*.f64 (pow.f64 (*.f64 y x) 2) 9))) (/.f64 (pow.f64 z 3) (fma.f64 z (fma.f64 (*.f64 y x) 3 z) (*.f64 (pow.f64 (*.f64 y x) 2) 9))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (fma.f64 (*.f64 y x) 3 0) z)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) (/.f64 1 (fma.f64 (*.f64 y x) 3 z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (*.f64 y x) 3 z) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (*.f64 y x) 3 z) (*.f64 (fma.f64 (*.f64 y x) 3 z) (/.f64 1 (fma.f64 (*.f64 y x) 3 z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 (*.f64 y x) 3 z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 (*.f64 y x) 3 z)) (cbrt.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2)) (cbrt.f64 (fma.f64 (*.f64 y x) 3 z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) 2)) (*.f64 (cbrt.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2)) (/.f64 1 (fma.f64 (*.f64 y x) 3 z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 (*.f64 y x) 3 z)) (sqrt.f64 (fma.f64 (*.f64 y x) 3 z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2)) (/.f64 1 (neg.f64 (fma.f64 (*.f64 y x) 3 z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 27 (pow.f64 (*.f64 y x) 3) (pow.f64 z 3)) (/.f64 1 (fma.f64 z (fma.f64 (*.f64 y x) 3 z) (*.f64 (pow.f64 (*.f64 y x) 2) 9))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (fma.f64 (*.f64 y x) 3 z)) (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cbrt.f64 (pow.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) 2))) (sqrt.f64 (cbrt.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cbrt.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2))) (/.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) (cbrt.f64 (fma.f64 (*.f64 y x) 3 z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 (fma.f64 (*.f64 y x) 3 z))) (/.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) (sqrt.f64 (fma.f64 (*.f64 y x) 3 z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) 2)) 1) (/.f64 (cbrt.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2)) (fma.f64 (*.f64 y x) 3 z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) 2)) (sqrt.f64 (fma.f64 (*.f64 y x) 3 z))) (/.f64 (cbrt.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2)) (sqrt.f64 (fma.f64 (*.f64 y x) 3 z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (fma.f64 (*.f64 y x) 3 z) (cbrt.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2))) (/.f64 (fma.f64 (*.f64 y x) 3 z) (cbrt.f64 (fma.f64 (*.f64 y x) 3 z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (fma.f64 (*.f64 y x) 3 z) 1) (/.f64 (fma.f64 (*.f64 y x) 3 z) (fma.f64 (*.f64 y x) 3 z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (sqrt.f64 3) (sqrt.f64 (*.f64 y x)) (sqrt.f64 z)) (-.f64 (sqrt.f64 (*.f64 (*.f64 y x) 3)) (sqrt.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) (fma.f64 27 (pow.f64 (*.f64 y x) 3) (pow.f64 z 3))) (fma.f64 z (fma.f64 (*.f64 y x) 3 z) (*.f64 (pow.f64 (*.f64 y x) 2) 9)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2)) (fma.f64 (*.f64 y x) 3 z))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 (*.f64 y x) 3 z) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 (*.f64 y x) 3 z)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 (*.f64 y x) 3 z)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 1 (fma.f64 (*.f64 y x) 3 z)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) (neg.f64 (fma.f64 (*.f64 y x) 3 z))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (fma.f64 (*.f64 y x) 3 z))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 (*.f64 y x) 3 z)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 (*.f64 y x) 3 z))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (*.f64 (*.f64 y x) 3))) (exp.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (pow.f64 (exp.f64 3) (*.f64 y x)) (+.f64 1 (expm1.f64 z))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (*.f64 (*.f64 y x) 3))) (+.f64 1 (expm1.f64 z))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 z) (pow.f64 (exp.f64 3) (*.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 z)) (pow.f64 (exp.f64 3) (*.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 z) (+.f64 1 (expm1.f64 (*.f64 (*.f64 y x) 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 z)) (+.f64 1 (expm1.f64 (*.f64 (*.f64 y x) 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (*.f64 y x) 3))) (exp.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 3) (*.f64 y x)) (+.f64 1 (expm1.f64 z))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (*.f64 y x) 3))) (+.f64 1 (expm1.f64 z))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 9 (/.f64 (pow.f64 (*.f64 y x) 2) (fma.f64 (*.f64 y x) 3 z)))) (exp.f64 (/.f64 (*.f64 z z) (fma.f64 (*.f64 y x) 3 z)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) 3) (pow.f64 (fma.f64 (*.f64 y x) 3 z) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f64 z (*.f64 (*.f64 y x) 3))))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f64 (*.f64 (*.f64 y x) 3) z)))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f64 (fma.f64 (*.f64 y x) 3 z) (hypot.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f64 (hypot.f64 z z) (fma.f64 (*.f64 y x) 3 z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y (*.f64 x 3) z)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x (*.f64 y 3) z)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y x) 3 z)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 9 (/.f64 (pow.f64 (*.f64 y x) 2) (fma.f64 (*.f64 y x) 3 z)) (/.f64 (*.f64 z z) (fma.f64 (*.f64 y x) 3 z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9) (/.f64 1 (fma.f64 (*.f64 y x) 3 z)) (/.f64 (*.f64 z z) (fma.f64 (*.f64 y x) 3 z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 z 1 (*.f64 (*.f64 y x) 3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 z -1 (*.f64 (*.f64 y x) 3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) (/.f64 1 (fma.f64 (*.f64 y x) 3 z)) (+.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) (/.f64 1 (fma.f64 (*.f64 y x) 3 z)) (fma.f64 (neg.f64 (cbrt.f64 z)) (cbrt.f64 (*.f64 z z)) z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 3 (*.f64 y x) z)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 y x) 3) 1 z)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (*.f64 y x) 3 z) 1 (+.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (*.f64 y x) 3 z) 1 (fma.f64 (neg.f64 (cbrt.f64 z)) (cbrt.f64 (*.f64 z z)) z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (*.f64 y x) 3 z) (*.f64 (fma.f64 (*.f64 y x) 3 z) (/.f64 1 (fma.f64 (*.f64 y x) 3 z))) (+.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (*.f64 y x) 3 z) (*.f64 (fma.f64 (*.f64 y x) 3 z) (/.f64 1 (fma.f64 (*.f64 y x) 3 z))) (fma.f64 (neg.f64 (cbrt.f64 z)) (cbrt.f64 (*.f64 z z)) z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 z (*.f64 (*.f64 y x) 3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (*.f64 y x) 3) z)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 (*.f64 y x) 3 z) (+.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 (*.f64 y x) 3 z) (fma.f64 (neg.f64 (cbrt.f64 z)) (cbrt.f64 (*.f64 z z)) z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 9 (/.f64 (pow.f64 (*.f64 y x) 2) (fma.f64 (*.f64 y x) 3 z))) (/.f64 (*.f64 z z) (fma.f64 (*.f64 y x) 3 z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 (*.f64 y x) 3 z)) (cbrt.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2)) (+.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 (*.f64 y x) 3 z)) (cbrt.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2)) (fma.f64 (neg.f64 (cbrt.f64 z)) (cbrt.f64 (*.f64 z z)) z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2)) (cbrt.f64 (fma.f64 (*.f64 y x) 3 z)) (+.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2)) (cbrt.f64 (fma.f64 (*.f64 y x) 3 z)) (fma.f64 (neg.f64 (cbrt.f64 z)) (cbrt.f64 (*.f64 z z)) z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) 2)) (*.f64 (cbrt.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2)) (/.f64 1 (fma.f64 (*.f64 y x) 3 z))) (+.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) 2)) (*.f64 (cbrt.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2)) (/.f64 1 (fma.f64 (*.f64 y x) 3 z))) (fma.f64 (neg.f64 (cbrt.f64 z)) (cbrt.f64 (*.f64 z z)) z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 z) (cbrt.f64 (*.f64 z z)) (*.f64 (*.f64 y x) 3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 y x)) 2) (*.f64 (cbrt.f64 (*.f64 y x)) 3) z)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (*.f64 y x) 3)) (cbrt.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9)) z)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 z z)) (cbrt.f64 z) (*.f64 (*.f64 y x) 3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 z z)) (neg.f64 (cbrt.f64 z)) (*.f64 (*.f64 y x) 3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9)) (cbrt.f64 (*.f64 (*.f64 y x) 3)) z)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 (*.f64 y x) 3 z)) (sqrt.f64 (fma.f64 (*.f64 y x) 3 z)) (+.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 (*.f64 y x) 3 z)) (sqrt.f64 (fma.f64 (*.f64 y x) 3 z)) (fma.f64 (neg.f64 (cbrt.f64 z)) (cbrt.f64 (*.f64 z z)) z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (*.f64 y x) 3)) (sqrt.f64 (*.f64 (*.f64 y x) 3)) z)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 z) (sqrt.f64 z) (*.f64 (*.f64 y x) 3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 z) (neg.f64 (sqrt.f64 z)) (*.f64 (*.f64 y x) 3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 y x)) (*.f64 (sqrt.f64 (*.f64 y x)) 3) z)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2)) (/.f64 1 (neg.f64 (fma.f64 (*.f64 y x) 3 z))) (+.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2)) (/.f64 1 (neg.f64 (fma.f64 (*.f64 y x) 3 z))) (fma.f64 (neg.f64 (cbrt.f64 z)) (cbrt.f64 (*.f64 z z)) z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 27 (pow.f64 (*.f64 y x) 3) (pow.f64 z 3)) (/.f64 1 (fma.f64 z (fma.f64 (*.f64 y x) 3 z) (*.f64 (pow.f64 (*.f64 y x) 2) 9))) (+.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 27 (pow.f64 (*.f64 y x) 3) (pow.f64 z 3)) (/.f64 1 (fma.f64 z (fma.f64 (*.f64 y x) 3 z) (*.f64 (pow.f64 (*.f64 y x) 2) 9))) (fma.f64 (neg.f64 (cbrt.f64 z)) (cbrt.f64 (*.f64 z z)) z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (fma.f64 (*.f64 y x) 3 z)) (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) (+.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (fma.f64 (*.f64 y x) 3 z)) (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) (fma.f64 (neg.f64 (cbrt.f64 z)) (cbrt.f64 (*.f64 z z)) z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 z (*.f64 (*.f64 y x) 3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y 3) x z)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (*.f64 9 (/.f64 (pow.f64 (*.f64 y x) 2) (fma.f64 (*.f64 y x) 3 z)))) (cbrt.f64 (*.f64 9 (/.f64 (pow.f64 (*.f64 y x) 2) (fma.f64 (*.f64 y x) 3 z))))) (cbrt.f64 (*.f64 9 (/.f64 (pow.f64 (*.f64 y x) 2) (fma.f64 (*.f64 y x) 3 z)))) (/.f64 (*.f64 z z) (fma.f64 (*.f64 y x) 3 z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cbrt.f64 (pow.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) 2))) (sqrt.f64 (cbrt.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2))) (+.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cbrt.f64 (pow.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) 2))) (sqrt.f64 (cbrt.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2))) (fma.f64 (neg.f64 (cbrt.f64 z)) (cbrt.f64 (*.f64 z z)) z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cbrt.f64 (*.f64 (pow.f64 (*.f64 y x) 4) 81))) (sqrt.f64 (cbrt.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9))) z)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cbrt.f64 (pow.f64 z 4))) (sqrt.f64 (cbrt.f64 (*.f64 z z))) (*.f64 (*.f64 y x) 3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 9 (/.f64 (pow.f64 (*.f64 y x) 2) (fma.f64 (*.f64 y x) 3 z)))) (sqrt.f64 (*.f64 9 (/.f64 (pow.f64 (*.f64 y x) 2) (fma.f64 (*.f64 y x) 3 z)))) (/.f64 (*.f64 z z) (fma.f64 (*.f64 y x) 3 z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (cbrt.f64 (*.f64 z z))) (cbrt.f64 z) (*.f64 (*.f64 y x) 3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (sqrt.f64 z)) (sqrt.f64 z) (*.f64 (*.f64 y x) 3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (*.f64 y x) 2) 1) (/.f64 9 (fma.f64 (*.f64 y x) 3 z)) (/.f64 (*.f64 z z) (fma.f64 (*.f64 y x) 3 z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (cbrt.f64 (*.f64 (pow.f64 (*.f64 y x) 4) 81)) 1) (/.f64 (cbrt.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9)) (fma.f64 (*.f64 y x) 3 z)) (/.f64 (*.f64 z z) (fma.f64 (*.f64 y x) 3 z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (*.f64 (*.f64 y x) 3) 1) (/.f64 (*.f64 (*.f64 y x) 3) (fma.f64 (*.f64 y x) 3 z)) (/.f64 (*.f64 z z) (fma.f64 (*.f64 y x) 3 z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (*.f64 y x) 2) (cbrt.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2))) (/.f64 9 (cbrt.f64 (fma.f64 (*.f64 y x) 3 z))) (/.f64 (*.f64 z z) (fma.f64 (*.f64 y x) 3 z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 9 (cbrt.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2))) (/.f64 (pow.f64 (*.f64 y x) 2) (cbrt.f64 (fma.f64 (*.f64 y x) 3 z))) (/.f64 (*.f64 z z) (fma.f64 (*.f64 y x) 3 z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (cbrt.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2))) (/.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9) (cbrt.f64 (fma.f64 (*.f64 y x) 3 z))) (/.f64 (*.f64 z z) (fma.f64 (*.f64 y x) 3 z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (cbrt.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2))) (/.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) (cbrt.f64 (fma.f64 (*.f64 y x) 3 z))) (+.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (cbrt.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2))) (/.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) (cbrt.f64 (fma.f64 (*.f64 y x) 3 z))) (fma.f64 (neg.f64 (cbrt.f64 z)) (cbrt.f64 (*.f64 z z)) z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (cbrt.f64 (*.f64 (pow.f64 (*.f64 y x) 4) 81)) (cbrt.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2))) (/.f64 (cbrt.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9)) (cbrt.f64 (fma.f64 (*.f64 y x) 3 z))) (/.f64 (*.f64 z z) (fma.f64 (*.f64 y x) 3 z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (*.f64 (*.f64 y x) 3) (cbrt.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2))) (/.f64 (*.f64 (*.f64 y x) 3) (cbrt.f64 (fma.f64 (*.f64 y x) 3 z))) (/.f64 (*.f64 z z) (fma.f64 (*.f64 y x) 3 z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (*.f64 y x) 2) (sqrt.f64 (fma.f64 (*.f64 y x) 3 z))) (/.f64 9 (sqrt.f64 (fma.f64 (*.f64 y x) 3 z))) (/.f64 (*.f64 z z) (fma.f64 (*.f64 y x) 3 z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 9 (sqrt.f64 (fma.f64 (*.f64 y x) 3 z))) (/.f64 (pow.f64 (*.f64 y x) 2) (sqrt.f64 (fma.f64 (*.f64 y x) 3 z))) (/.f64 (*.f64 z z) (fma.f64 (*.f64 y x) 3 z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (sqrt.f64 (fma.f64 (*.f64 y x) 3 z))) (/.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9) (sqrt.f64 (fma.f64 (*.f64 y x) 3 z))) (/.f64 (*.f64 z z) (fma.f64 (*.f64 y x) 3 z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (sqrt.f64 (fma.f64 (*.f64 y x) 3 z))) (/.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) (sqrt.f64 (fma.f64 (*.f64 y x) 3 z))) (+.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (sqrt.f64 (fma.f64 (*.f64 y x) 3 z))) (/.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) (sqrt.f64 (fma.f64 (*.f64 y x) 3 z))) (fma.f64 (neg.f64 (cbrt.f64 z)) (cbrt.f64 (*.f64 z z)) z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (cbrt.f64 (*.f64 (pow.f64 (*.f64 y x) 4) 81)) (sqrt.f64 (fma.f64 (*.f64 y x) 3 z))) (/.f64 (cbrt.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9)) (sqrt.f64 (fma.f64 (*.f64 y x) 3 z))) (/.f64 (*.f64 z z) (fma.f64 (*.f64 y x) 3 z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (*.f64 (*.f64 y x) 3) (sqrt.f64 (fma.f64 (*.f64 y x) 3 z))) (/.f64 (*.f64 (*.f64 y x) 3) (sqrt.f64 (fma.f64 (*.f64 y x) 3 z))) (/.f64 (*.f64 z z) (fma.f64 (*.f64 y x) 3 z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (cbrt.f64 (pow.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) 2)) 1) (/.f64 (cbrt.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2)) (fma.f64 (*.f64 y x) 3 z)) (+.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (cbrt.f64 (pow.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) 2)) 1) (/.f64 (cbrt.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2)) (fma.f64 (*.f64 y x) 3 z)) (fma.f64 (neg.f64 (cbrt.f64 z)) (cbrt.f64 (*.f64 z z)) z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (cbrt.f64 (pow.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) 2)) (sqrt.f64 (fma.f64 (*.f64 y x) 3 z))) (/.f64 (cbrt.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2)) (sqrt.f64 (fma.f64 (*.f64 y x) 3 z))) (+.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (cbrt.f64 (pow.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) 2)) (sqrt.f64 (fma.f64 (*.f64 y x) 3 z))) (/.f64 (cbrt.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2)) (sqrt.f64 (fma.f64 (*.f64 y x) 3 z))) (fma.f64 (neg.f64 (cbrt.f64 z)) (cbrt.f64 (*.f64 z z)) z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (fma.f64 (*.f64 y x) 3 z) (cbrt.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2))) (/.f64 (fma.f64 (*.f64 y x) 3 z) (cbrt.f64 (fma.f64 (*.f64 y x) 3 z))) (+.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (fma.f64 (*.f64 y x) 3 z) (cbrt.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2))) (/.f64 (fma.f64 (*.f64 y x) 3 z) (cbrt.f64 (fma.f64 (*.f64 y x) 3 z))) (fma.f64 (neg.f64 (cbrt.f64 z)) (cbrt.f64 (*.f64 z z)) z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (fma.f64 (*.f64 y x) 3 z) 1) (/.f64 (fma.f64 (*.f64 y x) 3 z) (fma.f64 (*.f64 y x) 3 z)) (+.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (fma.f64 (*.f64 y x) 3 z) 1) (/.f64 (fma.f64 (*.f64 y x) 3 z) (fma.f64 (*.f64 y x) 3 z)) (fma.f64 (neg.f64 (cbrt.f64 z)) (cbrt.f64 (*.f64 z z)) z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (sqrt.f64 3) (sqrt.f64 (*.f64 y x)) (sqrt.f64 z)) (-.f64 (sqrt.f64 (*.f64 (*.f64 y x) 3)) (sqrt.f64 z)) (+.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (sqrt.f64 3) (sqrt.f64 (*.f64 y x)) (sqrt.f64 z)) (-.f64 (sqrt.f64 (*.f64 (*.f64 y x) 3)) (sqrt.f64 z)) (fma.f64 (neg.f64 (cbrt.f64 z)) (cbrt.f64 (*.f64 z z)) z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9) (fma.f64 27 (pow.f64 (*.f64 y x) 3) (pow.f64 z 3))) (fma.f64 z (fma.f64 (*.f64 y x) 3 z) (*.f64 (pow.f64 (*.f64 y x) 2) 9)) (/.f64 (*.f64 z z) (fma.f64 (*.f64 y x) 3 z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9) (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2)) (fma.f64 (*.f64 y x) 3 z) (/.f64 (*.f64 z z) (fma.f64 (*.f64 y x) 3 z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) (fma.f64 27 (pow.f64 (*.f64 y x) 3) (pow.f64 z 3))) (fma.f64 z (fma.f64 (*.f64 y x) 3 z) (*.f64 (pow.f64 (*.f64 y x) 2) 9)) (+.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) (fma.f64 27 (pow.f64 (*.f64 y x) 3) (pow.f64 z 3))) (fma.f64 z (fma.f64 (*.f64 y x) 3 z) (*.f64 (pow.f64 (*.f64 y x) 2) 9)) (fma.f64 (neg.f64 (cbrt.f64 z)) (cbrt.f64 (*.f64 z z)) z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2)) (fma.f64 (*.f64 y x) 3 z) (+.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2)) (fma.f64 (*.f64 y x) 3 z) (fma.f64 (neg.f64 (cbrt.f64 z)) (cbrt.f64 (*.f64 z z)) z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 3 x) y z)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 3 (pow.f64 (cbrt.f64 (*.f64 y x)) 2)) (cbrt.f64 (*.f64 y x)) z)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 3 (sqrt.f64 (*.f64 y x))) (sqrt.f64 (*.f64 y x)) z)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 y 3) 1) x z)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 y 3) (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 x) z)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 y 3) (sqrt.f64 x)) (sqrt.f64 x) z)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -1 (cbrt.f64 (*.f64 z z))) (cbrt.f64 z) (*.f64 (*.f64 y x) 3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -1 (sqrt.f64 z)) (sqrt.f64 z) (*.f64 (*.f64 y x) 3))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 (*.f64 y x) 3 z)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 (*.f64 y x) 3 z)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 (*.f64 y x) 3 z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 (*.f64 y x) 3 z)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9) (*.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9) (fma.f64 z z (fma.f64 z z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 z z) (*.f64 (pow.f64 (*.f64 y x) 2) 9))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) (fma.f64 z z (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 z z))) (cbrt.f64 (pow.f64 z 4)) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) (*.f64 (fma.f64 z z (*.f64 z z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) (+.f64 (fma.f64 z z (*.f64 z z)) (fma.f64 z z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 z z (*.f64 z z)) (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (*.f64 y x) 3) (fma.f64 (*.f64 y x) 3 z)) (*.f64 z (fma.f64 (*.f64 y x) 3 z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (fma.f64 (*.f64 y x) 3 z) (*.f64 (*.f64 y x) 3)) (*.f64 (fma.f64 (*.f64 y x) 3 z) z))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2))) (cbrt.f64 (exp.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2))))) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2)))) (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) (*.f64 (/.f64 1 (fma.f64 (*.f64 y x) 3 z)) (fma.f64 (*.f64 y x) 3 z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (*.f64 y x) 3 z) (fma.f64 (*.f64 y x) 3 z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 3) (/.f64 1 (fma.f64 (*.f64 y x) 3 z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) 2) (*.f64 (/.f64 1 (fma.f64 (*.f64 y x) 3 z)) (/.f64 1 (fma.f64 (*.f64 y x) 3 z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) 2) (/.f64 1 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2)) (cbrt.f64 (pow.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2)) (*.f64 (cbrt.f64 (fma.f64 (*.f64 y x) 3 z)) (fma.f64 (*.f64 y x) 3 z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) 2)) (cbrt.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 (*.f64 y x) 3 z)) (*.f64 (sqrt.f64 (fma.f64 (*.f64 y x) 3 z)) (fma.f64 (*.f64 y x) 3 z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (pow.f64 (pow.f64 (*.f64 y x) 2) 3) 729 (pow.f64 z 6)) (/.f64 1 (fma.f64 (*.f64 z z) (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) (*.f64 (pow.f64 (*.f64 y x) 4) 81))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (fma.f64 (*.f64 y x) 3 z) (sqrt.f64 (fma.f64 (*.f64 y x) 3 z))) (sqrt.f64 (fma.f64 (*.f64 y x) 3 z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (fma.f64 (*.f64 y x) 3 z) (cbrt.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2))) (cbrt.f64 (fma.f64 (*.f64 y x) 3 z)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) (*.f64 (/.f64 1 (fma.f64 (*.f64 y x) 3 z)) (fma.f64 (*.f64 y x) 3 z)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) (*.f64 (fma.f64 (*.f64 y x) 3 z) (/.f64 1 (fma.f64 (*.f64 y x) 3 z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 (*.f64 y x) 3 z) (/.f64 1 (fma.f64 (*.f64 y x) 3 z)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (*.f64 (/.f64 1 (fma.f64 (*.f64 y x) 3 z)) (/.f64 1 (fma.f64 (*.f64 y x) 3 z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (*.f64 z z) (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) (*.f64 (pow.f64 (*.f64 y x) 4) 81)) (fma.f64 (pow.f64 (pow.f64 (*.f64 y x) 2) 3) 729 (pow.f64 z 6))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) (pow.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 3) (fma.f64 (*.f64 y x) 3 z))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) 2) (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2)) (*.f64 (/.f64 1 (fma.f64 (*.f64 y x) 3 z)) (neg.f64 (fma.f64 (*.f64 y x) 3 z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 (pow.f64 (pow.f64 (*.f64 y x) 2) 3) 729 (pow.f64 z 6)) (fma.f64 (*.f64 z z) (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) (*.f64 (pow.f64 (*.f64 y x) 4) 81)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2)) (neg.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2))) (*.f64 (neg.f64 (fma.f64 (*.f64 y x) 3 z)) (neg.f64 (fma.f64 (*.f64 y x) 3 z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (fma.f64 27 (pow.f64 (*.f64 y x) 3) (pow.f64 z 3)) (fma.f64 27 (pow.f64 (*.f64 y x) 3) (pow.f64 z 3))) (*.f64 (fma.f64 z (fma.f64 (*.f64 y x) 3 z) (*.f64 (pow.f64 (*.f64 y x) 2) 9)) (fma.f64 z (fma.f64 (*.f64 y x) 3 z) (*.f64 (pow.f64 (*.f64 y x) 2) 9))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (fma.f64 (pow.f64 (pow.f64 (*.f64 y x) 2) 3) 729 (pow.f64 z 6))) (neg.f64 (fma.f64 (*.f64 z z) (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) (*.f64 (pow.f64 (*.f64 y x) 4) 81))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (pow.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) 2)) (neg.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2)) (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2)) (neg.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2)) 1) (*.f64 (neg.f64 (fma.f64 (*.f64 y x) 3 z)) (/.f64 1 (fma.f64 (*.f64 y x) 3 z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) (neg.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2))) (neg.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (fma.f64 27 (pow.f64 (*.f64 y x) 3) (pow.f64 z 3)) (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2)) (fma.f64 27 (pow.f64 (*.f64 y x) 3) (pow.f64 z 3)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) 3) (pow.f64 (fma.f64 z z (*.f64 z z)) 3)) (+.f64 (pow.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) 2) (-.f64 (*.f64 (fma.f64 z z (*.f64 z z)) (fma.f64 z z (*.f64 z z))) (*.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) (fma.f64 z z (*.f64 z z))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) 2) (*.f64 (fma.f64 z z (*.f64 z z)) (fma.f64 z z (*.f64 z z)))) (-.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) (fma.f64 z z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2)) (fma.f64 (*.f64 y x) 3 z)) (neg.f64 (fma.f64 (*.f64 y x) 3 z)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (fma.f64 27 (pow.f64 (*.f64 y x) 3) (pow.f64 z 3)) (fma.f64 (*.f64 y x) 3 z)) (fma.f64 z (fma.f64 (*.f64 y x) 3 z) (*.f64 (pow.f64 (*.f64 y x) 2) 9)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) (fma.f64 27 (pow.f64 (*.f64 y x) 3) (pow.f64 z 3))) (*.f64 (fma.f64 (*.f64 y x) 3 z) (fma.f64 z (fma.f64 (*.f64 y x) 3 z) (*.f64 (pow.f64 (*.f64 y x) 2) 9))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (fma.f64 (*.f64 y x) 3 z) (neg.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2))) (neg.f64 (fma.f64 (*.f64 y x) 3 z)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (fma.f64 (*.f64 y x) 3 z) (fma.f64 27 (pow.f64 (*.f64 y x) 3) (pow.f64 z 3))) (fma.f64 z (fma.f64 (*.f64 y x) 3 z) (*.f64 (pow.f64 (*.f64 y x) 2) 9)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 (*.f64 y x) 3 z) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9))) (pow.f64 (exp.f64 z) z)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (pow.f64 (exp.f64 (pow.f64 (*.f64 y x) 2)) 9) (+.f64 1 (expm1.f64 (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9))) (+.f64 1 (expm1.f64 (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9))) (pow.f64 (exp.f64 z) z)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 (pow.f64 (*.f64 y x) 2)) 9) (+.f64 1 (expm1.f64 (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9))) (+.f64 1 (expm1.f64 (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 z) z) (pow.f64 (exp.f64 (pow.f64 (*.f64 y x) 2)) 9)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 z z))) (pow.f64 (exp.f64 (pow.f64 (*.f64 y x) 2)) 9)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 z) z) (+.f64 1 (expm1.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 z z))) (+.f64 1 (expm1.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2))) (exp.f64 (fma.f64 z z (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 z z (*.f64 z z))) (exp.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 z z (*.f64 z z))) (+.f64 1 (expm1.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) 3))))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9) (*.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y x) (*.f64 (*.f64 y x) 9) (*.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y x) (*.f64 (*.f64 y x) 9) (fma.f64 z z (fma.f64 z z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y x) (*.f64 (*.f64 y x) 9) (neg.f64 (-.f64 (*.f64 z z) (fma.f64 z z (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y x) (*.f64 3 (*.f64 (*.f64 y x) 3)) (*.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y x) (*.f64 3 (*.f64 (*.f64 y x) 3)) (fma.f64 z z (fma.f64 z z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y x) (*.f64 3 (*.f64 (*.f64 y x) 3)) (neg.f64 (-.f64 (*.f64 z z) (fma.f64 z z (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (*.f64 y x) 2) 9 (*.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (*.f64 y x) 2) 9 (fma.f64 z z (fma.f64 z z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (*.f64 y x) 2) 9 (neg.f64 (-.f64 (*.f64 z z) (fma.f64 z z (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 9 (pow.f64 (*.f64 y x) 2) (*.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 9 (pow.f64 (*.f64 y x) 2) (fma.f64 z z (fma.f64 z z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 9 (pow.f64 (*.f64 y x) 2) (neg.f64 (-.f64 (*.f64 z z) (fma.f64 z z (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9) 1 (*.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9) 1 (fma.f64 z z (fma.f64 z z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9) 1 (neg.f64 (-.f64 (*.f64 z z) (fma.f64 z z (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 z z (*.f64 (pow.f64 (*.f64 y x) 2) 9))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 z z) 1 (*.f64 (pow.f64 (*.f64 y x) 2) 9))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) 1 (fma.f64 z z (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) 1 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 z z))) (cbrt.f64 (pow.f64 z 4)) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) 1 (*.f64 (fma.f64 z z (*.f64 z z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) 1 (+.f64 (fma.f64 z z (*.f64 z z)) (fma.f64 z z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) (*.f64 (/.f64 1 (fma.f64 (*.f64 y x) 3 z)) (fma.f64 (*.f64 y x) 3 z)) (fma.f64 z z (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) (*.f64 (/.f64 1 (fma.f64 (*.f64 y x) 3 z)) (fma.f64 (*.f64 y x) 3 z)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 z z))) (cbrt.f64 (pow.f64 z 4)) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) (*.f64 (/.f64 1 (fma.f64 (*.f64 y x) 3 z)) (fma.f64 (*.f64 y x) 3 z)) (*.f64 (fma.f64 z z (*.f64 z z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) (*.f64 (/.f64 1 (fma.f64 (*.f64 y x) 3 z)) (fma.f64 (*.f64 y x) 3 z)) (+.f64 (fma.f64 z z (*.f64 z z)) (fma.f64 z z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 3 (*.f64 (*.f64 y x) (*.f64 (*.f64 y x) 3)) (*.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 3 (*.f64 (*.f64 y x) (*.f64 (*.f64 y x) 3)) (fma.f64 z z (fma.f64 z z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 3 (*.f64 (*.f64 y x) (*.f64 (*.f64 y x) 3)) (neg.f64 (-.f64 (*.f64 z z) (fma.f64 z z (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 y x) 3) (*.f64 (*.f64 y x) 3) (*.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 y x) 3) (*.f64 (*.f64 y x) 3) (fma.f64 z z (fma.f64 z z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 y x) 3) (*.f64 (*.f64 y x) 3) (neg.f64 (-.f64 (*.f64 z z) (fma.f64 z z (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 y x) 3) (fma.f64 (*.f64 y x) 3 z) (*.f64 z (fma.f64 (*.f64 y x) 3 z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (*.f64 y x) 3 z) (*.f64 (*.f64 y x) 3) (*.f64 (fma.f64 (*.f64 y x) 3 z) z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (*.f64 y x) 3 z) (fma.f64 (*.f64 y x) 3 z) (fma.f64 z z (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (*.f64 y x) 3 z) (fma.f64 (*.f64 y x) 3 z) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 z z))) (cbrt.f64 (pow.f64 z 4)) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (*.f64 y x) 3 z) (fma.f64 (*.f64 y x) 3 z) (*.f64 (fma.f64 z z (*.f64 z z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (*.f64 y x) 3 z) (fma.f64 (*.f64 y x) 3 z) (+.f64 (fma.f64 z z (*.f64 z z)) (fma.f64 z z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (pow.f64 (*.f64 y x) 2) 9) (*.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (pow.f64 (*.f64 y x) 2) 9) (fma.f64 z z (fma.f64 z z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (pow.f64 (*.f64 y x) 2) 9) (neg.f64 (-.f64 (*.f64 z z) (fma.f64 z z (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 z z) (*.f64 (pow.f64 (*.f64 y x) 2) 9))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) (fma.f64 z z (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 z z))) (cbrt.f64 (pow.f64 z 4)) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) (*.f64 (fma.f64 z z (*.f64 z z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) (+.f64 (fma.f64 z z (*.f64 z z)) (fma.f64 z z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 z z (*.f64 z z)) (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 3) (/.f64 1 (fma.f64 (*.f64 y x) 3 z)) (fma.f64 z z (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 3) (/.f64 1 (fma.f64 (*.f64 y x) 3 z)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 z z))) (cbrt.f64 (pow.f64 z 4)) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 3) (/.f64 1 (fma.f64 (*.f64 y x) 3 z)) (*.f64 (fma.f64 z z (*.f64 z z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 3) (/.f64 1 (fma.f64 (*.f64 y x) 3 z)) (+.f64 (fma.f64 z z (*.f64 z z)) (fma.f64 z z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) 2) (*.f64 (/.f64 1 (fma.f64 (*.f64 y x) 3 z)) (/.f64 1 (fma.f64 (*.f64 y x) 3 z))) (fma.f64 z z (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) 2) (*.f64 (/.f64 1 (fma.f64 (*.f64 y x) 3 z)) (/.f64 1 (fma.f64 (*.f64 y x) 3 z))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 z z))) (cbrt.f64 (pow.f64 z 4)) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) 2) (*.f64 (/.f64 1 (fma.f64 (*.f64 y x) 3 z)) (/.f64 1 (fma.f64 (*.f64 y x) 3 z))) (*.f64 (fma.f64 z z (*.f64 z z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) 2) (*.f64 (/.f64 1 (fma.f64 (*.f64 y x) 3 z)) (/.f64 1 (fma.f64 (*.f64 y x) 3 z))) (+.f64 (fma.f64 z z (*.f64 z z)) (fma.f64 z z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) 2) (/.f64 1 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2)) (fma.f64 z z (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) 2) (/.f64 1 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 z z))) (cbrt.f64 (pow.f64 z 4)) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) 2) (/.f64 1 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2)) (*.f64 (fma.f64 z z (*.f64 z z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) 2) (/.f64 1 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2)) (+.f64 (fma.f64 z z (*.f64 z z)) (fma.f64 z z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2)) (cbrt.f64 (pow.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) 2)) (fma.f64 z z (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2)) (cbrt.f64 (pow.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) 2)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 z z))) (cbrt.f64 (pow.f64 z 4)) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2)) (cbrt.f64 (pow.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) 2)) (*.f64 (fma.f64 z z (*.f64 z z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2)) (cbrt.f64 (pow.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) 2)) (+.f64 (fma.f64 z z (*.f64 z z)) (fma.f64 z z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2)) (*.f64 (cbrt.f64 (fma.f64 (*.f64 y x) 3 z)) (fma.f64 (*.f64 y x) 3 z)) (fma.f64 z z (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2)) (*.f64 (cbrt.f64 (fma.f64 (*.f64 y x) 3 z)) (fma.f64 (*.f64 y x) 3 z)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 z z))) (cbrt.f64 (pow.f64 z 4)) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2)) (*.f64 (cbrt.f64 (fma.f64 (*.f64 y x) 3 z)) (fma.f64 (*.f64 y x) 3 z)) (*.f64 (fma.f64 z z (*.f64 z z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2)) (*.f64 (cbrt.f64 (fma.f64 (*.f64 y x) 3 z)) (fma.f64 (*.f64 y x) 3 z)) (+.f64 (fma.f64 z z (*.f64 z z)) (fma.f64 z z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) 2)) (cbrt.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2)) (fma.f64 z z (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) 2)) (cbrt.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 z z))) (cbrt.f64 (pow.f64 z 4)) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) 2)) (cbrt.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2)) (*.f64 (fma.f64 z z (*.f64 z z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) 2)) (cbrt.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2)) (+.f64 (fma.f64 z z (*.f64 z z)) (fma.f64 z z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (*.f64 y x) 4)) (*.f64 (pow.f64 (cbrt.f64 (*.f64 y x)) 2) 9) (*.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (*.f64 y x) 4)) (*.f64 (pow.f64 (cbrt.f64 (*.f64 y x)) 2) 9) (fma.f64 z z (fma.f64 z z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (*.f64 y x) 4)) (*.f64 (pow.f64 (cbrt.f64 (*.f64 y x)) 2) 9) (neg.f64 (-.f64 (*.f64 z z) (fma.f64 z z (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 z z)) (cbrt.f64 (pow.f64 z 4)) (*.f64 (pow.f64 (*.f64 y x) 2) 9))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 z z)) (*.f64 (cbrt.f64 z) z) (*.f64 (pow.f64 (*.f64 y x) 2) 9))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 z 4)) (cbrt.f64 (*.f64 z z)) (*.f64 (pow.f64 (*.f64 y x) 2) 9))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 z 4)) (neg.f64 (cbrt.f64 (*.f64 z z))) (*.f64 (pow.f64 (*.f64 y x) 2) 9))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9)) (cbrt.f64 (*.f64 (pow.f64 (*.f64 y x) 4) 81)) (*.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9)) (cbrt.f64 (*.f64 (pow.f64 (*.f64 y x) 4) 81)) (fma.f64 z z (fma.f64 z z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9)) (cbrt.f64 (*.f64 (pow.f64 (*.f64 y x) 4) 81)) (neg.f64 (-.f64 (*.f64 z z) (fma.f64 z z (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9)) (*.f64 (cbrt.f64 (*.f64 (*.f64 y x) 3)) (*.f64 (*.f64 y x) 3)) (*.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9)) (*.f64 (cbrt.f64 (*.f64 (*.f64 y x) 3)) (*.f64 (*.f64 y x) 3)) (fma.f64 z z (fma.f64 z z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9)) (*.f64 (cbrt.f64 (*.f64 (*.f64 y x) 3)) (*.f64 (*.f64 y x) 3)) (neg.f64 (-.f64 (*.f64 z z) (fma.f64 z z (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (pow.f64 (*.f64 y x) 4) 81)) (cbrt.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9)) (*.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (pow.f64 (*.f64 y x) 4) 81)) (cbrt.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9)) (fma.f64 z z (fma.f64 z z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (pow.f64 (*.f64 y x) 4) 81)) (cbrt.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9)) (neg.f64 (-.f64 (*.f64 z z) (fma.f64 z z (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 (*.f64 y x) 3 z)) (*.f64 (sqrt.f64 (fma.f64 (*.f64 y x) 3 z)) (fma.f64 (*.f64 y x) 3 z)) (fma.f64 z z (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 (*.f64 y x) 3 z)) (*.f64 (sqrt.f64 (fma.f64 (*.f64 y x) 3 z)) (fma.f64 (*.f64 y x) 3 z)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 z z))) (cbrt.f64 (pow.f64 z 4)) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 (*.f64 y x) 3 z)) (*.f64 (sqrt.f64 (fma.f64 (*.f64 y x) 3 z)) (fma.f64 (*.f64 y x) 3 z)) (*.f64 (fma.f64 z z (*.f64 z z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 (*.f64 y x) 3 z)) (*.f64 (sqrt.f64 (fma.f64 (*.f64 y x) 3 z)) (fma.f64 (*.f64 y x) 3 z)) (+.f64 (fma.f64 z z (*.f64 z z)) (fma.f64 z z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (*.f64 y x) 3)) (*.f64 (sqrt.f64 (*.f64 (*.f64 y x) 3)) (*.f64 (*.f64 y x) 3)) (*.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (*.f64 y x) 3)) (*.f64 (sqrt.f64 (*.f64 (*.f64 y x) 3)) (*.f64 (*.f64 y x) 3)) (fma.f64 z z (fma.f64 z z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (*.f64 y x) 3)) (*.f64 (sqrt.f64 (*.f64 (*.f64 y x) 3)) (*.f64 (*.f64 y x) 3)) (neg.f64 (-.f64 (*.f64 z z) (fma.f64 z z (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 z) (*.f64 (sqrt.f64 z) z) (*.f64 (pow.f64 (*.f64 y x) 2) 9))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y y) (*.f64 (*.f64 x x) 9) (*.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y y) (*.f64 (*.f64 x x) 9) (fma.f64 z z (fma.f64 z z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y y) (*.f64 (*.f64 x x) 9) (neg.f64 (-.f64 (*.f64 z z) (fma.f64 z z (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (pow.f64 (pow.f64 (*.f64 y x) 2) 3) 729 (pow.f64 z 6)) (/.f64 1 (fma.f64 (*.f64 z z) (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) (*.f64 (pow.f64 (*.f64 y x) 4) 81))) (fma.f64 z z (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (pow.f64 (pow.f64 (*.f64 y x) 2) 3) 729 (pow.f64 z 6)) (/.f64 1 (fma.f64 (*.f64 z z) (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) (*.f64 (pow.f64 (*.f64 y x) 4) 81))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 z z))) (cbrt.f64 (pow.f64 z 4)) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (pow.f64 (pow.f64 (*.f64 y x) 2) 3) 729 (pow.f64 z 6)) (/.f64 1 (fma.f64 (*.f64 z z) (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) (*.f64 (pow.f64 (*.f64 y x) 4) 81))) (*.f64 (fma.f64 z z (*.f64 z z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (pow.f64 (pow.f64 (*.f64 y x) 2) 3) 729 (pow.f64 z 6)) (/.f64 1 (fma.f64 (*.f64 z z) (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2) (*.f64 (pow.f64 (*.f64 y x) 4) 81))) (+.f64 (fma.f64 z z (*.f64 z z)) (fma.f64 z z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 (*.f64 z z) (*.f64 (pow.f64 (*.f64 y x) 2) 9))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y 3) (*.f64 x (*.f64 (*.f64 y x) 3)) (*.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y 3) (*.f64 x (*.f64 (*.f64 y x) 3)) (fma.f64 z z (fma.f64 z z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y 3) (*.f64 x (*.f64 (*.f64 y x) 3)) (neg.f64 (-.f64 (*.f64 z z) (fma.f64 z z (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (fma.f64 (*.f64 y x) 3 z) (sqrt.f64 (fma.f64 (*.f64 y x) 3 z))) (sqrt.f64 (fma.f64 (*.f64 y x) 3 z)) (fma.f64 z z (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (fma.f64 (*.f64 y x) 3 z) (sqrt.f64 (fma.f64 (*.f64 y x) 3 z))) (sqrt.f64 (fma.f64 (*.f64 y x) 3 z)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 z z))) (cbrt.f64 (pow.f64 z 4)) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (fma.f64 (*.f64 y x) 3 z) (sqrt.f64 (fma.f64 (*.f64 y x) 3 z))) (sqrt.f64 (fma.f64 (*.f64 y x) 3 z)) (*.f64 (fma.f64 z z (*.f64 z z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (fma.f64 (*.f64 y x) 3 z) (sqrt.f64 (fma.f64 (*.f64 y x) 3 z))) (sqrt.f64 (fma.f64 (*.f64 y x) 3 z)) (+.f64 (fma.f64 z z (*.f64 z z)) (fma.f64 z z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 y 3) (*.f64 y 3)) (*.f64 x x) (*.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 y 3) (*.f64 y 3)) (*.f64 x x) (fma.f64 z z (fma.f64 z z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 y 3) (*.f64 y 3)) (*.f64 x x) (neg.f64 (-.f64 (*.f64 z z) (fma.f64 z z (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 (*.f64 y x) 3) (sqrt.f64 (*.f64 (*.f64 y x) 3))) (sqrt.f64 (*.f64 (*.f64 y x) 3)) (*.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 (*.f64 y x) 3) (sqrt.f64 (*.f64 (*.f64 y x) 3))) (sqrt.f64 (*.f64 (*.f64 y x) 3)) (fma.f64 z z (fma.f64 z z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 (*.f64 y x) 3) (sqrt.f64 (*.f64 (*.f64 y x) 3))) (sqrt.f64 (*.f64 (*.f64 y x) 3)) (neg.f64 (-.f64 (*.f64 z z) (fma.f64 z z (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (fma.f64 z z (*.f64 z z))) (cbrt.f64 (fma.f64 z z (*.f64 z z)))) (cbrt.f64 (fma.f64 z z (*.f64 z z))) (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (hypot.f64 z z) (hypot.f64 z z) (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 z (sqrt.f64 z)) (sqrt.f64 z) (*.f64 (pow.f64 (*.f64 y x) 2) 9))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (cbrt.f64 (pow.f64 z 4))) (cbrt.f64 (*.f64 z z)) (*.f64 (pow.f64 (*.f64 y x) 2) 9))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 9 (*.f64 y x)) (*.f64 y x) (*.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 9 (*.f64 y x)) (*.f64 y x) (fma.f64 z z (fma.f64 z z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 9 (*.f64 y x)) (*.f64 y x) (neg.f64 (-.f64 (*.f64 z z) (fma.f64 z z (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 9 (cbrt.f64 (pow.f64 (*.f64 y x) 4))) (pow.f64 (cbrt.f64 (*.f64 y x)) 2) (*.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 9 (cbrt.f64 (pow.f64 (*.f64 y x) 4))) (pow.f64 (cbrt.f64 (*.f64 y x)) 2) (fma.f64 z z (fma.f64 z z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 9 (cbrt.f64 (pow.f64 (*.f64 y x) 4))) (pow.f64 (cbrt.f64 (*.f64 y x)) 2) (neg.f64 (-.f64 (*.f64 z z) (fma.f64 z z (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 9 (*.f64 y y)) (*.f64 x x) (*.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 9 (*.f64 y y)) (*.f64 x x) (fma.f64 z z (fma.f64 z z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 9 (*.f64 y y)) (*.f64 x x) (neg.f64 (-.f64 (*.f64 z z) (fma.f64 z z (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (fma.f64 (*.f64 y x) 3 z) (cbrt.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2))) (cbrt.f64 (fma.f64 (*.f64 y x) 3 z)) (fma.f64 z z (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (fma.f64 (*.f64 y x) 3 z) (cbrt.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2))) (cbrt.f64 (fma.f64 (*.f64 y x) 3 z)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 z z))) (cbrt.f64 (pow.f64 z 4)) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (fma.f64 (*.f64 y x) 3 z) (cbrt.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2))) (cbrt.f64 (fma.f64 (*.f64 y x) 3 z)) (*.f64 (fma.f64 z z (*.f64 z z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (fma.f64 (*.f64 y x) 3 z) (cbrt.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2))) (cbrt.f64 (fma.f64 (*.f64 y x) 3 z)) (+.f64 (fma.f64 z z (*.f64 z z)) (fma.f64 z z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 z (cbrt.f64 (*.f64 z z))) (cbrt.f64 z) (*.f64 (pow.f64 (*.f64 y x) 2) 9))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 (*.f64 y x) 3) (*.f64 y x)) 3 (*.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 (*.f64 y x) 3) (*.f64 y x)) 3 (fma.f64 z z (fma.f64 z z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 (*.f64 y x) 3) (*.f64 y x)) 3 (neg.f64 (-.f64 (*.f64 z z) (fma.f64 z z (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 (*.f64 y x) 3) 3) (*.f64 y x) (*.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 (*.f64 y x) 3) 3) (*.f64 y x) (fma.f64 z z (fma.f64 z z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 (*.f64 y x) 3) 3) (*.f64 y x) (neg.f64 (-.f64 (*.f64 z z) (fma.f64 z z (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 (*.f64 y x) 3) (cbrt.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9))) (cbrt.f64 (*.f64 (*.f64 y x) 3)) (*.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 (*.f64 y x) 3) (cbrt.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9))) (cbrt.f64 (*.f64 (*.f64 y x) 3)) (fma.f64 z z (fma.f64 z z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 (*.f64 y x) 3) (cbrt.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9))) (cbrt.f64 (*.f64 (*.f64 y x) 3)) (neg.f64 (-.f64 (*.f64 z z) (fma.f64 z z (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 (*.f64 y x) 3) (*.f64 y 3)) x (*.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 (*.f64 y x) 3) (*.f64 y 3)) x (fma.f64 z z (fma.f64 z z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 (*.f64 y x) 3) (*.f64 y 3)) x (neg.f64 (-.f64 (*.f64 z z) (fma.f64 z z (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 2 (log.f64 (fma.f64 (*.f64 y x) 3 z))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 2 (log.f64 (fma.f64 (*.f64 y x) 3 z))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (fma.f64 (*.f64 y x) 3 z) 2)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (pow.f64 (*.f64 y x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (pow.f64 (*.f64 y x) 2))) (cbrt.f64 (exp.f64 (pow.f64 (*.f64 y x) 2))))) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 (*.f64 y x) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (*.f64 y x) 2)))) (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (*.f64 y x) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (pow.f64 (*.f64 y x) 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (*.f64 x (*.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x (*.f64 y (*.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y x) (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 y x) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (*.f64 y x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 y x)) 2) (cbrt.f64 (pow.f64 (*.f64 y x) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 y x)) 2) (*.f64 (cbrt.f64 (*.f64 y x)) (*.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (*.f64 y x) 4)) (pow.f64 (cbrt.f64 (*.f64 y x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 y x)) (*.f64 (sqrt.f64 (*.f64 y x)) (*.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y y) (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x x) (*.f64 y y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 y x) (sqrt.f64 (*.f64 y x))) (sqrt.f64 (*.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 y x) y) x)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 y x) x) y)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 y x) (pow.f64 (cbrt.f64 (*.f64 y x)) 2)) (cbrt.f64 (*.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 y x) 4))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 (*.f64 y x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (pow.f64 (*.f64 y x) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (pow.f64 (*.f64 y x) 2) 3))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (*.f64 y x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 2 (log.f64 (*.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 2 (log.f64 (*.f64 y x))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (*.f64 y x) 2)))))))

simplify101.0ms (1.7%)

Algorithm
egg-herbie
Rules
821×distribute-rgt-neg-in_binary64
781×fma-neg_binary64
721×distribute-lft-neg-in_binary64
587×fma-def_binary64
578×unsub-neg_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0201186
1471159
2981159
32701159
412351159
532411159
652391159
770681159
Stop Event
node limit
Counts
508 → 427
Calls
Call 1
Inputs
(*.f64 -1 z)
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(*.f64 3 (*.f64 y x))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(*.f64 3 (*.f64 y x))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(*.f64 -1 z)
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(*.f64 3 (*.f64 y x))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(*.f64 3 (*.f64 y x))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(*.f64 3 (*.f64 y x))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(*.f64 -1 z)
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(*.f64 -1 z)
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(*.f64 -1 (pow.f64 z 2))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2)))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2)))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(*.f64 -1 (pow.f64 z 2))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2)))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2)))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2)))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(*.f64 -1 (pow.f64 z 2))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(*.f64 -1 (pow.f64 z 2))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
Outputs
(*.f64 -1 z)
(neg.f64 z)
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 3 (*.f64 y x)) z)
(fma.f64 x (*.f64 3 y) (neg.f64 z))
(-.f64 (*.f64 y (*.f64 3 x)) z)
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 3 (*.f64 y x)) z)
(fma.f64 x (*.f64 3 y) (neg.f64 z))
(-.f64 (*.f64 y (*.f64 3 x)) z)
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 3 (*.f64 y x)) z)
(fma.f64 x (*.f64 3 y) (neg.f64 z))
(-.f64 (*.f64 y (*.f64 3 x)) z)
(*.f64 3 (*.f64 y x))
(*.f64 (*.f64 3 y) x)
(*.f64 y (*.f64 3 x))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 3 (*.f64 y x)) z)
(fma.f64 x (*.f64 3 y) (neg.f64 z))
(-.f64 (*.f64 y (*.f64 3 x)) z)
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 3 (*.f64 y x)) z)
(fma.f64 x (*.f64 3 y) (neg.f64 z))
(-.f64 (*.f64 y (*.f64 3 x)) z)
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 3 (*.f64 y x)) z)
(fma.f64 x (*.f64 3 y) (neg.f64 z))
(-.f64 (*.f64 y (*.f64 3 x)) z)
(*.f64 3 (*.f64 y x))
(*.f64 (*.f64 3 y) x)
(*.f64 y (*.f64 3 x))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 3 (*.f64 y x)) z)
(fma.f64 x (*.f64 3 y) (neg.f64 z))
(-.f64 (*.f64 y (*.f64 3 x)) z)
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 3 (*.f64 y x)) z)
(fma.f64 x (*.f64 3 y) (neg.f64 z))
(-.f64 (*.f64 y (*.f64 3 x)) z)
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 3 (*.f64 y x)) z)
(fma.f64 x (*.f64 3 y) (neg.f64 z))
(-.f64 (*.f64 y (*.f64 3 x)) z)
(*.f64 -1 z)
(neg.f64 z)
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 3 (*.f64 y x)) z)
(fma.f64 x (*.f64 3 y) (neg.f64 z))
(-.f64 (*.f64 y (*.f64 3 x)) z)
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 3 (*.f64 y x)) z)
(fma.f64 x (*.f64 3 y) (neg.f64 z))
(-.f64 (*.f64 y (*.f64 3 x)) z)
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 3 (*.f64 y x)) z)
(fma.f64 x (*.f64 3 y) (neg.f64 z))
(-.f64 (*.f64 y (*.f64 3 x)) z)
(*.f64 3 (*.f64 y x))
(*.f64 (*.f64 3 y) x)
(*.f64 y (*.f64 3 x))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 3 (*.f64 y x)) z)
(fma.f64 x (*.f64 3 y) (neg.f64 z))
(-.f64 (*.f64 y (*.f64 3 x)) z)
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 3 (*.f64 y x)) z)
(fma.f64 x (*.f64 3 y) (neg.f64 z))
(-.f64 (*.f64 y (*.f64 3 x)) z)
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 3 (*.f64 y x)) z)
(fma.f64 x (*.f64 3 y) (neg.f64 z))
(-.f64 (*.f64 y (*.f64 3 x)) z)
(*.f64 3 (*.f64 y x))
(*.f64 (*.f64 3 y) x)
(*.f64 y (*.f64 3 x))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 3 (*.f64 y x)) z)
(fma.f64 x (*.f64 3 y) (neg.f64 z))
(-.f64 (*.f64 y (*.f64 3 x)) z)
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 3 (*.f64 y x)) z)
(fma.f64 x (*.f64 3 y) (neg.f64 z))
(-.f64 (*.f64 y (*.f64 3 x)) z)
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 3 (*.f64 y x)) z)
(fma.f64 x (*.f64 3 y) (neg.f64 z))
(-.f64 (*.f64 y (*.f64 3 x)) z)
(*.f64 3 (*.f64 y x))
(*.f64 (*.f64 3 y) x)
(*.f64 y (*.f64 3 x))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 3 (*.f64 y x)) z)
(fma.f64 x (*.f64 3 y) (neg.f64 z))
(-.f64 (*.f64 y (*.f64 3 x)) z)
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 3 (*.f64 y x)) z)
(fma.f64 x (*.f64 3 y) (neg.f64 z))
(-.f64 (*.f64 y (*.f64 3 x)) z)
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 3 (*.f64 y x)) z)
(fma.f64 x (*.f64 3 y) (neg.f64 z))
(-.f64 (*.f64 y (*.f64 3 x)) z)
(*.f64 -1 z)
(neg.f64 z)
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 3 (*.f64 y x)) z)
(fma.f64 x (*.f64 3 y) (neg.f64 z))
(-.f64 (*.f64 y (*.f64 3 x)) z)
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 3 (*.f64 y x)) z)
(fma.f64 x (*.f64 3 y) (neg.f64 z))
(-.f64 (*.f64 y (*.f64 3 x)) z)
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 3 (*.f64 y x)) z)
(fma.f64 x (*.f64 3 y) (neg.f64 z))
(-.f64 (*.f64 y (*.f64 3 x)) z)
(*.f64 -1 z)
(neg.f64 z)
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 3 (*.f64 y x)) z)
(fma.f64 x (*.f64 3 y) (neg.f64 z))
(-.f64 (*.f64 y (*.f64 3 x)) z)
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 3 (*.f64 y x)) z)
(fma.f64 x (*.f64 3 y) (neg.f64 z))
(-.f64 (*.f64 y (*.f64 3 x)) z)
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 3 (*.f64 y x)) z)
(fma.f64 x (*.f64 3 y) (neg.f64 z))
(-.f64 (*.f64 y (*.f64 3 x)) z)
(*.f64 -1 (pow.f64 z 2))
(neg.f64 (*.f64 z z))
(*.f64 z (neg.f64 z))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(fma.f64 -1 (*.f64 z z) (*.f64 (*.f64 9 (*.f64 y y)) (*.f64 x x)))
(-.f64 (*.f64 9 (*.f64 x (*.f64 x (*.f64 y y)))) (*.f64 z z))
(-.f64 (*.f64 (*.f64 y x) (*.f64 (*.f64 y x) 9)) (*.f64 z z))
(fma.f64 y (*.f64 y (*.f64 x (*.f64 x 9))) (*.f64 z (neg.f64 z)))
(fma.f64 x (*.f64 y (*.f64 y (*.f64 x 9))) (*.f64 z (neg.f64 z)))
(neg.f64 (fma.f64 x (*.f64 (*.f64 y y) (*.f64 x -9)) (*.f64 z z)))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(fma.f64 -1 (*.f64 z z) (*.f64 (*.f64 9 (*.f64 y y)) (*.f64 x x)))
(-.f64 (*.f64 9 (*.f64 x (*.f64 x (*.f64 y y)))) (*.f64 z z))
(-.f64 (*.f64 (*.f64 y x) (*.f64 (*.f64 y x) 9)) (*.f64 z z))
(fma.f64 y (*.f64 y (*.f64 x (*.f64 x 9))) (*.f64 z (neg.f64 z)))
(fma.f64 x (*.f64 y (*.f64 y (*.f64 x 9))) (*.f64 z (neg.f64 z)))
(neg.f64 (fma.f64 x (*.f64 (*.f64 y y) (*.f64 x -9)) (*.f64 z z)))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(fma.f64 -1 (*.f64 z z) (*.f64 (*.f64 9 (*.f64 y y)) (*.f64 x x)))
(-.f64 (*.f64 9 (*.f64 x (*.f64 x (*.f64 y y)))) (*.f64 z z))
(-.f64 (*.f64 (*.f64 y x) (*.f64 (*.f64 y x) 9)) (*.f64 z z))
(fma.f64 y (*.f64 y (*.f64 x (*.f64 x 9))) (*.f64 z (neg.f64 z)))
(fma.f64 x (*.f64 y (*.f64 y (*.f64 x 9))) (*.f64 z (neg.f64 z)))
(neg.f64 (fma.f64 x (*.f64 (*.f64 y y) (*.f64 x -9)) (*.f64 z z)))
(*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2)))
(*.f64 (*.f64 9 (*.f64 y y)) (*.f64 x x))
(*.f64 9 (*.f64 x (*.f64 x (*.f64 y y))))
(*.f64 (*.f64 y x) (*.f64 (*.f64 y x) 9))
(*.f64 y (*.f64 y (*.f64 x (*.f64 x 9))))
(*.f64 x (*.f64 y (*.f64 y (*.f64 x 9))))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(fma.f64 -1 (*.f64 z z) (*.f64 (*.f64 9 (*.f64 y y)) (*.f64 x x)))
(-.f64 (*.f64 9 (*.f64 x (*.f64 x (*.f64 y y)))) (*.f64 z z))
(-.f64 (*.f64 (*.f64 y x) (*.f64 (*.f64 y x) 9)) (*.f64 z z))
(fma.f64 y (*.f64 y (*.f64 x (*.f64 x 9))) (*.f64 z (neg.f64 z)))
(fma.f64 x (*.f64 y (*.f64 y (*.f64 x 9))) (*.f64 z (neg.f64 z)))
(neg.f64 (fma.f64 x (*.f64 (*.f64 y y) (*.f64 x -9)) (*.f64 z z)))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(fma.f64 -1 (*.f64 z z) (*.f64 (*.f64 9 (*.f64 y y)) (*.f64 x x)))
(-.f64 (*.f64 9 (*.f64 x (*.f64 x (*.f64 y y)))) (*.f64 z z))
(-.f64 (*.f64 (*.f64 y x) (*.f64 (*.f64 y x) 9)) (*.f64 z z))
(fma.f64 y (*.f64 y (*.f64 x (*.f64 x 9))) (*.f64 z (neg.f64 z)))
(fma.f64 x (*.f64 y (*.f64 y (*.f64 x 9))) (*.f64 z (neg.f64 z)))
(neg.f64 (fma.f64 x (*.f64 (*.f64 y y) (*.f64 x -9)) (*.f64 z z)))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(fma.f64 -1 (*.f64 z z) (*.f64 (*.f64 9 (*.f64 y y)) (*.f64 x x)))
(-.f64 (*.f64 9 (*.f64 x (*.f64 x (*.f64 y y)))) (*.f64 z z))
(-.f64 (*.f64 (*.f64 y x) (*.f64 (*.f64 y x) 9)) (*.f64 z z))
(fma.f64 y (*.f64 y (*.f64 x (*.f64 x 9))) (*.f64 z (neg.f64 z)))
(fma.f64 x (*.f64 y (*.f64 y (*.f64 x 9))) (*.f64 z (neg.f64 z)))
(neg.f64 (fma.f64 x (*.f64 (*.f64 y y) (*.f64 x -9)) (*.f64 z z)))
(*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2)))
(*.f64 (*.f64 9 (*.f64 y y)) (*.f64 x x))
(*.f64 9 (*.f64 x (*.f64 x (*.f64 y y))))
(*.f64 (*.f64 y x) (*.f64 (*.f64 y x) 9))
(*.f64 y (*.f64 y (*.f64 x (*.f64 x 9))))
(*.f64 x (*.f64 y (*.f64 y (*.f64 x 9))))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(fma.f64 -1 (*.f64 z z) (*.f64 (*.f64 9 (*.f64 y y)) (*.f64 x x)))
(-.f64 (*.f64 9 (*.f64 x (*.f64 x (*.f64 y y)))) (*.f64 z z))
(-.f64 (*.f64 (*.f64 y x) (*.f64 (*.f64 y x) 9)) (*.f64 z z))
(fma.f64 y (*.f64 y (*.f64 x (*.f64 x 9))) (*.f64 z (neg.f64 z)))
(fma.f64 x (*.f64 y (*.f64 y (*.f64 x 9))) (*.f64 z (neg.f64 z)))
(neg.f64 (fma.f64 x (*.f64 (*.f64 y y) (*.f64 x -9)) (*.f64 z z)))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(fma.f64 -1 (*.f64 z z) (*.f64 (*.f64 9 (*.f64 y y)) (*.f64 x x)))
(-.f64 (*.f64 9 (*.f64 x (*.f64 x (*.f64 y y)))) (*.f64 z z))
(-.f64 (*.f64 (*.f64 y x) (*.f64 (*.f64 y x) 9)) (*.f64 z z))
(fma.f64 y (*.f64 y (*.f64 x (*.f64 x 9))) (*.f64 z (neg.f64 z)))
(fma.f64 x (*.f64 y (*.f64 y (*.f64 x 9))) (*.f64 z (neg.f64 z)))
(neg.f64 (fma.f64 x (*.f64 (*.f64 y y) (*.f64 x -9)) (*.f64 z z)))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(fma.f64 -1 (*.f64 z z) (*.f64 (*.f64 9 (*.f64 y y)) (*.f64 x x)))
(-.f64 (*.f64 9 (*.f64 x (*.f64 x (*.f64 y y)))) (*.f64 z z))
(-.f64 (*.f64 (*.f64 y x) (*.f64 (*.f64 y x) 9)) (*.f64 z z))
(fma.f64 y (*.f64 y (*.f64 x (*.f64 x 9))) (*.f64 z (neg.f64 z)))
(fma.f64 x (*.f64 y (*.f64 y (*.f64 x 9))) (*.f64 z (neg.f64 z)))
(neg.f64 (fma.f64 x (*.f64 (*.f64 y y) (*.f64 x -9)) (*.f64 z z)))
(*.f64 -1 (pow.f64 z 2))
(neg.f64 (*.f64 z z))
(*.f64 z (neg.f64 z))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(fma.f64 -1 (*.f64 z z) (*.f64 (*.f64 9 (*.f64 y y)) (*.f64 x x)))
(-.f64 (*.f64 9 (*.f64 x (*.f64 x (*.f64 y y)))) (*.f64 z z))
(-.f64 (*.f64 (*.f64 y x) (*.f64 (*.f64 y x) 9)) (*.f64 z z))
(fma.f64 y (*.f64 y (*.f64 x (*.f64 x 9))) (*.f64 z (neg.f64 z)))
(fma.f64 x (*.f64 y (*.f64 y (*.f64 x 9))) (*.f64 z (neg.f64 z)))
(neg.f64 (fma.f64 x (*.f64 (*.f64 y y) (*.f64 x -9)) (*.f64 z z)))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(fma.f64 -1 (*.f64 z z) (*.f64 (*.f64 9 (*.f64 y y)) (*.f64 x x)))
(-.f64 (*.f64 9 (*.f64 x (*.f64 x (*.f64 y y)))) (*.f64 z z))
(-.f64 (*.f64 (*.f64 y x) (*.f64 (*.f64 y x) 9)) (*.f64 z z))
(fma.f64 y (*.f64 y (*.f64 x (*.f64 x 9))) (*.f64 z (neg.f64 z)))
(fma.f64 x (*.f64 y (*.f64 y (*.f64 x 9))) (*.f64 z (neg.f64 z)))
(neg.f64 (fma.f64 x (*.f64 (*.f64 y y) (*.f64 x -9)) (*.f64 z z)))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(fma.f64 -1 (*.f64 z z) (*.f64 (*.f64 9 (*.f64 y y)) (*.f64 x x)))
(-.f64 (*.f64 9 (*.f64 x (*.f64 x (*.f64 y y)))) (*.f64 z z))
(-.f64 (*.f64 (*.f64 y x) (*.f64 (*.f64 y x) 9)) (*.f64 z z))
(fma.f64 y (*.f64 y (*.f64 x (*.f64 x 9))) (*.f64 z (neg.f64 z)))
(fma.f64 x (*.f64 y (*.f64 y (*.f64 x 9))) (*.f64 z (neg.f64 z)))
(neg.f64 (fma.f64 x (*.f64 (*.f64 y y) (*.f64 x -9)) (*.f64 z z)))
(*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2)))
(*.f64 (*.f64 9 (*.f64 y y)) (*.f64 x x))
(*.f64 9 (*.f64 x (*.f64 x (*.f64 y y))))
(*.f64 (*.f64 y x) (*.f64 (*.f64 y x) 9))
(*.f64 y (*.f64 y (*.f64 x (*.f64 x 9))))
(*.f64 x (*.f64 y (*.f64 y (*.f64 x 9))))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(fma.f64 -1 (*.f64 z z) (*.f64 (*.f64 9 (*.f64 y y)) (*.f64 x x)))
(-.f64 (*.f64 9 (*.f64 x (*.f64 x (*.f64 y y)))) (*.f64 z z))
(-.f64 (*.f64 (*.f64 y x) (*.f64 (*.f64 y x) 9)) (*.f64 z z))
(fma.f64 y (*.f64 y (*.f64 x (*.f64 x 9))) (*.f64 z (neg.f64 z)))
(fma.f64 x (*.f64 y (*.f64 y (*.f64 x 9))) (*.f64 z (neg.f64 z)))
(neg.f64 (fma.f64 x (*.f64 (*.f64 y y) (*.f64 x -9)) (*.f64 z z)))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(fma.f64 -1 (*.f64 z z) (*.f64 (*.f64 9 (*.f64 y y)) (*.f64 x x)))
(-.f64 (*.f64 9 (*.f64 x (*.f64 x (*.f64 y y)))) (*.f64 z z))
(-.f64 (*.f64 (*.f64 y x) (*.f64 (*.f64 y x) 9)) (*.f64 z z))
(fma.f64 y (*.f64 y (*.f64 x (*.f64 x 9))) (*.f64 z (neg.f64 z)))
(fma.f64 x (*.f64 y (*.f64 y (*.f64 x 9))) (*.f64 z (neg.f64 z)))
(neg.f64 (fma.f64 x (*.f64 (*.f64 y y) (*.f64 x -9)) (*.f64 z z)))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(fma.f64 -1 (*.f64 z z) (*.f64 (*.f64 9 (*.f64 y y)) (*.f64 x x)))
(-.f64 (*.f64 9 (*.f64 x (*.f64 x (*.f64 y y)))) (*.f64 z z))
(-.f64 (*.f64 (*.f64 y x) (*.f64 (*.f64 y x) 9)) (*.f64 z z))
(fma.f64 y (*.f64 y (*.f64 x (*.f64 x 9))) (*.f64 z (neg.f64 z)))
(fma.f64 x (*.f64 y (*.f64 y (*.f64 x 9))) (*.f64 z (neg.f64 z)))
(neg.f64 (fma.f64 x (*.f64 (*.f64 y y) (*.f64 x -9)) (*.f64 z z)))
(*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2)))
(*.f64 (*.f64 9 (*.f64 y y)) (*.f64 x x))
(*.f64 9 (*.f64 x (*.f64 x (*.f64 y y))))
(*.f64 (*.f64 y x) (*.f64 (*.f64 y x) 9))
(*.f64 y (*.f64 y (*.f64 x (*.f64 x 9))))
(*.f64 x (*.f64 y (*.f64 y (*.f64 x 9))))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(fma.f64 -1 (*.f64 z z) (*.f64 (*.f64 9 (*.f64 y y)) (*.f64 x x)))
(-.f64 (*.f64 9 (*.f64 x (*.f64 x (*.f64 y y)))) (*.f64 z z))
(-.f64 (*.f64 (*.f64 y x) (*.f64 (*.f64 y x) 9)) (*.f64 z z))
(fma.f64 y (*.f64 y (*.f64 x (*.f64 x 9))) (*.f64 z (neg.f64 z)))
(fma.f64 x (*.f64 y (*.f64 y (*.f64 x 9))) (*.f64 z (neg.f64 z)))
(neg.f64 (fma.f64 x (*.f64 (*.f64 y y) (*.f64 x -9)) (*.f64 z z)))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(fma.f64 -1 (*.f64 z z) (*.f64 (*.f64 9 (*.f64 y y)) (*.f64 x x)))
(-.f64 (*.f64 9 (*.f64 x (*.f64 x (*.f64 y y)))) (*.f64 z z))
(-.f64 (*.f64 (*.f64 y x) (*.f64 (*.f64 y x) 9)) (*.f64 z z))
(fma.f64 y (*.f64 y (*.f64 x (*.f64 x 9))) (*.f64 z (neg.f64 z)))
(fma.f64 x (*.f64 y (*.f64 y (*.f64 x 9))) (*.f64 z (neg.f64 z)))
(neg.f64 (fma.f64 x (*.f64 (*.f64 y y) (*.f64 x -9)) (*.f64 z z)))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(fma.f64 -1 (*.f64 z z) (*.f64 (*.f64 9 (*.f64 y y)) (*.f64 x x)))
(-.f64 (*.f64 9 (*.f64 x (*.f64 x (*.f64 y y)))) (*.f64 z z))
(-.f64 (*.f64 (*.f64 y x) (*.f64 (*.f64 y x) 9)) (*.f64 z z))
(fma.f64 y (*.f64 y (*.f64 x (*.f64 x 9))) (*.f64 z (neg.f64 z)))
(fma.f64 x (*.f64 y (*.f64 y (*.f64 x 9))) (*.f64 z (neg.f64 z)))
(neg.f64 (fma.f64 x (*.f64 (*.f64 y y) (*.f64 x -9)) (*.f64 z z)))
(*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2)))
(*.f64 (*.f64 9 (*.f64 y y)) (*.f64 x x))
(*.f64 9 (*.f64 x (*.f64 x (*.f64 y y))))
(*.f64 (*.f64 y x) (*.f64 (*.f64 y x) 9))
(*.f64 y (*.f64 y (*.f64 x (*.f64 x 9))))
(*.f64 x (*.f64 y (*.f64 y (*.f64 x 9))))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(fma.f64 -1 (*.f64 z z) (*.f64 (*.f64 9 (*.f64 y y)) (*.f64 x x)))
(-.f64 (*.f64 9 (*.f64 x (*.f64 x (*.f64 y y)))) (*.f64 z z))
(-.f64 (*.f64 (*.f64 y x) (*.f64 (*.f64 y x) 9)) (*.f64 z z))
(fma.f64 y (*.f64 y (*.f64 x (*.f64 x 9))) (*.f64 z (neg.f64 z)))
(fma.f64 x (*.f64 y (*.f64 y (*.f64 x 9))) (*.f64 z (neg.f64 z)))
(neg.f64 (fma.f64 x (*.f64 (*.f64 y y) (*.f64 x -9)) (*.f64 z z)))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(fma.f64 -1 (*.f64 z z) (*.f64 (*.f64 9 (*.f64 y y)) (*.f64 x x)))
(-.f64 (*.f64 9 (*.f64 x (*.f64 x (*.f64 y y)))) (*.f64 z z))
(-.f64 (*.f64 (*.f64 y x) (*.f64 (*.f64 y x) 9)) (*.f64 z z))
(fma.f64 y (*.f64 y (*.f64 x (*.f64 x 9))) (*.f64 z (neg.f64 z)))
(fma.f64 x (*.f64 y (*.f64 y (*.f64 x 9))) (*.f64 z (neg.f64 z)))
(neg.f64 (fma.f64 x (*.f64 (*.f64 y y) (*.f64 x -9)) (*.f64 z z)))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(fma.f64 -1 (*.f64 z z) (*.f64 (*.f64 9 (*.f64 y y)) (*.f64 x x)))
(-.f64 (*.f64 9 (*.f64 x (*.f64 x (*.f64 y y)))) (*.f64 z z))
(-.f64 (*.f64 (*.f64 y x) (*.f64 (*.f64 y x) 9)) (*.f64 z z))
(fma.f64 y (*.f64 y (*.f64 x (*.f64 x 9))) (*.f64 z (neg.f64 z)))
(fma.f64 x (*.f64 y (*.f64 y (*.f64 x 9))) (*.f64 z (neg.f64 z)))
(neg.f64 (fma.f64 x (*.f64 (*.f64 y y) (*.f64 x -9)) (*.f64 z z)))
(*.f64 -1 (pow.f64 z 2))
(neg.f64 (*.f64 z z))
(*.f64 z (neg.f64 z))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(fma.f64 -1 (*.f64 z z) (*.f64 (*.f64 9 (*.f64 y y)) (*.f64 x x)))
(-.f64 (*.f64 9 (*.f64 x (*.f64 x (*.f64 y y)))) (*.f64 z z))
(-.f64 (*.f64 (*.f64 y x) (*.f64 (*.f64 y x) 9)) (*.f64 z z))
(fma.f64 y (*.f64 y (*.f64 x (*.f64 x 9))) (*.f64 z (neg.f64 z)))
(fma.f64 x (*.f64 y (*.f64 y (*.f64 x 9))) (*.f64 z (neg.f64 z)))
(neg.f64 (fma.f64 x (*.f64 (*.f64 y y) (*.f64 x -9)) (*.f64 z z)))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(fma.f64 -1 (*.f64 z z) (*.f64 (*.f64 9 (*.f64 y y)) (*.f64 x x)))
(-.f64 (*.f64 9 (*.f64 x (*.f64 x (*.f64 y y)))) (*.f64 z z))
(-.f64 (*.f64 (*.f64 y x) (*.f64 (*.f64 y x) 9)) (*.f64 z z))
(fma.f64 y (*.f64 y (*.f64 x (*.f64 x 9))) (*.f64 z (neg.f64 z)))
(fma.f64 x (*.f64 y (*.f64 y (*.f64 x 9))) (*.f64 z (neg.f64 z)))
(neg.f64 (fma.f64 x (*.f64 (*.f64 y y) (*.f64 x -9)) (*.f64 z z)))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(fma.f64 -1 (*.f64 z z) (*.f64 (*.f64 9 (*.f64 y y)) (*.f64 x x)))
(-.f64 (*.f64 9 (*.f64 x (*.f64 x (*.f64 y y)))) (*.f64 z z))
(-.f64 (*.f64 (*.f64 y x) (*.f64 (*.f64 y x) 9)) (*.f64 z z))
(fma.f64 y (*.f64 y (*.f64 x (*.f64 x 9))) (*.f64 z (neg.f64 z)))
(fma.f64 x (*.f64 y (*.f64 y (*.f64 x 9))) (*.f64 z (neg.f64 z)))
(neg.f64 (fma.f64 x (*.f64 (*.f64 y y) (*.f64 x -9)) (*.f64 z z)))
(*.f64 -1 (pow.f64 z 2))
(neg.f64 (*.f64 z z))
(*.f64 z (neg.f64 z))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(fma.f64 -1 (*.f64 z z) (*.f64 (*.f64 9 (*.f64 y y)) (*.f64 x x)))
(-.f64 (*.f64 9 (*.f64 x (*.f64 x (*.f64 y y)))) (*.f64 z z))
(-.f64 (*.f64 (*.f64 y x) (*.f64 (*.f64 y x) 9)) (*.f64 z z))
(fma.f64 y (*.f64 y (*.f64 x (*.f64 x 9))) (*.f64 z (neg.f64 z)))
(fma.f64 x (*.f64 y (*.f64 y (*.f64 x 9))) (*.f64 z (neg.f64 z)))
(neg.f64 (fma.f64 x (*.f64 (*.f64 y y) (*.f64 x -9)) (*.f64 z z)))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(fma.f64 -1 (*.f64 z z) (*.f64 (*.f64 9 (*.f64 y y)) (*.f64 x x)))
(-.f64 (*.f64 9 (*.f64 x (*.f64 x (*.f64 y y)))) (*.f64 z z))
(-.f64 (*.f64 (*.f64 y x) (*.f64 (*.f64 y x) 9)) (*.f64 z z))
(fma.f64 y (*.f64 y (*.f64 x (*.f64 x 9))) (*.f64 z (neg.f64 z)))
(fma.f64 x (*.f64 y (*.f64 y (*.f64 x 9))) (*.f64 z (neg.f64 z)))
(neg.f64 (fma.f64 x (*.f64 (*.f64 y y) (*.f64 x -9)) (*.f64 z z)))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(fma.f64 -1 (*.f64 z z) (*.f64 (*.f64 9 (*.f64 y y)) (*.f64 x x)))
(-.f64 (*.f64 9 (*.f64 x (*.f64 x (*.f64 y y)))) (*.f64 z z))
(-.f64 (*.f64 (*.f64 y x) (*.f64 (*.f64 y x) 9)) (*.f64 z z))
(fma.f64 y (*.f64 y (*.f64 x (*.f64 x 9))) (*.f64 z (neg.f64 z)))
(fma.f64 x (*.f64 y (*.f64 y (*.f64 x 9))) (*.f64 z (neg.f64 z)))
(neg.f64 (fma.f64 x (*.f64 (*.f64 y y) (*.f64 x -9)) (*.f64 z z)))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (*.f64 y y) (*.f64 x x))
(*.f64 x (*.f64 x (*.f64 y y)))
(*.f64 y (*.f64 y (*.f64 x x)))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (*.f64 y y) (*.f64 x x))
(*.f64 x (*.f64 x (*.f64 y y)))
(*.f64 y (*.f64 y (*.f64 x x)))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (*.f64 y y) (*.f64 x x))
(*.f64 x (*.f64 x (*.f64 y y)))
(*.f64 y (*.f64 y (*.f64 x x)))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (*.f64 y y) (*.f64 x x))
(*.f64 x (*.f64 x (*.f64 y y)))
(*.f64 y (*.f64 y (*.f64 x x)))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (*.f64 y y) (*.f64 x x))
(*.f64 x (*.f64 x (*.f64 y y)))
(*.f64 y (*.f64 y (*.f64 x x)))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (*.f64 y y) (*.f64 x x))
(*.f64 x (*.f64 x (*.f64 y y)))
(*.f64 y (*.f64 y (*.f64 x x)))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (*.f64 y y) (*.f64 x x))
(*.f64 x (*.f64 x (*.f64 y y)))
(*.f64 y (*.f64 y (*.f64 x x)))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (*.f64 y y) (*.f64 x x))
(*.f64 x (*.f64 x (*.f64 y y)))
(*.f64 y (*.f64 y (*.f64 x x)))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (*.f64 y y) (*.f64 x x))
(*.f64 x (*.f64 x (*.f64 y y)))
(*.f64 y (*.f64 y (*.f64 x x)))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (*.f64 y y) (*.f64 x x))
(*.f64 x (*.f64 x (*.f64 y y)))
(*.f64 y (*.f64 y (*.f64 x x)))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (*.f64 y y) (*.f64 x x))
(*.f64 x (*.f64 x (*.f64 y y)))
(*.f64 y (*.f64 y (*.f64 x x)))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (*.f64 y y) (*.f64 x x))
(*.f64 x (*.f64 x (*.f64 y y)))
(*.f64 y (*.f64 y (*.f64 x x)))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (*.f64 y y) (*.f64 x x))
(*.f64 x (*.f64 x (*.f64 y y)))
(*.f64 y (*.f64 y (*.f64 x x)))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (*.f64 y y) (*.f64 x x))
(*.f64 x (*.f64 x (*.f64 y y)))
(*.f64 y (*.f64 y (*.f64 x x)))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (*.f64 y y) (*.f64 x x))
(*.f64 x (*.f64 x (*.f64 y y)))
(*.f64 y (*.f64 y (*.f64 x x)))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (*.f64 y y) (*.f64 x x))
(*.f64 x (*.f64 x (*.f64 y y)))
(*.f64 y (*.f64 y (*.f64 x x)))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (*.f64 y y) (*.f64 x x))
(*.f64 x (*.f64 x (*.f64 y y)))
(*.f64 y (*.f64 y (*.f64 x x)))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (*.f64 y y) (*.f64 x x))
(*.f64 x (*.f64 x (*.f64 y y)))
(*.f64 y (*.f64 y (*.f64 x x)))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (*.f64 y y) (*.f64 x x))
(*.f64 x (*.f64 x (*.f64 y y)))
(*.f64 y (*.f64 y (*.f64 x x)))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (*.f64 y y) (*.f64 x x))
(*.f64 x (*.f64 x (*.f64 y y)))
(*.f64 y (*.f64 y (*.f64 x x)))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (*.f64 y y) (*.f64 x x))
(*.f64 x (*.f64 x (*.f64 y y)))
(*.f64 y (*.f64 y (*.f64 x x)))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (*.f64 y y) (*.f64 x x))
(*.f64 x (*.f64 x (*.f64 y y)))
(*.f64 y (*.f64 y (*.f64 x x)))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (*.f64 y y) (*.f64 x x))
(*.f64 x (*.f64 x (*.f64 y y)))
(*.f64 y (*.f64 y (*.f64 x x)))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (*.f64 y y) (*.f64 x x))
(*.f64 x (*.f64 x (*.f64 y y)))
(*.f64 y (*.f64 y (*.f64 x x)))

localize6.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.3b
(*.f64 3 (*.f64 y x))
0.3b
(*.f64 3 (*.f64 y x))
Compiler

Compiled 14 to 7 computations (50% saved)

rewrite0.0ms (0%)

Counts
0 → 0

simplify6.0ms (0.1%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
000
Stop Event
saturated
Counts
0 → 0
Calls
Call 1
Inputs
Outputs

localize15.0ms (0.3%)

Local error

Found 6 expressions with local error:

NewErrorProgram
7.3b
(sqrt.f64 (*.f64 -3 (*.f64 y x)))
0.3b
(*.f64 -3 (*.f64 y x))
0.3b
(pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 y x))) 2)
0.3b
(pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 y x))) 2)
0.3b
(*.f64 -3 (*.f64 y x))
7.3b
(sqrt.f64 (*.f64 -3 (*.f64 y x)))
Compiler

Compiled 38 to 22 computations (42.1% saved)

series15.0ms (0.2%)

Counts
3 → 0
Calls

18 calls:

TimeVariablePointExpression
2.0ms
y
@inf
(sqrt.f64 (*.f64 -3 (*.f64 y x)))
1.0ms
x
@-inf
(pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 y x))) 2)
1.0ms
x
@0
(pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 y x))) 2)
1.0ms
y
@0
(sqrt.f64 (*.f64 -3 (*.f64 y x)))
1.0ms
y
@-inf
(pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 y x))) 2)

rewrite53.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
709×pow1_binary64
658×add-log-exp_binary64
658×log1p-expm1-u_binary64
658×expm1-log1p-u_binary64
644×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0923
118723
2184623
Stop Event
node limit
Counts
3 → 68
Calls
Call 1
Inputs
(sqrt.f64 (*.f64 -3 (*.f64 y x)))
(*.f64 -3 (*.f64 y x))
(pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 y x))) 2)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (sqrt.f64 (*.f64 -3 (*.f64 y x)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 -3 (*.f64 y x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (*.f64 -3 (*.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 -3 (*.f64 y x))) (cbrt.f64 (sqrt.f64 (*.f64 -3 (*.f64 y x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (sqrt.f64 (*.f64 -3 (*.f64 y x)))) (cbrt.f64 (*.f64 -3 (*.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 y x)) (sqrt.f64 -3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 -3) (sqrt.f64 (*.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 -3 (*.f64 y x)) 1/4) (pow.f64 (*.f64 -3 (*.f64 y x)) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 -3 y)) (sqrt.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 -3 (*.f64 y x))) 2)) (sqrt.f64 (cbrt.f64 (*.f64 -3 (*.f64 y x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/2) (sqrt.f64 (*.f64 -3 (*.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 -3 (*.f64 y x))) 2) 1/2) (pow.f64 (cbrt.f64 (*.f64 -3 (*.f64 y x))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 -3 y) 1/2) (sqrt.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 -3 (*.f64 y x)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 y x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 -3 (*.f64 y x)) 3/2) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 -3 (*.f64 y x)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 -3 (*.f64 y x)) 1/4) 2)))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (sqrt.f64 (*.f64 -3 (*.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (sqrt.f64 (*.f64 -3 (*.f64 y x)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 -3 (*.f64 y x)) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 -3 (*.f64 y x)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (sqrt.f64 (*.f64 -3 (*.f64 y x)))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 -3 (*.f64 y x)))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 -3 (*.f64 y x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 -3 (*.f64 y x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 y x))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 -3 (*.f64 y x)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 -3 (*.f64 y x))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 -3) (*.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 -3 (*.f64 y x)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 -3 (*.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 -3 (*.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 -3 (*.f64 y x))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 -3 (*.f64 y x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -3 (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (*.f64 x -3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x (*.f64 -3 y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y x) -3)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 -3 (*.f64 y x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 -3 (*.f64 y x))) (sqrt.f64 (*.f64 -3 (*.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 -3 (*.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 y x)) 2) (*.f64 (cbrt.f64 (*.f64 y x)) -3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 -3 (*.f64 y x))) (pow.f64 (cbrt.f64 (*.f64 -3 (*.f64 y x))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 -3 (*.f64 y x))) (*.f64 (cbrt.f64 (sqrt.f64 (*.f64 -3 (*.f64 y x)))) (sqrt.f64 (*.f64 -3 (*.f64 y x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 -3 (*.f64 y x))) 2) (cbrt.f64 (*.f64 -3 (*.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 y x)) (*.f64 (sqrt.f64 (*.f64 y x)) -3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 -3) (*.f64 (sqrt.f64 (*.f64 y x)) (sqrt.f64 (*.f64 -3 (*.f64 y x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 -3 (*.f64 y x)) 1/4) (*.f64 (pow.f64 (*.f64 -3 (*.f64 y x)) 1/4) (sqrt.f64 (*.f64 -3 (*.f64 y x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 -3 y) x)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (*.f64 -3 (*.f64 y x))) (pow.f64 (*.f64 -3 (*.f64 y x)) 1/4)) (pow.f64 (*.f64 -3 (*.f64 y x)) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 -3) 2) (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 -3 x) y)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 -3 (pow.f64 (cbrt.f64 (*.f64 y x)) 2)) (cbrt.f64 (*.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 -3 (sqrt.f64 (*.f64 y x))) (sqrt.f64 (*.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (*.f64 -3 (*.f64 y x))) (cbrt.f64 (*.f64 -3 (*.f64 y x)))) (cbrt.f64 (sqrt.f64 (*.f64 -3 (*.f64 y x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (*.f64 -3 (*.f64 y x))) (sqrt.f64 -3)) (sqrt.f64 (*.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 -3 y) 1) x)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 -3 y) (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 -3 y) (sqrt.f64 x)) (sqrt.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 -3) (*.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 -3 (*.f64 y x)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 -3 (*.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 -3 (*.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 -3 (*.f64 y x))))))))

simplify7.0ms (0.1%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
000
Stop Event
saturated
Counts
68 → 61
Calls
Call 1
Inputs
Outputs

eval394.0ms (6.6%)

Compiler

Compiled 12538 to 5779 computations (53.9% saved)

prune80.0ms (1.3%)

Pruning

11 alts after pruning (4 fresh and 7 done)

PrunedKeptTotal
New5194523
Fresh000
Picked011
Done268
Total52111532
Error
0b
Counts
532 → 11
Alt Table
Click to see full alt table
StatusErrorProgram
0.2b
(-.f64 (*.f64 3 (*.f64 y x)) z)
47.3b
(neg.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 y x))) 2))
0.1b
(neg.f64 (fma.f64 -3 (*.f64 y x) z))
31.8b
(*.f64 3 (*.f64 y x))
29.4b
(/.f64 (-.f64 (*.f64 (*.f64 y (*.f64 x (*.f64 y x))) 9) (*.f64 (neg.f64 z) (neg.f64 z))) (-.f64 (*.f64 3 (*.f64 y x)) (neg.f64 z)))
49.3b
(/.f64 (*.f64 x (*.f64 y (*.f64 y (*.f64 x 9)))) (-.f64 (*.f64 3 (*.f64 y x)) (neg.f64 z)))
31.7b
(*.f64 x (*.f64 3 y))
32.2b
(neg.f64 (*.f64 (*.f64 -3 (pow.f64 (cbrt.f64 (*.f64 y x)) 2)) (cbrt.f64 (*.f64 y x))))
31.3b
(neg.f64 z)
31.7b
(*.f64 y (*.f64 3 x))
0.1b
(-.f64 (*.f64 (*.f64 x 3) y) z)
Compiler

Compiled 136 to 93 computations (31.6% saved)

localize6.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.2b
(*.f64 y (*.f64 3 x))
0.2b
(*.f64 y (*.f64 3 x))
Compiler

Compiled 14 to 9 computations (35.7% saved)

series2.0ms (0%)

Counts
1 → 24
Calls

6 calls:

TimeVariablePointExpression
0.0ms
y
@0
(*.f64 y (*.f64 3 x))
0.0ms
y
@inf
(*.f64 y (*.f64 3 x))
0.0ms
x
@inf
(*.f64 y (*.f64 3 x))
0.0ms
x
@-inf
(*.f64 y (*.f64 3 x))
0.0ms
y
@-inf
(*.f64 y (*.f64 3 x))

rewrite70.0ms (1.2%)

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

Useful iterations: 0 (0.0ms)

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

simplify53.0ms (0.9%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
06168
110168
217168
319168
Stop Event
saturated
Counts
35 → 13
Calls
Call 1
Inputs
(*.f64 3 (*.f64 y x))
(*.f64 3 (*.f64 y x))
(*.f64 3 (*.f64 y x))
(*.f64 3 (*.f64 y x))
(*.f64 3 (*.f64 y x))
(*.f64 3 (*.f64 y x))
(*.f64 3 (*.f64 y x))
(*.f64 3 (*.f64 y x))
(*.f64 3 (*.f64 y x))
(*.f64 3 (*.f64 y x))
(*.f64 3 (*.f64 y x))
(*.f64 3 (*.f64 y x))
(*.f64 3 (*.f64 y x))
(*.f64 3 (*.f64 y x))
(*.f64 3 (*.f64 y x))
(*.f64 3 (*.f64 y x))
(*.f64 3 (*.f64 y x))
(*.f64 3 (*.f64 y x))
(*.f64 3 (*.f64 y x))
(*.f64 3 (*.f64 y x))
(*.f64 3 (*.f64 y x))
(*.f64 3 (*.f64 y x))
(*.f64 3 (*.f64 y x))
(*.f64 3 (*.f64 y x))
Outputs
(*.f64 3 (*.f64 y x))
(*.f64 x (*.f64 3 y))
(*.f64 3 (*.f64 y x))
(*.f64 x (*.f64 3 y))
(*.f64 3 (*.f64 y x))
(*.f64 x (*.f64 3 y))
(*.f64 3 (*.f64 y x))
(*.f64 x (*.f64 3 y))
(*.f64 3 (*.f64 y x))
(*.f64 x (*.f64 3 y))
(*.f64 3 (*.f64 y x))
(*.f64 x (*.f64 3 y))
(*.f64 3 (*.f64 y x))
(*.f64 x (*.f64 3 y))
(*.f64 3 (*.f64 y x))
(*.f64 x (*.f64 3 y))
(*.f64 3 (*.f64 y x))
(*.f64 x (*.f64 3 y))
(*.f64 3 (*.f64 y x))
(*.f64 x (*.f64 3 y))
(*.f64 3 (*.f64 y x))
(*.f64 x (*.f64 3 y))
(*.f64 3 (*.f64 y x))
(*.f64 x (*.f64 3 y))
(*.f64 3 (*.f64 y x))
(*.f64 x (*.f64 3 y))
(*.f64 3 (*.f64 y x))
(*.f64 x (*.f64 3 y))
(*.f64 3 (*.f64 y x))
(*.f64 x (*.f64 3 y))
(*.f64 3 (*.f64 y x))
(*.f64 x (*.f64 3 y))
(*.f64 3 (*.f64 y x))
(*.f64 x (*.f64 3 y))
(*.f64 3 (*.f64 y x))
(*.f64 x (*.f64 3 y))
(*.f64 3 (*.f64 y x))
(*.f64 x (*.f64 3 y))
(*.f64 3 (*.f64 y x))
(*.f64 x (*.f64 3 y))
(*.f64 3 (*.f64 y x))
(*.f64 x (*.f64 3 y))
(*.f64 3 (*.f64 y x))
(*.f64 x (*.f64 3 y))
(*.f64 3 (*.f64 y x))
(*.f64 x (*.f64 3 y))
(*.f64 3 (*.f64 y x))
(*.f64 x (*.f64 3 y))

localize18.0ms (0.3%)

Local error

Found 8 expressions with local error:

NewErrorProgram
8.0b
(cbrt.f64 (*.f64 y x))
0.4b
(pow.f64 (cbrt.f64 (*.f64 y x)) 2)
0.3b
(*.f64 (*.f64 -3 (pow.f64 (cbrt.f64 (*.f64 y x)) 2)) (cbrt.f64 (*.f64 y x)))
0.2b
(*.f64 -3 (pow.f64 (cbrt.f64 (*.f64 y x)) 2))
0.2b
(*.f64 -3 (pow.f64 (cbrt.f64 (*.f64 y x)) 2))
0.3b
(*.f64 (*.f64 -3 (pow.f64 (cbrt.f64 (*.f64 y x)) 2)) (cbrt.f64 (*.f64 y x)))
0.4b
(pow.f64 (cbrt.f64 (*.f64 y x)) 2)
8.0b
(cbrt.f64 (*.f64 y x))
Compiler

Compiled 55 to 24 computations (56.4% saved)

series75.0ms (1.3%)

Counts
4 → 24
Calls

24 calls:

TimeVariablePointExpression
50.0ms
y
@-inf
(*.f64 -3 (pow.f64 (cbrt.f64 (*.f64 y x)) 2))
3.0ms
y
@-inf
(cbrt.f64 (*.f64 y x))
3.0ms
y
@-inf
(*.f64 (*.f64 -3 (pow.f64 (cbrt.f64 (*.f64 y x)) 2)) (cbrt.f64 (*.f64 y x)))
2.0ms
x
@-inf
(*.f64 (*.f64 -3 (pow.f64 (cbrt.f64 (*.f64 y x)) 2)) (cbrt.f64 (*.f64 y x)))
2.0ms
y
@0
(*.f64 (*.f64 -3 (pow.f64 (cbrt.f64 (*.f64 y x)) 2)) (cbrt.f64 (*.f64 y x)))

rewrite60.0ms (1%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
01034
120434
2222434
Stop Event
node limit
Counts
4 → 64
Calls
Call 1
Inputs
(cbrt.f64 (*.f64 y x))
(pow.f64 (cbrt.f64 (*.f64 y x)) 2)
(*.f64 (*.f64 -3 (pow.f64 (cbrt.f64 (*.f64 y x)) 2)) (cbrt.f64 (*.f64 y x)))
(*.f64 -3 (pow.f64 (cbrt.f64 (*.f64 y x)) 2))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (cbrt.f64 (*.f64 y x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 y x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (cbrt.f64 (*.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (*.f64 y x))) (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 y x))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 y) (cbrt.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 x) (cbrt.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 y x))) 2) (cbrt.f64 (cbrt.f64 (*.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 y x) 1/6) (pow.f64 (*.f64 y x) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (*.f64 y x)) 4))) (sqrt.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 y x))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/3) (cbrt.f64 (*.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (*.f64 y x)) 1/3) (pow.f64 (sqrt.f64 (*.f64 y x)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 y x) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 y x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cbrt.f64 (*.f64 y x)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 y x))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 y x) 1/6) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 y x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (cbrt.f64 (*.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (cbrt.f64 (*.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (cbrt.f64 (*.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (cbrt.f64 (*.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (cbrt.f64 (*.f64 y x))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (pow.f64 (cbrt.f64 (*.f64 y x)) 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 y x)) (cbrt.f64 (*.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 y x)) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (cbrt.f64 (*.f64 y x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 y) (*.f64 (cbrt.f64 x) (cbrt.f64 (*.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 y) 2) (cbrt.f64 (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 y x))) 2) (cbrt.f64 (pow.f64 (cbrt.f64 (*.f64 y x)) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 y x))) 2) (*.f64 (cbrt.f64 (cbrt.f64 (*.f64 y x))) (cbrt.f64 (*.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (*.f64 y x)) 4)) (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 y x))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 y x) 1/6) (*.f64 (pow.f64 (*.f64 y x) 1/6) (cbrt.f64 (*.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 y x)) (pow.f64 (*.f64 y x) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (*.f64 y x)) (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 y x))) 2)) (cbrt.f64 (cbrt.f64 (*.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (*.f64 y x)) (cbrt.f64 y)) (cbrt.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 y x)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 (cbrt.f64 (*.f64 y x)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 y x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (cbrt.f64 (*.f64 y x)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (pow.f64 (cbrt.f64 (*.f64 y x)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (cbrt.f64 (*.f64 y x)) 2)))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 (*.f64 -3 x) y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (*.f64 -3 x) y) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (*.f64 -3 x) y) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (*.f64 -3 x) y)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (*.f64 -3 x) y)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 9 (pow.f64 (*.f64 y x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 -3) (*.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (*.f64 -3 x) y) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (*.f64 y x) (*.f64 (*.f64 9 (pow.f64 (*.f64 y x) 2)) -3)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (*.f64 -3 x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (*.f64 -3 x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (*.f64 -3 x) y)))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 (pow.f64 (cbrt.f64 (*.f64 y x)) 2) -3)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (cbrt.f64 (*.f64 y x)) 2) -3) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (*.f64 9 (pow.f64 (*.f64 y x) 2)) -3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (pow.f64 (cbrt.f64 (*.f64 y x)) 2) -3)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (cbrt.f64 (*.f64 y x)) (sqrt.f64 -3)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 9 (pow.f64 (cbrt.f64 (*.f64 y x)) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 -3) (pow.f64 (cbrt.f64 (*.f64 y x)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (*.f64 9 (pow.f64 (*.f64 y x) 2)) -3))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (pow.f64 (cbrt.f64 (*.f64 y x)) 2) -3)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (pow.f64 (cbrt.f64 (*.f64 y x)) 2) -3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (pow.f64 (cbrt.f64 (*.f64 y x)) 2) -3)))))))

simplify11.0ms (0.2%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
06168
110168
217168
319168
Stop Event
saturated
Counts
88 → 66
Calls
Call 1
Inputs
(*.f64 -3 (*.f64 y x))
(*.f64 -3 (*.f64 y x))
(*.f64 -3 (*.f64 y x))
(*.f64 -3 (*.f64 y x))
(*.f64 -3 (*.f64 y x))
(*.f64 -3 (*.f64 y x))
(*.f64 -3 (*.f64 y x))
(*.f64 -3 (*.f64 y x))
(*.f64 -3 (*.f64 y x))
(*.f64 -3 (*.f64 y x))
(*.f64 -3 (*.f64 y x))
(*.f64 -3 (*.f64 y x))
(*.f64 -3 (*.f64 y x))
(*.f64 -3 (*.f64 y x))
(*.f64 -3 (*.f64 y x))
(*.f64 -3 (*.f64 y x))
(*.f64 -3 (*.f64 y x))
(*.f64 -3 (*.f64 y x))
(*.f64 -3 (*.f64 y x))
(*.f64 -3 (*.f64 y x))
(*.f64 -3 (*.f64 y x))
(*.f64 -3 (*.f64 y x))
(*.f64 -3 (*.f64 y x))
(*.f64 -3 (*.f64 y x))
Outputs
(*.f64 -3 (*.f64 y x))
(*.f64 x (*.f64 -3 y))
(*.f64 -3 (*.f64 y x))
(*.f64 x (*.f64 -3 y))
(*.f64 -3 (*.f64 y x))
(*.f64 x (*.f64 -3 y))
(*.f64 -3 (*.f64 y x))
(*.f64 x (*.f64 -3 y))
(*.f64 -3 (*.f64 y x))
(*.f64 x (*.f64 -3 y))
(*.f64 -3 (*.f64 y x))
(*.f64 x (*.f64 -3 y))
(*.f64 -3 (*.f64 y x))
(*.f64 x (*.f64 -3 y))
(*.f64 -3 (*.f64 y x))
(*.f64 x (*.f64 -3 y))
(*.f64 -3 (*.f64 y x))
(*.f64 x (*.f64 -3 y))
(*.f64 -3 (*.f64 y x))
(*.f64 x (*.f64 -3 y))
(*.f64 -3 (*.f64 y x))
(*.f64 x (*.f64 -3 y))
(*.f64 -3 (*.f64 y x))
(*.f64 x (*.f64 -3 y))
(*.f64 -3 (*.f64 y x))
(*.f64 x (*.f64 -3 y))
(*.f64 -3 (*.f64 y x))
(*.f64 x (*.f64 -3 y))
(*.f64 -3 (*.f64 y x))
(*.f64 x (*.f64 -3 y))
(*.f64 -3 (*.f64 y x))
(*.f64 x (*.f64 -3 y))
(*.f64 -3 (*.f64 y x))
(*.f64 x (*.f64 -3 y))
(*.f64 -3 (*.f64 y x))
(*.f64 x (*.f64 -3 y))
(*.f64 -3 (*.f64 y x))
(*.f64 x (*.f64 -3 y))
(*.f64 -3 (*.f64 y x))
(*.f64 x (*.f64 -3 y))
(*.f64 -3 (*.f64 y x))
(*.f64 x (*.f64 -3 y))
(*.f64 -3 (*.f64 y x))
(*.f64 x (*.f64 -3 y))
(*.f64 -3 (*.f64 y x))
(*.f64 x (*.f64 -3 y))
(*.f64 -3 (*.f64 y x))
(*.f64 x (*.f64 -3 y))

localize27.0ms (0.5%)

Local error

Found 8 expressions with local error:

NewErrorProgram
0.3b
(*.f64 3 (*.f64 y x))
0.3b
(*.f64 y (*.f64 x 9))
0.2b
(*.f64 y (*.f64 y (*.f64 x 9)))
0.0b
(-.f64 (*.f64 3 (*.f64 y x)) (neg.f64 z))
0.3b
(*.f64 y (*.f64 x 9))
0.3b
(*.f64 3 (*.f64 y x))
6.2b
(*.f64 x (*.f64 y (*.f64 y (*.f64 x 9))))
16.3b
(/.f64 (*.f64 x (*.f64 y (*.f64 y (*.f64 x 9)))) (-.f64 (*.f64 3 (*.f64 y x)) (neg.f64 z)))
Compiler

Compiled 68 to 35 computations (48.5% saved)

series27.0ms (0.5%)

Counts
3 → 84
Calls

21 calls:

TimeVariablePointExpression
10.0ms
x
@-inf
(/.f64 (*.f64 x (*.f64 y (*.f64 y (*.f64 x 9)))) (-.f64 (*.f64 3 (*.f64 y x)) (neg.f64 z)))
7.0ms
y
@inf
(/.f64 (*.f64 x (*.f64 y (*.f64 y (*.f64 x 9)))) (-.f64 (*.f64 3 (*.f64 y x)) (neg.f64 z)))
1.0ms
x
@0
(/.f64 (*.f64 x (*.f64 y (*.f64 y (*.f64 x 9)))) (-.f64 (*.f64 3 (*.f64 y x)) (neg.f64 z)))
1.0ms
z
@inf
(/.f64 (*.f64 x (*.f64 y (*.f64 y (*.f64 x 9)))) (-.f64 (*.f64 3 (*.f64 y x)) (neg.f64 z)))
1.0ms
y
@0
(/.f64 (*.f64 x (*.f64 y (*.f64 y (*.f64 x 9)))) (-.f64 (*.f64 3 (*.f64 y x)) (neg.f64 z)))

rewrite75.0ms (1.3%)

Algorithm
batch-egg-rewrite
Rules
892×log-prod_binary64
299×fma-neg_binary64
271×fma-def_binary64
260×expm1-udef_binary64
260×log1p-udef_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01547
132637
2465837
Stop Event
node limit
Counts
3 → 89
Calls
Call 1
Inputs
(/.f64 (*.f64 x (*.f64 y (*.f64 y (*.f64 x 9)))) (-.f64 (*.f64 3 (*.f64 y x)) (neg.f64 z)))
(*.f64 x (*.f64 y (*.f64 y (*.f64 x 9))))
(*.f64 y (*.f64 x 9))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (*.f64 9 (pow.f64 (*.f64 x y) 2)) (fma.f64 x (*.f64 y 3) z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (/.f64 (*.f64 9 (pow.f64 (*.f64 x y) 2)) (fma.f64 x (*.f64 y 3) z)))) (cbrt.f64 (exp.f64 (/.f64 (*.f64 9 (pow.f64 (*.f64 x y) 2)) (fma.f64 x (*.f64 y 3) z)))))) (log.f64 (cbrt.f64 (exp.f64 (/.f64 (*.f64 9 (pow.f64 (*.f64 x y) 2)) (fma.f64 x (*.f64 y 3) z))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 (*.f64 9 (pow.f64 (*.f64 x y) 2)) (fma.f64 x (*.f64 y 3) z))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 (*.f64 9 (pow.f64 (*.f64 x y) 2)) (fma.f64 x (*.f64 y 3) z))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (*.f64 9 (pow.f64 (*.f64 x y) 2)) (fma.f64 x (*.f64 y 3) z)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x (/.f64 1 (/.f64 (fma.f64 x (*.f64 y 3) z) (*.f64 y (*.f64 x (*.f64 9 y))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x (*.f64 (*.f64 y (*.f64 x (*.f64 9 y))) (/.f64 1 (fma.f64 x (*.f64 y 3) z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y (*.f64 x (*.f64 9 y))) (*.f64 x (/.f64 1 (fma.f64 x (*.f64 y 3) z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 9 (pow.f64 (*.f64 x y) 2)) (/.f64 1 (fma.f64 x (*.f64 y 3) z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x y) (*.f64 (*.f64 x (*.f64 9 y)) (/.f64 1 (fma.f64 x (*.f64 y 3) z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x (*.f64 y 3)) (*.f64 (*.f64 x (*.f64 y 3)) (/.f64 1 (fma.f64 x (*.f64 y 3) z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 9 (pow.f64 (*.f64 x y) 2)) (fma.f64 x (*.f64 y 3) z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (*.f64 9 (pow.f64 (*.f64 x y) 2)) (fma.f64 x (*.f64 y 3) z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (*.f64 9 (pow.f64 (*.f64 x y) 2)) (fma.f64 x (*.f64 y 3) z))) (pow.f64 (cbrt.f64 (/.f64 (*.f64 9 (pow.f64 (*.f64 x y) 2)) (fma.f64 x (*.f64 y 3) z))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (*.f64 9 (pow.f64 (*.f64 x y) 2)) (fma.f64 x (*.f64 y 3) z))) 2) (cbrt.f64 (/.f64 (*.f64 9 (pow.f64 (*.f64 x y) 2)) (fma.f64 x (*.f64 y 3) z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 9 (pow.f64 (*.f64 x y) 2))) 2) (*.f64 (cbrt.f64 (*.f64 9 (pow.f64 (*.f64 x y) 2))) (/.f64 1 (fma.f64 x (*.f64 y 3) z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 x (*.f64 y 3)) (sqrt.f64 (fma.f64 x (*.f64 y 3) z))) (/.f64 (*.f64 x (*.f64 y 3)) (sqrt.f64 (fma.f64 x (*.f64 y 3) z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (*.f64 9 (pow.f64 (*.f64 x y) 2))) (/.f64 1 (neg.f64 (fma.f64 x (*.f64 y 3) z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (fma.f64 x (*.f64 y 3) z)) (*.f64 9 (pow.f64 (*.f64 x y) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x 1) (/.f64 (*.f64 y (*.f64 x (*.f64 9 y))) (fma.f64 x (*.f64 y 3) z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 y (*.f64 x (*.f64 9 y))) 1) (/.f64 x (fma.f64 x (*.f64 y 3) z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x (fma.f64 x (*.f64 y 3) z)) (*.f64 y (*.f64 x (*.f64 9 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 x y) 1) (/.f64 (*.f64 x (*.f64 9 y)) (fma.f64 x (*.f64 y 3) z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 9 (pow.f64 (*.f64 x y) 2))) 2) 1) (/.f64 (cbrt.f64 (*.f64 9 (pow.f64 (*.f64 x y) 2))) (fma.f64 x (*.f64 y 3) z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 x (*.f64 y 3)) 1) (/.f64 (*.f64 x (*.f64 y 3)) (fma.f64 x (*.f64 y 3) z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x (pow.f64 (cbrt.f64 (fma.f64 x (*.f64 y 3) z)) 2)) (/.f64 (*.f64 y (*.f64 x (*.f64 9 y))) (cbrt.f64 (fma.f64 x (*.f64 y 3) z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 y (*.f64 x (*.f64 9 y))) (pow.f64 (cbrt.f64 (fma.f64 x (*.f64 y 3) z)) 2)) (/.f64 x (cbrt.f64 (fma.f64 x (*.f64 y 3) z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 x y) (pow.f64 (cbrt.f64 (fma.f64 x (*.f64 y 3) z)) 2)) (/.f64 (*.f64 x (*.f64 9 y)) (cbrt.f64 (fma.f64 x (*.f64 y 3) z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 (fma.f64 x (*.f64 y 3) z)) 2)) (/.f64 (*.f64 9 (pow.f64 (*.f64 x y) 2)) (cbrt.f64 (fma.f64 x (*.f64 y 3) z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 9 (pow.f64 (*.f64 x y) 2))) 2) (pow.f64 (cbrt.f64 (fma.f64 x (*.f64 y 3) z)) 2)) (cbrt.f64 (/.f64 (*.f64 9 (pow.f64 (*.f64 x y) 2)) (fma.f64 x (*.f64 y 3) z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 x (*.f64 y 3)) (pow.f64 (cbrt.f64 (fma.f64 x (*.f64 y 3) z)) 2)) (/.f64 (*.f64 x (*.f64 y 3)) (cbrt.f64 (fma.f64 x (*.f64 y 3) z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x (sqrt.f64 (fma.f64 x (*.f64 y 3) z))) (/.f64 (*.f64 y (*.f64 x (*.f64 9 y))) (sqrt.f64 (fma.f64 x (*.f64 y 3) z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 y (*.f64 x (*.f64 9 y))) (sqrt.f64 (fma.f64 x (*.f64 y 3) z))) (/.f64 x (sqrt.f64 (fma.f64 x (*.f64 y 3) z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 x y) (sqrt.f64 (fma.f64 x (*.f64 y 3) z))) (/.f64 (*.f64 x (*.f64 9 y)) (sqrt.f64 (fma.f64 x (*.f64 y 3) z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 (fma.f64 x (*.f64 y 3) z))) (/.f64 (*.f64 9 (pow.f64 (*.f64 x y) 2)) (sqrt.f64 (fma.f64 x (*.f64 y 3) z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 9 (pow.f64 (*.f64 x y) 2))) 2) (sqrt.f64 (fma.f64 x (*.f64 y 3) z))) (/.f64 (cbrt.f64 (*.f64 9 (pow.f64 (*.f64 x y) 2))) (sqrt.f64 (fma.f64 x (*.f64 y 3) z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 9 (pow.f64 (*.f64 x y) 2)) (fma.f64 27 (pow.f64 (*.f64 x y) 3) (pow.f64 z 3))) (fma.f64 z (fma.f64 x (*.f64 y 3) z) (*.f64 9 (pow.f64 (*.f64 x y) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 9 (pow.f64 (*.f64 x y) 2)) (pow.f64 (fma.f64 x (*.f64 y 3) z) 2)) (fma.f64 x (*.f64 y 3) z))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (*.f64 9 (pow.f64 (*.f64 x y) 2)) (fma.f64 x (*.f64 y 3) z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (*.f64 9 (pow.f64 (*.f64 x y) 2)) (fma.f64 x (*.f64 y 3) z)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (*.f64 9 (pow.f64 (*.f64 x y) 2)) (fma.f64 x (*.f64 y 3) z))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (*.f64 x (*.f64 y 3)) (sqrt.f64 (fma.f64 x (*.f64 y 3) z))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 x (*.f64 y 3) z) (*.f64 9 (pow.f64 (*.f64 x y) 2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (*.f64 9 (pow.f64 (*.f64 x y) 2)) (neg.f64 (fma.f64 x (*.f64 y 3) z))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (*.f64 9 (pow.f64 (*.f64 x y) 2)) (fma.f64 x (*.f64 y 3) z)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (*.f64 9 (pow.f64 (*.f64 x y) 2)) (fma.f64 x (*.f64 y 3) z))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (*.f64 9 (pow.f64 (*.f64 x y) 2)) (fma.f64 x (*.f64 y 3) z)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (*.f64 9 (pow.f64 (*.f64 x y) 2)) (fma.f64 x (*.f64 y 3) z)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (*.f64 9 (pow.f64 (*.f64 x y) 2)) 3) (pow.f64 (fma.f64 x (*.f64 y 3) z) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (*.f64 9 (pow.f64 (*.f64 x y) 2)) (fma.f64 x (*.f64 y 3) z))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (*.f64 9 (pow.f64 (*.f64 x y) 2)) (fma.f64 x (*.f64 y 3) z))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (*.f64 9 (pow.f64 (*.f64 x y) 2)) (fma.f64 x (*.f64 y 3) z))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (*.f64 9 (pow.f64 (*.f64 x y) 2)) (fma.f64 x (*.f64 y 3) z))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 9 (pow.f64 (*.f64 x y) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (*.f64 9 (pow.f64 (*.f64 x y) 2)))) (cbrt.f64 (exp.f64 (*.f64 9 (pow.f64 (*.f64 x y) 2)))))) (log.f64 (cbrt.f64 (exp.f64 (*.f64 9 (pow.f64 (*.f64 x y) 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (*.f64 9 (pow.f64 (*.f64 x y) 2))))) (log.f64 (sqrt.f64 (exp.f64 (*.f64 9 (pow.f64 (*.f64 x y) 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 9 (pow.f64 (*.f64 x y) 2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 9 (pow.f64 (*.f64 x y) 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 x (*.f64 y 3)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 9 (pow.f64 (*.f64 x y) 2)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 9 (pow.f64 (*.f64 x y) 2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 9 (pow.f64 (*.f64 x y) 2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (*.f64 9 (pow.f64 (*.f64 x y) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 9 (pow.f64 (*.f64 x y) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 9 (pow.f64 (*.f64 x y) 2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 x 3) (pow.f64 (*.f64 y (*.f64 x (*.f64 9 y))) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (*.f64 y (*.f64 x (*.f64 9 y))) 3) (pow.f64 x 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (*.f64 x y) 3) (pow.f64 (*.f64 x (*.f64 9 y)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 9 (pow.f64 (*.f64 x y) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 2 (log.f64 (*.f64 x (*.f64 y 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 2 (log.f64 (*.f64 x (*.f64 y 3)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 9 (pow.f64 (*.f64 x y) 2))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 x (*.f64 9 y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 y) x) 9)) (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 y) x) 9)))) (log.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 y) x) 9))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 y) x) 9))) (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 y) x) 9))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 x (*.f64 9 y)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 x (*.f64 9 y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 x (*.f64 9 y)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 x (*.f64 9 y))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sqrt.f64 (*.f64 x y)) 3) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (pow.f64 (*.f64 x y) 2) 81))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (pow.f64 (exp.f64 y) x) 9))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 x (*.f64 9 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 x (*.f64 9 y)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 y 3) (pow.f64 (*.f64 x 9) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (*.f64 x 9) 3) (pow.f64 y 3)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 x (*.f64 9 y))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 x (*.f64 9 y))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 x (*.f64 9 y))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 x (*.f64 9 y))))))))

simplify93.0ms (1.6%)

Algorithm
egg-herbie
Rules
777×fma-neg_binary64
513×times-frac_binary64
512×unswap-sqr_binary64
346×cancel-sign-sub-inv_binary64
325×associate-/l*_binary64
Iterations

Useful iterations: 5 (0.0ms)

IterNodesCost
0591617
11721602
25871602
335871559
450741531
568831507
Stop Event
node limit
Counts
173 → 109
Calls
Call 1
Inputs
(*.f64 9 (/.f64 (*.f64 (pow.f64 y 2) (pow.f64 x 2)) z))
(+.f64 (*.f64 -27 (/.f64 (*.f64 (pow.f64 y 3) (pow.f64 x 3)) (pow.f64 z 2))) (*.f64 9 (/.f64 (*.f64 (pow.f64 y 2) (pow.f64 x 2)) z)))
(+.f64 (*.f64 -27 (/.f64 (*.f64 (pow.f64 y 3) (pow.f64 x 3)) (pow.f64 z 2))) (+.f64 (*.f64 9 (/.f64 (*.f64 (pow.f64 y 2) (pow.f64 x 2)) z)) (*.f64 81 (/.f64 (*.f64 (pow.f64 y 4) (pow.f64 x 4)) (pow.f64 z 3)))))
(+.f64 (*.f64 -27 (/.f64 (*.f64 (pow.f64 y 3) (pow.f64 x 3)) (pow.f64 z 2))) (+.f64 (*.f64 9 (/.f64 (*.f64 (pow.f64 y 2) (pow.f64 x 2)) z)) (+.f64 (*.f64 -243 (/.f64 (*.f64 (pow.f64 y 5) (pow.f64 x 5)) (pow.f64 z 4))) (*.f64 81 (/.f64 (*.f64 (pow.f64 y 4) (pow.f64 x 4)) (pow.f64 z 3))))))
(*.f64 3 (*.f64 y x))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(+.f64 (*.f64 -1 z) (+.f64 (*.f64 3 (*.f64 y x)) (*.f64 1/3 (/.f64 (pow.f64 z 2) (*.f64 y x)))))
(+.f64 (*.f64 -1 z) (+.f64 (*.f64 3 (*.f64 y x)) (+.f64 (*.f64 1/3 (/.f64 (pow.f64 z 2) (*.f64 y x))) (*.f64 -1/9 (/.f64 (pow.f64 z 3) (*.f64 (pow.f64 y 2) (pow.f64 x 2)))))))
(*.f64 3 (*.f64 y x))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(+.f64 (*.f64 -1 z) (+.f64 (*.f64 3 (*.f64 y x)) (*.f64 1/3 (/.f64 (pow.f64 z 2) (*.f64 y x)))))
(+.f64 (*.f64 -1 z) (+.f64 (*.f64 3 (*.f64 y x)) (+.f64 (*.f64 1/3 (/.f64 (pow.f64 z 2) (*.f64 y x))) (*.f64 -1/9 (/.f64 (pow.f64 z 3) (*.f64 (pow.f64 y 2) (pow.f64 x 2)))))))
(*.f64 9 (/.f64 (*.f64 (pow.f64 y 2) (pow.f64 x 2)) z))
(+.f64 (*.f64 -27 (/.f64 (*.f64 (pow.f64 y 3) (pow.f64 x 3)) (pow.f64 z 2))) (*.f64 9 (/.f64 (*.f64 (pow.f64 y 2) (pow.f64 x 2)) z)))
(+.f64 (*.f64 -27 (/.f64 (*.f64 (pow.f64 y 3) (pow.f64 x 3)) (pow.f64 z 2))) (+.f64 (*.f64 9 (/.f64 (*.f64 (pow.f64 y 2) (pow.f64 x 2)) z)) (*.f64 81 (/.f64 (*.f64 (pow.f64 y 4) (pow.f64 x 4)) (pow.f64 z 3)))))
(+.f64 (*.f64 -27 (/.f64 (*.f64 (pow.f64 y 3) (pow.f64 x 3)) (pow.f64 z 2))) (+.f64 (*.f64 9 (/.f64 (*.f64 (pow.f64 y 2) (pow.f64 x 2)) z)) (+.f64 (*.f64 -243 (/.f64 (*.f64 (pow.f64 y 5) (pow.f64 x 5)) (pow.f64 z 4))) (*.f64 81 (/.f64 (*.f64 (pow.f64 y 4) (pow.f64 x 4)) (pow.f64 z 3))))))
(*.f64 3 (*.f64 y x))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(+.f64 (*.f64 -1 z) (+.f64 (*.f64 3 (*.f64 y x)) (*.f64 1/3 (/.f64 (pow.f64 z 2) (*.f64 y x)))))
(+.f64 (*.f64 -1 z) (+.f64 (*.f64 3 (*.f64 y x)) (+.f64 (*.f64 1/3 (/.f64 (pow.f64 z 2) (*.f64 y x))) (*.f64 -1/9 (/.f64 (pow.f64 z 3) (*.f64 (pow.f64 y 2) (pow.f64 x 2)))))))
(*.f64 3 (*.f64 y x))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(+.f64 (*.f64 -1 z) (+.f64 (*.f64 3 (*.f64 y x)) (*.f64 1/3 (/.f64 (pow.f64 z 2) (*.f64 y x)))))
(+.f64 (*.f64 -1 z) (+.f64 (*.f64 3 (*.f64 y x)) (+.f64 (*.f64 1/3 (/.f64 (pow.f64 z 2) (*.f64 y x))) (*.f64 -1/9 (/.f64 (pow.f64 z 3) (*.f64 (pow.f64 y 2) (pow.f64 x 2)))))))
(*.f64 3 (*.f64 y x))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(+.f64 (*.f64 -1 z) (+.f64 (*.f64 3 (*.f64 y x)) (*.f64 1/3 (/.f64 (pow.f64 z 2) (*.f64 y x)))))
(+.f64 (*.f64 -1 z) (+.f64 (*.f64 3 (*.f64 y x)) (+.f64 (*.f64 1/3 (/.f64 (pow.f64 z 2) (*.f64 y x))) (*.f64 -1/9 (/.f64 (pow.f64 z 3) (*.f64 (pow.f64 y 2) (pow.f64 x 2)))))))
(*.f64 9 (/.f64 (*.f64 (pow.f64 y 2) (pow.f64 x 2)) z))
(+.f64 (*.f64 -27 (/.f64 (*.f64 (pow.f64 y 3) (pow.f64 x 3)) (pow.f64 z 2))) (*.f64 9 (/.f64 (*.f64 (pow.f64 y 2) (pow.f64 x 2)) z)))
(+.f64 (*.f64 -27 (/.f64 (*.f64 (pow.f64 y 3) (pow.f64 x 3)) (pow.f64 z 2))) (+.f64 (*.f64 9 (/.f64 (*.f64 (pow.f64 y 2) (pow.f64 x 2)) z)) (*.f64 81 (/.f64 (*.f64 (pow.f64 y 4) (pow.f64 x 4)) (pow.f64 z 3)))))
(+.f64 (*.f64 -27 (/.f64 (*.f64 (pow.f64 y 3) (pow.f64 x 3)) (pow.f64 z 2))) (+.f64 (*.f64 9 (/.f64 (*.f64 (pow.f64 y 2) (pow.f64 x 2)) z)) (+.f64 (*.f64 -243 (/.f64 (*.f64 (pow.f64 y 5) (pow.f64 x 5)) (pow.f64 z 4))) (*.f64 81 (/.f64 (*.f64 (pow.f64 y 4) (pow.f64 x 4)) (pow.f64 z 3))))))
(*.f64 9 (/.f64 (*.f64 (pow.f64 y 2) (pow.f64 x 2)) z))
(+.f64 (*.f64 -27 (/.f64 (*.f64 (pow.f64 y 3) (pow.f64 x 3)) (pow.f64 z 2))) (*.f64 9 (/.f64 (*.f64 (pow.f64 y 2) (pow.f64 x 2)) z)))
(+.f64 (*.f64 -27 (/.f64 (*.f64 (pow.f64 y 3) (pow.f64 x 3)) (pow.f64 z 2))) (+.f64 (*.f64 9 (/.f64 (*.f64 (pow.f64 y 2) (pow.f64 x 2)) z)) (*.f64 81 (/.f64 (*.f64 (pow.f64 y 4) (pow.f64 x 4)) (pow.f64 z 3)))))
(+.f64 (*.f64 -27 (/.f64 (*.f64 (pow.f64 y 3) (pow.f64 x 3)) (pow.f64 z 2))) (+.f64 (*.f64 9 (/.f64 (*.f64 (pow.f64 y 2) (pow.f64 x 2)) z)) (+.f64 (*.f64 -243 (/.f64 (*.f64 (pow.f64 y 5) (pow.f64 x 5)) (pow.f64 z 4))) (*.f64 81 (/.f64 (*.f64 (pow.f64 y 4) (pow.f64 x 4)) (pow.f64 z 3))))))
(*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2)))
(*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2)))
(*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2)))
(*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2)))
(*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2)))
(*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2)))
(*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2)))
(*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2)))
(*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2)))
(*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2)))
(*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2)))
(*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2)))
(*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2)))
(*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2)))
(*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2)))
(*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2)))
(*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2)))
(*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2)))
(*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2)))
(*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2)))
(*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2)))
(*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2)))
(*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2)))
(*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2)))
(*.f64 9 (*.f64 y x))
(*.f64 9 (*.f64 y x))
(*.f64 9 (*.f64 y x))
(*.f64 9 (*.f64 y x))
(*.f64 9 (*.f64 y x))
(*.f64 9 (*.f64 y x))
(*.f64 9 (*.f64 y x))
(*.f64 9 (*.f64 y x))
(*.f64 9 (*.f64 y x))
(*.f64 9 (*.f64 y x))
(*.f64 9 (*.f64 y x))
(*.f64 9 (*.f64 y x))
(*.f64 9 (*.f64 y x))
(*.f64 9 (*.f64 y x))
(*.f64 9 (*.f64 y x))
(*.f64 9 (*.f64 y x))
(*.f64 9 (*.f64 y x))
(*.f64 9 (*.f64 y x))
(*.f64 9 (*.f64 y x))
(*.f64 9 (*.f64 y x))
(*.f64 9 (*.f64 y x))
(*.f64 9 (*.f64 y x))
(*.f64 9 (*.f64 y x))
(*.f64 9 (*.f64 y x))
Outputs
(*.f64 9 (/.f64 (*.f64 (pow.f64 y 2) (pow.f64 x 2)) z))
(*.f64 9 (/.f64 (*.f64 (*.f64 y y) (*.f64 x x)) z))
(*.f64 9 (*.f64 (/.f64 (*.f64 y y) z) (*.f64 x x)))
(*.f64 9 (*.f64 (*.f64 x x) (/.f64 y (/.f64 z y))))
(*.f64 (/.f64 y (/.f64 z y)) (*.f64 9 (*.f64 x x)))
(+.f64 (*.f64 -27 (/.f64 (*.f64 (pow.f64 y 3) (pow.f64 x 3)) (pow.f64 z 2))) (*.f64 9 (/.f64 (*.f64 (pow.f64 y 2) (pow.f64 x 2)) z)))
(fma.f64 -27 (/.f64 (*.f64 (pow.f64 y 3) (pow.f64 x 3)) (*.f64 z z)) (*.f64 9 (/.f64 (*.f64 (*.f64 y y) (*.f64 x x)) z)))
(fma.f64 9 (*.f64 (/.f64 (*.f64 y y) z) (*.f64 x x)) (*.f64 -27 (*.f64 (/.f64 (pow.f64 y 3) z) (/.f64 (pow.f64 x 3) z))))
(fma.f64 9 (*.f64 (*.f64 x x) (/.f64 y (/.f64 z y))) (*.f64 (/.f64 (pow.f64 x 3) z) (*.f64 (/.f64 (pow.f64 y 3) z) -27)))
(*.f64 (*.f64 x x) (+.f64 (*.f64 9 (/.f64 y (/.f64 z y))) (/.f64 (*.f64 -27 (pow.f64 y 3)) (/.f64 z (/.f64 x z)))))
(fma.f64 -27 (/.f64 (pow.f64 (*.f64 y x) 3) (*.f64 z z)) (*.f64 (/.f64 y (/.f64 z y)) (*.f64 9 (*.f64 x x))))
(+.f64 (*.f64 -27 (/.f64 (*.f64 (pow.f64 y 3) (pow.f64 x 3)) (pow.f64 z 2))) (+.f64 (*.f64 9 (/.f64 (*.f64 (pow.f64 y 2) (pow.f64 x 2)) z)) (*.f64 81 (/.f64 (*.f64 (pow.f64 y 4) (pow.f64 x 4)) (pow.f64 z 3)))))
(fma.f64 -27 (/.f64 (*.f64 (pow.f64 y 3) (pow.f64 x 3)) (*.f64 z z)) (fma.f64 9 (/.f64 (*.f64 (*.f64 y y) (*.f64 x x)) z) (*.f64 81 (/.f64 (*.f64 (pow.f64 y 4) (pow.f64 x 4)) (pow.f64 z 3)))))
(fma.f64 -27 (*.f64 (/.f64 (pow.f64 y 3) z) (/.f64 (pow.f64 x 3) z)) (fma.f64 9 (*.f64 (/.f64 (*.f64 y y) z) (*.f64 x x)) (*.f64 81 (*.f64 (/.f64 (pow.f64 y 4) (pow.f64 z 3)) (pow.f64 x 4)))))
(fma.f64 9 (*.f64 (*.f64 x x) (/.f64 y (/.f64 z y))) (fma.f64 -27 (*.f64 (pow.f64 x 3) (/.f64 (pow.f64 y 3) (*.f64 z z))) (*.f64 (/.f64 (*.f64 81 (pow.f64 y 4)) (pow.f64 z 3)) (pow.f64 x 4))))
(fma.f64 81 (*.f64 (pow.f64 x 4) (/.f64 (pow.f64 y 4) (pow.f64 z 3))) (*.f64 (*.f64 x x) (+.f64 (*.f64 9 (/.f64 y (/.f64 z y))) (/.f64 (*.f64 -27 (pow.f64 y 3)) (/.f64 z (/.f64 x z))))))
(fma.f64 9 (*.f64 (*.f64 x x) (/.f64 y (/.f64 z y))) (fma.f64 -27 (/.f64 (pow.f64 (*.f64 y x) 3) (*.f64 z z)) (*.f64 (/.f64 (*.f64 81 (pow.f64 y 4)) (pow.f64 z 3)) (pow.f64 x 4))))
(fma.f64 -27 (/.f64 (pow.f64 (*.f64 y x) 3) (*.f64 z z)) (fma.f64 81 (/.f64 (pow.f64 (*.f64 y x) 4) (pow.f64 z 3)) (*.f64 (/.f64 y (/.f64 z y)) (*.f64 9 (*.f64 x x)))))
(+.f64 (*.f64 -27 (/.f64 (*.f64 (pow.f64 y 3) (pow.f64 x 3)) (pow.f64 z 2))) (+.f64 (*.f64 9 (/.f64 (*.f64 (pow.f64 y 2) (pow.f64 x 2)) z)) (+.f64 (*.f64 -243 (/.f64 (*.f64 (pow.f64 y 5) (pow.f64 x 5)) (pow.f64 z 4))) (*.f64 81 (/.f64 (*.f64 (pow.f64 y 4) (pow.f64 x 4)) (pow.f64 z 3))))))
(fma.f64 -27 (/.f64 (*.f64 (pow.f64 y 3) (pow.f64 x 3)) (*.f64 z z)) (fma.f64 9 (/.f64 (*.f64 (*.f64 y y) (*.f64 x x)) z) (fma.f64 -243 (/.f64 (pow.f64 y 5) (/.f64 (pow.f64 z 4) (pow.f64 x 5))) (*.f64 81 (/.f64 (*.f64 (pow.f64 y 4) (pow.f64 x 4)) (pow.f64 z 3))))))
(fma.f64 -27 (*.f64 (/.f64 (pow.f64 y 3) z) (/.f64 (pow.f64 x 3) z)) (fma.f64 9 (*.f64 (/.f64 (*.f64 y y) z) (*.f64 x x)) (fma.f64 81 (*.f64 (/.f64 (pow.f64 y 4) (pow.f64 z 3)) (pow.f64 x 4)) (/.f64 (*.f64 (*.f64 -243 (pow.f64 y 5)) (pow.f64 x 5)) (pow.f64 z 4)))))
(fma.f64 9 (*.f64 (*.f64 x x) (/.f64 y (/.f64 z y))) (fma.f64 (/.f64 -27 z) (/.f64 (pow.f64 x 3) (/.f64 z (pow.f64 y 3))) (fma.f64 -243 (/.f64 (pow.f64 y 5) (/.f64 (pow.f64 z 4) (pow.f64 x 5))) (*.f64 (/.f64 (*.f64 81 (pow.f64 y 4)) (pow.f64 z 3)) (pow.f64 x 4)))))
(fma.f64 9 (*.f64 (*.f64 x x) (/.f64 y (/.f64 z y))) (fma.f64 -27 (/.f64 (pow.f64 (*.f64 y x) 3) (*.f64 z z)) (fma.f64 -243 (*.f64 (/.f64 (pow.f64 x 5) (pow.f64 z 4)) (pow.f64 y 5)) (*.f64 (/.f64 (*.f64 81 (pow.f64 y 4)) (pow.f64 z 3)) (pow.f64 x 4)))))
(fma.f64 -27 (/.f64 (pow.f64 (*.f64 y x) 3) (*.f64 z z)) (fma.f64 81 (/.f64 (pow.f64 (*.f64 y x) 4) (pow.f64 z 3)) (fma.f64 -243 (*.f64 (/.f64 (pow.f64 x 5) (pow.f64 z 4)) (pow.f64 y 5)) (*.f64 (/.f64 y (/.f64 z y)) (*.f64 9 (*.f64 x x))))))
(*.f64 3 (*.f64 y x))
(*.f64 y (*.f64 x 3))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(fma.f64 -1 z (*.f64 3 (*.f64 y x)))
(-.f64 (*.f64 y (*.f64 x 3)) z)
(fma.f64 x (*.f64 y 3) (neg.f64 z))
(fma.f64 y (*.f64 x 3) (neg.f64 z))
(+.f64 (*.f64 -1 z) (+.f64 (*.f64 3 (*.f64 y x)) (*.f64 1/3 (/.f64 (pow.f64 z 2) (*.f64 y x)))))
(fma.f64 -1 z (fma.f64 3 (*.f64 y x) (*.f64 1/3 (/.f64 (/.f64 (*.f64 z z) y) x))))
(-.f64 (fma.f64 3 (*.f64 y x) (*.f64 1/3 (*.f64 (/.f64 z y) (/.f64 z x)))) z)
(fma.f64 y (*.f64 x 3) (fma.f64 1/3 (/.f64 (/.f64 z (/.f64 y z)) x) (neg.f64 z)))
(fma.f64 y (*.f64 x 3) (fma.f64 1/3 (/.f64 z (/.f64 x (/.f64 z y))) (neg.f64 z)))
(+.f64 (*.f64 -1 z) (+.f64 (*.f64 3 (*.f64 y x)) (+.f64 (*.f64 1/3 (/.f64 (pow.f64 z 2) (*.f64 y x))) (*.f64 -1/9 (/.f64 (pow.f64 z 3) (*.f64 (pow.f64 y 2) (pow.f64 x 2)))))))
(fma.f64 -1 z (fma.f64 3 (*.f64 y x) (fma.f64 1/3 (/.f64 (/.f64 (*.f64 z z) y) x) (*.f64 -1/9 (/.f64 (pow.f64 z 3) (*.f64 (*.f64 y y) (*.f64 x x)))))))
(-.f64 (fma.f64 3 (*.f64 y x) (fma.f64 1/3 (*.f64 (/.f64 z y) (/.f64 z x)) (*.f64 -1/9 (/.f64 (pow.f64 z 3) (*.f64 (*.f64 y x) (*.f64 y x)))))) z)
(-.f64 (fma.f64 y (*.f64 x 3) (fma.f64 1/3 (/.f64 (/.f64 z (/.f64 y z)) x) (*.f64 -1/9 (/.f64 (pow.f64 z 3) (*.f64 (*.f64 y x) (*.f64 y x)))))) z)
(-.f64 (fma.f64 y (*.f64 x 3) (*.f64 (/.f64 (/.f64 z (/.f64 y z)) x) (+.f64 (/.f64 (*.f64 z -1/9) (*.f64 y x)) 1/3))) z)
(fma.f64 (/.f64 z (/.f64 x (/.f64 z y))) (+.f64 1/3 (/.f64 (*.f64 z -1/9) (*.f64 y x))) (fma.f64 y (*.f64 x 3) (neg.f64 z)))
(*.f64 3 (*.f64 y x))
(*.f64 y (*.f64 x 3))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(fma.f64 -1 z (*.f64 3 (*.f64 y x)))
(-.f64 (*.f64 y (*.f64 x 3)) z)
(fma.f64 x (*.f64 y 3) (neg.f64 z))
(fma.f64 y (*.f64 x 3) (neg.f64 z))
(+.f64 (*.f64 -1 z) (+.f64 (*.f64 3 (*.f64 y x)) (*.f64 1/3 (/.f64 (pow.f64 z 2) (*.f64 y x)))))
(fma.f64 -1 z (fma.f64 3 (*.f64 y x) (*.f64 1/3 (/.f64 (/.f64 (*.f64 z z) y) x))))
(-.f64 (fma.f64 3 (*.f64 y x) (*.f64 1/3 (*.f64 (/.f64 z y) (/.f64 z x)))) z)
(fma.f64 y (*.f64 x 3) (fma.f64 1/3 (/.f64 (/.f64 z (/.f64 y z)) x) (neg.f64 z)))
(fma.f64 y (*.f64 x 3) (fma.f64 1/3 (/.f64 z (/.f64 x (/.f64 z y))) (neg.f64 z)))
(+.f64 (*.f64 -1 z) (+.f64 (*.f64 3 (*.f64 y x)) (+.f64 (*.f64 1/3 (/.f64 (pow.f64 z 2) (*.f64 y x))) (*.f64 -1/9 (/.f64 (pow.f64 z 3) (*.f64 (pow.f64 y 2) (pow.f64 x 2)))))))
(fma.f64 -1 z (fma.f64 3 (*.f64 y x) (fma.f64 1/3 (/.f64 (/.f64 (*.f64 z z) y) x) (*.f64 -1/9 (/.f64 (pow.f64 z 3) (*.f64 (*.f64 y y) (*.f64 x x)))))))
(-.f64 (fma.f64 3 (*.f64 y x) (fma.f64 1/3 (*.f64 (/.f64 z y) (/.f64 z x)) (*.f64 -1/9 (/.f64 (pow.f64 z 3) (*.f64 (*.f64 y x) (*.f64 y x)))))) z)
(-.f64 (fma.f64 y (*.f64 x 3) (fma.f64 1/3 (/.f64 (/.f64 z (/.f64 y z)) x) (*.f64 -1/9 (/.f64 (pow.f64 z 3) (*.f64 (*.f64 y x) (*.f64 y x)))))) z)
(-.f64 (fma.f64 y (*.f64 x 3) (*.f64 (/.f64 (/.f64 z (/.f64 y z)) x) (+.f64 (/.f64 (*.f64 z -1/9) (*.f64 y x)) 1/3))) z)
(fma.f64 (/.f64 z (/.f64 x (/.f64 z y))) (+.f64 1/3 (/.f64 (*.f64 z -1/9) (*.f64 y x))) (fma.f64 y (*.f64 x 3) (neg.f64 z)))
(*.f64 9 (/.f64 (*.f64 (pow.f64 y 2) (pow.f64 x 2)) z))
(*.f64 9 (/.f64 (*.f64 (*.f64 y y) (*.f64 x x)) z))
(*.f64 9 (*.f64 (/.f64 (*.f64 y y) z) (*.f64 x x)))
(*.f64 9 (*.f64 (*.f64 x x) (/.f64 y (/.f64 z y))))
(*.f64 (/.f64 y (/.f64 z y)) (*.f64 9 (*.f64 x x)))
(+.f64 (*.f64 -27 (/.f64 (*.f64 (pow.f64 y 3) (pow.f64 x 3)) (pow.f64 z 2))) (*.f64 9 (/.f64 (*.f64 (pow.f64 y 2) (pow.f64 x 2)) z)))
(fma.f64 -27 (/.f64 (*.f64 (pow.f64 y 3) (pow.f64 x 3)) (*.f64 z z)) (*.f64 9 (/.f64 (*.f64 (*.f64 y y) (*.f64 x x)) z)))
(fma.f64 9 (*.f64 (/.f64 (*.f64 y y) z) (*.f64 x x)) (*.f64 -27 (*.f64 (/.f64 (pow.f64 y 3) z) (/.f64 (pow.f64 x 3) z))))
(fma.f64 9 (*.f64 (*.f64 x x) (/.f64 y (/.f64 z y))) (*.f64 (/.f64 (pow.f64 x 3) z) (*.f64 (/.f64 (pow.f64 y 3) z) -27)))
(*.f64 (*.f64 x x) (+.f64 (*.f64 9 (/.f64 y (/.f64 z y))) (/.f64 (*.f64 -27 (pow.f64 y 3)) (/.f64 z (/.f64 x z)))))
(fma.f64 -27 (/.f64 (pow.f64 (*.f64 y x) 3) (*.f64 z z)) (*.f64 (/.f64 y (/.f64 z y)) (*.f64 9 (*.f64 x x))))
(+.f64 (*.f64 -27 (/.f64 (*.f64 (pow.f64 y 3) (pow.f64 x 3)) (pow.f64 z 2))) (+.f64 (*.f64 9 (/.f64 (*.f64 (pow.f64 y 2) (pow.f64 x 2)) z)) (*.f64 81 (/.f64 (*.f64 (pow.f64 y 4) (pow.f64 x 4)) (pow.f64 z 3)))))
(fma.f64 -27 (/.f64 (*.f64 (pow.f64 y 3) (pow.f64 x 3)) (*.f64 z z)) (fma.f64 9 (/.f64 (*.f64 (*.f64 y y) (*.f64 x x)) z) (*.f64 81 (/.f64 (*.f64 (pow.f64 y 4) (pow.f64 x 4)) (pow.f64 z 3)))))
(fma.f64 -27 (*.f64 (/.f64 (pow.f64 y 3) z) (/.f64 (pow.f64 x 3) z)) (fma.f64 9 (*.f64 (/.f64 (*.f64 y y) z) (*.f64 x x)) (*.f64 81 (*.f64 (/.f64 (pow.f64 y 4) (pow.f64 z 3)) (pow.f64 x 4)))))
(fma.f64 9 (*.f64 (*.f64 x x) (/.f64 y (/.f64 z y))) (fma.f64 -27 (*.f64 (pow.f64 x 3) (/.f64 (pow.f64 y 3) (*.f64 z z))) (*.f64 (/.f64 (*.f64 81 (pow.f64 y 4)) (pow.f64 z 3)) (pow.f64 x 4))))
(fma.f64 81 (*.f64 (pow.f64 x 4) (/.f64 (pow.f64 y 4) (pow.f64 z 3))) (*.f64 (*.f64 x x) (+.f64 (*.f64 9 (/.f64 y (/.f64 z y))) (/.f64 (*.f64 -27 (pow.f64 y 3)) (/.f64 z (/.f64 x z))))))
(fma.f64 9 (*.f64 (*.f64 x x) (/.f64 y (/.f64 z y))) (fma.f64 -27 (/.f64 (pow.f64 (*.f64 y x) 3) (*.f64 z z)) (*.f64 (/.f64 (*.f64 81 (pow.f64 y 4)) (pow.f64 z 3)) (pow.f64 x 4))))
(fma.f64 -27 (/.f64 (pow.f64 (*.f64 y x) 3) (*.f64 z z)) (fma.f64 81 (/.f64 (pow.f64 (*.f64 y x) 4) (pow.f64 z 3)) (*.f64 (/.f64 y (/.f64 z y)) (*.f64 9 (*.f64 x x)))))
(+.f64 (*.f64 -27 (/.f64 (*.f64 (pow.f64 y 3) (pow.f64 x 3)) (pow.f64 z 2))) (+.f64 (*.f64 9 (/.f64 (*.f64 (pow.f64 y 2) (pow.f64 x 2)) z)) (+.f64 (*.f64 -243 (/.f64 (*.f64 (pow.f64 y 5) (pow.f64 x 5)) (pow.f64 z 4))) (*.f64 81 (/.f64 (*.f64 (pow.f64 y 4) (pow.f64 x 4)) (pow.f64 z 3))))))
(fma.f64 -27 (/.f64 (*.f64 (pow.f64 y 3) (pow.f64 x 3)) (*.f64 z z)) (fma.f64 9 (/.f64 (*.f64 (*.f64 y y) (*.f64 x x)) z) (fma.f64 -243 (/.f64 (pow.f64 y 5) (/.f64 (pow.f64 z 4) (pow.f64 x 5))) (*.f64 81 (/.f64 (*.f64 (pow.f64 y 4) (pow.f64 x 4)) (pow.f64 z 3))))))
(fma.f64 -27 (*.f64 (/.f64 (pow.f64 y 3) z) (/.f64 (pow.f64 x 3) z)) (fma.f64 9 (*.f64 (/.f64 (*.f64 y y) z) (*.f64 x x)) (fma.f64 81 (*.f64 (/.f64 (pow.f64 y 4) (pow.f64 z 3)) (pow.f64 x 4)) (/.f64 (*.f64 (*.f64 -243 (pow.f64 y 5)) (pow.f64 x 5)) (pow.f64 z 4)))))
(fma.f64 9 (*.f64 (*.f64 x x) (/.f64 y (/.f64 z y))) (fma.f64 (/.f64 -27 z) (/.f64 (pow.f64 x 3) (/.f64 z (pow.f64 y 3))) (fma.f64 -243 (/.f64 (pow.f64 y 5) (/.f64 (pow.f64 z 4) (pow.f64 x 5))) (*.f64 (/.f64 (*.f64 81 (pow.f64 y 4)) (pow.f64 z 3)) (pow.f64 x 4)))))
(fma.f64 9 (*.f64 (*.f64 x x) (/.f64 y (/.f64 z y))) (fma.f64 -27 (/.f64 (pow.f64 (*.f64 y x) 3) (*.f64 z z)) (fma.f64 -243 (*.f64 (/.f64 (pow.f64 x 5) (pow.f64 z 4)) (pow.f64 y 5)) (*.f64 (/.f64 (*.f64 81 (pow.f64 y 4)) (pow.f64 z 3)) (pow.f64 x 4)))))
(fma.f64 -27 (/.f64 (pow.f64 (*.f64 y x) 3) (*.f64 z z)) (fma.f64 81 (/.f64 (pow.f64 (*.f64 y x) 4) (pow.f64 z 3)) (fma.f64 -243 (*.f64 (/.f64 (pow.f64 x 5) (pow.f64 z 4)) (pow.f64 y 5)) (*.f64 (/.f64 y (/.f64 z y)) (*.f64 9 (*.f64 x x))))))
(*.f64 3 (*.f64 y x))
(*.f64 y (*.f64 x 3))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(fma.f64 -1 z (*.f64 3 (*.f64 y x)))
(-.f64 (*.f64 y (*.f64 x 3)) z)
(fma.f64 x (*.f64 y 3) (neg.f64 z))
(fma.f64 y (*.f64 x 3) (neg.f64 z))
(+.f64 (*.f64 -1 z) (+.f64 (*.f64 3 (*.f64 y x)) (*.f64 1/3 (/.f64 (pow.f64 z 2) (*.f64 y x)))))
(fma.f64 -1 z (fma.f64 3 (*.f64 y x) (*.f64 1/3 (/.f64 (/.f64 (*.f64 z z) y) x))))
(-.f64 (fma.f64 3 (*.f64 y x) (*.f64 1/3 (*.f64 (/.f64 z y) (/.f64 z x)))) z)
(fma.f64 y (*.f64 x 3) (fma.f64 1/3 (/.f64 (/.f64 z (/.f64 y z)) x) (neg.f64 z)))
(fma.f64 y (*.f64 x 3) (fma.f64 1/3 (/.f64 z (/.f64 x (/.f64 z y))) (neg.f64 z)))
(+.f64 (*.f64 -1 z) (+.f64 (*.f64 3 (*.f64 y x)) (+.f64 (*.f64 1/3 (/.f64 (pow.f64 z 2) (*.f64 y x))) (*.f64 -1/9 (/.f64 (pow.f64 z 3) (*.f64 (pow.f64 y 2) (pow.f64 x 2)))))))
(fma.f64 -1 z (fma.f64 3 (*.f64 y x) (fma.f64 1/3 (/.f64 (/.f64 (*.f64 z z) y) x) (*.f64 -1/9 (/.f64 (pow.f64 z 3) (*.f64 (*.f64 y y) (*.f64 x x)))))))
(-.f64 (fma.f64 3 (*.f64 y x) (fma.f64 1/3 (*.f64 (/.f64 z y) (/.f64 z x)) (*.f64 -1/9 (/.f64 (pow.f64 z 3) (*.f64 (*.f64 y x) (*.f64 y x)))))) z)
(-.f64 (fma.f64 y (*.f64 x 3) (fma.f64 1/3 (/.f64 (/.f64 z (/.f64 y z)) x) (*.f64 -1/9 (/.f64 (pow.f64 z 3) (*.f64 (*.f64 y x) (*.f64 y x)))))) z)
(-.f64 (fma.f64 y (*.f64 x 3) (*.f64 (/.f64 (/.f64 z (/.f64 y z)) x) (+.f64 (/.f64 (*.f64 z -1/9) (*.f64 y x)) 1/3))) z)
(fma.f64 (/.f64 z (/.f64 x (/.f64 z y))) (+.f64 1/3 (/.f64 (*.f64 z -1/9) (*.f64 y x))) (fma.f64 y (*.f64 x 3) (neg.f64 z)))
(*.f64 3 (*.f64 y x))
(*.f64 y (*.f64 x 3))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(fma.f64 -1 z (*.f64 3 (*.f64 y x)))
(-.f64 (*.f64 y (*.f64 x 3)) z)
(fma.f64 x (*.f64 y 3) (neg.f64 z))
(fma.f64 y (*.f64 x 3) (neg.f64 z))
(+.f64 (*.f64 -1 z) (+.f64 (*.f64 3 (*.f64 y x)) (*.f64 1/3 (/.f64 (pow.f64 z 2) (*.f64 y x)))))
(fma.f64 -1 z (fma.f64 3 (*.f64 y x) (*.f64 1/3 (/.f64 (/.f64 (*.f64 z z) y) x))))
(-.f64 (fma.f64 3 (*.f64 y x) (*.f64 1/3 (*.f64 (/.f64 z y) (/.f64 z x)))) z)
(fma.f64 y (*.f64 x 3) (fma.f64 1/3 (/.f64 (/.f64 z (/.f64 y z)) x) (neg.f64 z)))
(fma.f64 y (*.f64 x 3) (fma.f64 1/3 (/.f64 z (/.f64 x (/.f64 z y))) (neg.f64 z)))
(+.f64 (*.f64 -1 z) (+.f64 (*.f64 3 (*.f64 y x)) (+.f64 (*.f64 1/3 (/.f64 (pow.f64 z 2) (*.f64 y x))) (*.f64 -1/9 (/.f64 (pow.f64 z 3) (*.f64 (pow.f64 y 2) (pow.f64 x 2)))))))
(fma.f64 -1 z (fma.f64 3 (*.f64 y x) (fma.f64 1/3 (/.f64 (/.f64 (*.f64 z z) y) x) (*.f64 -1/9 (/.f64 (pow.f64 z 3) (*.f64 (*.f64 y y) (*.f64 x x)))))))
(-.f64 (fma.f64 3 (*.f64 y x) (fma.f64 1/3 (*.f64 (/.f64 z y) (/.f64 z x)) (*.f64 -1/9 (/.f64 (pow.f64 z 3) (*.f64 (*.f64 y x) (*.f64 y x)))))) z)
(-.f64 (fma.f64 y (*.f64 x 3) (fma.f64 1/3 (/.f64 (/.f64 z (/.f64 y z)) x) (*.f64 -1/9 (/.f64 (pow.f64 z 3) (*.f64 (*.f64 y x) (*.f64 y x)))))) z)
(-.f64 (fma.f64 y (*.f64 x 3) (*.f64 (/.f64 (/.f64 z (/.f64 y z)) x) (+.f64 (/.f64 (*.f64 z -1/9) (*.f64 y x)) 1/3))) z)
(fma.f64 (/.f64 z (/.f64 x (/.f64 z y))) (+.f64 1/3 (/.f64 (*.f64 z -1/9) (*.f64 y x))) (fma.f64 y (*.f64 x 3) (neg.f64 z)))
(*.f64 3 (*.f64 y x))
(*.f64 y (*.f64 x 3))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(fma.f64 -1 z (*.f64 3 (*.f64 y x)))
(-.f64 (*.f64 y (*.f64 x 3)) z)
(fma.f64 x (*.f64 y 3) (neg.f64 z))
(fma.f64 y (*.f64 x 3) (neg.f64 z))
(+.f64 (*.f64 -1 z) (+.f64 (*.f64 3 (*.f64 y x)) (*.f64 1/3 (/.f64 (pow.f64 z 2) (*.f64 y x)))))
(fma.f64 -1 z (fma.f64 3 (*.f64 y x) (*.f64 1/3 (/.f64 (/.f64 (*.f64 z z) y) x))))
(-.f64 (fma.f64 3 (*.f64 y x) (*.f64 1/3 (*.f64 (/.f64 z y) (/.f64 z x)))) z)
(fma.f64 y (*.f64 x 3) (fma.f64 1/3 (/.f64 (/.f64 z (/.f64 y z)) x) (neg.f64 z)))
(fma.f64 y (*.f64 x 3) (fma.f64 1/3 (/.f64 z (/.f64 x (/.f64 z y))) (neg.f64 z)))
(+.f64 (*.f64 -1 z) (+.f64 (*.f64 3 (*.f64 y x)) (+.f64 (*.f64 1/3 (/.f64 (pow.f64 z 2) (*.f64 y x))) (*.f64 -1/9 (/.f64 (pow.f64 z 3) (*.f64 (pow.f64 y 2) (pow.f64 x 2)))))))
(fma.f64 -1 z (fma.f64 3 (*.f64 y x) (fma.f64 1/3 (/.f64 (/.f64 (*.f64 z z) y) x) (*.f64 -1/9 (/.f64 (pow.f64 z 3) (*.f64 (*.f64 y y) (*.f64 x x)))))))
(-.f64 (fma.f64 3 (*.f64 y x) (fma.f64 1/3 (*.f64 (/.f64 z y) (/.f64 z x)) (*.f64 -1/9 (/.f64 (pow.f64 z 3) (*.f64 (*.f64 y x) (*.f64 y x)))))) z)
(-.f64 (fma.f64 y (*.f64 x 3) (fma.f64 1/3 (/.f64 (/.f64 z (/.f64 y z)) x) (*.f64 -1/9 (/.f64 (pow.f64 z 3) (*.f64 (*.f64 y x) (*.f64 y x)))))) z)
(-.f64 (fma.f64 y (*.f64 x 3) (*.f64 (/.f64 (/.f64 z (/.f64 y z)) x) (+.f64 (/.f64 (*.f64 z -1/9) (*.f64 y x)) 1/3))) z)
(fma.f64 (/.f64 z (/.f64 x (/.f64 z y))) (+.f64 1/3 (/.f64 (*.f64 z -1/9) (*.f64 y x))) (fma.f64 y (*.f64 x 3) (neg.f64 z)))
(*.f64 9 (/.f64 (*.f64 (pow.f64 y 2) (pow.f64 x 2)) z))
(*.f64 9 (/.f64 (*.f64 (*.f64 y y) (*.f64 x x)) z))
(*.f64 9 (*.f64 (/.f64 (*.f64 y y) z) (*.f64 x x)))
(*.f64 9 (*.f64 (*.f64 x x) (/.f64 y (/.f64 z y))))
(*.f64 (/.f64 y (/.f64 z y)) (*.f64 9 (*.f64 x x)))
(+.f64 (*.f64 -27 (/.f64 (*.f64 (pow.f64 y 3) (pow.f64 x 3)) (pow.f64 z 2))) (*.f64 9 (/.f64 (*.f64 (pow.f64 y 2) (pow.f64 x 2)) z)))
(fma.f64 -27 (/.f64 (*.f64 (pow.f64 y 3) (pow.f64 x 3)) (*.f64 z z)) (*.f64 9 (/.f64 (*.f64 (*.f64 y y) (*.f64 x x)) z)))
(fma.f64 9 (*.f64 (/.f64 (*.f64 y y) z) (*.f64 x x)) (*.f64 -27 (*.f64 (/.f64 (pow.f64 y 3) z) (/.f64 (pow.f64 x 3) z))))
(fma.f64 9 (*.f64 (*.f64 x x) (/.f64 y (/.f64 z y))) (*.f64 (/.f64 (pow.f64 x 3) z) (*.f64 (/.f64 (pow.f64 y 3) z) -27)))
(*.f64 (*.f64 x x) (+.f64 (*.f64 9 (/.f64 y (/.f64 z y))) (/.f64 (*.f64 -27 (pow.f64 y 3)) (/.f64 z (/.f64 x z)))))
(fma.f64 -27 (/.f64 (pow.f64 (*.f64 y x) 3) (*.f64 z z)) (*.f64 (/.f64 y (/.f64 z y)) (*.f64 9 (*.f64 x x))))
(+.f64 (*.f64 -27 (/.f64 (*.f64 (pow.f64 y 3) (pow.f64 x 3)) (pow.f64 z 2))) (+.f64 (*.f64 9 (/.f64 (*.f64 (pow.f64 y 2) (pow.f64 x 2)) z)) (*.f64 81 (/.f64 (*.f64 (pow.f64 y 4) (pow.f64 x 4)) (pow.f64 z 3)))))
(fma.f64 -27 (/.f64 (*.f64 (pow.f64 y 3) (pow.f64 x 3)) (*.f64 z z)) (fma.f64 9 (/.f64 (*.f64 (*.f64 y y) (*.f64 x x)) z) (*.f64 81 (/.f64 (*.f64 (pow.f64 y 4) (pow.f64 x 4)) (pow.f64 z 3)))))
(fma.f64 -27 (*.f64 (/.f64 (pow.f64 y 3) z) (/.f64 (pow.f64 x 3) z)) (fma.f64 9 (*.f64 (/.f64 (*.f64 y y) z) (*.f64 x x)) (*.f64 81 (*.f64 (/.f64 (pow.f64 y 4) (pow.f64 z 3)) (pow.f64 x 4)))))
(fma.f64 9 (*.f64 (*.f64 x x) (/.f64 y (/.f64 z y))) (fma.f64 -27 (*.f64 (pow.f64 x 3) (/.f64 (pow.f64 y 3) (*.f64 z z))) (*.f64 (/.f64 (*.f64 81 (pow.f64 y 4)) (pow.f64 z 3)) (pow.f64 x 4))))
(fma.f64 81 (*.f64 (pow.f64 x 4) (/.f64 (pow.f64 y 4) (pow.f64 z 3))) (*.f64 (*.f64 x x) (+.f64 (*.f64 9 (/.f64 y (/.f64 z y))) (/.f64 (*.f64 -27 (pow.f64 y 3)) (/.f64 z (/.f64 x z))))))
(fma.f64 9 (*.f64 (*.f64 x x) (/.f64 y (/.f64 z y))) (fma.f64 -27 (/.f64 (pow.f64 (*.f64 y x) 3) (*.f64 z z)) (*.f64 (/.f64 (*.f64 81 (pow.f64 y 4)) (pow.f64 z 3)) (pow.f64 x 4))))
(fma.f64 -27 (/.f64 (pow.f64 (*.f64 y x) 3) (*.f64 z z)) (fma.f64 81 (/.f64 (pow.f64 (*.f64 y x) 4) (pow.f64 z 3)) (*.f64 (/.f64 y (/.f64 z y)) (*.f64 9 (*.f64 x x)))))
(+.f64 (*.f64 -27 (/.f64 (*.f64 (pow.f64 y 3) (pow.f64 x 3)) (pow.f64 z 2))) (+.f64 (*.f64 9 (/.f64 (*.f64 (pow.f64 y 2) (pow.f64 x 2)) z)) (+.f64 (*.f64 -243 (/.f64 (*.f64 (pow.f64 y 5) (pow.f64 x 5)) (pow.f64 z 4))) (*.f64 81 (/.f64 (*.f64 (pow.f64 y 4) (pow.f64 x 4)) (pow.f64 z 3))))))
(fma.f64 -27 (/.f64 (*.f64 (pow.f64 y 3) (pow.f64 x 3)) (*.f64 z z)) (fma.f64 9 (/.f64 (*.f64 (*.f64 y y) (*.f64 x x)) z) (fma.f64 -243 (/.f64 (pow.f64 y 5) (/.f64 (pow.f64 z 4) (pow.f64 x 5))) (*.f64 81 (/.f64 (*.f64 (pow.f64 y 4) (pow.f64 x 4)) (pow.f64 z 3))))))
(fma.f64 -27 (*.f64 (/.f64 (pow.f64 y 3) z) (/.f64 (pow.f64 x 3) z)) (fma.f64 9 (*.f64 (/.f64 (*.f64 y y) z) (*.f64 x x)) (fma.f64 81 (*.f64 (/.f64 (pow.f64 y 4) (pow.f64 z 3)) (pow.f64 x 4)) (/.f64 (*.f64 (*.f64 -243 (pow.f64 y 5)) (pow.f64 x 5)) (pow.f64 z 4)))))
(fma.f64 9 (*.f64 (*.f64 x x) (/.f64 y (/.f64 z y))) (fma.f64 (/.f64 -27 z) (/.f64 (pow.f64 x 3) (/.f64 z (pow.f64 y 3))) (fma.f64 -243 (/.f64 (pow.f64 y 5) (/.f64 (pow.f64 z 4) (pow.f64 x 5))) (*.f64 (/.f64 (*.f64 81 (pow.f64 y 4)) (pow.f64 z 3)) (pow.f64 x 4)))))
(fma.f64 9 (*.f64 (*.f64 x x) (/.f64 y (/.f64 z y))) (fma.f64 -27 (/.f64 (pow.f64 (*.f64 y x) 3) (*.f64 z z)) (fma.f64 -243 (*.f64 (/.f64 (pow.f64 x 5) (pow.f64 z 4)) (pow.f64 y 5)) (*.f64 (/.f64 (*.f64 81 (pow.f64 y 4)) (pow.f64 z 3)) (pow.f64 x 4)))))
(fma.f64 -27 (/.f64 (pow.f64 (*.f64 y x) 3) (*.f64 z z)) (fma.f64 81 (/.f64 (pow.f64 (*.f64 y x) 4) (pow.f64 z 3)) (fma.f64 -243 (*.f64 (/.f64 (pow.f64 x 5) (pow.f64 z 4)) (pow.f64 y 5)) (*.f64 (/.f64 y (/.f64 z y)) (*.f64 9 (*.f64 x x))))))
(*.f64 9 (/.f64 (*.f64 (pow.f64 y 2) (pow.f64 x 2)) z))
(*.f64 9 (/.f64 (*.f64 (*.f64 y y) (*.f64 x x)) z))
(*.f64 9 (*.f64 (/.f64 (*.f64 y y) z) (*.f64 x x)))
(*.f64 9 (*.f64 (*.f64 x x) (/.f64 y (/.f64 z y))))
(*.f64 (/.f64 y (/.f64 z y)) (*.f64 9 (*.f64 x x)))
(+.f64 (*.f64 -27 (/.f64 (*.f64 (pow.f64 y 3) (pow.f64 x 3)) (pow.f64 z 2))) (*.f64 9 (/.f64 (*.f64 (pow.f64 y 2) (pow.f64 x 2)) z)))
(fma.f64 -27 (/.f64 (*.f64 (pow.f64 y 3) (pow.f64 x 3)) (*.f64 z z)) (*.f64 9 (/.f64 (*.f64 (*.f64 y y) (*.f64 x x)) z)))
(fma.f64 9 (*.f64 (/.f64 (*.f64 y y) z) (*.f64 x x)) (*.f64 -27 (*.f64 (/.f64 (pow.f64 y 3) z) (/.f64 (pow.f64 x 3) z))))
(fma.f64 9 (*.f64 (*.f64 x x) (/.f64 y (/.f64 z y))) (*.f64 (/.f64 (pow.f64 x 3) z) (*.f64 (/.f64 (pow.f64 y 3) z) -27)))
(*.f64 (*.f64 x x) (+.f64 (*.f64 9 (/.f64 y (/.f64 z y))) (/.f64 (*.f64 -27 (pow.f64 y 3)) (/.f64 z (/.f64 x z)))))
(fma.f64 -27 (/.f64 (pow.f64 (*.f64 y x) 3) (*.f64 z z)) (*.f64 (/.f64 y (/.f64 z y)) (*.f64 9 (*.f64 x x))))
(+.f64 (*.f64 -27 (/.f64 (*.f64 (pow.f64 y 3) (pow.f64 x 3)) (pow.f64 z 2))) (+.f64 (*.f64 9 (/.f64 (*.f64 (pow.f64 y 2) (pow.f64 x 2)) z)) (*.f64 81 (/.f64 (*.f64 (pow.f64 y 4) (pow.f64 x 4)) (pow.f64 z 3)))))
(fma.f64 -27 (/.f64 (*.f64 (pow.f64 y 3) (pow.f64 x 3)) (*.f64 z z)) (fma.f64 9 (/.f64 (*.f64 (*.f64 y y) (*.f64 x x)) z) (*.f64 81 (/.f64 (*.f64 (pow.f64 y 4) (pow.f64 x 4)) (pow.f64 z 3)))))
(fma.f64 -27 (*.f64 (/.f64 (pow.f64 y 3) z) (/.f64 (pow.f64 x 3) z)) (fma.f64 9 (*.f64 (/.f64 (*.f64 y y) z) (*.f64 x x)) (*.f64 81 (*.f64 (/.f64 (pow.f64 y 4) (pow.f64 z 3)) (pow.f64 x 4)))))
(fma.f64 9 (*.f64 (*.f64 x x) (/.f64 y (/.f64 z y))) (fma.f64 -27 (*.f64 (pow.f64 x 3) (/.f64 (pow.f64 y 3) (*.f64 z z))) (*.f64 (/.f64 (*.f64 81 (pow.f64 y 4)) (pow.f64 z 3)) (pow.f64 x 4))))
(fma.f64 81 (*.f64 (pow.f64 x 4) (/.f64 (pow.f64 y 4) (pow.f64 z 3))) (*.f64 (*.f64 x x) (+.f64 (*.f64 9 (/.f64 y (/.f64 z y))) (/.f64 (*.f64 -27 (pow.f64 y 3)) (/.f64 z (/.f64 x z))))))
(fma.f64 9 (*.f64 (*.f64 x x) (/.f64 y (/.f64 z y))) (fma.f64 -27 (/.f64 (pow.f64 (*.f64 y x) 3) (*.f64 z z)) (*.f64 (/.f64 (*.f64 81 (pow.f64 y 4)) (pow.f64 z 3)) (pow.f64 x 4))))
(fma.f64 -27 (/.f64 (pow.f64 (*.f64 y x) 3) (*.f64 z z)) (fma.f64 81 (/.f64 (pow.f64 (*.f64 y x) 4) (pow.f64 z 3)) (*.f64 (/.f64 y (/.f64 z y)) (*.f64 9 (*.f64 x x)))))
(+.f64 (*.f64 -27 (/.f64 (*.f64 (pow.f64 y 3) (pow.f64 x 3)) (pow.f64 z 2))) (+.f64 (*.f64 9 (/.f64 (*.f64 (pow.f64 y 2) (pow.f64 x 2)) z)) (+.f64 (*.f64 -243 (/.f64 (*.f64 (pow.f64 y 5) (pow.f64 x 5)) (pow.f64 z 4))) (*.f64 81 (/.f64 (*.f64 (pow.f64 y 4) (pow.f64 x 4)) (pow.f64 z 3))))))
(fma.f64 -27 (/.f64 (*.f64 (pow.f64 y 3) (pow.f64 x 3)) (*.f64 z z)) (fma.f64 9 (/.f64 (*.f64 (*.f64 y y) (*.f64 x x)) z) (fma.f64 -243 (/.f64 (pow.f64 y 5) (/.f64 (pow.f64 z 4) (pow.f64 x 5))) (*.f64 81 (/.f64 (*.f64 (pow.f64 y 4) (pow.f64 x 4)) (pow.f64 z 3))))))
(fma.f64 -27 (*.f64 (/.f64 (pow.f64 y 3) z) (/.f64 (pow.f64 x 3) z)) (fma.f64 9 (*.f64 (/.f64 (*.f64 y y) z) (*.f64 x x)) (fma.f64 81 (*.f64 (/.f64 (pow.f64 y 4) (pow.f64 z 3)) (pow.f64 x 4)) (/.f64 (*.f64 (*.f64 -243 (pow.f64 y 5)) (pow.f64 x 5)) (pow.f64 z 4)))))
(fma.f64 9 (*.f64 (*.f64 x x) (/.f64 y (/.f64 z y))) (fma.f64 (/.f64 -27 z) (/.f64 (pow.f64 x 3) (/.f64 z (pow.f64 y 3))) (fma.f64 -243 (/.f64 (pow.f64 y 5) (/.f64 (pow.f64 z 4) (pow.f64 x 5))) (*.f64 (/.f64 (*.f64 81 (pow.f64 y 4)) (pow.f64 z 3)) (pow.f64 x 4)))))
(fma.f64 9 (*.f64 (*.f64 x x) (/.f64 y (/.f64 z y))) (fma.f64 -27 (/.f64 (pow.f64 (*.f64 y x) 3) (*.f64 z z)) (fma.f64 -243 (*.f64 (/.f64 (pow.f64 x 5) (pow.f64 z 4)) (pow.f64 y 5)) (*.f64 (/.f64 (*.f64 81 (pow.f64 y 4)) (pow.f64 z 3)) (pow.f64 x 4)))))
(fma.f64 -27 (/.f64 (pow.f64 (*.f64 y x) 3) (*.f64 z z)) (fma.f64 81 (/.f64 (pow.f64 (*.f64 y x) 4) (pow.f64 z 3)) (fma.f64 -243 (*.f64 (/.f64 (pow.f64 x 5) (pow.f64 z 4)) (pow.f64 y 5)) (*.f64 (/.f64 y (/.f64 z y)) (*.f64 9 (*.f64 x x))))))
(*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2)))
(*.f64 9 (*.f64 (*.f64 y y) (*.f64 x x)))
(*.f64 9 (*.f64 (*.f64 y x) (*.f64 y x)))
(*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2)))
(*.f64 9 (*.f64 (*.f64 y y) (*.f64 x x)))
(*.f64 9 (*.f64 (*.f64 y x) (*.f64 y x)))
(*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2)))
(*.f64 9 (*.f64 (*.f64 y y) (*.f64 x x)))
(*.f64 9 (*.f64 (*.f64 y x) (*.f64 y x)))
(*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2)))
(*.f64 9 (*.f64 (*.f64 y y) (*.f64 x x)))
(*.f64 9 (*.f64 (*.f64 y x) (*.f64 y x)))
(*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2)))
(*.f64 9 (*.f64 (*.f64 y y) (*.f64 x x)))
(*.f64 9 (*.f64 (*.f64 y x) (*.f64 y x)))
(*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2)))
(*.f64 9 (*.f64 (*.f64 y y) (*.f64 x x)))
(*.f64 9 (*.f64 (*.f64 y x) (*.f64 y x)))
(*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2)))
(*.f64 9 (*.f64 (*.f64 y y) (*.f64 x x)))
(*.f64 9 (*.f64 (*.f64 y x) (*.f64 y x)))
(*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2)))
(*.f64 9 (*.f64 (*.f64 y y) (*.f64 x x)))
(*.f64 9 (*.f64 (*.f64 y x) (*.f64 y x)))
(*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2)))
(*.f64 9 (*.f64 (*.f64 y y) (*.f64 x x)))
(*.f64 9 (*.f64 (*.f64 y x) (*.f64 y x)))
(*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2)))
(*.f64 9 (*.f64 (*.f64 y y) (*.f64 x x)))
(*.f64 9 (*.f64 (*.f64 y x) (*.f64 y x)))
(*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2)))
(*.f64 9 (*.f64 (*.f64 y y) (*.f64 x x)))
(*.f64 9 (*.f64 (*.f64 y x) (*.f64 y x)))
(*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2)))
(*.f64 9 (*.f64 (*.f64 y y) (*.f64 x x)))
(*.f64 9 (*.f64 (*.f64 y x) (*.f64 y x)))
(*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2)))
(*.f64 9 (*.f64 (*.f64 y y) (*.f64 x x)))
(*.f64 9 (*.f64 (*.f64 y x) (*.f64 y x)))
(*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2)))
(*.f64 9 (*.f64 (*.f64 y y) (*.f64 x x)))
(*.f64 9 (*.f64 (*.f64 y x) (*.f64 y x)))
(*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2)))
(*.f64 9 (*.f64 (*.f64 y y) (*.f64 x x)))
(*.f64 9 (*.f64 (*.f64 y x) (*.f64 y x)))
(*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2)))
(*.f64 9 (*.f64 (*.f64 y y) (*.f64 x x)))
(*.f64 9 (*.f64 (*.f64 y x) (*.f64 y x)))
(*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2)))
(*.f64 9 (*.f64 (*.f64 y y) (*.f64 x x)))
(*.f64 9 (*.f64 (*.f64 y x) (*.f64 y x)))
(*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2)))
(*.f64 9 (*.f64 (*.f64 y y) (*.f64 x x)))
(*.f64 9 (*.f64 (*.f64 y x) (*.f64 y x)))
(*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2)))
(*.f64 9 (*.f64 (*.f64 y y) (*.f64 x x)))
(*.f64 9 (*.f64 (*.f64 y x) (*.f64 y x)))
(*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2)))
(*.f64 9 (*.f64 (*.f64 y y) (*.f64 x x)))
(*.f64 9 (*.f64 (*.f64 y x) (*.f64 y x)))
(*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2)))
(*.f64 9 (*.f64 (*.f64 y y) (*.f64 x x)))
(*.f64 9 (*.f64 (*.f64 y x) (*.f64 y x)))
(*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2)))
(*.f64 9 (*.f64 (*.f64 y y) (*.f64 x x)))
(*.f64 9 (*.f64 (*.f64 y x) (*.f64 y x)))
(*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2)))
(*.f64 9 (*.f64 (*.f64 y y) (*.f64 x x)))
(*.f64 9 (*.f64 (*.f64 y x) (*.f64 y x)))
(*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2)))
(*.f64 9 (*.f64 (*.f64 y y) (*.f64 x x)))
(*.f64 9 (*.f64 (*.f64 y x) (*.f64 y x)))
(*.f64 9 (*.f64 y x))
(*.f64 (*.f64 9 y) x)
(*.f64 x (*.f64 9 y))
(*.f64 9 (*.f64 y x))
(*.f64 (*.f64 9 y) x)
(*.f64 x (*.f64 9 y))
(*.f64 9 (*.f64 y x))
(*.f64 (*.f64 9 y) x)
(*.f64 x (*.f64 9 y))
(*.f64 9 (*.f64 y x))
(*.f64 (*.f64 9 y) x)
(*.f64 x (*.f64 9 y))
(*.f64 9 (*.f64 y x))
(*.f64 (*.f64 9 y) x)
(*.f64 x (*.f64 9 y))
(*.f64 9 (*.f64 y x))
(*.f64 (*.f64 9 y) x)
(*.f64 x (*.f64 9 y))
(*.f64 9 (*.f64 y x))
(*.f64 (*.f64 9 y) x)
(*.f64 x (*.f64 9 y))
(*.f64 9 (*.f64 y x))
(*.f64 (*.f64 9 y) x)
(*.f64 x (*.f64 9 y))
(*.f64 9 (*.f64 y x))
(*.f64 (*.f64 9 y) x)
(*.f64 x (*.f64 9 y))
(*.f64 9 (*.f64 y x))
(*.f64 (*.f64 9 y) x)
(*.f64 x (*.f64 9 y))
(*.f64 9 (*.f64 y x))
(*.f64 (*.f64 9 y) x)
(*.f64 x (*.f64 9 y))
(*.f64 9 (*.f64 y x))
(*.f64 (*.f64 9 y) x)
(*.f64 x (*.f64 9 y))
(*.f64 9 (*.f64 y x))
(*.f64 (*.f64 9 y) x)
(*.f64 x (*.f64 9 y))
(*.f64 9 (*.f64 y x))
(*.f64 (*.f64 9 y) x)
(*.f64 x (*.f64 9 y))
(*.f64 9 (*.f64 y x))
(*.f64 (*.f64 9 y) x)
(*.f64 x (*.f64 9 y))
(*.f64 9 (*.f64 y x))
(*.f64 (*.f64 9 y) x)
(*.f64 x (*.f64 9 y))
(*.f64 9 (*.f64 y x))
(*.f64 (*.f64 9 y) x)
(*.f64 x (*.f64 9 y))
(*.f64 9 (*.f64 y x))
(*.f64 (*.f64 9 y) x)
(*.f64 x (*.f64 9 y))
(*.f64 9 (*.f64 y x))
(*.f64 (*.f64 9 y) x)
(*.f64 x (*.f64 9 y))
(*.f64 9 (*.f64 y x))
(*.f64 (*.f64 9 y) x)
(*.f64 x (*.f64 9 y))
(*.f64 9 (*.f64 y x))
(*.f64 (*.f64 9 y) x)
(*.f64 x (*.f64 9 y))
(*.f64 9 (*.f64 y x))
(*.f64 (*.f64 9 y) x)
(*.f64 x (*.f64 9 y))
(*.f64 9 (*.f64 y x))
(*.f64 (*.f64 9 y) x)
(*.f64 x (*.f64 9 y))
(*.f64 9 (*.f64 y x))
(*.f64 (*.f64 9 y) x)
(*.f64 x (*.f64 9 y))

localize67.0ms (1.1%)

Local error

Found 8 expressions with local error:

NewErrorProgram
0.3b
(*.f64 3 (*.f64 y x))
0.2b
(*.f64 x (*.f64 y x))
0.1b
(*.f64 (*.f64 y (*.f64 x (*.f64 y x))) 9)
0.0b
(-.f64 (*.f64 3 (*.f64 y x)) (neg.f64 z))
0.3b
(*.f64 3 (*.f64 y x))
1.8b
(-.f64 (*.f64 (*.f64 y (*.f64 x (*.f64 y x))) 9) (*.f64 (neg.f64 z) (neg.f64 z)))
3.3b
(*.f64 y (*.f64 x (*.f64 y x)))
26.4b
(/.f64 (-.f64 (*.f64 (*.f64 y (*.f64 x (*.f64 y x))) 9) (*.f64 (neg.f64 z) (neg.f64 z))) (-.f64 (*.f64 3 (*.f64 y x)) (neg.f64 z)))
Compiler

Compiled 91 to 27 computations (70.3% saved)

series7.0ms (0.1%)

Counts
3 → 96
Calls

24 calls:

TimeVariablePointExpression
0.0ms
y
@0
(/.f64 (-.f64 (*.f64 (*.f64 y (*.f64 x (*.f64 y x))) 9) (*.f64 (neg.f64 z) (neg.f64 z))) (-.f64 (*.f64 3 (*.f64 y x)) (neg.f64 z)))
0.0ms
y
@inf
(/.f64 (-.f64 (*.f64 (*.f64 y (*.f64 x (*.f64 y x))) 9) (*.f64 (neg.f64 z) (neg.f64 z))) (-.f64 (*.f64 3 (*.f64 y x)) (neg.f64 z)))
0.0ms
y
@-inf
(/.f64 (-.f64 (*.f64 (*.f64 y (*.f64 x (*.f64 y x))) 9) (*.f64 (neg.f64 z) (neg.f64 z))) (-.f64 (*.f64 3 (*.f64 y x)) (neg.f64 z)))
0.0ms
x
@inf
(/.f64 (-.f64 (*.f64 (*.f64 y (*.f64 x (*.f64 y x))) 9) (*.f64 (neg.f64 z) (neg.f64 z))) (-.f64 (*.f64 3 (*.f64 y x)) (neg.f64 z)))
0.0ms
x
@-inf
(/.f64 (-.f64 (*.f64 (*.f64 y (*.f64 x (*.f64 y x))) 9) (*.f64 (neg.f64 z) (neg.f64 z))) (-.f64 (*.f64 3 (*.f64 y x)) (neg.f64 z)))

rewrite187.0ms (3.1%)

Algorithm
batch-egg-rewrite
Rules
844×log-prod_binary64
569×fma-def_binary64
365×fma-neg_binary64
257×expm1-udef_binary64
257×log1p-udef_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01662
137026
2545426
Stop Event
node limit
Counts
3 → 419
Calls
Call 1
Inputs
(/.f64 (-.f64 (*.f64 (*.f64 y (*.f64 x (*.f64 y x))) 9) (*.f64 (neg.f64 z) (neg.f64 z))) (-.f64 (*.f64 3 (*.f64 y x)) (neg.f64 z)))
(*.f64 y (*.f64 x (*.f64 y x)))
(-.f64 (*.f64 (*.f64 y (*.f64 x (*.f64 y x))) 9) (*.f64 (neg.f64 z) (neg.f64 z)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 z (*.f64 y (*.f64 x 3)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y (*.f64 x 3)) z)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 y (*.f64 x 3) z) (+.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 y (*.f64 x 3) z) (fma.f64 (neg.f64 (cbrt.f64 z)) (cbrt.f64 (*.f64 z z)) z))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 9 (/.f64 (fma.f64 y (*.f64 x 3) z) (pow.f64 (*.f64 y x) 2))) (/.f64 (*.f64 z z) (fma.f64 y (*.f64 x 3) z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (fma.f64 y (*.f64 x 3) z))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 y (*.f64 x 3) 0) z)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (fma.f64 y (*.f64 x 3) z))) (cbrt.f64 (exp.f64 (fma.f64 y (*.f64 x 3) z))))) (log.f64 (cbrt.f64 (exp.f64 (fma.f64 y (*.f64 x 3) z)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (fma.f64 y (*.f64 x 3) z)))) (log.f64 (sqrt.f64 (exp.f64 (fma.f64 y (*.f64 x 3) z)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y (*.f64 x 3)) z)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 9 (/.f64 (fma.f64 y (*.f64 x 3) z) (pow.f64 (*.f64 y x) 2))) (/.f64 (*.f64 z z) (fma.f64 y (*.f64 x 3) z)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 y (*.f64 x 3) z))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 27 (pow.f64 (*.f64 y x) 3)) (fma.f64 (pow.f64 (*.f64 y x) 2) 9 (*.f64 z (fma.f64 y (*.f64 x 3) z)))) (/.f64 (pow.f64 z 3) (fma.f64 (pow.f64 (*.f64 y x) 2) 9 (*.f64 z (fma.f64 y (*.f64 x 3) z)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (fma.f64 y (*.f64 x 3) 0) z)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2) (/.f64 1 (fma.f64 y (*.f64 x 3) z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 y (*.f64 x 3) z) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 y (*.f64 x 3) z) (*.f64 (fma.f64 y (*.f64 x 3) z) (/.f64 1 (fma.f64 y (*.f64 x 3) z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 y (*.f64 x 3) z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 y (*.f64 x 3) z)) (cbrt.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2)) (cbrt.f64 (fma.f64 y (*.f64 x 3) z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2)) 2) (*.f64 (cbrt.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2)) (/.f64 1 (fma.f64 y (*.f64 x 3) z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 y (*.f64 x 3) z)) (sqrt.f64 (fma.f64 y (*.f64 x 3) z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2)) (/.f64 1 (neg.f64 (fma.f64 y (*.f64 x 3) z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 27 (pow.f64 (*.f64 y x) 3) (pow.f64 z 3)) (/.f64 1 (fma.f64 (pow.f64 (*.f64 y x) 2) 9 (*.f64 z (fma.f64 y (*.f64 x 3) z)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (fma.f64 y (*.f64 x 3) z)) (pow.f64 (fma.f64 y (*.f64 x 3) z) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2)) 2)) (sqrt.f64 (cbrt.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (fma.f64 y (*.f64 x 3) z) (cbrt.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2))) (/.f64 (fma.f64 y (*.f64 x 3) z) (cbrt.f64 (fma.f64 y (*.f64 x 3) z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cbrt.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2))) (/.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2) (cbrt.f64 (fma.f64 y (*.f64 x 3) z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 (fma.f64 y (*.f64 x 3) z))) (/.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2) (sqrt.f64 (fma.f64 y (*.f64 x 3) z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2)) 2) 1) (/.f64 (cbrt.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2)) (fma.f64 y (*.f64 x 3) z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2)) 2) (sqrt.f64 (fma.f64 y (*.f64 x 3) z))) (/.f64 (cbrt.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2)) (sqrt.f64 (fma.f64 y (*.f64 x 3) z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (fma.f64 y (*.f64 x 3) z) 1) (/.f64 (fma.f64 y (*.f64 x 3) z) (fma.f64 y (*.f64 x 3) z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (sqrt.f64 3) (sqrt.f64 (*.f64 y x)) (sqrt.f64 z)) (-.f64 (sqrt.f64 (*.f64 y (*.f64 x 3))) (sqrt.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2) (fma.f64 27 (pow.f64 (*.f64 y x) 3) (pow.f64 z 3))) (fma.f64 (pow.f64 (*.f64 y x) 2) 9 (*.f64 z (fma.f64 y (*.f64 x 3) z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2) (pow.f64 (fma.f64 y (*.f64 x 3) z) 2)) (fma.f64 y (*.f64 x 3) z))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 y (*.f64 x 3) z) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 y (*.f64 x 3) z)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 y (*.f64 x 3) z)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 1 (fma.f64 y (*.f64 x 3) z)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2) (neg.f64 (fma.f64 y (*.f64 x 3) z))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (fma.f64 y (*.f64 x 3) z))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 y (*.f64 x 3) z)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 y (*.f64 x 3) z))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (*.f64 y (*.f64 x 3)))) (exp.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (pow.f64 (exp.f64 3) (*.f64 y x)) (+.f64 1 (expm1.f64 z))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (*.f64 y (*.f64 x 3)))) (+.f64 1 (expm1.f64 z))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 z) (pow.f64 (exp.f64 3) (*.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 z)) (pow.f64 (exp.f64 3) (*.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 z) (+.f64 1 (expm1.f64 (*.f64 y (*.f64 x 3))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 z)) (+.f64 1 (expm1.f64 (*.f64 y (*.f64 x 3))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 y (*.f64 x 3)))) (exp.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 3) (*.f64 y x)) (+.f64 1 (expm1.f64 z))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 y (*.f64 x 3)))) (+.f64 1 (expm1.f64 z))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (/.f64 9 (/.f64 (fma.f64 y (*.f64 x 3) z) (pow.f64 (*.f64 y x) 2)))) (exp.f64 (/.f64 (*.f64 z z) (fma.f64 y (*.f64 x 3) z)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2) 3) (pow.f64 (fma.f64 y (*.f64 x 3) z) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f64 z (*.f64 y (*.f64 x 3)))))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f64 (*.f64 y (*.f64 x 3)) z)))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f64 (fma.f64 y (*.f64 x 3) z) (hypot.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f64 (hypot.f64 z z) (fma.f64 y (*.f64 x 3) z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y (*.f64 x 3) z)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x (*.f64 y 3) z)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y x) 3 z)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 9 (/.f64 (pow.f64 (*.f64 y x) 2) (fma.f64 y (*.f64 x 3) z)) (/.f64 (*.f64 z z) (fma.f64 y (*.f64 x 3) z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9) (/.f64 1 (fma.f64 y (*.f64 x 3) z)) (/.f64 (*.f64 z z) (fma.f64 y (*.f64 x 3) z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 z 1 (*.f64 y (*.f64 x 3)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 z -1 (*.f64 y (*.f64 x 3)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2) (/.f64 1 (fma.f64 y (*.f64 x 3) z)) (+.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2) (/.f64 1 (fma.f64 y (*.f64 x 3) z)) (fma.f64 (neg.f64 (cbrt.f64 z)) (cbrt.f64 (*.f64 z z)) z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 3 (*.f64 y x) z)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y (*.f64 x 3)) 1 z)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 y (*.f64 x 3) z) 1 (+.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 y (*.f64 x 3) z) 1 (fma.f64 (neg.f64 (cbrt.f64 z)) (cbrt.f64 (*.f64 z z)) z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 y (*.f64 x 3) z) (*.f64 (fma.f64 y (*.f64 x 3) z) (/.f64 1 (fma.f64 y (*.f64 x 3) z))) (+.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 y (*.f64 x 3) z) (*.f64 (fma.f64 y (*.f64 x 3) z) (/.f64 1 (fma.f64 y (*.f64 x 3) z))) (fma.f64 (neg.f64 (cbrt.f64 z)) (cbrt.f64 (*.f64 z z)) z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 z (*.f64 y (*.f64 x 3)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 y (*.f64 x 3)) z)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 y (*.f64 x 3) z) (+.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 y (*.f64 x 3) z) (fma.f64 (neg.f64 (cbrt.f64 z)) (cbrt.f64 (*.f64 z z)) z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (/.f64 9 (/.f64 (fma.f64 y (*.f64 x 3) z) (pow.f64 (*.f64 y x) 2))) (/.f64 (*.f64 z z) (fma.f64 y (*.f64 x 3) z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 y (*.f64 x 3) z)) (cbrt.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2)) (+.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 y (*.f64 x 3) z)) (cbrt.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2)) (fma.f64 (neg.f64 (cbrt.f64 z)) (cbrt.f64 (*.f64 z z)) z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2)) (cbrt.f64 (fma.f64 y (*.f64 x 3) z)) (+.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2)) (cbrt.f64 (fma.f64 y (*.f64 x 3) z)) (fma.f64 (neg.f64 (cbrt.f64 z)) (cbrt.f64 (*.f64 z z)) z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2)) 2) (*.f64 (cbrt.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2)) (/.f64 1 (fma.f64 y (*.f64 x 3) z))) (+.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2)) 2) (*.f64 (cbrt.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2)) (/.f64 1 (fma.f64 y (*.f64 x 3) z))) (fma.f64 (neg.f64 (cbrt.f64 z)) (cbrt.f64 (*.f64 z z)) z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 z) (cbrt.f64 (*.f64 z z)) (*.f64 y (*.f64 x 3)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 y x)) 2) (*.f64 (cbrt.f64 (*.f64 y x)) 3) z)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 y (*.f64 x 3))) (cbrt.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9)) z)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 z z)) (cbrt.f64 z) (*.f64 y (*.f64 x 3)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 z z)) (neg.f64 (cbrt.f64 z)) (*.f64 y (*.f64 x 3)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9)) (cbrt.f64 (*.f64 y (*.f64 x 3))) z)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 y (*.f64 x 3) z)) (sqrt.f64 (fma.f64 y (*.f64 x 3) z)) (+.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 y (*.f64 x 3) z)) (sqrt.f64 (fma.f64 y (*.f64 x 3) z)) (fma.f64 (neg.f64 (cbrt.f64 z)) (cbrt.f64 (*.f64 z z)) z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 y (*.f64 x 3))) (sqrt.f64 (*.f64 y (*.f64 x 3))) z)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 y) (sqrt.f64 (*.f64 x (*.f64 (*.f64 y x) 9))) z)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 z) (sqrt.f64 z) (*.f64 y (*.f64 x 3)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 z) (neg.f64 (sqrt.f64 z)) (*.f64 y (*.f64 x 3)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 y x)) (*.f64 (sqrt.f64 (*.f64 y x)) 3) z)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2)) (/.f64 1 (neg.f64 (fma.f64 y (*.f64 x 3) z))) (+.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2)) (/.f64 1 (neg.f64 (fma.f64 y (*.f64 x 3) z))) (fma.f64 (neg.f64 (cbrt.f64 z)) (cbrt.f64 (*.f64 z z)) z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 27 (pow.f64 (*.f64 y x) 3) (pow.f64 z 3)) (/.f64 1 (fma.f64 (pow.f64 (*.f64 y x) 2) 9 (*.f64 z (fma.f64 y (*.f64 x 3) z)))) (+.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 27 (pow.f64 (*.f64 y x) 3) (pow.f64 z 3)) (/.f64 1 (fma.f64 (pow.f64 (*.f64 y x) 2) 9 (*.f64 z (fma.f64 y (*.f64 x 3) z)))) (fma.f64 (neg.f64 (cbrt.f64 z)) (cbrt.f64 (*.f64 z z)) z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (fma.f64 y (*.f64 x 3) z)) (pow.f64 (fma.f64 y (*.f64 x 3) z) 2) (+.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (fma.f64 y (*.f64 x 3) z)) (pow.f64 (fma.f64 y (*.f64 x 3) z) 2) (fma.f64 (neg.f64 (cbrt.f64 z)) (cbrt.f64 (*.f64 z z)) z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 z (*.f64 y (*.f64 x 3)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y 3) x z)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (/.f64 9 (/.f64 (fma.f64 y (*.f64 x 3) z) (pow.f64 (*.f64 y x) 2)))) (cbrt.f64 (/.f64 9 (/.f64 (fma.f64 y (*.f64 x 3) z) (pow.f64 (*.f64 y x) 2))))) (cbrt.f64 (/.f64 9 (/.f64 (fma.f64 y (*.f64 x 3) z) (pow.f64 (*.f64 y x) 2)))) (/.f64 (*.f64 z z) (fma.f64 y (*.f64 x 3) z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9)) 2)) (sqrt.f64 (cbrt.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9))) z)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (/.f64 9 (/.f64 (fma.f64 y (*.f64 x 3) z) (pow.f64 (*.f64 y x) 2)))) (sqrt.f64 (/.f64 9 (/.f64 (fma.f64 y (*.f64 x 3) z) (pow.f64 (*.f64 y x) 2)))) (/.f64 (*.f64 z z) (fma.f64 y (*.f64 x 3) z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cbrt.f64 (pow.f64 z 4))) (sqrt.f64 (cbrt.f64 (*.f64 z z))) (*.f64 y (*.f64 x 3)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2)) 2)) (sqrt.f64 (cbrt.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2))) (+.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2)) 2)) (sqrt.f64 (cbrt.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2))) (fma.f64 (neg.f64 (cbrt.f64 z)) (cbrt.f64 (*.f64 z z)) z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (sqrt.f64 z)) (sqrt.f64 z) (*.f64 y (*.f64 x 3)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (cbrt.f64 (*.f64 z z))) (cbrt.f64 z) (*.f64 y (*.f64 x 3)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (fma.f64 y (*.f64 x 3) z) (cbrt.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2))) (/.f64 (fma.f64 y (*.f64 x 3) z) (cbrt.f64 (fma.f64 y (*.f64 x 3) z))) (+.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (fma.f64 y (*.f64 x 3) z) (cbrt.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2))) (/.f64 (fma.f64 y (*.f64 x 3) z) (cbrt.f64 (fma.f64 y (*.f64 x 3) z))) (fma.f64 (neg.f64 (cbrt.f64 z)) (cbrt.f64 (*.f64 z z)) z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 y 1) (/.f64 (*.f64 x (*.f64 (*.f64 y x) 9)) (fma.f64 y (*.f64 x 3) z)) (/.f64 (*.f64 z z) (fma.f64 y (*.f64 x 3) z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (*.f64 y x) 2) 1) (/.f64 9 (fma.f64 y (*.f64 x 3) z)) (/.f64 (*.f64 z z) (fma.f64 y (*.f64 x 3) z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9)) 2) 1) (/.f64 (cbrt.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9)) (fma.f64 y (*.f64 x 3) z)) (/.f64 (*.f64 z z) (fma.f64 y (*.f64 x 3) z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (*.f64 y (*.f64 x 3)) 1) (/.f64 (*.f64 y (*.f64 x 3)) (fma.f64 y (*.f64 x 3) z)) (/.f64 (*.f64 z z) (fma.f64 y (*.f64 x 3) z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 y (cbrt.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2))) (/.f64 (*.f64 x (*.f64 (*.f64 y x) 9)) (cbrt.f64 (fma.f64 y (*.f64 x 3) z))) (/.f64 (*.f64 z z) (fma.f64 y (*.f64 x 3) z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (*.f64 y x) 2) (cbrt.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2))) (/.f64 9 (cbrt.f64 (fma.f64 y (*.f64 x 3) z))) (/.f64 (*.f64 z z) (fma.f64 y (*.f64 x 3) z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 9 (cbrt.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2))) (/.f64 (pow.f64 (*.f64 y x) 2) (cbrt.f64 (fma.f64 y (*.f64 x 3) z))) (/.f64 (*.f64 z z) (fma.f64 y (*.f64 x 3) z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (cbrt.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2))) (/.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9) (cbrt.f64 (fma.f64 y (*.f64 x 3) z))) (/.f64 (*.f64 z z) (fma.f64 y (*.f64 x 3) z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (cbrt.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2))) (/.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2) (cbrt.f64 (fma.f64 y (*.f64 x 3) z))) (+.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (cbrt.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2))) (/.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2) (cbrt.f64 (fma.f64 y (*.f64 x 3) z))) (fma.f64 (neg.f64 (cbrt.f64 z)) (cbrt.f64 (*.f64 z z)) z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9)) 2) (cbrt.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2))) (/.f64 (cbrt.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9)) (cbrt.f64 (fma.f64 y (*.f64 x 3) z))) (/.f64 (*.f64 z z) (fma.f64 y (*.f64 x 3) z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (*.f64 y (*.f64 x 3)) (cbrt.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2))) (/.f64 (*.f64 y (*.f64 x 3)) (cbrt.f64 (fma.f64 y (*.f64 x 3) z))) (/.f64 (*.f64 z z) (fma.f64 y (*.f64 x 3) z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 y (sqrt.f64 (fma.f64 y (*.f64 x 3) z))) (/.f64 (*.f64 x (*.f64 (*.f64 y x) 9)) (sqrt.f64 (fma.f64 y (*.f64 x 3) z))) (/.f64 (*.f64 z z) (fma.f64 y (*.f64 x 3) z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (*.f64 y x) 2) (sqrt.f64 (fma.f64 y (*.f64 x 3) z))) (/.f64 9 (sqrt.f64 (fma.f64 y (*.f64 x 3) z))) (/.f64 (*.f64 z z) (fma.f64 y (*.f64 x 3) z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 9 (sqrt.f64 (fma.f64 y (*.f64 x 3) z))) (/.f64 (pow.f64 (*.f64 y x) 2) (sqrt.f64 (fma.f64 y (*.f64 x 3) z))) (/.f64 (*.f64 z z) (fma.f64 y (*.f64 x 3) z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (sqrt.f64 (fma.f64 y (*.f64 x 3) z))) (/.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9) (sqrt.f64 (fma.f64 y (*.f64 x 3) z))) (/.f64 (*.f64 z z) (fma.f64 y (*.f64 x 3) z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (sqrt.f64 (fma.f64 y (*.f64 x 3) z))) (/.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2) (sqrt.f64 (fma.f64 y (*.f64 x 3) z))) (+.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (sqrt.f64 (fma.f64 y (*.f64 x 3) z))) (/.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2) (sqrt.f64 (fma.f64 y (*.f64 x 3) z))) (fma.f64 (neg.f64 (cbrt.f64 z)) (cbrt.f64 (*.f64 z z)) z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9)) 2) (sqrt.f64 (fma.f64 y (*.f64 x 3) z))) (/.f64 (cbrt.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9)) (sqrt.f64 (fma.f64 y (*.f64 x 3) z))) (/.f64 (*.f64 z z) (fma.f64 y (*.f64 x 3) z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (*.f64 y (*.f64 x 3)) (sqrt.f64 (fma.f64 y (*.f64 x 3) z))) (/.f64 (*.f64 y (*.f64 x 3)) (sqrt.f64 (fma.f64 y (*.f64 x 3) z))) (/.f64 (*.f64 z z) (fma.f64 y (*.f64 x 3) z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2)) 2) 1) (/.f64 (cbrt.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2)) (fma.f64 y (*.f64 x 3) z)) (+.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2)) 2) 1) (/.f64 (cbrt.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2)) (fma.f64 y (*.f64 x 3) z)) (fma.f64 (neg.f64 (cbrt.f64 z)) (cbrt.f64 (*.f64 z z)) z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2)) 2) (sqrt.f64 (fma.f64 y (*.f64 x 3) z))) (/.f64 (cbrt.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2)) (sqrt.f64 (fma.f64 y (*.f64 x 3) z))) (+.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2)) 2) (sqrt.f64 (fma.f64 y (*.f64 x 3) z))) (/.f64 (cbrt.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2)) (sqrt.f64 (fma.f64 y (*.f64 x 3) z))) (fma.f64 (neg.f64 (cbrt.f64 z)) (cbrt.f64 (*.f64 z z)) z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (fma.f64 y (*.f64 x 3) z) 1) (/.f64 (fma.f64 y (*.f64 x 3) z) (fma.f64 y (*.f64 x 3) z)) (+.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (fma.f64 y (*.f64 x 3) z) 1) (/.f64 (fma.f64 y (*.f64 x 3) z) (fma.f64 y (*.f64 x 3) z)) (fma.f64 (neg.f64 (cbrt.f64 z)) (cbrt.f64 (*.f64 z z)) z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (sqrt.f64 3) (sqrt.f64 (*.f64 y x)) (sqrt.f64 z)) (-.f64 (sqrt.f64 (*.f64 y (*.f64 x 3))) (sqrt.f64 z)) (+.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (sqrt.f64 3) (sqrt.f64 (*.f64 y x)) (sqrt.f64 z)) (-.f64 (sqrt.f64 (*.f64 y (*.f64 x 3))) (sqrt.f64 z)) (fma.f64 (neg.f64 (cbrt.f64 z)) (cbrt.f64 (*.f64 z z)) z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9) (fma.f64 27 (pow.f64 (*.f64 y x) 3) (pow.f64 z 3))) (fma.f64 (pow.f64 (*.f64 y x) 2) 9 (*.f64 z (fma.f64 y (*.f64 x 3) z))) (/.f64 (*.f64 z z) (fma.f64 y (*.f64 x 3) z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9) (pow.f64 (fma.f64 y (*.f64 x 3) z) 2)) (fma.f64 y (*.f64 x 3) z) (/.f64 (*.f64 z z) (fma.f64 y (*.f64 x 3) z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2) (fma.f64 27 (pow.f64 (*.f64 y x) 3) (pow.f64 z 3))) (fma.f64 (pow.f64 (*.f64 y x) 2) 9 (*.f64 z (fma.f64 y (*.f64 x 3) z))) (+.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2) (fma.f64 27 (pow.f64 (*.f64 y x) 3) (pow.f64 z 3))) (fma.f64 (pow.f64 (*.f64 y x) 2) 9 (*.f64 z (fma.f64 y (*.f64 x 3) z))) (fma.f64 (neg.f64 (cbrt.f64 z)) (cbrt.f64 (*.f64 z z)) z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2) (pow.f64 (fma.f64 y (*.f64 x 3) z) 2)) (fma.f64 y (*.f64 x 3) z) (+.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2) (pow.f64 (fma.f64 y (*.f64 x 3) z) 2)) (fma.f64 y (*.f64 x 3) z) (fma.f64 (neg.f64 (cbrt.f64 z)) (cbrt.f64 (*.f64 z z)) z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 3 x) y z)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 3 (pow.f64 (cbrt.f64 (*.f64 y x)) 2)) (cbrt.f64 (*.f64 y x)) z)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 3 (sqrt.f64 (*.f64 y x))) (sqrt.f64 (*.f64 y x)) z)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 y 3) 1) x z)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 y 3) (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 x) z)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 y 3) (sqrt.f64 x)) (sqrt.f64 x) z)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -1 (cbrt.f64 (*.f64 z z))) (cbrt.f64 z) (*.f64 y (*.f64 x 3)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -1 (sqrt.f64 z)) (sqrt.f64 z) (*.f64 y (*.f64 x 3)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 y (*.f64 x 3) z)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 y (*.f64 x 3) z)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 y (*.f64 x 3) z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 y (*.f64 x 3) z)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (pow.f64 (*.f64 y x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (pow.f64 (*.f64 y x) 2))) (cbrt.f64 (exp.f64 (pow.f64 (*.f64 y x) 2))))) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 (*.f64 y x) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (*.f64 y x) 2)))) (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (*.f64 y x) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (pow.f64 (*.f64 y x) 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 y x) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 y x) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (pow.f64 (*.f64 y x) 2) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cbrt.f64 (*.f64 y x)) 2) 3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (pow.f64 (*.f64 y x) 2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 (*.f64 y x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (pow.f64 (*.f64 y x) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (pow.f64 (*.f64 y x) 2) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 y 3) (pow.f64 (*.f64 y (*.f64 x x)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (*.f64 y (*.f64 x x)) 3) (pow.f64 y 3)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (*.f64 y x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 2 (log.f64 (*.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 2 (log.f64 (*.f64 y x))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (*.f64 y x) 2)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9) (*.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9) (fma.f64 z z (fma.f64 z z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2) (fma.f64 z z (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 z z))) (cbrt.f64 (pow.f64 z 4)) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2) (*.f64 (fma.f64 z z (*.f64 z z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2) (+.f64 (fma.f64 z z (*.f64 z z)) (fma.f64 z z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 z z) (*.f64 (pow.f64 (*.f64 y x) 2) 9))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 z z (*.f64 z z)) (pow.f64 (fma.f64 y (*.f64 x 3) z) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 y (*.f64 x 3)) (fma.f64 y (*.f64 x 3) z)) (*.f64 z (fma.f64 y (*.f64 x 3) z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (fma.f64 y (*.f64 x 3) z) (*.f64 y (*.f64 x 3))) (*.f64 (fma.f64 y (*.f64 x 3) z) z))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2))) (cbrt.f64 (exp.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2))))) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2)))) (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2) (*.f64 (/.f64 1 (fma.f64 y (*.f64 x 3) z)) (fma.f64 y (*.f64 x 3) z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 y (*.f64 x 3) z) (fma.f64 y (*.f64 x 3) z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 3) (/.f64 1 (fma.f64 y (*.f64 x 3) z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2) 2) (*.f64 (/.f64 1 (fma.f64 y (*.f64 x 3) z)) (/.f64 1 (fma.f64 y (*.f64 x 3) z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2) 2) (/.f64 1 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2)) (pow.f64 (cbrt.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2)) (*.f64 (cbrt.f64 (fma.f64 y (*.f64 x 3) z)) (fma.f64 y (*.f64 x 3) z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2)) 2) (cbrt.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 y (*.f64 x 3) z)) (*.f64 (sqrt.f64 (fma.f64 y (*.f64 x 3) z)) (fma.f64 y (*.f64 x 3) z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (pow.f64 (pow.f64 (*.f64 y x) 2) 3) 729 (pow.f64 z 6)) (/.f64 1 (fma.f64 (pow.f64 (pow.f64 (*.f64 y x) 2) 2) 81 (*.f64 (*.f64 z z) (pow.f64 (fma.f64 y (*.f64 x 3) z) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (fma.f64 y (*.f64 x 3) z) (sqrt.f64 (fma.f64 y (*.f64 x 3) z))) (sqrt.f64 (fma.f64 y (*.f64 x 3) z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (fma.f64 y (*.f64 x 3) z) (cbrt.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2))) (cbrt.f64 (fma.f64 y (*.f64 x 3) z)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2) (*.f64 (fma.f64 y (*.f64 x 3) z) (/.f64 1 (fma.f64 y (*.f64 x 3) z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2) (*.f64 (/.f64 1 (fma.f64 y (*.f64 x 3) z)) (fma.f64 y (*.f64 x 3) z)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 y (*.f64 x 3) z) (/.f64 1 (fma.f64 y (*.f64 x 3) z)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (*.f64 (/.f64 1 (fma.f64 y (*.f64 x 3) z)) (/.f64 1 (fma.f64 y (*.f64 x 3) z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (pow.f64 (pow.f64 (*.f64 y x) 2) 2) 81 (*.f64 (*.f64 z z) (pow.f64 (fma.f64 y (*.f64 x 3) z) 2))) (fma.f64 (pow.f64 (pow.f64 (*.f64 y x) 2) 3) 729 (pow.f64 z 6))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2) (pow.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 3) (fma.f64 y (*.f64 x 3) z))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2) 2) (pow.f64 (fma.f64 y (*.f64 x 3) z) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2)) (*.f64 (/.f64 1 (fma.f64 y (*.f64 x 3) z)) (neg.f64 (fma.f64 y (*.f64 x 3) z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 (pow.f64 (pow.f64 (*.f64 y x) 2) 3) 729 (pow.f64 z 6)) (fma.f64 (pow.f64 (pow.f64 (*.f64 y x) 2) 2) 81 (*.f64 (*.f64 z z) (pow.f64 (fma.f64 y (*.f64 x 3) z) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (fma.f64 27 (pow.f64 (*.f64 y x) 3) (pow.f64 z 3)) (fma.f64 27 (pow.f64 (*.f64 y x) 3) (pow.f64 z 3))) (*.f64 (fma.f64 (pow.f64 (*.f64 y x) 2) 9 (*.f64 z (fma.f64 y (*.f64 x 3) z))) (fma.f64 (pow.f64 (*.f64 y x) 2) 9 (*.f64 z (fma.f64 y (*.f64 x 3) z)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2)) (neg.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2))) (*.f64 (neg.f64 (fma.f64 y (*.f64 x 3) z)) (neg.f64 (fma.f64 y (*.f64 x 3) z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (fma.f64 (pow.f64 (pow.f64 (*.f64 y x) 2) 3) 729 (pow.f64 z 6))) (neg.f64 (fma.f64 (pow.f64 (pow.f64 (*.f64 y x) 2) 2) 81 (*.f64 (*.f64 z z) (pow.f64 (fma.f64 y (*.f64 x 3) z) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (pow.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2) 2)) (neg.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2)) (pow.f64 (fma.f64 y (*.f64 x 3) z) 2)) (neg.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2)) 1) (*.f64 (neg.f64 (fma.f64 y (*.f64 x 3) z)) (/.f64 1 (fma.f64 y (*.f64 x 3) z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2) (neg.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2))) (neg.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (fma.f64 27 (pow.f64 (*.f64 y x) 3) (pow.f64 z 3)) (pow.f64 (fma.f64 y (*.f64 x 3) z) 2)) (fma.f64 27 (pow.f64 (*.f64 y x) 3) (pow.f64 z 3)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2) 3) (pow.f64 (fma.f64 z z (*.f64 z z)) 3)) (+.f64 (pow.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2) 2) (-.f64 (*.f64 (fma.f64 z z (*.f64 z z)) (fma.f64 z z (*.f64 z z))) (*.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2) (fma.f64 z z (*.f64 z z))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2) 2) (*.f64 (fma.f64 z z (*.f64 z z)) (fma.f64 z z (*.f64 z z)))) (-.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2) (fma.f64 z z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2)) (fma.f64 y (*.f64 x 3) z)) (neg.f64 (fma.f64 y (*.f64 x 3) z)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (fma.f64 27 (pow.f64 (*.f64 y x) 3) (pow.f64 z 3)) (fma.f64 y (*.f64 x 3) z)) (fma.f64 (pow.f64 (*.f64 y x) 2) 9 (*.f64 z (fma.f64 y (*.f64 x 3) z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2) (fma.f64 27 (pow.f64 (*.f64 y x) 3) (pow.f64 z 3))) (*.f64 (fma.f64 y (*.f64 x 3) z) (fma.f64 (pow.f64 (*.f64 y x) 2) 9 (*.f64 z (fma.f64 y (*.f64 x 3) z)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (fma.f64 y (*.f64 x 3) z) (neg.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2))) (neg.f64 (fma.f64 y (*.f64 x 3) z)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (fma.f64 y (*.f64 x 3) z) (fma.f64 27 (pow.f64 (*.f64 y x) 3) (pow.f64 z 3))) (fma.f64 (pow.f64 (*.f64 y x) 2) 9 (*.f64 z (fma.f64 y (*.f64 x 3) z))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 y (*.f64 x 3) z) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9))) (pow.f64 (exp.f64 z) z)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (pow.f64 (exp.f64 (pow.f64 (*.f64 y x) 2)) 9) (+.f64 1 (expm1.f64 (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9))) (+.f64 1 (expm1.f64 (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9))) (pow.f64 (exp.f64 z) z)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 (pow.f64 (*.f64 y x) 2)) 9) (+.f64 1 (expm1.f64 (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9))) (+.f64 1 (expm1.f64 (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2))) (exp.f64 (fma.f64 z z (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 z) z) (pow.f64 (exp.f64 (pow.f64 (*.f64 y x) 2)) 9)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 z z))) (pow.f64 (exp.f64 (pow.f64 (*.f64 y x) 2)) 9)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 z) z) (+.f64 1 (expm1.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 z z))) (+.f64 1 (expm1.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 z z (*.f64 z z))) (exp.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 z z (*.f64 z z))) (+.f64 1 (expm1.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2) 3))))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9) (*.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y (*.f64 x (*.f64 (*.f64 y x) 9)) (*.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y (*.f64 x (*.f64 (*.f64 y x) 9)) (fma.f64 z z (fma.f64 z z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y (*.f64 x (*.f64 (*.f64 y x) 9)) (neg.f64 (-.f64 (*.f64 z z) (fma.f64 z z (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y x) (*.f64 (*.f64 y x) 9) (*.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y x) (*.f64 (*.f64 y x) 9) (fma.f64 z z (fma.f64 z z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y x) (*.f64 (*.f64 y x) 9) (neg.f64 (-.f64 (*.f64 z z) (fma.f64 z z (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y x) (*.f64 3 (*.f64 y (*.f64 x 3))) (*.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y x) (*.f64 3 (*.f64 y (*.f64 x 3))) (fma.f64 z z (fma.f64 z z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y x) (*.f64 3 (*.f64 y (*.f64 x 3))) (neg.f64 (-.f64 (*.f64 z z) (fma.f64 z z (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y (*.f64 x x)) (*.f64 y 9) (*.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y (*.f64 x x)) (*.f64 y 9) (fma.f64 z z (fma.f64 z z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y (*.f64 x x)) (*.f64 y 9) (neg.f64 (-.f64 (*.f64 z z) (fma.f64 z z (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (*.f64 y x) 2) 9 (*.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (*.f64 y x) 2) 9 (fma.f64 z z (fma.f64 z z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (*.f64 y x) 2) 9 (neg.f64 (-.f64 (*.f64 z z) (fma.f64 z z (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 9 (pow.f64 (*.f64 y x) 2) (*.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 9 (pow.f64 (*.f64 y x) 2) (fma.f64 z z (fma.f64 z z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 9 (pow.f64 (*.f64 y x) 2) (neg.f64 (-.f64 (*.f64 z z) (fma.f64 z z (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9) 1 (*.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9) 1 (fma.f64 z z (fma.f64 z z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9) 1 (neg.f64 (-.f64 (*.f64 z z) (fma.f64 z z (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 z z (*.f64 (pow.f64 (*.f64 y x) 2) 9))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2) 1 (fma.f64 z z (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2) 1 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 z z))) (cbrt.f64 (pow.f64 z 4)) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2) 1 (*.f64 (fma.f64 z z (*.f64 z z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2) 1 (+.f64 (fma.f64 z z (*.f64 z z)) (fma.f64 z z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2) (*.f64 (/.f64 1 (fma.f64 y (*.f64 x 3) z)) (fma.f64 y (*.f64 x 3) z)) (fma.f64 z z (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2) (*.f64 (/.f64 1 (fma.f64 y (*.f64 x 3) z)) (fma.f64 y (*.f64 x 3) z)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 z z))) (cbrt.f64 (pow.f64 z 4)) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2) (*.f64 (/.f64 1 (fma.f64 y (*.f64 x 3) z)) (fma.f64 y (*.f64 x 3) z)) (*.f64 (fma.f64 z z (*.f64 z z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2) (*.f64 (/.f64 1 (fma.f64 y (*.f64 x 3) z)) (fma.f64 y (*.f64 x 3) z)) (+.f64 (fma.f64 z z (*.f64 z z)) (fma.f64 z z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 3 (*.f64 (*.f64 y x) (*.f64 y (*.f64 x 3))) (*.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 3 (*.f64 (*.f64 y x) (*.f64 y (*.f64 x 3))) (fma.f64 z z (fma.f64 z z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 3 (*.f64 (*.f64 y x) (*.f64 y (*.f64 x 3))) (neg.f64 (-.f64 (*.f64 z z) (fma.f64 z z (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y (*.f64 x 3)) (*.f64 y (*.f64 x 3)) (*.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y (*.f64 x 3)) (*.f64 y (*.f64 x 3)) (fma.f64 z z (fma.f64 z z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y (*.f64 x 3)) (*.f64 y (*.f64 x 3)) (neg.f64 (-.f64 (*.f64 z z) (fma.f64 z z (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y (*.f64 x 3)) (fma.f64 y (*.f64 x 3) z) (*.f64 z (fma.f64 y (*.f64 x 3) z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 y (*.f64 x 3) z) (*.f64 y (*.f64 x 3)) (*.f64 (fma.f64 y (*.f64 x 3) z) z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 y (*.f64 x 3) z) (fma.f64 y (*.f64 x 3) z) (fma.f64 z z (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 y (*.f64 x 3) z) (fma.f64 y (*.f64 x 3) z) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 z z))) (cbrt.f64 (pow.f64 z 4)) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 y (*.f64 x 3) z) (fma.f64 y (*.f64 x 3) z) (*.f64 (fma.f64 z z (*.f64 z z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 y (*.f64 x 3) z) (fma.f64 y (*.f64 x 3) z) (+.f64 (fma.f64 z z (*.f64 z z)) (fma.f64 z z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (pow.f64 (*.f64 y x) 2) 9) (*.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (pow.f64 (*.f64 y x) 2) 9) (fma.f64 z z (fma.f64 z z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (pow.f64 (*.f64 y x) 2) 9) (neg.f64 (-.f64 (*.f64 z z) (fma.f64 z z (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2) (fma.f64 z z (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 z z))) (cbrt.f64 (pow.f64 z 4)) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2) (*.f64 (fma.f64 z z (*.f64 z z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2) (+.f64 (fma.f64 z z (*.f64 z z)) (fma.f64 z z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 z z) (*.f64 (pow.f64 (*.f64 y x) 2) 9))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 z z (*.f64 z z)) (pow.f64 (fma.f64 y (*.f64 x 3) z) 2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 3) (/.f64 1 (fma.f64 y (*.f64 x 3) z)) (fma.f64 z z (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 3) (/.f64 1 (fma.f64 y (*.f64 x 3) z)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 z z))) (cbrt.f64 (pow.f64 z 4)) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 3) (/.f64 1 (fma.f64 y (*.f64 x 3) z)) (*.f64 (fma.f64 z z (*.f64 z z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 3) (/.f64 1 (fma.f64 y (*.f64 x 3) z)) (+.f64 (fma.f64 z z (*.f64 z z)) (fma.f64 z z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2) 2) (*.f64 (/.f64 1 (fma.f64 y (*.f64 x 3) z)) (/.f64 1 (fma.f64 y (*.f64 x 3) z))) (fma.f64 z z (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2) 2) (*.f64 (/.f64 1 (fma.f64 y (*.f64 x 3) z)) (/.f64 1 (fma.f64 y (*.f64 x 3) z))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 z z))) (cbrt.f64 (pow.f64 z 4)) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2) 2) (*.f64 (/.f64 1 (fma.f64 y (*.f64 x 3) z)) (/.f64 1 (fma.f64 y (*.f64 x 3) z))) (*.f64 (fma.f64 z z (*.f64 z z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2) 2) (*.f64 (/.f64 1 (fma.f64 y (*.f64 x 3) z)) (/.f64 1 (fma.f64 y (*.f64 x 3) z))) (+.f64 (fma.f64 z z (*.f64 z z)) (fma.f64 z z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2) 2) (/.f64 1 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2)) (fma.f64 z z (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2) 2) (/.f64 1 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 z z))) (cbrt.f64 (pow.f64 z 4)) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2) 2) (/.f64 1 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2)) (*.f64 (fma.f64 z z (*.f64 z z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2) 2) (/.f64 1 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2)) (+.f64 (fma.f64 z z (*.f64 z z)) (fma.f64 z z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2)) (pow.f64 (cbrt.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2)) 2) (fma.f64 z z (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2)) (pow.f64 (cbrt.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2)) 2) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 z z))) (cbrt.f64 (pow.f64 z 4)) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2)) (pow.f64 (cbrt.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2)) 2) (*.f64 (fma.f64 z z (*.f64 z z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2)) (pow.f64 (cbrt.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2)) 2) (+.f64 (fma.f64 z z (*.f64 z z)) (fma.f64 z z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2)) (*.f64 (cbrt.f64 (fma.f64 y (*.f64 x 3) z)) (fma.f64 y (*.f64 x 3) z)) (fma.f64 z z (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2)) (*.f64 (cbrt.f64 (fma.f64 y (*.f64 x 3) z)) (fma.f64 y (*.f64 x 3) z)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 z z))) (cbrt.f64 (pow.f64 z 4)) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2)) (*.f64 (cbrt.f64 (fma.f64 y (*.f64 x 3) z)) (fma.f64 y (*.f64 x 3) z)) (*.f64 (fma.f64 z z (*.f64 z z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2)) (*.f64 (cbrt.f64 (fma.f64 y (*.f64 x 3) z)) (fma.f64 y (*.f64 x 3) z)) (+.f64 (fma.f64 z z (*.f64 z z)) (fma.f64 z z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2)) 2) (cbrt.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2)) (fma.f64 z z (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2)) 2) (cbrt.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 z z))) (cbrt.f64 (pow.f64 z 4)) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2)) 2) (cbrt.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2)) (*.f64 (fma.f64 z z (*.f64 z z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2)) 2) (cbrt.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2)) (+.f64 (fma.f64 z z (*.f64 z z)) (fma.f64 z z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 y x)) 2) 2) (*.f64 (pow.f64 (cbrt.f64 (*.f64 y x)) 2) 9) (*.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 y x)) 2) 2) (*.f64 (pow.f64 (cbrt.f64 (*.f64 y x)) 2) 9) (fma.f64 z z (fma.f64 z z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 y x)) 2) 2) (*.f64 (pow.f64 (cbrt.f64 (*.f64 y x)) 2) 9) (neg.f64 (-.f64 (*.f64 z z) (fma.f64 z z (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 z z)) (cbrt.f64 (pow.f64 z 4)) (*.f64 (pow.f64 (*.f64 y x) 2) 9))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 z z)) (*.f64 (cbrt.f64 z) z) (*.f64 (pow.f64 (*.f64 y x) 2) 9))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 z 4)) (cbrt.f64 (*.f64 z z)) (*.f64 (pow.f64 (*.f64 y x) 2) 9))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 z 4)) (neg.f64 (cbrt.f64 (*.f64 z z))) (*.f64 (pow.f64 (*.f64 y x) 2) 9))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9)) (pow.f64 (cbrt.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9)) 2) (*.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9)) (pow.f64 (cbrt.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9)) 2) (fma.f64 z z (fma.f64 z z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9)) (pow.f64 (cbrt.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9)) 2) (neg.f64 (-.f64 (*.f64 z z) (fma.f64 z z (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9)) (*.f64 (cbrt.f64 (*.f64 y (*.f64 x 3))) (*.f64 y (*.f64 x 3))) (*.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9)) (*.f64 (cbrt.f64 (*.f64 y (*.f64 x 3))) (*.f64 y (*.f64 x 3))) (fma.f64 z z (fma.f64 z z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9)) (*.f64 (cbrt.f64 (*.f64 y (*.f64 x 3))) (*.f64 y (*.f64 x 3))) (neg.f64 (-.f64 (*.f64 z z) (fma.f64 z z (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9)) 2) (cbrt.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9)) (*.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9)) 2) (cbrt.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9)) (fma.f64 z z (fma.f64 z z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9)) 2) (cbrt.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9)) (neg.f64 (-.f64 (*.f64 z z) (fma.f64 z z (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 y) 2) (*.f64 (cbrt.f64 y) (*.f64 x (*.f64 (*.f64 y x) 9))) (*.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 y) 2) (*.f64 (cbrt.f64 y) (*.f64 x (*.f64 (*.f64 y x) 9))) (fma.f64 z z (fma.f64 z z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 y) 2) (*.f64 (cbrt.f64 y) (*.f64 x (*.f64 (*.f64 y x) 9))) (neg.f64 (-.f64 (*.f64 z z) (fma.f64 z z (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 y (*.f64 x 3) z)) (*.f64 (sqrt.f64 (fma.f64 y (*.f64 x 3) z)) (fma.f64 y (*.f64 x 3) z)) (fma.f64 z z (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 y (*.f64 x 3) z)) (*.f64 (sqrt.f64 (fma.f64 y (*.f64 x 3) z)) (fma.f64 y (*.f64 x 3) z)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 z z))) (cbrt.f64 (pow.f64 z 4)) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 y (*.f64 x 3) z)) (*.f64 (sqrt.f64 (fma.f64 y (*.f64 x 3) z)) (fma.f64 y (*.f64 x 3) z)) (*.f64 (fma.f64 z z (*.f64 z z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 y (*.f64 x 3) z)) (*.f64 (sqrt.f64 (fma.f64 y (*.f64 x 3) z)) (fma.f64 y (*.f64 x 3) z)) (+.f64 (fma.f64 z z (*.f64 z z)) (fma.f64 z z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 y (*.f64 x 3))) (*.f64 (sqrt.f64 (*.f64 y (*.f64 x 3))) (*.f64 y (*.f64 x 3))) (*.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 y (*.f64 x 3))) (*.f64 (sqrt.f64 (*.f64 y (*.f64 x 3))) (*.f64 y (*.f64 x 3))) (fma.f64 z z (fma.f64 z z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 y (*.f64 x 3))) (*.f64 (sqrt.f64 (*.f64 y (*.f64 x 3))) (*.f64 y (*.f64 x 3))) (neg.f64 (-.f64 (*.f64 z z) (fma.f64 z z (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 y) (*.f64 (sqrt.f64 y) (*.f64 x (*.f64 (*.f64 y x) 9))) (*.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 y) (*.f64 (sqrt.f64 y) (*.f64 x (*.f64 (*.f64 y x) 9))) (fma.f64 z z (fma.f64 z z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 y) (*.f64 (sqrt.f64 y) (*.f64 x (*.f64 (*.f64 y x) 9))) (neg.f64 (-.f64 (*.f64 z z) (fma.f64 z z (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 z) (*.f64 (sqrt.f64 z) z) (*.f64 (pow.f64 (*.f64 y x) 2) 9))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 z z) 1 (*.f64 (pow.f64 (*.f64 y x) 2) 9))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (pow.f64 (pow.f64 (*.f64 y x) 2) 3) 729 (pow.f64 z 6)) (/.f64 1 (fma.f64 (pow.f64 (pow.f64 (*.f64 y x) 2) 2) 81 (*.f64 (*.f64 z z) (pow.f64 (fma.f64 y (*.f64 x 3) z) 2)))) (fma.f64 z z (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (pow.f64 (pow.f64 (*.f64 y x) 2) 3) 729 (pow.f64 z 6)) (/.f64 1 (fma.f64 (pow.f64 (pow.f64 (*.f64 y x) 2) 2) 81 (*.f64 (*.f64 z z) (pow.f64 (fma.f64 y (*.f64 x 3) z) 2)))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 z z))) (cbrt.f64 (pow.f64 z 4)) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (pow.f64 (pow.f64 (*.f64 y x) 2) 3) 729 (pow.f64 z 6)) (/.f64 1 (fma.f64 (pow.f64 (pow.f64 (*.f64 y x) 2) 2) 81 (*.f64 (*.f64 z z) (pow.f64 (fma.f64 y (*.f64 x 3) z) 2)))) (*.f64 (fma.f64 z z (*.f64 z z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (pow.f64 (pow.f64 (*.f64 y x) 2) 3) 729 (pow.f64 z 6)) (/.f64 1 (fma.f64 (pow.f64 (pow.f64 (*.f64 y x) 2) 2) 81 (*.f64 (*.f64 z z) (pow.f64 (fma.f64 y (*.f64 x 3) z) 2)))) (+.f64 (fma.f64 z z (*.f64 z z)) (fma.f64 z z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 (*.f64 z z) (*.f64 (pow.f64 (*.f64 y x) 2) 9))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (*.f64 (*.f64 y x) 9)) y (*.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (*.f64 (*.f64 y x) 9)) y (fma.f64 z z (fma.f64 z z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (*.f64 (*.f64 y x) 9)) y (neg.f64 (-.f64 (*.f64 z z) (fma.f64 z z (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y 3) (*.f64 x (*.f64 y (*.f64 x 3))) (*.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y 3) (*.f64 x (*.f64 y (*.f64 x 3))) (fma.f64 z z (fma.f64 z z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y 3) (*.f64 x (*.f64 y (*.f64 x 3))) (neg.f64 (-.f64 (*.f64 z z) (fma.f64 z z (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 y (*.f64 x 3)) (sqrt.f64 (*.f64 y (*.f64 x 3)))) (sqrt.f64 (*.f64 y (*.f64 x 3))) (*.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 y (*.f64 x 3)) (sqrt.f64 (*.f64 y (*.f64 x 3)))) (sqrt.f64 (*.f64 y (*.f64 x 3))) (fma.f64 z z (fma.f64 z z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 y (*.f64 x 3)) (sqrt.f64 (*.f64 y (*.f64 x 3)))) (sqrt.f64 (*.f64 y (*.f64 x 3))) (neg.f64 (-.f64 (*.f64 z z) (fma.f64 z z (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (fma.f64 y (*.f64 x 3) z) (sqrt.f64 (fma.f64 y (*.f64 x 3) z))) (sqrt.f64 (fma.f64 y (*.f64 x 3) z)) (fma.f64 z z (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (fma.f64 y (*.f64 x 3) z) (sqrt.f64 (fma.f64 y (*.f64 x 3) z))) (sqrt.f64 (fma.f64 y (*.f64 x 3) z)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 z z))) (cbrt.f64 (pow.f64 z 4)) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (fma.f64 y (*.f64 x 3) z) (sqrt.f64 (fma.f64 y (*.f64 x 3) z))) (sqrt.f64 (fma.f64 y (*.f64 x 3) z)) (*.f64 (fma.f64 z z (*.f64 z z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (fma.f64 y (*.f64 x 3) z) (sqrt.f64 (fma.f64 y (*.f64 x 3) z))) (sqrt.f64 (fma.f64 y (*.f64 x 3) z)) (+.f64 (fma.f64 z z (*.f64 z z)) (fma.f64 z z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 y 3) (*.f64 y 3)) (*.f64 x x) (*.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 y 3) (*.f64 y 3)) (*.f64 x x) (fma.f64 z z (fma.f64 z z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 y 3) (*.f64 y 3)) (*.f64 x x) (neg.f64 (-.f64 (*.f64 z z) (fma.f64 z z (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (fma.f64 z z (*.f64 z z))) (cbrt.f64 (fma.f64 z z (*.f64 z z)))) (cbrt.f64 (fma.f64 z z (*.f64 z z))) (pow.f64 (fma.f64 y (*.f64 x 3) z) 2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (hypot.f64 z z) (hypot.f64 z z) (pow.f64 (fma.f64 y (*.f64 x 3) z) 2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 z (sqrt.f64 z)) (sqrt.f64 z) (*.f64 (pow.f64 (*.f64 y x) 2) 9))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (cbrt.f64 (pow.f64 z 4))) (cbrt.f64 (*.f64 z z)) (*.f64 (pow.f64 (*.f64 y x) 2) 9))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 z (cbrt.f64 (*.f64 z z))) (cbrt.f64 z) (*.f64 (pow.f64 (*.f64 y x) 2) 9))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 9 y) (*.f64 y (*.f64 x x)) (*.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 9 y) (*.f64 y (*.f64 x x)) (fma.f64 z z (fma.f64 z z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 9 y) (*.f64 y (*.f64 x x)) (neg.f64 (-.f64 (*.f64 z z) (fma.f64 z z (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 9 (*.f64 y x)) (*.f64 y x) (*.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 9 (*.f64 y x)) (*.f64 y x) (fma.f64 z z (fma.f64 z z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 9 (*.f64 y x)) (*.f64 y x) (neg.f64 (-.f64 (*.f64 z z) (fma.f64 z z (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 9 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 y x)) 2) 2)) (pow.f64 (cbrt.f64 (*.f64 y x)) 2) (*.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 9 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 y x)) 2) 2)) (pow.f64 (cbrt.f64 (*.f64 y x)) 2) (fma.f64 z z (fma.f64 z z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 9 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 y x)) 2) 2)) (pow.f64 (cbrt.f64 (*.f64 y x)) 2) (neg.f64 (-.f64 (*.f64 z z) (fma.f64 z z (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 y (*.f64 x 3)) (*.f64 y x)) 3 (*.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 y (*.f64 x 3)) (*.f64 y x)) 3 (fma.f64 z z (fma.f64 z z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 y (*.f64 x 3)) (*.f64 y x)) 3 (neg.f64 (-.f64 (*.f64 z z) (fma.f64 z z (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 y (*.f64 x 3)) 3) (*.f64 y x) (*.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 y (*.f64 x 3)) 3) (*.f64 y x) (fma.f64 z z (fma.f64 z z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 y (*.f64 x 3)) 3) (*.f64 y x) (neg.f64 (-.f64 (*.f64 z z) (fma.f64 z z (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 y (*.f64 x 3)) (cbrt.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9))) (cbrt.f64 (*.f64 y (*.f64 x 3))) (*.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 y (*.f64 x 3)) (cbrt.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9))) (cbrt.f64 (*.f64 y (*.f64 x 3))) (fma.f64 z z (fma.f64 z z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 y (*.f64 x 3)) (cbrt.f64 (*.f64 (pow.f64 (*.f64 y x) 2) 9))) (cbrt.f64 (*.f64 y (*.f64 x 3))) (neg.f64 (-.f64 (*.f64 z z) (fma.f64 z z (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 y (*.f64 x 3)) (*.f64 y 3)) x (*.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 y (*.f64 x 3)) (*.f64 y 3)) x (fma.f64 z z (fma.f64 z z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 y (*.f64 x 3)) (*.f64 y 3)) x (neg.f64 (-.f64 (*.f64 z z) (fma.f64 z z (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (fma.f64 y (*.f64 x 3) z) (cbrt.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2))) (cbrt.f64 (fma.f64 y (*.f64 x 3) z)) (fma.f64 z z (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (fma.f64 y (*.f64 x 3) z) (cbrt.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2))) (cbrt.f64 (fma.f64 y (*.f64 x 3) z)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 z z))) (cbrt.f64 (pow.f64 z 4)) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (fma.f64 y (*.f64 x 3) z) (cbrt.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2))) (cbrt.f64 (fma.f64 y (*.f64 x 3) z)) (*.f64 (fma.f64 z z (*.f64 z z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (fma.f64 y (*.f64 x 3) z) (cbrt.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2))) (cbrt.f64 (fma.f64 y (*.f64 x 3) z)) (+.f64 (fma.f64 z z (*.f64 z z)) (fma.f64 z z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 2 (log.f64 (fma.f64 y (*.f64 x 3) z))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 2 (log.f64 (fma.f64 y (*.f64 x 3) z))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (fma.f64 y (*.f64 x 3) z) 2)))))))

simplify107.0ms (1.8%)

Algorithm
egg-herbie
Rules
821×distribute-rgt-neg-in_binary64
781×fma-neg_binary64
721×distribute-lft-neg-in_binary64
587×fma-def_binary64
578×unsub-neg_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0201186
1471159
2981159
32701159
412401159
532431159
652411159
770691159
Stop Event
node limit
Counts
515 → 434
Calls
Call 1
Inputs
(*.f64 -1 z)
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(*.f64 3 (*.f64 y x))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(*.f64 3 (*.f64 y x))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(*.f64 -1 z)
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(*.f64 3 (*.f64 y x))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(*.f64 3 (*.f64 y x))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(*.f64 3 (*.f64 y x))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(*.f64 -1 z)
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(*.f64 -1 z)
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 -1 (pow.f64 z 2))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2)))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2)))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(*.f64 -1 (pow.f64 z 2))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2)))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2)))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2)))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(*.f64 -1 (pow.f64 z 2))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(*.f64 -1 (pow.f64 z 2))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
Outputs
(*.f64 -1 z)
(neg.f64 z)
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 3 (*.f64 y x)) z)
(fma.f64 x (*.f64 3 y) (neg.f64 z))
(-.f64 (*.f64 y (*.f64 3 x)) z)
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 3 (*.f64 y x)) z)
(fma.f64 x (*.f64 3 y) (neg.f64 z))
(-.f64 (*.f64 y (*.f64 3 x)) z)
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 3 (*.f64 y x)) z)
(fma.f64 x (*.f64 3 y) (neg.f64 z))
(-.f64 (*.f64 y (*.f64 3 x)) z)
(*.f64 3 (*.f64 y x))
(*.f64 (*.f64 3 y) x)
(*.f64 y (*.f64 3 x))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 3 (*.f64 y x)) z)
(fma.f64 x (*.f64 3 y) (neg.f64 z))
(-.f64 (*.f64 y (*.f64 3 x)) z)
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 3 (*.f64 y x)) z)
(fma.f64 x (*.f64 3 y) (neg.f64 z))
(-.f64 (*.f64 y (*.f64 3 x)) z)
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 3 (*.f64 y x)) z)
(fma.f64 x (*.f64 3 y) (neg.f64 z))
(-.f64 (*.f64 y (*.f64 3 x)) z)
(*.f64 3 (*.f64 y x))
(*.f64 (*.f64 3 y) x)
(*.f64 y (*.f64 3 x))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 3 (*.f64 y x)) z)
(fma.f64 x (*.f64 3 y) (neg.f64 z))
(-.f64 (*.f64 y (*.f64 3 x)) z)
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 3 (*.f64 y x)) z)
(fma.f64 x (*.f64 3 y) (neg.f64 z))
(-.f64 (*.f64 y (*.f64 3 x)) z)
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 3 (*.f64 y x)) z)
(fma.f64 x (*.f64 3 y) (neg.f64 z))
(-.f64 (*.f64 y (*.f64 3 x)) z)
(*.f64 -1 z)
(neg.f64 z)
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 3 (*.f64 y x)) z)
(fma.f64 x (*.f64 3 y) (neg.f64 z))
(-.f64 (*.f64 y (*.f64 3 x)) z)
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 3 (*.f64 y x)) z)
(fma.f64 x (*.f64 3 y) (neg.f64 z))
(-.f64 (*.f64 y (*.f64 3 x)) z)
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 3 (*.f64 y x)) z)
(fma.f64 x (*.f64 3 y) (neg.f64 z))
(-.f64 (*.f64 y (*.f64 3 x)) z)
(*.f64 3 (*.f64 y x))
(*.f64 (*.f64 3 y) x)
(*.f64 y (*.f64 3 x))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 3 (*.f64 y x)) z)
(fma.f64 x (*.f64 3 y) (neg.f64 z))
(-.f64 (*.f64 y (*.f64 3 x)) z)
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 3 (*.f64 y x)) z)
(fma.f64 x (*.f64 3 y) (neg.f64 z))
(-.f64 (*.f64 y (*.f64 3 x)) z)
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 3 (*.f64 y x)) z)
(fma.f64 x (*.f64 3 y) (neg.f64 z))
(-.f64 (*.f64 y (*.f64 3 x)) z)
(*.f64 3 (*.f64 y x))
(*.f64 (*.f64 3 y) x)
(*.f64 y (*.f64 3 x))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 3 (*.f64 y x)) z)
(fma.f64 x (*.f64 3 y) (neg.f64 z))
(-.f64 (*.f64 y (*.f64 3 x)) z)
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 3 (*.f64 y x)) z)
(fma.f64 x (*.f64 3 y) (neg.f64 z))
(-.f64 (*.f64 y (*.f64 3 x)) z)
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 3 (*.f64 y x)) z)
(fma.f64 x (*.f64 3 y) (neg.f64 z))
(-.f64 (*.f64 y (*.f64 3 x)) z)
(*.f64 3 (*.f64 y x))
(*.f64 (*.f64 3 y) x)
(*.f64 y (*.f64 3 x))
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 3 (*.f64 y x)) z)
(fma.f64 x (*.f64 3 y) (neg.f64 z))
(-.f64 (*.f64 y (*.f64 3 x)) z)
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 3 (*.f64 y x)) z)
(fma.f64 x (*.f64 3 y) (neg.f64 z))
(-.f64 (*.f64 y (*.f64 3 x)) z)
(+.f64 (*.f64 -1 z) (*.f64 3 (*.f64 y x)))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 3 (*.f64 y x)) z)
(fma.f64 x (*.f64 3 y) (neg.f64 z))
(-.f64 (*.f64 y (*.f64 3 x)) z)
(*.f64 -1 z)
(neg.f64 z)
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 3 (*.f64 y x)) z)
(fma.f64 x (*.f64 3 y) (neg.f64 z))
(-.f64 (*.f64 y (*.f64 3 x)) z)
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 3 (*.f64 y x)) z)
(fma.f64 x (*.f64 3 y) (neg.f64 z))
(-.f64 (*.f64 y (*.f64 3 x)) z)
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 3 (*.f64 y x)) z)
(fma.f64 x (*.f64 3 y) (neg.f64 z))
(-.f64 (*.f64 y (*.f64 3 x)) z)
(*.f64 -1 z)
(neg.f64 z)
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 3 (*.f64 y x)) z)
(fma.f64 x (*.f64 3 y) (neg.f64 z))
(-.f64 (*.f64 y (*.f64 3 x)) z)
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 3 (*.f64 y x)) z)
(fma.f64 x (*.f64 3 y) (neg.f64 z))
(-.f64 (*.f64 y (*.f64 3 x)) z)
(+.f64 (*.f64 3 (*.f64 y x)) (*.f64 -1 z))
(fma.f64 3 (*.f64 y x) (neg.f64 z))
(-.f64 (*.f64 3 (*.f64 y x)) z)
(fma.f64 x (*.f64 3 y) (neg.f64 z))
(-.f64 (*.f64 y (*.f64 3 x)) z)
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (*.f64 y y) (*.f64 x x))
(*.f64 x (*.f64 x (*.f64 y y)))
(*.f64 y (*.f64 y (*.f64 x x)))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (*.f64 y y) (*.f64 x x))
(*.f64 x (*.f64 x (*.f64 y y)))
(*.f64 y (*.f64 y (*.f64 x x)))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (*.f64 y y) (*.f64 x x))
(*.f64 x (*.f64 x (*.f64 y y)))
(*.f64 y (*.f64 y (*.f64 x x)))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (*.f64 y y) (*.f64 x x))
(*.f64 x (*.f64 x (*.f64 y y)))
(*.f64 y (*.f64 y (*.f64 x x)))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (*.f64 y y) (*.f64 x x))
(*.f64 x (*.f64 x (*.f64 y y)))
(*.f64 y (*.f64 y (*.f64 x x)))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (*.f64 y y) (*.f64 x x))
(*.f64 x (*.f64 x (*.f64 y y)))
(*.f64 y (*.f64 y (*.f64 x x)))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (*.f64 y y) (*.f64 x x))
(*.f64 x (*.f64 x (*.f64 y y)))
(*.f64 y (*.f64 y (*.f64 x x)))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (*.f64 y y) (*.f64 x x))
(*.f64 x (*.f64 x (*.f64 y y)))
(*.f64 y (*.f64 y (*.f64 x x)))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (*.f64 y y) (*.f64 x x))
(*.f64 x (*.f64 x (*.f64 y y)))
(*.f64 y (*.f64 y (*.f64 x x)))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (*.f64 y y) (*.f64 x x))
(*.f64 x (*.f64 x (*.f64 y y)))
(*.f64 y (*.f64 y (*.f64 x x)))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (*.f64 y y) (*.f64 x x))
(*.f64 x (*.f64 x (*.f64 y y)))
(*.f64 y (*.f64 y (*.f64 x x)))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (*.f64 y y) (*.f64 x x))
(*.f64 x (*.f64 x (*.f64 y y)))
(*.f64 y (*.f64 y (*.f64 x x)))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (*.f64 y y) (*.f64 x x))
(*.f64 x (*.f64 x (*.f64 y y)))
(*.f64 y (*.f64 y (*.f64 x x)))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (*.f64 y y) (*.f64 x x))
(*.f64 x (*.f64 x (*.f64 y y)))
(*.f64 y (*.f64 y (*.f64 x x)))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (*.f64 y y) (*.f64 x x))
(*.f64 x (*.f64 x (*.f64 y y)))
(*.f64 y (*.f64 y (*.f64 x x)))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (*.f64 y y) (*.f64 x x))
(*.f64 x (*.f64 x (*.f64 y y)))
(*.f64 y (*.f64 y (*.f64 x x)))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (*.f64 y y) (*.f64 x x))
(*.f64 x (*.f64 x (*.f64 y y)))
(*.f64 y (*.f64 y (*.f64 x x)))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (*.f64 y y) (*.f64 x x))
(*.f64 x (*.f64 x (*.f64 y y)))
(*.f64 y (*.f64 y (*.f64 x x)))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (*.f64 y y) (*.f64 x x))
(*.f64 x (*.f64 x (*.f64 y y)))
(*.f64 y (*.f64 y (*.f64 x x)))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (*.f64 y y) (*.f64 x x))
(*.f64 x (*.f64 x (*.f64 y y)))
(*.f64 y (*.f64 y (*.f64 x x)))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (*.f64 y y) (*.f64 x x))
(*.f64 x (*.f64 x (*.f64 y y)))
(*.f64 y (*.f64 y (*.f64 x x)))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (*.f64 y y) (*.f64 x x))
(*.f64 x (*.f64 x (*.f64 y y)))
(*.f64 y (*.f64 y (*.f64 x x)))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (*.f64 y y) (*.f64 x x))
(*.f64 x (*.f64 x (*.f64 y y)))
(*.f64 y (*.f64 y (*.f64 x x)))
(*.f64 (pow.f64 y 2) (pow.f64 x 2))
(*.f64 (*.f64 y y) (*.f64 x x))
(*.f64 x (*.f64 x (*.f64 y y)))
(*.f64 y (*.f64 y (*.f64 x x)))
(*.f64 -1 (pow.f64 z 2))
(neg.f64 (*.f64 z z))
(*.f64 z (neg.f64 z))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(fma.f64 -1 (*.f64 z z) (*.f64 (*.f64 9 (*.f64 y y)) (*.f64 x x)))
(-.f64 (*.f64 (*.f64 y y) (*.f64 (*.f64 x x) 9)) (*.f64 z z))
(fma.f64 (*.f64 x x) (*.f64 (*.f64 y y) 9) (*.f64 z (neg.f64 z)))
(-.f64 (*.f64 (*.f64 y x) (*.f64 (*.f64 y x) 9)) (*.f64 z z))
(neg.f64 (fma.f64 x (*.f64 (*.f64 y y) (*.f64 x -9)) (*.f64 z z)))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(fma.f64 -1 (*.f64 z z) (*.f64 (*.f64 9 (*.f64 y y)) (*.f64 x x)))
(-.f64 (*.f64 (*.f64 y y) (*.f64 (*.f64 x x) 9)) (*.f64 z z))
(fma.f64 (*.f64 x x) (*.f64 (*.f64 y y) 9) (*.f64 z (neg.f64 z)))
(-.f64 (*.f64 (*.f64 y x) (*.f64 (*.f64 y x) 9)) (*.f64 z z))
(neg.f64 (fma.f64 x (*.f64 (*.f64 y y) (*.f64 x -9)) (*.f64 z z)))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(fma.f64 -1 (*.f64 z z) (*.f64 (*.f64 9 (*.f64 y y)) (*.f64 x x)))
(-.f64 (*.f64 (*.f64 y y) (*.f64 (*.f64 x x) 9)) (*.f64 z z))
(fma.f64 (*.f64 x x) (*.f64 (*.f64 y y) 9) (*.f64 z (neg.f64 z)))
(-.f64 (*.f64 (*.f64 y x) (*.f64 (*.f64 y x) 9)) (*.f64 z z))
(neg.f64 (fma.f64 x (*.f64 (*.f64 y y) (*.f64 x -9)) (*.f64 z z)))
(*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2)))
(*.f64 (*.f64 9 (*.f64 y y)) (*.f64 x x))
(*.f64 (*.f64 y y) (*.f64 (*.f64 x x) 9))
(*.f64 x (*.f64 (*.f64 x (*.f64 y y)) 9))
(*.f64 (*.f64 y x) (*.f64 (*.f64 y x) 9))
(*.f64 (*.f64 x x) (*.f64 (*.f64 y y) 9))
(*.f64 x (*.f64 y (*.f64 x (*.f64 y 9))))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(fma.f64 -1 (*.f64 z z) (*.f64 (*.f64 9 (*.f64 y y)) (*.f64 x x)))
(-.f64 (*.f64 (*.f64 y y) (*.f64 (*.f64 x x) 9)) (*.f64 z z))
(fma.f64 (*.f64 x x) (*.f64 (*.f64 y y) 9) (*.f64 z (neg.f64 z)))
(-.f64 (*.f64 (*.f64 y x) (*.f64 (*.f64 y x) 9)) (*.f64 z z))
(neg.f64 (fma.f64 x (*.f64 (*.f64 y y) (*.f64 x -9)) (*.f64 z z)))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(fma.f64 -1 (*.f64 z z) (*.f64 (*.f64 9 (*.f64 y y)) (*.f64 x x)))
(-.f64 (*.f64 (*.f64 y y) (*.f64 (*.f64 x x) 9)) (*.f64 z z))
(fma.f64 (*.f64 x x) (*.f64 (*.f64 y y) 9) (*.f64 z (neg.f64 z)))
(-.f64 (*.f64 (*.f64 y x) (*.f64 (*.f64 y x) 9)) (*.f64 z z))
(neg.f64 (fma.f64 x (*.f64 (*.f64 y y) (*.f64 x -9)) (*.f64 z z)))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(fma.f64 -1 (*.f64 z z) (*.f64 (*.f64 9 (*.f64 y y)) (*.f64 x x)))
(-.f64 (*.f64 (*.f64 y y) (*.f64 (*.f64 x x) 9)) (*.f64 z z))
(fma.f64 (*.f64 x x) (*.f64 (*.f64 y y) 9) (*.f64 z (neg.f64 z)))
(-.f64 (*.f64 (*.f64 y x) (*.f64 (*.f64 y x) 9)) (*.f64 z z))
(neg.f64 (fma.f64 x (*.f64 (*.f64 y y) (*.f64 x -9)) (*.f64 z z)))
(*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2)))
(*.f64 (*.f64 9 (*.f64 y y)) (*.f64 x x))
(*.f64 (*.f64 y y) (*.f64 (*.f64 x x) 9))
(*.f64 x (*.f64 (*.f64 x (*.f64 y y)) 9))
(*.f64 (*.f64 y x) (*.f64 (*.f64 y x) 9))
(*.f64 (*.f64 x x) (*.f64 (*.f64 y y) 9))
(*.f64 x (*.f64 y (*.f64 x (*.f64 y 9))))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(fma.f64 -1 (*.f64 z z) (*.f64 (*.f64 9 (*.f64 y y)) (*.f64 x x)))
(-.f64 (*.f64 (*.f64 y y) (*.f64 (*.f64 x x) 9)) (*.f64 z z))
(fma.f64 (*.f64 x x) (*.f64 (*.f64 y y) 9) (*.f64 z (neg.f64 z)))
(-.f64 (*.f64 (*.f64 y x) (*.f64 (*.f64 y x) 9)) (*.f64 z z))
(neg.f64 (fma.f64 x (*.f64 (*.f64 y y) (*.f64 x -9)) (*.f64 z z)))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(fma.f64 -1 (*.f64 z z) (*.f64 (*.f64 9 (*.f64 y y)) (*.f64 x x)))
(-.f64 (*.f64 (*.f64 y y) (*.f64 (*.f64 x x) 9)) (*.f64 z z))
(fma.f64 (*.f64 x x) (*.f64 (*.f64 y y) 9) (*.f64 z (neg.f64 z)))
(-.f64 (*.f64 (*.f64 y x) (*.f64 (*.f64 y x) 9)) (*.f64 z z))
(neg.f64 (fma.f64 x (*.f64 (*.f64 y y) (*.f64 x -9)) (*.f64 z z)))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(fma.f64 -1 (*.f64 z z) (*.f64 (*.f64 9 (*.f64 y y)) (*.f64 x x)))
(-.f64 (*.f64 (*.f64 y y) (*.f64 (*.f64 x x) 9)) (*.f64 z z))
(fma.f64 (*.f64 x x) (*.f64 (*.f64 y y) 9) (*.f64 z (neg.f64 z)))
(-.f64 (*.f64 (*.f64 y x) (*.f64 (*.f64 y x) 9)) (*.f64 z z))
(neg.f64 (fma.f64 x (*.f64 (*.f64 y y) (*.f64 x -9)) (*.f64 z z)))
(*.f64 -1 (pow.f64 z 2))
(neg.f64 (*.f64 z z))
(*.f64 z (neg.f64 z))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(fma.f64 -1 (*.f64 z z) (*.f64 (*.f64 9 (*.f64 y y)) (*.f64 x x)))
(-.f64 (*.f64 (*.f64 y y) (*.f64 (*.f64 x x) 9)) (*.f64 z z))
(fma.f64 (*.f64 x x) (*.f64 (*.f64 y y) 9) (*.f64 z (neg.f64 z)))
(-.f64 (*.f64 (*.f64 y x) (*.f64 (*.f64 y x) 9)) (*.f64 z z))
(neg.f64 (fma.f64 x (*.f64 (*.f64 y y) (*.f64 x -9)) (*.f64 z z)))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(fma.f64 -1 (*.f64 z z) (*.f64 (*.f64 9 (*.f64 y y)) (*.f64 x x)))
(-.f64 (*.f64 (*.f64 y y) (*.f64 (*.f64 x x) 9)) (*.f64 z z))
(fma.f64 (*.f64 x x) (*.f64 (*.f64 y y) 9) (*.f64 z (neg.f64 z)))
(-.f64 (*.f64 (*.f64 y x) (*.f64 (*.f64 y x) 9)) (*.f64 z z))
(neg.f64 (fma.f64 x (*.f64 (*.f64 y y) (*.f64 x -9)) (*.f64 z z)))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(fma.f64 -1 (*.f64 z z) (*.f64 (*.f64 9 (*.f64 y y)) (*.f64 x x)))
(-.f64 (*.f64 (*.f64 y y) (*.f64 (*.f64 x x) 9)) (*.f64 z z))
(fma.f64 (*.f64 x x) (*.f64 (*.f64 y y) 9) (*.f64 z (neg.f64 z)))
(-.f64 (*.f64 (*.f64 y x) (*.f64 (*.f64 y x) 9)) (*.f64 z z))
(neg.f64 (fma.f64 x (*.f64 (*.f64 y y) (*.f64 x -9)) (*.f64 z z)))
(*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2)))
(*.f64 (*.f64 9 (*.f64 y y)) (*.f64 x x))
(*.f64 (*.f64 y y) (*.f64 (*.f64 x x) 9))
(*.f64 x (*.f64 (*.f64 x (*.f64 y y)) 9))
(*.f64 (*.f64 y x) (*.f64 (*.f64 y x) 9))
(*.f64 (*.f64 x x) (*.f64 (*.f64 y y) 9))
(*.f64 x (*.f64 y (*.f64 x (*.f64 y 9))))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(fma.f64 -1 (*.f64 z z) (*.f64 (*.f64 9 (*.f64 y y)) (*.f64 x x)))
(-.f64 (*.f64 (*.f64 y y) (*.f64 (*.f64 x x) 9)) (*.f64 z z))
(fma.f64 (*.f64 x x) (*.f64 (*.f64 y y) 9) (*.f64 z (neg.f64 z)))
(-.f64 (*.f64 (*.f64 y x) (*.f64 (*.f64 y x) 9)) (*.f64 z z))
(neg.f64 (fma.f64 x (*.f64 (*.f64 y y) (*.f64 x -9)) (*.f64 z z)))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(fma.f64 -1 (*.f64 z z) (*.f64 (*.f64 9 (*.f64 y y)) (*.f64 x x)))
(-.f64 (*.f64 (*.f64 y y) (*.f64 (*.f64 x x) 9)) (*.f64 z z))
(fma.f64 (*.f64 x x) (*.f64 (*.f64 y y) 9) (*.f64 z (neg.f64 z)))
(-.f64 (*.f64 (*.f64 y x) (*.f64 (*.f64 y x) 9)) (*.f64 z z))
(neg.f64 (fma.f64 x (*.f64 (*.f64 y y) (*.f64 x -9)) (*.f64 z z)))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(fma.f64 -1 (*.f64 z z) (*.f64 (*.f64 9 (*.f64 y y)) (*.f64 x x)))
(-.f64 (*.f64 (*.f64 y y) (*.f64 (*.f64 x x) 9)) (*.f64 z z))
(fma.f64 (*.f64 x x) (*.f64 (*.f64 y y) 9) (*.f64 z (neg.f64 z)))
(-.f64 (*.f64 (*.f64 y x) (*.f64 (*.f64 y x) 9)) (*.f64 z z))
(neg.f64 (fma.f64 x (*.f64 (*.f64 y y) (*.f64 x -9)) (*.f64 z z)))
(*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2)))
(*.f64 (*.f64 9 (*.f64 y y)) (*.f64 x x))
(*.f64 (*.f64 y y) (*.f64 (*.f64 x x) 9))
(*.f64 x (*.f64 (*.f64 x (*.f64 y y)) 9))
(*.f64 (*.f64 y x) (*.f64 (*.f64 y x) 9))
(*.f64 (*.f64 x x) (*.f64 (*.f64 y y) 9))
(*.f64 x (*.f64 y (*.f64 x (*.f64 y 9))))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(fma.f64 -1 (*.f64 z z) (*.f64 (*.f64 9 (*.f64 y y)) (*.f64 x x)))
(-.f64 (*.f64 (*.f64 y y) (*.f64 (*.f64 x x) 9)) (*.f64 z z))
(fma.f64 (*.f64 x x) (*.f64 (*.f64 y y) 9) (*.f64 z (neg.f64 z)))
(-.f64 (*.f64 (*.f64 y x) (*.f64 (*.f64 y x) 9)) (*.f64 z z))
(neg.f64 (fma.f64 x (*.f64 (*.f64 y y) (*.f64 x -9)) (*.f64 z z)))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(fma.f64 -1 (*.f64 z z) (*.f64 (*.f64 9 (*.f64 y y)) (*.f64 x x)))
(-.f64 (*.f64 (*.f64 y y) (*.f64 (*.f64 x x) 9)) (*.f64 z z))
(fma.f64 (*.f64 x x) (*.f64 (*.f64 y y) 9) (*.f64 z (neg.f64 z)))
(-.f64 (*.f64 (*.f64 y x) (*.f64 (*.f64 y x) 9)) (*.f64 z z))
(neg.f64 (fma.f64 x (*.f64 (*.f64 y y) (*.f64 x -9)) (*.f64 z z)))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(fma.f64 -1 (*.f64 z z) (*.f64 (*.f64 9 (*.f64 y y)) (*.f64 x x)))
(-.f64 (*.f64 (*.f64 y y) (*.f64 (*.f64 x x) 9)) (*.f64 z z))
(fma.f64 (*.f64 x x) (*.f64 (*.f64 y y) 9) (*.f64 z (neg.f64 z)))
(-.f64 (*.f64 (*.f64 y x) (*.f64 (*.f64 y x) 9)) (*.f64 z z))
(neg.f64 (fma.f64 x (*.f64 (*.f64 y y) (*.f64 x -9)) (*.f64 z z)))
(*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2)))
(*.f64 (*.f64 9 (*.f64 y y)) (*.f64 x x))
(*.f64 (*.f64 y y) (*.f64 (*.f64 x x) 9))
(*.f64 x (*.f64 (*.f64 x (*.f64 y y)) 9))
(*.f64 (*.f64 y x) (*.f64 (*.f64 y x) 9))
(*.f64 (*.f64 x x) (*.f64 (*.f64 y y) 9))
(*.f64 x (*.f64 y (*.f64 x (*.f64 y 9))))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(fma.f64 -1 (*.f64 z z) (*.f64 (*.f64 9 (*.f64 y y)) (*.f64 x x)))
(-.f64 (*.f64 (*.f64 y y) (*.f64 (*.f64 x x) 9)) (*.f64 z z))
(fma.f64 (*.f64 x x) (*.f64 (*.f64 y y) 9) (*.f64 z (neg.f64 z)))
(-.f64 (*.f64 (*.f64 y x) (*.f64 (*.f64 y x) 9)) (*.f64 z z))
(neg.f64 (fma.f64 x (*.f64 (*.f64 y y) (*.f64 x -9)) (*.f64 z z)))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(fma.f64 -1 (*.f64 z z) (*.f64 (*.f64 9 (*.f64 y y)) (*.f64 x x)))
(-.f64 (*.f64 (*.f64 y y) (*.f64 (*.f64 x x) 9)) (*.f64 z z))
(fma.f64 (*.f64 x x) (*.f64 (*.f64 y y) 9) (*.f64 z (neg.f64 z)))
(-.f64 (*.f64 (*.f64 y x) (*.f64 (*.f64 y x) 9)) (*.f64 z z))
(neg.f64 (fma.f64 x (*.f64 (*.f64 y y) (*.f64 x -9)) (*.f64 z z)))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(fma.f64 -1 (*.f64 z z) (*.f64 (*.f64 9 (*.f64 y y)) (*.f64 x x)))
(-.f64 (*.f64 (*.f64 y y) (*.f64 (*.f64 x x) 9)) (*.f64 z z))
(fma.f64 (*.f64 x x) (*.f64 (*.f64 y y) 9) (*.f64 z (neg.f64 z)))
(-.f64 (*.f64 (*.f64 y x) (*.f64 (*.f64 y x) 9)) (*.f64 z z))
(neg.f64 (fma.f64 x (*.f64 (*.f64 y y) (*.f64 x -9)) (*.f64 z z)))
(*.f64 -1 (pow.f64 z 2))
(neg.f64 (*.f64 z z))
(*.f64 z (neg.f64 z))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(fma.f64 -1 (*.f64 z z) (*.f64 (*.f64 9 (*.f64 y y)) (*.f64 x x)))
(-.f64 (*.f64 (*.f64 y y) (*.f64 (*.f64 x x) 9)) (*.f64 z z))
(fma.f64 (*.f64 x x) (*.f64 (*.f64 y y) 9) (*.f64 z (neg.f64 z)))
(-.f64 (*.f64 (*.f64 y x) (*.f64 (*.f64 y x) 9)) (*.f64 z z))
(neg.f64 (fma.f64 x (*.f64 (*.f64 y y) (*.f64 x -9)) (*.f64 z z)))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(fma.f64 -1 (*.f64 z z) (*.f64 (*.f64 9 (*.f64 y y)) (*.f64 x x)))
(-.f64 (*.f64 (*.f64 y y) (*.f64 (*.f64 x x) 9)) (*.f64 z z))
(fma.f64 (*.f64 x x) (*.f64 (*.f64 y y) 9) (*.f64 z (neg.f64 z)))
(-.f64 (*.f64 (*.f64 y x) (*.f64 (*.f64 y x) 9)) (*.f64 z z))
(neg.f64 (fma.f64 x (*.f64 (*.f64 y y) (*.f64 x -9)) (*.f64 z z)))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(fma.f64 -1 (*.f64 z z) (*.f64 (*.f64 9 (*.f64 y y)) (*.f64 x x)))
(-.f64 (*.f64 (*.f64 y y) (*.f64 (*.f64 x x) 9)) (*.f64 z z))
(fma.f64 (*.f64 x x) (*.f64 (*.f64 y y) 9) (*.f64 z (neg.f64 z)))
(-.f64 (*.f64 (*.f64 y x) (*.f64 (*.f64 y x) 9)) (*.f64 z z))
(neg.f64 (fma.f64 x (*.f64 (*.f64 y y) (*.f64 x -9)) (*.f64 z z)))
(*.f64 -1 (pow.f64 z 2))
(neg.f64 (*.f64 z z))
(*.f64 z (neg.f64 z))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(fma.f64 -1 (*.f64 z z) (*.f64 (*.f64 9 (*.f64 y y)) (*.f64 x x)))
(-.f64 (*.f64 (*.f64 y y) (*.f64 (*.f64 x x) 9)) (*.f64 z z))
(fma.f64 (*.f64 x x) (*.f64 (*.f64 y y) 9) (*.f64 z (neg.f64 z)))
(-.f64 (*.f64 (*.f64 y x) (*.f64 (*.f64 y x) 9)) (*.f64 z z))
(neg.f64 (fma.f64 x (*.f64 (*.f64 y y) (*.f64 x -9)) (*.f64 z z)))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(fma.f64 -1 (*.f64 z z) (*.f64 (*.f64 9 (*.f64 y y)) (*.f64 x x)))
(-.f64 (*.f64 (*.f64 y y) (*.f64 (*.f64 x x) 9)) (*.f64 z z))
(fma.f64 (*.f64 x x) (*.f64 (*.f64 y y) 9) (*.f64 z (neg.f64 z)))
(-.f64 (*.f64 (*.f64 y x) (*.f64 (*.f64 y x) 9)) (*.f64 z z))
(neg.f64 (fma.f64 x (*.f64 (*.f64 y y) (*.f64 x -9)) (*.f64 z z)))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (*.f64 9 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(fma.f64 -1 (*.f64 z z) (*.f64 (*.f64 9 (*.f64 y y)) (*.f64 x x)))
(-.f64 (*.f64 (*.f64 y y) (*.f64 (*.f64 x x) 9)) (*.f64 z z))
(fma.f64 (*.f64 x x) (*.f64 (*.f64 y y) 9) (*.f64 z (neg.f64 z)))
(-.f64 (*.f64 (*.f64 y x) (*.f64 (*.f64 y x) 9)) (*.f64 z z))
(neg.f64 (fma.f64 x (*.f64 (*.f64 y y) (*.f64 x -9)) (*.f64 z z)))

eval415.0ms (6.9%)

Compiler

Compiled 16030 to 8209 computations (48.8% saved)

prune117.0ms (2%)

Pruning

10 alts after pruning (1 fresh and 9 done)

PrunedKeptTotal
New6651666
Fresh000
Picked011
Done2810
Total66710677
Error
0b
Counts
677 → 10
Alt Table
Click to see full alt table
StatusErrorProgram
0.1b
(neg.f64 (fma.f64 -3 (*.f64 y x) z))
32.0b
(*.f64 (*.f64 x y) (*.f64 (*.f64 x (*.f64 9 y)) (/.f64 1 (fma.f64 x (*.f64 y 3) z))))
31.8b
(*.f64 3 (*.f64 y x))
0.2b
(-.f64 (*.f64 3 (*.f64 y x)) z)
29.4b
(/.f64 (-.f64 (*.f64 (*.f64 y (*.f64 x (*.f64 y x))) 9) (*.f64 (neg.f64 z) (neg.f64 z))) (-.f64 (*.f64 3 (*.f64 y x)) (neg.f64 z)))
49.3b
(/.f64 (*.f64 x (*.f64 y (*.f64 y (*.f64 x 9)))) (-.f64 (*.f64 3 (*.f64 y x)) (neg.f64 z)))
31.7b
(*.f64 x (*.f64 3 y))
31.3b
(neg.f64 z)
31.7b
(*.f64 y (*.f64 3 x))
0.1b
(-.f64 (*.f64 (*.f64 x 3) y) z)
Compiler

Compiled 128 to 86 computations (32.8% saved)

regimes56.0ms (0.9%)

Counts
10 → 1
Calls
Call 1
Inputs
(neg.f64 z)
(*.f64 y (*.f64 3 x))
(*.f64 x (*.f64 3 y))
(*.f64 3 (*.f64 y x))
(-.f64 (*.f64 (*.f64 x 3) y) z)
(-.f64 (*.f64 3 (*.f64 y x)) z)
(/.f64 (*.f64 x (*.f64 y (*.f64 y (*.f64 x 9)))) (-.f64 (*.f64 3 (*.f64 y x)) (neg.f64 z)))
(/.f64 (-.f64 (*.f64 (*.f64 y (*.f64 x (*.f64 y x))) 9) (*.f64 (neg.f64 z) (neg.f64 z))) (-.f64 (*.f64 3 (*.f64 y x)) (neg.f64 z)))
(neg.f64 (fma.f64 -3 (*.f64 y x) z))
(*.f64 (*.f64 x y) (*.f64 (*.f64 x (*.f64 9 y)) (/.f64 1 (fma.f64 x (*.f64 y 3) z))))
Outputs
(-.f64 (*.f64 (*.f64 x 3) y) z)
Calls

6 calls:

13.0ms
x
9.0ms
z
7.0ms
(*.f64 x 3)
7.0ms
(-.f64 (*.f64 (*.f64 x 3) y) z)
7.0ms
y
Results
ErrorSegmentsBranch
0.1b1x
0.1b1y
0.1b1z
0.1b1(-.f64 (*.f64 (*.f64 x 3) y) z)
0.1b1(*.f64 (*.f64 x 3) y)
0.1b1(*.f64 x 3)
Compiler

Compiled 137 to 80 computations (41.6% saved)

regimes116.0ms (1.9%)

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

3 calls:

67.0ms
x
27.0ms
y
20.0ms
z
Results
ErrorSegmentsBranch
17.4b7x
15.2b5y
13.7b5z
Compiler

Compiled 32 to 22 computations (31.3% saved)

bsearch79.0ms (1.3%)

Algorithm
binary-search
Steps
TimeLeftRight
19.0ms
3.324848705351641e+19
4.393994044202961e+20
21.0ms
3.765721664657249e-5
0.00019915806568486099
20.0ms
2.5186684998968883e-87
1.763585199885564e-85
19.0ms
-13881.95765534277
-2199.3042225334407
Compiler

Compiled 16 to 12 computations (25% saved)

regimes127.0ms (2.1%)

Accuracy

Total -48.0b remaining (-350.2%)

Threshold costs -48.0b (-350.2%)

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

3 calls:

55.0ms
x
54.0ms
y
18.0ms
z
Results
ErrorSegmentsBranch
17.4b7x
15.2b5y
13.7b5z
Compiler

Compiled 22 to 16 computations (27.3% saved)

bsearch143.0ms (2.4%)

Algorithm
binary-search
Steps
TimeLeftRight
18.0ms
3.324848705351641e+19
4.393994044202961e+20
18.0ms
3.765721664657249e-5
0.00019915806568486099
44.0ms
2.5186684998968883e-87
1.763585199885564e-85
62.0ms
-13881.95765534277
-2199.3042225334407
Compiler

Compiled 16 to 12 computations (25% saved)

simplify5.0ms (0.1%)

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
028107
139107
242107
343107
Stop Event
saturated
Calls
Call 1
Inputs
(-.f64 (*.f64 (*.f64 x 3) y) z)
(if (<=.f64 z -7631686929171717/549755813888) (neg.f64 z) (if (<=.f64 z 5641174529932913/2239744742177804210557442280568444278121645497234649534899989100963791871180160945380877493271607115776) (*.f64 x (*.f64 3 y)) (if (<=.f64 z 2778612152030231/73786976294838206464) (neg.f64 z) (if (<=.f64 z 34863565560628024054906880/1048576) (*.f64 y (*.f64 3 x)) (neg.f64 z)))))
(if (<=.f64 z -7631686929171717/549755813888) (neg.f64 z) (if (<=.f64 z 5641174529932913/2239744742177804210557442280568444278121645497234649534899989100963791871180160945380877493271607115776) (*.f64 y (*.f64 3 x)) (if (<=.f64 z 2778612152030231/73786976294838206464) (neg.f64 z) (if (<=.f64 z 34863565560628024054906880/1048576) (*.f64 y (*.f64 3 x)) (neg.f64 z)))))
(neg.f64 z)
Outputs
(-.f64 (*.f64 (*.f64 x 3) y) z)
(if (<=.f64 z -7631686929171717/549755813888) (neg.f64 z) (if (<=.f64 z 5641174529932913/2239744742177804210557442280568444278121645497234649534899989100963791871180160945380877493271607115776) (*.f64 x (*.f64 3 y)) (if (<=.f64 z 2778612152030231/73786976294838206464) (neg.f64 z) (if (<=.f64 z 34863565560628024054906880/1048576) (*.f64 y (*.f64 3 x)) (neg.f64 z)))))
(if (<=.f64 z -7631686929171717/549755813888) (neg.f64 z) (if (<=.f64 z 5641174529932913/2239744742177804210557442280568444278121645497234649534899989100963791871180160945380877493271607115776) (*.f64 x (*.f64 3 y)) (if (<=.f64 z 2778612152030231/73786976294838206464) (neg.f64 z) (if (<=.f64 z 33248487053516410880) (*.f64 (*.f64 x 3) y) (neg.f64 z)))))
(if (<=.f64 z -7631686929171717/549755813888) (neg.f64 z) (if (<=.f64 z 5641174529932913/2239744742177804210557442280568444278121645497234649534899989100963791871180160945380877493271607115776) (*.f64 y (*.f64 3 x)) (if (<=.f64 z 2778612152030231/73786976294838206464) (neg.f64 z) (if (<=.f64 z 34863565560628024054906880/1048576) (*.f64 y (*.f64 3 x)) (neg.f64 z)))))
(if (<=.f64 z -7631686929171717/549755813888) (neg.f64 z) (if (<=.f64 z 5641174529932913/2239744742177804210557442280568444278121645497234649534899989100963791871180160945380877493271607115776) (*.f64 (*.f64 x 3) y) (if (<=.f64 z 2778612152030231/73786976294838206464) (neg.f64 z) (if (<=.f64 z 33248487053516410880) (*.f64 (*.f64 x 3) y) (neg.f64 z)))))
(neg.f64 z)

end60.0ms (1%)

Stop Event
fuel
Compiler

Compiled 181 to 113 computations (37.6% saved)

Profiling

Loading profile data...