Details

Time bar (total: 14.6s)

analyze355.0ms (2.4%)

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
28.1%71.8%0.1%9
34.3%59.3%6.4%10
40.6%51.3%8.1%11
48%43.2%8.8%12
Compiler

Compiled 17 to 13 computations (23.5% saved)

sample2.2s (15.3%)

Results
1.5s7727×body256valid
518.0ms1288×body256invalid
126.0ms262×body1024valid
69.0ms267×body512valid

preprocess80.0ms (0.6%)

Algorithm
egg-herbie
Rules
928×unsub-neg_binary64
767×fma-neg_binary64
566×distribute-rgt-in_binary64
455×distribute-lft-in_binary64
341×associate-+r+_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02864
15756
216456
367648
4219348
5548948
033
Stop Event
saturated
node limit
Calls
Call 1
Inputs
0
1
2
Outputs
0
1
2
Call 2
Inputs
(+.f64 x (*.f64 (*.f64 (-.f64 y x) 6) (-.f64 (/.f64 2 3) z)))
(+.f64 y (*.f64 (*.f64 (-.f64 x y) 6) (-.f64 (/.f64 2 3) z)))
(+.f64 z (*.f64 (*.f64 (-.f64 y z) 6) (-.f64 (/.f64 2 3) x)))
(+.f64 x (*.f64 (*.f64 (-.f64 z x) 6) (-.f64 (/.f64 2 3) y)))
Outputs
(+.f64 x (*.f64 (*.f64 (-.f64 y x) 6) (-.f64 (/.f64 2 3) z)))
(+.f64 x (*.f64 (*.f64 (-.f64 y x) 6) (-.f64 2/3 z)))
(fma.f64 (*.f64 (-.f64 y x) 6) (-.f64 2/3 z) x)
(fma.f64 (-.f64 y x) (+.f64 4 (*.f64 -6 z)) x)
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(+.f64 y (*.f64 (*.f64 (-.f64 x y) 6) (-.f64 (/.f64 2 3) z)))
(+.f64 y (*.f64 (-.f64 2/3 z) (*.f64 6 (-.f64 x y))))
(fma.f64 (-.f64 2/3 z) (*.f64 6 (-.f64 x y)) y)
(fma.f64 6 (*.f64 (-.f64 2/3 z) (-.f64 x y)) y)
(fma.f64 (-.f64 x y) (fma.f64 -6 z 4) y)
(+.f64 z (*.f64 (*.f64 (-.f64 y z) 6) (-.f64 (/.f64 2 3) x)))
(+.f64 z (*.f64 (-.f64 y z) (*.f64 6 (-.f64 2/3 x))))
(fma.f64 (*.f64 6 (-.f64 y z)) (-.f64 2/3 x) z)
(fma.f64 (-.f64 y z) (*.f64 6 (-.f64 2/3 x)) z)
(fma.f64 (-.f64 y z) (fma.f64 -6 x 4) z)
(+.f64 x (*.f64 (*.f64 (-.f64 z x) 6) (-.f64 (/.f64 2 3) y)))
(+.f64 x (*.f64 (*.f64 6 (-.f64 z x)) (-.f64 2/3 y)))
(fma.f64 (*.f64 6 (-.f64 z x)) (-.f64 2/3 y) x)
(fma.f64 6 (*.f64 (-.f64 z x) (-.f64 2/3 y)) x)
(fma.f64 (-.f64 z x) (fma.f64 -6 y 4) x)
Compiler

Compiled 19 to 15 computations (21.1% saved)

simplify302.0ms (2.1%)

Algorithm
egg-herbie
Rules
5304×fma-neg_binary64
682×unsub-neg_binary64
376×fma-def_binary64
347×sub-neg_binary64
287×distribute-rgt-in_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01416
12314
26014
320212
463412
5199612
6401712
7583512
8651812
9678612
10685012
11686912
12687312
13687312
14687312
15715512
16720612
17720612
Stop Event
node limit
Counts
1 → 2
Calls
Call 1
Inputs
(+.f64 x (*.f64 (*.f64 (-.f64 y x) 6) (-.f64 (/.f64 2 3) z)))
Outputs
(+.f64 x (*.f64 (*.f64 (-.f64 y x) 6) (-.f64 (/.f64 2 3) z)))
(+.f64 x (*.f64 (-.f64 y x) (*.f64 6 (-.f64 2/3 z))))
(fma.f64 (-.f64 y x) (*.f64 6 (-.f64 2/3 z)) x)
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(fma.f64 (-.f64 y x) (fma.f64 z -6 4) x)

eval1.0ms (0%)

Compiler

Compiled 25 to 16 computations (36% 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.4b
(+.f64 x (*.f64 (*.f64 (-.f64 y x) 6) (-.f64 (/.f64 2 3) z)))
0.2b
(fma.f64 (-.f64 y x) (fma.f64 z -6 4) x)
Compiler

Compiled 28 to 20 computations (28.6% saved)

localize22.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(-.f64 (/.f64 2 3) z)
0.0b
(*.f64 (-.f64 y x) 6)
0.0b
(+.f64 x (*.f64 (*.f64 (-.f64 y x) 6) (-.f64 (/.f64 2 3) z)))
0.3b
(*.f64 (*.f64 (-.f64 y x) 6) (-.f64 (/.f64 2 3) z))
Compiler

Compiled 49 to 31 computations (36.7% saved)

series18.0ms (0.1%)

Counts
4 → 108
Calls

27 calls:

TimeVariablePointExpression
5.0ms
z
@-inf
(-.f64 (/.f64 2 3) z)
1.0ms
z
@inf
(*.f64 (*.f64 (-.f64 y x) 6) (-.f64 (/.f64 2 3) z))
1.0ms
y
@0
(*.f64 (*.f64 (-.f64 y x) 6) (-.f64 (/.f64 2 3) z))
1.0ms
x
@0
(*.f64 (*.f64 (-.f64 y x) 6) (-.f64 (/.f64 2 3) z))
1.0ms
y
@inf
(*.f64 (*.f64 (-.f64 y x) 6) (-.f64 (/.f64 2 3) z))

rewrite97.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
647×log-prod_binary64
447×fma-def_binary64
380×pow2_binary64
263×expm1-udef_binary64
263×log1p-udef_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01440
129538
2392238
Stop Event
node limit
Counts
4 → 156
Calls
Call 1
Inputs
(*.f64 (*.f64 (-.f64 y x) 6) (-.f64 (/.f64 2 3) z))
(+.f64 x (*.f64 (*.f64 (-.f64 y x) 6) (-.f64 (/.f64 2 3) z)))
(*.f64 (-.f64 y x) 6)
(-.f64 (/.f64 2 3) z)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 6 (*.f64 (-.f64 y x) (-.f64 2/3 z))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 2/3 (*.f64 (-.f64 y x) 6)) (*.f64 (neg.f64 z) (*.f64 (-.f64 y x) 6)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (-.f64 y x) 6) 2/3) (*.f64 (*.f64 (-.f64 y x) 6) (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (-.f64 2/3 z)) (*.f64 (-.f64 y x) 6))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (-.f64 2/3 z)) (*.f64 (-.f64 y x) 6)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (-.f64 2/3 z)) (*.f64 (-.f64 y x) 6)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (-.f64 2/3 z)) (*.f64 (-.f64 y x) 6)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 6 (*.f64 (-.f64 y x) (-.f64 2/3 z))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 y 3) (pow.f64 x 3)) (*.f64 6 (-.f64 2/3 z))) (fma.f64 x (+.f64 y x) (*.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (*.f64 6 (-.f64 2/3 z))) (+.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 8/27 (pow.f64 z 3)) (*.f64 (-.f64 y x) 6)) (fma.f64 z (+.f64 2/3 z) 4/9))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 4/9 (*.f64 z z)) (*.f64 (-.f64 y x) 6)) (+.f64 2/3 z))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (-.f64 y x) 6) (-.f64 8/27 (pow.f64 z 3))) (fma.f64 z (+.f64 2/3 z) 4/9))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (-.f64 y x) 6) (-.f64 4/9 (*.f64 z z))) (+.f64 2/3 z))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 6 (*.f64 (-.f64 y x) (-.f64 2/3 z))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 6 (*.f64 (-.f64 y x) (-.f64 2/3 z)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 6 (*.f64 (-.f64 y x) (-.f64 2/3 z)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 6 (*.f64 (-.f64 y x) (-.f64 2/3 z))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 6 (*.f64 (-.f64 y x) (-.f64 2/3 z))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (-.f64 2/3 z)) (*.f64 (-.f64 y x) 6)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 6 (*.f64 (-.f64 y x) (-.f64 2/3 z))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 6 (*.f64 (-.f64 y x) (-.f64 2/3 z))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 6 (*.f64 (-.f64 y x) (-.f64 2/3 z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 6 (*.f64 (-.f64 y x) (-.f64 2/3 z)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 6 (*.f64 (-.f64 y x) (-.f64 2/3 z)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 6 (*.f64 (-.f64 y x) (-.f64 2/3 z)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 y x) 6) 2/3 (*.f64 (*.f64 (-.f64 y x) 6) (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 2/3 (*.f64 (-.f64 y x) 6) (*.f64 (neg.f64 z) (*.f64 (-.f64 y x) 6)))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 (*.f64 (-.f64 y x) 6) (-.f64 2/3 z) x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 x x) (-.f64 x (*.f64 6 (*.f64 (-.f64 y x) (-.f64 2/3 z))))) (/.f64 (pow.f64 (*.f64 6 (*.f64 (-.f64 y x) (-.f64 2/3 z))) 2) (-.f64 x (*.f64 6 (*.f64 (-.f64 y x) (-.f64 2/3 z))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (*.f64 (-.f64 y x) 6) (-.f64 2/3 z) x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 (*.f64 (-.f64 y x) 6) (-.f64 2/3 z) x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 (*.f64 (-.f64 y x) 6) (-.f64 2/3 z) x)) (cbrt.f64 (pow.f64 (fma.f64 (*.f64 (-.f64 y x) 6) (-.f64 2/3 z) x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (fma.f64 (*.f64 (-.f64 y x) 6) (-.f64 2/3 z) x) 2)) (cbrt.f64 (fma.f64 (*.f64 (-.f64 y x) 6) (-.f64 2/3 z) x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 (*.f64 (-.f64 y x) 6) (-.f64 2/3 z) x)) (sqrt.f64 (fma.f64 (*.f64 (-.f64 y x) 6) (-.f64 2/3 z) x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 x 3) (pow.f64 (*.f64 6 (*.f64 (-.f64 y x) (-.f64 2/3 z))) 3)) (/.f64 1 (fma.f64 (*.f64 6 (*.f64 (-.f64 y x) (-.f64 2/3 z))) (fma.f64 (*.f64 (-.f64 y x) 6) (-.f64 2/3 z) (neg.f64 x)) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 6 (*.f64 (-.f64 y x) (-.f64 2/3 z))) 2)) (/.f64 1 (-.f64 x (*.f64 6 (*.f64 (-.f64 y x) (-.f64 2/3 z))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (*.f64 6 (*.f64 (-.f64 y x) (-.f64 2/3 z))) (fma.f64 (*.f64 (-.f64 y x) 6) (-.f64 2/3 z) (neg.f64 x)) (*.f64 x x)) (+.f64 (pow.f64 x 3) (pow.f64 (*.f64 6 (*.f64 (-.f64 y x) (-.f64 2/3 z))) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 x (*.f64 6 (*.f64 (-.f64 y x) (-.f64 2/3 z)))) (-.f64 (*.f64 x x) (pow.f64 (*.f64 6 (*.f64 (-.f64 y x) (-.f64 2/3 z))) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 x 3) (pow.f64 (*.f64 6 (*.f64 (-.f64 y x) (-.f64 2/3 z))) 3)) (fma.f64 (*.f64 6 (*.f64 (-.f64 y x) (-.f64 2/3 z))) (fma.f64 (*.f64 (-.f64 y x) 6) (-.f64 2/3 z) (neg.f64 x)) (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 x 3) (pow.f64 (*.f64 6 (*.f64 (-.f64 y x) (-.f64 2/3 z))) 3)) (+.f64 (pow.f64 (*.f64 6 (*.f64 (-.f64 y x) (-.f64 2/3 z))) 2) (-.f64 (*.f64 x x) (*.f64 (*.f64 x (*.f64 (-.f64 y x) 6)) (-.f64 2/3 z)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 6 (*.f64 (-.f64 y x) (-.f64 2/3 z))) 2)) (-.f64 x (*.f64 6 (*.f64 (-.f64 y x) (-.f64 2/3 z)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 x 3) (pow.f64 (*.f64 6 (*.f64 (-.f64 y x) (-.f64 2/3 z))) 3))) (neg.f64 (fma.f64 (*.f64 6 (*.f64 (-.f64 y x) (-.f64 2/3 z))) (fma.f64 (*.f64 (-.f64 y x) 6) (-.f64 2/3 z) (neg.f64 x)) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 6 (*.f64 (-.f64 y x) (-.f64 2/3 z))) 2))) (neg.f64 (-.f64 x (*.f64 6 (*.f64 (-.f64 y x) (-.f64 2/3 z))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 6 (*.f64 (-.f64 y x) (-.f64 2/3 z))) 2) (*.f64 x x)) (fma.f64 (*.f64 (-.f64 y x) 6) (-.f64 2/3 z) (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 (*.f64 (-.f64 y x) 6) (-.f64 2/3 z) x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (*.f64 (-.f64 y x) 6) (-.f64 2/3 z) x) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 (*.f64 (-.f64 y x) 6) (-.f64 2/3 z) x)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 (*.f64 (-.f64 y x) 6) (-.f64 2/3 z) x)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 (*.f64 6 (*.f64 (-.f64 y x) (-.f64 2/3 z))) (fma.f64 (*.f64 (-.f64 y x) 6) (-.f64 2/3 z) (neg.f64 x)) (*.f64 x x)) (+.f64 (pow.f64 x 3) (pow.f64 (*.f64 6 (*.f64 (-.f64 y x) (-.f64 2/3 z))) 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (-.f64 x (*.f64 6 (*.f64 (-.f64 y x) (-.f64 2/3 z)))) (-.f64 (*.f64 x x) (pow.f64 (*.f64 6 (*.f64 (-.f64 y x) (-.f64 2/3 z))) 2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 (*.f64 (-.f64 y x) 6) (-.f64 2/3 z) x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 (*.f64 (-.f64 y x) 6) (-.f64 2/3 z) x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 (*.f64 (-.f64 y x) 6) (-.f64 2/3 z) x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 x)) (pow.f64 (exp.f64 (-.f64 2/3 z)) (*.f64 (-.f64 y x) 6))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 x) (+.f64 1 (expm1.f64 (*.f64 6 (*.f64 (-.f64 y x) (-.f64 2/3 z)))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 x)) (+.f64 1 (expm1.f64 (*.f64 6 (*.f64 (-.f64 y x) (-.f64 2/3 z)))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 6 (*.f64 (-.f64 y x) (-.f64 2/3 z))))) (exp.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 (-.f64 2/3 z)) (*.f64 (-.f64 y x) 6)) (+.f64 1 (expm1.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 6 (*.f64 (-.f64 y x) (-.f64 2/3 z))))) (+.f64 1 (expm1.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 (*.f64 (-.f64 y x) 6) (-.f64 2/3 z) x) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 (*.f64 (-.f64 y x) 6) (-.f64 2/3 z) x)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 (*.f64 (-.f64 y x) 6) (-.f64 2/3 z) x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 (*.f64 (-.f64 y x) 6) (-.f64 2/3 z) x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 (*.f64 (-.f64 y x) 6) (-.f64 2/3 z) x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x 1 (*.f64 6 (*.f64 (-.f64 y x) (-.f64 2/3 z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 y x) (*.f64 6 (-.f64 2/3 z)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 6 (*.f64 (-.f64 y x) (-.f64 2/3 z)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 y x) 6) (-.f64 2/3 z) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 2/3 z) (*.f64 (-.f64 y x) 6) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 6 (*.f64 (-.f64 y x) (-.f64 2/3 z))) 1 x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 x (*.f64 6 (*.f64 (-.f64 y x) (-.f64 2/3 z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 6 (*.f64 (-.f64 y x) (-.f64 2/3 z))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (-.f64 2/3 z) 2)) (*.f64 (cbrt.f64 (-.f64 2/3 z)) (*.f64 (-.f64 y x) 6)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 36 (pow.f64 (-.f64 y x) 2))) (*.f64 (cbrt.f64 (*.f64 (-.f64 y x) 6)) (-.f64 2/3 z)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 x) (cbrt.f64 (*.f64 x x)) (*.f64 6 (*.f64 (-.f64 y x) (-.f64 2/3 z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 x x)) (cbrt.f64 x) (*.f64 6 (*.f64 (-.f64 y x) (-.f64 2/3 z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 6 (*.f64 (-.f64 y x) (-.f64 2/3 z)))) (pow.f64 (cbrt.f64 (*.f64 6 (*.f64 (-.f64 y x) (-.f64 2/3 z)))) 2) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 6 (*.f64 (-.f64 y x) (-.f64 2/3 z)))) 2) (cbrt.f64 (*.f64 6 (*.f64 (-.f64 y x) (-.f64 2/3 z)))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 y x)) 2) (*.f64 (cbrt.f64 (-.f64 y x)) (*.f64 6 (-.f64 2/3 z))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 2/3 z)) (*.f64 (sqrt.f64 (-.f64 2/3 z)) (*.f64 (-.f64 y x) 6)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (-.f64 y x) 6)) (*.f64 (sqrt.f64 (*.f64 (-.f64 y x) 6)) (-.f64 2/3 z)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (sqrt.f64 x) (*.f64 6 (*.f64 (-.f64 y x) (-.f64 2/3 z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 6 (*.f64 (-.f64 y x) (-.f64 2/3 z)))) (sqrt.f64 (*.f64 6 (*.f64 (-.f64 y x) (-.f64 2/3 z)))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 y x)) (*.f64 (sqrt.f64 (-.f64 y x)) (*.f64 6 (-.f64 2/3 z))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 6 (-.f64 2/3 z)) (-.f64 y x) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 (-.f64 y x) 6) (cbrt.f64 (pow.f64 (-.f64 2/3 z) 2))) (cbrt.f64 (-.f64 2/3 z)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 (-.f64 y x) 6) (sqrt.f64 (-.f64 2/3 z))) (sqrt.f64 (-.f64 2/3 z)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 2/3 z) (-.f64 y x)) 6 x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 2/3 z) (cbrt.f64 (*.f64 36 (pow.f64 (-.f64 y x) 2)))) (cbrt.f64 (*.f64 (-.f64 y x) 6)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 2/3 z) (sqrt.f64 (*.f64 (-.f64 y x) 6))) (sqrt.f64 (*.f64 (-.f64 y x) 6)) x)))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (-.f64 y x) 6))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y 6) (*.f64 (neg.f64 x) 6))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 6 y) (*.f64 6 (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 6) (-.f64 y x))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 6) (-.f64 y x)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 6) (-.f64 y x)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 6) (-.f64 y x)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (-.f64 y x) 6))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 y 3) (pow.f64 x 3)) 6) (fma.f64 x (+.f64 y x) (*.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) 6) (+.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 6 (-.f64 (pow.f64 y 3) (pow.f64 x 3))) (fma.f64 x (+.f64 y x) (*.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 6 (-.f64 (*.f64 y y) (*.f64 x x))) (+.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (-.f64 y x) 6) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (-.f64 y x) 6) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (-.f64 y x) 6)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (-.f64 y x) 6)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 36 (pow.f64 (-.f64 y x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 6) (-.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (-.f64 y x) 6))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (-.f64 y x) 6) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (-.f64 y x) 6)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (-.f64 y x) 6)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (-.f64 y x) 6)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (-.f64 y x) 6)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y 6 (*.f64 (neg.f64 x) 6))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 6 y (*.f64 6 (neg.f64 x)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 2/3 (neg.f64 z))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 2/3 (*.f64 (neg.f64 z) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 z) 2/3)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 2/3 z))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (-.f64 2/3 z))) 2)) (log.f64 (cbrt.f64 (exp.f64 (-.f64 2/3 z)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (-.f64 2/3 z)))) (log.f64 (sqrt.f64 (exp.f64 (-.f64 2/3 z)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 2/3 z) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 2/3 z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 2/3 z)) (cbrt.f64 (pow.f64 (-.f64 2/3 z) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (-.f64 2/3 z) 2)) (cbrt.f64 (-.f64 2/3 z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 2/3 z)) (sqrt.f64 (-.f64 2/3 z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 8/27 (pow.f64 z 3)) (/.f64 1 (fma.f64 z (+.f64 2/3 z) 4/9)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 4/9 (*.f64 z z)) (/.f64 1 (+.f64 2/3 z)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 z (+.f64 2/3 z) 4/9) (-.f64 8/27 (pow.f64 z 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 2/3 z) (-.f64 4/9 (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 8/27 (pow.f64 z 3)) (fma.f64 z (+.f64 2/3 z) 4/9))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 4/9 (*.f64 z z)) (+.f64 2/3 z))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 8/27 (pow.f64 z 3))) (neg.f64 (fma.f64 z (+.f64 2/3 z) 4/9)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 4/9 (*.f64 z z))) (neg.f64 (+.f64 2/3 z)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 8/27 (pow.f64 (neg.f64 z) 3)) (+.f64 4/9 (-.f64 (pow.f64 (neg.f64 z) 2) (*.f64 2/3 (neg.f64 z)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 4/9 (pow.f64 (neg.f64 z) 2)) (-.f64 2/3 (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 2/3 z) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 2/3 z) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (-.f64 2/3 z)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (-.f64 2/3 z)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 z (+.f64 2/3 z) 4/9) (-.f64 8/27 (pow.f64 z 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (+.f64 2/3 z) (-.f64 4/9 (*.f64 z z))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (-.f64 2/3 z) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (-.f64 2/3 z)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (-.f64 2/3 z))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (-.f64 2/3 z) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (-.f64 2/3 z)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (-.f64 2/3 z)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (-.f64 2/3 z)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (-.f64 2/3 z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (neg.f64 z) 2/3)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 z z)) (neg.f64 (cbrt.f64 z)) 2/3)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 z) (neg.f64 (sqrt.f64 z)) 2/3)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (neg.f64 z)) 2) (cbrt.f64 (neg.f64 z)) 2/3)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (neg.f64 z)) (sqrt.f64 (neg.f64 z)) 2/3)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 z 2/3)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (cbrt.f64 (*.f64 z z))) (cbrt.f64 z) 2/3)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (sqrt.f64 z)) (sqrt.f64 z) 2/3)))))

simplify399.0ms (2.7%)

Algorithm
egg-herbie
Rules
5346×fma-neg_binary64
602×unsub-neg_binary64
524×fma-def_binary64
329×associate--r+_binary64
275×associate--r-_binary64
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
0431556
11031496
22501211
3846983
42149965
54413965
65480965
76202965
86588965
96702965
106772965
116782965
126782965
136782965
146782965
157350965
167350965
177350965
Stop Event
node limit
Counts
264 → 186
Calls
Call 1
Inputs
(*.f64 -6 (*.f64 (-.f64 2/3 z) x))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(*.f64 6 (*.f64 y (-.f64 2/3 z)))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(*.f64 6 (*.f64 y (-.f64 2/3 z)))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(*.f64 6 (*.f64 y (-.f64 2/3 z)))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(*.f64 -6 (*.f64 (-.f64 2/3 z) x))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(*.f64 -6 (*.f64 (-.f64 2/3 z) x))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(*.f64 4 (-.f64 y x))
(+.f64 (*.f64 4 (-.f64 y x)) (*.f64 -6 (*.f64 z (-.f64 y x))))
(+.f64 (*.f64 4 (-.f64 y x)) (*.f64 -6 (*.f64 z (-.f64 y x))))
(+.f64 (*.f64 4 (-.f64 y x)) (*.f64 -6 (*.f64 z (-.f64 y x))))
(*.f64 -6 (*.f64 z (-.f64 y x)))
(+.f64 (*.f64 4 (-.f64 y x)) (*.f64 -6 (*.f64 z (-.f64 y x))))
(+.f64 (*.f64 4 (-.f64 y x)) (*.f64 -6 (*.f64 z (-.f64 y x))))
(+.f64 (*.f64 4 (-.f64 y x)) (*.f64 -6 (*.f64 z (-.f64 y x))))
(*.f64 -6 (*.f64 z (-.f64 y x)))
(+.f64 (*.f64 4 (-.f64 y x)) (*.f64 -6 (*.f64 z (-.f64 y x))))
(+.f64 (*.f64 4 (-.f64 y x)) (*.f64 -6 (*.f64 z (-.f64 y x))))
(+.f64 (*.f64 4 (-.f64 y x)) (*.f64 -6 (*.f64 z (-.f64 y x))))
(*.f64 6 (*.f64 y (-.f64 2/3 z)))
(+.f64 (*.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(+.f64 (*.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(+.f64 (*.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(*.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x)
(+.f64 (*.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(+.f64 (*.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(+.f64 (*.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(*.f64 -1 (*.f64 (-.f64 (*.f64 6 (-.f64 2/3 z)) 1) x))
(+.f64 (*.f64 6 (*.f64 y (-.f64 2/3 z))) (*.f64 -1 (*.f64 (-.f64 (*.f64 6 (-.f64 2/3 z)) 1) x)))
(+.f64 (*.f64 6 (*.f64 y (-.f64 2/3 z))) (*.f64 -1 (*.f64 (-.f64 (*.f64 6 (-.f64 2/3 z)) 1) x)))
(+.f64 (*.f64 6 (*.f64 y (-.f64 2/3 z))) (*.f64 -1 (*.f64 (-.f64 (*.f64 6 (-.f64 2/3 z)) 1) x)))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) x)
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (+.f64 (*.f64 6 (*.f64 y (-.f64 2/3 z))) x))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (+.f64 (*.f64 6 (*.f64 y (-.f64 2/3 z))) x))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (+.f64 (*.f64 6 (*.f64 y (-.f64 2/3 z))) x))
(*.f64 6 (*.f64 y (-.f64 2/3 z)))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (+.f64 x (*.f64 6 (*.f64 y (-.f64 2/3 z)))))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (+.f64 x (*.f64 6 (*.f64 y (-.f64 2/3 z)))))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (+.f64 x (*.f64 6 (*.f64 y (-.f64 2/3 z)))))
(*.f64 6 (*.f64 y (-.f64 2/3 z)))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (+.f64 x (*.f64 6 (*.f64 y (-.f64 2/3 z)))))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (+.f64 x (*.f64 6 (*.f64 y (-.f64 2/3 z)))))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (+.f64 x (*.f64 6 (*.f64 y (-.f64 2/3 z)))))
(+.f64 (*.f64 4 (-.f64 y x)) x)
(+.f64 (*.f64 4 (-.f64 y x)) (+.f64 (*.f64 -6 (*.f64 z (-.f64 y x))) x))
(+.f64 (*.f64 4 (-.f64 y x)) (+.f64 (*.f64 -6 (*.f64 z (-.f64 y x))) x))
(+.f64 (*.f64 4 (-.f64 y x)) (+.f64 (*.f64 -6 (*.f64 z (-.f64 y x))) x))
(*.f64 -6 (*.f64 z (-.f64 y x)))
(+.f64 (*.f64 4 (-.f64 y x)) (+.f64 (*.f64 -6 (*.f64 z (-.f64 y x))) x))
(+.f64 (*.f64 4 (-.f64 y x)) (+.f64 (*.f64 -6 (*.f64 z (-.f64 y x))) x))
(+.f64 (*.f64 4 (-.f64 y x)) (+.f64 (*.f64 -6 (*.f64 z (-.f64 y x))) x))
(*.f64 -6 (*.f64 z (-.f64 y x)))
(+.f64 (*.f64 4 (-.f64 y x)) (+.f64 (*.f64 -6 (*.f64 z (-.f64 y x))) x))
(+.f64 (*.f64 4 (-.f64 y x)) (+.f64 (*.f64 -6 (*.f64 z (-.f64 y x))) x))
(+.f64 (*.f64 4 (-.f64 y x)) (+.f64 (*.f64 -6 (*.f64 z (-.f64 y x))) x))
(*.f64 -6 x)
(+.f64 (*.f64 6 y) (*.f64 -6 x))
(+.f64 (*.f64 6 y) (*.f64 -6 x))
(+.f64 (*.f64 6 y) (*.f64 -6 x))
(*.f64 6 y)
(+.f64 (*.f64 6 y) (*.f64 -6 x))
(+.f64 (*.f64 6 y) (*.f64 -6 x))
(+.f64 (*.f64 6 y) (*.f64 -6 x))
(*.f64 6 y)
(+.f64 (*.f64 6 y) (*.f64 -6 x))
(+.f64 (*.f64 6 y) (*.f64 -6 x))
(+.f64 (*.f64 6 y) (*.f64 -6 x))
(*.f64 6 y)
(+.f64 (*.f64 6 y) (*.f64 -6 x))
(+.f64 (*.f64 6 y) (*.f64 -6 x))
(+.f64 (*.f64 6 y) (*.f64 -6 x))
(*.f64 -6 x)
(+.f64 (*.f64 6 y) (*.f64 -6 x))
(+.f64 (*.f64 6 y) (*.f64 -6 x))
(+.f64 (*.f64 6 y) (*.f64 -6 x))
(*.f64 -6 x)
(+.f64 (*.f64 6 y) (*.f64 -6 x))
(+.f64 (*.f64 6 y) (*.f64 -6 x))
(+.f64 (*.f64 6 y) (*.f64 -6 x))
2/3
(+.f64 (*.f64 -1 z) 2/3)
(+.f64 (*.f64 -1 z) 2/3)
(+.f64 (*.f64 -1 z) 2/3)
(*.f64 -1 z)
(+.f64 (*.f64 -1 z) 2/3)
(+.f64 (*.f64 -1 z) 2/3)
(+.f64 (*.f64 -1 z) 2/3)
(*.f64 -1 z)
(+.f64 (*.f64 -1 z) 2/3)
(+.f64 (*.f64 -1 z) 2/3)
(+.f64 (*.f64 -1 z) 2/3)
Outputs
(*.f64 -6 (*.f64 (-.f64 2/3 z) x))
(*.f64 x (fma.f64 z 6 -4))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (-.f64 2/3 z) (*.f64 6 y)))
(*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y)))
(*.f64 (-.f64 y x) (fma.f64 -6 z 4))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (-.f64 2/3 z) (*.f64 6 y)))
(*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y)))
(*.f64 (-.f64 y x) (fma.f64 -6 z 4))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (-.f64 2/3 z) (*.f64 6 y)))
(*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y)))
(*.f64 (-.f64 y x) (fma.f64 -6 z 4))
(*.f64 6 (*.f64 y (-.f64 2/3 z)))
(*.f64 6 (*.f64 (-.f64 2/3 z) y))
(*.f64 (-.f64 2/3 z) (*.f64 6 y))
(*.f64 y (fma.f64 -6 z 4))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (-.f64 2/3 z) (*.f64 6 y)))
(*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y)))
(*.f64 (-.f64 y x) (fma.f64 -6 z 4))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (-.f64 2/3 z) (*.f64 6 y)))
(*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y)))
(*.f64 (-.f64 y x) (fma.f64 -6 z 4))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (-.f64 2/3 z) (*.f64 6 y)))
(*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y)))
(*.f64 (-.f64 y x) (fma.f64 -6 z 4))
(*.f64 6 (*.f64 y (-.f64 2/3 z)))
(*.f64 6 (*.f64 (-.f64 2/3 z) y))
(*.f64 (-.f64 2/3 z) (*.f64 6 y))
(*.f64 y (fma.f64 -6 z 4))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (-.f64 2/3 z) (*.f64 6 y)))
(*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y)))
(*.f64 (-.f64 y x) (fma.f64 -6 z 4))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (-.f64 2/3 z) (*.f64 6 y)))
(*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y)))
(*.f64 (-.f64 y x) (fma.f64 -6 z 4))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (-.f64 2/3 z) (*.f64 6 y)))
(*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y)))
(*.f64 (-.f64 y x) (fma.f64 -6 z 4))
(*.f64 6 (*.f64 y (-.f64 2/3 z)))
(*.f64 6 (*.f64 (-.f64 2/3 z) y))
(*.f64 (-.f64 2/3 z) (*.f64 6 y))
(*.f64 y (fma.f64 -6 z 4))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (-.f64 2/3 z) (*.f64 6 y)))
(*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y)))
(*.f64 (-.f64 y x) (fma.f64 -6 z 4))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (-.f64 2/3 z) (*.f64 6 y)))
(*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y)))
(*.f64 (-.f64 y x) (fma.f64 -6 z 4))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (-.f64 2/3 z) (*.f64 6 y)))
(*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y)))
(*.f64 (-.f64 y x) (fma.f64 -6 z 4))
(*.f64 -6 (*.f64 (-.f64 2/3 z) x))
(*.f64 x (fma.f64 z 6 -4))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (-.f64 2/3 z) (*.f64 6 y)))
(*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y)))
(*.f64 (-.f64 y x) (fma.f64 -6 z 4))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (-.f64 2/3 z) (*.f64 6 y)))
(*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y)))
(*.f64 (-.f64 y x) (fma.f64 -6 z 4))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (-.f64 2/3 z) (*.f64 6 y)))
(*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y)))
(*.f64 (-.f64 y x) (fma.f64 -6 z 4))
(*.f64 -6 (*.f64 (-.f64 2/3 z) x))
(*.f64 x (fma.f64 z 6 -4))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (-.f64 2/3 z) (*.f64 6 y)))
(*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y)))
(*.f64 (-.f64 y x) (fma.f64 -6 z 4))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (-.f64 2/3 z) (*.f64 6 y)))
(*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y)))
(*.f64 (-.f64 y x) (fma.f64 -6 z 4))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (-.f64 2/3 z) (*.f64 6 y)))
(*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y)))
(*.f64 (-.f64 y x) (fma.f64 -6 z 4))
(*.f64 4 (-.f64 y x))
(+.f64 (*.f64 4 (-.f64 y x)) (*.f64 -6 (*.f64 z (-.f64 y x))))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (-.f64 2/3 z) (*.f64 6 y)))
(*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y)))
(*.f64 (-.f64 y x) (fma.f64 -6 z 4))
(+.f64 (*.f64 4 (-.f64 y x)) (*.f64 -6 (*.f64 z (-.f64 y x))))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (-.f64 2/3 z) (*.f64 6 y)))
(*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y)))
(*.f64 (-.f64 y x) (fma.f64 -6 z 4))
(+.f64 (*.f64 4 (-.f64 y x)) (*.f64 -6 (*.f64 z (-.f64 y x))))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (-.f64 2/3 z) (*.f64 6 y)))
(*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y)))
(*.f64 (-.f64 y x) (fma.f64 -6 z 4))
(*.f64 -6 (*.f64 z (-.f64 y x)))
(+.f64 (*.f64 4 (-.f64 y x)) (*.f64 -6 (*.f64 z (-.f64 y x))))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (-.f64 2/3 z) (*.f64 6 y)))
(*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y)))
(*.f64 (-.f64 y x) (fma.f64 -6 z 4))
(+.f64 (*.f64 4 (-.f64 y x)) (*.f64 -6 (*.f64 z (-.f64 y x))))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (-.f64 2/3 z) (*.f64 6 y)))
(*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y)))
(*.f64 (-.f64 y x) (fma.f64 -6 z 4))
(+.f64 (*.f64 4 (-.f64 y x)) (*.f64 -6 (*.f64 z (-.f64 y x))))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (-.f64 2/3 z) (*.f64 6 y)))
(*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y)))
(*.f64 (-.f64 y x) (fma.f64 -6 z 4))
(*.f64 -6 (*.f64 z (-.f64 y x)))
(+.f64 (*.f64 4 (-.f64 y x)) (*.f64 -6 (*.f64 z (-.f64 y x))))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (-.f64 2/3 z) (*.f64 6 y)))
(*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y)))
(*.f64 (-.f64 y x) (fma.f64 -6 z 4))
(+.f64 (*.f64 4 (-.f64 y x)) (*.f64 -6 (*.f64 z (-.f64 y x))))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (-.f64 2/3 z) (*.f64 6 y)))
(*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y)))
(*.f64 (-.f64 y x) (fma.f64 -6 z 4))
(+.f64 (*.f64 4 (-.f64 y x)) (*.f64 -6 (*.f64 z (-.f64 y x))))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (-.f64 2/3 z) (*.f64 6 y)))
(*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y)))
(*.f64 (-.f64 y x) (fma.f64 -6 z 4))
(*.f64 6 (*.f64 y (-.f64 2/3 z)))
(*.f64 6 (*.f64 (-.f64 2/3 z) y))
(*.f64 (-.f64 2/3 z) (*.f64 6 y))
(*.f64 y (fma.f64 -6 z 4))
(+.f64 (*.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (fma.f64 6 (*.f64 (-.f64 2/3 z) y) x))
(+.f64 x (*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y))))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(+.f64 (*.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (fma.f64 6 (*.f64 (-.f64 2/3 z) y) x))
(+.f64 x (*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y))))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(+.f64 (*.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (fma.f64 6 (*.f64 (-.f64 2/3 z) y) x))
(+.f64 x (*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y))))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(*.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x)
(*.f64 x (+.f64 1 (*.f64 -6 (-.f64 2/3 z))))
(*.f64 x (fma.f64 -6 (-.f64 2/3 z) 1))
(*.f64 x (+.f64 (*.f64 z 6) -3))
(*.f64 x (fma.f64 z 6 -3))
(+.f64 (*.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (fma.f64 6 (*.f64 (-.f64 2/3 z) y) x))
(+.f64 x (*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y))))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(+.f64 (*.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (fma.f64 6 (*.f64 (-.f64 2/3 z) y) x))
(+.f64 x (*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y))))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(+.f64 (*.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (fma.f64 6 (*.f64 (-.f64 2/3 z) y) x))
(+.f64 x (*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y))))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(*.f64 -1 (*.f64 (-.f64 (*.f64 6 (-.f64 2/3 z)) 1) x))
(*.f64 x (+.f64 1 (*.f64 -6 (-.f64 2/3 z))))
(*.f64 x (fma.f64 -6 (-.f64 2/3 z) 1))
(*.f64 x (+.f64 (*.f64 z 6) -3))
(*.f64 x (fma.f64 z 6 -3))
(+.f64 (*.f64 6 (*.f64 y (-.f64 2/3 z))) (*.f64 -1 (*.f64 (-.f64 (*.f64 6 (-.f64 2/3 z)) 1) x)))
(fma.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (fma.f64 6 (*.f64 (-.f64 2/3 z) y) x))
(+.f64 x (*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y))))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(+.f64 (*.f64 6 (*.f64 y (-.f64 2/3 z))) (*.f64 -1 (*.f64 (-.f64 (*.f64 6 (-.f64 2/3 z)) 1) x)))
(fma.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (fma.f64 6 (*.f64 (-.f64 2/3 z) y) x))
(+.f64 x (*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y))))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(+.f64 (*.f64 6 (*.f64 y (-.f64 2/3 z))) (*.f64 -1 (*.f64 (-.f64 (*.f64 6 (-.f64 2/3 z)) 1) x)))
(fma.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (fma.f64 6 (*.f64 (-.f64 2/3 z) y) x))
(+.f64 x (*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y))))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) x)
(*.f64 x (+.f64 1 (*.f64 -6 (-.f64 2/3 z))))
(*.f64 x (fma.f64 -6 (-.f64 2/3 z) 1))
(*.f64 x (+.f64 (*.f64 z 6) -3))
(*.f64 x (fma.f64 z 6 -3))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (+.f64 (*.f64 6 (*.f64 y (-.f64 2/3 z))) x))
(fma.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (fma.f64 6 (*.f64 (-.f64 2/3 z) y) x))
(+.f64 x (*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y))))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (+.f64 (*.f64 6 (*.f64 y (-.f64 2/3 z))) x))
(fma.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (fma.f64 6 (*.f64 (-.f64 2/3 z) y) x))
(+.f64 x (*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y))))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (+.f64 (*.f64 6 (*.f64 y (-.f64 2/3 z))) x))
(fma.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (fma.f64 6 (*.f64 (-.f64 2/3 z) y) x))
(+.f64 x (*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y))))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(*.f64 6 (*.f64 y (-.f64 2/3 z)))
(*.f64 6 (*.f64 (-.f64 2/3 z) y))
(*.f64 (-.f64 2/3 z) (*.f64 6 y))
(*.f64 y (fma.f64 -6 z 4))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (+.f64 x (*.f64 6 (*.f64 y (-.f64 2/3 z)))))
(fma.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (fma.f64 6 (*.f64 (-.f64 2/3 z) y) x))
(+.f64 x (*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y))))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (+.f64 x (*.f64 6 (*.f64 y (-.f64 2/3 z)))))
(fma.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (fma.f64 6 (*.f64 (-.f64 2/3 z) y) x))
(+.f64 x (*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y))))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (+.f64 x (*.f64 6 (*.f64 y (-.f64 2/3 z)))))
(fma.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (fma.f64 6 (*.f64 (-.f64 2/3 z) y) x))
(+.f64 x (*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y))))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(*.f64 6 (*.f64 y (-.f64 2/3 z)))
(*.f64 6 (*.f64 (-.f64 2/3 z) y))
(*.f64 (-.f64 2/3 z) (*.f64 6 y))
(*.f64 y (fma.f64 -6 z 4))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (+.f64 x (*.f64 6 (*.f64 y (-.f64 2/3 z)))))
(fma.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (fma.f64 6 (*.f64 (-.f64 2/3 z) y) x))
(+.f64 x (*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y))))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (+.f64 x (*.f64 6 (*.f64 y (-.f64 2/3 z)))))
(fma.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (fma.f64 6 (*.f64 (-.f64 2/3 z) y) x))
(+.f64 x (*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y))))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (+.f64 x (*.f64 6 (*.f64 y (-.f64 2/3 z)))))
(fma.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (fma.f64 6 (*.f64 (-.f64 2/3 z) y) x))
(+.f64 x (*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y))))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(+.f64 (*.f64 4 (-.f64 y x)) x)
(fma.f64 4 (-.f64 y x) x)
(fma.f64 y 4 (*.f64 x -3))
(+.f64 (*.f64 4 (-.f64 y x)) (+.f64 (*.f64 -6 (*.f64 z (-.f64 y x))) x))
(fma.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (fma.f64 6 (*.f64 (-.f64 2/3 z) y) x))
(+.f64 x (*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y))))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(+.f64 (*.f64 4 (-.f64 y x)) (+.f64 (*.f64 -6 (*.f64 z (-.f64 y x))) x))
(fma.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (fma.f64 6 (*.f64 (-.f64 2/3 z) y) x))
(+.f64 x (*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y))))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(+.f64 (*.f64 4 (-.f64 y x)) (+.f64 (*.f64 -6 (*.f64 z (-.f64 y x))) x))
(fma.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (fma.f64 6 (*.f64 (-.f64 2/3 z) y) x))
(+.f64 x (*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y))))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(*.f64 -6 (*.f64 z (-.f64 y x)))
(+.f64 (*.f64 4 (-.f64 y x)) (+.f64 (*.f64 -6 (*.f64 z (-.f64 y x))) x))
(fma.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (fma.f64 6 (*.f64 (-.f64 2/3 z) y) x))
(+.f64 x (*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y))))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(+.f64 (*.f64 4 (-.f64 y x)) (+.f64 (*.f64 -6 (*.f64 z (-.f64 y x))) x))
(fma.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (fma.f64 6 (*.f64 (-.f64 2/3 z) y) x))
(+.f64 x (*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y))))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(+.f64 (*.f64 4 (-.f64 y x)) (+.f64 (*.f64 -6 (*.f64 z (-.f64 y x))) x))
(fma.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (fma.f64 6 (*.f64 (-.f64 2/3 z) y) x))
(+.f64 x (*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y))))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(*.f64 -6 (*.f64 z (-.f64 y x)))
(+.f64 (*.f64 4 (-.f64 y x)) (+.f64 (*.f64 -6 (*.f64 z (-.f64 y x))) x))
(fma.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (fma.f64 6 (*.f64 (-.f64 2/3 z) y) x))
(+.f64 x (*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y))))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(+.f64 (*.f64 4 (-.f64 y x)) (+.f64 (*.f64 -6 (*.f64 z (-.f64 y x))) x))
(fma.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (fma.f64 6 (*.f64 (-.f64 2/3 z) y) x))
(+.f64 x (*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y))))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(+.f64 (*.f64 4 (-.f64 y x)) (+.f64 (*.f64 -6 (*.f64 z (-.f64 y x))) x))
(fma.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (fma.f64 6 (*.f64 (-.f64 2/3 z) y) x))
(+.f64 x (*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y))))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(*.f64 -6 x)
(+.f64 (*.f64 6 y) (*.f64 -6 x))
(fma.f64 6 y (*.f64 -6 x))
(fma.f64 -6 x (*.f64 6 y))
(*.f64 6 (-.f64 y x))
(*.f64 -6 (-.f64 x y))
(+.f64 (*.f64 6 y) (*.f64 -6 x))
(fma.f64 6 y (*.f64 -6 x))
(fma.f64 -6 x (*.f64 6 y))
(*.f64 6 (-.f64 y x))
(*.f64 -6 (-.f64 x y))
(+.f64 (*.f64 6 y) (*.f64 -6 x))
(fma.f64 6 y (*.f64 -6 x))
(fma.f64 -6 x (*.f64 6 y))
(*.f64 6 (-.f64 y x))
(*.f64 -6 (-.f64 x y))
(*.f64 6 y)
(+.f64 (*.f64 6 y) (*.f64 -6 x))
(fma.f64 6 y (*.f64 -6 x))
(fma.f64 -6 x (*.f64 6 y))
(*.f64 6 (-.f64 y x))
(*.f64 -6 (-.f64 x y))
(+.f64 (*.f64 6 y) (*.f64 -6 x))
(fma.f64 6 y (*.f64 -6 x))
(fma.f64 -6 x (*.f64 6 y))
(*.f64 6 (-.f64 y x))
(*.f64 -6 (-.f64 x y))
(+.f64 (*.f64 6 y) (*.f64 -6 x))
(fma.f64 6 y (*.f64 -6 x))
(fma.f64 -6 x (*.f64 6 y))
(*.f64 6 (-.f64 y x))
(*.f64 -6 (-.f64 x y))
(*.f64 6 y)
(+.f64 (*.f64 6 y) (*.f64 -6 x))
(fma.f64 6 y (*.f64 -6 x))
(fma.f64 -6 x (*.f64 6 y))
(*.f64 6 (-.f64 y x))
(*.f64 -6 (-.f64 x y))
(+.f64 (*.f64 6 y) (*.f64 -6 x))
(fma.f64 6 y (*.f64 -6 x))
(fma.f64 -6 x (*.f64 6 y))
(*.f64 6 (-.f64 y x))
(*.f64 -6 (-.f64 x y))
(+.f64 (*.f64 6 y) (*.f64 -6 x))
(fma.f64 6 y (*.f64 -6 x))
(fma.f64 -6 x (*.f64 6 y))
(*.f64 6 (-.f64 y x))
(*.f64 -6 (-.f64 x y))
(*.f64 6 y)
(+.f64 (*.f64 6 y) (*.f64 -6 x))
(fma.f64 6 y (*.f64 -6 x))
(fma.f64 -6 x (*.f64 6 y))
(*.f64 6 (-.f64 y x))
(*.f64 -6 (-.f64 x y))
(+.f64 (*.f64 6 y) (*.f64 -6 x))
(fma.f64 6 y (*.f64 -6 x))
(fma.f64 -6 x (*.f64 6 y))
(*.f64 6 (-.f64 y x))
(*.f64 -6 (-.f64 x y))
(+.f64 (*.f64 6 y) (*.f64 -6 x))
(fma.f64 6 y (*.f64 -6 x))
(fma.f64 -6 x (*.f64 6 y))
(*.f64 6 (-.f64 y x))
(*.f64 -6 (-.f64 x y))
(*.f64 -6 x)
(+.f64 (*.f64 6 y) (*.f64 -6 x))
(fma.f64 6 y (*.f64 -6 x))
(fma.f64 -6 x (*.f64 6 y))
(*.f64 6 (-.f64 y x))
(*.f64 -6 (-.f64 x y))
(+.f64 (*.f64 6 y) (*.f64 -6 x))
(fma.f64 6 y (*.f64 -6 x))
(fma.f64 -6 x (*.f64 6 y))
(*.f64 6 (-.f64 y x))
(*.f64 -6 (-.f64 x y))
(+.f64 (*.f64 6 y) (*.f64 -6 x))
(fma.f64 6 y (*.f64 -6 x))
(fma.f64 -6 x (*.f64 6 y))
(*.f64 6 (-.f64 y x))
(*.f64 -6 (-.f64 x y))
(*.f64 -6 x)
(+.f64 (*.f64 6 y) (*.f64 -6 x))
(fma.f64 6 y (*.f64 -6 x))
(fma.f64 -6 x (*.f64 6 y))
(*.f64 6 (-.f64 y x))
(*.f64 -6 (-.f64 x y))
(+.f64 (*.f64 6 y) (*.f64 -6 x))
(fma.f64 6 y (*.f64 -6 x))
(fma.f64 -6 x (*.f64 6 y))
(*.f64 6 (-.f64 y x))
(*.f64 -6 (-.f64 x y))
(+.f64 (*.f64 6 y) (*.f64 -6 x))
(fma.f64 6 y (*.f64 -6 x))
(fma.f64 -6 x (*.f64 6 y))
(*.f64 6 (-.f64 y x))
(*.f64 -6 (-.f64 x y))
2/3
(+.f64 (*.f64 -1 z) 2/3)
(-.f64 2/3 z)
(+.f64 (*.f64 -1 z) 2/3)
(-.f64 2/3 z)
(+.f64 (*.f64 -1 z) 2/3)
(-.f64 2/3 z)
(*.f64 -1 z)
(neg.f64 z)
(+.f64 (*.f64 -1 z) 2/3)
(-.f64 2/3 z)
(+.f64 (*.f64 -1 z) 2/3)
(-.f64 2/3 z)
(+.f64 (*.f64 -1 z) 2/3)
(-.f64 2/3 z)
(*.f64 -1 z)
(neg.f64 z)
(+.f64 (*.f64 -1 z) 2/3)
(-.f64 2/3 z)
(+.f64 (*.f64 -1 z) 2/3)
(-.f64 2/3 z)
(+.f64 (*.f64 -1 z) 2/3)
(-.f64 2/3 z)

localize11.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.1b
(fma.f64 z -6 4)
0.1b
(fma.f64 (-.f64 y x) (fma.f64 z -6 4) x)
Compiler

Compiled 24 to 13 computations (45.8% saved)

series7.0ms (0%)

Counts
2 → 48
Calls

12 calls:

TimeVariablePointExpression
2.0ms
z
@0
(fma.f64 (-.f64 y x) (fma.f64 z -6 4) x)
1.0ms
y
@0
(fma.f64 (-.f64 y x) (fma.f64 z -6 4) x)
1.0ms
x
@-inf
(fma.f64 (-.f64 y x) (fma.f64 z -6 4) x)
1.0ms
z
@-inf
(fma.f64 (-.f64 y x) (fma.f64 z -6 4) x)
1.0ms
x
@0
(fma.f64 (-.f64 y x) (fma.f64 z -6 4) x)

rewrite78.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
489×unpow-prod-down_binary64
423×prod-diff_binary64
403×log-prod_binary64
313×exp-prod_binary64
253×pow2_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0917
119417
2242117
Stop Event
node limit
Counts
2 → 82
Calls
Call 1
Inputs
(fma.f64 (-.f64 y x) (fma.f64 z -6 4) x)
(fma.f64 z -6 4)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 x (*.f64 (-.f64 y x) (fma.f64 z -6 4)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (-.f64 y x) (fma.f64 z -6 4)) x)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (fma.f64 (-.f64 y x) (fma.f64 z -6 4) x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (-.f64 y x) (fma.f64 z -6 4)) 1) x)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (fma.f64 (-.f64 y x) (fma.f64 z -6 4) x))) 2)) (log.f64 (cbrt.f64 (exp.f64 (fma.f64 (-.f64 y x) (fma.f64 z -6 4) x)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (fma.f64 (-.f64 y x) (fma.f64 z -6 4) x)))) (log.f64 (sqrt.f64 (exp.f64 (fma.f64 (-.f64 y x) (fma.f64 z -6 4) x)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 (-.f64 y x) (fma.f64 z -6 4) x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (-.f64 y x) (fma.f64 z -6 4) x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 (-.f64 y x) (fma.f64 z -6 4) x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 (-.f64 y x) (fma.f64 z -6 4) x)) (pow.f64 (cbrt.f64 (fma.f64 (-.f64 y x) (fma.f64 z -6 4) x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 (-.f64 y x) (fma.f64 z -6 4) x)) 2) (cbrt.f64 (fma.f64 (-.f64 y x) (fma.f64 z -6 4) x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 (-.f64 y x) (fma.f64 z -6 4) x)) (sqrt.f64 (fma.f64 (-.f64 y x) (fma.f64 z -6 4) x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/3) (fma.f64 (-.f64 y x) (fma.f64 z -6 4) x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (pow.f64 (fma.f64 (-.f64 y x) (fma.f64 z -6 4) x) 3)) 1/3) (pow.f64 (sqrt.f64 (pow.f64 (fma.f64 (-.f64 y x) (fma.f64 z -6 4) x) 3)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (*.f64 (fma.f64 (-.f64 y x) (fma.f64 z -6 4) x) (cbrt.f64 (fma.f64 (-.f64 y x) (fma.f64 z -6 4) x))) 2) 1/3) (cbrt.f64 (cbrt.f64 (fma.f64 (-.f64 y x) (fma.f64 z -6 4) x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (fma.f64 (-.f64 y x) (fma.f64 z -6 4) x) 5/2) 1/3) (cbrt.f64 (sqrt.f64 (fma.f64 (-.f64 y x) (fma.f64 z -6 4) x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 (-.f64 y x) (fma.f64 z -6 4) x))) 2) 3) (cbrt.f64 (fma.f64 (-.f64 y x) (fma.f64 z -6 4) x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (cbrt.f64 (fma.f64 (-.f64 y x) (fma.f64 z -6 4) x))) 3) (pow.f64 (sqrt.f64 (cbrt.f64 (fma.f64 (-.f64 y x) (fma.f64 z -6 4) x))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 (-.f64 y x) (fma.f64 z -6 4)) 3) (pow.f64 x 3)) (+.f64 (pow.f64 (*.f64 (-.f64 y x) (fma.f64 z -6 4)) 2) (-.f64 (*.f64 x x) (*.f64 (*.f64 (-.f64 y x) (fma.f64 z -6 4)) x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (-.f64 y x) (fma.f64 z -6 4)) 2) (*.f64 x x)) (fma.f64 (-.f64 y x) (fma.f64 z -6 4) (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 (-.f64 y x) (fma.f64 z -6 4) x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (-.f64 y x) (fma.f64 z -6 4) x) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (-.f64 y x) (fma.f64 z -6 4) x) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 (-.f64 y x) (fma.f64 z -6 4) x)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 (-.f64 y x) (fma.f64 z -6 4) x)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (fma.f64 (-.f64 y x) (fma.f64 z -6 4) x)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (fma.f64 (-.f64 y x) (fma.f64 z -6 4) x))) 2)) (cbrt.f64 (log.f64 (fma.f64 (-.f64 y x) (fma.f64 z -6 4) x))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (fma.f64 (-.f64 y x) (fma.f64 z -6 4) x)))) (sqrt.f64 (log.f64 (fma.f64 (-.f64 y x) (fma.f64 z -6 4) x))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 (-.f64 y x) (fma.f64 z -6 4) x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 (-.f64 y x) (fma.f64 z -6 4) x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 (-.f64 y x) (fma.f64 z -6 4) x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 x)) (pow.f64 (exp.f64 (fma.f64 z -6 4)) (-.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 (fma.f64 z -6 4)) (-.f64 y x)) (+.f64 1 (expm1.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 (-.f64 y x) (fma.f64 z -6 4) x) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 (-.f64 y x) (fma.f64 z -6 4) x)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 (-.f64 y x) (fma.f64 z -6 4) x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 (-.f64 y x) (fma.f64 z -6 4) x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 (-.f64 y x) (fma.f64 z -6 4) x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (fma.f64 (-.f64 y x) (fma.f64 z -6 4) x))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (fma.f64 (-.f64 y x) (fma.f64 z -6 4) x))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (fma.f64 (-.f64 y x) (fma.f64 z -6 4) x))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (fma.f64 (-.f64 y x) (fma.f64 z -6 4) x)) 1) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 4 (*.f64 z -6))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 z -6) 4)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (fma.f64 z -6 4))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 z -6) 1) 4)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (fma.f64 z -6 4))) 2)) (log.f64 (cbrt.f64 (exp.f64 (fma.f64 z -6 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (fma.f64 z -6 4)))) (log.f64 (sqrt.f64 (exp.f64 (fma.f64 z -6 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 z -6 4))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 z -6 4) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 z -6 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 z -6 4)) (pow.f64 (cbrt.f64 (fma.f64 z -6 4)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 z -6 4)) 2) (cbrt.f64 (fma.f64 z -6 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 z -6 4)) (sqrt.f64 (fma.f64 z -6 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/3) (fma.f64 z -6 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (pow.f64 (fma.f64 z -6 4) 3)) 1/3) (pow.f64 (sqrt.f64 (pow.f64 (fma.f64 z -6 4) 3)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (*.f64 (fma.f64 z -6 4) (cbrt.f64 (fma.f64 z -6 4))) 2) 1/3) (cbrt.f64 (cbrt.f64 (fma.f64 z -6 4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (fma.f64 z -6 4) 5/2) 1/3) (cbrt.f64 (sqrt.f64 (fma.f64 z -6 4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 z -6 4))) 2) 3) (cbrt.f64 (fma.f64 z -6 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (cbrt.f64 (fma.f64 z -6 4))) 3) (pow.f64 (sqrt.f64 (cbrt.f64 (fma.f64 z -6 4))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 (pow.f64 z 3) -216) 64) (+.f64 (pow.f64 (*.f64 z -6) 2) (-.f64 16 (*.f64 (*.f64 z -6) 4))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 z -6) 2) 16) (fma.f64 z -6 -4))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 z -6 4) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 z -6 4) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 z -6 4) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 z -6 4)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 z -6 4)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (fma.f64 z -6 4)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (fma.f64 z -6 4))) 2)) (cbrt.f64 (log.f64 (fma.f64 z -6 4))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (fma.f64 z -6 4)))) (sqrt.f64 (log.f64 (fma.f64 z -6 4))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 z -6 4) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 z -6 4)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 z -6 4))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 z -6 4) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 z -6 4)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 z -6 4)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 z -6 4)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 z -6 4)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (fma.f64 z -6 4))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (fma.f64 z -6 4))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (fma.f64 z -6 4))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (fma.f64 z -6 4)) 1) 1))))))

simplify209.0ms (1.4%)

Algorithm
egg-herbie
Rules
3047×fma-def_binary64
982×fma-neg_binary64
375×sub-neg_binary64
349×distribute-rgt-in_binary64
282×associate--r+_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
032820
184622
2215454
3676454
41568454
52899454
64808454
75790454
86001454
96028454
106028454
116028454
126048454
136056454
146056454
Stop Event
node limit
Counts
130 → 100
Calls
Call 1
Inputs
(+.f64 (*.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x)) x)
(+.f64 (*.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x)) (+.f64 (*.f64 (+.f64 4 (*.f64 -6 z)) y) x))
(+.f64 (*.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x)) (+.f64 (*.f64 (+.f64 4 (*.f64 -6 z)) y) x))
(+.f64 (*.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x)) (+.f64 (*.f64 (+.f64 4 (*.f64 -6 z)) y) x))
(*.f64 (+.f64 4 (*.f64 -6 z)) y)
(+.f64 (*.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x)) (+.f64 (*.f64 (+.f64 4 (*.f64 -6 z)) y) x))
(+.f64 (*.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x)) (+.f64 (*.f64 (+.f64 4 (*.f64 -6 z)) y) x))
(+.f64 (*.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x)) (+.f64 (*.f64 (+.f64 4 (*.f64 -6 z)) y) x))
(*.f64 (+.f64 4 (*.f64 -6 z)) y)
(+.f64 (*.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x)) (+.f64 (*.f64 (+.f64 4 (*.f64 -6 z)) y) x))
(+.f64 (*.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x)) (+.f64 (*.f64 (+.f64 4 (*.f64 -6 z)) y) x))
(+.f64 (*.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x)) (+.f64 (*.f64 (+.f64 4 (*.f64 -6 z)) y) x))
(*.f64 (+.f64 4 (*.f64 -6 z)) y)
(+.f64 (*.f64 (+.f64 1 (*.f64 -1 (+.f64 4 (*.f64 -6 z)))) x) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(+.f64 (*.f64 (+.f64 1 (*.f64 -1 (+.f64 4 (*.f64 -6 z)))) x) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(+.f64 (*.f64 (+.f64 1 (*.f64 -1 (+.f64 4 (*.f64 -6 z)))) x) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(*.f64 (+.f64 1 (*.f64 -1 (+.f64 4 (*.f64 -6 z)))) x)
(+.f64 (*.f64 (+.f64 1 (*.f64 -1 (+.f64 4 (*.f64 -6 z)))) x) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(+.f64 (*.f64 (+.f64 1 (*.f64 -1 (+.f64 4 (*.f64 -6 z)))) x) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(+.f64 (*.f64 (+.f64 1 (*.f64 -1 (+.f64 4 (*.f64 -6 z)))) x) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(*.f64 -1 (*.f64 (+.f64 3 (*.f64 -6 z)) x))
(+.f64 (*.f64 -1 (*.f64 (+.f64 3 (*.f64 -6 z)) x)) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(+.f64 (*.f64 -1 (*.f64 (+.f64 3 (*.f64 -6 z)) x)) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(+.f64 (*.f64 -1 (*.f64 (+.f64 3 (*.f64 -6 z)) x)) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(+.f64 (*.f64 4 (-.f64 y x)) x)
(+.f64 (*.f64 4 (-.f64 y x)) (+.f64 (*.f64 -6 (*.f64 z (-.f64 y x))) x))
(+.f64 (*.f64 4 (-.f64 y x)) (+.f64 (*.f64 -6 (*.f64 z (-.f64 y x))) x))
(+.f64 (*.f64 4 (-.f64 y x)) (+.f64 (*.f64 -6 (*.f64 z (-.f64 y x))) x))
(*.f64 -6 (*.f64 z (-.f64 y x)))
(+.f64 (*.f64 4 (-.f64 y x)) (+.f64 (*.f64 -6 (*.f64 z (-.f64 y x))) x))
(+.f64 (*.f64 4 (-.f64 y x)) (+.f64 (*.f64 -6 (*.f64 z (-.f64 y x))) x))
(+.f64 (*.f64 4 (-.f64 y x)) (+.f64 (*.f64 -6 (*.f64 z (-.f64 y x))) x))
(*.f64 -6 (*.f64 z (-.f64 y x)))
(+.f64 (*.f64 4 (-.f64 y x)) (+.f64 (*.f64 -6 (*.f64 z (-.f64 y x))) x))
(+.f64 (*.f64 4 (-.f64 y x)) (+.f64 (*.f64 -6 (*.f64 z (-.f64 y x))) x))
(+.f64 (*.f64 4 (-.f64 y x)) (+.f64 (*.f64 -6 (*.f64 z (-.f64 y x))) x))
4
(+.f64 4 (*.f64 -6 z))
(+.f64 4 (*.f64 -6 z))
(+.f64 4 (*.f64 -6 z))
(*.f64 -6 z)
(+.f64 4 (*.f64 -6 z))
(+.f64 4 (*.f64 -6 z))
(+.f64 4 (*.f64 -6 z))
(*.f64 -6 z)
(+.f64 4 (*.f64 -6 z))
(+.f64 4 (*.f64 -6 z))
(+.f64 4 (*.f64 -6 z))
Outputs
(+.f64 (*.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x)) x)
(fma.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x) x)
(*.f64 x (+.f64 (*.f64 z 6) -3))
(*.f64 x (fma.f64 z 6 -3))
(+.f64 (*.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x)) (+.f64 (*.f64 (+.f64 4 (*.f64 -6 z)) y) x))
(fma.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x) (fma.f64 (+.f64 4 (*.f64 -6 z)) y x))
(-.f64 (*.f64 (fma.f64 -6 z 4) y) (*.f64 x (fma.f64 -6 z 3)))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(fma.f64 (fma.f64 -6 z 4) (-.f64 y x) x)
(+.f64 (*.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x)) (+.f64 (*.f64 (+.f64 4 (*.f64 -6 z)) y) x))
(fma.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x) (fma.f64 (+.f64 4 (*.f64 -6 z)) y x))
(-.f64 (*.f64 (fma.f64 -6 z 4) y) (*.f64 x (fma.f64 -6 z 3)))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(fma.f64 (fma.f64 -6 z 4) (-.f64 y x) x)
(+.f64 (*.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x)) (+.f64 (*.f64 (+.f64 4 (*.f64 -6 z)) y) x))
(fma.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x) (fma.f64 (+.f64 4 (*.f64 -6 z)) y x))
(-.f64 (*.f64 (fma.f64 -6 z 4) y) (*.f64 x (fma.f64 -6 z 3)))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(fma.f64 (fma.f64 -6 z 4) (-.f64 y x) x)
(*.f64 (+.f64 4 (*.f64 -6 z)) y)
(*.f64 (fma.f64 -6 z 4) y)
(+.f64 (*.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x)) (+.f64 (*.f64 (+.f64 4 (*.f64 -6 z)) y) x))
(fma.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x) (fma.f64 (+.f64 4 (*.f64 -6 z)) y x))
(-.f64 (*.f64 (fma.f64 -6 z 4) y) (*.f64 x (fma.f64 -6 z 3)))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(fma.f64 (fma.f64 -6 z 4) (-.f64 y x) x)
(+.f64 (*.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x)) (+.f64 (*.f64 (+.f64 4 (*.f64 -6 z)) y) x))
(fma.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x) (fma.f64 (+.f64 4 (*.f64 -6 z)) y x))
(-.f64 (*.f64 (fma.f64 -6 z 4) y) (*.f64 x (fma.f64 -6 z 3)))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(fma.f64 (fma.f64 -6 z 4) (-.f64 y x) x)
(+.f64 (*.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x)) (+.f64 (*.f64 (+.f64 4 (*.f64 -6 z)) y) x))
(fma.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x) (fma.f64 (+.f64 4 (*.f64 -6 z)) y x))
(-.f64 (*.f64 (fma.f64 -6 z 4) y) (*.f64 x (fma.f64 -6 z 3)))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(fma.f64 (fma.f64 -6 z 4) (-.f64 y x) x)
(*.f64 (+.f64 4 (*.f64 -6 z)) y)
(*.f64 (fma.f64 -6 z 4) y)
(+.f64 (*.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x)) (+.f64 (*.f64 (+.f64 4 (*.f64 -6 z)) y) x))
(fma.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x) (fma.f64 (+.f64 4 (*.f64 -6 z)) y x))
(-.f64 (*.f64 (fma.f64 -6 z 4) y) (*.f64 x (fma.f64 -6 z 3)))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(fma.f64 (fma.f64 -6 z 4) (-.f64 y x) x)
(+.f64 (*.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x)) (+.f64 (*.f64 (+.f64 4 (*.f64 -6 z)) y) x))
(fma.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x) (fma.f64 (+.f64 4 (*.f64 -6 z)) y x))
(-.f64 (*.f64 (fma.f64 -6 z 4) y) (*.f64 x (fma.f64 -6 z 3)))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(fma.f64 (fma.f64 -6 z 4) (-.f64 y x) x)
(+.f64 (*.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x)) (+.f64 (*.f64 (+.f64 4 (*.f64 -6 z)) y) x))
(fma.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x) (fma.f64 (+.f64 4 (*.f64 -6 z)) y x))
(-.f64 (*.f64 (fma.f64 -6 z 4) y) (*.f64 x (fma.f64 -6 z 3)))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(fma.f64 (fma.f64 -6 z 4) (-.f64 y x) x)
(*.f64 (+.f64 4 (*.f64 -6 z)) y)
(*.f64 (fma.f64 -6 z 4) y)
(+.f64 (*.f64 (+.f64 1 (*.f64 -1 (+.f64 4 (*.f64 -6 z)))) x) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(fma.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x) (fma.f64 (+.f64 4 (*.f64 -6 z)) y x))
(-.f64 (*.f64 (fma.f64 -6 z 4) y) (*.f64 x (fma.f64 -6 z 3)))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(fma.f64 (fma.f64 -6 z 4) (-.f64 y x) x)
(+.f64 (*.f64 (+.f64 1 (*.f64 -1 (+.f64 4 (*.f64 -6 z)))) x) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(fma.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x) (fma.f64 (+.f64 4 (*.f64 -6 z)) y x))
(-.f64 (*.f64 (fma.f64 -6 z 4) y) (*.f64 x (fma.f64 -6 z 3)))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(fma.f64 (fma.f64 -6 z 4) (-.f64 y x) x)
(+.f64 (*.f64 (+.f64 1 (*.f64 -1 (+.f64 4 (*.f64 -6 z)))) x) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(fma.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x) (fma.f64 (+.f64 4 (*.f64 -6 z)) y x))
(-.f64 (*.f64 (fma.f64 -6 z 4) y) (*.f64 x (fma.f64 -6 z 3)))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(fma.f64 (fma.f64 -6 z 4) (-.f64 y x) x)
(*.f64 (+.f64 1 (*.f64 -1 (+.f64 4 (*.f64 -6 z)))) x)
(fma.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x) x)
(*.f64 x (+.f64 (*.f64 z 6) -3))
(*.f64 x (fma.f64 z 6 -3))
(+.f64 (*.f64 (+.f64 1 (*.f64 -1 (+.f64 4 (*.f64 -6 z)))) x) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(fma.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x) (fma.f64 (+.f64 4 (*.f64 -6 z)) y x))
(-.f64 (*.f64 (fma.f64 -6 z 4) y) (*.f64 x (fma.f64 -6 z 3)))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(fma.f64 (fma.f64 -6 z 4) (-.f64 y x) x)
(+.f64 (*.f64 (+.f64 1 (*.f64 -1 (+.f64 4 (*.f64 -6 z)))) x) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(fma.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x) (fma.f64 (+.f64 4 (*.f64 -6 z)) y x))
(-.f64 (*.f64 (fma.f64 -6 z 4) y) (*.f64 x (fma.f64 -6 z 3)))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(fma.f64 (fma.f64 -6 z 4) (-.f64 y x) x)
(+.f64 (*.f64 (+.f64 1 (*.f64 -1 (+.f64 4 (*.f64 -6 z)))) x) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(fma.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x) (fma.f64 (+.f64 4 (*.f64 -6 z)) y x))
(-.f64 (*.f64 (fma.f64 -6 z 4) y) (*.f64 x (fma.f64 -6 z 3)))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(fma.f64 (fma.f64 -6 z 4) (-.f64 y x) x)
(*.f64 -1 (*.f64 (+.f64 3 (*.f64 -6 z)) x))
(fma.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x) x)
(*.f64 x (+.f64 (*.f64 z 6) -3))
(*.f64 x (fma.f64 z 6 -3))
(+.f64 (*.f64 -1 (*.f64 (+.f64 3 (*.f64 -6 z)) x)) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(fma.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x) (fma.f64 (+.f64 4 (*.f64 -6 z)) y x))
(-.f64 (*.f64 (fma.f64 -6 z 4) y) (*.f64 x (fma.f64 -6 z 3)))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(fma.f64 (fma.f64 -6 z 4) (-.f64 y x) x)
(+.f64 (*.f64 -1 (*.f64 (+.f64 3 (*.f64 -6 z)) x)) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(fma.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x) (fma.f64 (+.f64 4 (*.f64 -6 z)) y x))
(-.f64 (*.f64 (fma.f64 -6 z 4) y) (*.f64 x (fma.f64 -6 z 3)))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(fma.f64 (fma.f64 -6 z 4) (-.f64 y x) x)
(+.f64 (*.f64 -1 (*.f64 (+.f64 3 (*.f64 -6 z)) x)) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(fma.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x) (fma.f64 (+.f64 4 (*.f64 -6 z)) y x))
(-.f64 (*.f64 (fma.f64 -6 z 4) y) (*.f64 x (fma.f64 -6 z 3)))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(fma.f64 (fma.f64 -6 z 4) (-.f64 y x) x)
(+.f64 (*.f64 4 (-.f64 y x)) x)
(fma.f64 4 (-.f64 y x) x)
(+.f64 (*.f64 4 (-.f64 y x)) (+.f64 (*.f64 -6 (*.f64 z (-.f64 y x))) x))
(fma.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x) (fma.f64 (+.f64 4 (*.f64 -6 z)) y x))
(-.f64 (*.f64 (fma.f64 -6 z 4) y) (*.f64 x (fma.f64 -6 z 3)))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(fma.f64 (fma.f64 -6 z 4) (-.f64 y x) x)
(+.f64 (*.f64 4 (-.f64 y x)) (+.f64 (*.f64 -6 (*.f64 z (-.f64 y x))) x))
(fma.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x) (fma.f64 (+.f64 4 (*.f64 -6 z)) y x))
(-.f64 (*.f64 (fma.f64 -6 z 4) y) (*.f64 x (fma.f64 -6 z 3)))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(fma.f64 (fma.f64 -6 z 4) (-.f64 y x) x)
(+.f64 (*.f64 4 (-.f64 y x)) (+.f64 (*.f64 -6 (*.f64 z (-.f64 y x))) x))
(fma.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x) (fma.f64 (+.f64 4 (*.f64 -6 z)) y x))
(-.f64 (*.f64 (fma.f64 -6 z 4) y) (*.f64 x (fma.f64 -6 z 3)))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(fma.f64 (fma.f64 -6 z 4) (-.f64 y x) x)
(*.f64 -6 (*.f64 z (-.f64 y x)))
(+.f64 (*.f64 4 (-.f64 y x)) (+.f64 (*.f64 -6 (*.f64 z (-.f64 y x))) x))
(fma.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x) (fma.f64 (+.f64 4 (*.f64 -6 z)) y x))
(-.f64 (*.f64 (fma.f64 -6 z 4) y) (*.f64 x (fma.f64 -6 z 3)))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(fma.f64 (fma.f64 -6 z 4) (-.f64 y x) x)
(+.f64 (*.f64 4 (-.f64 y x)) (+.f64 (*.f64 -6 (*.f64 z (-.f64 y x))) x))
(fma.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x) (fma.f64 (+.f64 4 (*.f64 -6 z)) y x))
(-.f64 (*.f64 (fma.f64 -6 z 4) y) (*.f64 x (fma.f64 -6 z 3)))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(fma.f64 (fma.f64 -6 z 4) (-.f64 y x) x)
(+.f64 (*.f64 4 (-.f64 y x)) (+.f64 (*.f64 -6 (*.f64 z (-.f64 y x))) x))
(fma.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x) (fma.f64 (+.f64 4 (*.f64 -6 z)) y x))
(-.f64 (*.f64 (fma.f64 -6 z 4) y) (*.f64 x (fma.f64 -6 z 3)))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(fma.f64 (fma.f64 -6 z 4) (-.f64 y x) x)
(*.f64 -6 (*.f64 z (-.f64 y x)))
(+.f64 (*.f64 4 (-.f64 y x)) (+.f64 (*.f64 -6 (*.f64 z (-.f64 y x))) x))
(fma.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x) (fma.f64 (+.f64 4 (*.f64 -6 z)) y x))
(-.f64 (*.f64 (fma.f64 -6 z 4) y) (*.f64 x (fma.f64 -6 z 3)))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(fma.f64 (fma.f64 -6 z 4) (-.f64 y x) x)
(+.f64 (*.f64 4 (-.f64 y x)) (+.f64 (*.f64 -6 (*.f64 z (-.f64 y x))) x))
(fma.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x) (fma.f64 (+.f64 4 (*.f64 -6 z)) y x))
(-.f64 (*.f64 (fma.f64 -6 z 4) y) (*.f64 x (fma.f64 -6 z 3)))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(fma.f64 (fma.f64 -6 z 4) (-.f64 y x) x)
(+.f64 (*.f64 4 (-.f64 y x)) (+.f64 (*.f64 -6 (*.f64 z (-.f64 y x))) x))
(fma.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x) (fma.f64 (+.f64 4 (*.f64 -6 z)) y x))
(-.f64 (*.f64 (fma.f64 -6 z 4) y) (*.f64 x (fma.f64 -6 z 3)))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(fma.f64 (fma.f64 -6 z 4) (-.f64 y x) x)
4
(+.f64 4 (*.f64 -6 z))
(fma.f64 -6 z 4)
(+.f64 4 (*.f64 -6 z))
(fma.f64 -6 z 4)
(+.f64 4 (*.f64 -6 z))
(fma.f64 -6 z 4)
(*.f64 -6 z)
(+.f64 4 (*.f64 -6 z))
(fma.f64 -6 z 4)
(+.f64 4 (*.f64 -6 z))
(fma.f64 -6 z 4)
(+.f64 4 (*.f64 -6 z))
(fma.f64 -6 z 4)
(*.f64 -6 z)
(+.f64 4 (*.f64 -6 z))
(fma.f64 -6 z 4)
(+.f64 4 (*.f64 -6 z))
(fma.f64 -6 z 4)
(+.f64 4 (*.f64 -6 z))
(fma.f64 -6 z 4)

eval185.0ms (1.3%)

Compiler

Compiled 4659 to 2834 computations (39.2% saved)

prune68.0ms (0.5%)

Pruning

20 alts after pruning (20 fresh and 0 done)

PrunedKeptTotal
New26620286
Fresh000
Picked101
Done101
Total26820288
Error
0.0b
Counts
288 → 20
Alt Table
Click to see full alt table
StatusErrorProgram
12.5b
(fma.f64 (-.f64 y x) (expm1.f64 (log1p.f64 (fma.f64 z -6 4))) x)
0.4b
(+.f64 x (*.f64 (*.f64 (-.f64 y x) 6) (-.f64 2/3 z)))
0.2b
(+.f64 (*.f64 4 (-.f64 y x)) (+.f64 (*.f64 -6 (*.f64 z (-.f64 y x))) x))
0.4b
(+.f64 x (*.f64 (+.f64 (*.f64 6 y) (*.f64 -6 x)) (-.f64 (/.f64 2 3) z)))
1.4b
(pow.f64 (cbrt.f64 (fma.f64 (*.f64 (-.f64 y x) 6) (-.f64 2/3 z) x)) 3)
21.6b
(+.f64 (*.f64 4 (-.f64 y x)) x)
0.4b
(fma.f64 (*.f64 (-.f64 2/3 z) (-.f64 y x)) 6 x)
32.0b
(*.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x)
31.8b
(fma.f64 (sqrt.f64 (-.f64 y x)) (*.f64 (sqrt.f64 (-.f64 y x)) (*.f64 6 (-.f64 2/3 z))) x)
31.8b
(*.f64 (fma.f64 -6 z 4) y)
7.3b
(+.f64 x (*.f64 (*.f64 (-.f64 y x) 6) (/.f64 (-.f64 4/9 (*.f64 z z)) (+.f64 2/3 z))))
31.8b
(*.f64 (+.f64 4 (*.f64 -6 z)) y)
28.9b
(+.f64 x (*.f64 (/.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) 6) (+.f64 y x)) (-.f64 (/.f64 2 3) z)))
41.6b
(*.f64 -6 (*.f64 z (-.f64 y x)))
0.3b
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (+.f64 (*.f64 6 (*.f64 y (-.f64 2/3 z))) x))
32.3b
(+.f64 x (*.f64 6 (*.f64 y (-.f64 2/3 z))))
0.2b
(+.f64 (*.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
42.0b
(+.f64 x (*.f64 (*.f64 (-.f64 y x) 6) (neg.f64 z)))
32.0b
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) x)
1.4b
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 6 (*.f64 (-.f64 y x) (-.f64 2/3 z)))) 2) (cbrt.f64 (*.f64 6 (*.f64 (-.f64 y x) (-.f64 2/3 z)))) x)
Compiler

Compiled 622 to 446 computations (28.3% saved)

localize15.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (*.f64 -6 (*.f64 z (-.f64 y x))) x)
0.0b
(*.f64 z (-.f64 y x))
0.0b
(+.f64 (*.f64 4 (-.f64 y x)) (+.f64 (*.f64 -6 (*.f64 z (-.f64 y x))) x))
0.3b
(*.f64 -6 (*.f64 z (-.f64 y x)))
Compiler

Compiled 52 to 20 computations (61.5% saved)

series17.0ms (0.1%)

Counts
4 → 114
Calls

36 calls:

TimeVariablePointExpression
2.0ms
y
@inf
(+.f64 (*.f64 4 (-.f64 y x)) (+.f64 (*.f64 -6 (*.f64 z (-.f64 y x))) x))
1.0ms
z
@0
(*.f64 -6 (*.f64 z (-.f64 y x)))
1.0ms
z
@inf
(*.f64 -6 (*.f64 z (-.f64 y x)))
1.0ms
y
@0
(+.f64 (*.f64 4 (-.f64 y x)) (+.f64 (*.f64 -6 (*.f64 z (-.f64 y x))) x))
1.0ms
y
@0
(*.f64 -6 (*.f64 z (-.f64 y x)))

rewrite98.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
691×fma-def_binary64
680×log-prod_binary64
378×fma-neg_binary64
253×expm1-udef_binary64
253×log1p-udef_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01246
127744
2399742
Stop Event
node limit
Counts
4 → 200
Calls
Call 1
Inputs
(*.f64 -6 (*.f64 z (-.f64 y x)))
(+.f64 (*.f64 4 (-.f64 y x)) (+.f64 (*.f64 -6 (*.f64 z (-.f64 y x))) x))
(*.f64 z (-.f64 y x))
(+.f64 (*.f64 -6 (*.f64 z (-.f64 y x))) x)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (-.f64 y x) (*.f64 -6 z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y (*.f64 -6 z)) (*.f64 (neg.f64 x) (*.f64 -6 z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 -6 z) y) (*.f64 (*.f64 -6 z) (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 z) (-.f64 y x)) -6)) (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 z) (-.f64 y x)) -6)))) (log.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 z) (-.f64 y x)) -6))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 z) (-.f64 y x)) -6))) (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 z) (-.f64 y x)) -6))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (-.f64 y x) (*.f64 -6 z)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 -6 z) (-.f64 (pow.f64 y 3) (pow.f64 x 3))) (fma.f64 x (+.f64 y x) (*.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 -6 z) (-.f64 (*.f64 y y) (*.f64 x x))) (+.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (-.f64 y x) (*.f64 -6 z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (-.f64 y x) (*.f64 -6 z))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (-.f64 y x) (*.f64 -6 z))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (-.f64 y x) (*.f64 -6 z)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (-.f64 y x) (*.f64 -6 z)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (pow.f64 (exp.f64 z) (-.f64 y x)) -6))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (-.f64 y x) (*.f64 -6 z)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (-.f64 y x) (*.f64 -6 z)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (-.f64 y x) (*.f64 -6 z))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (-.f64 y x) (*.f64 -6 z))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (-.f64 y x) (*.f64 -6 z))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (-.f64 y x) (*.f64 -6 z))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y (*.f64 -6 z) (*.f64 (neg.f64 x) (*.f64 -6 z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -6 z) y (*.f64 (*.f64 -6 z) (neg.f64 x)))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 (-.f64 y x) (+.f64 4 (*.f64 -6 z)) x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 16 (pow.f64 (-.f64 y x) 2)) (-.f64 (*.f64 (-.f64 y x) 4) (fma.f64 (-.f64 y x) (*.f64 -6 z) x))) (/.f64 (pow.f64 (fma.f64 (-.f64 y x) (*.f64 -6 z) x) 2) (-.f64 (*.f64 (-.f64 y x) 4) (fma.f64 (-.f64 y x) (*.f64 -6 z) x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (-.f64 y x) (+.f64 4 (*.f64 -6 z)) x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 (-.f64 y x) (+.f64 4 (*.f64 -6 z)) x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 (-.f64 y x) (+.f64 4 (*.f64 -6 z)) x)) (pow.f64 (cbrt.f64 (fma.f64 (-.f64 y x) (+.f64 4 (*.f64 -6 z)) x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 (-.f64 y x) (+.f64 4 (*.f64 -6 z)) x)) 2) (cbrt.f64 (fma.f64 (-.f64 y x) (+.f64 4 (*.f64 -6 z)) x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 (-.f64 y x) (+.f64 4 (*.f64 -6 z)) x)) (sqrt.f64 (fma.f64 (-.f64 y x) (+.f64 4 (*.f64 -6 z)) x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 64 (pow.f64 (-.f64 y x) 3) (pow.f64 (fma.f64 (-.f64 y x) (*.f64 -6 z) x) 3)) (/.f64 1 (fma.f64 (fma.f64 (-.f64 y x) (*.f64 -6 z) x) (-.f64 (fma.f64 (-.f64 y x) (*.f64 -6 z) x) (*.f64 (-.f64 y x) 4)) (*.f64 16 (pow.f64 (-.f64 y x) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 16 (pow.f64 (-.f64 y x) 2)) (pow.f64 (fma.f64 (-.f64 y x) (*.f64 -6 z) x) 2)) (/.f64 1 (-.f64 (*.f64 (-.f64 y x) 4) (fma.f64 (-.f64 y x) (*.f64 -6 z) x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (fma.f64 (-.f64 y x) (*.f64 -6 z) x) (-.f64 (fma.f64 (-.f64 y x) (*.f64 -6 z) x) (*.f64 (-.f64 y x) 4)) (*.f64 16 (pow.f64 (-.f64 y x) 2))) (fma.f64 64 (pow.f64 (-.f64 y x) 3) (pow.f64 (fma.f64 (-.f64 y x) (*.f64 -6 z) x) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 (*.f64 (-.f64 y x) 4) (fma.f64 (-.f64 y x) (*.f64 -6 z) x)) (-.f64 (*.f64 16 (pow.f64 (-.f64 y x) 2)) (pow.f64 (fma.f64 (-.f64 y x) (*.f64 -6 z) x) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 64 (pow.f64 (-.f64 y x) 3) (pow.f64 (fma.f64 (-.f64 y x) (*.f64 -6 z) x) 3)) (fma.f64 (fma.f64 (-.f64 y x) (*.f64 -6 z) x) (-.f64 (fma.f64 (-.f64 y x) (*.f64 -6 z) x) (*.f64 (-.f64 y x) 4)) (*.f64 16 (pow.f64 (-.f64 y x) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 64 (pow.f64 (-.f64 y x) 3) (pow.f64 (fma.f64 (-.f64 y x) (*.f64 -6 z) x) 3)) (+.f64 (pow.f64 (fma.f64 (-.f64 y x) (*.f64 -6 z) x) 2) (-.f64 (*.f64 16 (pow.f64 (-.f64 y x) 2)) (*.f64 (-.f64 y x) (*.f64 4 (fma.f64 (-.f64 y x) (*.f64 -6 z) x))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 16 (pow.f64 (-.f64 y x) 2)) (pow.f64 (fma.f64 (-.f64 y x) (*.f64 -6 z) x) 2)) (-.f64 (*.f64 (-.f64 y x) 4) (fma.f64 (-.f64 y x) (*.f64 -6 z) x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (fma.f64 64 (pow.f64 (-.f64 y x) 3) (pow.f64 (fma.f64 (-.f64 y x) (*.f64 -6 z) x) 3))) (neg.f64 (fma.f64 (fma.f64 (-.f64 y x) (*.f64 -6 z) x) (-.f64 (fma.f64 (-.f64 y x) (*.f64 -6 z) x) (*.f64 (-.f64 y x) 4)) (*.f64 16 (pow.f64 (-.f64 y x) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (*.f64 16 (pow.f64 (-.f64 y x) 2)) (pow.f64 (fma.f64 (-.f64 y x) (*.f64 -6 z) x) 2))) (neg.f64 (-.f64 (*.f64 (-.f64 y x) 4) (fma.f64 (-.f64 y x) (*.f64 -6 z) x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 (-.f64 y x) (+.f64 4 (*.f64 -6 z))) 3) (pow.f64 x 3)) (fma.f64 (*.f64 (-.f64 y x) (+.f64 4 (*.f64 -6 z))) (*.f64 (-.f64 y x) (+.f64 4 (*.f64 -6 z))) (-.f64 (*.f64 x x) (*.f64 (*.f64 (-.f64 y x) (+.f64 4 (*.f64 -6 z))) x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (fma.f64 (-.f64 y x) (*.f64 -6 z) x) 2) (*.f64 16 (pow.f64 (-.f64 y x) 2))) (-.f64 (fma.f64 (-.f64 y x) (*.f64 -6 z) x) (*.f64 (-.f64 y x) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 (*.f64 (-.f64 y x) (+.f64 4 (*.f64 -6 z))) (*.f64 (-.f64 y x) (+.f64 4 (*.f64 -6 z))) (neg.f64 (*.f64 x x))) (fma.f64 (-.f64 y x) (+.f64 4 (*.f64 -6 z)) (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 (-.f64 y x) (+.f64 4 (*.f64 -6 z)) x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (-.f64 y x) (+.f64 4 (*.f64 -6 z)) x) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 (-.f64 y x) (+.f64 4 (*.f64 -6 z)) x)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 (-.f64 y x) (+.f64 4 (*.f64 -6 z)) x)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 (fma.f64 (-.f64 y x) (*.f64 -6 z) x) (-.f64 (fma.f64 (-.f64 y x) (*.f64 -6 z) x) (*.f64 (-.f64 y x) 4)) (*.f64 16 (pow.f64 (-.f64 y x) 2))) (fma.f64 64 (pow.f64 (-.f64 y x) 3) (pow.f64 (fma.f64 (-.f64 y x) (*.f64 -6 z) x) 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (-.f64 (*.f64 (-.f64 y x) 4) (fma.f64 (-.f64 y x) (*.f64 -6 z) x)) (-.f64 (*.f64 16 (pow.f64 (-.f64 y x) 2)) (pow.f64 (fma.f64 (-.f64 y x) (*.f64 -6 z) x) 2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 (-.f64 y x) (+.f64 4 (*.f64 -6 z)) x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 (-.f64 y x) (+.f64 4 (*.f64 -6 z)) x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 (-.f64 y x) (+.f64 4 (*.f64 -6 z)) x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 x) (exp.f64 (*.f64 (-.f64 y x) (+.f64 4 (*.f64 -6 z))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 x)) (exp.f64 (*.f64 (-.f64 y x) (+.f64 4 (*.f64 -6 z))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 x) (*.f64 (pow.f64 (exp.f64 4) (-.f64 y x)) (pow.f64 (pow.f64 (exp.f64 z) (-.f64 y x)) -6))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 x)) (*.f64 (pow.f64 (exp.f64 4) (-.f64 y x)) (pow.f64 (pow.f64 (exp.f64 z) (-.f64 y x)) -6))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (-.f64 y x) 4))) (exp.f64 (fma.f64 (-.f64 y x) (*.f64 -6 z) x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 4) (-.f64 y x)) (+.f64 1 (expm1.f64 (fma.f64 (-.f64 y x) (*.f64 -6 z) x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (-.f64 y x) 4))) (+.f64 1 (expm1.f64 (fma.f64 (-.f64 y x) (*.f64 -6 z) x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 (-.f64 y x) (*.f64 -6 z) x))) (pow.f64 (exp.f64 4) (-.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 (-.f64 y x) (*.f64 -6 z) x)) (+.f64 1 (expm1.f64 (*.f64 (-.f64 y x) 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 (-.f64 y x) (*.f64 -6 z) x))) (+.f64 1 (expm1.f64 (*.f64 (-.f64 y x) 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (*.f64 (pow.f64 (exp.f64 4) (-.f64 y x)) (pow.f64 (pow.f64 (exp.f64 z) (-.f64 y x)) -6)) (exp.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 (-.f64 y x) (+.f64 4 (*.f64 -6 z)))) (+.f64 1 (expm1.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (*.f64 (pow.f64 (exp.f64 4) (-.f64 y x)) (pow.f64 (pow.f64 (exp.f64 z) (-.f64 y x)) -6)) (+.f64 1 (expm1.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 (-.f64 y x) (+.f64 4 (*.f64 -6 z)) x) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 (-.f64 y x) (+.f64 4 (*.f64 -6 z)) x)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 (-.f64 y x) (+.f64 4 (*.f64 -6 z)) x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 (-.f64 y x) (+.f64 4 (*.f64 -6 z)) x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 (-.f64 y x) (+.f64 4 (*.f64 -6 z)) x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -6 (*.f64 z (-.f64 y x)) (+.f64 x (*.f64 (-.f64 y x) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 z (*.f64 (-.f64 y x) -6) (+.f64 x (*.f64 (-.f64 y x) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x 1 (*.f64 (-.f64 y x) (+.f64 4 (*.f64 -6 z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 y x) 4 (fma.f64 (-.f64 y x) (*.f64 -6 z) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 y x) (*.f64 -6 z) (+.f64 x (*.f64 (-.f64 y x) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 y x) (+.f64 4 (*.f64 -6 z)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 z (-.f64 y x)) -6 (+.f64 x (*.f64 (-.f64 y x) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 y x) (*.f64 -6 z)) 1 (+.f64 x (*.f64 (-.f64 y x) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 4 (-.f64 y x) (fma.f64 (-.f64 y x) (*.f64 -6 z) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 y x) 4) 1 (fma.f64 (-.f64 y x) (*.f64 -6 z) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (-.f64 y x) (*.f64 -6 z) x) 1 (*.f64 (-.f64 y x) 4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 x (*.f64 (-.f64 y x) (+.f64 4 (*.f64 -6 z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (-.f64 y x) (*.f64 -6 z)) (+.f64 x (*.f64 (-.f64 y x) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (-.f64 y x) 4) (fma.f64 (-.f64 y x) (*.f64 -6 z) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 (-.f64 y x) (*.f64 -6 z) x) (*.f64 (-.f64 y x) 4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (-.f64 y x) (+.f64 4 (*.f64 -6 z))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 (-.f64 y x) (*.f64 -6 z) x)) (pow.f64 (cbrt.f64 (fma.f64 (-.f64 y x) (*.f64 -6 z) x)) 2) (*.f64 (-.f64 y x) 4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 (-.f64 y x) (*.f64 -6 z) x)) 2) (cbrt.f64 (fma.f64 (-.f64 y x) (*.f64 -6 z) x)) (*.f64 (-.f64 y x) 4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (-.f64 y x) (*.f64 -6 z))) (pow.f64 (cbrt.f64 (*.f64 (-.f64 y x) (*.f64 -6 z))) 2) (+.f64 x (*.f64 (-.f64 y x) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 y x) (*.f64 -6 z))) 2) (cbrt.f64 (*.f64 (-.f64 y x) (*.f64 -6 z))) (+.f64 x (*.f64 (-.f64 y x) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 x) (pow.f64 (cbrt.f64 x) 2) (*.f64 (-.f64 y x) (+.f64 4 (*.f64 -6 z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x) (*.f64 (-.f64 y x) (+.f64 4 (*.f64 -6 z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 y x)) 2) (*.f64 (cbrt.f64 (-.f64 y x)) 4) (fma.f64 (-.f64 y x) (*.f64 -6 z) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (-.f64 y x) 4)) (pow.f64 (cbrt.f64 (*.f64 (-.f64 y x) 4)) 2) (fma.f64 (-.f64 y x) (*.f64 -6 z) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 y x) 4)) 2) (cbrt.f64 (*.f64 (-.f64 y x) 4)) (fma.f64 (-.f64 y x) (*.f64 -6 z) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 z (-.f64 y x))) 2) (*.f64 (cbrt.f64 (*.f64 z (-.f64 y x))) -6) (+.f64 x (*.f64 (-.f64 y x) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 (-.f64 y x) (*.f64 -6 z) x)) (sqrt.f64 (fma.f64 (-.f64 y x) (*.f64 -6 z) x)) (*.f64 (-.f64 y x) 4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (-.f64 y x) (*.f64 -6 z))) (sqrt.f64 (*.f64 (-.f64 y x) (*.f64 -6 z))) (+.f64 x (*.f64 (-.f64 y x) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (sqrt.f64 x) (*.f64 (-.f64 y x) (+.f64 4 (*.f64 -6 z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 y x)) (*.f64 (sqrt.f64 (-.f64 y x)) 4) (fma.f64 (-.f64 y x) (*.f64 -6 z) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 2 (sqrt.f64 (-.f64 y x))) (*.f64 2 (sqrt.f64 (-.f64 y x))) (fma.f64 (-.f64 y x) (*.f64 -6 z) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 z (-.f64 y x))) (*.f64 (sqrt.f64 (*.f64 z (-.f64 y x))) -6) (+.f64 x (*.f64 (-.f64 y x) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 -216 (pow.f64 (*.f64 z (-.f64 y x)) 3) (pow.f64 x 3)) (/.f64 1 (fma.f64 x (-.f64 x (*.f64 (-.f64 y x) (*.f64 -6 z))) (pow.f64 (*.f64 (-.f64 y x) (*.f64 -6 z)) 2))) (*.f64 (-.f64 y x) 4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 (-.f64 y x) (*.f64 -6 z)) 2) (*.f64 x x)) (/.f64 1 (-.f64 (*.f64 (-.f64 y x) (*.f64 -6 z)) x)) (*.f64 (-.f64 y x) 4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -6 z) (-.f64 y x) (+.f64 x (*.f64 (-.f64 y x) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 y x) (+.f64 4 (*.f64 -6 z))) 1 x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (*.f64 (-.f64 y x) (+.f64 4 (*.f64 -6 z)))) (cbrt.f64 (*.f64 (-.f64 y x) (+.f64 4 (*.f64 -6 z))))) (cbrt.f64 (*.f64 (-.f64 y x) (+.f64 4 (*.f64 -6 z)))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (-.f64 y x) (+.f64 4 (*.f64 -6 z)))) (sqrt.f64 (*.f64 (-.f64 y x) (+.f64 4 (*.f64 -6 z)))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -6 (-.f64 y x)) z (+.f64 x (*.f64 (-.f64 y x) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -6 (pow.f64 (cbrt.f64 (*.f64 z (-.f64 y x))) 2)) (cbrt.f64 (*.f64 z (-.f64 y x))) (+.f64 x (*.f64 (-.f64 y x) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -6 (sqrt.f64 (*.f64 z (-.f64 y x)))) (sqrt.f64 (*.f64 z (-.f64 y x))) (+.f64 x (*.f64 (-.f64 y x) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 -6 z) 1) (-.f64 y x) (+.f64 x (*.f64 (-.f64 y x) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 -6 z) (pow.f64 (cbrt.f64 (-.f64 y x)) 2)) (cbrt.f64 (-.f64 y x)) (+.f64 x (*.f64 (-.f64 y x) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 -6 z) (sqrt.f64 (-.f64 y x))) (sqrt.f64 (-.f64 y x)) (+.f64 x (*.f64 (-.f64 y x) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 4 (pow.f64 (cbrt.f64 (-.f64 y x)) 2)) (cbrt.f64 (-.f64 y x)) (fma.f64 (-.f64 y x) (*.f64 -6 z) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 4 (sqrt.f64 (-.f64 y x))) (sqrt.f64 (-.f64 y x)) (fma.f64 (-.f64 y x) (*.f64 -6 z) x))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 z (-.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y z) (*.f64 (neg.f64 x) z))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 z y) (*.f64 z (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 z) (-.f64 y x))) (cbrt.f64 (pow.f64 (exp.f64 z) (-.f64 y x))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 z) (-.f64 y x)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 z) (-.f64 y x)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 z) (-.f64 y x)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 z (-.f64 y x)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 y 3) (pow.f64 x 3)) z) (fma.f64 x (+.f64 y x) (*.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) z) (+.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 z (-.f64 (pow.f64 y 3) (pow.f64 x 3))) (fma.f64 x (+.f64 y x) (*.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 z (-.f64 (*.f64 y y) (*.f64 x x))) (+.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 z (-.f64 y x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 z (-.f64 y x)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 z (-.f64 y x))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 z (-.f64 y x))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 z (-.f64 y x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 z) (-.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 z (-.f64 y x)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 z (-.f64 y x)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 z 3) (pow.f64 (-.f64 y x) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (-.f64 y x) 3) (pow.f64 z 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 z (-.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 z (-.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 z (-.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 z (-.f64 y x))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 z y (*.f64 z (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y z (*.f64 (neg.f64 x) z))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 (-.f64 y x) (*.f64 -6 z) x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (*.f64 (-.f64 y x) (*.f64 -6 z)) 2) (-.f64 (*.f64 (-.f64 y x) (*.f64 -6 z)) x)) (/.f64 (*.f64 x x) (-.f64 (*.f64 (-.f64 y x) (*.f64 -6 z)) x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (-.f64 y x) (*.f64 -6 z) x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 (-.f64 y x) (*.f64 -6 z) x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 (-.f64 y x) (*.f64 -6 z) x)) (pow.f64 (cbrt.f64 (fma.f64 (-.f64 y x) (*.f64 -6 z) x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 (-.f64 y x) (*.f64 -6 z) x)) 2) (cbrt.f64 (fma.f64 (-.f64 y x) (*.f64 -6 z) x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 (-.f64 y x) (*.f64 -6 z) x)) (sqrt.f64 (fma.f64 (-.f64 y x) (*.f64 -6 z) x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 -216 (pow.f64 (*.f64 z (-.f64 y x)) 3) (pow.f64 x 3)) (/.f64 1 (fma.f64 x (-.f64 x (*.f64 (-.f64 y x) (*.f64 -6 z))) (pow.f64 (*.f64 (-.f64 y x) (*.f64 -6 z)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (*.f64 (-.f64 y x) (*.f64 -6 z)) 2) (*.f64 x x)) (/.f64 1 (-.f64 (*.f64 (-.f64 y x) (*.f64 -6 z)) x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 x (-.f64 x (*.f64 (-.f64 y x) (*.f64 -6 z))) (pow.f64 (*.f64 (-.f64 y x) (*.f64 -6 z)) 2)) (fma.f64 -216 (pow.f64 (*.f64 z (-.f64 y x)) 3) (pow.f64 x 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 (*.f64 (-.f64 y x) (*.f64 -6 z)) x) (-.f64 (pow.f64 (*.f64 (-.f64 y x) (*.f64 -6 z)) 2) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 -216 (pow.f64 (*.f64 z (-.f64 y x)) 3) (pow.f64 x 3)) (fma.f64 x (-.f64 x (*.f64 (-.f64 y x) (*.f64 -6 z))) (pow.f64 (*.f64 (-.f64 y x) (*.f64 -6 z)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 -216 (pow.f64 (*.f64 z (-.f64 y x)) 3) (pow.f64 x 3)) (fma.f64 x x (-.f64 (pow.f64 (*.f64 (-.f64 y x) (*.f64 -6 z)) 2) (*.f64 x (*.f64 (-.f64 y x) (*.f64 -6 z))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (-.f64 y x) (*.f64 -6 z)) 2) (*.f64 x x)) (-.f64 (*.f64 (-.f64 y x) (*.f64 -6 z)) x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (fma.f64 -216 (pow.f64 (*.f64 z (-.f64 y x)) 3) (pow.f64 x 3))) (neg.f64 (fma.f64 x (-.f64 x (*.f64 (-.f64 y x) (*.f64 -6 z))) (pow.f64 (*.f64 (-.f64 y x) (*.f64 -6 z)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (-.f64 y x) (*.f64 -6 z)) 2) (*.f64 x x))) (neg.f64 (-.f64 (*.f64 (-.f64 y x) (*.f64 -6 z)) x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 (-.f64 y x) (*.f64 -6 z)) 2)) (-.f64 x (*.f64 (-.f64 y x) (*.f64 -6 z))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 (-.f64 y x) (*.f64 -6 z) x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 (-.f64 y x) (*.f64 -6 z) x)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 (-.f64 y x) (*.f64 -6 z) x)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (-.f64 y x) (*.f64 -6 z) x) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 x (-.f64 x (*.f64 (-.f64 y x) (*.f64 -6 z))) (pow.f64 (*.f64 (-.f64 y x) (*.f64 -6 z)) 2)) (fma.f64 -216 (pow.f64 (*.f64 z (-.f64 y x)) 3) (pow.f64 x 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (-.f64 (*.f64 (-.f64 y x) (*.f64 -6 z)) x) (-.f64 (pow.f64 (*.f64 (-.f64 y x) (*.f64 -6 z)) 2) (*.f64 x x))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 (-.f64 y x) (*.f64 -6 z) x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 (-.f64 y x) (*.f64 -6 z) x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 (-.f64 y x) (*.f64 -6 z) x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 x)) (pow.f64 (pow.f64 (exp.f64 z) (-.f64 y x)) -6)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 x) (+.f64 1 (expm1.f64 (*.f64 (-.f64 y x) (*.f64 -6 z))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 x)) (+.f64 1 (expm1.f64 (*.f64 (-.f64 y x) (*.f64 -6 z))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (-.f64 y x) (*.f64 -6 z)))) (exp.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (pow.f64 (exp.f64 z) (-.f64 y x)) -6) (+.f64 1 (expm1.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (-.f64 y x) (*.f64 -6 z)))) (+.f64 1 (expm1.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 (-.f64 y x) (*.f64 -6 z) x) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 (-.f64 y x) (*.f64 -6 z) x)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 (-.f64 y x) (*.f64 -6 z) x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 (-.f64 y x) (*.f64 -6 z) x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 (-.f64 y x) (*.f64 -6 z) x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -6 (*.f64 z (-.f64 y x)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 z (*.f64 (-.f64 y x) -6) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x 1 (*.f64 (-.f64 y x) (*.f64 -6 z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 y x) (*.f64 -6 z) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 z (-.f64 y x)) -6 x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 y x) (*.f64 -6 z)) 1 x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 x (*.f64 (-.f64 y x) (*.f64 -6 z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (-.f64 y x) (*.f64 -6 z)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (-.f64 y x) (*.f64 -6 z))) (pow.f64 (cbrt.f64 (*.f64 (-.f64 y x) (*.f64 -6 z))) 2) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 y x) (*.f64 -6 z))) 2) (cbrt.f64 (*.f64 (-.f64 y x) (*.f64 -6 z))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 x) (pow.f64 (cbrt.f64 x) 2) (*.f64 (-.f64 y x) (*.f64 -6 z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x) (*.f64 (-.f64 y x) (*.f64 -6 z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 z (-.f64 y x))) 2) (*.f64 (cbrt.f64 (*.f64 z (-.f64 y x))) -6) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (-.f64 y x) (*.f64 -6 z))) (sqrt.f64 (*.f64 (-.f64 y x) (*.f64 -6 z))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (sqrt.f64 x) (*.f64 (-.f64 y x) (*.f64 -6 z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 z (-.f64 y x))) (*.f64 (sqrt.f64 (*.f64 z (-.f64 y x))) -6) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -6 z) (-.f64 y x) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -6 (-.f64 y x)) z x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -6 (pow.f64 (cbrt.f64 (*.f64 z (-.f64 y x))) 2)) (cbrt.f64 (*.f64 z (-.f64 y x))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -6 (sqrt.f64 (*.f64 z (-.f64 y x)))) (sqrt.f64 (*.f64 z (-.f64 y x))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 -6 z) 1) (-.f64 y x) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 -6 z) (pow.f64 (cbrt.f64 (-.f64 y x)) 2)) (cbrt.f64 (-.f64 y x)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 -6 z) (sqrt.f64 (-.f64 y x))) (sqrt.f64 (-.f64 y x)) x)))))

simplify221.0ms (1.5%)

Algorithm
egg-herbie
Rules
2942×fma-neg_binary64
909×fma-def_binary64
432×unsub-neg_binary64
378×sub-neg_binary64
361×distribute-neg-out_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0601376
11671313
24261126
311491018
428421018
547761018
659611018
761071018
861091018
961091018
1061811018
1162141018
1262141018
Stop Event
node limit
Counts
314 → 238
Calls
Call 1
Inputs
(*.f64 6 (*.f64 z x))
(+.f64 (*.f64 6 (*.f64 z x)) (*.f64 -6 (*.f64 y z)))
(+.f64 (*.f64 6 (*.f64 z x)) (*.f64 -6 (*.f64 y z)))
(+.f64 (*.f64 6 (*.f64 z x)) (*.f64 -6 (*.f64 y z)))
(*.f64 -6 (*.f64 y z))
(+.f64 (*.f64 6 (*.f64 z x)) (*.f64 -6 (*.f64 y z)))
(+.f64 (*.f64 6 (*.f64 z x)) (*.f64 -6 (*.f64 y z)))
(+.f64 (*.f64 6 (*.f64 z x)) (*.f64 -6 (*.f64 y z)))
(*.f64 -6 (*.f64 y z))
(+.f64 (*.f64 6 (*.f64 z x)) (*.f64 -6 (*.f64 y z)))
(+.f64 (*.f64 6 (*.f64 z x)) (*.f64 -6 (*.f64 y z)))
(+.f64 (*.f64 6 (*.f64 z x)) (*.f64 -6 (*.f64 y z)))
(*.f64 -6 (*.f64 y z))
(+.f64 (*.f64 6 (*.f64 z x)) (*.f64 -6 (*.f64 y z)))
(+.f64 (*.f64 6 (*.f64 z x)) (*.f64 -6 (*.f64 y z)))
(+.f64 (*.f64 6 (*.f64 z x)) (*.f64 -6 (*.f64 y z)))
(*.f64 6 (*.f64 z x))
(+.f64 (*.f64 6 (*.f64 z x)) (*.f64 -6 (*.f64 y z)))
(+.f64 (*.f64 6 (*.f64 z x)) (*.f64 -6 (*.f64 y z)))
(+.f64 (*.f64 6 (*.f64 z x)) (*.f64 -6 (*.f64 y z)))
(*.f64 6 (*.f64 z x))
(+.f64 (*.f64 6 (*.f64 z x)) (*.f64 -6 (*.f64 y z)))
(+.f64 (*.f64 6 (*.f64 z x)) (*.f64 -6 (*.f64 y z)))
(+.f64 (*.f64 6 (*.f64 z x)) (*.f64 -6 (*.f64 y z)))
(+.f64 (*.f64 -4 x) (+.f64 (*.f64 6 (*.f64 z x)) x))
(+.f64 (*.f64 6 (*.f64 z x)) (+.f64 (*.f64 -4 x) (+.f64 (*.f64 (+.f64 4 (*.f64 -6 z)) y) x)))
(+.f64 (*.f64 6 (*.f64 z x)) (+.f64 (*.f64 -4 x) (+.f64 (*.f64 (+.f64 4 (*.f64 -6 z)) y) x)))
(+.f64 (*.f64 6 (*.f64 z x)) (+.f64 (*.f64 -4 x) (+.f64 (*.f64 (+.f64 4 (*.f64 -6 z)) y) x)))
(*.f64 (+.f64 4 (*.f64 -6 z)) y)
(+.f64 (*.f64 6 (*.f64 z x)) (+.f64 (*.f64 -4 x) (+.f64 (*.f64 (+.f64 4 (*.f64 -6 z)) y) x)))
(+.f64 (*.f64 6 (*.f64 z x)) (+.f64 (*.f64 -4 x) (+.f64 (*.f64 (+.f64 4 (*.f64 -6 z)) y) x)))
(+.f64 (*.f64 6 (*.f64 z x)) (+.f64 (*.f64 -4 x) (+.f64 (*.f64 (+.f64 4 (*.f64 -6 z)) y) x)))
(*.f64 -1 (*.f64 y (-.f64 (*.f64 6 z) 4)))
(+.f64 (*.f64 6 (*.f64 z x)) (+.f64 (*.f64 -4 x) (+.f64 (*.f64 -1 (*.f64 y (-.f64 (*.f64 6 z) 4))) x)))
(+.f64 (*.f64 6 (*.f64 z x)) (+.f64 (*.f64 -4 x) (+.f64 (*.f64 -1 (*.f64 y (-.f64 (*.f64 6 z) 4))) x)))
(+.f64 (*.f64 6 (*.f64 z x)) (+.f64 (*.f64 -4 x) (+.f64 (*.f64 -1 (*.f64 y (-.f64 (*.f64 6 z) 4))) x)))
(+.f64 (*.f64 4 y) (*.f64 -6 (*.f64 y z)))
(+.f64 (*.f64 4 y) (+.f64 (*.f64 (-.f64 (*.f64 6 z) 3) x) (*.f64 -6 (*.f64 y z))))
(+.f64 (*.f64 4 y) (+.f64 (*.f64 (-.f64 (*.f64 6 z) 3) x) (*.f64 -6 (*.f64 y z))))
(+.f64 (*.f64 4 y) (+.f64 (*.f64 (-.f64 (*.f64 6 z) 3) x) (*.f64 -6 (*.f64 y z))))
(*.f64 (-.f64 (*.f64 6 z) 3) x)
(+.f64 (*.f64 4 y) (+.f64 (*.f64 (-.f64 (*.f64 6 z) 3) x) (*.f64 -6 (*.f64 y z))))
(+.f64 (*.f64 4 y) (+.f64 (*.f64 (-.f64 (*.f64 6 z) 3) x) (*.f64 -6 (*.f64 y z))))
(+.f64 (*.f64 4 y) (+.f64 (*.f64 (-.f64 (*.f64 6 z) 3) x) (*.f64 -6 (*.f64 y z))))
(*.f64 -1 (*.f64 (+.f64 3 (*.f64 -6 z)) x))
(+.f64 (*.f64 4 y) (+.f64 (*.f64 -1 (*.f64 (+.f64 3 (*.f64 -6 z)) x)) (*.f64 -6 (*.f64 y z))))
(+.f64 (*.f64 4 y) (+.f64 (*.f64 -1 (*.f64 (+.f64 3 (*.f64 -6 z)) x)) (*.f64 -6 (*.f64 y z))))
(+.f64 (*.f64 4 y) (+.f64 (*.f64 -1 (*.f64 (+.f64 3 (*.f64 -6 z)) x)) (*.f64 -6 (*.f64 y z))))
(+.f64 (*.f64 4 (-.f64 y x)) x)
(*.f64 -6 (*.f64 z (-.f64 y x)))
(*.f64 -6 (*.f64 z (-.f64 y x)))
(*.f64 (-.f64 y x) z)
(*.f64 (-.f64 y x) z)
(*.f64 (-.f64 y x) z)
(*.f64 (-.f64 y x) z)
(*.f64 (-.f64 y x) z)
(*.f64 (-.f64 y x) z)
(*.f64 (-.f64 y x) z)
(*.f64 (-.f64 y x) z)
(*.f64 (-.f64 y x) z)
(*.f64 (-.f64 y x) z)
(*.f64 (-.f64 y x) z)
(*.f64 (-.f64 y x) z)
(*.f64 -1 (*.f64 z x))
(+.f64 (*.f64 y z) (*.f64 -1 (*.f64 z x)))
(+.f64 (*.f64 y z) (*.f64 -1 (*.f64 z x)))
(+.f64 (*.f64 y z) (*.f64 -1 (*.f64 z x)))
(*.f64 y z)
(+.f64 (*.f64 y z) (*.f64 -1 (*.f64 z x)))
(+.f64 (*.f64 y z) (*.f64 -1 (*.f64 z x)))
(+.f64 (*.f64 y z) (*.f64 -1 (*.f64 z x)))
(*.f64 y z)
(+.f64 (*.f64 y z) (*.f64 -1 (*.f64 z x)))
(+.f64 (*.f64 y z) (*.f64 -1 (*.f64 z x)))
(+.f64 (*.f64 y z) (*.f64 -1 (*.f64 z x)))
(*.f64 y z)
(+.f64 (*.f64 y z) (*.f64 -1 (*.f64 z x)))
(+.f64 (*.f64 y z) (*.f64 -1 (*.f64 z x)))
(+.f64 (*.f64 y z) (*.f64 -1 (*.f64 z x)))
(*.f64 -1 (*.f64 z x))
(+.f64 (*.f64 y z) (*.f64 -1 (*.f64 z x)))
(+.f64 (*.f64 y z) (*.f64 -1 (*.f64 z x)))
(+.f64 (*.f64 y z) (*.f64 -1 (*.f64 z x)))
(*.f64 -1 (*.f64 z x))
(+.f64 (*.f64 y z) (*.f64 -1 (*.f64 z x)))
(+.f64 (*.f64 y z) (*.f64 -1 (*.f64 z x)))
(+.f64 (*.f64 y z) (*.f64 -1 (*.f64 z x)))
x
(*.f64 -6 (*.f64 z (-.f64 y x)))
(*.f64 -6 (*.f64 z (-.f64 y x)))
(+.f64 (*.f64 6 (*.f64 z x)) x)
(+.f64 (*.f64 6 (*.f64 z x)) (+.f64 (*.f64 -6 (*.f64 y z)) x))
(+.f64 (*.f64 6 (*.f64 z x)) (+.f64 (*.f64 -6 (*.f64 y z)) x))
(+.f64 (*.f64 6 (*.f64 z x)) (+.f64 (*.f64 -6 (*.f64 y z)) x))
(*.f64 -6 (*.f64 y z))
(+.f64 (*.f64 6 (*.f64 z x)) (+.f64 (*.f64 -6 (*.f64 y z)) x))
(+.f64 (*.f64 6 (*.f64 z x)) (+.f64 (*.f64 -6 (*.f64 y z)) x))
(+.f64 (*.f64 6 (*.f64 z x)) (+.f64 (*.f64 -6 (*.f64 y z)) x))
(*.f64 -6 (*.f64 y z))
(+.f64 (*.f64 6 (*.f64 z x)) (+.f64 (*.f64 -6 (*.f64 y z)) x))
(+.f64 (*.f64 6 (*.f64 z x)) (+.f64 (*.f64 -6 (*.f64 y z)) x))
(+.f64 (*.f64 6 (*.f64 z x)) (+.f64 (*.f64 -6 (*.f64 y z)) x))
(*.f64 -6 (*.f64 y z))
(+.f64 (*.f64 (+.f64 1 (*.f64 6 z)) x) (*.f64 -6 (*.f64 y z)))
(+.f64 (*.f64 (+.f64 1 (*.f64 6 z)) x) (*.f64 -6 (*.f64 y z)))
(+.f64 (*.f64 (+.f64 1 (*.f64 6 z)) x) (*.f64 -6 (*.f64 y z)))
(*.f64 (+.f64 1 (*.f64 6 z)) x)
(+.f64 (*.f64 (+.f64 1 (*.f64 6 z)) x) (*.f64 -6 (*.f64 y z)))
(+.f64 (*.f64 (+.f64 1 (*.f64 6 z)) x) (*.f64 -6 (*.f64 y z)))
(+.f64 (*.f64 (+.f64 1 (*.f64 6 z)) x) (*.f64 -6 (*.f64 y z)))
(*.f64 -1 (*.f64 (-.f64 (*.f64 -6 z) 1) x))
(+.f64 (*.f64 -1 (*.f64 (-.f64 (*.f64 -6 z) 1) x)) (*.f64 -6 (*.f64 y z)))
(+.f64 (*.f64 -1 (*.f64 (-.f64 (*.f64 -6 z) 1) x)) (*.f64 -6 (*.f64 y z)))
(+.f64 (*.f64 -1 (*.f64 (-.f64 (*.f64 -6 z) 1) x)) (*.f64 -6 (*.f64 y z)))
Outputs
(*.f64 6 (*.f64 z x))
(*.f64 x (*.f64 6 z))
(+.f64 (*.f64 6 (*.f64 z x)) (*.f64 -6 (*.f64 y z)))
(fma.f64 6 (*.f64 z x) (*.f64 -6 (*.f64 z y)))
(fma.f64 6 (*.f64 z x) (*.f64 z (*.f64 -6 y)))
(*.f64 z (*.f64 -6 (-.f64 y x)))
(+.f64 (*.f64 6 (*.f64 z x)) (*.f64 -6 (*.f64 y z)))
(fma.f64 6 (*.f64 z x) (*.f64 -6 (*.f64 z y)))
(fma.f64 6 (*.f64 z x) (*.f64 z (*.f64 -6 y)))
(*.f64 z (*.f64 -6 (-.f64 y x)))
(+.f64 (*.f64 6 (*.f64 z x)) (*.f64 -6 (*.f64 y z)))
(fma.f64 6 (*.f64 z x) (*.f64 -6 (*.f64 z y)))
(fma.f64 6 (*.f64 z x) (*.f64 z (*.f64 -6 y)))
(*.f64 z (*.f64 -6 (-.f64 y x)))
(*.f64 -6 (*.f64 y z))
(*.f64 -6 (*.f64 z y))
(*.f64 z (*.f64 -6 y))
(+.f64 (*.f64 6 (*.f64 z x)) (*.f64 -6 (*.f64 y z)))
(fma.f64 6 (*.f64 z x) (*.f64 -6 (*.f64 z y)))
(fma.f64 6 (*.f64 z x) (*.f64 z (*.f64 -6 y)))
(*.f64 z (*.f64 -6 (-.f64 y x)))
(+.f64 (*.f64 6 (*.f64 z x)) (*.f64 -6 (*.f64 y z)))
(fma.f64 6 (*.f64 z x) (*.f64 -6 (*.f64 z y)))
(fma.f64 6 (*.f64 z x) (*.f64 z (*.f64 -6 y)))
(*.f64 z (*.f64 -6 (-.f64 y x)))
(+.f64 (*.f64 6 (*.f64 z x)) (*.f64 -6 (*.f64 y z)))
(fma.f64 6 (*.f64 z x) (*.f64 -6 (*.f64 z y)))
(fma.f64 6 (*.f64 z x) (*.f64 z (*.f64 -6 y)))
(*.f64 z (*.f64 -6 (-.f64 y x)))
(*.f64 -6 (*.f64 y z))
(*.f64 -6 (*.f64 z y))
(*.f64 z (*.f64 -6 y))
(+.f64 (*.f64 6 (*.f64 z x)) (*.f64 -6 (*.f64 y z)))
(fma.f64 6 (*.f64 z x) (*.f64 -6 (*.f64 z y)))
(fma.f64 6 (*.f64 z x) (*.f64 z (*.f64 -6 y)))
(*.f64 z (*.f64 -6 (-.f64 y x)))
(+.f64 (*.f64 6 (*.f64 z x)) (*.f64 -6 (*.f64 y z)))
(fma.f64 6 (*.f64 z x) (*.f64 -6 (*.f64 z y)))
(fma.f64 6 (*.f64 z x) (*.f64 z (*.f64 -6 y)))
(*.f64 z (*.f64 -6 (-.f64 y x)))
(+.f64 (*.f64 6 (*.f64 z x)) (*.f64 -6 (*.f64 y z)))
(fma.f64 6 (*.f64 z x) (*.f64 -6 (*.f64 z y)))
(fma.f64 6 (*.f64 z x) (*.f64 z (*.f64 -6 y)))
(*.f64 z (*.f64 -6 (-.f64 y x)))
(*.f64 -6 (*.f64 y z))
(*.f64 -6 (*.f64 z y))
(*.f64 z (*.f64 -6 y))
(+.f64 (*.f64 6 (*.f64 z x)) (*.f64 -6 (*.f64 y z)))
(fma.f64 6 (*.f64 z x) (*.f64 -6 (*.f64 z y)))
(fma.f64 6 (*.f64 z x) (*.f64 z (*.f64 -6 y)))
(*.f64 z (*.f64 -6 (-.f64 y x)))
(+.f64 (*.f64 6 (*.f64 z x)) (*.f64 -6 (*.f64 y z)))
(fma.f64 6 (*.f64 z x) (*.f64 -6 (*.f64 z y)))
(fma.f64 6 (*.f64 z x) (*.f64 z (*.f64 -6 y)))
(*.f64 z (*.f64 -6 (-.f64 y x)))
(+.f64 (*.f64 6 (*.f64 z x)) (*.f64 -6 (*.f64 y z)))
(fma.f64 6 (*.f64 z x) (*.f64 -6 (*.f64 z y)))
(fma.f64 6 (*.f64 z x) (*.f64 z (*.f64 -6 y)))
(*.f64 z (*.f64 -6 (-.f64 y x)))
(*.f64 6 (*.f64 z x))
(*.f64 x (*.f64 6 z))
(+.f64 (*.f64 6 (*.f64 z x)) (*.f64 -6 (*.f64 y z)))
(fma.f64 6 (*.f64 z x) (*.f64 -6 (*.f64 z y)))
(fma.f64 6 (*.f64 z x) (*.f64 z (*.f64 -6 y)))
(*.f64 z (*.f64 -6 (-.f64 y x)))
(+.f64 (*.f64 6 (*.f64 z x)) (*.f64 -6 (*.f64 y z)))
(fma.f64 6 (*.f64 z x) (*.f64 -6 (*.f64 z y)))
(fma.f64 6 (*.f64 z x) (*.f64 z (*.f64 -6 y)))
(*.f64 z (*.f64 -6 (-.f64 y x)))
(+.f64 (*.f64 6 (*.f64 z x)) (*.f64 -6 (*.f64 y z)))
(fma.f64 6 (*.f64 z x) (*.f64 -6 (*.f64 z y)))
(fma.f64 6 (*.f64 z x) (*.f64 z (*.f64 -6 y)))
(*.f64 z (*.f64 -6 (-.f64 y x)))
(*.f64 6 (*.f64 z x))
(*.f64 x (*.f64 6 z))
(+.f64 (*.f64 6 (*.f64 z x)) (*.f64 -6 (*.f64 y z)))
(fma.f64 6 (*.f64 z x) (*.f64 -6 (*.f64 z y)))
(fma.f64 6 (*.f64 z x) (*.f64 z (*.f64 -6 y)))
(*.f64 z (*.f64 -6 (-.f64 y x)))
(+.f64 (*.f64 6 (*.f64 z x)) (*.f64 -6 (*.f64 y z)))
(fma.f64 6 (*.f64 z x) (*.f64 -6 (*.f64 z y)))
(fma.f64 6 (*.f64 z x) (*.f64 z (*.f64 -6 y)))
(*.f64 z (*.f64 -6 (-.f64 y x)))
(+.f64 (*.f64 6 (*.f64 z x)) (*.f64 -6 (*.f64 y z)))
(fma.f64 6 (*.f64 z x) (*.f64 -6 (*.f64 z y)))
(fma.f64 6 (*.f64 z x) (*.f64 z (*.f64 -6 y)))
(*.f64 z (*.f64 -6 (-.f64 y x)))
(+.f64 (*.f64 -4 x) (+.f64 (*.f64 6 (*.f64 z x)) x))
(fma.f64 -4 x (fma.f64 6 (*.f64 z x) x))
(+.f64 x (*.f64 x (fma.f64 6 z -4)))
(*.f64 x (fma.f64 6 z -3))
(+.f64 (*.f64 6 (*.f64 z x)) (+.f64 (*.f64 -4 x) (+.f64 (*.f64 (+.f64 4 (*.f64 -6 z)) y) x)))
(fma.f64 6 (*.f64 z x) (fma.f64 -4 x (fma.f64 (+.f64 4 (*.f64 z -6)) y x)))
(+.f64 (fma.f64 y (fma.f64 z -6 4) x) (*.f64 x (fma.f64 6 z -4)))
(fma.f64 y (fma.f64 z -6 4) (*.f64 x (fma.f64 6 z -3)))
(fma.f64 (fma.f64 6 z -4) (-.f64 x y) x)
(+.f64 (*.f64 6 (*.f64 z x)) (+.f64 (*.f64 -4 x) (+.f64 (*.f64 (+.f64 4 (*.f64 -6 z)) y) x)))
(fma.f64 6 (*.f64 z x) (fma.f64 -4 x (fma.f64 (+.f64 4 (*.f64 z -6)) y x)))
(+.f64 (fma.f64 y (fma.f64 z -6 4) x) (*.f64 x (fma.f64 6 z -4)))
(fma.f64 y (fma.f64 z -6 4) (*.f64 x (fma.f64 6 z -3)))
(fma.f64 (fma.f64 6 z -4) (-.f64 x y) x)
(+.f64 (*.f64 6 (*.f64 z x)) (+.f64 (*.f64 -4 x) (+.f64 (*.f64 (+.f64 4 (*.f64 -6 z)) y) x)))
(fma.f64 6 (*.f64 z x) (fma.f64 -4 x (fma.f64 (+.f64 4 (*.f64 z -6)) y x)))
(+.f64 (fma.f64 y (fma.f64 z -6 4) x) (*.f64 x (fma.f64 6 z -4)))
(fma.f64 y (fma.f64 z -6 4) (*.f64 x (fma.f64 6 z -3)))
(fma.f64 (fma.f64 6 z -4) (-.f64 x y) x)
(*.f64 (+.f64 4 (*.f64 -6 z)) y)
(*.f64 y (+.f64 4 (*.f64 z -6)))
(*.f64 y (fma.f64 z -6 4))
(+.f64 (*.f64 6 (*.f64 z x)) (+.f64 (*.f64 -4 x) (+.f64 (*.f64 (+.f64 4 (*.f64 -6 z)) y) x)))
(fma.f64 6 (*.f64 z x) (fma.f64 -4 x (fma.f64 (+.f64 4 (*.f64 z -6)) y x)))
(+.f64 (fma.f64 y (fma.f64 z -6 4) x) (*.f64 x (fma.f64 6 z -4)))
(fma.f64 y (fma.f64 z -6 4) (*.f64 x (fma.f64 6 z -3)))
(fma.f64 (fma.f64 6 z -4) (-.f64 x y) x)
(+.f64 (*.f64 6 (*.f64 z x)) (+.f64 (*.f64 -4 x) (+.f64 (*.f64 (+.f64 4 (*.f64 -6 z)) y) x)))
(fma.f64 6 (*.f64 z x) (fma.f64 -4 x (fma.f64 (+.f64 4 (*.f64 z -6)) y x)))
(+.f64 (fma.f64 y (fma.f64 z -6 4) x) (*.f64 x (fma.f64 6 z -4)))
(fma.f64 y (fma.f64 z -6 4) (*.f64 x (fma.f64 6 z -3)))
(fma.f64 (fma.f64 6 z -4) (-.f64 x y) x)
(+.f64 (*.f64 6 (*.f64 z x)) (+.f64 (*.f64 -4 x) (+.f64 (*.f64 (+.f64 4 (*.f64 -6 z)) y) x)))
(fma.f64 6 (*.f64 z x) (fma.f64 -4 x (fma.f64 (+.f64 4 (*.f64 z -6)) y x)))
(+.f64 (fma.f64 y (fma.f64 z -6 4) x) (*.f64 x (fma.f64 6 z -4)))
(fma.f64 y (fma.f64 z -6 4) (*.f64 x (fma.f64 6 z -3)))
(fma.f64 (fma.f64 6 z -4) (-.f64 x y) x)
(*.f64 -1 (*.f64 y (-.f64 (*.f64 6 z) 4)))
(*.f64 y (+.f64 4 (*.f64 z -6)))
(*.f64 y (fma.f64 z -6 4))
(+.f64 (*.f64 6 (*.f64 z x)) (+.f64 (*.f64 -4 x) (+.f64 (*.f64 -1 (*.f64 y (-.f64 (*.f64 6 z) 4))) x)))
(fma.f64 6 (*.f64 z x) (fma.f64 -4 x (fma.f64 (+.f64 4 (*.f64 z -6)) y x)))
(+.f64 (fma.f64 y (fma.f64 z -6 4) x) (*.f64 x (fma.f64 6 z -4)))
(fma.f64 y (fma.f64 z -6 4) (*.f64 x (fma.f64 6 z -3)))
(fma.f64 (fma.f64 6 z -4) (-.f64 x y) x)
(+.f64 (*.f64 6 (*.f64 z x)) (+.f64 (*.f64 -4 x) (+.f64 (*.f64 -1 (*.f64 y (-.f64 (*.f64 6 z) 4))) x)))
(fma.f64 6 (*.f64 z x) (fma.f64 -4 x (fma.f64 (+.f64 4 (*.f64 z -6)) y x)))
(+.f64 (fma.f64 y (fma.f64 z -6 4) x) (*.f64 x (fma.f64 6 z -4)))
(fma.f64 y (fma.f64 z -6 4) (*.f64 x (fma.f64 6 z -3)))
(fma.f64 (fma.f64 6 z -4) (-.f64 x y) x)
(+.f64 (*.f64 6 (*.f64 z x)) (+.f64 (*.f64 -4 x) (+.f64 (*.f64 -1 (*.f64 y (-.f64 (*.f64 6 z) 4))) x)))
(fma.f64 6 (*.f64 z x) (fma.f64 -4 x (fma.f64 (+.f64 4 (*.f64 z -6)) y x)))
(+.f64 (fma.f64 y (fma.f64 z -6 4) x) (*.f64 x (fma.f64 6 z -4)))
(fma.f64 y (fma.f64 z -6 4) (*.f64 x (fma.f64 6 z -3)))
(fma.f64 (fma.f64 6 z -4) (-.f64 x y) x)
(+.f64 (*.f64 4 y) (*.f64 -6 (*.f64 y z)))
(*.f64 y (+.f64 4 (*.f64 z -6)))
(*.f64 y (fma.f64 z -6 4))
(+.f64 (*.f64 4 y) (+.f64 (*.f64 (-.f64 (*.f64 6 z) 3) x) (*.f64 -6 (*.f64 y z))))
(fma.f64 6 (*.f64 z x) (fma.f64 -4 x (fma.f64 (+.f64 4 (*.f64 z -6)) y x)))
(+.f64 (fma.f64 y (fma.f64 z -6 4) x) (*.f64 x (fma.f64 6 z -4)))
(fma.f64 y (fma.f64 z -6 4) (*.f64 x (fma.f64 6 z -3)))
(fma.f64 (fma.f64 6 z -4) (-.f64 x y) x)
(+.f64 (*.f64 4 y) (+.f64 (*.f64 (-.f64 (*.f64 6 z) 3) x) (*.f64 -6 (*.f64 y z))))
(fma.f64 6 (*.f64 z x) (fma.f64 -4 x (fma.f64 (+.f64 4 (*.f64 z -6)) y x)))
(+.f64 (fma.f64 y (fma.f64 z -6 4) x) (*.f64 x (fma.f64 6 z -4)))
(fma.f64 y (fma.f64 z -6 4) (*.f64 x (fma.f64 6 z -3)))
(fma.f64 (fma.f64 6 z -4) (-.f64 x y) x)
(+.f64 (*.f64 4 y) (+.f64 (*.f64 (-.f64 (*.f64 6 z) 3) x) (*.f64 -6 (*.f64 y z))))
(fma.f64 6 (*.f64 z x) (fma.f64 -4 x (fma.f64 (+.f64 4 (*.f64 z -6)) y x)))
(+.f64 (fma.f64 y (fma.f64 z -6 4) x) (*.f64 x (fma.f64 6 z -4)))
(fma.f64 y (fma.f64 z -6 4) (*.f64 x (fma.f64 6 z -3)))
(fma.f64 (fma.f64 6 z -4) (-.f64 x y) x)
(*.f64 (-.f64 (*.f64 6 z) 3) x)
(fma.f64 -4 x (fma.f64 6 (*.f64 z x) x))
(+.f64 x (*.f64 x (fma.f64 6 z -4)))
(*.f64 x (fma.f64 6 z -3))
(+.f64 (*.f64 4 y) (+.f64 (*.f64 (-.f64 (*.f64 6 z) 3) x) (*.f64 -6 (*.f64 y z))))
(fma.f64 6 (*.f64 z x) (fma.f64 -4 x (fma.f64 (+.f64 4 (*.f64 z -6)) y x)))
(+.f64 (fma.f64 y (fma.f64 z -6 4) x) (*.f64 x (fma.f64 6 z -4)))
(fma.f64 y (fma.f64 z -6 4) (*.f64 x (fma.f64 6 z -3)))
(fma.f64 (fma.f64 6 z -4) (-.f64 x y) x)
(+.f64 (*.f64 4 y) (+.f64 (*.f64 (-.f64 (*.f64 6 z) 3) x) (*.f64 -6 (*.f64 y z))))
(fma.f64 6 (*.f64 z x) (fma.f64 -4 x (fma.f64 (+.f64 4 (*.f64 z -6)) y x)))
(+.f64 (fma.f64 y (fma.f64 z -6 4) x) (*.f64 x (fma.f64 6 z -4)))
(fma.f64 y (fma.f64 z -6 4) (*.f64 x (fma.f64 6 z -3)))
(fma.f64 (fma.f64 6 z -4) (-.f64 x y) x)
(+.f64 (*.f64 4 y) (+.f64 (*.f64 (-.f64 (*.f64 6 z) 3) x) (*.f64 -6 (*.f64 y z))))
(fma.f64 6 (*.f64 z x) (fma.f64 -4 x (fma.f64 (+.f64 4 (*.f64 z -6)) y x)))
(+.f64 (fma.f64 y (fma.f64 z -6 4) x) (*.f64 x (fma.f64 6 z -4)))
(fma.f64 y (fma.f64 z -6 4) (*.f64 x (fma.f64 6 z -3)))
(fma.f64 (fma.f64 6 z -4) (-.f64 x y) x)
(*.f64 -1 (*.f64 (+.f64 3 (*.f64 -6 z)) x))
(fma.f64 -4 x (fma.f64 6 (*.f64 z x) x))
(+.f64 x (*.f64 x (fma.f64 6 z -4)))
(*.f64 x (fma.f64 6 z -3))
(+.f64 (*.f64 4 y) (+.f64 (*.f64 -1 (*.f64 (+.f64 3 (*.f64 -6 z)) x)) (*.f64 -6 (*.f64 y z))))
(fma.f64 6 (*.f64 z x) (fma.f64 -4 x (fma.f64 (+.f64 4 (*.f64 z -6)) y x)))
(+.f64 (fma.f64 y (fma.f64 z -6 4) x) (*.f64 x (fma.f64 6 z -4)))
(fma.f64 y (fma.f64 z -6 4) (*.f64 x (fma.f64 6 z -3)))
(fma.f64 (fma.f64 6 z -4) (-.f64 x y) x)
(+.f64 (*.f64 4 y) (+.f64 (*.f64 -1 (*.f64 (+.f64 3 (*.f64 -6 z)) x)) (*.f64 -6 (*.f64 y z))))
(fma.f64 6 (*.f64 z x) (fma.f64 -4 x (fma.f64 (+.f64 4 (*.f64 z -6)) y x)))
(+.f64 (fma.f64 y (fma.f64 z -6 4) x) (*.f64 x (fma.f64 6 z -4)))
(fma.f64 y (fma.f64 z -6 4) (*.f64 x (fma.f64 6 z -3)))
(fma.f64 (fma.f64 6 z -4) (-.f64 x y) x)
(+.f64 (*.f64 4 y) (+.f64 (*.f64 -1 (*.f64 (+.f64 3 (*.f64 -6 z)) x)) (*.f64 -6 (*.f64 y z))))
(fma.f64 6 (*.f64 z x) (fma.f64 -4 x (fma.f64 (+.f64 4 (*.f64 z -6)) y x)))
(+.f64 (fma.f64 y (fma.f64 z -6 4) x) (*.f64 x (fma.f64 6 z -4)))
(fma.f64 y (fma.f64 z -6 4) (*.f64 x (fma.f64 6 z -3)))
(fma.f64 (fma.f64 6 z -4) (-.f64 x y) x)
(+.f64 (*.f64 4 (-.f64 y x)) x)
(fma.f64 4 (-.f64 y x) x)
(fma.f64 x -3 (*.f64 y 4))
(*.f64 -6 (*.f64 z (-.f64 y x)))
(fma.f64 6 (*.f64 z x) (*.f64 -6 (*.f64 z y)))
(fma.f64 6 (*.f64 z x) (*.f64 z (*.f64 -6 y)))
(*.f64 z (*.f64 -6 (-.f64 y x)))
(*.f64 -6 (*.f64 z (-.f64 y x)))
(fma.f64 6 (*.f64 z x) (*.f64 -6 (*.f64 z y)))
(fma.f64 6 (*.f64 z x) (*.f64 z (*.f64 -6 y)))
(*.f64 z (*.f64 -6 (-.f64 y x)))
(*.f64 (-.f64 y x) z)
(*.f64 z (-.f64 y x))
(*.f64 (-.f64 y x) z)
(*.f64 z (-.f64 y x))
(*.f64 (-.f64 y x) z)
(*.f64 z (-.f64 y x))
(*.f64 (-.f64 y x) z)
(*.f64 z (-.f64 y x))
(*.f64 (-.f64 y x) z)
(*.f64 z (-.f64 y x))
(*.f64 (-.f64 y x) z)
(*.f64 z (-.f64 y x))
(*.f64 (-.f64 y x) z)
(*.f64 z (-.f64 y x))
(*.f64 (-.f64 y x) z)
(*.f64 z (-.f64 y x))
(*.f64 (-.f64 y x) z)
(*.f64 z (-.f64 y x))
(*.f64 (-.f64 y x) z)
(*.f64 z (-.f64 y x))
(*.f64 (-.f64 y x) z)
(*.f64 z (-.f64 y x))
(*.f64 (-.f64 y x) z)
(*.f64 z (-.f64 y x))
(*.f64 -1 (*.f64 z x))
(neg.f64 (*.f64 z x))
(*.f64 x (neg.f64 z))
(*.f64 z (neg.f64 x))
(+.f64 (*.f64 y z) (*.f64 -1 (*.f64 z x)))
(*.f64 z (-.f64 y x))
(+.f64 (*.f64 y z) (*.f64 -1 (*.f64 z x)))
(*.f64 z (-.f64 y x))
(+.f64 (*.f64 y z) (*.f64 -1 (*.f64 z x)))
(*.f64 z (-.f64 y x))
(*.f64 y z)
(*.f64 z y)
(+.f64 (*.f64 y z) (*.f64 -1 (*.f64 z x)))
(*.f64 z (-.f64 y x))
(+.f64 (*.f64 y z) (*.f64 -1 (*.f64 z x)))
(*.f64 z (-.f64 y x))
(+.f64 (*.f64 y z) (*.f64 -1 (*.f64 z x)))
(*.f64 z (-.f64 y x))
(*.f64 y z)
(*.f64 z y)
(+.f64 (*.f64 y z) (*.f64 -1 (*.f64 z x)))
(*.f64 z (-.f64 y x))
(+.f64 (*.f64 y z) (*.f64 -1 (*.f64 z x)))
(*.f64 z (-.f64 y x))
(+.f64 (*.f64 y z) (*.f64 -1 (*.f64 z x)))
(*.f64 z (-.f64 y x))
(*.f64 y z)
(*.f64 z y)
(+.f64 (*.f64 y z) (*.f64 -1 (*.f64 z x)))
(*.f64 z (-.f64 y x))
(+.f64 (*.f64 y z) (*.f64 -1 (*.f64 z x)))
(*.f64 z (-.f64 y x))
(+.f64 (*.f64 y z) (*.f64 -1 (*.f64 z x)))
(*.f64 z (-.f64 y x))
(*.f64 -1 (*.f64 z x))
(neg.f64 (*.f64 z x))
(*.f64 x (neg.f64 z))
(*.f64 z (neg.f64 x))
(+.f64 (*.f64 y z) (*.f64 -1 (*.f64 z x)))
(*.f64 z (-.f64 y x))
(+.f64 (*.f64 y z) (*.f64 -1 (*.f64 z x)))
(*.f64 z (-.f64 y x))
(+.f64 (*.f64 y z) (*.f64 -1 (*.f64 z x)))
(*.f64 z (-.f64 y x))
(*.f64 -1 (*.f64 z x))
(neg.f64 (*.f64 z x))
(*.f64 x (neg.f64 z))
(*.f64 z (neg.f64 x))
(+.f64 (*.f64 y z) (*.f64 -1 (*.f64 z x)))
(*.f64 z (-.f64 y x))
(+.f64 (*.f64 y z) (*.f64 -1 (*.f64 z x)))
(*.f64 z (-.f64 y x))
(+.f64 (*.f64 y z) (*.f64 -1 (*.f64 z x)))
(*.f64 z (-.f64 y x))
x
(*.f64 -6 (*.f64 z (-.f64 y x)))
(fma.f64 6 (*.f64 z x) (*.f64 -6 (*.f64 z y)))
(fma.f64 6 (*.f64 z x) (*.f64 z (*.f64 -6 y)))
(*.f64 z (*.f64 -6 (-.f64 y x)))
(*.f64 -6 (*.f64 z (-.f64 y x)))
(fma.f64 6 (*.f64 z x) (*.f64 -6 (*.f64 z y)))
(fma.f64 6 (*.f64 z x) (*.f64 z (*.f64 -6 y)))
(*.f64 z (*.f64 -6 (-.f64 y x)))
(+.f64 (*.f64 6 (*.f64 z x)) x)
(fma.f64 6 (*.f64 z x) x)
(*.f64 x (fma.f64 6 z 1))
(+.f64 (*.f64 6 (*.f64 z x)) (+.f64 (*.f64 -6 (*.f64 y z)) x))
(fma.f64 6 (*.f64 z x) (fma.f64 -6 (*.f64 z y) x))
(+.f64 x (*.f64 z (*.f64 -6 (-.f64 y x))))
(fma.f64 z (*.f64 -6 (-.f64 y x)) x)
(+.f64 (*.f64 6 (*.f64 z x)) (+.f64 (*.f64 -6 (*.f64 y z)) x))
(fma.f64 6 (*.f64 z x) (fma.f64 -6 (*.f64 z y) x))
(+.f64 x (*.f64 z (*.f64 -6 (-.f64 y x))))
(fma.f64 z (*.f64 -6 (-.f64 y x)) x)
(+.f64 (*.f64 6 (*.f64 z x)) (+.f64 (*.f64 -6 (*.f64 y z)) x))
(fma.f64 6 (*.f64 z x) (fma.f64 -6 (*.f64 z y) x))
(+.f64 x (*.f64 z (*.f64 -6 (-.f64 y x))))
(fma.f64 z (*.f64 -6 (-.f64 y x)) x)
(*.f64 -6 (*.f64 y z))
(*.f64 -6 (*.f64 z y))
(*.f64 z (*.f64 -6 y))
(+.f64 (*.f64 6 (*.f64 z x)) (+.f64 (*.f64 -6 (*.f64 y z)) x))
(fma.f64 6 (*.f64 z x) (fma.f64 -6 (*.f64 z y) x))
(+.f64 x (*.f64 z (*.f64 -6 (-.f64 y x))))
(fma.f64 z (*.f64 -6 (-.f64 y x)) x)
(+.f64 (*.f64 6 (*.f64 z x)) (+.f64 (*.f64 -6 (*.f64 y z)) x))
(fma.f64 6 (*.f64 z x) (fma.f64 -6 (*.f64 z y) x))
(+.f64 x (*.f64 z (*.f64 -6 (-.f64 y x))))
(fma.f64 z (*.f64 -6 (-.f64 y x)) x)
(+.f64 (*.f64 6 (*.f64 z x)) (+.f64 (*.f64 -6 (*.f64 y z)) x))
(fma.f64 6 (*.f64 z x) (fma.f64 -6 (*.f64 z y) x))
(+.f64 x (*.f64 z (*.f64 -6 (-.f64 y x))))
(fma.f64 z (*.f64 -6 (-.f64 y x)) x)
(*.f64 -6 (*.f64 y z))
(*.f64 -6 (*.f64 z y))
(*.f64 z (*.f64 -6 y))
(+.f64 (*.f64 6 (*.f64 z x)) (+.f64 (*.f64 -6 (*.f64 y z)) x))
(fma.f64 6 (*.f64 z x) (fma.f64 -6 (*.f64 z y) x))
(+.f64 x (*.f64 z (*.f64 -6 (-.f64 y x))))
(fma.f64 z (*.f64 -6 (-.f64 y x)) x)
(+.f64 (*.f64 6 (*.f64 z x)) (+.f64 (*.f64 -6 (*.f64 y z)) x))
(fma.f64 6 (*.f64 z x) (fma.f64 -6 (*.f64 z y) x))
(+.f64 x (*.f64 z (*.f64 -6 (-.f64 y x))))
(fma.f64 z (*.f64 -6 (-.f64 y x)) x)
(+.f64 (*.f64 6 (*.f64 z x)) (+.f64 (*.f64 -6 (*.f64 y z)) x))
(fma.f64 6 (*.f64 z x) (fma.f64 -6 (*.f64 z y) x))
(+.f64 x (*.f64 z (*.f64 -6 (-.f64 y x))))
(fma.f64 z (*.f64 -6 (-.f64 y x)) x)
(*.f64 -6 (*.f64 y z))
(*.f64 -6 (*.f64 z y))
(*.f64 z (*.f64 -6 y))
(+.f64 (*.f64 (+.f64 1 (*.f64 6 z)) x) (*.f64 -6 (*.f64 y z)))
(fma.f64 6 (*.f64 z x) (fma.f64 -6 (*.f64 z y) x))
(+.f64 x (*.f64 z (*.f64 -6 (-.f64 y x))))
(fma.f64 z (*.f64 -6 (-.f64 y x)) x)
(+.f64 (*.f64 (+.f64 1 (*.f64 6 z)) x) (*.f64 -6 (*.f64 y z)))
(fma.f64 6 (*.f64 z x) (fma.f64 -6 (*.f64 z y) x))
(+.f64 x (*.f64 z (*.f64 -6 (-.f64 y x))))
(fma.f64 z (*.f64 -6 (-.f64 y x)) x)
(+.f64 (*.f64 (+.f64 1 (*.f64 6 z)) x) (*.f64 -6 (*.f64 y z)))
(fma.f64 6 (*.f64 z x) (fma.f64 -6 (*.f64 z y) x))
(+.f64 x (*.f64 z (*.f64 -6 (-.f64 y x))))
(fma.f64 z (*.f64 -6 (-.f64 y x)) x)
(*.f64 (+.f64 1 (*.f64 6 z)) x)
(fma.f64 6 (*.f64 z x) x)
(*.f64 x (fma.f64 6 z 1))
(+.f64 (*.f64 (+.f64 1 (*.f64 6 z)) x) (*.f64 -6 (*.f64 y z)))
(fma.f64 6 (*.f64 z x) (fma.f64 -6 (*.f64 z y) x))
(+.f64 x (*.f64 z (*.f64 -6 (-.f64 y x))))
(fma.f64 z (*.f64 -6 (-.f64 y x)) x)
(+.f64 (*.f64 (+.f64 1 (*.f64 6 z)) x) (*.f64 -6 (*.f64 y z)))
(fma.f64 6 (*.f64 z x) (fma.f64 -6 (*.f64 z y) x))
(+.f64 x (*.f64 z (*.f64 -6 (-.f64 y x))))
(fma.f64 z (*.f64 -6 (-.f64 y x)) x)
(+.f64 (*.f64 (+.f64 1 (*.f64 6 z)) x) (*.f64 -6 (*.f64 y z)))
(fma.f64 6 (*.f64 z x) (fma.f64 -6 (*.f64 z y) x))
(+.f64 x (*.f64 z (*.f64 -6 (-.f64 y x))))
(fma.f64 z (*.f64 -6 (-.f64 y x)) x)
(*.f64 -1 (*.f64 (-.f64 (*.f64 -6 z) 1) x))
(fma.f64 6 (*.f64 z x) x)
(*.f64 x (fma.f64 6 z 1))
(+.f64 (*.f64 -1 (*.f64 (-.f64 (*.f64 -6 z) 1) x)) (*.f64 -6 (*.f64 y z)))
(fma.f64 6 (*.f64 z x) (fma.f64 -6 (*.f64 z y) x))
(+.f64 x (*.f64 z (*.f64 -6 (-.f64 y x))))
(fma.f64 z (*.f64 -6 (-.f64 y x)) x)
(+.f64 (*.f64 -1 (*.f64 (-.f64 (*.f64 -6 z) 1) x)) (*.f64 -6 (*.f64 y z)))
(fma.f64 6 (*.f64 z x) (fma.f64 -6 (*.f64 z y) x))
(+.f64 x (*.f64 z (*.f64 -6 (-.f64 y x))))
(fma.f64 z (*.f64 -6 (-.f64 y x)) x)
(+.f64 (*.f64 -1 (*.f64 (-.f64 (*.f64 -6 z) 1) x)) (*.f64 -6 (*.f64 y z)))
(fma.f64 6 (*.f64 z x) (fma.f64 -6 (*.f64 z y) x))
(+.f64 x (*.f64 z (*.f64 -6 (-.f64 y x))))
(fma.f64 z (*.f64 -6 (-.f64 y x)) x)

localize7.0ms (0.1%)

Local error

Found 2 expressions with local error:

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

Compiled 22 to 8 computations (63.6% saved)

localize14.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(-.f64 2/3 z)
0.2b
(*.f64 6 (*.f64 y (-.f64 2/3 z)))
0.2b
(*.f64 y (-.f64 2/3 z))
Compiler

Compiled 32 to 21 computations (34.4% saved)

series9.0ms (0.1%)

Counts
3 → 36
Calls

15 calls:

TimeVariablePointExpression
3.0ms
z
@-inf
(*.f64 y (-.f64 2/3 z))
1.0ms
y
@0
(*.f64 y (-.f64 2/3 z))
0.0ms
y
@inf
(*.f64 y (-.f64 2/3 z))
0.0ms
y
@inf
(*.f64 6 (*.f64 y (-.f64 2/3 z)))
0.0ms
y
@0
(*.f64 6 (*.f64 y (-.f64 2/3 z)))

rewrite69.0ms (0.5%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
0821
117421
2214621
Stop Event
node limit
Counts
3 → 62
Calls
Call 1
Inputs
(*.f64 y (-.f64 2/3 z))
(*.f64 6 (*.f64 y (-.f64 2/3 z)))
(-.f64 2/3 z)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 2/3 y) (*.f64 (neg.f64 z) y))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y 2/3) (*.f64 y (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 y (-.f64 2/3 z))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 8/27 (pow.f64 z 3)) y) (+.f64 4/9 (*.f64 z (+.f64 2/3 z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 4/9 (*.f64 z z)) y) (+.f64 2/3 z))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (-.f64 8/27 (pow.f64 z 3))) (+.f64 4/9 (*.f64 z (+.f64 2/3 z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (-.f64 4/9 (*.f64 z z))) (+.f64 2/3 z))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 y (-.f64 2/3 z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 y (-.f64 2/3 z)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 y (-.f64 2/3 z))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 y (-.f64 2/3 z))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 y (-.f64 2/3 z)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (-.f64 2/3 z)) y))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 y (-.f64 2/3 z)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 y 3) (pow.f64 (-.f64 2/3 z) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (-.f64 2/3 z) 3) (pow.f64 y 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 y (-.f64 2/3 z))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 y (-.f64 2/3 z))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 y (-.f64 2/3 z))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 2/3 (*.f64 y 6)) (*.f64 (neg.f64 z) (*.f64 y 6)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 y 6) 2/3) (*.f64 (*.f64 y 6) (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 y (*.f64 (-.f64 2/3 z) 6))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 y 6) (-.f64 8/27 (pow.f64 z 3))) (+.f64 4/9 (*.f64 z (+.f64 2/3 z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 y 6) (-.f64 4/9 (*.f64 z z))) (+.f64 2/3 z))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 y (*.f64 (-.f64 2/3 z) 6)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 y (*.f64 (-.f64 2/3 z) 6)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 y (*.f64 (-.f64 2/3 z) 6))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 y (*.f64 (-.f64 2/3 z) 6))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (pow.f64 (*.f64 y (-.f64 2/3 z)) 2) 36))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (pow.f64 (exp.f64 (-.f64 2/3 z)) y) 6))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 y (*.f64 (-.f64 2/3 z) 6)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 y (*.f64 (-.f64 2/3 z) 6))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 y (*.f64 (-.f64 2/3 z) 6))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 y (*.f64 (-.f64 2/3 z) 6))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 2/3 (neg.f64 z))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 2/3 (*.f64 (neg.f64 z) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 z) 2/3)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 2/3 z) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 2/3 z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 2/3 z)) (pow.f64 (cbrt.f64 (-.f64 2/3 z)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (-.f64 2/3 z)) 2) (cbrt.f64 (-.f64 2/3 z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 2/3 z)) (sqrt.f64 (-.f64 2/3 z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 8/27 (pow.f64 z 3)) (/.f64 1 (+.f64 4/9 (*.f64 z (+.f64 2/3 z)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 4/9 (*.f64 z z)) (/.f64 1 (+.f64 2/3 z)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 4/9 (*.f64 z (+.f64 2/3 z))) (-.f64 8/27 (pow.f64 z 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 2/3 z) (-.f64 4/9 (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 8/27 (pow.f64 z 3)) (+.f64 4/9 (*.f64 z (+.f64 2/3 z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 4/9 (*.f64 z z)) (+.f64 2/3 z))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 8/27 (pow.f64 z 3))) (neg.f64 (+.f64 4/9 (*.f64 z (+.f64 2/3 z)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 4/9 (*.f64 z z))) (neg.f64 (+.f64 2/3 z)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 8/27 (pow.f64 (neg.f64 z) 3)) (+.f64 4/9 (-.f64 (*.f64 (neg.f64 z) (neg.f64 z)) (*.f64 2/3 (neg.f64 z)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 4/9 (*.f64 (neg.f64 z) (neg.f64 z))) (-.f64 2/3 (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 2/3 z) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 2/3 z) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (-.f64 2/3 z)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (-.f64 2/3 z)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (-.f64 2/3 z) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (-.f64 2/3 z)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (-.f64 2/3 z) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (-.f64 2/3 z)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (-.f64 2/3 z)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (-.f64 2/3 z)))))))

simplify52.0ms (0.4%)

Algorithm
egg-herbie
Rules
539×fma-def_binary64
140×fma-neg_binary64
69×associate-*l*_binary64
60×associate-*r*_binary64
58×distribute-rgt-in_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
016284
134266
261230
389212
4123212
5178212
6266212
7369212
8610212
91088212
101366212
111476212
121476212
Stop Event
saturated
Counts
98 → 78
Calls
Call 1
Inputs
(*.f64 2/3 y)
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 2/3 y))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 2/3 y))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 2/3 y))
(*.f64 -1 (*.f64 y z))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 2/3 y))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 2/3 y))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 2/3 y))
(*.f64 -1 (*.f64 y z))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 2/3 y))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 2/3 y))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 2/3 y))
(*.f64 4 y)
(+.f64 (*.f64 4 y) (*.f64 -6 (*.f64 y z)))
(+.f64 (*.f64 4 y) (*.f64 -6 (*.f64 y z)))
(+.f64 (*.f64 4 y) (*.f64 -6 (*.f64 y z)))
(*.f64 -6 (*.f64 y z))
(+.f64 (*.f64 4 y) (*.f64 -6 (*.f64 y z)))
(+.f64 (*.f64 4 y) (*.f64 -6 (*.f64 y z)))
(+.f64 (*.f64 4 y) (*.f64 -6 (*.f64 y z)))
(*.f64 -6 (*.f64 y z))
(+.f64 (*.f64 4 y) (*.f64 -6 (*.f64 y z)))
(+.f64 (*.f64 4 y) (*.f64 -6 (*.f64 y z)))
(+.f64 (*.f64 4 y) (*.f64 -6 (*.f64 y z)))
2/3
(+.f64 (*.f64 -1 z) 2/3)
(+.f64 (*.f64 -1 z) 2/3)
(+.f64 (*.f64 -1 z) 2/3)
(*.f64 -1 z)
(+.f64 (*.f64 -1 z) 2/3)
(+.f64 (*.f64 -1 z) 2/3)
(+.f64 (*.f64 -1 z) 2/3)
(*.f64 -1 z)
(+.f64 (*.f64 -1 z) 2/3)
(+.f64 (*.f64 -1 z) 2/3)
(+.f64 (*.f64 -1 z) 2/3)
Outputs
(*.f64 2/3 y)
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 2/3 y))
(fma.f64 -1 (*.f64 y z) (*.f64 2/3 y))
(-.f64 (*.f64 2/3 y) (*.f64 y z))
(*.f64 y (-.f64 2/3 z))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 2/3 y))
(fma.f64 -1 (*.f64 y z) (*.f64 2/3 y))
(-.f64 (*.f64 2/3 y) (*.f64 y z))
(*.f64 y (-.f64 2/3 z))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 2/3 y))
(fma.f64 -1 (*.f64 y z) (*.f64 2/3 y))
(-.f64 (*.f64 2/3 y) (*.f64 y z))
(*.f64 y (-.f64 2/3 z))
(*.f64 -1 (*.f64 y z))
(neg.f64 (*.f64 y z))
(*.f64 y (neg.f64 z))
(*.f64 z (neg.f64 y))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 2/3 y))
(fma.f64 -1 (*.f64 y z) (*.f64 2/3 y))
(-.f64 (*.f64 2/3 y) (*.f64 y z))
(*.f64 y (-.f64 2/3 z))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 2/3 y))
(fma.f64 -1 (*.f64 y z) (*.f64 2/3 y))
(-.f64 (*.f64 2/3 y) (*.f64 y z))
(*.f64 y (-.f64 2/3 z))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 2/3 y))
(fma.f64 -1 (*.f64 y z) (*.f64 2/3 y))
(-.f64 (*.f64 2/3 y) (*.f64 y z))
(*.f64 y (-.f64 2/3 z))
(*.f64 -1 (*.f64 y z))
(neg.f64 (*.f64 y z))
(*.f64 y (neg.f64 z))
(*.f64 z (neg.f64 y))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 2/3 y))
(fma.f64 -1 (*.f64 y z) (*.f64 2/3 y))
(-.f64 (*.f64 2/3 y) (*.f64 y z))
(*.f64 y (-.f64 2/3 z))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 2/3 y))
(fma.f64 -1 (*.f64 y z) (*.f64 2/3 y))
(-.f64 (*.f64 2/3 y) (*.f64 y z))
(*.f64 y (-.f64 2/3 z))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 2/3 y))
(fma.f64 -1 (*.f64 y z) (*.f64 2/3 y))
(-.f64 (*.f64 2/3 y) (*.f64 y z))
(*.f64 y (-.f64 2/3 z))
(*.f64 4 y)
(*.f64 y 4)
(+.f64 (*.f64 4 y) (*.f64 -6 (*.f64 y z)))
(fma.f64 4 y (*.f64 (*.f64 y z) -6))
(fma.f64 y 4 (*.f64 (*.f64 -6 z) y))
(*.f64 y (+.f64 4 (*.f64 z -6)))
(*.f64 y (fma.f64 z -6 4))
(+.f64 (*.f64 4 y) (*.f64 -6 (*.f64 y z)))
(fma.f64 4 y (*.f64 (*.f64 y z) -6))
(fma.f64 y 4 (*.f64 (*.f64 -6 z) y))
(*.f64 y (+.f64 4 (*.f64 z -6)))
(*.f64 y (fma.f64 z -6 4))
(+.f64 (*.f64 4 y) (*.f64 -6 (*.f64 y z)))
(fma.f64 4 y (*.f64 (*.f64 y z) -6))
(fma.f64 y 4 (*.f64 (*.f64 -6 z) y))
(*.f64 y (+.f64 4 (*.f64 z -6)))
(*.f64 y (fma.f64 z -6 4))
(*.f64 -6 (*.f64 y z))
(*.f64 (*.f64 y z) -6)
(*.f64 (*.f64 -6 z) y)
(*.f64 y (*.f64 z -6))
(+.f64 (*.f64 4 y) (*.f64 -6 (*.f64 y z)))
(fma.f64 4 y (*.f64 (*.f64 y z) -6))
(fma.f64 y 4 (*.f64 (*.f64 -6 z) y))
(*.f64 y (+.f64 4 (*.f64 z -6)))
(*.f64 y (fma.f64 z -6 4))
(+.f64 (*.f64 4 y) (*.f64 -6 (*.f64 y z)))
(fma.f64 4 y (*.f64 (*.f64 y z) -6))
(fma.f64 y 4 (*.f64 (*.f64 -6 z) y))
(*.f64 y (+.f64 4 (*.f64 z -6)))
(*.f64 y (fma.f64 z -6 4))
(+.f64 (*.f64 4 y) (*.f64 -6 (*.f64 y z)))
(fma.f64 4 y (*.f64 (*.f64 y z) -6))
(fma.f64 y 4 (*.f64 (*.f64 -6 z) y))
(*.f64 y (+.f64 4 (*.f64 z -6)))
(*.f64 y (fma.f64 z -6 4))
(*.f64 -6 (*.f64 y z))
(*.f64 (*.f64 y z) -6)
(*.f64 (*.f64 -6 z) y)
(*.f64 y (*.f64 z -6))
(+.f64 (*.f64 4 y) (*.f64 -6 (*.f64 y z)))
(fma.f64 4 y (*.f64 (*.f64 y z) -6))
(fma.f64 y 4 (*.f64 (*.f64 -6 z) y))
(*.f64 y (+.f64 4 (*.f64 z -6)))
(*.f64 y (fma.f64 z -6 4))
(+.f64 (*.f64 4 y) (*.f64 -6 (*.f64 y z)))
(fma.f64 4 y (*.f64 (*.f64 y z) -6))
(fma.f64 y 4 (*.f64 (*.f64 -6 z) y))
(*.f64 y (+.f64 4 (*.f64 z -6)))
(*.f64 y (fma.f64 z -6 4))
(+.f64 (*.f64 4 y) (*.f64 -6 (*.f64 y z)))
(fma.f64 4 y (*.f64 (*.f64 y z) -6))
(fma.f64 y 4 (*.f64 (*.f64 -6 z) y))
(*.f64 y (+.f64 4 (*.f64 z -6)))
(*.f64 y (fma.f64 z -6 4))
2/3
(+.f64 (*.f64 -1 z) 2/3)
(fma.f64 -1 z 2/3)
(-.f64 2/3 z)
(+.f64 (*.f64 -1 z) 2/3)
(fma.f64 -1 z 2/3)
(-.f64 2/3 z)
(+.f64 (*.f64 -1 z) 2/3)
(fma.f64 -1 z 2/3)
(-.f64 2/3 z)
(*.f64 -1 z)
(neg.f64 z)
(+.f64 (*.f64 -1 z) 2/3)
(fma.f64 -1 z 2/3)
(-.f64 2/3 z)
(+.f64 (*.f64 -1 z) 2/3)
(fma.f64 -1 z 2/3)
(-.f64 2/3 z)
(+.f64 (*.f64 -1 z) 2/3)
(fma.f64 -1 z 2/3)
(-.f64 2/3 z)
(*.f64 -1 z)
(neg.f64 z)
(+.f64 (*.f64 -1 z) 2/3)
(fma.f64 -1 z 2/3)
(-.f64 2/3 z)
(+.f64 (*.f64 -1 z) 2/3)
(fma.f64 -1 z 2/3)
(-.f64 2/3 z)
(+.f64 (*.f64 -1 z) 2/3)
(fma.f64 -1 z 2/3)
(-.f64 2/3 z)

localize25.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(-.f64 (/.f64 2 3) z)
0.0b
(+.f64 x (*.f64 (+.f64 (*.f64 6 y) (*.f64 -6 x)) (-.f64 (/.f64 2 3) z)))
0.0b
(+.f64 (*.f64 6 y) (*.f64 -6 x))
0.3b
(*.f64 (+.f64 (*.f64 6 y) (*.f64 -6 x)) (-.f64 (/.f64 2 3) z))
Compiler

Compiled 59 to 44 computations (25.4% saved)

series9.0ms (0.1%)

Counts
3 → 78
Calls

24 calls:

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

rewrite92.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
707×log-prod_binary64
536×fma-def_binary64
289×expm1-udef_binary64
289×log1p-udef_binary64
263×fma-neg_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01639
133437
2434637
Stop Event
node limit
Counts
3 → 156
Calls
Call 1
Inputs
(*.f64 (+.f64 (*.f64 6 y) (*.f64 -6 x)) (-.f64 (/.f64 2 3) z))
(+.f64 (*.f64 6 y) (*.f64 -6 x))
(+.f64 x (*.f64 (+.f64 (*.f64 6 y) (*.f64 -6 x)) (-.f64 (/.f64 2 3) z)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (fma.f64 6 y (*.f64 -6 x)) (-.f64 2/3 z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 2/3 (fma.f64 6 y (*.f64 -6 x))) (*.f64 (neg.f64 z) (fma.f64 6 y (*.f64 -6 x))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 6 y) (-.f64 2/3 z)) (*.f64 (*.f64 -6 x) (-.f64 2/3 z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 -6 x) (-.f64 2/3 z)) (*.f64 (*.f64 6 y) (-.f64 2/3 z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (fma.f64 6 y (*.f64 -6 x)) 2/3) (*.f64 (fma.f64 6 y (*.f64 -6 x)) (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (-.f64 2/3 z) (*.f64 6 y)) (*.f64 (-.f64 2/3 z) (*.f64 -6 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (-.f64 2/3 z) (*.f64 -6 x)) (*.f64 (-.f64 2/3 z) (*.f64 6 y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 6 y (*.f64 -6 x))) (-.f64 2/3 z))) (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 6 y (*.f64 -6 x))) (-.f64 2/3 z))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 6 y (*.f64 -6 x))) (-.f64 2/3 z)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (fma.f64 6 y (*.f64 -6 x))) (-.f64 2/3 z)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (fma.f64 6 y (*.f64 -6 x))) (-.f64 2/3 z)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (fma.f64 6 y (*.f64 -6 x)) (-.f64 2/3 z)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (fma.f64 (pow.f64 y 3) 216 (*.f64 -216 (pow.f64 x 3))) (-.f64 8/27 (pow.f64 z 3))) (*.f64 (fma.f64 (*.f64 -6 x) (-.f64 (*.f64 -6 x) (*.f64 6 y)) (*.f64 (*.f64 y y) 36)) (fma.f64 z (+.f64 2/3 z) 4/9)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 (*.f64 y y) 36) (*.f64 (*.f64 x x) 36)) (-.f64 8/27 (pow.f64 z 3))) (*.f64 (fma.f64 6 y (*.f64 6 x)) (fma.f64 z (+.f64 2/3 z) 4/9)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (fma.f64 (pow.f64 y 3) 216 (*.f64 -216 (pow.f64 x 3))) (-.f64 4/9 (*.f64 z z))) (*.f64 (fma.f64 (*.f64 -6 x) (-.f64 (*.f64 -6 x) (*.f64 6 y)) (*.f64 (*.f64 y y) 36)) (+.f64 2/3 z)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 (*.f64 y y) 36) (*.f64 (*.f64 x x) 36)) (-.f64 4/9 (*.f64 z z))) (*.f64 (fma.f64 6 y (*.f64 6 x)) (+.f64 2/3 z)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 8/27 (pow.f64 z 3)) (fma.f64 (pow.f64 y 3) 216 (*.f64 -216 (pow.f64 x 3)))) (*.f64 (fma.f64 z (+.f64 2/3 z) 4/9) (fma.f64 (*.f64 -6 x) (-.f64 (*.f64 -6 x) (*.f64 6 y)) (*.f64 (*.f64 y y) 36))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 4/9 (*.f64 z z)) (fma.f64 (pow.f64 y 3) 216 (*.f64 -216 (pow.f64 x 3)))) (*.f64 (+.f64 2/3 z) (fma.f64 (*.f64 -6 x) (-.f64 (*.f64 -6 x) (*.f64 6 y)) (*.f64 (*.f64 y y) 36))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 8/27 (pow.f64 z 3)) (-.f64 (*.f64 (*.f64 y y) 36) (*.f64 (*.f64 x x) 36))) (*.f64 (fma.f64 z (+.f64 2/3 z) 4/9) (fma.f64 6 y (*.f64 6 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 4/9 (*.f64 z z)) (-.f64 (*.f64 (*.f64 y y) 36) (*.f64 (*.f64 x x) 36))) (*.f64 (+.f64 2/3 z) (fma.f64 6 y (*.f64 6 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (fma.f64 (pow.f64 y 3) 216 (*.f64 -216 (pow.f64 x 3))) (-.f64 2/3 z)) (fma.f64 (*.f64 -6 x) (-.f64 (*.f64 -6 x) (*.f64 6 y)) (*.f64 (*.f64 y y) 36)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 (*.f64 y y) 36) (*.f64 (*.f64 x x) 36)) (-.f64 2/3 z)) (fma.f64 6 y (*.f64 6 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 8/27 (pow.f64 z 3)) (fma.f64 6 y (*.f64 -6 x))) (fma.f64 z (+.f64 2/3 z) 4/9))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 4/9 (*.f64 z z)) (fma.f64 6 y (*.f64 -6 x))) (+.f64 2/3 z))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (fma.f64 6 y (*.f64 -6 x)) (-.f64 8/27 (pow.f64 z 3))) (fma.f64 z (+.f64 2/3 z) 4/9))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (fma.f64 6 y (*.f64 -6 x)) (-.f64 4/9 (*.f64 z z))) (+.f64 2/3 z))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 2/3 z) (fma.f64 (pow.f64 y 3) 216 (*.f64 -216 (pow.f64 x 3)))) (fma.f64 (*.f64 -6 x) (-.f64 (*.f64 -6 x) (*.f64 6 y)) (*.f64 (*.f64 y y) 36)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 2/3 z) (-.f64 (*.f64 (*.f64 y y) 36) (*.f64 (*.f64 x x) 36))) (fma.f64 6 y (*.f64 6 x)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (fma.f64 6 y (*.f64 -6 x)) (-.f64 2/3 z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (fma.f64 6 y (*.f64 -6 x)) (-.f64 2/3 z))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (fma.f64 6 y (*.f64 -6 x)) (-.f64 2/3 z))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (fma.f64 6 y (*.f64 -6 x)) (-.f64 2/3 z)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (fma.f64 6 y (*.f64 -6 x)) (-.f64 2/3 z)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (fma.f64 6 y (*.f64 -6 x))) (-.f64 2/3 z)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (fma.f64 6 y (*.f64 -6 x)) (-.f64 2/3 z)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (fma.f64 6 y (*.f64 -6 x)) (-.f64 2/3 z)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (fma.f64 6 y (*.f64 -6 x)) (-.f64 2/3 z))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (fma.f64 6 y (*.f64 -6 x)) (-.f64 2/3 z))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (fma.f64 6 y (*.f64 -6 x)) (-.f64 2/3 z))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (fma.f64 6 y (*.f64 -6 x)) (-.f64 2/3 z))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 6 y) (-.f64 2/3 z) (*.f64 (*.f64 -6 x) (-.f64 2/3 z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -6 x) (-.f64 2/3 z) (*.f64 (*.f64 6 y) (-.f64 2/3 z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 6 y (*.f64 -6 x)) 2/3 (*.f64 (fma.f64 6 y (*.f64 -6 x)) (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 2/3 (fma.f64 6 y (*.f64 -6 x)) (*.f64 (neg.f64 z) (fma.f64 6 y (*.f64 -6 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 2/3 z) (*.f64 6 y) (*.f64 (-.f64 2/3 z) (*.f64 -6 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 2/3 z) (*.f64 -6 x) (*.f64 (-.f64 2/3 z) (*.f64 6 y)))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 6 y (*.f64 -6 x)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 (*.f64 y y) 36) (fma.f64 6 y (*.f64 6 x))) (/.f64 (*.f64 (*.f64 x x) 36) (fma.f64 6 y (*.f64 6 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 6 y (*.f64 -6 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 6 y (*.f64 -6 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 6 y (*.f64 -6 x))) (pow.f64 (cbrt.f64 (fma.f64 6 y (*.f64 -6 x))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 6 y (*.f64 -6 x))) 2) (cbrt.f64 (fma.f64 6 y (*.f64 -6 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 6 y (*.f64 -6 x))) (sqrt.f64 (fma.f64 6 y (*.f64 -6 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (pow.f64 y 3) 216 (*.f64 -216 (pow.f64 x 3))) (/.f64 1 (fma.f64 (*.f64 -6 x) (-.f64 (*.f64 -6 x) (*.f64 6 y)) (*.f64 (*.f64 y y) 36))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 (*.f64 y y) 36) (*.f64 (*.f64 x x) 36)) (/.f64 1 (fma.f64 6 y (*.f64 6 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (*.f64 -6 x) (-.f64 (*.f64 -6 x) (*.f64 6 y)) (*.f64 (*.f64 y y) 36)) (fma.f64 (pow.f64 y 3) 216 (*.f64 -216 (pow.f64 x 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 6 y (*.f64 6 x)) (-.f64 (*.f64 (*.f64 y y) 36) (*.f64 (*.f64 x x) 36))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 (pow.f64 y 3) 216 (*.f64 -216 (pow.f64 x 3))) (fma.f64 (*.f64 -6 x) (-.f64 (*.f64 -6 x) (*.f64 6 y)) (*.f64 (*.f64 y y) 36)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 (pow.f64 y 3) 216 (*.f64 -216 (pow.f64 x 3))) (fma.f64 (*.f64 x x) 36 (-.f64 (*.f64 (*.f64 y y) 36) (*.f64 6 (*.f64 y (*.f64 -6 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 y y) 36) (*.f64 (*.f64 x x) 36)) (fma.f64 6 y (*.f64 6 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (fma.f64 (pow.f64 y 3) 216 (*.f64 -216 (pow.f64 x 3)))) (neg.f64 (fma.f64 (*.f64 -6 x) (-.f64 (*.f64 -6 x) (*.f64 6 y)) (*.f64 (*.f64 y y) 36))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (*.f64 (*.f64 y y) 36) (*.f64 (*.f64 x x) 36))) (neg.f64 (fma.f64 6 y (*.f64 6 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 x x) 36) (*.f64 (*.f64 y y) 36)) (-.f64 (*.f64 -6 x) (*.f64 6 y)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 6 y (*.f64 -6 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 6 y (*.f64 -6 x)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 6 y (*.f64 -6 x))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 6 y (*.f64 -6 x))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 6 y (*.f64 -6 x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 6 y (*.f64 -6 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 6 y (*.f64 -6 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 6 y))) (pow.f64 (exp.f64 x) -6)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 y) 6) (+.f64 1 (expm1.f64 (*.f64 -6 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 6 y))) (+.f64 1 (expm1.f64 (*.f64 -6 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 -6 x))) (pow.f64 (exp.f64 y) 6)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 x) -6) (+.f64 1 (expm1.f64 (*.f64 6 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 -6 x))) (+.f64 1 (expm1.f64 (*.f64 6 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 6 y (*.f64 -6 x)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 6 y (*.f64 -6 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 6 y (*.f64 -6 x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 6 y (*.f64 -6 x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 6 y (*.f64 -6 x))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 6 y (*.f64 -6 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y 6 (*.f64 -6 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 6 y) 1 (*.f64 -6 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -6 x (*.f64 6 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x -6 (*.f64 6 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -6 x) 1 (*.f64 6 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 6 y) (*.f64 -6 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 -6 x) (*.f64 6 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (*.f64 (cbrt.f64 x) -6) (*.f64 6 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 y) 2) (*.f64 (cbrt.f64 y) 6) (*.f64 -6 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 -6 x)) (pow.f64 (cbrt.f64 (*.f64 -6 x)) 2) (*.f64 6 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 -6 x)) 2) (cbrt.f64 (*.f64 -6 x)) (*.f64 6 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 6 y)) (pow.f64 (cbrt.f64 (*.f64 6 y)) 2) (*.f64 -6 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 6 y)) 2) (cbrt.f64 (*.f64 6 y)) (*.f64 -6 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) -6) (*.f64 6 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 y) (*.f64 (sqrt.f64 y) 6) (*.f64 -6 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 -6 x)) (sqrt.f64 (*.f64 -6 x)) (*.f64 6 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 6 y)) (sqrt.f64 (*.f64 6 y)) (*.f64 -6 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -6 (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 x) (*.f64 6 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -6 (sqrt.f64 x)) (sqrt.f64 x) (*.f64 6 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 6 (pow.f64 (cbrt.f64 y) 2)) (cbrt.f64 y) (*.f64 -6 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 6 (sqrt.f64 y)) (sqrt.f64 y) (*.f64 -6 x))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 (fma.f64 6 y (*.f64 -6 x)) (-.f64 2/3 z) x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 x x) (-.f64 x (*.f64 (fma.f64 6 y (*.f64 -6 x)) (-.f64 2/3 z)))) (/.f64 (pow.f64 (*.f64 (fma.f64 6 y (*.f64 -6 x)) (-.f64 2/3 z)) 2) (-.f64 x (*.f64 (fma.f64 6 y (*.f64 -6 x)) (-.f64 2/3 z)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (fma.f64 6 y (*.f64 -6 x)) (-.f64 2/3 z) x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 (fma.f64 6 y (*.f64 -6 x)) (-.f64 2/3 z) x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 (fma.f64 6 y (*.f64 -6 x)) (-.f64 2/3 z) x)) (cbrt.f64 (pow.f64 (fma.f64 (fma.f64 6 y (*.f64 -6 x)) (-.f64 2/3 z) x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (fma.f64 (fma.f64 6 y (*.f64 -6 x)) (-.f64 2/3 z) x) 2)) (cbrt.f64 (fma.f64 (fma.f64 6 y (*.f64 -6 x)) (-.f64 2/3 z) x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 (fma.f64 6 y (*.f64 -6 x)) (-.f64 2/3 z) x)) (sqrt.f64 (fma.f64 (fma.f64 6 y (*.f64 -6 x)) (-.f64 2/3 z) x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 x 3) (pow.f64 (*.f64 (fma.f64 6 y (*.f64 -6 x)) (-.f64 2/3 z)) 3)) (/.f64 1 (fma.f64 (*.f64 (fma.f64 6 y (*.f64 -6 x)) (-.f64 2/3 z)) (-.f64 (*.f64 (fma.f64 6 y (*.f64 -6 x)) (-.f64 2/3 z)) x) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 (fma.f64 6 y (*.f64 -6 x)) (-.f64 2/3 z)) 2)) (/.f64 1 (-.f64 x (*.f64 (fma.f64 6 y (*.f64 -6 x)) (-.f64 2/3 z)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (*.f64 (fma.f64 6 y (*.f64 -6 x)) (-.f64 2/3 z)) (-.f64 (*.f64 (fma.f64 6 y (*.f64 -6 x)) (-.f64 2/3 z)) x) (*.f64 x x)) (+.f64 (pow.f64 x 3) (pow.f64 (*.f64 (fma.f64 6 y (*.f64 -6 x)) (-.f64 2/3 z)) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 x (*.f64 (fma.f64 6 y (*.f64 -6 x)) (-.f64 2/3 z))) (-.f64 (*.f64 x x) (pow.f64 (*.f64 (fma.f64 6 y (*.f64 -6 x)) (-.f64 2/3 z)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 x 3) (pow.f64 (*.f64 (fma.f64 6 y (*.f64 -6 x)) (-.f64 2/3 z)) 3)) (fma.f64 (*.f64 (fma.f64 6 y (*.f64 -6 x)) (-.f64 2/3 z)) (-.f64 (*.f64 (fma.f64 6 y (*.f64 -6 x)) (-.f64 2/3 z)) x) (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 x 3) (pow.f64 (*.f64 (fma.f64 6 y (*.f64 -6 x)) (-.f64 2/3 z)) 3)) (+.f64 (pow.f64 (*.f64 (fma.f64 6 y (*.f64 -6 x)) (-.f64 2/3 z)) 2) (-.f64 (*.f64 x x) (*.f64 x (*.f64 (fma.f64 6 y (*.f64 -6 x)) (-.f64 2/3 z))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 (fma.f64 6 y (*.f64 -6 x)) (-.f64 2/3 z)) 2)) (-.f64 x (*.f64 (fma.f64 6 y (*.f64 -6 x)) (-.f64 2/3 z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 x 3) (pow.f64 (*.f64 (fma.f64 6 y (*.f64 -6 x)) (-.f64 2/3 z)) 3))) (neg.f64 (fma.f64 (*.f64 (fma.f64 6 y (*.f64 -6 x)) (-.f64 2/3 z)) (-.f64 (*.f64 (fma.f64 6 y (*.f64 -6 x)) (-.f64 2/3 z)) x) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 (fma.f64 6 y (*.f64 -6 x)) (-.f64 2/3 z)) 2))) (neg.f64 (-.f64 x (*.f64 (fma.f64 6 y (*.f64 -6 x)) (-.f64 2/3 z)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 6 y (*.f64 -6 x)) (-.f64 2/3 z)) 2) (*.f64 x x)) (-.f64 (*.f64 (fma.f64 6 y (*.f64 -6 x)) (-.f64 2/3 z)) x))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 (fma.f64 6 y (*.f64 -6 x)) (-.f64 2/3 z) x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (fma.f64 6 y (*.f64 -6 x)) (-.f64 2/3 z) x) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 (fma.f64 6 y (*.f64 -6 x)) (-.f64 2/3 z) x)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 (fma.f64 6 y (*.f64 -6 x)) (-.f64 2/3 z) x)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 (fma.f64 6 y (*.f64 -6 x)) (-.f64 2/3 z) x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 (fma.f64 6 y (*.f64 -6 x)) (-.f64 2/3 z) x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 (fma.f64 6 y (*.f64 -6 x)) (-.f64 2/3 z) x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 x)) (pow.f64 (exp.f64 (fma.f64 6 y (*.f64 -6 x))) (-.f64 2/3 z))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 x) (+.f64 1 (expm1.f64 (*.f64 (fma.f64 6 y (*.f64 -6 x)) (-.f64 2/3 z))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 x)) (+.f64 1 (expm1.f64 (*.f64 (fma.f64 6 y (*.f64 -6 x)) (-.f64 2/3 z))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (fma.f64 6 y (*.f64 -6 x)) (-.f64 2/3 z)))) (exp.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 (fma.f64 6 y (*.f64 -6 x))) (-.f64 2/3 z)) (+.f64 1 (expm1.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (fma.f64 6 y (*.f64 -6 x)) (-.f64 2/3 z)))) (+.f64 1 (expm1.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 (fma.f64 6 y (*.f64 -6 x)) (-.f64 2/3 z) x) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 (fma.f64 6 y (*.f64 -6 x)) (-.f64 2/3 z) x)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 (fma.f64 6 y (*.f64 -6 x)) (-.f64 2/3 z) x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 (fma.f64 6 y (*.f64 -6 x)) (-.f64 2/3 z) x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 (fma.f64 6 y (*.f64 -6 x)) (-.f64 2/3 z) x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x 1 (*.f64 (fma.f64 6 y (*.f64 -6 x)) (-.f64 2/3 z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 6 y (*.f64 -6 x)) (-.f64 2/3 z) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 2/3 z) (fma.f64 6 y (*.f64 -6 x)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (fma.f64 6 y (*.f64 -6 x)) (-.f64 2/3 z)) 1 x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 x (*.f64 (fma.f64 6 y (*.f64 -6 x)) (-.f64 2/3 z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (fma.f64 6 y (*.f64 -6 x)) (-.f64 2/3 z)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (fma.f64 6 y (*.f64 -6 x)) (-.f64 2/3 z))) (pow.f64 (cbrt.f64 (*.f64 (fma.f64 6 y (*.f64 -6 x)) (-.f64 2/3 z))) 2) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (fma.f64 6 y (*.f64 -6 x)) (-.f64 2/3 z))) 2) (cbrt.f64 (*.f64 (fma.f64 6 y (*.f64 -6 x)) (-.f64 2/3 z))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 x) (pow.f64 (cbrt.f64 x) 2) (*.f64 (fma.f64 6 y (*.f64 -6 x)) (-.f64 2/3 z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x) (*.f64 (fma.f64 6 y (*.f64 -6 x)) (-.f64 2/3 z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 2/3 z)) 2) (*.f64 (cbrt.f64 (-.f64 2/3 z)) (fma.f64 6 y (*.f64 -6 x))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 6 y (*.f64 -6 x))) 2) (*.f64 (cbrt.f64 (fma.f64 6 y (*.f64 -6 x))) (-.f64 2/3 z)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (fma.f64 6 y (*.f64 -6 x)) (-.f64 2/3 z))) (sqrt.f64 (*.f64 (fma.f64 6 y (*.f64 -6 x)) (-.f64 2/3 z))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (sqrt.f64 x) (*.f64 (fma.f64 6 y (*.f64 -6 x)) (-.f64 2/3 z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 2/3 z)) (*.f64 (sqrt.f64 (-.f64 2/3 z)) (fma.f64 6 y (*.f64 -6 x))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 6 y (*.f64 -6 x))) (*.f64 (sqrt.f64 (fma.f64 6 y (*.f64 -6 x))) (-.f64 2/3 z)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (fma.f64 6 y (*.f64 -6 x)) (pow.f64 (cbrt.f64 (-.f64 2/3 z)) 2)) (cbrt.f64 (-.f64 2/3 z)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (fma.f64 6 y (*.f64 -6 x)) (sqrt.f64 (-.f64 2/3 z))) (sqrt.f64 (-.f64 2/3 z)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 2/3 z) (pow.f64 (cbrt.f64 (fma.f64 6 y (*.f64 -6 x))) 2)) (cbrt.f64 (fma.f64 6 y (*.f64 -6 x))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 2/3 z) (sqrt.f64 (fma.f64 6 y (*.f64 -6 x)))) (sqrt.f64 (fma.f64 6 y (*.f64 -6 x))) x)))))

simplify418.0ms (2.9%)

Algorithm
egg-herbie
Rules
5082×fma-neg_binary64
729×fma-def_binary64
425×associate--r+_binary64
419×unsub-neg_binary64
411×sub-neg_binary64
Iterations

Useful iterations: 17 (0.0ms)

IterNodesCost
0411389
11091328
2328995
3884854
42413854
54363853
65386853
75939853
86179853
96306853
106378853
116410853
126410853
136410853
147027853
157067853
167067853
177067796
Stop Event
node limit
Counts
234 → 182
Calls
Call 1
Inputs
(*.f64 -6 (*.f64 (-.f64 2/3 z) x))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(*.f64 6 (*.f64 y (-.f64 2/3 z)))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(*.f64 6 (*.f64 y (-.f64 2/3 z)))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(*.f64 6 (*.f64 y (-.f64 2/3 z)))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(*.f64 -6 (*.f64 (-.f64 2/3 z) x))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(*.f64 -6 (*.f64 (-.f64 2/3 z) x))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(*.f64 2/3 (+.f64 (*.f64 6 y) (*.f64 -6 x)))
(+.f64 (*.f64 2/3 (+.f64 (*.f64 6 y) (*.f64 -6 x))) (*.f64 -1 (*.f64 z (+.f64 (*.f64 6 y) (*.f64 -6 x)))))
(+.f64 (*.f64 2/3 (+.f64 (*.f64 6 y) (*.f64 -6 x))) (*.f64 -1 (*.f64 z (+.f64 (*.f64 6 y) (*.f64 -6 x)))))
(+.f64 (*.f64 2/3 (+.f64 (*.f64 6 y) (*.f64 -6 x))) (*.f64 -1 (*.f64 z (+.f64 (*.f64 6 y) (*.f64 -6 x)))))
(*.f64 -1 (*.f64 z (+.f64 (*.f64 6 y) (*.f64 -6 x))))
(+.f64 (*.f64 2/3 (+.f64 (*.f64 6 y) (*.f64 -6 x))) (*.f64 -1 (*.f64 z (+.f64 (*.f64 6 y) (*.f64 -6 x)))))
(+.f64 (*.f64 2/3 (+.f64 (*.f64 6 y) (*.f64 -6 x))) (*.f64 -1 (*.f64 z (+.f64 (*.f64 6 y) (*.f64 -6 x)))))
(+.f64 (*.f64 2/3 (+.f64 (*.f64 6 y) (*.f64 -6 x))) (*.f64 -1 (*.f64 z (+.f64 (*.f64 6 y) (*.f64 -6 x)))))
(*.f64 -1 (*.f64 z (+.f64 (*.f64 6 y) (*.f64 -6 x))))
(+.f64 (*.f64 2/3 (+.f64 (*.f64 6 y) (*.f64 -6 x))) (*.f64 -1 (*.f64 z (+.f64 (*.f64 6 y) (*.f64 -6 x)))))
(+.f64 (*.f64 2/3 (+.f64 (*.f64 6 y) (*.f64 -6 x))) (*.f64 -1 (*.f64 z (+.f64 (*.f64 6 y) (*.f64 -6 x)))))
(+.f64 (*.f64 2/3 (+.f64 (*.f64 6 y) (*.f64 -6 x))) (*.f64 -1 (*.f64 z (+.f64 (*.f64 6 y) (*.f64 -6 x)))))
(*.f64 -6 x)
(*.f64 6 y)
(*.f64 6 y)
(*.f64 6 y)
(*.f64 -6 x)
(*.f64 -6 x)
(*.f64 6 (*.f64 y (-.f64 2/3 z)))
(+.f64 (*.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(+.f64 (*.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(+.f64 (*.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(*.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x)
(+.f64 (*.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(+.f64 (*.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(+.f64 (*.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(*.f64 -1 (*.f64 (-.f64 (*.f64 6 (-.f64 2/3 z)) 1) x))
(+.f64 (*.f64 6 (*.f64 y (-.f64 2/3 z))) (*.f64 -1 (*.f64 (-.f64 (*.f64 6 (-.f64 2/3 z)) 1) x)))
(+.f64 (*.f64 6 (*.f64 y (-.f64 2/3 z))) (*.f64 -1 (*.f64 (-.f64 (*.f64 6 (-.f64 2/3 z)) 1) x)))
(+.f64 (*.f64 6 (*.f64 y (-.f64 2/3 z))) (*.f64 -1 (*.f64 (-.f64 (*.f64 6 (-.f64 2/3 z)) 1) x)))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) x)
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (+.f64 (*.f64 6 (*.f64 y (-.f64 2/3 z))) x))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (+.f64 (*.f64 6 (*.f64 y (-.f64 2/3 z))) x))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (+.f64 (*.f64 6 (*.f64 y (-.f64 2/3 z))) x))
(*.f64 6 (*.f64 y (-.f64 2/3 z)))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (+.f64 x (*.f64 6 (*.f64 y (-.f64 2/3 z)))))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (+.f64 x (*.f64 6 (*.f64 y (-.f64 2/3 z)))))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (+.f64 x (*.f64 6 (*.f64 y (-.f64 2/3 z)))))
(*.f64 6 (*.f64 y (-.f64 2/3 z)))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (+.f64 x (*.f64 6 (*.f64 y (-.f64 2/3 z)))))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (+.f64 x (*.f64 6 (*.f64 y (-.f64 2/3 z)))))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (+.f64 x (*.f64 6 (*.f64 y (-.f64 2/3 z)))))
(+.f64 (*.f64 2/3 (+.f64 (*.f64 6 y) (*.f64 -6 x))) x)
(+.f64 (*.f64 2/3 (+.f64 (*.f64 6 y) (*.f64 -6 x))) (+.f64 (*.f64 -1 (*.f64 z (+.f64 (*.f64 6 y) (*.f64 -6 x)))) x))
(+.f64 (*.f64 2/3 (+.f64 (*.f64 6 y) (*.f64 -6 x))) (+.f64 (*.f64 -1 (*.f64 z (+.f64 (*.f64 6 y) (*.f64 -6 x)))) x))
(+.f64 (*.f64 2/3 (+.f64 (*.f64 6 y) (*.f64 -6 x))) (+.f64 (*.f64 -1 (*.f64 z (+.f64 (*.f64 6 y) (*.f64 -6 x)))) x))
(*.f64 -1 (*.f64 z (+.f64 (*.f64 6 y) (*.f64 -6 x))))
(+.f64 (*.f64 2/3 (+.f64 (*.f64 6 y) (*.f64 -6 x))) (+.f64 x (*.f64 -1 (*.f64 z (+.f64 (*.f64 6 y) (*.f64 -6 x))))))
(+.f64 (*.f64 2/3 (+.f64 (*.f64 6 y) (*.f64 -6 x))) (+.f64 x (*.f64 -1 (*.f64 z (+.f64 (*.f64 6 y) (*.f64 -6 x))))))
(+.f64 (*.f64 2/3 (+.f64 (*.f64 6 y) (*.f64 -6 x))) (+.f64 x (*.f64 -1 (*.f64 z (+.f64 (*.f64 6 y) (*.f64 -6 x))))))
(*.f64 -1 (*.f64 z (+.f64 (*.f64 6 y) (*.f64 -6 x))))
(+.f64 (*.f64 2/3 (+.f64 (*.f64 6 y) (*.f64 -6 x))) (+.f64 x (*.f64 -1 (*.f64 z (+.f64 (*.f64 6 y) (*.f64 -6 x))))))
(+.f64 (*.f64 2/3 (+.f64 (*.f64 6 y) (*.f64 -6 x))) (+.f64 x (*.f64 -1 (*.f64 z (+.f64 (*.f64 6 y) (*.f64 -6 x))))))
(+.f64 (*.f64 2/3 (+.f64 (*.f64 6 y) (*.f64 -6 x))) (+.f64 x (*.f64 -1 (*.f64 z (+.f64 (*.f64 6 y) (*.f64 -6 x))))))
Outputs
(*.f64 -6 (*.f64 (-.f64 2/3 z) x))
(*.f64 x (fma.f64 z 6 -4))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (-.f64 2/3 z) (*.f64 6 y)))
(*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y)))
(*.f64 (fma.f64 -6 z 4) (-.f64 y x))
(*.f64 (fma.f64 z 6 -4) (-.f64 x y))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (-.f64 2/3 z) (*.f64 6 y)))
(*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y)))
(*.f64 (fma.f64 -6 z 4) (-.f64 y x))
(*.f64 (fma.f64 z 6 -4) (-.f64 x y))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (-.f64 2/3 z) (*.f64 6 y)))
(*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y)))
(*.f64 (fma.f64 -6 z 4) (-.f64 y x))
(*.f64 (fma.f64 z 6 -4) (-.f64 x y))
(*.f64 6 (*.f64 y (-.f64 2/3 z)))
(*.f64 6 (*.f64 (-.f64 2/3 z) y))
(*.f64 (-.f64 2/3 z) (*.f64 6 y))
(*.f64 y (fma.f64 -6 z 4))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (-.f64 2/3 z) (*.f64 6 y)))
(*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y)))
(*.f64 (fma.f64 -6 z 4) (-.f64 y x))
(*.f64 (fma.f64 z 6 -4) (-.f64 x y))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (-.f64 2/3 z) (*.f64 6 y)))
(*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y)))
(*.f64 (fma.f64 -6 z 4) (-.f64 y x))
(*.f64 (fma.f64 z 6 -4) (-.f64 x y))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (-.f64 2/3 z) (*.f64 6 y)))
(*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y)))
(*.f64 (fma.f64 -6 z 4) (-.f64 y x))
(*.f64 (fma.f64 z 6 -4) (-.f64 x y))
(*.f64 6 (*.f64 y (-.f64 2/3 z)))
(*.f64 6 (*.f64 (-.f64 2/3 z) y))
(*.f64 (-.f64 2/3 z) (*.f64 6 y))
(*.f64 y (fma.f64 -6 z 4))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (-.f64 2/3 z) (*.f64 6 y)))
(*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y)))
(*.f64 (fma.f64 -6 z 4) (-.f64 y x))
(*.f64 (fma.f64 z 6 -4) (-.f64 x y))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (-.f64 2/3 z) (*.f64 6 y)))
(*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y)))
(*.f64 (fma.f64 -6 z 4) (-.f64 y x))
(*.f64 (fma.f64 z 6 -4) (-.f64 x y))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (-.f64 2/3 z) (*.f64 6 y)))
(*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y)))
(*.f64 (fma.f64 -6 z 4) (-.f64 y x))
(*.f64 (fma.f64 z 6 -4) (-.f64 x y))
(*.f64 6 (*.f64 y (-.f64 2/3 z)))
(*.f64 6 (*.f64 (-.f64 2/3 z) y))
(*.f64 (-.f64 2/3 z) (*.f64 6 y))
(*.f64 y (fma.f64 -6 z 4))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (-.f64 2/3 z) (*.f64 6 y)))
(*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y)))
(*.f64 (fma.f64 -6 z 4) (-.f64 y x))
(*.f64 (fma.f64 z 6 -4) (-.f64 x y))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (-.f64 2/3 z) (*.f64 6 y)))
(*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y)))
(*.f64 (fma.f64 -6 z 4) (-.f64 y x))
(*.f64 (fma.f64 z 6 -4) (-.f64 x y))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (-.f64 2/3 z) (*.f64 6 y)))
(*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y)))
(*.f64 (fma.f64 -6 z 4) (-.f64 y x))
(*.f64 (fma.f64 z 6 -4) (-.f64 x y))
(*.f64 -6 (*.f64 (-.f64 2/3 z) x))
(*.f64 x (fma.f64 z 6 -4))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (-.f64 2/3 z) (*.f64 6 y)))
(*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y)))
(*.f64 (fma.f64 -6 z 4) (-.f64 y x))
(*.f64 (fma.f64 z 6 -4) (-.f64 x y))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (-.f64 2/3 z) (*.f64 6 y)))
(*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y)))
(*.f64 (fma.f64 -6 z 4) (-.f64 y x))
(*.f64 (fma.f64 z 6 -4) (-.f64 x y))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (-.f64 2/3 z) (*.f64 6 y)))
(*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y)))
(*.f64 (fma.f64 -6 z 4) (-.f64 y x))
(*.f64 (fma.f64 z 6 -4) (-.f64 x y))
(*.f64 -6 (*.f64 (-.f64 2/3 z) x))
(*.f64 x (fma.f64 z 6 -4))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (-.f64 2/3 z) (*.f64 6 y)))
(*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y)))
(*.f64 (fma.f64 -6 z 4) (-.f64 y x))
(*.f64 (fma.f64 z 6 -4) (-.f64 x y))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (-.f64 2/3 z) (*.f64 6 y)))
(*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y)))
(*.f64 (fma.f64 -6 z 4) (-.f64 y x))
(*.f64 (fma.f64 z 6 -4) (-.f64 x y))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (-.f64 2/3 z) (*.f64 6 y)))
(*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y)))
(*.f64 (fma.f64 -6 z 4) (-.f64 y x))
(*.f64 (fma.f64 z 6 -4) (-.f64 x y))
(*.f64 2/3 (+.f64 (*.f64 6 y) (*.f64 -6 x)))
(*.f64 2/3 (fma.f64 6 y (*.f64 -6 x)))
(+.f64 (*.f64 x -4) (*.f64 y 4))
(fma.f64 x -4 (*.f64 y 4))
(fma.f64 y 4 (*.f64 x -4))
(*.f64 4 (-.f64 y x))
(+.f64 (*.f64 2/3 (+.f64 (*.f64 6 y) (*.f64 -6 x))) (*.f64 -1 (*.f64 z (+.f64 (*.f64 6 y) (*.f64 -6 x)))))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (-.f64 2/3 z) (*.f64 6 y)))
(*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y)))
(*.f64 (fma.f64 -6 z 4) (-.f64 y x))
(*.f64 (fma.f64 z 6 -4) (-.f64 x y))
(+.f64 (*.f64 2/3 (+.f64 (*.f64 6 y) (*.f64 -6 x))) (*.f64 -1 (*.f64 z (+.f64 (*.f64 6 y) (*.f64 -6 x)))))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (-.f64 2/3 z) (*.f64 6 y)))
(*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y)))
(*.f64 (fma.f64 -6 z 4) (-.f64 y x))
(*.f64 (fma.f64 z 6 -4) (-.f64 x y))
(+.f64 (*.f64 2/3 (+.f64 (*.f64 6 y) (*.f64 -6 x))) (*.f64 -1 (*.f64 z (+.f64 (*.f64 6 y) (*.f64 -6 x)))))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (-.f64 2/3 z) (*.f64 6 y)))
(*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y)))
(*.f64 (fma.f64 -6 z 4) (-.f64 y x))
(*.f64 (fma.f64 z 6 -4) (-.f64 x y))
(*.f64 -1 (*.f64 z (+.f64 (*.f64 6 y) (*.f64 -6 x))))
(neg.f64 (*.f64 z (fma.f64 6 y (*.f64 -6 x))))
(*.f64 z (neg.f64 (fma.f64 -6 x (*.f64 6 y))))
(*.f64 (*.f64 -6 z) (-.f64 y x))
(*.f64 -6 (*.f64 z (-.f64 y x)))
(+.f64 (*.f64 2/3 (+.f64 (*.f64 6 y) (*.f64 -6 x))) (*.f64 -1 (*.f64 z (+.f64 (*.f64 6 y) (*.f64 -6 x)))))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (-.f64 2/3 z) (*.f64 6 y)))
(*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y)))
(*.f64 (fma.f64 -6 z 4) (-.f64 y x))
(*.f64 (fma.f64 z 6 -4) (-.f64 x y))
(+.f64 (*.f64 2/3 (+.f64 (*.f64 6 y) (*.f64 -6 x))) (*.f64 -1 (*.f64 z (+.f64 (*.f64 6 y) (*.f64 -6 x)))))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (-.f64 2/3 z) (*.f64 6 y)))
(*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y)))
(*.f64 (fma.f64 -6 z 4) (-.f64 y x))
(*.f64 (fma.f64 z 6 -4) (-.f64 x y))
(+.f64 (*.f64 2/3 (+.f64 (*.f64 6 y) (*.f64 -6 x))) (*.f64 -1 (*.f64 z (+.f64 (*.f64 6 y) (*.f64 -6 x)))))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (-.f64 2/3 z) (*.f64 6 y)))
(*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y)))
(*.f64 (fma.f64 -6 z 4) (-.f64 y x))
(*.f64 (fma.f64 z 6 -4) (-.f64 x y))
(*.f64 -1 (*.f64 z (+.f64 (*.f64 6 y) (*.f64 -6 x))))
(neg.f64 (*.f64 z (fma.f64 6 y (*.f64 -6 x))))
(*.f64 z (neg.f64 (fma.f64 -6 x (*.f64 6 y))))
(*.f64 (*.f64 -6 z) (-.f64 y x))
(*.f64 -6 (*.f64 z (-.f64 y x)))
(+.f64 (*.f64 2/3 (+.f64 (*.f64 6 y) (*.f64 -6 x))) (*.f64 -1 (*.f64 z (+.f64 (*.f64 6 y) (*.f64 -6 x)))))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (-.f64 2/3 z) (*.f64 6 y)))
(*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y)))
(*.f64 (fma.f64 -6 z 4) (-.f64 y x))
(*.f64 (fma.f64 z 6 -4) (-.f64 x y))
(+.f64 (*.f64 2/3 (+.f64 (*.f64 6 y) (*.f64 -6 x))) (*.f64 -1 (*.f64 z (+.f64 (*.f64 6 y) (*.f64 -6 x)))))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (-.f64 2/3 z) (*.f64 6 y)))
(*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y)))
(*.f64 (fma.f64 -6 z 4) (-.f64 y x))
(*.f64 (fma.f64 z 6 -4) (-.f64 x y))
(+.f64 (*.f64 2/3 (+.f64 (*.f64 6 y) (*.f64 -6 x))) (*.f64 -1 (*.f64 z (+.f64 (*.f64 6 y) (*.f64 -6 x)))))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (-.f64 2/3 z) (*.f64 6 y)))
(*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y)))
(*.f64 (fma.f64 -6 z 4) (-.f64 y x))
(*.f64 (fma.f64 z 6 -4) (-.f64 x y))
(*.f64 -6 x)
(*.f64 6 y)
(*.f64 6 y)
(*.f64 6 y)
(*.f64 -6 x)
(*.f64 -6 x)
(*.f64 6 (*.f64 y (-.f64 2/3 z)))
(*.f64 6 (*.f64 (-.f64 2/3 z) y))
(*.f64 (-.f64 2/3 z) (*.f64 6 y))
(*.f64 y (fma.f64 -6 z 4))
(+.f64 (*.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (fma.f64 (*.f64 6 y) (-.f64 2/3 z) x))
(fma.f64 (fma.f64 -6 x (*.f64 6 y)) (-.f64 2/3 z) x)
(+.f64 x (*.f64 (fma.f64 -6 z 4) (-.f64 y x)))
(fma.f64 (-.f64 2/3 z) (*.f64 6 (-.f64 y x)) x)
(fma.f64 (-.f64 2/3 z) (*.f64 -6 (-.f64 x y)) x)
(fma.f64 (fma.f64 z 6 -4) (-.f64 x y) x)
(+.f64 (*.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (fma.f64 (*.f64 6 y) (-.f64 2/3 z) x))
(fma.f64 (fma.f64 -6 x (*.f64 6 y)) (-.f64 2/3 z) x)
(+.f64 x (*.f64 (fma.f64 -6 z 4) (-.f64 y x)))
(fma.f64 (-.f64 2/3 z) (*.f64 6 (-.f64 y x)) x)
(fma.f64 (-.f64 2/3 z) (*.f64 -6 (-.f64 x y)) x)
(fma.f64 (fma.f64 z 6 -4) (-.f64 x y) x)
(+.f64 (*.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (fma.f64 (*.f64 6 y) (-.f64 2/3 z) x))
(fma.f64 (fma.f64 -6 x (*.f64 6 y)) (-.f64 2/3 z) x)
(+.f64 x (*.f64 (fma.f64 -6 z 4) (-.f64 y x)))
(fma.f64 (-.f64 2/3 z) (*.f64 6 (-.f64 y x)) x)
(fma.f64 (-.f64 2/3 z) (*.f64 -6 (-.f64 x y)) x)
(fma.f64 (fma.f64 z 6 -4) (-.f64 x y) x)
(*.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x)
(*.f64 x (+.f64 1 (*.f64 -6 (-.f64 2/3 z))))
(*.f64 x (fma.f64 -6 (-.f64 2/3 z) 1))
(*.f64 x (+.f64 -3 (*.f64 z 6)))
(fma.f64 x (fma.f64 z 6 -4) x)
(*.f64 x (fma.f64 z 6 -3))
(+.f64 (*.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (fma.f64 (*.f64 6 y) (-.f64 2/3 z) x))
(fma.f64 (fma.f64 -6 x (*.f64 6 y)) (-.f64 2/3 z) x)
(+.f64 x (*.f64 (fma.f64 -6 z 4) (-.f64 y x)))
(fma.f64 (-.f64 2/3 z) (*.f64 6 (-.f64 y x)) x)
(fma.f64 (-.f64 2/3 z) (*.f64 -6 (-.f64 x y)) x)
(fma.f64 (fma.f64 z 6 -4) (-.f64 x y) x)
(+.f64 (*.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (fma.f64 (*.f64 6 y) (-.f64 2/3 z) x))
(fma.f64 (fma.f64 -6 x (*.f64 6 y)) (-.f64 2/3 z) x)
(+.f64 x (*.f64 (fma.f64 -6 z 4) (-.f64 y x)))
(fma.f64 (-.f64 2/3 z) (*.f64 6 (-.f64 y x)) x)
(fma.f64 (-.f64 2/3 z) (*.f64 -6 (-.f64 x y)) x)
(fma.f64 (fma.f64 z 6 -4) (-.f64 x y) x)
(+.f64 (*.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (fma.f64 (*.f64 6 y) (-.f64 2/3 z) x))
(fma.f64 (fma.f64 -6 x (*.f64 6 y)) (-.f64 2/3 z) x)
(+.f64 x (*.f64 (fma.f64 -6 z 4) (-.f64 y x)))
(fma.f64 (-.f64 2/3 z) (*.f64 6 (-.f64 y x)) x)
(fma.f64 (-.f64 2/3 z) (*.f64 -6 (-.f64 x y)) x)
(fma.f64 (fma.f64 z 6 -4) (-.f64 x y) x)
(*.f64 -1 (*.f64 (-.f64 (*.f64 6 (-.f64 2/3 z)) 1) x))
(*.f64 x (+.f64 1 (*.f64 -6 (-.f64 2/3 z))))
(*.f64 x (fma.f64 -6 (-.f64 2/3 z) 1))
(*.f64 x (+.f64 -3 (*.f64 z 6)))
(fma.f64 x (fma.f64 z 6 -4) x)
(*.f64 x (fma.f64 z 6 -3))
(+.f64 (*.f64 6 (*.f64 y (-.f64 2/3 z))) (*.f64 -1 (*.f64 (-.f64 (*.f64 6 (-.f64 2/3 z)) 1) x)))
(fma.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (fma.f64 (*.f64 6 y) (-.f64 2/3 z) x))
(fma.f64 (fma.f64 -6 x (*.f64 6 y)) (-.f64 2/3 z) x)
(+.f64 x (*.f64 (fma.f64 -6 z 4) (-.f64 y x)))
(fma.f64 (-.f64 2/3 z) (*.f64 6 (-.f64 y x)) x)
(fma.f64 (-.f64 2/3 z) (*.f64 -6 (-.f64 x y)) x)
(fma.f64 (fma.f64 z 6 -4) (-.f64 x y) x)
(+.f64 (*.f64 6 (*.f64 y (-.f64 2/3 z))) (*.f64 -1 (*.f64 (-.f64 (*.f64 6 (-.f64 2/3 z)) 1) x)))
(fma.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (fma.f64 (*.f64 6 y) (-.f64 2/3 z) x))
(fma.f64 (fma.f64 -6 x (*.f64 6 y)) (-.f64 2/3 z) x)
(+.f64 x (*.f64 (fma.f64 -6 z 4) (-.f64 y x)))
(fma.f64 (-.f64 2/3 z) (*.f64 6 (-.f64 y x)) x)
(fma.f64 (-.f64 2/3 z) (*.f64 -6 (-.f64 x y)) x)
(fma.f64 (fma.f64 z 6 -4) (-.f64 x y) x)
(+.f64 (*.f64 6 (*.f64 y (-.f64 2/3 z))) (*.f64 -1 (*.f64 (-.f64 (*.f64 6 (-.f64 2/3 z)) 1) x)))
(fma.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (fma.f64 (*.f64 6 y) (-.f64 2/3 z) x))
(fma.f64 (fma.f64 -6 x (*.f64 6 y)) (-.f64 2/3 z) x)
(+.f64 x (*.f64 (fma.f64 -6 z 4) (-.f64 y x)))
(fma.f64 (-.f64 2/3 z) (*.f64 6 (-.f64 y x)) x)
(fma.f64 (-.f64 2/3 z) (*.f64 -6 (-.f64 x y)) x)
(fma.f64 (fma.f64 z 6 -4) (-.f64 x y) x)
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) x)
(*.f64 x (+.f64 1 (*.f64 -6 (-.f64 2/3 z))))
(*.f64 x (fma.f64 -6 (-.f64 2/3 z) 1))
(*.f64 x (+.f64 -3 (*.f64 z 6)))
(fma.f64 x (fma.f64 z 6 -4) x)
(*.f64 x (fma.f64 z 6 -3))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (+.f64 (*.f64 6 (*.f64 y (-.f64 2/3 z))) x))
(fma.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (fma.f64 (*.f64 6 y) (-.f64 2/3 z) x))
(fma.f64 (fma.f64 -6 x (*.f64 6 y)) (-.f64 2/3 z) x)
(+.f64 x (*.f64 (fma.f64 -6 z 4) (-.f64 y x)))
(fma.f64 (-.f64 2/3 z) (*.f64 6 (-.f64 y x)) x)
(fma.f64 (-.f64 2/3 z) (*.f64 -6 (-.f64 x y)) x)
(fma.f64 (fma.f64 z 6 -4) (-.f64 x y) x)
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (+.f64 (*.f64 6 (*.f64 y (-.f64 2/3 z))) x))
(fma.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (fma.f64 (*.f64 6 y) (-.f64 2/3 z) x))
(fma.f64 (fma.f64 -6 x (*.f64 6 y)) (-.f64 2/3 z) x)
(+.f64 x (*.f64 (fma.f64 -6 z 4) (-.f64 y x)))
(fma.f64 (-.f64 2/3 z) (*.f64 6 (-.f64 y x)) x)
(fma.f64 (-.f64 2/3 z) (*.f64 -6 (-.f64 x y)) x)
(fma.f64 (fma.f64 z 6 -4) (-.f64 x y) x)
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (+.f64 (*.f64 6 (*.f64 y (-.f64 2/3 z))) x))
(fma.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (fma.f64 (*.f64 6 y) (-.f64 2/3 z) x))
(fma.f64 (fma.f64 -6 x (*.f64 6 y)) (-.f64 2/3 z) x)
(+.f64 x (*.f64 (fma.f64 -6 z 4) (-.f64 y x)))
(fma.f64 (-.f64 2/3 z) (*.f64 6 (-.f64 y x)) x)
(fma.f64 (-.f64 2/3 z) (*.f64 -6 (-.f64 x y)) x)
(fma.f64 (fma.f64 z 6 -4) (-.f64 x y) x)
(*.f64 6 (*.f64 y (-.f64 2/3 z)))
(*.f64 6 (*.f64 (-.f64 2/3 z) y))
(*.f64 (-.f64 2/3 z) (*.f64 6 y))
(*.f64 y (fma.f64 -6 z 4))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (+.f64 x (*.f64 6 (*.f64 y (-.f64 2/3 z)))))
(fma.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (fma.f64 (*.f64 6 y) (-.f64 2/3 z) x))
(fma.f64 (fma.f64 -6 x (*.f64 6 y)) (-.f64 2/3 z) x)
(+.f64 x (*.f64 (fma.f64 -6 z 4) (-.f64 y x)))
(fma.f64 (-.f64 2/3 z) (*.f64 6 (-.f64 y x)) x)
(fma.f64 (-.f64 2/3 z) (*.f64 -6 (-.f64 x y)) x)
(fma.f64 (fma.f64 z 6 -4) (-.f64 x y) x)
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (+.f64 x (*.f64 6 (*.f64 y (-.f64 2/3 z)))))
(fma.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (fma.f64 (*.f64 6 y) (-.f64 2/3 z) x))
(fma.f64 (fma.f64 -6 x (*.f64 6 y)) (-.f64 2/3 z) x)
(+.f64 x (*.f64 (fma.f64 -6 z 4) (-.f64 y x)))
(fma.f64 (-.f64 2/3 z) (*.f64 6 (-.f64 y x)) x)
(fma.f64 (-.f64 2/3 z) (*.f64 -6 (-.f64 x y)) x)
(fma.f64 (fma.f64 z 6 -4) (-.f64 x y) x)
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (+.f64 x (*.f64 6 (*.f64 y (-.f64 2/3 z)))))
(fma.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (fma.f64 (*.f64 6 y) (-.f64 2/3 z) x))
(fma.f64 (fma.f64 -6 x (*.f64 6 y)) (-.f64 2/3 z) x)
(+.f64 x (*.f64 (fma.f64 -6 z 4) (-.f64 y x)))
(fma.f64 (-.f64 2/3 z) (*.f64 6 (-.f64 y x)) x)
(fma.f64 (-.f64 2/3 z) (*.f64 -6 (-.f64 x y)) x)
(fma.f64 (fma.f64 z 6 -4) (-.f64 x y) x)
(*.f64 6 (*.f64 y (-.f64 2/3 z)))
(*.f64 6 (*.f64 (-.f64 2/3 z) y))
(*.f64 (-.f64 2/3 z) (*.f64 6 y))
(*.f64 y (fma.f64 -6 z 4))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (+.f64 x (*.f64 6 (*.f64 y (-.f64 2/3 z)))))
(fma.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (fma.f64 (*.f64 6 y) (-.f64 2/3 z) x))
(fma.f64 (fma.f64 -6 x (*.f64 6 y)) (-.f64 2/3 z) x)
(+.f64 x (*.f64 (fma.f64 -6 z 4) (-.f64 y x)))
(fma.f64 (-.f64 2/3 z) (*.f64 6 (-.f64 y x)) x)
(fma.f64 (-.f64 2/3 z) (*.f64 -6 (-.f64 x y)) x)
(fma.f64 (fma.f64 z 6 -4) (-.f64 x y) x)
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (+.f64 x (*.f64 6 (*.f64 y (-.f64 2/3 z)))))
(fma.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (fma.f64 (*.f64 6 y) (-.f64 2/3 z) x))
(fma.f64 (fma.f64 -6 x (*.f64 6 y)) (-.f64 2/3 z) x)
(+.f64 x (*.f64 (fma.f64 -6 z 4) (-.f64 y x)))
(fma.f64 (-.f64 2/3 z) (*.f64 6 (-.f64 y x)) x)
(fma.f64 (-.f64 2/3 z) (*.f64 -6 (-.f64 x y)) x)
(fma.f64 (fma.f64 z 6 -4) (-.f64 x y) x)
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (+.f64 x (*.f64 6 (*.f64 y (-.f64 2/3 z)))))
(fma.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (fma.f64 (*.f64 6 y) (-.f64 2/3 z) x))
(fma.f64 (fma.f64 -6 x (*.f64 6 y)) (-.f64 2/3 z) x)
(+.f64 x (*.f64 (fma.f64 -6 z 4) (-.f64 y x)))
(fma.f64 (-.f64 2/3 z) (*.f64 6 (-.f64 y x)) x)
(fma.f64 (-.f64 2/3 z) (*.f64 -6 (-.f64 x y)) x)
(fma.f64 (fma.f64 z 6 -4) (-.f64 x y) x)
(+.f64 (*.f64 2/3 (+.f64 (*.f64 6 y) (*.f64 -6 x))) x)
(fma.f64 2/3 (fma.f64 6 y (*.f64 -6 x)) x)
(fma.f64 2/3 (fma.f64 -6 x (*.f64 6 y)) x)
(fma.f64 y 4 (*.f64 -3 x))
(fma.f64 y 4 (*.f64 x -3))
(+.f64 (*.f64 2/3 (+.f64 (*.f64 6 y) (*.f64 -6 x))) (+.f64 (*.f64 -1 (*.f64 z (+.f64 (*.f64 6 y) (*.f64 -6 x)))) x))
(fma.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (fma.f64 (*.f64 6 y) (-.f64 2/3 z) x))
(fma.f64 (fma.f64 -6 x (*.f64 6 y)) (-.f64 2/3 z) x)
(+.f64 x (*.f64 (fma.f64 -6 z 4) (-.f64 y x)))
(fma.f64 (-.f64 2/3 z) (*.f64 6 (-.f64 y x)) x)
(fma.f64 (-.f64 2/3 z) (*.f64 -6 (-.f64 x y)) x)
(fma.f64 (fma.f64 z 6 -4) (-.f64 x y) x)
(+.f64 (*.f64 2/3 (+.f64 (*.f64 6 y) (*.f64 -6 x))) (+.f64 (*.f64 -1 (*.f64 z (+.f64 (*.f64 6 y) (*.f64 -6 x)))) x))
(fma.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (fma.f64 (*.f64 6 y) (-.f64 2/3 z) x))
(fma.f64 (fma.f64 -6 x (*.f64 6 y)) (-.f64 2/3 z) x)
(+.f64 x (*.f64 (fma.f64 -6 z 4) (-.f64 y x)))
(fma.f64 (-.f64 2/3 z) (*.f64 6 (-.f64 y x)) x)
(fma.f64 (-.f64 2/3 z) (*.f64 -6 (-.f64 x y)) x)
(fma.f64 (fma.f64 z 6 -4) (-.f64 x y) x)
(+.f64 (*.f64 2/3 (+.f64 (*.f64 6 y) (*.f64 -6 x))) (+.f64 (*.f64 -1 (*.f64 z (+.f64 (*.f64 6 y) (*.f64 -6 x)))) x))
(fma.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (fma.f64 (*.f64 6 y) (-.f64 2/3 z) x))
(fma.f64 (fma.f64 -6 x (*.f64 6 y)) (-.f64 2/3 z) x)
(+.f64 x (*.f64 (fma.f64 -6 z 4) (-.f64 y x)))
(fma.f64 (-.f64 2/3 z) (*.f64 6 (-.f64 y x)) x)
(fma.f64 (-.f64 2/3 z) (*.f64 -6 (-.f64 x y)) x)
(fma.f64 (fma.f64 z 6 -4) (-.f64 x y) x)
(*.f64 -1 (*.f64 z (+.f64 (*.f64 6 y) (*.f64 -6 x))))
(neg.f64 (*.f64 z (fma.f64 6 y (*.f64 -6 x))))
(*.f64 z (neg.f64 (fma.f64 -6 x (*.f64 6 y))))
(*.f64 (*.f64 -6 z) (-.f64 y x))
(*.f64 -6 (*.f64 z (-.f64 y x)))
(+.f64 (*.f64 2/3 (+.f64 (*.f64 6 y) (*.f64 -6 x))) (+.f64 x (*.f64 -1 (*.f64 z (+.f64 (*.f64 6 y) (*.f64 -6 x))))))
(fma.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (fma.f64 (*.f64 6 y) (-.f64 2/3 z) x))
(fma.f64 (fma.f64 -6 x (*.f64 6 y)) (-.f64 2/3 z) x)
(+.f64 x (*.f64 (fma.f64 -6 z 4) (-.f64 y x)))
(fma.f64 (-.f64 2/3 z) (*.f64 6 (-.f64 y x)) x)
(fma.f64 (-.f64 2/3 z) (*.f64 -6 (-.f64 x y)) x)
(fma.f64 (fma.f64 z 6 -4) (-.f64 x y) x)
(+.f64 (*.f64 2/3 (+.f64 (*.f64 6 y) (*.f64 -6 x))) (+.f64 x (*.f64 -1 (*.f64 z (+.f64 (*.f64 6 y) (*.f64 -6 x))))))
(fma.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (fma.f64 (*.f64 6 y) (-.f64 2/3 z) x))
(fma.f64 (fma.f64 -6 x (*.f64 6 y)) (-.f64 2/3 z) x)
(+.f64 x (*.f64 (fma.f64 -6 z 4) (-.f64 y x)))
(fma.f64 (-.f64 2/3 z) (*.f64 6 (-.f64 y x)) x)
(fma.f64 (-.f64 2/3 z) (*.f64 -6 (-.f64 x y)) x)
(fma.f64 (fma.f64 z 6 -4) (-.f64 x y) x)
(+.f64 (*.f64 2/3 (+.f64 (*.f64 6 y) (*.f64 -6 x))) (+.f64 x (*.f64 -1 (*.f64 z (+.f64 (*.f64 6 y) (*.f64 -6 x))))))
(fma.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (fma.f64 (*.f64 6 y) (-.f64 2/3 z) x))
(fma.f64 (fma.f64 -6 x (*.f64 6 y)) (-.f64 2/3 z) x)
(+.f64 x (*.f64 (fma.f64 -6 z 4) (-.f64 y x)))
(fma.f64 (-.f64 2/3 z) (*.f64 6 (-.f64 y x)) x)
(fma.f64 (-.f64 2/3 z) (*.f64 -6 (-.f64 x y)) x)
(fma.f64 (fma.f64 z 6 -4) (-.f64 x y) x)
(*.f64 -1 (*.f64 z (+.f64 (*.f64 6 y) (*.f64 -6 x))))
(neg.f64 (*.f64 z (fma.f64 6 y (*.f64 -6 x))))
(*.f64 z (neg.f64 (fma.f64 -6 x (*.f64 6 y))))
(*.f64 (*.f64 -6 z) (-.f64 y x))
(*.f64 -6 (*.f64 z (-.f64 y x)))
(+.f64 (*.f64 2/3 (+.f64 (*.f64 6 y) (*.f64 -6 x))) (+.f64 x (*.f64 -1 (*.f64 z (+.f64 (*.f64 6 y) (*.f64 -6 x))))))
(fma.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (fma.f64 (*.f64 6 y) (-.f64 2/3 z) x))
(fma.f64 (fma.f64 -6 x (*.f64 6 y)) (-.f64 2/3 z) x)
(+.f64 x (*.f64 (fma.f64 -6 z 4) (-.f64 y x)))
(fma.f64 (-.f64 2/3 z) (*.f64 6 (-.f64 y x)) x)
(fma.f64 (-.f64 2/3 z) (*.f64 -6 (-.f64 x y)) x)
(fma.f64 (fma.f64 z 6 -4) (-.f64 x y) x)
(+.f64 (*.f64 2/3 (+.f64 (*.f64 6 y) (*.f64 -6 x))) (+.f64 x (*.f64 -1 (*.f64 z (+.f64 (*.f64 6 y) (*.f64 -6 x))))))
(fma.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (fma.f64 (*.f64 6 y) (-.f64 2/3 z) x))
(fma.f64 (fma.f64 -6 x (*.f64 6 y)) (-.f64 2/3 z) x)
(+.f64 x (*.f64 (fma.f64 -6 z 4) (-.f64 y x)))
(fma.f64 (-.f64 2/3 z) (*.f64 6 (-.f64 y x)) x)
(fma.f64 (-.f64 2/3 z) (*.f64 -6 (-.f64 x y)) x)
(fma.f64 (fma.f64 z 6 -4) (-.f64 x y) x)
(+.f64 (*.f64 2/3 (+.f64 (*.f64 6 y) (*.f64 -6 x))) (+.f64 x (*.f64 -1 (*.f64 z (+.f64 (*.f64 6 y) (*.f64 -6 x))))))
(fma.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x (*.f64 6 (*.f64 (-.f64 2/3 z) y)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (fma.f64 (*.f64 6 y) (-.f64 2/3 z) x))
(fma.f64 (fma.f64 -6 x (*.f64 6 y)) (-.f64 2/3 z) x)
(+.f64 x (*.f64 (fma.f64 -6 z 4) (-.f64 y x)))
(fma.f64 (-.f64 2/3 z) (*.f64 6 (-.f64 y x)) x)
(fma.f64 (-.f64 2/3 z) (*.f64 -6 (-.f64 x y)) x)
(fma.f64 (fma.f64 z 6 -4) (-.f64 x y) x)

localize27.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) 6)
0.3b
(*.f64 (/.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) 6) (+.f64 y x)) (-.f64 (/.f64 2 3) z))
2.7b
(-.f64 (*.f64 y y) (*.f64 x x))
27.1b
(/.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) 6) (+.f64 y x))
Compiler

Compiled 95 to 39 computations (58.9% saved)

series22.0ms (0.2%)

Counts
4 → 108
Calls

27 calls:

TimeVariablePointExpression
6.0ms
y
@inf
(/.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) 6) (+.f64 y x))
1.0ms
z
@0
(*.f64 (/.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) 6) (+.f64 y x)) (-.f64 (/.f64 2 3) z))
1.0ms
y
@0
(*.f64 (/.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) 6) (+.f64 y x)) (-.f64 (/.f64 2 3) z))
1.0ms
x
@0
(*.f64 (/.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) 6) (+.f64 y x)) (-.f64 (/.f64 2 3) z))
1.0ms
y
@0
(/.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) 6) (+.f64 y x))

rewrite115.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
587×fma-def_binary64
317×expm1-udef_binary64
317×log1p-udef_binary64
274×fma-neg_binary64
253×log-pow_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01767
136943
2516143
Stop Event
node limit
Counts
4 → 309
Calls
Call 1
Inputs
(/.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) 6) (+.f64 y x))
(-.f64 (*.f64 y y) (*.f64 x x))
(*.f64 (/.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) 6) (+.f64 y x)) (-.f64 (/.f64 2 3) z))
(*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) 6)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 6 (-.f64 y x)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 y y) (*.f64 (+.f64 y x) 1/6)) (/.f64 (*.f64 x x) (*.f64 (+.f64 y x) 1/6)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (/.f64 1 (*.f64 (+.f64 y x) 1/6)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (*.f64 6 (/.f64 1 (+.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 6 (-.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 6 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (/.f64 1 (+.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) 6) (/.f64 1 (+.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 6 (-.f64 y x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 6 (-.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) 6)) 2) (*.f64 (cbrt.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) 6)) (/.f64 1 (+.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 6 (-.f64 y x))) (pow.f64 (cbrt.f64 (*.f64 6 (-.f64 y x))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 6 (-.f64 y x))) 2) (cbrt.f64 (*.f64 6 (-.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) 6)) (*.f64 (sqrt.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) 6)) (/.f64 1 (+.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 6 (-.f64 y x))) (sqrt.f64 (*.f64 6 (-.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) -6) (/.f64 1 (neg.f64 (+.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (+.f64 y x)) (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) 6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 y x) 6)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 x x)) 1) (/.f64 6 (+.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) 6)) 2) 1) (/.f64 (cbrt.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) 6)) (+.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) 6)) 1) (/.f64 (sqrt.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) 6)) (+.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (pow.f64 (cbrt.f64 (+.f64 y x)) 2)) (/.f64 6 (cbrt.f64 (+.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 6 (pow.f64 (cbrt.f64 (+.f64 y x)) 2)) (/.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (cbrt.f64 (+.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 (+.f64 y x)) 2)) (/.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) 6) (cbrt.f64 (+.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) 6)) 2) (pow.f64 (cbrt.f64 (+.f64 y x)) 2)) (cbrt.f64 (*.f64 6 (-.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) 6)) (pow.f64 (cbrt.f64 (+.f64 y x)) 2)) (/.f64 (sqrt.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) 6)) (cbrt.f64 (+.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (sqrt.f64 (+.f64 y x))) (/.f64 6 (sqrt.f64 (+.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 6 (sqrt.f64 (+.f64 y x))) (/.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (sqrt.f64 (+.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 (+.f64 y x))) (/.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) 6) (sqrt.f64 (+.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) 6)) 2) (sqrt.f64 (+.f64 y x))) (/.f64 (cbrt.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) 6)) (sqrt.f64 (+.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) 6) (-.f64 (*.f64 y y) (*.f64 x x))) (-.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) 6) (+.f64 (pow.f64 y 3) (pow.f64 x 3))) (fma.f64 x (-.f64 x y) (*.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 6 (-.f64 y x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 6 (-.f64 y x)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 6 (-.f64 y x))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 6 (-.f64 y x))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 1 (*.f64 6 (-.f64 y x))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) 6) (neg.f64 (+.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 6 (-.f64 y x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (*.f64 6 (-.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 6 (-.f64 y x)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 6 (-.f64 y x)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) 6) 3) (pow.f64 (+.f64 y x) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 6 (-.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 6 (-.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 6 (-.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 6 (-.f64 y x))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y y) (*.f64 x (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y y) (*.f64 (*.f64 x (neg.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y y) (fma.f64 x (neg.f64 x) (fma.f64 x (neg.f64 x) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (fma.f64 x (neg.f64 x) (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (fma.f64 (*.f64 x (neg.f64 x)) 1 (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 (pow.f64 x 4)) (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (*.f64 (fma.f64 x (neg.f64 x) (*.f64 x x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (+.f64 (fma.f64 x (neg.f64 x) (*.f64 x x)) (fma.f64 x (neg.f64 x) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (neg.f64 x)) (*.f64 y y))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x (neg.f64 x) (*.f64 x x)) (-.f64 (*.f64 y y) (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 y y) (*.f64 x x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 y x) (-.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (*.f64 y y) (*.f64 x x)))))) (#(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 (-.f64 (*.f64 y y) (*.f64 x x))) (pow.f64 (cbrt.f64 (-.f64 (*.f64 y y) (*.f64 x x))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 y y) (*.f64 x x))) 2) (cbrt.f64 (-.f64 (*.f64 y y) (*.f64 x x))))))) (#(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 (hypot.f64 y (sqrt.f64 (*.f64 x (neg.f64 x)))) (hypot.f64 y (sqrt.f64 (*.f64 x (neg.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 y 6) (pow.f64 x 6)) (/.f64 1 (fma.f64 (*.f64 x x) (fma.f64 x x (*.f64 y y)) (pow.f64 y 4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 y 4) (pow.f64 x 4)) (/.f64 1 (fma.f64 x x (*.f64 y y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 y x) (+.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (*.f64 x x) (fma.f64 x x (*.f64 y y)) (pow.f64 y 4)) (-.f64 (pow.f64 y 6) (pow.f64 x 6))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 x x (*.f64 y y)) (-.f64 (pow.f64 y 4) (pow.f64 x 4))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 y 6) (pow.f64 x 6)) (fma.f64 (*.f64 x x) (fma.f64 x x (*.f64 y y)) (pow.f64 y 4)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 y 4) (pow.f64 x 4)) (fma.f64 x x (*.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 y 6) (pow.f64 x 6))) (neg.f64 (fma.f64 (*.f64 x x) (fma.f64 x x (*.f64 y y)) (pow.f64 y 4))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 y 4) (pow.f64 x 4))) (neg.f64 (fma.f64 x x (*.f64 y y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 y 6) (pow.f64 (*.f64 x (neg.f64 x)) 3)) (+.f64 (pow.f64 y 4) (-.f64 (*.f64 (*.f64 x (neg.f64 x)) (*.f64 x (neg.f64 x))) (*.f64 (*.f64 y y) (*.f64 x (neg.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 x x)) 3) (pow.f64 (fma.f64 x (neg.f64 x) (*.f64 x x)) 3)) (+.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 x x)) 2) (-.f64 (*.f64 (fma.f64 x (neg.f64 x) (*.f64 x x)) (fma.f64 x (neg.f64 x) (*.f64 x x))) (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (fma.f64 x (neg.f64 x) (*.f64 x x))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 y 4) (*.f64 (*.f64 x (neg.f64 x)) (*.f64 x (neg.f64 x)))) (-.f64 (*.f64 y y) (*.f64 x (neg.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 x x)) 2) (*.f64 (fma.f64 x (neg.f64 x) (*.f64 x x)) (fma.f64 x (neg.f64 x) (*.f64 x x)))) (-.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (fma.f64 x (neg.f64 x) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (-.f64 y x)) (-.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (pow.f64 y 3) (pow.f64 x 3)) (-.f64 y x)) (fma.f64 x (-.f64 x y) (*.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (*.f64 y y) (*.f64 x x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 x x)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (-.f64 (*.f64 y y) (*.f64 x x))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (hypot.f64 y (sqrt.f64 (*.f64 x (neg.f64 x)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 x x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (+.f64 y x)) (-.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (-.f64 (*.f64 y y) (*.f64 x x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (*.f64 y y))) (pow.f64 (exp.f64 x) x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (pow.f64 (exp.f64 y) y) (+.f64 1 (expm1.f64 (*.f64 x x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (*.f64 y y))) (+.f64 1 (expm1.f64 (*.f64 x x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 y y))) (exp.f64 (*.f64 x (neg.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 y) y) (/.f64 1 (pow.f64 (exp.f64 x) x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 y y))) (/.f64 1 (pow.f64 (exp.f64 x) x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (-.f64 (*.f64 y y) (*.f64 x x)))) (exp.f64 (fma.f64 x (neg.f64 x) (*.f64 x x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 x (neg.f64 x))) (pow.f64 (exp.f64 y) y)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 1 (pow.f64 (exp.f64 x) x)) (pow.f64 (exp.f64 y) y)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 x (neg.f64 x))) (+.f64 1 (expm1.f64 (*.f64 y y)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 1 (pow.f64 (exp.f64 x) x)) (+.f64 1 (expm1.f64 (*.f64 y y)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 x (neg.f64 x) (*.f64 x x))) (pow.f64 (exp.f64 (+.f64 y x)) (-.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 x (neg.f64 x) (*.f64 x x))) (+.f64 1 (expm1.f64 (-.f64 (*.f64 y y) (*.f64 x x))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 x x)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (-.f64 (*.f64 y y) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (-.f64 (*.f64 y y) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (-.f64 (*.f64 y y) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (-.f64 (*.f64 y y) (*.f64 x x))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y y (*.f64 x (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y y (*.f64 (*.f64 x (neg.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y y (fma.f64 x (neg.f64 x) (fma.f64 x (neg.f64 x) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y y (neg.f64 (-.f64 (*.f64 x x) (fma.f64 x (neg.f64 x) (*.f64 x x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y y) 1 (*.f64 x (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y y) 1 (*.f64 (*.f64 x (neg.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y y) 1 (fma.f64 x (neg.f64 x) (fma.f64 x (neg.f64 x) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y y) 1 (neg.f64 (-.f64 (*.f64 x x) (fma.f64 x (neg.f64 x) (*.f64 x x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x (neg.f64 x) (*.f64 y y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 y y) (*.f64 x x)) 1 (fma.f64 x (neg.f64 x) (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 y y) (*.f64 x x)) 1 (fma.f64 (*.f64 x (neg.f64 x)) 1 (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 y y) (*.f64 x x)) 1 (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 (pow.f64 x 4)) (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 y y) (*.f64 x x)) 1 (*.f64 (fma.f64 x (neg.f64 x) (*.f64 x x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 y y) (*.f64 x x)) 1 (+.f64 (fma.f64 x (neg.f64 x) (*.f64 x x)) (fma.f64 x (neg.f64 x) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 y x) (-.f64 y x) (fma.f64 x (neg.f64 x) (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 y x) (-.f64 y x) (fma.f64 (*.f64 x (neg.f64 x)) 1 (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 y x) (-.f64 y x) (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 (pow.f64 x 4)) (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 y x) (-.f64 y x) (*.f64 (fma.f64 x (neg.f64 x) (*.f64 x x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 y x) (-.f64 y x) (+.f64 (fma.f64 x (neg.f64 x) (*.f64 x x)) (fma.f64 x (neg.f64 x) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 y y) (*.f64 x (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 y y) (*.f64 (*.f64 x (neg.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 y y) (fma.f64 x (neg.f64 x) (fma.f64 x (neg.f64 x) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 y y) (neg.f64 (-.f64 (*.f64 x x) (fma.f64 x (neg.f64 x) (*.f64 x x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (*.f64 y y) (*.f64 x x)) (fma.f64 x (neg.f64 x) (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (*.f64 y y) (*.f64 x x)) (fma.f64 (*.f64 x (neg.f64 x)) 1 (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (*.f64 y y) (*.f64 x x)) (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 (pow.f64 x 4)) (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (*.f64 y y) (*.f64 x x)) (*.f64 (fma.f64 x (neg.f64 x) (*.f64 x x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (*.f64 y y) (*.f64 x x)) (+.f64 (fma.f64 x (neg.f64 x) (*.f64 x x)) (fma.f64 x (neg.f64 x) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 x (neg.f64 x)) (*.f64 y y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 x (neg.f64 x) (*.f64 x x)) (-.f64 (*.f64 y y) (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (+.f64 y x)) 2) (*.f64 (cbrt.f64 (+.f64 y x)) (-.f64 y x)) (fma.f64 x (neg.f64 x) (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (+.f64 y x)) 2) (*.f64 (cbrt.f64 (+.f64 y x)) (-.f64 y x)) (fma.f64 (*.f64 x (neg.f64 x)) 1 (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (+.f64 y x)) 2) (*.f64 (cbrt.f64 (+.f64 y x)) (-.f64 y x)) (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 (pow.f64 x 4)) (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (+.f64 y x)) 2) (*.f64 (cbrt.f64 (+.f64 y x)) (-.f64 y x)) (*.f64 (fma.f64 x (neg.f64 x) (*.f64 x x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (+.f64 y x)) 2) (*.f64 (cbrt.f64 (+.f64 y x)) (-.f64 y x)) (+.f64 (fma.f64 x (neg.f64 x) (*.f64 x x)) (fma.f64 x (neg.f64 x) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (*.f64 y y) (*.f64 x x))) (pow.f64 (cbrt.f64 (-.f64 (*.f64 y y) (*.f64 x x))) 2) (fma.f64 x (neg.f64 x) (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (*.f64 y y) (*.f64 x x))) (pow.f64 (cbrt.f64 (-.f64 (*.f64 y y) (*.f64 x x))) 2) (fma.f64 (*.f64 x (neg.f64 x)) 1 (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (*.f64 y y) (*.f64 x x))) (pow.f64 (cbrt.f64 (-.f64 (*.f64 y y) (*.f64 x x))) 2) (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 (pow.f64 x 4)) (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (*.f64 y y) (*.f64 x x))) (pow.f64 (cbrt.f64 (-.f64 (*.f64 y y) (*.f64 x x))) 2) (*.f64 (fma.f64 x (neg.f64 x) (*.f64 x x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (*.f64 y y) (*.f64 x x))) (pow.f64 (cbrt.f64 (-.f64 (*.f64 y y) (*.f64 x x))) 2) (+.f64 (fma.f64 x (neg.f64 x) (*.f64 x x)) (fma.f64 x (neg.f64 x) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 y y) (*.f64 x x))) 2) (cbrt.f64 (-.f64 (*.f64 y y) (*.f64 x x))) (fma.f64 x (neg.f64 x) (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 y y) (*.f64 x x))) 2) (cbrt.f64 (-.f64 (*.f64 y y) (*.f64 x x))) (fma.f64 (*.f64 x (neg.f64 x)) 1 (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 y y) (*.f64 x x))) 2) (cbrt.f64 (-.f64 (*.f64 y y) (*.f64 x x))) (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 (pow.f64 x 4)) (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 y y) (*.f64 x x))) 2) (cbrt.f64 (-.f64 (*.f64 y y) (*.f64 x x))) (*.f64 (fma.f64 x (neg.f64 x) (*.f64 x x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 y y) (*.f64 x x))) 2) (cbrt.f64 (-.f64 (*.f64 y y) (*.f64 x x))) (+.f64 (fma.f64 x (neg.f64 x) (*.f64 x x)) (fma.f64 x (neg.f64 x) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 y) 2) (cbrt.f64 (pow.f64 y 4)) (*.f64 x (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 y) 2) (cbrt.f64 (pow.f64 y 4)) (*.f64 (*.f64 x (neg.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 y) 2) (cbrt.f64 (pow.f64 y 4)) (fma.f64 x (neg.f64 x) (fma.f64 x (neg.f64 x) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 y) 2) (cbrt.f64 (pow.f64 y 4)) (neg.f64 (-.f64 (*.f64 x x) (fma.f64 x (neg.f64 x) (*.f64 x x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 y) 2) (*.f64 (cbrt.f64 y) y) (*.f64 x (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 y) 2) (*.f64 (cbrt.f64 y) y) (*.f64 (*.f64 x (neg.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 y) 2) (*.f64 (cbrt.f64 y) y) (fma.f64 x (neg.f64 x) (fma.f64 x (neg.f64 x) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 y) 2) (*.f64 (cbrt.f64 y) y) (neg.f64 (-.f64 (*.f64 x x) (fma.f64 x (neg.f64 x) (*.f64 x x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 y 4)) (pow.f64 (cbrt.f64 y) 2) (*.f64 x (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 y 4)) (pow.f64 (cbrt.f64 y) 2) (*.f64 (*.f64 x (neg.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 y 4)) (pow.f64 (cbrt.f64 y) 2) (fma.f64 x (neg.f64 x) (fma.f64 x (neg.f64 x) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 y 4)) (pow.f64 (cbrt.f64 y) 2) (neg.f64 (-.f64 (*.f64 x x) (fma.f64 x (neg.f64 x) (*.f64 x x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 x 4)) (neg.f64 (pow.f64 (cbrt.f64 x) 2)) (*.f64 y y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (+.f64 y x)) (*.f64 (sqrt.f64 (+.f64 y x)) (-.f64 y x)) (fma.f64 x (neg.f64 x) (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (+.f64 y x)) (*.f64 (sqrt.f64 (+.f64 y x)) (-.f64 y x)) (fma.f64 (*.f64 x (neg.f64 x)) 1 (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (+.f64 y x)) (*.f64 (sqrt.f64 (+.f64 y x)) (-.f64 y x)) (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 (pow.f64 x 4)) (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (+.f64 y x)) (*.f64 (sqrt.f64 (+.f64 y x)) (-.f64 y x)) (*.f64 (fma.f64 x (neg.f64 x) (*.f64 x x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (+.f64 y x)) (*.f64 (sqrt.f64 (+.f64 y x)) (-.f64 y x)) (+.f64 (fma.f64 x (neg.f64 x) (*.f64 x x)) (fma.f64 x (neg.f64 x) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (hypot.f64 y (sqrt.f64 (*.f64 x (neg.f64 x)))) (hypot.f64 y (sqrt.f64 (*.f64 x (neg.f64 x)))) (fma.f64 x (neg.f64 x) (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (hypot.f64 y (sqrt.f64 (*.f64 x (neg.f64 x)))) (hypot.f64 y (sqrt.f64 (*.f64 x (neg.f64 x)))) (fma.f64 (*.f64 x (neg.f64 x)) 1 (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (hypot.f64 y (sqrt.f64 (*.f64 x (neg.f64 x)))) (hypot.f64 y (sqrt.f64 (*.f64 x (neg.f64 x)))) (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 (pow.f64 x 4)) (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (hypot.f64 y (sqrt.f64 (*.f64 x (neg.f64 x)))) (hypot.f64 y (sqrt.f64 (*.f64 x (neg.f64 x)))) (*.f64 (fma.f64 x (neg.f64 x) (*.f64 x x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (hypot.f64 y (sqrt.f64 (*.f64 x (neg.f64 x)))) (hypot.f64 y (sqrt.f64 (*.f64 x (neg.f64 x)))) (+.f64 (fma.f64 x (neg.f64 x) (*.f64 x x)) (fma.f64 x (neg.f64 x) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 y) (*.f64 (sqrt.f64 y) y) (*.f64 x (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 y) (*.f64 (sqrt.f64 y) y) (*.f64 (*.f64 x (neg.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 y) (*.f64 (sqrt.f64 y) y) (fma.f64 x (neg.f64 x) (fma.f64 x (neg.f64 x) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 y) (*.f64 (sqrt.f64 y) y) (neg.f64 (-.f64 (*.f64 x x) (fma.f64 x (neg.f64 x) (*.f64 x x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 x) x (*.f64 y y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 y 6) (pow.f64 x 6)) (/.f64 1 (fma.f64 (*.f64 x x) (fma.f64 x x (*.f64 y y)) (pow.f64 y 4))) (fma.f64 x (neg.f64 x) (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 y 6) (pow.f64 x 6)) (/.f64 1 (fma.f64 (*.f64 x x) (fma.f64 x x (*.f64 y y)) (pow.f64 y 4))) (fma.f64 (*.f64 x (neg.f64 x)) 1 (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 y 6) (pow.f64 x 6)) (/.f64 1 (fma.f64 (*.f64 x x) (fma.f64 x x (*.f64 y y)) (pow.f64 y 4))) (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 (pow.f64 x 4)) (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 y 6) (pow.f64 x 6)) (/.f64 1 (fma.f64 (*.f64 x x) (fma.f64 x x (*.f64 y y)) (pow.f64 y 4))) (*.f64 (fma.f64 x (neg.f64 x) (*.f64 x x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 y 6) (pow.f64 x 6)) (/.f64 1 (fma.f64 (*.f64 x x) (fma.f64 x x (*.f64 y y)) (pow.f64 y 4))) (+.f64 (fma.f64 x (neg.f64 x) (*.f64 x x)) (fma.f64 x (neg.f64 x) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 y 4) (pow.f64 x 4)) (/.f64 1 (fma.f64 x x (*.f64 y y))) (fma.f64 x (neg.f64 x) (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 y 4) (pow.f64 x 4)) (/.f64 1 (fma.f64 x x (*.f64 y y))) (fma.f64 (*.f64 x (neg.f64 x)) 1 (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 y 4) (pow.f64 x 4)) (/.f64 1 (fma.f64 x x (*.f64 y y))) (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 (pow.f64 x 4)) (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 y 4) (pow.f64 x 4)) (/.f64 1 (fma.f64 x x (*.f64 y y))) (*.f64 (fma.f64 x (neg.f64 x) (*.f64 x x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 y 4) (pow.f64 x 4)) (/.f64 1 (fma.f64 x x (*.f64 y y))) (+.f64 (fma.f64 x (neg.f64 x) (*.f64 x x)) (fma.f64 x (neg.f64 x) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 y x) (+.f64 y x) (fma.f64 x (neg.f64 x) (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 y x) (+.f64 y x) (fma.f64 (*.f64 x (neg.f64 x)) 1 (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 y x) (+.f64 y x) (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 (pow.f64 x 4)) (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 y x) (+.f64 y x) (*.f64 (fma.f64 x (neg.f64 x) (*.f64 x x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 y x) (+.f64 y x) (+.f64 (fma.f64 x (neg.f64 x) (*.f64 x x)) (fma.f64 x (neg.f64 x) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y (sqrt.f64 y)) (sqrt.f64 y) (*.f64 x (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y (sqrt.f64 y)) (sqrt.f64 y) (*.f64 (*.f64 x (neg.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y (sqrt.f64 y)) (sqrt.f64 y) (fma.f64 x (neg.f64 x) (fma.f64 x (neg.f64 x) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y (sqrt.f64 y)) (sqrt.f64 y) (neg.f64 (-.f64 (*.f64 x x) (fma.f64 x (neg.f64 x) (*.f64 x x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (fma.f64 x (neg.f64 x) (*.f64 x x))) (cbrt.f64 (fma.f64 x (neg.f64 x) (*.f64 x x)))) (cbrt.f64 (fma.f64 x (neg.f64 x) (*.f64 x x))) (-.f64 (*.f64 y y) (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (*.f64 x (neg.f64 x))) (cbrt.f64 (*.f64 x (neg.f64 x)))) (cbrt.f64 (*.f64 x (neg.f64 x))) (*.f64 y y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (hypot.f64 (sqrt.f64 (*.f64 x (neg.f64 x))) x) (hypot.f64 (sqrt.f64 (*.f64 x (neg.f64 x))) x) (-.f64 (*.f64 y y) (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 x (neg.f64 x))) (sqrt.f64 (*.f64 x (neg.f64 x))) (*.f64 y y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 (*.f64 x x) (*.f64 y y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (cbrt.f64 (pow.f64 x 4))) (pow.f64 (cbrt.f64 x) 2) (*.f64 y y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (neg.f64 x) 1) x (*.f64 y y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (neg.f64 x) (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 x) (*.f64 y y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (neg.f64 x) (sqrt.f64 x)) (sqrt.f64 x) (*.f64 y y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y (pow.f64 (cbrt.f64 y) 2)) (cbrt.f64 y) (*.f64 x (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y (pow.f64 (cbrt.f64 y) 2)) (cbrt.f64 y) (*.f64 (*.f64 x (neg.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y (pow.f64 (cbrt.f64 y) 2)) (cbrt.f64 y) (fma.f64 x (neg.f64 x) (fma.f64 x (neg.f64 x) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y (pow.f64 (cbrt.f64 y) 2)) (cbrt.f64 y) (neg.f64 (-.f64 (*.f64 x x) (fma.f64 x (neg.f64 x) (*.f64 x x)))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 2/3 (*.f64 6 (-.f64 y x))) (*.f64 (neg.f64 z) (*.f64 6 (-.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 6 (-.f64 y x)) 2/3) (*.f64 (*.f64 6 (-.f64 y x)) (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (*.f64 6 (-.f64 y x)) (-.f64 2/3 z)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) 6) (/.f64 (+.f64 y x) (-.f64 2/3 z)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 2/3 z) (/.f64 1 (*.f64 6 (-.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 y x) (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (*.f64 6 (-.f64 2/3 z)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 8/27 (pow.f64 z 3)) (*.f64 (/.f64 1 (*.f64 6 (-.f64 y x))) (fma.f64 z (+.f64 2/3 z) 4/9)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 4/9 (*.f64 z z)) (*.f64 (/.f64 1 (*.f64 6 (-.f64 y x))) (+.f64 2/3 z)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (*.f64 6 (-.f64 2/3 z))) (+.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (*.f64 6 (-.f64 2/3 z)))) (neg.f64 (+.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (-.f64 8/27 (pow.f64 z 3))) (*.f64 (*.f64 (+.f64 y x) 1/6) (fma.f64 z (+.f64 2/3 z) 4/9)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) 6) (-.f64 8/27 (pow.f64 z 3))) (*.f64 (+.f64 y x) (fma.f64 z (+.f64 2/3 z) 4/9)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) -6) (-.f64 8/27 (pow.f64 z 3))) (*.f64 (neg.f64 (+.f64 y x)) (fma.f64 z (+.f64 2/3 z) 4/9)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (-.f64 4/9 (*.f64 z z))) (*.f64 (*.f64 (+.f64 y x) 1/6) (+.f64 2/3 z)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) 6) (-.f64 4/9 (*.f64 z z))) (*.f64 (+.f64 y x) (+.f64 2/3 z)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) -6) (-.f64 4/9 (*.f64 z z))) (*.f64 (neg.f64 (+.f64 y x)) (+.f64 2/3 z)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 8/27 (pow.f64 z 3)) (-.f64 (*.f64 y y) (*.f64 x x))) (*.f64 (fma.f64 z (+.f64 2/3 z) 4/9) (*.f64 (+.f64 y x) 1/6)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 4/9 (*.f64 z z)) (-.f64 (*.f64 y y) (*.f64 x x))) (*.f64 (+.f64 2/3 z) (*.f64 (+.f64 y x) 1/6)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 8/27 (pow.f64 z 3)) (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) 6)) (*.f64 (fma.f64 z (+.f64 2/3 z) 4/9) (+.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 4/9 (*.f64 z z)) (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) 6)) (*.f64 (+.f64 2/3 z) (+.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 8/27 (pow.f64 z 3)) 1) (*.f64 (fma.f64 z (+.f64 2/3 z) 4/9) (/.f64 1 (*.f64 6 (-.f64 y x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 4/9 (*.f64 z z)) 1) (*.f64 (+.f64 2/3 z) (/.f64 1 (*.f64 6 (-.f64 y x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 8/27 (pow.f64 z 3)) (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) -6)) (*.f64 (fma.f64 z (+.f64 2/3 z) 4/9) (neg.f64 (+.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 4/9 (*.f64 z z)) (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) -6)) (*.f64 (+.f64 2/3 z) (neg.f64 (+.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (*.f64 6 (-.f64 2/3 z))) 1) (+.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (*.f64 6 (-.f64 2/3 z))) (pow.f64 (cbrt.f64 (+.f64 y x)) 2)) (cbrt.f64 (+.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (*.f64 6 (-.f64 2/3 z))) (sqrt.f64 (+.f64 y x))) (sqrt.f64 (+.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (-.f64 2/3 z)) (*.f64 (+.f64 y x) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) -6) (-.f64 2/3 z)) (neg.f64 (+.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 8/27 (pow.f64 z 3)) (*.f64 6 (-.f64 y x))) (fma.f64 z (+.f64 2/3 z) 4/9))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 4/9 (*.f64 z z)) (*.f64 6 (-.f64 y x))) (+.f64 2/3 z))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 6 (-.f64 y x)) (-.f64 8/27 (pow.f64 z 3))) (fma.f64 z (+.f64 2/3 z) 4/9))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 6 (-.f64 y x)) (-.f64 4/9 (*.f64 z z))) (+.f64 2/3 z))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 2/3 z) (-.f64 (*.f64 y y) (*.f64 x x))) (*.f64 (+.f64 y x) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 2/3 z) (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) -6)) (neg.f64 (+.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (*.f64 6 (-.f64 y x)) (-.f64 2/3 z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (*.f64 6 (-.f64 y x)) (-.f64 2/3 z)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (*.f64 6 (-.f64 y x)) (-.f64 2/3 z))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (*.f64 6 (-.f64 y x)) (-.f64 2/3 z))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (*.f64 6 (-.f64 y x)) (-.f64 2/3 z)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (-.f64 2/3 z)) (*.f64 6 (-.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (*.f64 6 (-.f64 y x)) (-.f64 2/3 z)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (*.f64 6 (-.f64 y x)) (-.f64 2/3 z)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (*.f64 6 (-.f64 y x)) 3) (pow.f64 (-.f64 2/3 z) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (-.f64 2/3 z) 3) (pow.f64 (*.f64 6 (-.f64 y x)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (*.f64 6 (-.f64 y x)) (-.f64 2/3 z))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (*.f64 6 (-.f64 y x)) (-.f64 2/3 z))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (*.f64 6 (-.f64 y x)) (-.f64 2/3 z))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (*.f64 6 (-.f64 y x)) (-.f64 2/3 z))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 6 (-.f64 y x)) 2/3 (*.f64 (*.f64 6 (-.f64 y x)) (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 2/3 (*.f64 6 (-.f64 y x)) (*.f64 (neg.f64 z) (*.f64 6 (-.f64 y x))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) 6) (*.f64 (fma.f64 x (neg.f64 x) (*.f64 x x)) 6))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) 6) (*.f64 6 (fma.f64 x (neg.f64 x) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 y y) 6) (*.f64 (*.f64 x (neg.f64 x)) 6))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 6 (*.f64 y y)) (*.f64 6 (*.f64 x (neg.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) 6))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 y 6) (pow.f64 x 6)) 6) (fma.f64 (*.f64 x x) (fma.f64 x x (*.f64 y y)) (pow.f64 y 4)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 y 4) (pow.f64 x 4)) 6) (fma.f64 x x (*.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 6 (-.f64 (pow.f64 y 6) (pow.f64 x 6))) (fma.f64 (*.f64 x x) (fma.f64 x x (*.f64 y y)) (pow.f64 y 4)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 6 (-.f64 (pow.f64 y 4) (pow.f64 x 4))) (fma.f64 x x (*.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) 6) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) 6) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) 6)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) 6)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) 6) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (pow.f64 (exp.f64 (+.f64 y x)) (-.f64 y x)) 6))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) 6))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) 6) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) 6)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) 6)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) 6)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) 6)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y y) 6 (*.f64 (*.f64 x (neg.f64 x)) 6))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 y y) (*.f64 x x)) 6 (*.f64 (fma.f64 x (neg.f64 x) (*.f64 x x)) 6))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 y y) (*.f64 x x)) 6 (*.f64 6 (fma.f64 x (neg.f64 x) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 6 (*.f64 y y) (*.f64 6 (*.f64 x (neg.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 6 (-.f64 (*.f64 y y) (*.f64 x x)) (*.f64 (fma.f64 x (neg.f64 x) (*.f64 x x)) 6))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 6 (-.f64 (*.f64 y y) (*.f64 x x)) (*.f64 6 (fma.f64 x (neg.f64 x) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) 6) 1 (*.f64 (fma.f64 x (neg.f64 x) (*.f64 x x)) 6))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) 6) 1 (*.f64 6 (fma.f64 x (neg.f64 x) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 y x) (*.f64 6 (-.f64 y x)) (*.f64 (fma.f64 x (neg.f64 x) (*.f64 x x)) 6))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 y x) (*.f64 6 (-.f64 y x)) (*.f64 6 (fma.f64 x (neg.f64 x) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) 6) (*.f64 (fma.f64 x (neg.f64 x) (*.f64 x x)) 6))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) 6) (*.f64 6 (fma.f64 x (neg.f64 x) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 y y) (*.f64 x x))) 2) (*.f64 (cbrt.f64 (-.f64 (*.f64 y y) (*.f64 x x))) 6) (*.f64 (fma.f64 x (neg.f64 x) (*.f64 x x)) 6))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 y y) (*.f64 x x))) 2) (*.f64 (cbrt.f64 (-.f64 (*.f64 y y) (*.f64 x x))) 6) (*.f64 6 (fma.f64 x (neg.f64 x) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) 6)) (pow.f64 (cbrt.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) 6)) 2) (*.f64 (fma.f64 x (neg.f64 x) (*.f64 x x)) 6))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) 6)) (pow.f64 (cbrt.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) 6)) 2) (*.f64 6 (fma.f64 x (neg.f64 x) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) 6)) 2) (cbrt.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) 6)) (*.f64 (fma.f64 x (neg.f64 x) (*.f64 x x)) 6))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) 6)) 2) (cbrt.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) 6)) (*.f64 6 (fma.f64 x (neg.f64 x) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (hypot.f64 y (sqrt.f64 (*.f64 x (neg.f64 x)))) (*.f64 (hypot.f64 y (sqrt.f64 (*.f64 x (neg.f64 x)))) 6) (*.f64 (fma.f64 x (neg.f64 x) (*.f64 x x)) 6))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (hypot.f64 y (sqrt.f64 (*.f64 x (neg.f64 x)))) (*.f64 (hypot.f64 y (sqrt.f64 (*.f64 x (neg.f64 x)))) 6) (*.f64 6 (fma.f64 x (neg.f64 x) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) 6)) (sqrt.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) 6)) (*.f64 (fma.f64 x (neg.f64 x) (*.f64 x x)) 6))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) 6)) (sqrt.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) 6)) (*.f64 6 (fma.f64 x (neg.f64 x) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 6 (+.f64 y x)) (-.f64 y x) (*.f64 (fma.f64 x (neg.f64 x) (*.f64 x x)) 6))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 6 (+.f64 y x)) (-.f64 y x) (*.f64 6 (fma.f64 x (neg.f64 x) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 6 (pow.f64 (cbrt.f64 (-.f64 (*.f64 y y) (*.f64 x x))) 2)) (cbrt.f64 (-.f64 (*.f64 y y) (*.f64 x x))) (*.f64 (fma.f64 x (neg.f64 x) (*.f64 x x)) 6))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 6 (pow.f64 (cbrt.f64 (-.f64 (*.f64 y y) (*.f64 x x))) 2)) (cbrt.f64 (-.f64 (*.f64 y y) (*.f64 x x))) (*.f64 6 (fma.f64 x (neg.f64 x) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 6 (hypot.f64 y (sqrt.f64 (*.f64 x (neg.f64 x))))) (hypot.f64 y (sqrt.f64 (*.f64 x (neg.f64 x)))) (*.f64 (fma.f64 x (neg.f64 x) (*.f64 x x)) 6))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 6 (hypot.f64 y (sqrt.f64 (*.f64 x (neg.f64 x))))) (hypot.f64 y (sqrt.f64 (*.f64 x (neg.f64 x)))) (*.f64 6 (fma.f64 x (neg.f64 x) (*.f64 x x))))))))

simplify66.0ms (0.5%)

Algorithm
egg-herbie
Rules
920×associate-+l+_binary64
513×distribute-rgt-in_binary64
489×distribute-lft-in_binary64
330×*-commutative_binary64
277×fma-def_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0651588
11861576
25561449
323181171
Stop Event
node limit
Counts
417 → 342
Calls
Call 1
Inputs
(*.f64 -6 x)
(+.f64 (*.f64 6 y) (*.f64 -6 x))
(+.f64 (*.f64 6 y) (*.f64 -6 x))
(+.f64 (*.f64 6 y) (*.f64 -6 x))
(*.f64 6 y)
(+.f64 (*.f64 6 y) (*.f64 -6 x))
(+.f64 (*.f64 6 y) (*.f64 -6 x))
(+.f64 (*.f64 6 y) (*.f64 -6 x))
(*.f64 6 y)
(+.f64 (*.f64 6 y) (*.f64 -6 x))
(+.f64 (*.f64 6 y) (*.f64 -6 x))
(+.f64 (*.f64 6 y) (*.f64 -6 x))
(*.f64 6 y)
(+.f64 (*.f64 6 y) (*.f64 -6 x))
(+.f64 (*.f64 6 y) (*.f64 -6 x))
(+.f64 (*.f64 6 y) (*.f64 -6 x))
(*.f64 -6 x)
(+.f64 (*.f64 6 y) (*.f64 -6 x))
(+.f64 (*.f64 6 y) (*.f64 -6 x))
(+.f64 (*.f64 6 y) (*.f64 -6 x))
(*.f64 -6 x)
(+.f64 (*.f64 6 y) (*.f64 -6 x))
(+.f64 (*.f64 6 y) (*.f64 -6 x))
(+.f64 (*.f64 6 y) (*.f64 -6 x))
(*.f64 -1 (pow.f64 x 2))
(+.f64 (*.f64 -1 (pow.f64 x 2)) (pow.f64 y 2))
(+.f64 (*.f64 -1 (pow.f64 x 2)) (pow.f64 y 2))
(+.f64 (*.f64 -1 (pow.f64 x 2)) (pow.f64 y 2))
(pow.f64 y 2)
(+.f64 (*.f64 -1 (pow.f64 x 2)) (pow.f64 y 2))
(+.f64 (*.f64 -1 (pow.f64 x 2)) (pow.f64 y 2))
(+.f64 (*.f64 -1 (pow.f64 x 2)) (pow.f64 y 2))
(pow.f64 y 2)
(+.f64 (*.f64 -1 (pow.f64 x 2)) (pow.f64 y 2))
(+.f64 (*.f64 -1 (pow.f64 x 2)) (pow.f64 y 2))
(+.f64 (*.f64 -1 (pow.f64 x 2)) (pow.f64 y 2))
(pow.f64 y 2)
(+.f64 (*.f64 -1 (pow.f64 x 2)) (pow.f64 y 2))
(+.f64 (*.f64 -1 (pow.f64 x 2)) (pow.f64 y 2))
(+.f64 (*.f64 -1 (pow.f64 x 2)) (pow.f64 y 2))
(*.f64 -1 (pow.f64 x 2))
(+.f64 (*.f64 -1 (pow.f64 x 2)) (pow.f64 y 2))
(+.f64 (*.f64 -1 (pow.f64 x 2)) (pow.f64 y 2))
(+.f64 (*.f64 -1 (pow.f64 x 2)) (pow.f64 y 2))
(*.f64 -1 (pow.f64 x 2))
(+.f64 (*.f64 -1 (pow.f64 x 2)) (pow.f64 y 2))
(+.f64 (*.f64 -1 (pow.f64 x 2)) (pow.f64 y 2))
(+.f64 (*.f64 -1 (pow.f64 x 2)) (pow.f64 y 2))
(*.f64 -6 (*.f64 (-.f64 2/3 z) x))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(*.f64 6 (*.f64 y (-.f64 2/3 z)))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(*.f64 6 (*.f64 y (-.f64 2/3 z)))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(*.f64 6 (*.f64 y (-.f64 2/3 z)))
(+.f64 (*.f64 6 (*.f64 (-.f64 z 2/3) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(+.f64 (*.f64 6 (*.f64 (-.f64 z 2/3) x)) (+.f64 (*.f64 6 (*.f64 (-.f64 (+.f64 (*.f64 -1 (/.f64 (-.f64 2/3 z) y)) (*.f64 2/3 (/.f64 1 y))) (/.f64 z y)) (pow.f64 x 2))) (*.f64 6 (*.f64 y (-.f64 2/3 z)))))
(+.f64 (*.f64 6 (*.f64 (-.f64 z 2/3) x)) (+.f64 (*.f64 6 (*.f64 (-.f64 (+.f64 (*.f64 -1 (/.f64 (-.f64 2/3 z) y)) (*.f64 2/3 (/.f64 1 y))) (/.f64 z y)) (pow.f64 x 2))) (+.f64 (*.f64 6 (*.f64 (-.f64 (/.f64 z (pow.f64 y 2)) (+.f64 (*.f64 -1 (/.f64 (-.f64 2/3 z) (pow.f64 y 2))) (*.f64 2/3 (/.f64 1 (pow.f64 y 2))))) (pow.f64 x 3))) (*.f64 6 (*.f64 y (-.f64 2/3 z))))))
(*.f64 -6 (*.f64 (-.f64 2/3 z) x))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(*.f64 -6 (*.f64 (-.f64 2/3 z) x))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(*.f64 4 (/.f64 (-.f64 (pow.f64 y 2) (pow.f64 x 2)) (+.f64 y x)))
(+.f64 (*.f64 -6 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 x 2)) z) (+.f64 y x))) (*.f64 4 (/.f64 (-.f64 (pow.f64 y 2) (pow.f64 x 2)) (+.f64 y x))))
(+.f64 (*.f64 -6 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 x 2)) z) (+.f64 y x))) (*.f64 4 (/.f64 (-.f64 (pow.f64 y 2) (pow.f64 x 2)) (+.f64 y x))))
(+.f64 (*.f64 -6 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 x 2)) z) (+.f64 y x))) (*.f64 4 (/.f64 (-.f64 (pow.f64 y 2) (pow.f64 x 2)) (+.f64 y x))))
(*.f64 -6 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 x 2)) z) (+.f64 y x)))
(+.f64 (*.f64 4 (/.f64 (-.f64 (pow.f64 y 2) (pow.f64 x 2)) (+.f64 y x))) (*.f64 -6 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 x 2)) z) (+.f64 y x))))
(+.f64 (*.f64 4 (/.f64 (-.f64 (pow.f64 y 2) (pow.f64 x 2)) (+.f64 y x))) (*.f64 -6 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 x 2)) z) (+.f64 y x))))
(+.f64 (*.f64 4 (/.f64 (-.f64 (pow.f64 y 2) (pow.f64 x 2)) (+.f64 y x))) (*.f64 -6 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 x 2)) z) (+.f64 y x))))
(*.f64 -6 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 x 2)) z) (+.f64 y x)))
(+.f64 (*.f64 4 (/.f64 (-.f64 (pow.f64 y 2) (pow.f64 x 2)) (+.f64 y x))) (*.f64 -6 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 x 2)) z) (+.f64 y x))))
(+.f64 (*.f64 4 (/.f64 (-.f64 (pow.f64 y 2) (pow.f64 x 2)) (+.f64 y x))) (*.f64 -6 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 x 2)) z) (+.f64 y x))))
(+.f64 (*.f64 4 (/.f64 (-.f64 (pow.f64 y 2) (pow.f64 x 2)) (+.f64 y x))) (*.f64 -6 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 x 2)) z) (+.f64 y x))))
(*.f64 -6 (pow.f64 x 2))
(+.f64 (*.f64 6 (pow.f64 y 2)) (*.f64 -6 (pow.f64 x 2)))
(+.f64 (*.f64 6 (pow.f64 y 2)) (*.f64 -6 (pow.f64 x 2)))
(+.f64 (*.f64 6 (pow.f64 y 2)) (*.f64 -6 (pow.f64 x 2)))
(*.f64 6 (pow.f64 y 2))
(+.f64 (*.f64 6 (pow.f64 y 2)) (*.f64 -6 (pow.f64 x 2)))
(+.f64 (*.f64 6 (pow.f64 y 2)) (*.f64 -6 (pow.f64 x 2)))
(+.f64 (*.f64 6 (pow.f64 y 2)) (*.f64 -6 (pow.f64 x 2)))
(*.f64 6 (pow.f64 y 2))
(+.f64 (*.f64 6 (pow.f64 y 2)) (*.f64 -6 (pow.f64 x 2)))
(+.f64 (*.f64 6 (pow.f64 y 2)) (*.f64 -6 (pow.f64 x 2)))
(+.f64 (*.f64 6 (pow.f64 y 2)) (*.f64 -6 (pow.f64 x 2)))
(*.f64 6 (pow.f64 y 2))
(+.f64 (*.f64 6 (pow.f64 y 2)) (*.f64 -6 (pow.f64 x 2)))
(+.f64 (*.f64 6 (pow.f64 y 2)) (*.f64 -6 (pow.f64 x 2)))
(+.f64 (*.f64 6 (pow.f64 y 2)) (*.f64 -6 (pow.f64 x 2)))
(*.f64 -6 (pow.f64 x 2))
(+.f64 (*.f64 6 (pow.f64 y 2)) (*.f64 -6 (pow.f64 x 2)))
(+.f64 (*.f64 6 (pow.f64 y 2)) (*.f64 -6 (pow.f64 x 2)))
(+.f64 (*.f64 6 (pow.f64 y 2)) (*.f64 -6 (pow.f64 x 2)))
(*.f64 -6 (pow.f64 x 2))
(+.f64 (*.f64 6 (pow.f64 y 2)) (*.f64 -6 (pow.f64 x 2)))
(+.f64 (*.f64 6 (pow.f64 y 2)) (*.f64 -6 (pow.f64 x 2)))
(+.f64 (*.f64 6 (pow.f64 y 2)) (*.f64 -6 (pow.f64 x 2)))
Outputs
(*.f64 -6 x)
(+.f64 (*.f64 6 y) (*.f64 -6 x))
(fma.f64 6 y (*.f64 -6 x))
(fma.f64 -6 x (*.f64 6 y))
(+.f64 (*.f64 6 y) (*.f64 -6 x))
(fma.f64 6 y (*.f64 -6 x))
(fma.f64 -6 x (*.f64 6 y))
(+.f64 (*.f64 6 y) (*.f64 -6 x))
(fma.f64 6 y (*.f64 -6 x))
(fma.f64 -6 x (*.f64 6 y))
(*.f64 6 y)
(+.f64 (*.f64 6 y) (*.f64 -6 x))
(fma.f64 6 y (*.f64 -6 x))
(fma.f64 -6 x (*.f64 6 y))
(+.f64 (*.f64 6 y) (*.f64 -6 x))
(fma.f64 6 y (*.f64 -6 x))
(fma.f64 -6 x (*.f64 6 y))
(+.f64 (*.f64 6 y) (*.f64 -6 x))
(fma.f64 6 y (*.f64 -6 x))
(fma.f64 -6 x (*.f64 6 y))
(*.f64 6 y)
(+.f64 (*.f64 6 y) (*.f64 -6 x))
(fma.f64 6 y (*.f64 -6 x))
(fma.f64 -6 x (*.f64 6 y))
(+.f64 (*.f64 6 y) (*.f64 -6 x))
(fma.f64 6 y (*.f64 -6 x))
(fma.f64 -6 x (*.f64 6 y))
(+.f64 (*.f64 6 y) (*.f64 -6 x))
(fma.f64 6 y (*.f64 -6 x))
(fma.f64 -6 x (*.f64 6 y))
(*.f64 6 y)
(+.f64 (*.f64 6 y) (*.f64 -6 x))
(fma.f64 6 y (*.f64 -6 x))
(fma.f64 -6 x (*.f64 6 y))
(+.f64 (*.f64 6 y) (*.f64 -6 x))
(fma.f64 6 y (*.f64 -6 x))
(fma.f64 -6 x (*.f64 6 y))
(+.f64 (*.f64 6 y) (*.f64 -6 x))
(fma.f64 6 y (*.f64 -6 x))
(fma.f64 -6 x (*.f64 6 y))
(*.f64 -6 x)
(+.f64 (*.f64 6 y) (*.f64 -6 x))
(fma.f64 6 y (*.f64 -6 x))
(fma.f64 -6 x (*.f64 6 y))
(+.f64 (*.f64 6 y) (*.f64 -6 x))
(fma.f64 6 y (*.f64 -6 x))
(fma.f64 -6 x (*.f64 6 y))
(+.f64 (*.f64 6 y) (*.f64 -6 x))
(fma.f64 6 y (*.f64 -6 x))
(fma.f64 -6 x (*.f64 6 y))
(*.f64 -6 x)
(+.f64 (*.f64 6 y) (*.f64 -6 x))
(fma.f64 6 y (*.f64 -6 x))
(fma.f64 -6 x (*.f64 6 y))
(+.f64 (*.f64 6 y) (*.f64 -6 x))
(fma.f64 6 y (*.f64 -6 x))
(fma.f64 -6 x (*.f64 6 y))
(+.f64 (*.f64 6 y) (*.f64 -6 x))
(fma.f64 6 y (*.f64 -6 x))
(fma.f64 -6 x (*.f64 6 y))
(*.f64 -1 (pow.f64 x 2))
(neg.f64 (*.f64 x x))
(*.f64 x (neg.f64 x))
(+.f64 (*.f64 -1 (pow.f64 x 2)) (pow.f64 y 2))
(-.f64 (*.f64 y y) (*.f64 x x))
(+.f64 (*.f64 -1 (pow.f64 x 2)) (pow.f64 y 2))
(-.f64 (*.f64 y y) (*.f64 x x))
(+.f64 (*.f64 -1 (pow.f64 x 2)) (pow.f64 y 2))
(-.f64 (*.f64 y y) (*.f64 x x))
(pow.f64 y 2)
(*.f64 y y)
(+.f64 (*.f64 -1 (pow.f64 x 2)) (pow.f64 y 2))
(-.f64 (*.f64 y y) (*.f64 x x))
(+.f64 (*.f64 -1 (pow.f64 x 2)) (pow.f64 y 2))
(-.f64 (*.f64 y y) (*.f64 x x))
(+.f64 (*.f64 -1 (pow.f64 x 2)) (pow.f64 y 2))
(-.f64 (*.f64 y y) (*.f64 x x))
(pow.f64 y 2)
(*.f64 y y)
(+.f64 (*.f64 -1 (pow.f64 x 2)) (pow.f64 y 2))
(-.f64 (*.f64 y y) (*.f64 x x))
(+.f64 (*.f64 -1 (pow.f64 x 2)) (pow.f64 y 2))
(-.f64 (*.f64 y y) (*.f64 x x))
(+.f64 (*.f64 -1 (pow.f64 x 2)) (pow.f64 y 2))
(-.f64 (*.f64 y y) (*.f64 x x))
(pow.f64 y 2)
(*.f64 y y)
(+.f64 (*.f64 -1 (pow.f64 x 2)) (pow.f64 y 2))
(-.f64 (*.f64 y y) (*.f64 x x))
(+.f64 (*.f64 -1 (pow.f64 x 2)) (pow.f64 y 2))
(-.f64 (*.f64 y y) (*.f64 x x))
(+.f64 (*.f64 -1 (pow.f64 x 2)) (pow.f64 y 2))
(-.f64 (*.f64 y y) (*.f64 x x))
(*.f64 -1 (pow.f64 x 2))
(neg.f64 (*.f64 x x))
(*.f64 x (neg.f64 x))
(+.f64 (*.f64 -1 (pow.f64 x 2)) (pow.f64 y 2))
(-.f64 (*.f64 y y) (*.f64 x x))
(+.f64 (*.f64 -1 (pow.f64 x 2)) (pow.f64 y 2))
(-.f64 (*.f64 y y) (*.f64 x x))
(+.f64 (*.f64 -1 (pow.f64 x 2)) (pow.f64 y 2))
(-.f64 (*.f64 y y) (*.f64 x x))
(*.f64 -1 (pow.f64 x 2))
(neg.f64 (*.f64 x x))
(*.f64 x (neg.f64 x))
(+.f64 (*.f64 -1 (pow.f64 x 2)) (pow.f64 y 2))
(-.f64 (*.f64 y y) (*.f64 x x))
(+.f64 (*.f64 -1 (pow.f64 x 2)) (pow.f64 y 2))
(-.f64 (*.f64 y y) (*.f64 x x))
(+.f64 (*.f64 -1 (pow.f64 x 2)) (pow.f64 y 2))
(-.f64 (*.f64 y y) (*.f64 x x))
(*.f64 -6 (*.f64 (-.f64 2/3 z) x))
(*.f64 -6 (*.f64 x (-.f64 2/3 z)))
(*.f64 (*.f64 -6 x) (-.f64 2/3 z))
(*.f64 x (fma.f64 6 z -4))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 -6 (*.f64 x (-.f64 2/3 z)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 -6 (*.f64 x (-.f64 2/3 z)) (*.f64 y (*.f64 (-.f64 2/3 z) 6)))
(*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y)))
(*.f64 (fma.f64 -6 x (*.f64 6 y)) (-.f64 2/3 z))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 -6 (*.f64 x (-.f64 2/3 z)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 -6 (*.f64 x (-.f64 2/3 z)) (*.f64 y (*.f64 (-.f64 2/3 z) 6)))
(*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y)))
(*.f64 (fma.f64 -6 x (*.f64 6 y)) (-.f64 2/3 z))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 -6 (*.f64 x (-.f64 2/3 z)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 -6 (*.f64 x (-.f64 2/3 z)) (*.f64 y (*.f64 (-.f64 2/3 z) 6)))
(*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y)))
(*.f64 (fma.f64 -6 x (*.f64 6 y)) (-.f64 2/3 z))
(*.f64 6 (*.f64 y (-.f64 2/3 z)))
(*.f64 y (*.f64 (-.f64 2/3 z) 6))
(*.f64 y (*.f64 6 (-.f64 2/3 z)))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 -6 (*.f64 x (-.f64 2/3 z)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 -6 (*.f64 x (-.f64 2/3 z)) (*.f64 y (*.f64 (-.f64 2/3 z) 6)))
(*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y)))
(*.f64 (fma.f64 -6 x (*.f64 6 y)) (-.f64 2/3 z))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 -6 (*.f64 x (-.f64 2/3 z)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 -6 (*.f64 x (-.f64 2/3 z)) (*.f64 y (*.f64 (-.f64 2/3 z) 6)))
(*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y)))
(*.f64 (fma.f64 -6 x (*.f64 6 y)) (-.f64 2/3 z))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 -6 (*.f64 x (-.f64 2/3 z)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 -6 (*.f64 x (-.f64 2/3 z)) (*.f64 y (*.f64 (-.f64 2/3 z) 6)))
(*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y)))
(*.f64 (fma.f64 -6 x (*.f64 6 y)) (-.f64 2/3 z))
(*.f64 6 (*.f64 y (-.f64 2/3 z)))
(*.f64 y (*.f64 (-.f64 2/3 z) 6))
(*.f64 y (*.f64 6 (-.f64 2/3 z)))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 -6 (*.f64 x (-.f64 2/3 z)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 -6 (*.f64 x (-.f64 2/3 z)) (*.f64 y (*.f64 (-.f64 2/3 z) 6)))
(*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y)))
(*.f64 (fma.f64 -6 x (*.f64 6 y)) (-.f64 2/3 z))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 -6 (*.f64 x (-.f64 2/3 z)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 -6 (*.f64 x (-.f64 2/3 z)) (*.f64 y (*.f64 (-.f64 2/3 z) 6)))
(*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y)))
(*.f64 (fma.f64 -6 x (*.f64 6 y)) (-.f64 2/3 z))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 -6 (*.f64 x (-.f64 2/3 z)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 -6 (*.f64 x (-.f64 2/3 z)) (*.f64 y (*.f64 (-.f64 2/3 z) 6)))
(*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y)))
(*.f64 (fma.f64 -6 x (*.f64 6 y)) (-.f64 2/3 z))
(*.f64 6 (*.f64 y (-.f64 2/3 z)))
(*.f64 y (*.f64 (-.f64 2/3 z) 6))
(*.f64 y (*.f64 6 (-.f64 2/3 z)))
(+.f64 (*.f64 6 (*.f64 (-.f64 z 2/3) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 -6 (*.f64 x (-.f64 2/3 z)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 -6 (*.f64 x (-.f64 2/3 z)) (*.f64 y (*.f64 (-.f64 2/3 z) 6)))
(*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y)))
(*.f64 (fma.f64 -6 x (*.f64 6 y)) (-.f64 2/3 z))
(+.f64 (*.f64 6 (*.f64 (-.f64 z 2/3) x)) (+.f64 (*.f64 6 (*.f64 (-.f64 (+.f64 (*.f64 -1 (/.f64 (-.f64 2/3 z) y)) (*.f64 2/3 (/.f64 1 y))) (/.f64 z y)) (pow.f64 x 2))) (*.f64 6 (*.f64 y (-.f64 2/3 z)))))
(fma.f64 -6 (*.f64 x (-.f64 2/3 z)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 -6 (*.f64 x (-.f64 2/3 z)) (*.f64 y (*.f64 (-.f64 2/3 z) 6)))
(*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y)))
(*.f64 (fma.f64 -6 x (*.f64 6 y)) (-.f64 2/3 z))
(+.f64 (*.f64 6 (*.f64 (-.f64 z 2/3) x)) (+.f64 (*.f64 6 (*.f64 (-.f64 (+.f64 (*.f64 -1 (/.f64 (-.f64 2/3 z) y)) (*.f64 2/3 (/.f64 1 y))) (/.f64 z y)) (pow.f64 x 2))) (+.f64 (*.f64 6 (*.f64 (-.f64 (/.f64 z (pow.f64 y 2)) (+.f64 (*.f64 -1 (/.f64 (-.f64 2/3 z) (pow.f64 y 2))) (*.f64 2/3 (/.f64 1 (pow.f64 y 2))))) (pow.f64 x 3))) (*.f64 6 (*.f64 y (-.f64 2/3 z))))))
(fma.f64 6 (*.f64 x (+.f64 z -2/3)) (fma.f64 6 (*.f64 (*.f64 x x) (+.f64 (neg.f64 (/.f64 (-.f64 2/3 z) y)) (/.f64 (-.f64 2/3 z) y))) (*.f64 6 (+.f64 (*.f64 (-.f64 (/.f64 z (*.f64 y y)) (fma.f64 -1 (/.f64 (-.f64 2/3 z) (*.f64 y y)) (/.f64 2/3 (*.f64 y y)))) (pow.f64 x 3)) (*.f64 y (-.f64 2/3 z))))))
(fma.f64 6 (*.f64 x (+.f64 z -2/3)) (*.f64 6 (+.f64 (*.f64 x (*.f64 x (*.f64 0 (/.f64 (-.f64 2/3 z) y)))) (fma.f64 (-.f64 (/.f64 z (*.f64 y y)) (-.f64 (/.f64 2/3 (*.f64 y y)) (/.f64 (-.f64 2/3 z) (*.f64 y y)))) (pow.f64 x 3) (*.f64 y (-.f64 2/3 z))))))
(fma.f64 6 (*.f64 (*.f64 x x) (+.f64 0 (*.f64 x (+.f64 (/.f64 (-.f64 2/3 z) (*.f64 y y)) (/.f64 (neg.f64 (-.f64 2/3 z)) (*.f64 y y)))))) (*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y))))
(fma.f64 6 (*.f64 (*.f64 (/.f64 -1 y) 0) (pow.f64 x 3)) (*.f64 (fma.f64 -6 x (*.f64 6 y)) (-.f64 2/3 z)))
(*.f64 -6 (*.f64 (-.f64 2/3 z) x))
(*.f64 -6 (*.f64 x (-.f64 2/3 z)))
(*.f64 (*.f64 -6 x) (-.f64 2/3 z))
(*.f64 x (fma.f64 6 z -4))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 -6 (*.f64 x (-.f64 2/3 z)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 -6 (*.f64 x (-.f64 2/3 z)) (*.f64 y (*.f64 (-.f64 2/3 z) 6)))
(*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y)))
(*.f64 (fma.f64 -6 x (*.f64 6 y)) (-.f64 2/3 z))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 -6 (*.f64 x (-.f64 2/3 z)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 -6 (*.f64 x (-.f64 2/3 z)) (*.f64 y (*.f64 (-.f64 2/3 z) 6)))
(*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y)))
(*.f64 (fma.f64 -6 x (*.f64 6 y)) (-.f64 2/3 z))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 -6 (*.f64 x (-.f64 2/3 z)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 -6 (*.f64 x (-.f64 2/3 z)) (*.f64 y (*.f64 (-.f64 2/3 z) 6)))
(*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y)))
(*.f64 (fma.f64 -6 x (*.f64 6 y)) (-.f64 2/3 z))
(*.f64 -6 (*.f64 (-.f64 2/3 z) x))
(*.f64 -6 (*.f64 x (-.f64 2/3 z)))
(*.f64 (*.f64 -6 x) (-.f64 2/3 z))
(*.f64 x (fma.f64 6 z -4))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 -6 (*.f64 x (-.f64 2/3 z)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 -6 (*.f64 x (-.f64 2/3 z)) (*.f64 y (*.f64 (-.f64 2/3 z) 6)))
(*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y)))
(*.f64 (fma.f64 -6 x (*.f64 6 y)) (-.f64 2/3 z))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 -6 (*.f64 x (-.f64 2/3 z)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 -6 (*.f64 x (-.f64 2/3 z)) (*.f64 y (*.f64 (-.f64 2/3 z) 6)))
(*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y)))
(*.f64 (fma.f64 -6 x (*.f64 6 y)) (-.f64 2/3 z))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 -6 (*.f64 x (-.f64 2/3 z)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 -6 (*.f64 x (-.f64 2/3 z)) (*.f64 y (*.f64 (-.f64 2/3 z) 6)))
(*.f64 (-.f64 2/3 z) (fma.f64 -6 x (*.f64 6 y)))
(*.f64 (fma.f64 -6 x (*.f64 6 y)) (-.f64 2/3 z))
(*.f64 4 (/.f64 (-.f64 (pow.f64 y 2) (pow.f64 x 2)) (+.f64 y x)))
(*.f64 4 (/.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (+.f64 x y)))
(*.f64 4 (-.f64 y x))
(+.f64 (*.f64 -6 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 x 2)) z) (+.f64 y x))) (*.f64 4 (/.f64 (-.f64 (pow.f64 y 2) (pow.f64 x 2)) (+.f64 y x))))
(fma.f64 -6 (/.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (/.f64 (+.f64 x y) z)) (*.f64 4 (/.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (+.f64 x y))))
(fma.f64 4 (/.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (+.f64 x y)) (/.f64 -6 (/.f64 (+.f64 x y) (*.f64 z (-.f64 (*.f64 y y) (*.f64 x x))))))
(fma.f64 -6 (*.f64 (/.f64 z (+.f64 x y)) (-.f64 (*.f64 y y) (*.f64 x x))) (*.f64 4 (/.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (+.f64 x y))))
(*.f64 (*.f64 1 (-.f64 y x)) (+.f64 4 (*.f64 -6 z)))
(+.f64 (*.f64 -6 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 x 2)) z) (+.f64 y x))) (*.f64 4 (/.f64 (-.f64 (pow.f64 y 2) (pow.f64 x 2)) (+.f64 y x))))
(fma.f64 -6 (/.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (/.f64 (+.f64 x y) z)) (*.f64 4 (/.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (+.f64 x y))))
(fma.f64 4 (/.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (+.f64 x y)) (/.f64 -6 (/.f64 (+.f64 x y) (*.f64 z (-.f64 (*.f64 y y) (*.f64 x x))))))
(fma.f64 -6 (*.f64 (/.f64 z (+.f64 x y)) (-.f64 (*.f64 y y) (*.f64 x x))) (*.f64 4 (/.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (+.f64 x y))))
(*.f64 (*.f64 1 (-.f64 y x)) (+.f64 4 (*.f64 -6 z)))
(+.f64 (*.f64 -6 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 x 2)) z) (+.f64 y x))) (*.f64 4 (/.f64 (-.f64 (pow.f64 y 2) (pow.f64 x 2)) (+.f64 y x))))
(fma.f64 -6 (/.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (/.f64 (+.f64 x y) z)) (*.f64 4 (/.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (+.f64 x y))))
(fma.f64 4 (/.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (+.f64 x y)) (/.f64 -6 (/.f64 (+.f64 x y) (*.f64 z (-.f64 (*.f64 y y) (*.f64 x x))))))
(fma.f64 -6 (*.f64 (/.f64 z (+.f64 x y)) (-.f64 (*.f64 y y) (*.f64 x x))) (*.f64 4 (/.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (+.f64 x y))))
(*.f64 (*.f64 1 (-.f64 y x)) (+.f64 4 (*.f64 -6 z)))
(*.f64 -6 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 x 2)) z) (+.f64 y x)))
(*.f64 -6 (/.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (/.f64 (+.f64 x y) z)))
(/.f64 -6 (/.f64 (+.f64 x y) (*.f64 z (-.f64 (*.f64 y y) (*.f64 x x)))))
(*.f64 -6 (*.f64 (/.f64 z (+.f64 x y)) (-.f64 (*.f64 y y) (*.f64 x x))))
(*.f64 z (*.f64 -6 (*.f64 1 (-.f64 y x))))
(+.f64 (*.f64 4 (/.f64 (-.f64 (pow.f64 y 2) (pow.f64 x 2)) (+.f64 y x))) (*.f64 -6 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 x 2)) z) (+.f64 y x))))
(fma.f64 -6 (/.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (/.f64 (+.f64 x y) z)) (*.f64 4 (/.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (+.f64 x y))))
(fma.f64 4 (/.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (+.f64 x y)) (/.f64 -6 (/.f64 (+.f64 x y) (*.f64 z (-.f64 (*.f64 y y) (*.f64 x x))))))
(fma.f64 -6 (*.f64 (/.f64 z (+.f64 x y)) (-.f64 (*.f64 y y) (*.f64 x x))) (*.f64 4 (/.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (+.f64 x y))))
(*.f64 (*.f64 1 (-.f64 y x)) (+.f64 4 (*.f64 -6 z)))
(+.f64 (*.f64 4 (/.f64 (-.f64 (pow.f64 y 2) (pow.f64 x 2)) (+.f64 y x))) (*.f64 -6 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 x 2)) z) (+.f64 y x))))
(fma.f64 -6 (/.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (/.f64 (+.f64 x y) z)) (*.f64 4 (/.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (+.f64 x y))))
(fma.f64 4 (/.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (+.f64 x y)) (/.f64 -6 (/.f64 (+.f64 x y) (*.f64 z (-.f64 (*.f64 y y) (*.f64 x x))))))
(fma.f64 -6 (*.f64 (/.f64 z (+.f64 x y)) (-.f64 (*.f64 y y) (*.f64 x x))) (*.f64 4 (/.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (+.f64 x y))))
(*.f64 (*.f64 1 (-.f64 y x)) (+.f64 4 (*.f64 -6 z)))
(+.f64 (*.f64 4 (/.f64 (-.f64 (pow.f64 y 2) (pow.f64 x 2)) (+.f64 y x))) (*.f64 -6 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 x 2)) z) (+.f64 y x))))
(fma.f64 -6 (/.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (/.f64 (+.f64 x y) z)) (*.f64 4 (/.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (+.f64 x y))))
(fma.f64 4 (/.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (+.f64 x y)) (/.f64 -6 (/.f64 (+.f64 x y) (*.f64 z (-.f64 (*.f64 y y) (*.f64 x x))))))
(fma.f64 -6 (*.f64 (/.f64 z (+.f64 x y)) (-.f64 (*.f64 y y) (*.f64 x x))) (*.f64 4 (/.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (+.f64 x y))))
(*.f64 (*.f64 1 (-.f64 y x)) (+.f64 4 (*.f64 -6 z)))
(*.f64 -6 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 x 2)) z) (+.f64 y x)))
(*.f64 -6 (/.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (/.f64 (+.f64 x y) z)))
(/.f64 -6 (/.f64 (+.f64 x y) (*.f64 z (-.f64 (*.f64 y y) (*.f64 x x)))))
(*.f64 -6 (*.f64 (/.f64 z (+.f64 x y)) (-.f64 (*.f64 y y) (*.f64 x x))))
(*.f64 z (*.f64 -6 (*.f64 1 (-.f64 y x))))
(+.f64 (*.f64 4 (/.f64 (-.f64 (pow.f64 y 2) (pow.f64 x 2)) (+.f64 y x))) (*.f64 -6 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 x 2)) z) (+.f64 y x))))
(fma.f64 -6 (/.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (/.f64 (+.f64 x y) z)) (*.f64 4 (/.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (+.f64 x y))))
(fma.f64 4 (/.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (+.f64 x y)) (/.f64 -6 (/.f64 (+.f64 x y) (*.f64 z (-.f64 (*.f64 y y) (*.f64 x x))))))
(fma.f64 -6 (*.f64 (/.f64 z (+.f64 x y)) (-.f64 (*.f64 y y) (*.f64 x x))) (*.f64 4 (/.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (+.f64 x y))))
(*.f64 (*.f64 1 (-.f64 y x)) (+.f64 4 (*.f64 -6 z)))
(+.f64 (*.f64 4 (/.f64 (-.f64 (pow.f64 y 2) (pow.f64 x 2)) (+.f64 y x))) (*.f64 -6 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 x 2)) z) (+.f64 y x))))
(fma.f64 -6 (/.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (/.f64 (+.f64 x y) z)) (*.f64 4 (/.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (+.f64 x y))))
(fma.f64 4 (/.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (+.f64 x y)) (/.f64 -6 (/.f64 (+.f64 x y) (*.f64 z (-.f64 (*.f64 y y) (*.f64 x x))))))
(fma.f64 -6 (*.f64 (/.f64 z (+.f64 x y)) (-.f64 (*.f64 y y) (*.f64 x x))) (*.f64 4 (/.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (+.f64 x y))))
(*.f64 (*.f64 1 (-.f64 y x)) (+.f64 4 (*.f64 -6 z)))
(+.f64 (*.f64 4 (/.f64 (-.f64 (pow.f64 y 2) (pow.f64 x 2)) (+.f64 y x))) (*.f64 -6 (/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 x 2)) z) (+.f64 y x))))
(fma.f64 -6 (/.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (/.f64 (+.f64 x y) z)) (*.f64 4 (/.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (+.f64 x y))))
(fma.f64 4 (/.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (+.f64 x y)) (/.f64 -6 (/.f64 (+.f64 x y) (*.f64 z (-.f64 (*.f64 y y) (*.f64 x x))))))
(fma.f64 -6 (*.f64 (/.f64 z (+.f64 x y)) (-.f64 (*.f64 y y) (*.f64 x x))) (*.f64 4 (/.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (+.f64 x y))))
(*.f64 (*.f64 1 (-.f64 y x)) (+.f64 4 (*.f64 -6 z)))
(*.f64 -6 (pow.f64 x 2))
(*.f64 -6 (*.f64 x x))
(+.f64 (*.f64 6 (pow.f64 y 2)) (*.f64 -6 (pow.f64 x 2)))
(fma.f64 6 (*.f64 y y) (*.f64 -6 (*.f64 x x)))
(+.f64 (*.f64 6 (pow.f64 y 2)) (*.f64 -6 (pow.f64 x 2)))
(fma.f64 6 (*.f64 y y) (*.f64 -6 (*.f64 x x)))
(+.f64 (*.f64 6 (pow.f64 y 2)) (*.f64 -6 (pow.f64 x 2)))
(fma.f64 6 (*.f64 y y) (*.f64 -6 (*.f64 x x)))
(*.f64 6 (pow.f64 y 2))
(*.f64 6 (*.f64 y y))
(+.f64 (*.f64 6 (pow.f64 y 2)) (*.f64 -6 (pow.f64 x 2)))
(fma.f64 6 (*.f64 y y) (*.f64 -6 (*.f64 x x)))
(+.f64 (*.f64 6 (pow.f64 y 2)) (*.f64 -6 (pow.f64 x 2)))
(fma.f64 6 (*.f64 y y) (*.f64 -6 (*.f64 x x)))
(+.f64 (*.f64 6 (pow.f64 y 2)) (*.f64 -6 (pow.f64 x 2)))
(fma.f64 6 (*.f64 y y) (*.f64 -6 (*.f64 x x)))
(*.f64 6 (pow.f64 y 2))
(*.f64 6 (*.f64 y y))
(+.f64 (*.f64 6 (pow.f64 y 2)) (*.f64 -6 (pow.f64 x 2)))
(fma.f64 6 (*.f64 y y) (*.f64 -6 (*.f64 x x)))
(+.f64 (*.f64 6 (pow.f64 y 2)) (*.f64 -6 (pow.f64 x 2)))
(fma.f64 6 (*.f64 y y) (*.f64 -6 (*.f64 x x)))
(+.f64 (*.f64 6 (pow.f64 y 2)) (*.f64 -6 (pow.f64 x 2)))
(fma.f64 6 (*.f64 y y) (*.f64 -6 (*.f64 x x)))
(*.f64 6 (pow.f64 y 2))
(*.f64 6 (*.f64 y y))
(+.f64 (*.f64 6 (pow.f64 y 2)) (*.f64 -6 (pow.f64 x 2)))
(fma.f64 6 (*.f64 y y) (*.f64 -6 (*.f64 x x)))
(+.f64 (*.f64 6 (pow.f64 y 2)) (*.f64 -6 (pow.f64 x 2)))
(fma.f64 6 (*.f64 y y) (*.f64 -6 (*.f64 x x)))
(+.f64 (*.f64 6 (pow.f64 y 2)) (*.f64 -6 (pow.f64 x 2)))
(fma.f64 6 (*.f64 y y) (*.f64 -6 (*.f64 x x)))
(*.f64 -6 (pow.f64 x 2))
(*.f64 -6 (*.f64 x x))
(+.f64 (*.f64 6 (pow.f64 y 2)) (*.f64 -6 (pow.f64 x 2)))
(fma.f64 6 (*.f64 y y) (*.f64 -6 (*.f64 x x)))
(+.f64 (*.f64 6 (pow.f64 y 2)) (*.f64 -6 (pow.f64 x 2)))
(fma.f64 6 (*.f64 y y) (*.f64 -6 (*.f64 x x)))
(+.f64 (*.f64 6 (pow.f64 y 2)) (*.f64 -6 (pow.f64 x 2)))
(fma.f64 6 (*.f64 y y) (*.f64 -6 (*.f64 x x)))
(*.f64 -6 (pow.f64 x 2))
(*.f64 -6 (*.f64 x x))
(+.f64 (*.f64 6 (pow.f64 y 2)) (*.f64 -6 (pow.f64 x 2)))
(fma.f64 6 (*.f64 y y) (*.f64 -6 (*.f64 x x)))
(+.f64 (*.f64 6 (pow.f64 y 2)) (*.f64 -6 (pow.f64 x 2)))
(fma.f64 6 (*.f64 y y) (*.f64 -6 (*.f64 x x)))
(+.f64 (*.f64 6 (pow.f64 y 2)) (*.f64 -6 (pow.f64 x 2)))
(fma.f64 6 (*.f64 y y) (*.f64 -6 (*.f64 x x)))

eval331.0ms (2.3%)

Compiler

Compiled 20547 to 10887 computations (47% saved)

prune295.0ms (2%)

Pruning

30 alts after pruning (28 fresh and 2 done)

PrunedKeptTotal
New92722949
Fresh9615
Picked101
Done224
Total93930969
Error
0b
Counts
969 → 30
Alt Table
Click to see full alt table
StatusErrorProgram
12.5b
(fma.f64 (-.f64 y x) (expm1.f64 (log1p.f64 (fma.f64 z -6 4))) x)
0.4b
(+.f64 x (*.f64 (*.f64 (-.f64 y x) 6) (-.f64 2/3 z)))
31.8b
(+.f64 (*.f64 4 y) (*.f64 -6 (*.f64 y z)))
0.4b
(fma.f64 (*.f64 (-.f64 2/3 z) (-.f64 y x)) 6 x)
32.0b
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) x)
31.8b
(fma.f64 (sqrt.f64 (-.f64 y x)) (*.f64 (sqrt.f64 (-.f64 y x)) (*.f64 6 (-.f64 2/3 z))) x)
32.0b
(*.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x)
51.7b
(*.f64 x (*.f64 6 z))
31.9b
(+.f64 x (/.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (-.f64 2/3 z)) (*.f64 (+.f64 y x) 1/6)))
0.2b
(+.f64 x (*.f64 (*.f64 1 (-.f64 y x)) (+.f64 4 (*.f64 -6 z))))
41.6b
(*.f64 z (*.f64 -6 (-.f64 y x)))
0.2b
(+.f64 (*.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
52.6b
(*.f64 -6 (*.f64 z y))
21.6b
(fma.f64 x -3 (*.f64 y 4))
52.6b
(*.f64 z (*.f64 -6 y))
21.6b
(+.f64 (*.f64 4 (-.f64 y x)) x)
41.6b
(+.f64 0 (*.f64 (-.f64 y x) (*.f64 -6 z)))
42.1b
(+.f64 x (*.f64 y 4))
41.6b
(*.f64 -6 (+.f64 (*.f64 z y) (*.f64 z (neg.f64 x))))
32.0b
(*.f64 (-.f64 (*.f64 6 z) 3) x)
0.5b
(+.f64 x (/.f64 (-.f64 2/3 z) (/.f64 1 (*.f64 6 (-.f64 y x)))))
36.4b
(+.f64 x (*.f64 6 (/.f64 (*.f64 (-.f64 4/9 (*.f64 z z)) y) (+.f64 2/3 z))))
41.6b
(*.f64 -6 (*.f64 z (-.f64 y x)))
21.8b
(+.f64 (*.f64 2/3 (+.f64 (*.f64 6 y) (*.f64 -6 x))) x)
0.3b
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (+.f64 (*.f64 6 (*.f64 y (-.f64 2/3 z))) x))
32.3b
(+.f64 x (*.f64 6 (*.f64 y (-.f64 2/3 z))))
25.5b
(fma.f64 (-.f64 (pow.f64 (*.f64 (-.f64 y x) (*.f64 -6 z)) 2) (*.f64 x x)) (/.f64 1 (-.f64 (*.f64 (-.f64 y x) (*.f64 -6 z)) x)) (*.f64 (-.f64 y x) 4))
31.8b
(*.f64 (+.f64 4 (*.f64 -6 z)) y)
51.7b
(*.f64 6 (*.f64 z x))
1.4b
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 6 (*.f64 (-.f64 y x) (-.f64 2/3 z)))) 2) (cbrt.f64 (*.f64 6 (*.f64 (-.f64 y x) (-.f64 2/3 z)))) x)
Compiler

Compiled 814 to 586 computations (28% saved)

localize39.0ms (0.3%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(+.f64 4 (*.f64 -6 z))
0.0b
(+.f64 x (*.f64 (*.f64 1 (-.f64 y x)) (+.f64 4 (*.f64 -6 z))))
0.1b
(*.f64 (*.f64 1 (-.f64 y x)) (+.f64 4 (*.f64 -6 z)))
Compiler

Compiled 49 to 30 computations (38.8% saved)

series15.0ms (0.1%)

Counts
3 → 75
Calls

21 calls:

TimeVariablePointExpression
1.0ms
y
@0
(*.f64 (*.f64 1 (-.f64 y x)) (+.f64 4 (*.f64 -6 z)))
1.0ms
y
@-inf
(*.f64 (*.f64 1 (-.f64 y x)) (+.f64 4 (*.f64 -6 z)))
1.0ms
x
@0
(*.f64 (*.f64 1 (-.f64 y x)) (+.f64 4 (*.f64 -6 z)))
1.0ms
z
@inf
(*.f64 (*.f64 1 (-.f64 y x)) (+.f64 4 (*.f64 -6 z)))
1.0ms
y
@inf
(*.f64 (*.f64 1 (-.f64 y x)) (+.f64 4 (*.f64 -6 z)))

rewrite137.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
621×log-prod_binary64
547×fma-def_binary64
354×pow2_binary64
247×fma-neg_binary64
242×pow1/3_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01336
129228
2387628
Stop Event
node limit
Counts
3 → 183
Calls
Call 1
Inputs
(*.f64 (*.f64 1 (-.f64 y x)) (+.f64 4 (*.f64 -6 z)))
(+.f64 x (*.f64 (*.f64 1 (-.f64 y x)) (+.f64 4 (*.f64 -6 z))))
(+.f64 4 (*.f64 -6 z))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (-.f64 y x) (fma.f64 -6 z 4)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (-.f64 y x) 4) (*.f64 (-.f64 y x) (*.f64 -6 z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (-.f64 y x) (*.f64 -6 z)) (*.f64 (-.f64 y x) 4))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y (fma.f64 -6 z 4)) (*.f64 (neg.f64 x) (fma.f64 -6 z 4)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (fma.f64 -6 z 4) y) (*.f64 (fma.f64 -6 z 4) (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 -6 z 4)) (-.f64 y x))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 -6 z 4)) (-.f64 y x)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (fma.f64 -6 z 4)) (-.f64 y x)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (fma.f64 -6 z 4)) (-.f64 y x)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (-.f64 y x) (fma.f64 -6 z 4)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 y 3) (pow.f64 x 3)) (fma.f64 -216 (pow.f64 z 3) 64)) (*.f64 (fma.f64 x (+.f64 y x) (*.f64 y y)) (fma.f64 (*.f64 -6 z) (fma.f64 -6 z -4) 16)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (fma.f64 -216 (pow.f64 z 3) 64)) (*.f64 (+.f64 y x) (fma.f64 (*.f64 -6 z) (fma.f64 -6 z -4) 16)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 y 3) (pow.f64 x 3)) (-.f64 16 (pow.f64 (*.f64 -6 z) 2))) (*.f64 (fma.f64 x (+.f64 y x) (*.f64 y y)) (+.f64 4 (*.f64 6 z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (-.f64 16 (pow.f64 (*.f64 -6 z) 2))) (*.f64 (+.f64 y x) (+.f64 4 (*.f64 6 z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (fma.f64 -216 (pow.f64 z 3) 64) (-.f64 (pow.f64 y 3) (pow.f64 x 3))) (*.f64 (fma.f64 (*.f64 -6 z) (fma.f64 -6 z -4) 16) (fma.f64 x (+.f64 y x) (*.f64 y y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 16 (pow.f64 (*.f64 -6 z) 2)) (-.f64 (pow.f64 y 3) (pow.f64 x 3))) (*.f64 (+.f64 4 (*.f64 6 z)) (fma.f64 x (+.f64 y x) (*.f64 y y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (fma.f64 -216 (pow.f64 z 3) 64) (-.f64 (*.f64 y y) (*.f64 x x))) (*.f64 (fma.f64 (*.f64 -6 z) (fma.f64 -6 z -4) 16) (+.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 16 (pow.f64 (*.f64 -6 z) 2)) (-.f64 (*.f64 y y) (*.f64 x x))) (*.f64 (+.f64 4 (*.f64 6 z)) (+.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 (-.f64 y x) 4) 3) (pow.f64 (*.f64 (-.f64 y x) (*.f64 -6 z)) 3)) (+.f64 (pow.f64 (*.f64 (-.f64 y x) 4) 2) (-.f64 (pow.f64 (*.f64 (-.f64 y x) (*.f64 -6 z)) 2) (*.f64 (*.f64 (-.f64 y x) 4) (*.f64 (-.f64 y x) (*.f64 -6 z))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (-.f64 y x) 4) 2) (pow.f64 (*.f64 (-.f64 y x) (*.f64 -6 z)) 2)) (-.f64 (*.f64 (-.f64 y x) 4) (*.f64 (-.f64 y x) (*.f64 -6 z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 y 3) (pow.f64 x 3)) (fma.f64 -6 z 4)) (fma.f64 x (+.f64 y x) (*.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (fma.f64 -6 z 4)) (+.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (fma.f64 -216 (pow.f64 z 3) 64) (-.f64 y x)) (fma.f64 (*.f64 -6 z) (fma.f64 -6 z -4) 16))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 16 (pow.f64 (*.f64 -6 z) 2)) (-.f64 y x)) (+.f64 4 (*.f64 6 z)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 y x) (fma.f64 -216 (pow.f64 z 3) 64)) (fma.f64 (*.f64 -6 z) (fma.f64 -6 z -4) 16))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 y x) (-.f64 16 (pow.f64 (*.f64 -6 z) 2))) (+.f64 4 (*.f64 6 z)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (fma.f64 -6 z 4) (-.f64 (pow.f64 y 3) (pow.f64 x 3))) (fma.f64 x (+.f64 y x) (*.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (fma.f64 -6 z 4) (-.f64 (*.f64 y y) (*.f64 x x))) (+.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (-.f64 y x) (fma.f64 -6 z 4)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (-.f64 y x) (fma.f64 -6 z 4)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (-.f64 y x) (fma.f64 -6 z 4))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (-.f64 y x) (fma.f64 -6 z 4))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (-.f64 y x) (fma.f64 -6 z 4)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (-.f64 y x) (fma.f64 -6 z 4)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (fma.f64 -6 z 4)) (-.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (-.f64 y x) (fma.f64 -6 z 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 (-.f64 y x) (*.f64 -6 z))) (exp.f64 (*.f64 (-.f64 y x) 4))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (-.f64 y x) (fma.f64 -6 z 4)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (-.f64 y x) (fma.f64 -6 z 4))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (-.f64 y x) (fma.f64 -6 z 4))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (-.f64 y x) (fma.f64 -6 z 4))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (-.f64 y x) (fma.f64 -6 z 4))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (-.f64 y x) 4) (*.f64 (-.f64 y x) (*.f64 -6 z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (-.f64 y x) (*.f64 -6 z)) (*.f64 (-.f64 y x) 4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y (fma.f64 -6 z 4) (*.f64 (neg.f64 x) (fma.f64 -6 z 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 y x) 4 (*.f64 (-.f64 y x) (*.f64 -6 z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 y x) (*.f64 -6 z) (*.f64 (-.f64 y x) 4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 4 (-.f64 y x) (*.f64 (-.f64 y x) (*.f64 -6 z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -6 (*.f64 z (-.f64 y x)) (*.f64 (-.f64 y x) 4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 z (*.f64 -6 (-.f64 y x)) (*.f64 (-.f64 y x) 4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -6 z) (-.f64 y x) (*.f64 (-.f64 y x) 4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 -6 z 4) y (*.f64 (fma.f64 -6 z 4) (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 y x)) 2) (*.f64 (cbrt.f64 (-.f64 y x)) 4) (*.f64 (-.f64 y x) (*.f64 -6 z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 y x)) 2) (*.f64 (cbrt.f64 (-.f64 y x)) (*.f64 -6 z)) (*.f64 (-.f64 y x) 4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 -6 z)) 2) (*.f64 (cbrt.f64 (*.f64 -6 z)) (-.f64 y x)) (*.f64 (-.f64 y x) 4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 y x)) (*.f64 (sqrt.f64 (-.f64 y x)) 4) (*.f64 (-.f64 y x) (*.f64 -6 z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 y x)) (*.f64 (sqrt.f64 (-.f64 y x)) (*.f64 -6 z)) (*.f64 (-.f64 y x) 4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 -6 z)) (*.f64 (sqrt.f64 (*.f64 -6 z)) (-.f64 y x)) (*.f64 (-.f64 y x) 4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 y x) 4) 1 (*.f64 (-.f64 y x) (*.f64 -6 z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 y x) (*.f64 -6 z)) 1 (*.f64 (-.f64 y x) 4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 y x) 4)) 2) (cbrt.f64 (*.f64 (-.f64 y x) 4)) (*.f64 (-.f64 y x) (*.f64 -6 z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 y x) (*.f64 -6 z))) 2) (cbrt.f64 (*.f64 (-.f64 y x) (*.f64 -6 z))) (*.f64 (-.f64 y x) 4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (-.f64 y x) 4)) (sqrt.f64 (*.f64 (-.f64 y x) 4)) (*.f64 (-.f64 y x) (*.f64 -6 z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (-.f64 y x) (*.f64 -6 z))) (sqrt.f64 (*.f64 (-.f64 y x) (*.f64 -6 z))) (*.f64 (-.f64 y x) 4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sqrt.f64 (-.f64 y x)) (sqrt.f64 (*.f64 -6 z))) (*.f64 (sqrt.f64 (-.f64 y x)) (sqrt.f64 (*.f64 -6 z))) (*.f64 (-.f64 y x) 4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sqrt.f64 (*.f64 -6 z)) (sqrt.f64 (-.f64 y x))) (*.f64 (sqrt.f64 (*.f64 -6 z)) (sqrt.f64 (-.f64 y x))) (*.f64 (-.f64 y x) 4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 4 (pow.f64 (cbrt.f64 (-.f64 y x)) 2)) (cbrt.f64 (-.f64 y x)) (*.f64 (-.f64 y x) (*.f64 -6 z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 4 (sqrt.f64 (-.f64 y x))) (sqrt.f64 (-.f64 y x)) (*.f64 (-.f64 y x) (*.f64 -6 z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 y x) -6) z (*.f64 (-.f64 y x) 4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 y x) z) -6 (*.f64 (-.f64 y x) 4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 y x) (pow.f64 (cbrt.f64 (*.f64 -6 z)) 2)) (cbrt.f64 (*.f64 -6 z)) (*.f64 (-.f64 y x) 4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 y x) (sqrt.f64 (*.f64 -6 z))) (sqrt.f64 (*.f64 -6 z)) (*.f64 (-.f64 y x) 4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 -6 z) (pow.f64 (cbrt.f64 (-.f64 y x)) 2)) (cbrt.f64 (-.f64 y x)) (*.f64 (-.f64 y x) 4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 -6 z) (sqrt.f64 (-.f64 y x))) (sqrt.f64 (-.f64 y x)) (*.f64 (-.f64 y x) 4))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 x x) (-.f64 x (*.f64 (-.f64 y x) (fma.f64 -6 z 4)))) (/.f64 (pow.f64 (*.f64 (-.f64 y x) (fma.f64 -6 z 4)) 2) (-.f64 x (*.f64 (-.f64 y x) (fma.f64 -6 z 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)) (pow.f64 (cbrt.f64 (fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)) 2) (cbrt.f64 (fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)) (sqrt.f64 (fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 x 3) (pow.f64 (*.f64 (-.f64 y x) (fma.f64 -6 z 4)) 3)) (/.f64 1 (fma.f64 (*.f64 (-.f64 y x) (fma.f64 -6 z 4)) (-.f64 (*.f64 (-.f64 y x) (fma.f64 -6 z 4)) x) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 (-.f64 y x) (fma.f64 -6 z 4)) 2)) (/.f64 1 (-.f64 x (*.f64 (-.f64 y x) (fma.f64 -6 z 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (*.f64 (-.f64 y x) (fma.f64 -6 z 4)) (-.f64 (*.f64 (-.f64 y x) (fma.f64 -6 z 4)) x) (*.f64 x x)) (+.f64 (pow.f64 x 3) (pow.f64 (*.f64 (-.f64 y x) (fma.f64 -6 z 4)) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 x (*.f64 (-.f64 y x) (fma.f64 -6 z 4))) (-.f64 (*.f64 x x) (pow.f64 (*.f64 (-.f64 y x) (fma.f64 -6 z 4)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 x 3) (pow.f64 (*.f64 (-.f64 y x) (fma.f64 -6 z 4)) 3)) (fma.f64 (*.f64 (-.f64 y x) (fma.f64 -6 z 4)) (-.f64 (*.f64 (-.f64 y x) (fma.f64 -6 z 4)) x) (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 x 3) (pow.f64 (*.f64 (-.f64 y x) (fma.f64 -6 z 4)) 3)) (+.f64 (pow.f64 (*.f64 (-.f64 y x) (fma.f64 -6 z 4)) 2) (-.f64 (*.f64 x x) (*.f64 x (*.f64 (-.f64 y x) (fma.f64 -6 z 4))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 (-.f64 y x) (fma.f64 -6 z 4)) 2)) (-.f64 x (*.f64 (-.f64 y x) (fma.f64 -6 z 4))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 x 3) (pow.f64 (*.f64 (-.f64 y x) (fma.f64 -6 z 4)) 3))) (neg.f64 (fma.f64 (*.f64 (-.f64 y x) (fma.f64 -6 z 4)) (-.f64 (*.f64 (-.f64 y x) (fma.f64 -6 z 4)) x) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 (-.f64 y x) (fma.f64 -6 z 4)) 2))) (neg.f64 (-.f64 x (*.f64 (-.f64 y x) (fma.f64 -6 z 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (-.f64 y x) (fma.f64 -6 z 4)) 2) (*.f64 x x)) (-.f64 (*.f64 (-.f64 y x) (fma.f64 -6 z 4)) x))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 (*.f64 (-.f64 y x) (fma.f64 -6 z 4)) (-.f64 (*.f64 (-.f64 y x) (fma.f64 -6 z 4)) x) (*.f64 x x)) (+.f64 (pow.f64 x 3) (pow.f64 (*.f64 (-.f64 y x) (fma.f64 -6 z 4)) 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (-.f64 x (*.f64 (-.f64 y x) (fma.f64 -6 z 4))) (-.f64 (*.f64 x x) (pow.f64 (*.f64 (-.f64 y x) (fma.f64 -6 z 4)) 2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 x)) (pow.f64 (exp.f64 (fma.f64 -6 z 4)) (-.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 x) (+.f64 1 (expm1.f64 (*.f64 (-.f64 y x) (fma.f64 -6 z 4))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 x)) (+.f64 1 (expm1.f64 (*.f64 (-.f64 y x) (fma.f64 -6 z 4))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (-.f64 y x) (fma.f64 -6 z 4)))) (exp.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 (fma.f64 -6 z 4)) (-.f64 y x)) (+.f64 1 (expm1.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (-.f64 y x) (fma.f64 -6 z 4)))) (+.f64 1 (expm1.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 x (*.f64 (-.f64 y x) (fma.f64 -6 z 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (-.f64 y x) (fma.f64 -6 z 4)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (-.f64 y x) 4) (fma.f64 (-.f64 y x) (*.f64 -6 z) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x 1 (*.f64 (-.f64 y x) (fma.f64 -6 z 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 y x) 4 (fma.f64 (-.f64 y x) (*.f64 -6 z) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 4 (-.f64 y x) (fma.f64 (-.f64 y x) (*.f64 -6 z) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 -6 z 4) (-.f64 y x) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 y x) (fma.f64 -6 z 4)) 1 x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (fma.f64 -6 z 4) 2)) (*.f64 (cbrt.f64 (fma.f64 -6 z 4)) (-.f64 y x)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 y x)) 2) (*.f64 (cbrt.f64 (-.f64 y x)) 4) (fma.f64 (-.f64 y x) (*.f64 -6 z) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 y x)) 2) (*.f64 (cbrt.f64 (-.f64 y x)) (fma.f64 -6 z 4)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (-.f64 y x) (fma.f64 -6 z 4))) (pow.f64 (cbrt.f64 (*.f64 (-.f64 y x) (fma.f64 -6 z 4))) 2) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 y x) (fma.f64 -6 z 4))) 2) (cbrt.f64 (*.f64 (-.f64 y x) (fma.f64 -6 z 4))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 x) (pow.f64 (cbrt.f64 x) 2) (*.f64 (-.f64 y x) (fma.f64 -6 z 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x) (*.f64 (-.f64 y x) (fma.f64 -6 z 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 -6 z 4)) (*.f64 (sqrt.f64 (fma.f64 -6 z 4)) (-.f64 y x)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 y x)) (*.f64 (sqrt.f64 (-.f64 y x)) 4) (fma.f64 (-.f64 y x) (*.f64 -6 z) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 y x)) (*.f64 (sqrt.f64 (-.f64 y x)) (fma.f64 -6 z 4)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (-.f64 y x) (fma.f64 -6 z 4))) (sqrt.f64 (*.f64 (-.f64 y x) (fma.f64 -6 z 4))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (sqrt.f64 x) (*.f64 (-.f64 y x) (fma.f64 -6 z 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 y x) 4) 1 (fma.f64 (-.f64 y x) (*.f64 -6 z) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 y x) 4)) 2) (cbrt.f64 (*.f64 (-.f64 y x) 4)) (fma.f64 (-.f64 y x) (*.f64 -6 z) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (-.f64 y x) 4)) (sqrt.f64 (*.f64 (-.f64 y x) 4)) (fma.f64 (-.f64 y x) (*.f64 -6 z) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 4 (pow.f64 (cbrt.f64 (-.f64 y x)) 2)) (cbrt.f64 (-.f64 y x)) (fma.f64 (-.f64 y x) (*.f64 -6 z) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 4 (sqrt.f64 (-.f64 y x))) (sqrt.f64 (-.f64 y x)) (fma.f64 (-.f64 y x) (*.f64 -6 z) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 y x) (cbrt.f64 (pow.f64 (fma.f64 -6 z 4) 2))) (cbrt.f64 (fma.f64 -6 z 4)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 y x) (sqrt.f64 (fma.f64 -6 z 4))) (sqrt.f64 (fma.f64 -6 z 4)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (fma.f64 -6 z 4) (pow.f64 (cbrt.f64 (-.f64 y x)) 2)) (cbrt.f64 (-.f64 y x)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (fma.f64 -6 z 4) (sqrt.f64 (-.f64 y x))) (sqrt.f64 (-.f64 y x)) x)))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 -6 z 4))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 16 (+.f64 4 (*.f64 6 z))) (/.f64 (pow.f64 (*.f64 -6 z) 2) (+.f64 4 (*.f64 6 z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 -6 z 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 -6 z 4) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 -6 z 4)) (cbrt.f64 (pow.f64 (fma.f64 -6 z 4) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (fma.f64 -6 z 4) 2)) (cbrt.f64 (fma.f64 -6 z 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 -6 z 4)) (sqrt.f64 (fma.f64 -6 z 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 -216 (pow.f64 z 3) 64) (/.f64 1 (fma.f64 (*.f64 -6 z) (fma.f64 -6 z -4) 16)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 16 (pow.f64 (*.f64 -6 z) 2)) (/.f64 1 (+.f64 4 (*.f64 6 z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (*.f64 -6 z) (fma.f64 -6 z -4) 16) (fma.f64 -216 (pow.f64 z 3) 64)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 4 (*.f64 6 z)) (-.f64 16 (pow.f64 (*.f64 -6 z) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 -216 (pow.f64 z 3) 64) (fma.f64 (*.f64 -6 z) (fma.f64 -6 z -4) 16))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 -216 (pow.f64 z 3) 64) (fma.f64 36 (*.f64 z z) (-.f64 16 (*.f64 -24 z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 16 (pow.f64 (*.f64 -6 z) 2)) (+.f64 4 (*.f64 6 z)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (fma.f64 -216 (pow.f64 z 3) 64)) (neg.f64 (fma.f64 (*.f64 -6 z) (fma.f64 -6 z -4) 16)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 16 (pow.f64 (*.f64 -6 z) 2))) (neg.f64 (+.f64 4 (*.f64 6 z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 36 (*.f64 z z) -16) (fma.f64 -6 z -4))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 -6 z 4) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 -6 z 4) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 -6 z 4) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 -6 z 4)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 -6 z 4)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 (*.f64 -6 z) (fma.f64 -6 z -4) 16) (fma.f64 -216 (pow.f64 z 3) 64)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (+.f64 4 (*.f64 6 z)) (-.f64 16 (pow.f64 (*.f64 -6 z) 2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 -6 z 4) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 -6 z 4)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 -6 z 4))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 -6 z 4) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 -6 z 4)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 -6 z 4)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 -6 z 4)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 -6 z 4)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 -6 z) 4)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -6 z 4)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 z -6 4)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -6 z) 1 4)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 z) 2) (*.f64 (cbrt.f64 z) -6) 4)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 -6 z)) (pow.f64 (cbrt.f64 (*.f64 -6 z)) 2) 4)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 -6 z)) 2) (cbrt.f64 (*.f64 -6 z)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 z) (*.f64 (sqrt.f64 z) -6) 4)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 -6 z)) (sqrt.f64 (*.f64 -6 z)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -6 (pow.f64 (cbrt.f64 z) 2)) (cbrt.f64 z) 4)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -6 (sqrt.f64 z)) (sqrt.f64 z) 4)))))

simplify305.0ms (2.1%)

Algorithm
egg-herbie
Rules
3318×fma-def_binary64
464×fma-neg_binary64
352×sub-neg_binary64
350×distribute-rgt-in_binary64
281×associate--r+_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0341501
1881144
2219781
3687781
41594781
52928781
64210781
75056781
85263781
95299781
105299781
115299781
125319781
135327781
145327781
Stop Event
node limit
Counts
258 → 205
Calls
Call 1
Inputs
(*.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x))
(+.f64 (*.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x)) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(+.f64 (*.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x)) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(+.f64 (*.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x)) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(*.f64 (+.f64 4 (*.f64 -6 z)) y)
(+.f64 (*.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x)) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(+.f64 (*.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x)) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(+.f64 (*.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x)) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(*.f64 (+.f64 4 (*.f64 -6 z)) y)
(+.f64 (*.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x)) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(+.f64 (*.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x)) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(+.f64 (*.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x)) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(*.f64 (+.f64 4 (*.f64 -6 z)) y)
(+.f64 (*.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x)) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(+.f64 (*.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x)) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(+.f64 (*.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x)) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(*.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x))
(+.f64 (*.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x)) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(+.f64 (*.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x)) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(+.f64 (*.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x)) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(*.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x))
(+.f64 (*.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x)) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(+.f64 (*.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x)) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(+.f64 (*.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x)) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(*.f64 4 (-.f64 y x))
(+.f64 (*.f64 4 (-.f64 y x)) (*.f64 -6 (*.f64 z (-.f64 y x))))
(+.f64 (*.f64 4 (-.f64 y x)) (*.f64 -6 (*.f64 z (-.f64 y x))))
(+.f64 (*.f64 4 (-.f64 y x)) (*.f64 -6 (*.f64 z (-.f64 y x))))
(*.f64 -6 (*.f64 z (-.f64 y x)))
(+.f64 (*.f64 4 (-.f64 y x)) (*.f64 -6 (*.f64 z (-.f64 y x))))
(+.f64 (*.f64 4 (-.f64 y x)) (*.f64 -6 (*.f64 z (-.f64 y x))))
(+.f64 (*.f64 4 (-.f64 y x)) (*.f64 -6 (*.f64 z (-.f64 y x))))
(*.f64 -6 (*.f64 z (-.f64 y x)))
(+.f64 (*.f64 4 (-.f64 y x)) (*.f64 -6 (*.f64 z (-.f64 y x))))
(+.f64 (*.f64 4 (-.f64 y x)) (*.f64 -6 (*.f64 z (-.f64 y x))))
(+.f64 (*.f64 4 (-.f64 y x)) (*.f64 -6 (*.f64 z (-.f64 y x))))
(*.f64 (+.f64 4 (*.f64 -6 z)) y)
(+.f64 (*.f64 (+.f64 1 (*.f64 -1 (+.f64 4 (*.f64 -6 z)))) x) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(+.f64 (*.f64 (+.f64 1 (*.f64 -1 (+.f64 4 (*.f64 -6 z)))) x) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(+.f64 (*.f64 (+.f64 1 (*.f64 -1 (+.f64 4 (*.f64 -6 z)))) x) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(*.f64 (+.f64 1 (*.f64 -1 (+.f64 4 (*.f64 -6 z)))) x)
(+.f64 (*.f64 (+.f64 1 (*.f64 -1 (+.f64 4 (*.f64 -6 z)))) x) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(+.f64 (*.f64 (+.f64 1 (*.f64 -1 (+.f64 4 (*.f64 -6 z)))) x) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(+.f64 (*.f64 (+.f64 1 (*.f64 -1 (+.f64 4 (*.f64 -6 z)))) x) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(*.f64 -1 (*.f64 (+.f64 3 (*.f64 -6 z)) x))
(+.f64 (*.f64 -1 (*.f64 (+.f64 3 (*.f64 -6 z)) x)) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(+.f64 (*.f64 -1 (*.f64 (+.f64 3 (*.f64 -6 z)) x)) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(+.f64 (*.f64 -1 (*.f64 (+.f64 3 (*.f64 -6 z)) x)) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(+.f64 (*.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x)) x)
(+.f64 (*.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x)) (+.f64 (*.f64 (+.f64 4 (*.f64 -6 z)) y) x))
(+.f64 (*.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x)) (+.f64 (*.f64 (+.f64 4 (*.f64 -6 z)) y) x))
(+.f64 (*.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x)) (+.f64 (*.f64 (+.f64 4 (*.f64 -6 z)) y) x))
(*.f64 (+.f64 4 (*.f64 -6 z)) y)
(+.f64 (*.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x)) (+.f64 (*.f64 (+.f64 4 (*.f64 -6 z)) y) x))
(+.f64 (*.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x)) (+.f64 (*.f64 (+.f64 4 (*.f64 -6 z)) y) x))
(+.f64 (*.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x)) (+.f64 (*.f64 (+.f64 4 (*.f64 -6 z)) y) x))
(*.f64 (+.f64 4 (*.f64 -6 z)) y)
(+.f64 (*.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x)) (+.f64 (*.f64 (+.f64 4 (*.f64 -6 z)) y) x))
(+.f64 (*.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x)) (+.f64 (*.f64 (+.f64 4 (*.f64 -6 z)) y) x))
(+.f64 (*.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x)) (+.f64 (*.f64 (+.f64 4 (*.f64 -6 z)) y) x))
(+.f64 (*.f64 4 (-.f64 y x)) x)
(+.f64 (*.f64 4 (-.f64 y x)) (+.f64 (*.f64 -6 (*.f64 z (-.f64 y x))) x))
(+.f64 (*.f64 4 (-.f64 y x)) (+.f64 (*.f64 -6 (*.f64 z (-.f64 y x))) x))
(+.f64 (*.f64 4 (-.f64 y x)) (+.f64 (*.f64 -6 (*.f64 z (-.f64 y x))) x))
(*.f64 -6 (*.f64 z (-.f64 y x)))
(+.f64 (*.f64 4 (-.f64 y x)) (+.f64 (*.f64 -6 (*.f64 z (-.f64 y x))) x))
(+.f64 (*.f64 4 (-.f64 y x)) (+.f64 (*.f64 -6 (*.f64 z (-.f64 y x))) x))
(+.f64 (*.f64 4 (-.f64 y x)) (+.f64 (*.f64 -6 (*.f64 z (-.f64 y x))) x))
(*.f64 -6 (*.f64 z (-.f64 y x)))
(+.f64 (*.f64 4 (-.f64 y x)) (+.f64 (*.f64 -6 (*.f64 z (-.f64 y x))) x))
(+.f64 (*.f64 4 (-.f64 y x)) (+.f64 (*.f64 -6 (*.f64 z (-.f64 y x))) x))
(+.f64 (*.f64 4 (-.f64 y x)) (+.f64 (*.f64 -6 (*.f64 z (-.f64 y x))) x))
4
(*.f64 -6 z)
(*.f64 -6 z)
Outputs
(*.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x))
(*.f64 (neg.f64 (+.f64 4 (*.f64 -6 z))) x)
(*.f64 (fma.f64 -6 z 4) (neg.f64 x))
(*.f64 x (fma.f64 z 6 -4))
(+.f64 (*.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x)) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(fma.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(-.f64 (*.f64 (fma.f64 -6 z 4) y) (*.f64 (fma.f64 -6 z 4) x))
(*.f64 (fma.f64 -6 z 4) (-.f64 y x))
(+.f64 (*.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x)) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(fma.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(-.f64 (*.f64 (fma.f64 -6 z 4) y) (*.f64 (fma.f64 -6 z 4) x))
(*.f64 (fma.f64 -6 z 4) (-.f64 y x))
(+.f64 (*.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x)) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(fma.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(-.f64 (*.f64 (fma.f64 -6 z 4) y) (*.f64 (fma.f64 -6 z 4) x))
(*.f64 (fma.f64 -6 z 4) (-.f64 y x))
(*.f64 (+.f64 4 (*.f64 -6 z)) y)
(*.f64 (fma.f64 -6 z 4) y)
(+.f64 (*.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x)) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(fma.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(-.f64 (*.f64 (fma.f64 -6 z 4) y) (*.f64 (fma.f64 -6 z 4) x))
(*.f64 (fma.f64 -6 z 4) (-.f64 y x))
(+.f64 (*.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x)) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(fma.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(-.f64 (*.f64 (fma.f64 -6 z 4) y) (*.f64 (fma.f64 -6 z 4) x))
(*.f64 (fma.f64 -6 z 4) (-.f64 y x))
(+.f64 (*.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x)) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(fma.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(-.f64 (*.f64 (fma.f64 -6 z 4) y) (*.f64 (fma.f64 -6 z 4) x))
(*.f64 (fma.f64 -6 z 4) (-.f64 y x))
(*.f64 (+.f64 4 (*.f64 -6 z)) y)
(*.f64 (fma.f64 -6 z 4) y)
(+.f64 (*.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x)) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(fma.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(-.f64 (*.f64 (fma.f64 -6 z 4) y) (*.f64 (fma.f64 -6 z 4) x))
(*.f64 (fma.f64 -6 z 4) (-.f64 y x))
(+.f64 (*.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x)) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(fma.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(-.f64 (*.f64 (fma.f64 -6 z 4) y) (*.f64 (fma.f64 -6 z 4) x))
(*.f64 (fma.f64 -6 z 4) (-.f64 y x))
(+.f64 (*.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x)) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(fma.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(-.f64 (*.f64 (fma.f64 -6 z 4) y) (*.f64 (fma.f64 -6 z 4) x))
(*.f64 (fma.f64 -6 z 4) (-.f64 y x))
(*.f64 (+.f64 4 (*.f64 -6 z)) y)
(*.f64 (fma.f64 -6 z 4) y)
(+.f64 (*.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x)) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(fma.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(-.f64 (*.f64 (fma.f64 -6 z 4) y) (*.f64 (fma.f64 -6 z 4) x))
(*.f64 (fma.f64 -6 z 4) (-.f64 y x))
(+.f64 (*.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x)) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(fma.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(-.f64 (*.f64 (fma.f64 -6 z 4) y) (*.f64 (fma.f64 -6 z 4) x))
(*.f64 (fma.f64 -6 z 4) (-.f64 y x))
(+.f64 (*.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x)) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(fma.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(-.f64 (*.f64 (fma.f64 -6 z 4) y) (*.f64 (fma.f64 -6 z 4) x))
(*.f64 (fma.f64 -6 z 4) (-.f64 y x))
(*.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x))
(*.f64 (neg.f64 (+.f64 4 (*.f64 -6 z))) x)
(*.f64 (fma.f64 -6 z 4) (neg.f64 x))
(*.f64 x (fma.f64 z 6 -4))
(+.f64 (*.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x)) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(fma.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(-.f64 (*.f64 (fma.f64 -6 z 4) y) (*.f64 (fma.f64 -6 z 4) x))
(*.f64 (fma.f64 -6 z 4) (-.f64 y x))
(+.f64 (*.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x)) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(fma.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(-.f64 (*.f64 (fma.f64 -6 z 4) y) (*.f64 (fma.f64 -6 z 4) x))
(*.f64 (fma.f64 -6 z 4) (-.f64 y x))
(+.f64 (*.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x)) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(fma.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(-.f64 (*.f64 (fma.f64 -6 z 4) y) (*.f64 (fma.f64 -6 z 4) x))
(*.f64 (fma.f64 -6 z 4) (-.f64 y x))
(*.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x))
(*.f64 (neg.f64 (+.f64 4 (*.f64 -6 z))) x)
(*.f64 (fma.f64 -6 z 4) (neg.f64 x))
(*.f64 x (fma.f64 z 6 -4))
(+.f64 (*.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x)) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(fma.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(-.f64 (*.f64 (fma.f64 -6 z 4) y) (*.f64 (fma.f64 -6 z 4) x))
(*.f64 (fma.f64 -6 z 4) (-.f64 y x))
(+.f64 (*.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x)) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(fma.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(-.f64 (*.f64 (fma.f64 -6 z 4) y) (*.f64 (fma.f64 -6 z 4) x))
(*.f64 (fma.f64 -6 z 4) (-.f64 y x))
(+.f64 (*.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x)) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(fma.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(-.f64 (*.f64 (fma.f64 -6 z 4) y) (*.f64 (fma.f64 -6 z 4) x))
(*.f64 (fma.f64 -6 z 4) (-.f64 y x))
(*.f64 4 (-.f64 y x))
(+.f64 (*.f64 4 (-.f64 y x)) (*.f64 -6 (*.f64 z (-.f64 y x))))
(fma.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(-.f64 (*.f64 (fma.f64 -6 z 4) y) (*.f64 (fma.f64 -6 z 4) x))
(*.f64 (fma.f64 -6 z 4) (-.f64 y x))
(+.f64 (*.f64 4 (-.f64 y x)) (*.f64 -6 (*.f64 z (-.f64 y x))))
(fma.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(-.f64 (*.f64 (fma.f64 -6 z 4) y) (*.f64 (fma.f64 -6 z 4) x))
(*.f64 (fma.f64 -6 z 4) (-.f64 y x))
(+.f64 (*.f64 4 (-.f64 y x)) (*.f64 -6 (*.f64 z (-.f64 y x))))
(fma.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(-.f64 (*.f64 (fma.f64 -6 z 4) y) (*.f64 (fma.f64 -6 z 4) x))
(*.f64 (fma.f64 -6 z 4) (-.f64 y x))
(*.f64 -6 (*.f64 z (-.f64 y x)))
(*.f64 (*.f64 z 6) (-.f64 x y))
(+.f64 (*.f64 4 (-.f64 y x)) (*.f64 -6 (*.f64 z (-.f64 y x))))
(fma.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(-.f64 (*.f64 (fma.f64 -6 z 4) y) (*.f64 (fma.f64 -6 z 4) x))
(*.f64 (fma.f64 -6 z 4) (-.f64 y x))
(+.f64 (*.f64 4 (-.f64 y x)) (*.f64 -6 (*.f64 z (-.f64 y x))))
(fma.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(-.f64 (*.f64 (fma.f64 -6 z 4) y) (*.f64 (fma.f64 -6 z 4) x))
(*.f64 (fma.f64 -6 z 4) (-.f64 y x))
(+.f64 (*.f64 4 (-.f64 y x)) (*.f64 -6 (*.f64 z (-.f64 y x))))
(fma.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(-.f64 (*.f64 (fma.f64 -6 z 4) y) (*.f64 (fma.f64 -6 z 4) x))
(*.f64 (fma.f64 -6 z 4) (-.f64 y x))
(*.f64 -6 (*.f64 z (-.f64 y x)))
(*.f64 (*.f64 z 6) (-.f64 x y))
(+.f64 (*.f64 4 (-.f64 y x)) (*.f64 -6 (*.f64 z (-.f64 y x))))
(fma.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(-.f64 (*.f64 (fma.f64 -6 z 4) y) (*.f64 (fma.f64 -6 z 4) x))
(*.f64 (fma.f64 -6 z 4) (-.f64 y x))
(+.f64 (*.f64 4 (-.f64 y x)) (*.f64 -6 (*.f64 z (-.f64 y x))))
(fma.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(-.f64 (*.f64 (fma.f64 -6 z 4) y) (*.f64 (fma.f64 -6 z 4) x))
(*.f64 (fma.f64 -6 z 4) (-.f64 y x))
(+.f64 (*.f64 4 (-.f64 y x)) (*.f64 -6 (*.f64 z (-.f64 y x))))
(fma.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(-.f64 (*.f64 (fma.f64 -6 z 4) y) (*.f64 (fma.f64 -6 z 4) x))
(*.f64 (fma.f64 -6 z 4) (-.f64 y x))
(*.f64 (+.f64 4 (*.f64 -6 z)) y)
(*.f64 (fma.f64 -6 z 4) y)
(+.f64 (*.f64 (+.f64 1 (*.f64 -1 (+.f64 4 (*.f64 -6 z)))) x) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(fma.f64 (+.f64 1 (neg.f64 (+.f64 4 (*.f64 -6 z)))) x (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(-.f64 (*.f64 (fma.f64 -6 z 4) y) (*.f64 x (fma.f64 -6 z 3)))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(fma.f64 (fma.f64 -6 z 4) (-.f64 y x) x)
(+.f64 (*.f64 (+.f64 1 (*.f64 -1 (+.f64 4 (*.f64 -6 z)))) x) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(fma.f64 (+.f64 1 (neg.f64 (+.f64 4 (*.f64 -6 z)))) x (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(-.f64 (*.f64 (fma.f64 -6 z 4) y) (*.f64 x (fma.f64 -6 z 3)))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(fma.f64 (fma.f64 -6 z 4) (-.f64 y x) x)
(+.f64 (*.f64 (+.f64 1 (*.f64 -1 (+.f64 4 (*.f64 -6 z)))) x) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(fma.f64 (+.f64 1 (neg.f64 (+.f64 4 (*.f64 -6 z)))) x (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(-.f64 (*.f64 (fma.f64 -6 z 4) y) (*.f64 x (fma.f64 -6 z 3)))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(fma.f64 (fma.f64 -6 z 4) (-.f64 y x) x)
(*.f64 (+.f64 1 (*.f64 -1 (+.f64 4 (*.f64 -6 z)))) x)
(*.f64 x (+.f64 1 (neg.f64 (+.f64 4 (*.f64 -6 z)))))
(*.f64 x (+.f64 (*.f64 z 6) -3))
(*.f64 x (fma.f64 z 6 -3))
(+.f64 (*.f64 (+.f64 1 (*.f64 -1 (+.f64 4 (*.f64 -6 z)))) x) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(fma.f64 (+.f64 1 (neg.f64 (+.f64 4 (*.f64 -6 z)))) x (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(-.f64 (*.f64 (fma.f64 -6 z 4) y) (*.f64 x (fma.f64 -6 z 3)))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(fma.f64 (fma.f64 -6 z 4) (-.f64 y x) x)
(+.f64 (*.f64 (+.f64 1 (*.f64 -1 (+.f64 4 (*.f64 -6 z)))) x) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(fma.f64 (+.f64 1 (neg.f64 (+.f64 4 (*.f64 -6 z)))) x (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(-.f64 (*.f64 (fma.f64 -6 z 4) y) (*.f64 x (fma.f64 -6 z 3)))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(fma.f64 (fma.f64 -6 z 4) (-.f64 y x) x)
(+.f64 (*.f64 (+.f64 1 (*.f64 -1 (+.f64 4 (*.f64 -6 z)))) x) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(fma.f64 (+.f64 1 (neg.f64 (+.f64 4 (*.f64 -6 z)))) x (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(-.f64 (*.f64 (fma.f64 -6 z 4) y) (*.f64 x (fma.f64 -6 z 3)))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(fma.f64 (fma.f64 -6 z 4) (-.f64 y x) x)
(*.f64 -1 (*.f64 (+.f64 3 (*.f64 -6 z)) x))
(*.f64 x (+.f64 1 (neg.f64 (+.f64 4 (*.f64 -6 z)))))
(*.f64 x (+.f64 (*.f64 z 6) -3))
(*.f64 x (fma.f64 z 6 -3))
(+.f64 (*.f64 -1 (*.f64 (+.f64 3 (*.f64 -6 z)) x)) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(fma.f64 (+.f64 1 (neg.f64 (+.f64 4 (*.f64 -6 z)))) x (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(-.f64 (*.f64 (fma.f64 -6 z 4) y) (*.f64 x (fma.f64 -6 z 3)))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(fma.f64 (fma.f64 -6 z 4) (-.f64 y x) x)
(+.f64 (*.f64 -1 (*.f64 (+.f64 3 (*.f64 -6 z)) x)) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(fma.f64 (+.f64 1 (neg.f64 (+.f64 4 (*.f64 -6 z)))) x (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(-.f64 (*.f64 (fma.f64 -6 z 4) y) (*.f64 x (fma.f64 -6 z 3)))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(fma.f64 (fma.f64 -6 z 4) (-.f64 y x) x)
(+.f64 (*.f64 -1 (*.f64 (+.f64 3 (*.f64 -6 z)) x)) (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(fma.f64 (+.f64 1 (neg.f64 (+.f64 4 (*.f64 -6 z)))) x (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(-.f64 (*.f64 (fma.f64 -6 z 4) y) (*.f64 x (fma.f64 -6 z 3)))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(fma.f64 (fma.f64 -6 z 4) (-.f64 y x) x)
(+.f64 (*.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x)) x)
(*.f64 x (+.f64 1 (neg.f64 (+.f64 4 (*.f64 -6 z)))))
(*.f64 x (+.f64 (*.f64 z 6) -3))
(*.f64 x (fma.f64 z 6 -3))
(+.f64 (*.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x)) (+.f64 (*.f64 (+.f64 4 (*.f64 -6 z)) y) x))
(fma.f64 (+.f64 1 (neg.f64 (+.f64 4 (*.f64 -6 z)))) x (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(-.f64 (*.f64 (fma.f64 -6 z 4) y) (*.f64 x (fma.f64 -6 z 3)))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(fma.f64 (fma.f64 -6 z 4) (-.f64 y x) x)
(+.f64 (*.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x)) (+.f64 (*.f64 (+.f64 4 (*.f64 -6 z)) y) x))
(fma.f64 (+.f64 1 (neg.f64 (+.f64 4 (*.f64 -6 z)))) x (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(-.f64 (*.f64 (fma.f64 -6 z 4) y) (*.f64 x (fma.f64 -6 z 3)))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(fma.f64 (fma.f64 -6 z 4) (-.f64 y x) x)
(+.f64 (*.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x)) (+.f64 (*.f64 (+.f64 4 (*.f64 -6 z)) y) x))
(fma.f64 (+.f64 1 (neg.f64 (+.f64 4 (*.f64 -6 z)))) x (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(-.f64 (*.f64 (fma.f64 -6 z 4) y) (*.f64 x (fma.f64 -6 z 3)))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(fma.f64 (fma.f64 -6 z 4) (-.f64 y x) x)
(*.f64 (+.f64 4 (*.f64 -6 z)) y)
(*.f64 (fma.f64 -6 z 4) y)
(+.f64 (*.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x)) (+.f64 (*.f64 (+.f64 4 (*.f64 -6 z)) y) x))
(fma.f64 (+.f64 1 (neg.f64 (+.f64 4 (*.f64 -6 z)))) x (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(-.f64 (*.f64 (fma.f64 -6 z 4) y) (*.f64 x (fma.f64 -6 z 3)))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(fma.f64 (fma.f64 -6 z 4) (-.f64 y x) x)
(+.f64 (*.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x)) (+.f64 (*.f64 (+.f64 4 (*.f64 -6 z)) y) x))
(fma.f64 (+.f64 1 (neg.f64 (+.f64 4 (*.f64 -6 z)))) x (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(-.f64 (*.f64 (fma.f64 -6 z 4) y) (*.f64 x (fma.f64 -6 z 3)))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(fma.f64 (fma.f64 -6 z 4) (-.f64 y x) x)
(+.f64 (*.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x)) (+.f64 (*.f64 (+.f64 4 (*.f64 -6 z)) y) x))
(fma.f64 (+.f64 1 (neg.f64 (+.f64 4 (*.f64 -6 z)))) x (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(-.f64 (*.f64 (fma.f64 -6 z 4) y) (*.f64 x (fma.f64 -6 z 3)))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(fma.f64 (fma.f64 -6 z 4) (-.f64 y x) x)
(*.f64 (+.f64 4 (*.f64 -6 z)) y)
(*.f64 (fma.f64 -6 z 4) y)
(+.f64 (*.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x)) (+.f64 (*.f64 (+.f64 4 (*.f64 -6 z)) y) x))
(fma.f64 (+.f64 1 (neg.f64 (+.f64 4 (*.f64 -6 z)))) x (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(-.f64 (*.f64 (fma.f64 -6 z 4) y) (*.f64 x (fma.f64 -6 z 3)))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(fma.f64 (fma.f64 -6 z 4) (-.f64 y x) x)
(+.f64 (*.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x)) (+.f64 (*.f64 (+.f64 4 (*.f64 -6 z)) y) x))
(fma.f64 (+.f64 1 (neg.f64 (+.f64 4 (*.f64 -6 z)))) x (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(-.f64 (*.f64 (fma.f64 -6 z 4) y) (*.f64 x (fma.f64 -6 z 3)))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(fma.f64 (fma.f64 -6 z 4) (-.f64 y x) x)
(+.f64 (*.f64 -1 (*.f64 (+.f64 4 (*.f64 -6 z)) x)) (+.f64 (*.f64 (+.f64 4 (*.f64 -6 z)) y) x))
(fma.f64 (+.f64 1 (neg.f64 (+.f64 4 (*.f64 -6 z)))) x (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(-.f64 (*.f64 (fma.f64 -6 z 4) y) (*.f64 x (fma.f64 -6 z 3)))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(fma.f64 (fma.f64 -6 z 4) (-.f64 y x) x)
(+.f64 (*.f64 4 (-.f64 y x)) x)
(fma.f64 4 (-.f64 y x) x)
(fma.f64 4 y (*.f64 x -3))
(+.f64 (*.f64 4 (-.f64 y x)) (+.f64 (*.f64 -6 (*.f64 z (-.f64 y x))) x))
(fma.f64 (+.f64 1 (neg.f64 (+.f64 4 (*.f64 -6 z)))) x (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(-.f64 (*.f64 (fma.f64 -6 z 4) y) (*.f64 x (fma.f64 -6 z 3)))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(fma.f64 (fma.f64 -6 z 4) (-.f64 y x) x)
(+.f64 (*.f64 4 (-.f64 y x)) (+.f64 (*.f64 -6 (*.f64 z (-.f64 y x))) x))
(fma.f64 (+.f64 1 (neg.f64 (+.f64 4 (*.f64 -6 z)))) x (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(-.f64 (*.f64 (fma.f64 -6 z 4) y) (*.f64 x (fma.f64 -6 z 3)))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(fma.f64 (fma.f64 -6 z 4) (-.f64 y x) x)
(+.f64 (*.f64 4 (-.f64 y x)) (+.f64 (*.f64 -6 (*.f64 z (-.f64 y x))) x))
(fma.f64 (+.f64 1 (neg.f64 (+.f64 4 (*.f64 -6 z)))) x (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(-.f64 (*.f64 (fma.f64 -6 z 4) y) (*.f64 x (fma.f64 -6 z 3)))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(fma.f64 (fma.f64 -6 z 4) (-.f64 y x) x)
(*.f64 -6 (*.f64 z (-.f64 y x)))
(*.f64 (*.f64 z 6) (-.f64 x y))
(+.f64 (*.f64 4 (-.f64 y x)) (+.f64 (*.f64 -6 (*.f64 z (-.f64 y x))) x))
(fma.f64 (+.f64 1 (neg.f64 (+.f64 4 (*.f64 -6 z)))) x (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(-.f64 (*.f64 (fma.f64 -6 z 4) y) (*.f64 x (fma.f64 -6 z 3)))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(fma.f64 (fma.f64 -6 z 4) (-.f64 y x) x)
(+.f64 (*.f64 4 (-.f64 y x)) (+.f64 (*.f64 -6 (*.f64 z (-.f64 y x))) x))
(fma.f64 (+.f64 1 (neg.f64 (+.f64 4 (*.f64 -6 z)))) x (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(-.f64 (*.f64 (fma.f64 -6 z 4) y) (*.f64 x (fma.f64 -6 z 3)))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(fma.f64 (fma.f64 -6 z 4) (-.f64 y x) x)
(+.f64 (*.f64 4 (-.f64 y x)) (+.f64 (*.f64 -6 (*.f64 z (-.f64 y x))) x))
(fma.f64 (+.f64 1 (neg.f64 (+.f64 4 (*.f64 -6 z)))) x (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(-.f64 (*.f64 (fma.f64 -6 z 4) y) (*.f64 x (fma.f64 -6 z 3)))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(fma.f64 (fma.f64 -6 z 4) (-.f64 y x) x)
(*.f64 -6 (*.f64 z (-.f64 y x)))
(*.f64 (*.f64 z 6) (-.f64 x y))
(+.f64 (*.f64 4 (-.f64 y x)) (+.f64 (*.f64 -6 (*.f64 z (-.f64 y x))) x))
(fma.f64 (+.f64 1 (neg.f64 (+.f64 4 (*.f64 -6 z)))) x (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(-.f64 (*.f64 (fma.f64 -6 z 4) y) (*.f64 x (fma.f64 -6 z 3)))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(fma.f64 (fma.f64 -6 z 4) (-.f64 y x) x)
(+.f64 (*.f64 4 (-.f64 y x)) (+.f64 (*.f64 -6 (*.f64 z (-.f64 y x))) x))
(fma.f64 (+.f64 1 (neg.f64 (+.f64 4 (*.f64 -6 z)))) x (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(-.f64 (*.f64 (fma.f64 -6 z 4) y) (*.f64 x (fma.f64 -6 z 3)))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(fma.f64 (fma.f64 -6 z 4) (-.f64 y x) x)
(+.f64 (*.f64 4 (-.f64 y x)) (+.f64 (*.f64 -6 (*.f64 z (-.f64 y x))) x))
(fma.f64 (+.f64 1 (neg.f64 (+.f64 4 (*.f64 -6 z)))) x (*.f64 (+.f64 4 (*.f64 -6 z)) y))
(-.f64 (*.f64 (fma.f64 -6 z 4) y) (*.f64 x (fma.f64 -6 z 3)))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(fma.f64 (fma.f64 -6 z 4) (-.f64 y x) x)
4
(*.f64 -6 z)
(*.f64 -6 z)

localize13.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.2b
(*.f64 -6 (*.f64 z y))
Compiler

Compiled 14 to 7 computations (50% saved)

series19.0ms (0.1%)

Counts
1 → 24
Calls

6 calls:

TimeVariablePointExpression
13.0ms
z
@inf
(*.f64 -6 (*.f64 z y))
1.0ms
z
@0
(*.f64 -6 (*.f64 z y))
1.0ms
y
@0
(*.f64 -6 (*.f64 z y))
1.0ms
y
@inf
(*.f64 -6 (*.f64 z y))
1.0ms
z
@-inf
(*.f64 -6 (*.f64 z y))

rewrite79.0ms (0.5%)

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

Useful iterations: 0 (0.0ms)

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

simplify20.0ms (0.1%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
06168
110168
217168
319168
Stop Event
saturated
Counts
35 → 12
Calls
Call 1
Inputs
(*.f64 -6 (*.f64 y z))
(*.f64 -6 (*.f64 y z))
(*.f64 -6 (*.f64 y z))
(*.f64 -6 (*.f64 y z))
(*.f64 -6 (*.f64 y z))
(*.f64 -6 (*.f64 y z))
(*.f64 -6 (*.f64 y z))
(*.f64 -6 (*.f64 y z))
(*.f64 -6 (*.f64 y z))
(*.f64 -6 (*.f64 y z))
(*.f64 -6 (*.f64 y z))
(*.f64 -6 (*.f64 y z))
(*.f64 -6 (*.f64 y z))
(*.f64 -6 (*.f64 y z))
(*.f64 -6 (*.f64 y z))
(*.f64 -6 (*.f64 y z))
(*.f64 -6 (*.f64 y z))
(*.f64 -6 (*.f64 y z))
(*.f64 -6 (*.f64 y z))
(*.f64 -6 (*.f64 y z))
(*.f64 -6 (*.f64 y z))
(*.f64 -6 (*.f64 y z))
(*.f64 -6 (*.f64 y z))
(*.f64 -6 (*.f64 y z))
Outputs
(*.f64 -6 (*.f64 y z))
(*.f64 -6 (*.f64 y z))
(*.f64 -6 (*.f64 y z))
(*.f64 -6 (*.f64 y z))
(*.f64 -6 (*.f64 y z))
(*.f64 -6 (*.f64 y z))
(*.f64 -6 (*.f64 y z))
(*.f64 -6 (*.f64 y z))
(*.f64 -6 (*.f64 y z))
(*.f64 -6 (*.f64 y z))
(*.f64 -6 (*.f64 y z))
(*.f64 -6 (*.f64 y z))
(*.f64 -6 (*.f64 y z))
(*.f64 -6 (*.f64 y z))
(*.f64 -6 (*.f64 y z))
(*.f64 -6 (*.f64 y z))
(*.f64 -6 (*.f64 y z))
(*.f64 -6 (*.f64 y z))
(*.f64 -6 (*.f64 y z))
(*.f64 -6 (*.f64 y z))
(*.f64 -6 (*.f64 y z))
(*.f64 -6 (*.f64 y z))
(*.f64 -6 (*.f64 y z))
(*.f64 -6 (*.f64 y z))

localize19.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(+.f64 4 (*.f64 -6 z))
0.1b
(*.f64 (+.f64 4 (*.f64 -6 z)) y)
Compiler

Compiled 22 to 16 computations (27.3% saved)

series5.0ms (0%)

Counts
1 → 12
Calls

6 calls:

TimeVariablePointExpression
1.0ms
y
@inf
(*.f64 (+.f64 4 (*.f64 -6 z)) y)
1.0ms
y
@0
(*.f64 (+.f64 4 (*.f64 -6 z)) y)
1.0ms
y
@-inf
(*.f64 (+.f64 4 (*.f64 -6 z)) y)
1.0ms
z
@0
(*.f64 (+.f64 4 (*.f64 -6 z)) y)
1.0ms
z
@inf
(*.f64 (+.f64 4 (*.f64 -6 z)) y)

rewrite79.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
848×pow1_binary64
796×add-log-exp_binary64
796×log1p-expm1-u_binary64
796×expm1-log1p-u_binary64
783×add-exp-log_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0810
11728
220968
Stop Event
node limit
Counts
1 → 21
Calls
Call 1
Inputs
(*.f64 (+.f64 4 (*.f64 -6 z)) y)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 4 y) (*.f64 (*.f64 -6 z) y))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 -6 z) y) (*.f64 4 y))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y 4) (*.f64 y (*.f64 -6 z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y (*.f64 -6 z)) (*.f64 y 4))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 (fma.f64 -6 z 4) y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 64 (*.f64 -216 (pow.f64 z 3))) y) (+.f64 16 (-.f64 (*.f64 36 (*.f64 z z)) (*.f64 -24 z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 16 (*.f64 36 (*.f64 z z))) y) (+.f64 4 (*.f64 6 z)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (+.f64 64 (*.f64 -216 (pow.f64 z 3)))) (+.f64 16 (-.f64 (*.f64 36 (*.f64 z z)) (*.f64 -24 z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (-.f64 16 (*.f64 36 (*.f64 z z)))) (+.f64 4 (*.f64 6 z)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (fma.f64 -6 z 4) y) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (fma.f64 -6 z 4) y) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (fma.f64 -6 z 4) y)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (fma.f64 -6 z 4) y)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (fma.f64 -6 z 4) y) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (fma.f64 -6 z 4)) y))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (fma.f64 -6 z 4) y) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (fma.f64 -6 z 4) 3) (pow.f64 y 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 y 3) (pow.f64 (fma.f64 -6 z 4) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (fma.f64 -6 z 4) y)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (fma.f64 -6 z 4) y)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (fma.f64 -6 z 4) y)))))))

simplify24.0ms (0.2%)

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

Useful iterations: 3 (0.0ms)

IterNodesCost
09117
116117
227108
34190
44590
Stop Event
saturated
Counts
33 → 26
Calls
Call 1
Inputs
(*.f64 4 y)
(+.f64 (*.f64 4 y) (*.f64 -6 (*.f64 y z)))
(+.f64 (*.f64 4 y) (*.f64 -6 (*.f64 y z)))
(+.f64 (*.f64 4 y) (*.f64 -6 (*.f64 y z)))
(*.f64 -6 (*.f64 y z))
(+.f64 (*.f64 4 y) (*.f64 -6 (*.f64 y z)))
(+.f64 (*.f64 4 y) (*.f64 -6 (*.f64 y z)))
(+.f64 (*.f64 4 y) (*.f64 -6 (*.f64 y z)))
(*.f64 -6 (*.f64 y z))
(+.f64 (*.f64 4 y) (*.f64 -6 (*.f64 y z)))
(+.f64 (*.f64 4 y) (*.f64 -6 (*.f64 y z)))
(+.f64 (*.f64 4 y) (*.f64 -6 (*.f64 y z)))
Outputs
(*.f64 4 y)
(+.f64 (*.f64 4 y) (*.f64 -6 (*.f64 y z)))
(fma.f64 4 y (*.f64 -6 (*.f64 y z)))
(*.f64 y (+.f64 4 (*.f64 -6 z)))
(*.f64 y (fma.f64 -6 z 4))
(+.f64 (*.f64 4 y) (*.f64 -6 (*.f64 y z)))
(fma.f64 4 y (*.f64 -6 (*.f64 y z)))
(*.f64 y (+.f64 4 (*.f64 -6 z)))
(*.f64 y (fma.f64 -6 z 4))
(+.f64 (*.f64 4 y) (*.f64 -6 (*.f64 y z)))
(fma.f64 4 y (*.f64 -6 (*.f64 y z)))
(*.f64 y (+.f64 4 (*.f64 -6 z)))
(*.f64 y (fma.f64 -6 z 4))
(*.f64 -6 (*.f64 y z))
(*.f64 y (*.f64 -6 z))
(+.f64 (*.f64 4 y) (*.f64 -6 (*.f64 y z)))
(fma.f64 4 y (*.f64 -6 (*.f64 y z)))
(*.f64 y (+.f64 4 (*.f64 -6 z)))
(*.f64 y (fma.f64 -6 z 4))
(+.f64 (*.f64 4 y) (*.f64 -6 (*.f64 y z)))
(fma.f64 4 y (*.f64 -6 (*.f64 y z)))
(*.f64 y (+.f64 4 (*.f64 -6 z)))
(*.f64 y (fma.f64 -6 z 4))
(+.f64 (*.f64 4 y) (*.f64 -6 (*.f64 y z)))
(fma.f64 4 y (*.f64 -6 (*.f64 y z)))
(*.f64 y (+.f64 4 (*.f64 -6 z)))
(*.f64 y (fma.f64 -6 z 4))
(*.f64 -6 (*.f64 y z))
(*.f64 y (*.f64 -6 z))
(+.f64 (*.f64 4 y) (*.f64 -6 (*.f64 y z)))
(fma.f64 4 y (*.f64 -6 (*.f64 y z)))
(*.f64 y (+.f64 4 (*.f64 -6 z)))
(*.f64 y (fma.f64 -6 z 4))
(+.f64 (*.f64 4 y) (*.f64 -6 (*.f64 y z)))
(fma.f64 4 y (*.f64 -6 (*.f64 y z)))
(*.f64 y (+.f64 4 (*.f64 -6 z)))
(*.f64 y (fma.f64 -6 z 4))
(+.f64 (*.f64 4 y) (*.f64 -6 (*.f64 y z)))
(fma.f64 4 y (*.f64 -6 (*.f64 y z)))
(*.f64 y (+.f64 4 (*.f64 -6 z)))
(*.f64 y (fma.f64 -6 z 4))

localize22.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (*.f64 4 y) (*.f64 -6 (*.f64 y z)))
0.2b
(*.f64 -6 (*.f64 y z))
Compiler

Compiled 27 to 15 computations (44.4% saved)

series7.0ms (0.1%)

Counts
2 → 15
Calls

12 calls:

TimeVariablePointExpression
1.0ms
y
@inf
(+.f64 (*.f64 4 y) (*.f64 -6 (*.f64 y z)))
1.0ms
y
@0
(+.f64 (*.f64 4 y) (*.f64 -6 (*.f64 y z)))
1.0ms
z
@0
(+.f64 (*.f64 4 y) (*.f64 -6 (*.f64 y z)))
1.0ms
y
@0
(*.f64 -6 (*.f64 y z))
1.0ms
y
@-inf
(+.f64 (*.f64 4 y) (*.f64 -6 (*.f64 y z)))

rewrite107.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
467×log-prod_binary64
354×exp-prod_binary64
332×prod-exp_binary64
325×fma-def_binary64
295×pow-prod-down_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0918
119518
2251718
Stop Event
node limit
Counts
2 → 101
Calls
Call 1
Inputs
(*.f64 -6 (*.f64 y z))
(+.f64 (*.f64 4 y) (*.f64 -6 (*.f64 y z)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 y (*.f64 z -6)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 -6) (*.f64 y z))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 -6) (*.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 -6) (*.f64 y z)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 -6) (*.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 y (*.f64 z -6)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 y (*.f64 z -6)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 y (*.f64 z -6)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 y (*.f64 z -6))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 y (*.f64 z -6))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (*.f64 y z) 3) -216) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (*.f64 y (*.f64 z -6))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 y (*.f64 z -6)))) 2)) (cbrt.f64 (log.f64 (*.f64 y (*.f64 z -6)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 y (*.f64 z -6))))) (sqrt.f64 (log.f64 (*.f64 y (*.f64 z -6)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 y (*.f64 z -6)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 -6) (*.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 y (*.f64 z -6)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (*.f64 y z) 3) -216))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 y (*.f64 z -6))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 y (*.f64 z -6))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 y (*.f64 z -6))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 y (*.f64 z -6))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 y (*.f64 z -6)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 y (*.f64 z -6)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 y (*.f64 z -6)))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 y (*.f64 z -6))) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 y (*.f64 z -6))) 3) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 z) 1) (log.f64 (*.f64 -6 y))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (log.f64 (*.f64 -6 y)) (*.f64 (log.f64 z) 1)))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 -6 (*.f64 y z) (*.f64 y 4)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 (*.f64 y y) 16) (fma.f64 y 4 (*.f64 6 (*.f64 y z)))) (/.f64 (pow.f64 (*.f64 y (*.f64 z -6)) 2) (fma.f64 y 4 (*.f64 6 (*.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 -6 (*.f64 y z) (*.f64 y 4)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 -6 (*.f64 y z) (*.f64 y 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 -6 (*.f64 y z) (*.f64 y 4))) (pow.f64 (cbrt.f64 (fma.f64 -6 (*.f64 y z) (*.f64 y 4))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 -6 (*.f64 y z) (*.f64 y 4))) 2) (cbrt.f64 (fma.f64 -6 (*.f64 y z) (*.f64 y 4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 -6 (*.f64 y z) (*.f64 y 4))) (sqrt.f64 (fma.f64 -6 (*.f64 y z) (*.f64 y 4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (pow.f64 (*.f64 y z) 3) -216 (*.f64 (pow.f64 y 3) 64)) (/.f64 1 (fma.f64 (*.f64 y (*.f64 z -6)) (-.f64 (*.f64 y (*.f64 z -6)) (*.f64 y 4)) (*.f64 (*.f64 y y) 16))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 (*.f64 y y) 16) (pow.f64 (*.f64 y (*.f64 z -6)) 2)) (/.f64 1 (fma.f64 y 4 (*.f64 6 (*.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (*.f64 y (*.f64 z -6)) (-.f64 (*.f64 y (*.f64 z -6)) (*.f64 y 4)) (*.f64 (*.f64 y y) 16)) (fma.f64 (pow.f64 (*.f64 y z) 3) -216 (*.f64 (pow.f64 y 3) 64))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 y 4 (*.f64 6 (*.f64 y z))) (-.f64 (*.f64 (*.f64 y y) 16) (pow.f64 (*.f64 y (*.f64 z -6)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 (pow.f64 (*.f64 y z) 3) -216 (*.f64 (pow.f64 y 3) 64)) (fma.f64 (*.f64 y (*.f64 z -6)) (-.f64 (*.f64 y (*.f64 z -6)) (*.f64 y 4)) (*.f64 (*.f64 y y) 16)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 (pow.f64 (*.f64 y z) 3) -216 (*.f64 (pow.f64 y 3) 64)) (fma.f64 (pow.f64 (*.f64 y z) 2) 36 (-.f64 (*.f64 (*.f64 y y) 16) (*.f64 y (*.f64 4 (*.f64 y (*.f64 z -6)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 y y) 16) (pow.f64 (*.f64 y (*.f64 z -6)) 2)) (fma.f64 y 4 (*.f64 6 (*.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (fma.f64 (pow.f64 (*.f64 y z) 3) -216 (*.f64 (pow.f64 y 3) 64))) (neg.f64 (fma.f64 (*.f64 y (*.f64 z -6)) (-.f64 (*.f64 y (*.f64 z -6)) (*.f64 y 4)) (*.f64 (*.f64 y y) 16))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (*.f64 (*.f64 y y) 16) (pow.f64 (*.f64 y (*.f64 z -6)) 2))) (neg.f64 (fma.f64 y 4 (*.f64 6 (*.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 y (*.f64 z -6)) 2) (*.f64 (*.f64 y y) 16)) (-.f64 (*.f64 y (*.f64 z -6)) (*.f64 y 4)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 -6 (*.f64 y z) (*.f64 y 4)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 -6 (*.f64 y z) (*.f64 y 4)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 -6 (*.f64 y z) (*.f64 y 4)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 -6 (*.f64 y z) (*.f64 y 4))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 -6 (*.f64 y z) (*.f64 y 4))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (fma.f64 -6 (*.f64 y z) (*.f64 y 4))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 (*.f64 y (*.f64 z -6)) (-.f64 (*.f64 y (*.f64 z -6)) (*.f64 y 4)) (*.f64 (*.f64 y y) 16)) (fma.f64 (pow.f64 (*.f64 y z) 3) -216 (*.f64 (pow.f64 y 3) 64))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 y 4 (*.f64 6 (*.f64 y z))) (-.f64 (*.f64 (*.f64 y y) 16) (pow.f64 (*.f64 y (*.f64 z -6)) 2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (fma.f64 -6 (*.f64 y z) (*.f64 y 4)))) 2)) (cbrt.f64 (log.f64 (fma.f64 -6 (*.f64 y z) (*.f64 y 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (fma.f64 -6 (*.f64 y z) (*.f64 y 4))))) (sqrt.f64 (log.f64 (fma.f64 -6 (*.f64 y z) (*.f64 y 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 -6 (*.f64 y z) (*.f64 y 4)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 -6 (*.f64 y z) (*.f64 y 4))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 -6 (*.f64 y z) (*.f64 y 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 y (*.f64 z -6)))) (pow.f64 (exp.f64 y) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 -6) (*.f64 y z)) (+.f64 1 (expm1.f64 (*.f64 y 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 y (*.f64 z -6)))) (+.f64 1 (expm1.f64 (*.f64 y 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 y 4))) (pow.f64 (exp.f64 -6) (*.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 y) 4) (+.f64 1 (expm1.f64 (*.f64 y (*.f64 z -6))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 y 4))) (+.f64 1 (expm1.f64 (*.f64 y (*.f64 z -6))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 -6 (*.f64 y z) (*.f64 y 4)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 -6 (*.f64 y z) (*.f64 y 4))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 -6 (*.f64 y z) (*.f64 y 4))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 -6 (*.f64 y z) (*.f64 y 4))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 -6 (*.f64 y z) (*.f64 y 4))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (fma.f64 -6 (*.f64 y z) (*.f64 y 4)))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (fma.f64 -6 (*.f64 y z) (*.f64 y 4)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (fma.f64 -6 (*.f64 y z) (*.f64 y 4)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (fma.f64 -6 (*.f64 y z) (*.f64 y 4))) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -6 (*.f64 y z) (*.f64 y 4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y 4 (*.f64 y (*.f64 z -6)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y (*.f64 z -6) (*.f64 y 4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 z (*.f64 -6 y) (*.f64 y 4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y z) -6 (*.f64 y 4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y (*.f64 z -6)) 1 (*.f64 y 4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 4 y (*.f64 y (*.f64 z -6)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y 4) 1 (*.f64 y (*.f64 z -6)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 y (*.f64 z -6)) (*.f64 y 4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 y 4) (*.f64 y (*.f64 z -6)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 y 4)) (cbrt.f64 (*.f64 (*.f64 y y) 16)) (*.f64 y (*.f64 z -6)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (*.f64 y y) 16)) (cbrt.f64 (*.f64 y 4)) (*.f64 y (*.f64 z -6)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 y z)) 2) (*.f64 (cbrt.f64 (*.f64 y z)) -6) (*.f64 y 4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 y (*.f64 z -6))) (pow.f64 (cbrt.f64 (*.f64 y (*.f64 z -6))) 2) (*.f64 y 4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 y (*.f64 z -6))) 2) (cbrt.f64 (*.f64 y (*.f64 z -6))) (*.f64 y 4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 y) 2) (*.f64 (cbrt.f64 y) 4) (*.f64 y (*.f64 z -6)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sqrt.f64 y) 2) (*.f64 (sqrt.f64 y) 2) (*.f64 y (*.f64 z -6)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 y z)) (*.f64 (sqrt.f64 (*.f64 y z)) -6) (*.f64 y 4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 y (*.f64 z -6))) (sqrt.f64 (*.f64 y (*.f64 z -6))) (*.f64 y 4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 y) (*.f64 (sqrt.f64 y) 4) (*.f64 y (*.f64 z -6)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -6 y) z (*.f64 y 4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 4 (pow.f64 (cbrt.f64 y) 2)) (cbrt.f64 y) (*.f64 y (*.f64 z -6)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 4 (sqrt.f64 y)) (sqrt.f64 y) (*.f64 y (*.f64 z -6)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -6 z) y (*.f64 y 4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -6 (pow.f64 (cbrt.f64 (*.f64 y z)) 2)) (cbrt.f64 (*.f64 y z)) (*.f64 y 4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -6 (sqrt.f64 (*.f64 y z))) (sqrt.f64 (*.f64 y z)) (*.f64 y 4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 -6 y) 1) z (*.f64 y 4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 -6 y) (cbrt.f64 (*.f64 z z))) (cbrt.f64 z) (*.f64 y 4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 -6 y) (sqrt.f64 z)) (sqrt.f64 z) (*.f64 y 4))))))

simplify57.0ms (0.4%)

Algorithm
egg-herbie
Rules
290×fma-def_binary64
157×fma-neg_binary64
52×cancel-sign-sub-inv_binary64
34×distribute-rgt-neg-in_binary64
30×associate-*l*_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
017138
135114
273114
3153114
4239114
5306114
6461114
7682114
8967114
91042114
101048114
Stop Event
saturated
Counts
116 → 107
Calls
Call 1
Inputs
(*.f64 (+.f64 4 (*.f64 -6 z)) y)
(*.f64 (+.f64 4 (*.f64 -6 z)) y)
(*.f64 (+.f64 4 (*.f64 -6 z)) y)
(*.f64 (+.f64 4 (*.f64 -6 z)) y)
(*.f64 (+.f64 4 (*.f64 -6 z)) y)
(*.f64 (+.f64 4 (*.f64 -6 z)) y)
(*.f64 (+.f64 4 (*.f64 -6 z)) y)
(*.f64 (+.f64 4 (*.f64 -6 z)) y)
(*.f64 -1 (*.f64 y (-.f64 (*.f64 6 z) 4)))
(*.f64 -1 (*.f64 y (-.f64 (*.f64 6 z) 4)))
(*.f64 -1 (*.f64 y (-.f64 (*.f64 6 z) 4)))
(*.f64 -1 (*.f64 y (-.f64 (*.f64 6 z) 4)))
(*.f64 4 y)
(*.f64 -6 (*.f64 y z))
(*.f64 -6 (*.f64 y z))
Outputs
(*.f64 (+.f64 4 (*.f64 -6 z)) y)
(*.f64 (fma.f64 -6 z 4) y)
(*.f64 y (fma.f64 -6 z 4))
(*.f64 (+.f64 4 (*.f64 -6 z)) y)
(*.f64 (fma.f64 -6 z 4) y)
(*.f64 y (fma.f64 -6 z 4))
(*.f64 (+.f64 4 (*.f64 -6 z)) y)
(*.f64 (fma.f64 -6 z 4) y)
(*.f64 y (fma.f64 -6 z 4))
(*.f64 (+.f64 4 (*.f64 -6 z)) y)
(*.f64 (fma.f64 -6 z 4) y)
(*.f64 y (fma.f64 -6 z 4))
(*.f64 (+.f64 4 (*.f64 -6 z)) y)
(*.f64 (fma.f64 -6 z 4) y)
(*.f64 y (fma.f64 -6 z 4))
(*.f64 (+.f64 4 (*.f64 -6 z)) y)
(*.f64 (fma.f64 -6 z 4) y)
(*.f64 y (fma.f64 -6 z 4))
(*.f64 (+.f64 4 (*.f64 -6 z)) y)
(*.f64 (fma.f64 -6 z 4) y)
(*.f64 y (fma.f64 -6 z 4))
(*.f64 (+.f64 4 (*.f64 -6 z)) y)
(*.f64 (fma.f64 -6 z 4) y)
(*.f64 y (fma.f64 -6 z 4))
(*.f64 -1 (*.f64 y (-.f64 (*.f64 6 z) 4)))
(*.f64 (+.f64 4 (*.f64 -6 z)) y)
(*.f64 (fma.f64 -6 z 4) y)
(*.f64 y (fma.f64 -6 z 4))
(*.f64 -1 (*.f64 y (-.f64 (*.f64 6 z) 4)))
(*.f64 (+.f64 4 (*.f64 -6 z)) y)
(*.f64 (fma.f64 -6 z 4) y)
(*.f64 y (fma.f64 -6 z 4))
(*.f64 -1 (*.f64 y (-.f64 (*.f64 6 z) 4)))
(*.f64 (+.f64 4 (*.f64 -6 z)) y)
(*.f64 (fma.f64 -6 z 4) y)
(*.f64 y (fma.f64 -6 z 4))
(*.f64 -1 (*.f64 y (-.f64 (*.f64 6 z) 4)))
(*.f64 (+.f64 4 (*.f64 -6 z)) y)
(*.f64 (fma.f64 -6 z 4) y)
(*.f64 y (fma.f64 -6 z 4))
(*.f64 4 y)
(*.f64 -6 (*.f64 y z))
(*.f64 (*.f64 -6 y) z)
(*.f64 z (*.f64 -6 y))
(*.f64 y (*.f64 -6 z))
(*.f64 -6 (*.f64 y z))
(*.f64 (*.f64 -6 y) z)
(*.f64 z (*.f64 -6 y))
(*.f64 y (*.f64 -6 z))

localize54.0ms (0.4%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(*.f64 6 (*.f64 y (-.f64 2/3 z)))
0.2b
(*.f64 (-.f64 2/3 z) x)
0.2b
(*.f64 y (-.f64 2/3 z))
0.2b
(*.f64 -6 (*.f64 (-.f64 2/3 z) x))
Compiler

Compiled 62 to 42 computations (32.3% saved)

series9.0ms (0.1%)

Counts
2 → 24
Calls

12 calls:

TimeVariablePointExpression
1.0ms
x
@0
(*.f64 -6 (*.f64 (-.f64 2/3 z) x))
1.0ms
z
@0
(*.f64 -6 (*.f64 (-.f64 2/3 z) x))
1.0ms
x
@inf
(*.f64 -6 (*.f64 (-.f64 2/3 z) x))
1.0ms
z
@inf
(*.f64 -6 (*.f64 (-.f64 2/3 z) x))
1.0ms
z
@-inf
(*.f64 -6 (*.f64 (-.f64 2/3 z) x))

rewrite101.0ms (0.7%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
0817
117417
2214917
Stop Event
node limit
Counts
2 → 30
Calls
Call 1
Inputs
(*.f64 -6 (*.f64 (-.f64 2/3 z) x))
(*.f64 (-.f64 2/3 z) x)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 -6 (*.f64 (-.f64 2/3 z) x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 36 (pow.f64 (*.f64 (-.f64 2/3 z) x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 -6) (*.f64 (-.f64 2/3 z) x)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 2/3 x) (*.f64 (neg.f64 z) x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x 2/3) (*.f64 x (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 (-.f64 2/3 z) x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 8/27 (pow.f64 z 3)) x) (+.f64 4/9 (*.f64 z (+.f64 2/3 z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 4/9 (*.f64 z z)) x) (+.f64 2/3 z))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (-.f64 8/27 (pow.f64 z 3))) (+.f64 4/9 (*.f64 z (+.f64 2/3 z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (-.f64 4/9 (*.f64 z z))) (+.f64 2/3 z))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (-.f64 2/3 z) x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (-.f64 2/3 z) x) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (-.f64 2/3 z) x)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (-.f64 2/3 z) x)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (-.f64 2/3 z) x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (-.f64 2/3 z)) x))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (-.f64 2/3 z) x) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (-.f64 2/3 z) 3) (pow.f64 x 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 x 3) (pow.f64 (-.f64 2/3 z) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (-.f64 2/3 z) x)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (-.f64 2/3 z) x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (-.f64 2/3 z) x)))))))

simplify65.0ms (0.4%)

Algorithm
egg-herbie
Rules
521×fma-def_binary64
140×fma-neg_binary64
74×associate-*l*_binary64
63×associate-*r*_binary64
53×distribute-rgt-in_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
015223
129205
265169
393169
4117169
5166169
6259169
7358169
8591169
91157169
101425169
111467169
121467169
Stop Event
saturated
Counts
54 → 42
Calls
Call 1
Inputs
(*.f64 -4 x)
(+.f64 (*.f64 6 (*.f64 z x)) (*.f64 -4 x))
(+.f64 (*.f64 6 (*.f64 z x)) (*.f64 -4 x))
(+.f64 (*.f64 6 (*.f64 z x)) (*.f64 -4 x))
(*.f64 6 (*.f64 z x))
(+.f64 (*.f64 -4 x) (*.f64 6 (*.f64 z x)))
(+.f64 (*.f64 -4 x) (*.f64 6 (*.f64 z x)))
(+.f64 (*.f64 -4 x) (*.f64 6 (*.f64 z x)))
(*.f64 6 (*.f64 z x))
(+.f64 (*.f64 -4 x) (*.f64 6 (*.f64 z x)))
(+.f64 (*.f64 -4 x) (*.f64 6 (*.f64 z x)))
(+.f64 (*.f64 -4 x) (*.f64 6 (*.f64 z x)))
(*.f64 2/3 x)
(+.f64 (*.f64 2/3 x) (*.f64 -1 (*.f64 z x)))
(+.f64 (*.f64 2/3 x) (*.f64 -1 (*.f64 z x)))
(+.f64 (*.f64 2/3 x) (*.f64 -1 (*.f64 z x)))
(*.f64 -1 (*.f64 z x))
(+.f64 (*.f64 2/3 x) (*.f64 -1 (*.f64 z x)))
(+.f64 (*.f64 2/3 x) (*.f64 -1 (*.f64 z x)))
(+.f64 (*.f64 2/3 x) (*.f64 -1 (*.f64 z x)))
(*.f64 -1 (*.f64 z x))
(+.f64 (*.f64 2/3 x) (*.f64 -1 (*.f64 z x)))
(+.f64 (*.f64 2/3 x) (*.f64 -1 (*.f64 z x)))
(+.f64 (*.f64 2/3 x) (*.f64 -1 (*.f64 z x)))
Outputs
(*.f64 -4 x)
(+.f64 (*.f64 6 (*.f64 z x)) (*.f64 -4 x))
(fma.f64 6 (*.f64 x z) (*.f64 -4 x))
(*.f64 x (+.f64 (*.f64 6 z) -4))
(*.f64 x (fma.f64 6 z -4))
(+.f64 (*.f64 6 (*.f64 z x)) (*.f64 -4 x))
(fma.f64 6 (*.f64 x z) (*.f64 -4 x))
(*.f64 x (+.f64 (*.f64 6 z) -4))
(*.f64 x (fma.f64 6 z -4))
(+.f64 (*.f64 6 (*.f64 z x)) (*.f64 -4 x))
(fma.f64 6 (*.f64 x z) (*.f64 -4 x))
(*.f64 x (+.f64 (*.f64 6 z) -4))
(*.f64 x (fma.f64 6 z -4))
(*.f64 6 (*.f64 z x))
(*.f64 6 (*.f64 x z))
(*.f64 x (*.f64 6 z))
(+.f64 (*.f64 -4 x) (*.f64 6 (*.f64 z x)))
(fma.f64 6 (*.f64 x z) (*.f64 -4 x))
(*.f64 x (+.f64 (*.f64 6 z) -4))
(*.f64 x (fma.f64 6 z -4))
(+.f64 (*.f64 -4 x) (*.f64 6 (*.f64 z x)))
(fma.f64 6 (*.f64 x z) (*.f64 -4 x))
(*.f64 x (+.f64 (*.f64 6 z) -4))
(*.f64 x (fma.f64 6 z -4))
(+.f64 (*.f64 -4 x) (*.f64 6 (*.f64 z x)))
(fma.f64 6 (*.f64 x z) (*.f64 -4 x))
(*.f64 x (+.f64 (*.f64 6 z) -4))
(*.f64 x (fma.f64 6 z -4))
(*.f64 6 (*.f64 z x))
(*.f64 6 (*.f64 x z))
(*.f64 x (*.f64 6 z))
(+.f64 (*.f64 -4 x) (*.f64 6 (*.f64 z x)))
(fma.f64 6 (*.f64 x z) (*.f64 -4 x))
(*.f64 x (+.f64 (*.f64 6 z) -4))
(*.f64 x (fma.f64 6 z -4))
(+.f64 (*.f64 -4 x) (*.f64 6 (*.f64 z x)))
(fma.f64 6 (*.f64 x z) (*.f64 -4 x))
(*.f64 x (+.f64 (*.f64 6 z) -4))
(*.f64 x (fma.f64 6 z -4))
(+.f64 (*.f64 -4 x) (*.f64 6 (*.f64 z x)))
(fma.f64 6 (*.f64 x z) (*.f64 -4 x))
(*.f64 x (+.f64 (*.f64 6 z) -4))
(*.f64 x (fma.f64 6 z -4))
(*.f64 2/3 x)
(*.f64 x 2/3)
(+.f64 (*.f64 2/3 x) (*.f64 -1 (*.f64 z x)))
(fma.f64 2/3 x (neg.f64 (*.f64 x z)))
(*.f64 x (+.f64 2/3 (neg.f64 z)))
(*.f64 x (-.f64 2/3 z))
(+.f64 (*.f64 2/3 x) (*.f64 -1 (*.f64 z x)))
(fma.f64 2/3 x (neg.f64 (*.f64 x z)))
(*.f64 x (+.f64 2/3 (neg.f64 z)))
(*.f64 x (-.f64 2/3 z))
(+.f64 (*.f64 2/3 x) (*.f64 -1 (*.f64 z x)))
(fma.f64 2/3 x (neg.f64 (*.f64 x z)))
(*.f64 x (+.f64 2/3 (neg.f64 z)))
(*.f64 x (-.f64 2/3 z))
(*.f64 -1 (*.f64 z x))
(neg.f64 (*.f64 x z))
(*.f64 x (neg.f64 z))
(+.f64 (*.f64 2/3 x) (*.f64 -1 (*.f64 z x)))
(fma.f64 2/3 x (neg.f64 (*.f64 x z)))
(*.f64 x (+.f64 2/3 (neg.f64 z)))
(*.f64 x (-.f64 2/3 z))
(+.f64 (*.f64 2/3 x) (*.f64 -1 (*.f64 z x)))
(fma.f64 2/3 x (neg.f64 (*.f64 x z)))
(*.f64 x (+.f64 2/3 (neg.f64 z)))
(*.f64 x (-.f64 2/3 z))
(+.f64 (*.f64 2/3 x) (*.f64 -1 (*.f64 z x)))
(fma.f64 2/3 x (neg.f64 (*.f64 x z)))
(*.f64 x (+.f64 2/3 (neg.f64 z)))
(*.f64 x (-.f64 2/3 z))
(*.f64 -1 (*.f64 z x))
(neg.f64 (*.f64 x z))
(*.f64 x (neg.f64 z))
(+.f64 (*.f64 2/3 x) (*.f64 -1 (*.f64 z x)))
(fma.f64 2/3 x (neg.f64 (*.f64 x z)))
(*.f64 x (+.f64 2/3 (neg.f64 z)))
(*.f64 x (-.f64 2/3 z))
(+.f64 (*.f64 2/3 x) (*.f64 -1 (*.f64 z x)))
(fma.f64 2/3 x (neg.f64 (*.f64 x z)))
(*.f64 x (+.f64 2/3 (neg.f64 z)))
(*.f64 x (-.f64 2/3 z))
(+.f64 (*.f64 2/3 x) (*.f64 -1 (*.f64 z x)))
(fma.f64 2/3 x (neg.f64 (*.f64 x z)))
(*.f64 x (+.f64 2/3 (neg.f64 z)))
(*.f64 x (-.f64 2/3 z))

eval318.0ms (2.2%)

Compiler

Compiled 7891 to 5048 computations (36% saved)

prune112.0ms (0.8%)

Pruning

31 alts after pruning (25 fresh and 6 done)

PrunedKeptTotal
New4775482
Fresh32023
Picked101
Done066
Total48131512
Error
0b
Counts
512 → 31
Alt Table
Click to see full alt table
StatusErrorProgram
12.5b
(fma.f64 (-.f64 y x) (expm1.f64 (log1p.f64 (fma.f64 z -6 4))) x)
0.4b
(+.f64 x (*.f64 (*.f64 (-.f64 y x) 6) (-.f64 2/3 z)))
31.8b
(+.f64 (*.f64 4 y) (*.f64 -6 (*.f64 y z)))
0.4b
(fma.f64 (*.f64 (-.f64 2/3 z) (-.f64 y x)) 6 x)
32.0b
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) x)
52.6b
(*.f64 (*.f64 -6 z) y)
25.5b
(fma.f64 (-.f64 (pow.f64 (*.f64 (-.f64 y x) (*.f64 -6 z)) 2) (*.f64 x x)) (/.f64 1 (-.f64 (*.f64 (-.f64 y x) (*.f64 -6 z)) x)) (*.f64 (-.f64 y x) 4))
31.8b
(fma.f64 (sqrt.f64 (-.f64 y x)) (*.f64 (sqrt.f64 (-.f64 y x)) (*.f64 6 (-.f64 2/3 z))) x)
32.0b
(*.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x)
51.7b
(*.f64 x (*.f64 6 z))
11.8b
(+.f64 (*.f64 -4 x) (+.f64 (*.f64 6 (*.f64 y (-.f64 2/3 z))) x))
31.9b
(+.f64 x (/.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (-.f64 2/3 z)) (*.f64 (+.f64 y x) 1/6)))
0.2b
(+.f64 x (*.f64 (*.f64 1 (-.f64 y x)) (+.f64 4 (*.f64 -6 z))))
41.6b
(*.f64 z (*.f64 -6 (-.f64 y x)))
42.0b
(+.f64 x (*.f64 (*.f64 z 6) (-.f64 x y)))
41.8b
(*.f64 4 y)
0.2b
(+.f64 (*.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
52.6b
(*.f64 -6 (*.f64 z y))
21.6b
(fma.f64 x -3 (*.f64 y 4))
52.6b
(*.f64 z (*.f64 -6 y))
32.0b
(*.f64 (-.f64 (*.f64 6 z) 3) x)
0.5b
(+.f64 x (/.f64 (-.f64 2/3 z) (/.f64 1 (*.f64 6 (-.f64 y x)))))
36.4b
(+.f64 x (*.f64 6 (/.f64 (*.f64 (-.f64 4/9 (*.f64 z z)) y) (+.f64 2/3 z))))
21.6b
(+.f64 (*.f64 4 (-.f64 y x)) x)
41.6b
(*.f64 -6 (*.f64 z (-.f64 y x)))
21.8b
(+.f64 (*.f64 2/3 (+.f64 (*.f64 6 y) (*.f64 -6 x))) x)
32.3b
(+.f64 x (*.f64 6 (*.f64 y (-.f64 2/3 z))))
31.8b
(*.f64 (+.f64 4 (*.f64 -6 z)) y)
51.7b
(*.f64 6 (*.f64 z x))
1.4b
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 6 (*.f64 (-.f64 y x) (-.f64 2/3 z)))) 2) (cbrt.f64 (*.f64 6 (*.f64 (-.f64 y x) (-.f64 2/3 z)))) x)
41.6b
(*.f64 -6 (+.f64 (*.f64 z y) (*.f64 z (neg.f64 x))))
Compiler

Compiled 772 to 553 computations (28.4% saved)

localize51.0ms (0.4%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(*.f64 -6 (-.f64 2/3 z))
0.1b
(*.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x)
0.2b
(*.f64 6 (*.f64 y (-.f64 2/3 z)))
0.2b
(*.f64 y (-.f64 2/3 z))
Compiler

Compiled 63 to 47 computations (25.4% saved)

series8.0ms (0.1%)

Counts
2 → 24
Calls

9 calls:

TimeVariablePointExpression
1.0ms
x
@0
(*.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x)
1.0ms
z
@0
(*.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x)
1.0ms
z
@inf
(*.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x)
1.0ms
x
@inf
(*.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x)
1.0ms
z
@-inf
(*.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x)

rewrite108.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
449×log-prod_binary64
352×exp-prod_binary64
295×prod-diff_binary64
282×fma-def_binary64
271×pow-prod-down_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01020
121418
2268318
Stop Event
node limit
Counts
2 → 83
Calls
Call 1
Inputs
(*.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x)
(*.f64 -6 (-.f64 2/3 z))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 x (*.f64 (*.f64 -6 (-.f64 2/3 z)) x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 x (*.f64 x (*.f64 -6 (-.f64 2/3 z))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (fma.f64 -6 (-.f64 2/3 z) 1) x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 -6 (-.f64 2/3 z)) x) x)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (*.f64 -6 (-.f64 2/3 z))) x)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 x) (fma.f64 -6 (-.f64 2/3 z) 1))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 x) (fma.f64 -6 (-.f64 2/3 z) 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 x) (fma.f64 -6 (-.f64 2/3 z) 1)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 x) (fma.f64 -6 (-.f64 2/3 z) 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (fma.f64 -6 (-.f64 2/3 z) 1) x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (fma.f64 (pow.f64 (-.f64 2/3 z) 3) -216 1) x) (fma.f64 (*.f64 -6 (-.f64 2/3 z)) (fma.f64 -6 (-.f64 2/3 z) -1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 1 (*.f64 (pow.f64 (-.f64 2/3 z) 2) 36)) x) (+.f64 1 (*.f64 6 (-.f64 2/3 z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (fma.f64 (pow.f64 (-.f64 2/3 z) 3) -216 1)) (fma.f64 (*.f64 -6 (-.f64 2/3 z)) (fma.f64 -6 (-.f64 2/3 z) -1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (-.f64 1 (*.f64 (pow.f64 (-.f64 2/3 z) 2) 36))) (+.f64 1 (*.f64 6 (-.f64 2/3 z))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (fma.f64 -6 (-.f64 2/3 z) 1) x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (E.f64) (log.f64 (*.f64 (fma.f64 -6 (-.f64 2/3 z) 1) x)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (fma.f64 -6 (-.f64 2/3 z) 1) x) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (fma.f64 -6 (-.f64 2/3 z) 1) x) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (fma.f64 -6 (-.f64 2/3 z) 1) x)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (fma.f64 -6 (-.f64 2/3 z) 1) x)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 (fma.f64 -6 (-.f64 2/3 z) 1) x))) 2)) (cbrt.f64 (log.f64 (*.f64 (fma.f64 -6 (-.f64 2/3 z) 1) x))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 (fma.f64 -6 (-.f64 2/3 z) 1) x)))) (sqrt.f64 (log.f64 (*.f64 (fma.f64 -6 (-.f64 2/3 z) 1) x))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (fma.f64 -6 (-.f64 2/3 z) 1) x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 x) (fma.f64 -6 (-.f64 2/3 z) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (fma.f64 -6 (-.f64 2/3 z) 1) x))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (fma.f64 -6 (-.f64 2/3 z) 1) x) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (fma.f64 -6 (-.f64 2/3 z) 1) x)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (fma.f64 -6 (-.f64 2/3 z) 1) x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (fma.f64 -6 (-.f64 2/3 z) 1) x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (fma.f64 -6 (-.f64 2/3 z) 1) x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (fma.f64 -6 (-.f64 2/3 z) 1) x) 3)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (fma.f64 -6 (-.f64 2/3 z) 1) x))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (fma.f64 -6 (-.f64 2/3 z) 1) x))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (fma.f64 -6 (-.f64 2/3 z) 1) x)) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 x (*.f64 (*.f64 -6 (-.f64 2/3 z)) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 x (*.f64 x (*.f64 -6 (-.f64 2/3 z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -6 (-.f64 2/3 z)) x x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x 1 (*.f64 (*.f64 -6 (-.f64 2/3 z)) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x 1 (*.f64 x (*.f64 -6 (-.f64 2/3 z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x (*.f64 -6 (-.f64 2/3 z)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 x) (pow.f64 (cbrt.f64 x) 2) (*.f64 (*.f64 -6 (-.f64 2/3 z)) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 x) (pow.f64 (cbrt.f64 x) 2) (*.f64 x (*.f64 -6 (-.f64 2/3 z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x) (*.f64 (*.f64 -6 (-.f64 2/3 z)) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x) (*.f64 x (*.f64 -6 (-.f64 2/3 z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (sqrt.f64 x) (*.f64 (*.f64 -6 (-.f64 2/3 z)) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (sqrt.f64 x) (*.f64 x (*.f64 -6 (-.f64 2/3 z))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 -6 (-.f64 2/3 z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -4 (*.f64 (neg.f64 z) -6))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -4 (*.f64 -6 (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 -6) (-.f64 2/3 z))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 -6) (-.f64 2/3 z)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 -6) (-.f64 2/3 z)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 -6) (-.f64 2/3 z)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (fma.f64 -6 (-.f64 2/3 z) 1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 8/27 (pow.f64 z 3)) -6) (fma.f64 z (+.f64 2/3 z) 4/9))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 4/9 (*.f64 z z)) -6) (+.f64 2/3 z))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -6 (-.f64 8/27 (pow.f64 z 3))) (fma.f64 z (+.f64 2/3 z) 4/9))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -6 (-.f64 4/9 (*.f64 z z))) (+.f64 2/3 z))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 -6 (-.f64 2/3 z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (E.f64) (log.f64 (*.f64 -6 (-.f64 2/3 z))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (-.f64 2/3 z) 2) 36) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 -6 (-.f64 2/3 z))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 -6 (-.f64 2/3 z))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (-.f64 2/3 z) 3) -216) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 -6 (-.f64 2/3 z)))) 2)) (cbrt.f64 (log.f64 (*.f64 -6 (-.f64 2/3 z)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 -6 (-.f64 2/3 z))))) (sqrt.f64 (log.f64 (*.f64 -6 (-.f64 2/3 z)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (pow.f64 (-.f64 2/3 z) 2) 36))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 -6) (-.f64 2/3 z)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 -6 (-.f64 2/3 z)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (-.f64 2/3 z) 3) -216))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 -6 (-.f64 2/3 z))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (*.f64 (log1p.f64 (*.f64 -6 (-.f64 2/3 z))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 -6 (-.f64 2/3 z))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 -6 (-.f64 2/3 z))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 -6 (-.f64 2/3 z))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 -6 (-.f64 2/3 z)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 -6 (-.f64 2/3 z)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 -6 (-.f64 2/3 z)))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 -6 (-.f64 2/3 z))) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 -6 (-.f64 2/3 z))) 3) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 -6 (-.f64 2/3 z) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 -6 (-.f64 2/3 z) 1) 1 -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 -6 (-.f64 2/3 z) 1)) (cbrt.f64 (pow.f64 (fma.f64 -6 (-.f64 2/3 z) 1) 2)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (fma.f64 -6 (-.f64 2/3 z) 1) 2)) (cbrt.f64 (fma.f64 -6 (-.f64 2/3 z) 1)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 -6 (-.f64 2/3 z) 1)) (sqrt.f64 (fma.f64 -6 (-.f64 2/3 z) 1)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (pow.f64 (-.f64 2/3 z) 3) -216 1) (/.f64 1 (fma.f64 (*.f64 -6 (-.f64 2/3 z)) (fma.f64 -6 (-.f64 2/3 z) -1) 1)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 1 (*.f64 (pow.f64 (-.f64 2/3 z) 2) 36)) (/.f64 1 (+.f64 1 (*.f64 6 (-.f64 2/3 z)))) -1)))))

simplify34.0ms (0.2%)

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

Useful iterations: 2 (0.0ms)

IterNodesCost
013171
123162
239144
348144
Stop Event
saturated
Counts
107 → 92
Calls
Call 1
Inputs
(*.f64 -3 x)
(+.f64 (*.f64 -3 x) (*.f64 6 (*.f64 z x)))
(+.f64 (*.f64 -3 x) (*.f64 6 (*.f64 z x)))
(+.f64 (*.f64 -3 x) (*.f64 6 (*.f64 z x)))
(*.f64 6 (*.f64 z x))
(+.f64 (*.f64 -3 x) (*.f64 6 (*.f64 z x)))
(+.f64 (*.f64 -3 x) (*.f64 6 (*.f64 z x)))
(+.f64 (*.f64 -3 x) (*.f64 6 (*.f64 z x)))
(*.f64 6 (*.f64 z x))
(+.f64 (*.f64 -3 x) (*.f64 6 (*.f64 z x)))
(+.f64 (*.f64 -3 x) (*.f64 6 (*.f64 z x)))
(+.f64 (*.f64 -3 x) (*.f64 6 (*.f64 z x)))
-4
(-.f64 (*.f64 6 z) 4)
(-.f64 (*.f64 6 z) 4)
(-.f64 (*.f64 6 z) 4)
(*.f64 6 z)
(-.f64 (*.f64 6 z) 4)
(-.f64 (*.f64 6 z) 4)
(-.f64 (*.f64 6 z) 4)
(*.f64 6 z)
(-.f64 (*.f64 6 z) 4)
(-.f64 (*.f64 6 z) 4)
(-.f64 (*.f64 6 z) 4)
Outputs
(*.f64 -3 x)
(+.f64 (*.f64 -3 x) (*.f64 6 (*.f64 z x)))
(fma.f64 -3 x (*.f64 6 (*.f64 x z)))
(*.f64 x (+.f64 (*.f64 6 z) -3))
(*.f64 x (fma.f64 6 z -3))
(+.f64 (*.f64 -3 x) (*.f64 6 (*.f64 z x)))
(fma.f64 -3 x (*.f64 6 (*.f64 x z)))
(*.f64 x (+.f64 (*.f64 6 z) -3))
(*.f64 x (fma.f64 6 z -3))
(+.f64 (*.f64 -3 x) (*.f64 6 (*.f64 z x)))
(fma.f64 -3 x (*.f64 6 (*.f64 x z)))
(*.f64 x (+.f64 (*.f64 6 z) -3))
(*.f64 x (fma.f64 6 z -3))
(*.f64 6 (*.f64 z x))
(*.f64 6 (*.f64 x z))
(*.f64 x (*.f64 6 z))
(+.f64 (*.f64 -3 x) (*.f64 6 (*.f64 z x)))
(fma.f64 -3 x (*.f64 6 (*.f64 x z)))
(*.f64 x (+.f64 (*.f64 6 z) -3))
(*.f64 x (fma.f64 6 z -3))
(+.f64 (*.f64 -3 x) (*.f64 6 (*.f64 z x)))
(fma.f64 -3 x (*.f64 6 (*.f64 x z)))
(*.f64 x (+.f64 (*.f64 6 z) -3))
(*.f64 x (fma.f64 6 z -3))
(+.f64 (*.f64 -3 x) (*.f64 6 (*.f64 z x)))
(fma.f64 -3 x (*.f64 6 (*.f64 x z)))
(*.f64 x (+.f64 (*.f64 6 z) -3))
(*.f64 x (fma.f64 6 z -3))
(*.f64 6 (*.f64 z x))
(*.f64 6 (*.f64 x z))
(*.f64 x (*.f64 6 z))
(+.f64 (*.f64 -3 x) (*.f64 6 (*.f64 z x)))
(fma.f64 -3 x (*.f64 6 (*.f64 x z)))
(*.f64 x (+.f64 (*.f64 6 z) -3))
(*.f64 x (fma.f64 6 z -3))
(+.f64 (*.f64 -3 x) (*.f64 6 (*.f64 z x)))
(fma.f64 -3 x (*.f64 6 (*.f64 x z)))
(*.f64 x (+.f64 (*.f64 6 z) -3))
(*.f64 x (fma.f64 6 z -3))
(+.f64 (*.f64 -3 x) (*.f64 6 (*.f64 z x)))
(fma.f64 -3 x (*.f64 6 (*.f64 x z)))
(*.f64 x (+.f64 (*.f64 6 z) -3))
(*.f64 x (fma.f64 6 z -3))
-4
(-.f64 (*.f64 6 z) 4)
(fma.f64 6 z -4)
(-.f64 (*.f64 6 z) 4)
(fma.f64 6 z -4)
(-.f64 (*.f64 6 z) 4)
(fma.f64 6 z -4)
(*.f64 6 z)
(-.f64 (*.f64 6 z) 4)
(fma.f64 6 z -4)
(-.f64 (*.f64 6 z) 4)
(fma.f64 6 z -4)
(-.f64 (*.f64 6 z) 4)
(fma.f64 6 z -4)
(*.f64 6 z)
(-.f64 (*.f64 6 z) 4)
(fma.f64 6 z -4)
(-.f64 (*.f64 6 z) 4)
(fma.f64 6 z -4)
(-.f64 (*.f64 6 z) 4)
(fma.f64 6 z -4)

localize8.0ms (0.1%)

Compiler

Compiled 8 to 6 computations (25% saved)

localize28.0ms (0.2%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(-.f64 (*.f64 6 z) 3)
0.1b
(*.f64 (-.f64 (*.f64 6 z) 3) x)
Compiler

Compiled 22 to 16 computations (27.3% saved)

series7.0ms (0.1%)

Counts
2 → 15
Calls

9 calls:

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

rewrite103.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
839×pow1_binary64
783×add-log-exp_binary64
783×log1p-expm1-u_binary64
783×expm1-log1p-u_binary64
770×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0813
117313
2206813
Stop Event
node limit
Counts
2 → 51
Calls
Call 1
Inputs
(*.f64 (-.f64 (*.f64 6 z) 3) x)
(-.f64 (*.f64 6 z) 3)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 6 z) x) (*.f64 -3 x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (*.f64 6 z)) (*.f64 x -3))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 (fma.f64 6 z -3) x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 216 (pow.f64 z 3)) -27) x) (+.f64 (*.f64 36 (*.f64 z z)) (+.f64 9 (*.f64 z 18))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 36 (*.f64 z z)) -9) x) (fma.f64 6 z 3))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (+.f64 (*.f64 216 (pow.f64 z 3)) -27)) (+.f64 (*.f64 36 (*.f64 z z)) (+.f64 9 (*.f64 z 18))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (+.f64 (*.f64 36 (*.f64 z z)) -9)) (fma.f64 6 z 3))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (fma.f64 6 z -3) x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (fma.f64 6 z -3) x) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (fma.f64 6 z -3) x)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (fma.f64 6 z -3) x)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (fma.f64 6 z -3) x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (fma.f64 6 z -3)) x))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (fma.f64 6 z -3) x) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (fma.f64 6 z -3) 3) (pow.f64 x 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 x 3) (pow.f64 (fma.f64 6 z -3) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (fma.f64 6 z -3) x)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (fma.f64 6 z -3) x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (fma.f64 6 z -3) x)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 6 z) -3)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -3 (*.f64 6 z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 6 z -3) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 6 z -3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 6 z -3)) (pow.f64 (cbrt.f64 (fma.f64 6 z -3)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 6 z -3)) 2) (cbrt.f64 (fma.f64 6 z -3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 6 z -3)) (sqrt.f64 (fma.f64 6 z -3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 216 (pow.f64 z 3)) -27) (/.f64 1 (+.f64 (*.f64 36 (*.f64 z z)) (+.f64 9 (*.f64 z 18)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 36 (*.f64 z z)) -9) (/.f64 1 (fma.f64 6 z 3)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (*.f64 36 (*.f64 z z)) (+.f64 9 (*.f64 z 18))) (+.f64 (*.f64 216 (pow.f64 z 3)) -27)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 6 z 3) (+.f64 (*.f64 36 (*.f64 z z)) -9)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 216 (pow.f64 z 3)) -27) (+.f64 (*.f64 36 (*.f64 z z)) (+.f64 9 (*.f64 z 18))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 216 (pow.f64 z 3)) -27) (+.f64 (*.f64 36 (*.f64 z z)) (-.f64 9 (*.f64 (*.f64 6 z) -3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 36 (*.f64 z z)) -9) (fma.f64 6 z 3))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 36 (*.f64 z z)) -9) (-.f64 (*.f64 6 z) -3))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (*.f64 216 (pow.f64 z 3)) -27)) (neg.f64 (+.f64 (*.f64 36 (*.f64 z z)) (+.f64 9 (*.f64 z 18)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (*.f64 36 (*.f64 z z)) -9)) (neg.f64 (fma.f64 6 z 3)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 6 z -3) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 6 z -3) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 6 z -3)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 6 z -3)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 6 z -3) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 6 z -3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 6 z -3) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 6 z -3)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 6 z -3)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 6 z -3)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 6 z -3)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 z 6 -3)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 6 z) -3)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 6 z)) 2) (cbrt.f64 (*.f64 6 z)) -3)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 6 z)) (sqrt.f64 (*.f64 6 z)) -3)))))

simplify17.0ms (0.1%)

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

Useful iterations: 2 (0.0ms)

IterNodesCost
010126
117117
23199
34099
Stop Event
saturated
Counts
66 → 58
Calls
Call 1
Inputs
(*.f64 -3 x)
(+.f64 (*.f64 -3 x) (*.f64 6 (*.f64 z x)))
(+.f64 (*.f64 -3 x) (*.f64 6 (*.f64 z x)))
(+.f64 (*.f64 -3 x) (*.f64 6 (*.f64 z x)))
(*.f64 6 (*.f64 z x))
(+.f64 (*.f64 -3 x) (*.f64 6 (*.f64 z x)))
(+.f64 (*.f64 -3 x) (*.f64 6 (*.f64 z x)))
(+.f64 (*.f64 -3 x) (*.f64 6 (*.f64 z x)))
(*.f64 6 (*.f64 z x))
(+.f64 (*.f64 -3 x) (*.f64 6 (*.f64 z x)))
(+.f64 (*.f64 -3 x) (*.f64 6 (*.f64 z x)))
(+.f64 (*.f64 -3 x) (*.f64 6 (*.f64 z x)))
-3
(*.f64 6 z)
(*.f64 6 z)
Outputs
(*.f64 -3 x)
(+.f64 (*.f64 -3 x) (*.f64 6 (*.f64 z x)))
(fma.f64 -3 x (*.f64 6 (*.f64 x z)))
(*.f64 x (+.f64 -3 (*.f64 6 z)))
(*.f64 x (fma.f64 6 z -3))
(+.f64 (*.f64 -3 x) (*.f64 6 (*.f64 z x)))
(fma.f64 -3 x (*.f64 6 (*.f64 x z)))
(*.f64 x (+.f64 -3 (*.f64 6 z)))
(*.f64 x (fma.f64 6 z -3))
(+.f64 (*.f64 -3 x) (*.f64 6 (*.f64 z x)))
(fma.f64 -3 x (*.f64 6 (*.f64 x z)))
(*.f64 x (+.f64 -3 (*.f64 6 z)))
(*.f64 x (fma.f64 6 z -3))
(*.f64 6 (*.f64 z x))
(*.f64 6 (*.f64 x z))
(*.f64 x (*.f64 6 z))
(+.f64 (*.f64 -3 x) (*.f64 6 (*.f64 z x)))
(fma.f64 -3 x (*.f64 6 (*.f64 x z)))
(*.f64 x (+.f64 -3 (*.f64 6 z)))
(*.f64 x (fma.f64 6 z -3))
(+.f64 (*.f64 -3 x) (*.f64 6 (*.f64 z x)))
(fma.f64 -3 x (*.f64 6 (*.f64 x z)))
(*.f64 x (+.f64 -3 (*.f64 6 z)))
(*.f64 x (fma.f64 6 z -3))
(+.f64 (*.f64 -3 x) (*.f64 6 (*.f64 z x)))
(fma.f64 -3 x (*.f64 6 (*.f64 x z)))
(*.f64 x (+.f64 -3 (*.f64 6 z)))
(*.f64 x (fma.f64 6 z -3))
(*.f64 6 (*.f64 z x))
(*.f64 6 (*.f64 x z))
(*.f64 x (*.f64 6 z))
(+.f64 (*.f64 -3 x) (*.f64 6 (*.f64 z x)))
(fma.f64 -3 x (*.f64 6 (*.f64 x z)))
(*.f64 x (+.f64 -3 (*.f64 6 z)))
(*.f64 x (fma.f64 6 z -3))
(+.f64 (*.f64 -3 x) (*.f64 6 (*.f64 z x)))
(fma.f64 -3 x (*.f64 6 (*.f64 x z)))
(*.f64 x (+.f64 -3 (*.f64 6 z)))
(*.f64 x (fma.f64 6 z -3))
(+.f64 (*.f64 -3 x) (*.f64 6 (*.f64 z x)))
(fma.f64 -3 x (*.f64 6 (*.f64 x z)))
(*.f64 x (+.f64 -3 (*.f64 6 z)))
(*.f64 x (fma.f64 6 z -3))
-3
(*.f64 6 z)
(*.f64 6 z)

localize14.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(-.f64 2/3 z)
0.0b
(*.f64 (-.f64 y x) 6)
0.0b
(+.f64 x (*.f64 (*.f64 (-.f64 y x) 6) (-.f64 2/3 z)))
0.3b
(*.f64 (*.f64 (-.f64 y x) 6) (-.f64 2/3 z))
Compiler

Compiled 39 to 21 computations (46.2% saved)

series5.0ms (0%)

Counts
2 → 72
Calls

18 calls:

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

rewrite73.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
612×log-prod_binary64
447×fma-def_binary64
344×pow2_binary64
236×expm1-udef_binary64
236×log1p-udef_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01129
125327
2359127
Stop Event
node limit
Counts
2 → 91
Calls
Call 1
Inputs
(*.f64 (*.f64 (-.f64 y x) 6) (-.f64 2/3 z))
(+.f64 x (*.f64 (*.f64 (-.f64 y x) 6) (-.f64 2/3 z)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (-.f64 y x) (*.f64 6 (-.f64 2/3 z))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 2/3 (*.f64 (-.f64 y x) 6)) (*.f64 (neg.f64 z) (*.f64 (-.f64 y x) 6)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (-.f64 y x) 6) 2/3) (*.f64 (*.f64 (-.f64 y x) 6) (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (-.f64 y x)) (*.f64 6 (-.f64 2/3 z)))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (-.f64 y x)) (*.f64 6 (-.f64 2/3 z))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (-.f64 y x)) (*.f64 6 (-.f64 2/3 z))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (-.f64 y x)) (*.f64 6 (-.f64 2/3 z))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (-.f64 y x) (*.f64 6 (-.f64 2/3 z))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 y 3) (pow.f64 x 3)) (*.f64 6 (-.f64 2/3 z))) (fma.f64 x (+.f64 y x) (*.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (*.f64 6 (-.f64 2/3 z))) (+.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 8/27 (pow.f64 z 3)) (*.f64 (-.f64 y x) 6)) (fma.f64 z (+.f64 2/3 z) 4/9))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 4/9 (*.f64 z z)) (*.f64 (-.f64 y x) 6)) (+.f64 2/3 z))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (-.f64 y x) 6) (-.f64 8/27 (pow.f64 z 3))) (fma.f64 z (+.f64 2/3 z) 4/9))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (-.f64 y x) 6) (-.f64 4/9 (*.f64 z z))) (+.f64 2/3 z))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (-.f64 y x) (*.f64 6 (-.f64 2/3 z))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (-.f64 y x) (*.f64 6 (-.f64 2/3 z))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (-.f64 y x) (*.f64 6 (-.f64 2/3 z)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (-.f64 y x) (*.f64 6 (-.f64 2/3 z)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (-.f64 y x) (*.f64 6 (-.f64 2/3 z))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (-.f64 y x) (*.f64 6 (-.f64 2/3 z))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (-.f64 y x)) (*.f64 6 (-.f64 2/3 z))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (-.f64 y x) (*.f64 6 (-.f64 2/3 z))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (-.f64 y x) (*.f64 6 (-.f64 2/3 z))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (-.f64 y x) (*.f64 6 (-.f64 2/3 z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (-.f64 y x) (*.f64 6 (-.f64 2/3 z)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (-.f64 y x) (*.f64 6 (-.f64 2/3 z)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (-.f64 y x) (*.f64 6 (-.f64 2/3 z)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 y x) 6) 2/3 (*.f64 (*.f64 (-.f64 y x) 6) (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 2/3 (*.f64 (-.f64 y x) 6) (*.f64 (neg.f64 z) (*.f64 (-.f64 y x) 6)))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 (-.f64 y x) (*.f64 6 (-.f64 2/3 z)) x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 x x) (-.f64 x (*.f64 (-.f64 y x) (*.f64 6 (-.f64 2/3 z))))) (/.f64 (pow.f64 (*.f64 (-.f64 y x) (*.f64 6 (-.f64 2/3 z))) 2) (-.f64 x (*.f64 (-.f64 y x) (*.f64 6 (-.f64 2/3 z))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (-.f64 y x) (*.f64 6 (-.f64 2/3 z)) x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 (-.f64 y x) (*.f64 6 (-.f64 2/3 z)) x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 (-.f64 y x) (*.f64 6 (-.f64 2/3 z)) x)) (pow.f64 (cbrt.f64 (fma.f64 (-.f64 y x) (*.f64 6 (-.f64 2/3 z)) x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 (-.f64 y x) (*.f64 6 (-.f64 2/3 z)) x)) 2) (cbrt.f64 (fma.f64 (-.f64 y x) (*.f64 6 (-.f64 2/3 z)) x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 (-.f64 y x) (*.f64 6 (-.f64 2/3 z)) x)) (sqrt.f64 (fma.f64 (-.f64 y x) (*.f64 6 (-.f64 2/3 z)) x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 x 3) (pow.f64 (*.f64 (-.f64 y x) (*.f64 6 (-.f64 2/3 z))) 3)) (/.f64 1 (fma.f64 (*.f64 (-.f64 y x) (*.f64 6 (-.f64 2/3 z))) (fma.f64 (-.f64 y x) (*.f64 6 (-.f64 2/3 z)) (neg.f64 x)) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 (-.f64 y x) (*.f64 6 (-.f64 2/3 z))) 2)) (/.f64 1 (-.f64 x (*.f64 (-.f64 y x) (*.f64 6 (-.f64 2/3 z))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (*.f64 (-.f64 y x) (*.f64 6 (-.f64 2/3 z))) (fma.f64 (-.f64 y x) (*.f64 6 (-.f64 2/3 z)) (neg.f64 x)) (*.f64 x x)) (+.f64 (pow.f64 x 3) (pow.f64 (*.f64 (-.f64 y x) (*.f64 6 (-.f64 2/3 z))) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 x (*.f64 (-.f64 y x) (*.f64 6 (-.f64 2/3 z)))) (-.f64 (*.f64 x x) (pow.f64 (*.f64 (-.f64 y x) (*.f64 6 (-.f64 2/3 z))) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 x 3) (pow.f64 (*.f64 (-.f64 y x) (*.f64 6 (-.f64 2/3 z))) 3)) (fma.f64 (*.f64 (-.f64 y x) (*.f64 6 (-.f64 2/3 z))) (fma.f64 (-.f64 y x) (*.f64 6 (-.f64 2/3 z)) (neg.f64 x)) (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 x 3) (pow.f64 (*.f64 (-.f64 y x) (*.f64 6 (-.f64 2/3 z))) 3)) (+.f64 (pow.f64 (*.f64 (-.f64 y x) (*.f64 6 (-.f64 2/3 z))) 2) (-.f64 (*.f64 x x) (*.f64 x (*.f64 (-.f64 y x) (*.f64 6 (-.f64 2/3 z)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 (-.f64 y x) (*.f64 6 (-.f64 2/3 z))) 2)) (-.f64 x (*.f64 (-.f64 y x) (*.f64 6 (-.f64 2/3 z)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 x 3) (pow.f64 (*.f64 (-.f64 y x) (*.f64 6 (-.f64 2/3 z))) 3))) (neg.f64 (fma.f64 (*.f64 (-.f64 y x) (*.f64 6 (-.f64 2/3 z))) (fma.f64 (-.f64 y x) (*.f64 6 (-.f64 2/3 z)) (neg.f64 x)) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 (-.f64 y x) (*.f64 6 (-.f64 2/3 z))) 2))) (neg.f64 (-.f64 x (*.f64 (-.f64 y x) (*.f64 6 (-.f64 2/3 z))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (-.f64 y x) (*.f64 6 (-.f64 2/3 z))) 2) (*.f64 x x)) (fma.f64 (-.f64 y x) (*.f64 6 (-.f64 2/3 z)) (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 (-.f64 y x) (*.f64 6 (-.f64 2/3 z)) x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (-.f64 y x) (*.f64 6 (-.f64 2/3 z)) x) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (-.f64 y x) (*.f64 6 (-.f64 2/3 z)) x) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 (-.f64 y x) (*.f64 6 (-.f64 2/3 z)) x)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 (-.f64 y x) (*.f64 6 (-.f64 2/3 z)) x)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 (*.f64 (-.f64 y x) (*.f64 6 (-.f64 2/3 z))) (fma.f64 (-.f64 y x) (*.f64 6 (-.f64 2/3 z)) (neg.f64 x)) (*.f64 x x)) (+.f64 (pow.f64 x 3) (pow.f64 (*.f64 (-.f64 y x) (*.f64 6 (-.f64 2/3 z))) 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (-.f64 x (*.f64 (-.f64 y x) (*.f64 6 (-.f64 2/3 z)))) (-.f64 (*.f64 x x) (pow.f64 (*.f64 (-.f64 y x) (*.f64 6 (-.f64 2/3 z))) 2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 (-.f64 y x) (*.f64 6 (-.f64 2/3 z)) x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 (-.f64 y x) (*.f64 6 (-.f64 2/3 z)) x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 (-.f64 y x) (*.f64 6 (-.f64 2/3 z)) x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 x)) (pow.f64 (exp.f64 (-.f64 y x)) (*.f64 6 (-.f64 2/3 z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 x) (+.f64 1 (expm1.f64 (*.f64 (-.f64 y x) (*.f64 6 (-.f64 2/3 z)))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 x)) (+.f64 1 (expm1.f64 (*.f64 (-.f64 y x) (*.f64 6 (-.f64 2/3 z)))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (-.f64 y x) (*.f64 6 (-.f64 2/3 z))))) (exp.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 (-.f64 y x)) (*.f64 6 (-.f64 2/3 z))) (+.f64 1 (expm1.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (-.f64 y x) (*.f64 6 (-.f64 2/3 z))))) (+.f64 1 (expm1.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 (-.f64 y x) (*.f64 6 (-.f64 2/3 z)) x) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 (-.f64 y x) (*.f64 6 (-.f64 2/3 z)) x)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 (-.f64 y x) (*.f64 6 (-.f64 2/3 z)) x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 (-.f64 y x) (*.f64 6 (-.f64 2/3 z)) x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 (-.f64 y x) (*.f64 6 (-.f64 2/3 z)) x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x 1 (*.f64 (-.f64 y x) (*.f64 6 (-.f64 2/3 z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 y x) (*.f64 6 (-.f64 2/3 z)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 6 (*.f64 (-.f64 y x) (-.f64 2/3 z)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 y x) 6) (-.f64 2/3 z) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 2/3 z) (*.f64 (-.f64 y x) 6) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 y x) (*.f64 6 (-.f64 2/3 z))) 1 x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 x (*.f64 (-.f64 y x) (*.f64 6 (-.f64 2/3 z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (-.f64 y x) (*.f64 6 (-.f64 2/3 z))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (-.f64 2/3 z) 2)) (*.f64 (cbrt.f64 (-.f64 2/3 z)) (*.f64 (-.f64 y x) 6)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 36 (pow.f64 (-.f64 y x) 2))) (*.f64 (cbrt.f64 (*.f64 (-.f64 y x) 6)) (-.f64 2/3 z)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 x) (pow.f64 (cbrt.f64 x) 2) (*.f64 (-.f64 y x) (*.f64 6 (-.f64 2/3 z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x) (*.f64 (-.f64 y x) (*.f64 6 (-.f64 2/3 z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (-.f64 y x) (*.f64 6 (-.f64 2/3 z)))) (pow.f64 (cbrt.f64 (*.f64 (-.f64 y x) (*.f64 6 (-.f64 2/3 z)))) 2) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 y x) (*.f64 6 (-.f64 2/3 z)))) 2) (cbrt.f64 (*.f64 (-.f64 y x) (*.f64 6 (-.f64 2/3 z)))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 y x)) 2) (*.f64 (cbrt.f64 (-.f64 y x)) (*.f64 6 (-.f64 2/3 z))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 2/3 z)) (*.f64 (sqrt.f64 (-.f64 2/3 z)) (*.f64 (-.f64 y x) 6)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (-.f64 y x) 6)) (*.f64 (sqrt.f64 (*.f64 (-.f64 y x) 6)) (-.f64 2/3 z)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (sqrt.f64 x) (*.f64 (-.f64 y x) (*.f64 6 (-.f64 2/3 z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (-.f64 y x) (*.f64 6 (-.f64 2/3 z)))) (sqrt.f64 (*.f64 (-.f64 y x) (*.f64 6 (-.f64 2/3 z)))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 y x)) (*.f64 (sqrt.f64 (-.f64 y x)) (*.f64 6 (-.f64 2/3 z))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 6 (-.f64 2/3 z)) (-.f64 y x) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 (-.f64 y x) 6) (cbrt.f64 (pow.f64 (-.f64 2/3 z) 2))) (cbrt.f64 (-.f64 2/3 z)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 (-.f64 y x) 6) (sqrt.f64 (-.f64 2/3 z))) (sqrt.f64 (-.f64 2/3 z)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 2/3 z) (-.f64 y x)) 6 x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 2/3 z) (cbrt.f64 (*.f64 36 (pow.f64 (-.f64 y x) 2)))) (cbrt.f64 (*.f64 (-.f64 y x) 6)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 2/3 z) (sqrt.f64 (*.f64 (-.f64 y x) 6))) (sqrt.f64 (*.f64 (-.f64 y x) 6)) x)))))

simplify414.0ms (2.8%)

Algorithm
egg-herbie
Rules
5387×fma-neg_binary64
685×unsub-neg_binary64
407×fma-def_binary64
284×sub-neg_binary64
249×associate--r+_binary64
Iterations

Useful iterations: 20 (0.0ms)

IterNodesCost
0381345
1911285
22311081
3733775
41845775
53922775
65411775
76089775
86416775
96500775
106545775
116561775
126561775
136585775
146605775
156611775
166613775
176615775
186615775
196851775
206851772
Stop Event
node limit
Counts
163 → 112
Calls
Call 1
Inputs
(*.f64 -6 (*.f64 (-.f64 2/3 z) x))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(*.f64 6 (*.f64 y (-.f64 2/3 z)))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(*.f64 6 (*.f64 y (-.f64 2/3 z)))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(*.f64 6 (*.f64 y (-.f64 2/3 z)))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(*.f64 -6 (*.f64 (-.f64 2/3 z) x))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(*.f64 -6 (*.f64 (-.f64 2/3 z) x))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(*.f64 4 (-.f64 y x))
(+.f64 (*.f64 4 (-.f64 y x)) (*.f64 -6 (*.f64 z (-.f64 y x))))
(+.f64 (*.f64 4 (-.f64 y x)) (*.f64 -6 (*.f64 z (-.f64 y x))))
(+.f64 (*.f64 4 (-.f64 y x)) (*.f64 -6 (*.f64 z (-.f64 y x))))
(*.f64 -6 (*.f64 z (-.f64 y x)))
(+.f64 (*.f64 4 (-.f64 y x)) (*.f64 -6 (*.f64 z (-.f64 y x))))
(+.f64 (*.f64 4 (-.f64 y x)) (*.f64 -6 (*.f64 z (-.f64 y x))))
(+.f64 (*.f64 4 (-.f64 y x)) (*.f64 -6 (*.f64 z (-.f64 y x))))
(*.f64 -6 (*.f64 z (-.f64 y x)))
(+.f64 (*.f64 4 (-.f64 y x)) (*.f64 -6 (*.f64 z (-.f64 y x))))
(+.f64 (*.f64 4 (-.f64 y x)) (*.f64 -6 (*.f64 z (-.f64 y x))))
(+.f64 (*.f64 4 (-.f64 y x)) (*.f64 -6 (*.f64 z (-.f64 y x))))
(*.f64 6 (*.f64 y (-.f64 2/3 z)))
(+.f64 (*.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(+.f64 (*.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(+.f64 (*.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(*.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x)
(+.f64 (*.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(+.f64 (*.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(+.f64 (*.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(*.f64 -1 (*.f64 (-.f64 (*.f64 6 (-.f64 2/3 z)) 1) x))
(+.f64 (*.f64 6 (*.f64 y (-.f64 2/3 z))) (*.f64 -1 (*.f64 (-.f64 (*.f64 6 (-.f64 2/3 z)) 1) x)))
(+.f64 (*.f64 6 (*.f64 y (-.f64 2/3 z))) (*.f64 -1 (*.f64 (-.f64 (*.f64 6 (-.f64 2/3 z)) 1) x)))
(+.f64 (*.f64 6 (*.f64 y (-.f64 2/3 z))) (*.f64 -1 (*.f64 (-.f64 (*.f64 6 (-.f64 2/3 z)) 1) x)))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) x)
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (+.f64 (*.f64 6 (*.f64 y (-.f64 2/3 z))) x))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (+.f64 (*.f64 6 (*.f64 y (-.f64 2/3 z))) x))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (+.f64 (*.f64 6 (*.f64 y (-.f64 2/3 z))) x))
(*.f64 6 (*.f64 y (-.f64 2/3 z)))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (+.f64 x (*.f64 6 (*.f64 y (-.f64 2/3 z)))))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (+.f64 x (*.f64 6 (*.f64 y (-.f64 2/3 z)))))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (+.f64 x (*.f64 6 (*.f64 y (-.f64 2/3 z)))))
(*.f64 6 (*.f64 y (-.f64 2/3 z)))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (+.f64 x (*.f64 6 (*.f64 y (-.f64 2/3 z)))))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (+.f64 x (*.f64 6 (*.f64 y (-.f64 2/3 z)))))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (+.f64 x (*.f64 6 (*.f64 y (-.f64 2/3 z)))))
(+.f64 (*.f64 4 (-.f64 y x)) x)
(+.f64 (*.f64 4 (-.f64 y x)) (+.f64 (*.f64 -6 (*.f64 z (-.f64 y x))) x))
(+.f64 (*.f64 4 (-.f64 y x)) (+.f64 (*.f64 -6 (*.f64 z (-.f64 y x))) x))
(+.f64 (*.f64 4 (-.f64 y x)) (+.f64 (*.f64 -6 (*.f64 z (-.f64 y x))) x))
(*.f64 -6 (*.f64 z (-.f64 y x)))
(+.f64 (*.f64 4 (-.f64 y x)) (+.f64 (*.f64 -6 (*.f64 z (-.f64 y x))) x))
(+.f64 (*.f64 4 (-.f64 y x)) (+.f64 (*.f64 -6 (*.f64 z (-.f64 y x))) x))
(+.f64 (*.f64 4 (-.f64 y x)) (+.f64 (*.f64 -6 (*.f64 z (-.f64 y x))) x))
(*.f64 -6 (*.f64 z (-.f64 y x)))
(+.f64 (*.f64 4 (-.f64 y x)) (+.f64 (*.f64 -6 (*.f64 z (-.f64 y x))) x))
(+.f64 (*.f64 4 (-.f64 y x)) (+.f64 (*.f64 -6 (*.f64 z (-.f64 y x))) x))
(+.f64 (*.f64 4 (-.f64 y x)) (+.f64 (*.f64 -6 (*.f64 z (-.f64 y x))) x))
Outputs
(*.f64 -6 (*.f64 (-.f64 2/3 z) x))
(*.f64 x (fma.f64 6 z -4))
(*.f64 x (fma.f64 z 6 -4))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (*.f64 6 y) (-.f64 2/3 z)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (-.f64 2/3 z) (*.f64 6 y)))
(*.f64 (-.f64 2/3 z) (+.f64 (*.f64 6 y) (*.f64 -6 x)))
(*.f64 (-.f64 y x) (fma.f64 -6 z 4))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (*.f64 6 y) (-.f64 2/3 z)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (-.f64 2/3 z) (*.f64 6 y)))
(*.f64 (-.f64 2/3 z) (+.f64 (*.f64 6 y) (*.f64 -6 x)))
(*.f64 (-.f64 y x) (fma.f64 -6 z 4))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (*.f64 6 y) (-.f64 2/3 z)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (-.f64 2/3 z) (*.f64 6 y)))
(*.f64 (-.f64 2/3 z) (+.f64 (*.f64 6 y) (*.f64 -6 x)))
(*.f64 (-.f64 y x) (fma.f64 -6 z 4))
(*.f64 6 (*.f64 y (-.f64 2/3 z)))
(*.f64 (*.f64 6 y) (-.f64 2/3 z))
(*.f64 (-.f64 2/3 z) (*.f64 6 y))
(*.f64 y (fma.f64 -6 z 4))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (*.f64 6 y) (-.f64 2/3 z)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (-.f64 2/3 z) (*.f64 6 y)))
(*.f64 (-.f64 2/3 z) (+.f64 (*.f64 6 y) (*.f64 -6 x)))
(*.f64 (-.f64 y x) (fma.f64 -6 z 4))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (*.f64 6 y) (-.f64 2/3 z)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (-.f64 2/3 z) (*.f64 6 y)))
(*.f64 (-.f64 2/3 z) (+.f64 (*.f64 6 y) (*.f64 -6 x)))
(*.f64 (-.f64 y x) (fma.f64 -6 z 4))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (*.f64 6 y) (-.f64 2/3 z)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (-.f64 2/3 z) (*.f64 6 y)))
(*.f64 (-.f64 2/3 z) (+.f64 (*.f64 6 y) (*.f64 -6 x)))
(*.f64 (-.f64 y x) (fma.f64 -6 z 4))
(*.f64 6 (*.f64 y (-.f64 2/3 z)))
(*.f64 (*.f64 6 y) (-.f64 2/3 z))
(*.f64 (-.f64 2/3 z) (*.f64 6 y))
(*.f64 y (fma.f64 -6 z 4))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (*.f64 6 y) (-.f64 2/3 z)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (-.f64 2/3 z) (*.f64 6 y)))
(*.f64 (-.f64 2/3 z) (+.f64 (*.f64 6 y) (*.f64 -6 x)))
(*.f64 (-.f64 y x) (fma.f64 -6 z 4))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (*.f64 6 y) (-.f64 2/3 z)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (-.f64 2/3 z) (*.f64 6 y)))
(*.f64 (-.f64 2/3 z) (+.f64 (*.f64 6 y) (*.f64 -6 x)))
(*.f64 (-.f64 y x) (fma.f64 -6 z 4))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (*.f64 6 y) (-.f64 2/3 z)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (-.f64 2/3 z) (*.f64 6 y)))
(*.f64 (-.f64 2/3 z) (+.f64 (*.f64 6 y) (*.f64 -6 x)))
(*.f64 (-.f64 y x) (fma.f64 -6 z 4))
(*.f64 6 (*.f64 y (-.f64 2/3 z)))
(*.f64 (*.f64 6 y) (-.f64 2/3 z))
(*.f64 (-.f64 2/3 z) (*.f64 6 y))
(*.f64 y (fma.f64 -6 z 4))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (*.f64 6 y) (-.f64 2/3 z)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (-.f64 2/3 z) (*.f64 6 y)))
(*.f64 (-.f64 2/3 z) (+.f64 (*.f64 6 y) (*.f64 -6 x)))
(*.f64 (-.f64 y x) (fma.f64 -6 z 4))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (*.f64 6 y) (-.f64 2/3 z)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (-.f64 2/3 z) (*.f64 6 y)))
(*.f64 (-.f64 2/3 z) (+.f64 (*.f64 6 y) (*.f64 -6 x)))
(*.f64 (-.f64 y x) (fma.f64 -6 z 4))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (*.f64 6 y) (-.f64 2/3 z)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (-.f64 2/3 z) (*.f64 6 y)))
(*.f64 (-.f64 2/3 z) (+.f64 (*.f64 6 y) (*.f64 -6 x)))
(*.f64 (-.f64 y x) (fma.f64 -6 z 4))
(*.f64 -6 (*.f64 (-.f64 2/3 z) x))
(*.f64 x (fma.f64 6 z -4))
(*.f64 x (fma.f64 z 6 -4))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (*.f64 6 y) (-.f64 2/3 z)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (-.f64 2/3 z) (*.f64 6 y)))
(*.f64 (-.f64 2/3 z) (+.f64 (*.f64 6 y) (*.f64 -6 x)))
(*.f64 (-.f64 y x) (fma.f64 -6 z 4))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (*.f64 6 y) (-.f64 2/3 z)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (-.f64 2/3 z) (*.f64 6 y)))
(*.f64 (-.f64 2/3 z) (+.f64 (*.f64 6 y) (*.f64 -6 x)))
(*.f64 (-.f64 y x) (fma.f64 -6 z 4))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (*.f64 6 y) (-.f64 2/3 z)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (-.f64 2/3 z) (*.f64 6 y)))
(*.f64 (-.f64 2/3 z) (+.f64 (*.f64 6 y) (*.f64 -6 x)))
(*.f64 (-.f64 y x) (fma.f64 -6 z 4))
(*.f64 -6 (*.f64 (-.f64 2/3 z) x))
(*.f64 x (fma.f64 6 z -4))
(*.f64 x (fma.f64 z 6 -4))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (*.f64 6 y) (-.f64 2/3 z)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (-.f64 2/3 z) (*.f64 6 y)))
(*.f64 (-.f64 2/3 z) (+.f64 (*.f64 6 y) (*.f64 -6 x)))
(*.f64 (-.f64 y x) (fma.f64 -6 z 4))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (*.f64 6 y) (-.f64 2/3 z)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (-.f64 2/3 z) (*.f64 6 y)))
(*.f64 (-.f64 2/3 z) (+.f64 (*.f64 6 y) (*.f64 -6 x)))
(*.f64 (-.f64 y x) (fma.f64 -6 z 4))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (*.f64 6 y) (-.f64 2/3 z)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (-.f64 2/3 z) (*.f64 6 y)))
(*.f64 (-.f64 2/3 z) (+.f64 (*.f64 6 y) (*.f64 -6 x)))
(*.f64 (-.f64 y x) (fma.f64 -6 z 4))
(*.f64 4 (-.f64 y x))
(+.f64 (*.f64 4 (-.f64 y x)) (*.f64 -6 (*.f64 z (-.f64 y x))))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (*.f64 6 y) (-.f64 2/3 z)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (-.f64 2/3 z) (*.f64 6 y)))
(*.f64 (-.f64 2/3 z) (+.f64 (*.f64 6 y) (*.f64 -6 x)))
(*.f64 (-.f64 y x) (fma.f64 -6 z 4))
(+.f64 (*.f64 4 (-.f64 y x)) (*.f64 -6 (*.f64 z (-.f64 y x))))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (*.f64 6 y) (-.f64 2/3 z)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (-.f64 2/3 z) (*.f64 6 y)))
(*.f64 (-.f64 2/3 z) (+.f64 (*.f64 6 y) (*.f64 -6 x)))
(*.f64 (-.f64 y x) (fma.f64 -6 z 4))
(+.f64 (*.f64 4 (-.f64 y x)) (*.f64 -6 (*.f64 z (-.f64 y x))))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (*.f64 6 y) (-.f64 2/3 z)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (-.f64 2/3 z) (*.f64 6 y)))
(*.f64 (-.f64 2/3 z) (+.f64 (*.f64 6 y) (*.f64 -6 x)))
(*.f64 (-.f64 y x) (fma.f64 -6 z 4))
(*.f64 -6 (*.f64 z (-.f64 y x)))
(+.f64 (*.f64 4 (-.f64 y x)) (*.f64 -6 (*.f64 z (-.f64 y x))))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (*.f64 6 y) (-.f64 2/3 z)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (-.f64 2/3 z) (*.f64 6 y)))
(*.f64 (-.f64 2/3 z) (+.f64 (*.f64 6 y) (*.f64 -6 x)))
(*.f64 (-.f64 y x) (fma.f64 -6 z 4))
(+.f64 (*.f64 4 (-.f64 y x)) (*.f64 -6 (*.f64 z (-.f64 y x))))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (*.f64 6 y) (-.f64 2/3 z)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (-.f64 2/3 z) (*.f64 6 y)))
(*.f64 (-.f64 2/3 z) (+.f64 (*.f64 6 y) (*.f64 -6 x)))
(*.f64 (-.f64 y x) (fma.f64 -6 z 4))
(+.f64 (*.f64 4 (-.f64 y x)) (*.f64 -6 (*.f64 z (-.f64 y x))))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (*.f64 6 y) (-.f64 2/3 z)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (-.f64 2/3 z) (*.f64 6 y)))
(*.f64 (-.f64 2/3 z) (+.f64 (*.f64 6 y) (*.f64 -6 x)))
(*.f64 (-.f64 y x) (fma.f64 -6 z 4))
(*.f64 -6 (*.f64 z (-.f64 y x)))
(+.f64 (*.f64 4 (-.f64 y x)) (*.f64 -6 (*.f64 z (-.f64 y x))))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (*.f64 6 y) (-.f64 2/3 z)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (-.f64 2/3 z) (*.f64 6 y)))
(*.f64 (-.f64 2/3 z) (+.f64 (*.f64 6 y) (*.f64 -6 x)))
(*.f64 (-.f64 y x) (fma.f64 -6 z 4))
(+.f64 (*.f64 4 (-.f64 y x)) (*.f64 -6 (*.f64 z (-.f64 y x))))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (*.f64 6 y) (-.f64 2/3 z)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (-.f64 2/3 z) (*.f64 6 y)))
(*.f64 (-.f64 2/3 z) (+.f64 (*.f64 6 y) (*.f64 -6 x)))
(*.f64 (-.f64 y x) (fma.f64 -6 z 4))
(+.f64 (*.f64 4 (-.f64 y x)) (*.f64 -6 (*.f64 z (-.f64 y x))))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (*.f64 6 y) (-.f64 2/3 z)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (*.f64 (-.f64 2/3 z) (*.f64 6 y)))
(*.f64 (-.f64 2/3 z) (+.f64 (*.f64 6 y) (*.f64 -6 x)))
(*.f64 (-.f64 y x) (fma.f64 -6 z 4))
(*.f64 6 (*.f64 y (-.f64 2/3 z)))
(*.f64 (*.f64 6 y) (-.f64 2/3 z))
(*.f64 (-.f64 2/3 z) (*.f64 6 y))
(*.f64 y (fma.f64 -6 z 4))
(+.f64 (*.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x (*.f64 (*.f64 6 y) (-.f64 2/3 z)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (fma.f64 6 (*.f64 (-.f64 2/3 z) y) x))
(fma.f64 x (+.f64 -3 (*.f64 6 z)) (*.f64 y (fma.f64 -6 z 4)))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(+.f64 (*.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x (*.f64 (*.f64 6 y) (-.f64 2/3 z)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (fma.f64 6 (*.f64 (-.f64 2/3 z) y) x))
(fma.f64 x (+.f64 -3 (*.f64 6 z)) (*.f64 y (fma.f64 -6 z 4)))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(+.f64 (*.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x (*.f64 (*.f64 6 y) (-.f64 2/3 z)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (fma.f64 6 (*.f64 (-.f64 2/3 z) y) x))
(fma.f64 x (+.f64 -3 (*.f64 6 z)) (*.f64 y (fma.f64 -6 z 4)))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(*.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x)
(*.f64 x (+.f64 1 (*.f64 -6 (-.f64 2/3 z))))
(*.f64 x (fma.f64 -6 (-.f64 2/3 z) 1))
(*.f64 x (+.f64 -3 (*.f64 6 z)))
(fma.f64 x (fma.f64 6 z -4) x)
(*.f64 x (fma.f64 z 6 -3))
(+.f64 (*.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x (*.f64 (*.f64 6 y) (-.f64 2/3 z)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (fma.f64 6 (*.f64 (-.f64 2/3 z) y) x))
(fma.f64 x (+.f64 -3 (*.f64 6 z)) (*.f64 y (fma.f64 -6 z 4)))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(+.f64 (*.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x (*.f64 (*.f64 6 y) (-.f64 2/3 z)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (fma.f64 6 (*.f64 (-.f64 2/3 z) y) x))
(fma.f64 x (+.f64 -3 (*.f64 6 z)) (*.f64 y (fma.f64 -6 z 4)))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(+.f64 (*.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(fma.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x (*.f64 (*.f64 6 y) (-.f64 2/3 z)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (fma.f64 6 (*.f64 (-.f64 2/3 z) y) x))
(fma.f64 x (+.f64 -3 (*.f64 6 z)) (*.f64 y (fma.f64 -6 z 4)))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(*.f64 -1 (*.f64 (-.f64 (*.f64 6 (-.f64 2/3 z)) 1) x))
(*.f64 x (+.f64 1 (*.f64 -6 (-.f64 2/3 z))))
(*.f64 x (fma.f64 -6 (-.f64 2/3 z) 1))
(*.f64 x (+.f64 -3 (*.f64 6 z)))
(fma.f64 x (fma.f64 6 z -4) x)
(*.f64 x (fma.f64 z 6 -3))
(+.f64 (*.f64 6 (*.f64 y (-.f64 2/3 z))) (*.f64 -1 (*.f64 (-.f64 (*.f64 6 (-.f64 2/3 z)) 1) x)))
(fma.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x (*.f64 (*.f64 6 y) (-.f64 2/3 z)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (fma.f64 6 (*.f64 (-.f64 2/3 z) y) x))
(fma.f64 x (+.f64 -3 (*.f64 6 z)) (*.f64 y (fma.f64 -6 z 4)))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(+.f64 (*.f64 6 (*.f64 y (-.f64 2/3 z))) (*.f64 -1 (*.f64 (-.f64 (*.f64 6 (-.f64 2/3 z)) 1) x)))
(fma.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x (*.f64 (*.f64 6 y) (-.f64 2/3 z)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (fma.f64 6 (*.f64 (-.f64 2/3 z) y) x))
(fma.f64 x (+.f64 -3 (*.f64 6 z)) (*.f64 y (fma.f64 -6 z 4)))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(+.f64 (*.f64 6 (*.f64 y (-.f64 2/3 z))) (*.f64 -1 (*.f64 (-.f64 (*.f64 6 (-.f64 2/3 z)) 1) x)))
(fma.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x (*.f64 (*.f64 6 y) (-.f64 2/3 z)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (fma.f64 6 (*.f64 (-.f64 2/3 z) y) x))
(fma.f64 x (+.f64 -3 (*.f64 6 z)) (*.f64 y (fma.f64 -6 z 4)))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) x)
(*.f64 x (+.f64 1 (*.f64 -6 (-.f64 2/3 z))))
(*.f64 x (fma.f64 -6 (-.f64 2/3 z) 1))
(*.f64 x (+.f64 -3 (*.f64 6 z)))
(fma.f64 x (fma.f64 6 z -4) x)
(*.f64 x (fma.f64 z 6 -3))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (+.f64 (*.f64 6 (*.f64 y (-.f64 2/3 z))) x))
(fma.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x (*.f64 (*.f64 6 y) (-.f64 2/3 z)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (fma.f64 6 (*.f64 (-.f64 2/3 z) y) x))
(fma.f64 x (+.f64 -3 (*.f64 6 z)) (*.f64 y (fma.f64 -6 z 4)))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (+.f64 (*.f64 6 (*.f64 y (-.f64 2/3 z))) x))
(fma.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x (*.f64 (*.f64 6 y) (-.f64 2/3 z)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (fma.f64 6 (*.f64 (-.f64 2/3 z) y) x))
(fma.f64 x (+.f64 -3 (*.f64 6 z)) (*.f64 y (fma.f64 -6 z 4)))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (+.f64 (*.f64 6 (*.f64 y (-.f64 2/3 z))) x))
(fma.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x (*.f64 (*.f64 6 y) (-.f64 2/3 z)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (fma.f64 6 (*.f64 (-.f64 2/3 z) y) x))
(fma.f64 x (+.f64 -3 (*.f64 6 z)) (*.f64 y (fma.f64 -6 z 4)))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(*.f64 6 (*.f64 y (-.f64 2/3 z)))
(*.f64 (*.f64 6 y) (-.f64 2/3 z))
(*.f64 (-.f64 2/3 z) (*.f64 6 y))
(*.f64 y (fma.f64 -6 z 4))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (+.f64 x (*.f64 6 (*.f64 y (-.f64 2/3 z)))))
(fma.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x (*.f64 (*.f64 6 y) (-.f64 2/3 z)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (fma.f64 6 (*.f64 (-.f64 2/3 z) y) x))
(fma.f64 x (+.f64 -3 (*.f64 6 z)) (*.f64 y (fma.f64 -6 z 4)))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (+.f64 x (*.f64 6 (*.f64 y (-.f64 2/3 z)))))
(fma.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x (*.f64 (*.f64 6 y) (-.f64 2/3 z)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (fma.f64 6 (*.f64 (-.f64 2/3 z) y) x))
(fma.f64 x (+.f64 -3 (*.f64 6 z)) (*.f64 y (fma.f64 -6 z 4)))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (+.f64 x (*.f64 6 (*.f64 y (-.f64 2/3 z)))))
(fma.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x (*.f64 (*.f64 6 y) (-.f64 2/3 z)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (fma.f64 6 (*.f64 (-.f64 2/3 z) y) x))
(fma.f64 x (+.f64 -3 (*.f64 6 z)) (*.f64 y (fma.f64 -6 z 4)))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(*.f64 6 (*.f64 y (-.f64 2/3 z)))
(*.f64 (*.f64 6 y) (-.f64 2/3 z))
(*.f64 (-.f64 2/3 z) (*.f64 6 y))
(*.f64 y (fma.f64 -6 z 4))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (+.f64 x (*.f64 6 (*.f64 y (-.f64 2/3 z)))))
(fma.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x (*.f64 (*.f64 6 y) (-.f64 2/3 z)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (fma.f64 6 (*.f64 (-.f64 2/3 z) y) x))
(fma.f64 x (+.f64 -3 (*.f64 6 z)) (*.f64 y (fma.f64 -6 z 4)))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (+.f64 x (*.f64 6 (*.f64 y (-.f64 2/3 z)))))
(fma.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x (*.f64 (*.f64 6 y) (-.f64 2/3 z)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (fma.f64 6 (*.f64 (-.f64 2/3 z) y) x))
(fma.f64 x (+.f64 -3 (*.f64 6 z)) (*.f64 y (fma.f64 -6 z 4)))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (+.f64 x (*.f64 6 (*.f64 y (-.f64 2/3 z)))))
(fma.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x (*.f64 (*.f64 6 y) (-.f64 2/3 z)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (fma.f64 6 (*.f64 (-.f64 2/3 z) y) x))
(fma.f64 x (+.f64 -3 (*.f64 6 z)) (*.f64 y (fma.f64 -6 z 4)))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(+.f64 (*.f64 4 (-.f64 y x)) x)
(fma.f64 4 (-.f64 y x) x)
(fma.f64 y 4 (*.f64 x -3))
(fma.f64 x -3 (*.f64 y 4))
(+.f64 (*.f64 4 (-.f64 y x)) (+.f64 (*.f64 -6 (*.f64 z (-.f64 y x))) x))
(fma.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x (*.f64 (*.f64 6 y) (-.f64 2/3 z)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (fma.f64 6 (*.f64 (-.f64 2/3 z) y) x))
(fma.f64 x (+.f64 -3 (*.f64 6 z)) (*.f64 y (fma.f64 -6 z 4)))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(+.f64 (*.f64 4 (-.f64 y x)) (+.f64 (*.f64 -6 (*.f64 z (-.f64 y x))) x))
(fma.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x (*.f64 (*.f64 6 y) (-.f64 2/3 z)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (fma.f64 6 (*.f64 (-.f64 2/3 z) y) x))
(fma.f64 x (+.f64 -3 (*.f64 6 z)) (*.f64 y (fma.f64 -6 z 4)))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(+.f64 (*.f64 4 (-.f64 y x)) (+.f64 (*.f64 -6 (*.f64 z (-.f64 y x))) x))
(fma.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x (*.f64 (*.f64 6 y) (-.f64 2/3 z)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (fma.f64 6 (*.f64 (-.f64 2/3 z) y) x))
(fma.f64 x (+.f64 -3 (*.f64 6 z)) (*.f64 y (fma.f64 -6 z 4)))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(*.f64 -6 (*.f64 z (-.f64 y x)))
(+.f64 (*.f64 4 (-.f64 y x)) (+.f64 (*.f64 -6 (*.f64 z (-.f64 y x))) x))
(fma.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x (*.f64 (*.f64 6 y) (-.f64 2/3 z)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (fma.f64 6 (*.f64 (-.f64 2/3 z) y) x))
(fma.f64 x (+.f64 -3 (*.f64 6 z)) (*.f64 y (fma.f64 -6 z 4)))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(+.f64 (*.f64 4 (-.f64 y x)) (+.f64 (*.f64 -6 (*.f64 z (-.f64 y x))) x))
(fma.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x (*.f64 (*.f64 6 y) (-.f64 2/3 z)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (fma.f64 6 (*.f64 (-.f64 2/3 z) y) x))
(fma.f64 x (+.f64 -3 (*.f64 6 z)) (*.f64 y (fma.f64 -6 z 4)))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(+.f64 (*.f64 4 (-.f64 y x)) (+.f64 (*.f64 -6 (*.f64 z (-.f64 y x))) x))
(fma.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x (*.f64 (*.f64 6 y) (-.f64 2/3 z)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (fma.f64 6 (*.f64 (-.f64 2/3 z) y) x))
(fma.f64 x (+.f64 -3 (*.f64 6 z)) (*.f64 y (fma.f64 -6 z 4)))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(*.f64 -6 (*.f64 z (-.f64 y x)))
(+.f64 (*.f64 4 (-.f64 y x)) (+.f64 (*.f64 -6 (*.f64 z (-.f64 y x))) x))
(fma.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x (*.f64 (*.f64 6 y) (-.f64 2/3 z)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (fma.f64 6 (*.f64 (-.f64 2/3 z) y) x))
(fma.f64 x (+.f64 -3 (*.f64 6 z)) (*.f64 y (fma.f64 -6 z 4)))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(+.f64 (*.f64 4 (-.f64 y x)) (+.f64 (*.f64 -6 (*.f64 z (-.f64 y x))) x))
(fma.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x (*.f64 (*.f64 6 y) (-.f64 2/3 z)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (fma.f64 6 (*.f64 (-.f64 2/3 z) y) x))
(fma.f64 x (+.f64 -3 (*.f64 6 z)) (*.f64 y (fma.f64 -6 z 4)))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)
(+.f64 (*.f64 4 (-.f64 y x)) (+.f64 (*.f64 -6 (*.f64 z (-.f64 y x))) x))
(fma.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x (*.f64 (*.f64 6 y) (-.f64 2/3 z)))
(fma.f64 -6 (*.f64 (-.f64 2/3 z) x) (fma.f64 6 (*.f64 (-.f64 2/3 z) y) x))
(fma.f64 x (+.f64 -3 (*.f64 6 z)) (*.f64 y (fma.f64 -6 z 4)))
(fma.f64 (-.f64 y x) (fma.f64 -6 z 4) x)

localize7.0ms (0%)

Local error

Found 1 expressions with local error:

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

Compiled 16 to 11 computations (31.3% saved)

series2.0ms (0%)

Counts
1 → 24
Calls

6 calls:

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

rewrite49.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
615×pow1_binary64
571×add-log-exp_binary64
571×log1p-expm1-u_binary64
571×expm1-log1p-u_binary64
561×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify10.0ms (0.1%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
08168
112168
215168
Stop Event
saturated
Counts
45 → 25
Calls
Call 1
Inputs
(*.f64 4 y)
(+.f64 (*.f64 -3 x) (*.f64 4 y))
(+.f64 (*.f64 -3 x) (*.f64 4 y))
(+.f64 (*.f64 -3 x) (*.f64 4 y))
(*.f64 -3 x)
(+.f64 (*.f64 -3 x) (*.f64 4 y))
(+.f64 (*.f64 -3 x) (*.f64 4 y))
(+.f64 (*.f64 -3 x) (*.f64 4 y))
(*.f64 -3 x)
(+.f64 (*.f64 -3 x) (*.f64 4 y))
(+.f64 (*.f64 -3 x) (*.f64 4 y))
(+.f64 (*.f64 -3 x) (*.f64 4 y))
(*.f64 -3 x)
(+.f64 (*.f64 -3 x) (*.f64 4 y))
(+.f64 (*.f64 -3 x) (*.f64 4 y))
(+.f64 (*.f64 -3 x) (*.f64 4 y))
(*.f64 4 y)
(+.f64 (*.f64 -3 x) (*.f64 4 y))
(+.f64 (*.f64 -3 x) (*.f64 4 y))
(+.f64 (*.f64 -3 x) (*.f64 4 y))
(*.f64 4 y)
(+.f64 (*.f64 -3 x) (*.f64 4 y))
(+.f64 (*.f64 -3 x) (*.f64 4 y))
(+.f64 (*.f64 -3 x) (*.f64 4 y))
Outputs
(*.f64 4 y)
(+.f64 (*.f64 -3 x) (*.f64 4 y))
(fma.f64 -3 x (*.f64 4 y))
(fma.f64 4 y (*.f64 -3 x))
(+.f64 (*.f64 -3 x) (*.f64 4 y))
(fma.f64 -3 x (*.f64 4 y))
(fma.f64 4 y (*.f64 -3 x))
(+.f64 (*.f64 -3 x) (*.f64 4 y))
(fma.f64 -3 x (*.f64 4 y))
(fma.f64 4 y (*.f64 -3 x))
(*.f64 -3 x)
(+.f64 (*.f64 -3 x) (*.f64 4 y))
(fma.f64 -3 x (*.f64 4 y))
(fma.f64 4 y (*.f64 -3 x))
(+.f64 (*.f64 -3 x) (*.f64 4 y))
(fma.f64 -3 x (*.f64 4 y))
(fma.f64 4 y (*.f64 -3 x))
(+.f64 (*.f64 -3 x) (*.f64 4 y))
(fma.f64 -3 x (*.f64 4 y))
(fma.f64 4 y (*.f64 -3 x))
(*.f64 -3 x)
(+.f64 (*.f64 -3 x) (*.f64 4 y))
(fma.f64 -3 x (*.f64 4 y))
(fma.f64 4 y (*.f64 -3 x))
(+.f64 (*.f64 -3 x) (*.f64 4 y))
(fma.f64 -3 x (*.f64 4 y))
(fma.f64 4 y (*.f64 -3 x))
(+.f64 (*.f64 -3 x) (*.f64 4 y))
(fma.f64 -3 x (*.f64 4 y))
(fma.f64 4 y (*.f64 -3 x))
(*.f64 -3 x)
(+.f64 (*.f64 -3 x) (*.f64 4 y))
(fma.f64 -3 x (*.f64 4 y))
(fma.f64 4 y (*.f64 -3 x))
(+.f64 (*.f64 -3 x) (*.f64 4 y))
(fma.f64 -3 x (*.f64 4 y))
(fma.f64 4 y (*.f64 -3 x))
(+.f64 (*.f64 -3 x) (*.f64 4 y))
(fma.f64 -3 x (*.f64 4 y))
(fma.f64 4 y (*.f64 -3 x))
(*.f64 4 y)
(+.f64 (*.f64 -3 x) (*.f64 4 y))
(fma.f64 -3 x (*.f64 4 y))
(fma.f64 4 y (*.f64 -3 x))
(+.f64 (*.f64 -3 x) (*.f64 4 y))
(fma.f64 -3 x (*.f64 4 y))
(fma.f64 4 y (*.f64 -3 x))
(+.f64 (*.f64 -3 x) (*.f64 4 y))
(fma.f64 -3 x (*.f64 4 y))
(fma.f64 4 y (*.f64 -3 x))
(*.f64 4 y)
(+.f64 (*.f64 -3 x) (*.f64 4 y))
(fma.f64 -3 x (*.f64 4 y))
(fma.f64 4 y (*.f64 -3 x))
(+.f64 (*.f64 -3 x) (*.f64 4 y))
(fma.f64 -3 x (*.f64 4 y))
(fma.f64 4 y (*.f64 -3 x))
(+.f64 (*.f64 -3 x) (*.f64 4 y))
(fma.f64 -3 x (*.f64 4 y))
(fma.f64 4 y (*.f64 -3 x))

eval166.0ms (1.1%)

Compiler

Compiled 6622 to 4581 computations (30.8% saved)

prune71.0ms (0.5%)

Pruning

29 alts after pruning (19 fresh and 10 done)

PrunedKeptTotal
New3858393
Fresh91120
Picked011
Done1910
Total39529424
Error
0b
Counts
424 → 29
Alt Table
Click to see full alt table
StatusErrorProgram
0.4b
(+.f64 x (*.f64 (*.f64 (-.f64 y x) 6) (-.f64 2/3 z)))
31.8b
(+.f64 (*.f64 4 y) (*.f64 -6 (*.f64 y z)))
0.4b
(fma.f64 (*.f64 (-.f64 2/3 z) (-.f64 y x)) 6 x)
32.0b
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) x)
21.6b
(+.f64 (*.f64 y 4) (*.f64 x -3))
39.0b
(/.f64 (*.f64 (+.f64 (*.f64 36 (*.f64 z z)) -9) x) (fma.f64 6 z 3))
11.8b
(+.f64 (*.f64 -4 x) (+.f64 (*.f64 6 (*.f64 y (-.f64 2/3 z))) x))
31.9b
(+.f64 x (/.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (-.f64 2/3 z)) (*.f64 (+.f64 y x) 1/6)))
0.2b
(+.f64 x (*.f64 (*.f64 1 (-.f64 y x)) (+.f64 4 (*.f64 -6 z))))
40.1b
(/.f64 (*.f64 (+.f64 (*.f64 216 (pow.f64 z 3)) -27) x) (+.f64 (*.f64 36 (*.f64 z z)) (+.f64 9 (*.f64 z 18))))
41.6b
(*.f64 z (*.f64 -6 (-.f64 y x)))
42.0b
(+.f64 x (*.f64 (*.f64 z 6) (-.f64 x y)))
41.8b
(*.f64 4 y)
43.3b
(/.f64 (-.f64 (*.f64 (*.f64 x -3) (*.f64 x -3)) (*.f64 16 (*.f64 y y))) (-.f64 (*.f64 x -3) (*.f64 y 4)))
52.6b
(*.f64 -6 (*.f64 z y))
21.6b
(fma.f64 x -3 (*.f64 y 4))
52.6b
(*.f64 z (*.f64 -6 y))
32.0b
(+.f64 (*.f64 (*.f64 6 z) x) (*.f64 -3 x))
32.0b
(*.f64 (-.f64 (*.f64 6 z) 3) x)
51.7b
(*.f64 6 (*.f64 z x))
0.5b
(+.f64 x (/.f64 (-.f64 2/3 z) (/.f64 1 (*.f64 6 (-.f64 y x)))))
36.4b
(+.f64 x (*.f64 6 (/.f64 (*.f64 (-.f64 4/9 (*.f64 z z)) y) (+.f64 2/3 z))))
41.6b
(*.f64 -6 (*.f64 z (-.f64 y x)))
32.3b
(+.f64 x (*.f64 6 (*.f64 y (-.f64 2/3 z))))
52.6b
(*.f64 (*.f64 -6 z) y)
31.8b
(*.f64 (+.f64 4 (*.f64 -6 z)) y)
51.7b
(*.f64 (*.f64 6 z) x)
42.8b
(*.f64 -3 x)
41.6b
(*.f64 -6 (+.f64 (*.f64 z y) (*.f64 z (neg.f64 x))))
Compiler

Compiled 364 to 270 computations (25.8% saved)

regimes185.0ms (1.3%)

Counts
57 → 1
Calls
Call 1
Inputs
(*.f64 -3 x)
(*.f64 4 y)
(*.f64 6 (*.f64 z x))
(*.f64 (*.f64 6 z) x)
(*.f64 (*.f64 -6 z) y)
(*.f64 x (*.f64 6 z))
(*.f64 -6 (*.f64 z y))
(*.f64 z (*.f64 -6 y))
(+.f64 x (*.f64 y 4))
(*.f64 6 (*.f64 z x))
(+.f64 (*.f64 y 4) (*.f64 x -3))
(+.f64 (*.f64 4 (-.f64 y x)) x)
(*.f64 z (*.f64 -6 (-.f64 y x)))
(+.f64 (*.f64 4 (-.f64 y x)) x)
(*.f64 (-.f64 (*.f64 6 z) 3) x)
(*.f64 (+.f64 4 (*.f64 -6 z)) y)
(+.f64 (*.f64 4 (-.f64 y x)) x)
(*.f64 (+.f64 4 (*.f64 -6 z)) y)
(*.f64 -6 (*.f64 z (-.f64 y x)))
(+.f64 (*.f64 (*.f64 6 z) x) (*.f64 -3 x))
(+.f64 x (*.f64 (*.f64 z 6) (-.f64 x y)))
(+.f64 (*.f64 4 y) (*.f64 -6 (*.f64 y z)))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) x)
(*.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x)
(+.f64 0 (*.f64 (-.f64 y x) (*.f64 -6 z)))
(*.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x)
(+.f64 x (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) x)
(*.f64 -6 (+.f64 (*.f64 z y) (*.f64 z (neg.f64 x))))
(+.f64 x (*.f64 (*.f64 (-.f64 y x) 6) (neg.f64 z)))
(+.f64 (*.f64 2/3 (+.f64 (*.f64 6 y) (*.f64 -6 x))) x)
(+.f64 x (*.f64 (*.f64 (-.f64 y x) 6) (-.f64 2/3 z)))
(+.f64 (*.f64 -4 x) (+.f64 (*.f64 6 (*.f64 y (-.f64 2/3 z))) x))
(+.f64 x (*.f64 (*.f64 1 (-.f64 y x)) (+.f64 4 (*.f64 -6 z))))
(+.f64 x (/.f64 (-.f64 2/3 z) (/.f64 1 (*.f64 6 (-.f64 y x)))))
(+.f64 x (*.f64 (*.f64 (-.f64 y x) 6) (-.f64 (/.f64 2 3) z)))
(+.f64 x (*.f64 6 (/.f64 (*.f64 (-.f64 4/9 (*.f64 z z)) y) (+.f64 2/3 z))))
(+.f64 (*.f64 4 (-.f64 y x)) (+.f64 (*.f64 -6 (*.f64 z (-.f64 y x))) x))
(+.f64 x (*.f64 (+.f64 (*.f64 6 y) (*.f64 -6 x)) (-.f64 (/.f64 2 3) z)))
(+.f64 (*.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(+.f64 x (*.f64 (*.f64 (-.f64 y x) 6) (/.f64 (-.f64 4/9 (*.f64 z z)) (+.f64 2/3 z))))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) (+.f64 (*.f64 6 (*.f64 y (-.f64 2/3 z))) x))
(+.f64 (*.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x) (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(+.f64 x (/.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (-.f64 2/3 z)) (*.f64 (+.f64 y x) 1/6)))
(/.f64 (-.f64 (*.f64 (*.f64 x -3) (*.f64 x -3)) (*.f64 16 (*.f64 y y))) (-.f64 (*.f64 x -3) (*.f64 y 4)))
(+.f64 x (*.f64 (/.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) 6) (+.f64 y x)) (-.f64 (/.f64 2 3) z)))
(fma.f64 x -3 (*.f64 y 4))
(*.f64 (fma.f64 -6 z 4) y)
(fma.f64 (*.f64 (-.f64 2/3 z) (-.f64 y x)) 6 x)
(/.f64 (*.f64 (+.f64 (*.f64 36 (*.f64 z z)) -9) x) (fma.f64 6 z 3))
(/.f64 (*.f64 (+.f64 (*.f64 216 (pow.f64 z 3)) -27) x) (+.f64 (*.f64 36 (*.f64 z z)) (+.f64 9 (*.f64 z 18))))
(fma.f64 (-.f64 y x) (fma.f64 z -6 4) x)
(fma.f64 (-.f64 (pow.f64 (*.f64 (-.f64 y x) (*.f64 -6 z)) 2) (*.f64 x x)) (/.f64 1 (-.f64 (*.f64 (-.f64 y x) (*.f64 -6 z)) x)) (*.f64 (-.f64 y x) 4))
(pow.f64 (cbrt.f64 (fma.f64 (*.f64 (-.f64 y x) 6) (-.f64 2/3 z) x)) 3)
(fma.f64 (sqrt.f64 (-.f64 y x)) (*.f64 (sqrt.f64 (-.f64 y x)) (*.f64 6 (-.f64 2/3 z))) x)
(fma.f64 (-.f64 y x) (expm1.f64 (log1p.f64 (fma.f64 z -6 4))) x)
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 6 (*.f64 (-.f64 y x) (-.f64 2/3 z)))) 2) (cbrt.f64 (*.f64 6 (*.f64 (-.f64 y x) (-.f64 2/3 z)))) x)
Outputs
(+.f64 (*.f64 4 (-.f64 y x)) (+.f64 (*.f64 -6 (*.f64 z (-.f64 y x))) x))
Calls

6 calls:

42.0ms
x
34.0ms
y
32.0ms
(+.f64 x (*.f64 (*.f64 (-.f64 y x) 6) (-.f64 (/.f64 2 3) z)))
28.0ms
z
15.0ms
(-.f64 (/.f64 2 3) z)
Results
ErrorSegmentsBranch
0.2b1x
0.2b1y
0.2b1z
0.2b1(+.f64 x (*.f64 (*.f64 (-.f64 y x) 6) (-.f64 (/.f64 2 3) z)))
0.2b1(-.f64 (/.f64 2 3) z)
0.2b1(-.f64 (/.f64 2 3) z)
Compiler

Compiled 665 to 412 computations (38% saved)

regimes286.0ms (2%)

Counts
37 → 1
Calls
Call 1
Inputs
(*.f64 -3 x)
(*.f64 4 y)
(*.f64 6 (*.f64 z x))
(*.f64 (*.f64 6 z) x)
(*.f64 (*.f64 -6 z) y)
(*.f64 x (*.f64 6 z))
(*.f64 -6 (*.f64 z y))
(*.f64 z (*.f64 -6 y))
(+.f64 x (*.f64 y 4))
(*.f64 6 (*.f64 z x))
(+.f64 (*.f64 y 4) (*.f64 x -3))
(+.f64 (*.f64 4 (-.f64 y x)) x)
(*.f64 z (*.f64 -6 (-.f64 y x)))
(+.f64 (*.f64 4 (-.f64 y x)) x)
(*.f64 (-.f64 (*.f64 6 z) 3) x)
(*.f64 (+.f64 4 (*.f64 -6 z)) y)
(+.f64 (*.f64 4 (-.f64 y x)) x)
(*.f64 (+.f64 4 (*.f64 -6 z)) y)
(*.f64 -6 (*.f64 z (-.f64 y x)))
(+.f64 (*.f64 (*.f64 6 z) x) (*.f64 -3 x))
(+.f64 x (*.f64 (*.f64 z 6) (-.f64 x y)))
(+.f64 (*.f64 4 y) (*.f64 -6 (*.f64 y z)))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) x)
(*.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x)
(+.f64 0 (*.f64 (-.f64 y x) (*.f64 -6 z)))
(*.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x)
(+.f64 x (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) x)
(*.f64 -6 (+.f64 (*.f64 z y) (*.f64 z (neg.f64 x))))
(+.f64 x (*.f64 (*.f64 (-.f64 y x) 6) (neg.f64 z)))
(+.f64 (*.f64 2/3 (+.f64 (*.f64 6 y) (*.f64 -6 x))) x)
(+.f64 x (*.f64 (*.f64 (-.f64 y x) 6) (-.f64 2/3 z)))
(+.f64 (*.f64 -4 x) (+.f64 (*.f64 6 (*.f64 y (-.f64 2/3 z))) x))
(+.f64 x (*.f64 (*.f64 1 (-.f64 y x)) (+.f64 4 (*.f64 -6 z))))
(+.f64 x (/.f64 (-.f64 2/3 z) (/.f64 1 (*.f64 6 (-.f64 y x)))))
(+.f64 x (*.f64 (*.f64 (-.f64 y x) 6) (-.f64 (/.f64 2 3) z)))
(+.f64 x (*.f64 6 (/.f64 (*.f64 (-.f64 4/9 (*.f64 z z)) y) (+.f64 2/3 z))))
Outputs
(+.f64 x (*.f64 (*.f64 1 (-.f64 y x)) (+.f64 4 (*.f64 -6 z))))
Calls

6 calls:

69.0ms
x
52.0ms
y
49.0ms
(+.f64 x (*.f64 (*.f64 (-.f64 y x) 6) (-.f64 (/.f64 2 3) z)))
49.0ms
z
29.0ms
(-.f64 (/.f64 2 3) z)
Results
ErrorSegmentsBranch
0.2b1x
0.2b1y
0.2b1z
0.2b1(+.f64 x (*.f64 (*.f64 (-.f64 y x) 6) (-.f64 (/.f64 2 3) z)))
0.2b1(-.f64 (/.f64 2 3) z)
0.2b1(-.f64 (/.f64 2 3) z)
Compiler

Compiled 346 to 222 computations (35.8% saved)

regimes150.0ms (1%)

Counts
33 → 1
Calls
Call 1
Inputs
(*.f64 -3 x)
(*.f64 4 y)
(*.f64 6 (*.f64 z x))
(*.f64 (*.f64 6 z) x)
(*.f64 (*.f64 -6 z) y)
(*.f64 x (*.f64 6 z))
(*.f64 -6 (*.f64 z y))
(*.f64 z (*.f64 -6 y))
(+.f64 x (*.f64 y 4))
(*.f64 6 (*.f64 z x))
(+.f64 (*.f64 y 4) (*.f64 x -3))
(+.f64 (*.f64 4 (-.f64 y x)) x)
(*.f64 z (*.f64 -6 (-.f64 y x)))
(+.f64 (*.f64 4 (-.f64 y x)) x)
(*.f64 (-.f64 (*.f64 6 z) 3) x)
(*.f64 (+.f64 4 (*.f64 -6 z)) y)
(+.f64 (*.f64 4 (-.f64 y x)) x)
(*.f64 (+.f64 4 (*.f64 -6 z)) y)
(*.f64 -6 (*.f64 z (-.f64 y x)))
(+.f64 (*.f64 (*.f64 6 z) x) (*.f64 -3 x))
(+.f64 x (*.f64 (*.f64 z 6) (-.f64 x y)))
(+.f64 (*.f64 4 y) (*.f64 -6 (*.f64 y z)))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) x)
(*.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x)
(+.f64 0 (*.f64 (-.f64 y x) (*.f64 -6 z)))
(*.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x)
(+.f64 x (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) x)
(*.f64 -6 (+.f64 (*.f64 z y) (*.f64 z (neg.f64 x))))
(+.f64 x (*.f64 (*.f64 (-.f64 y x) 6) (neg.f64 z)))
(+.f64 (*.f64 2/3 (+.f64 (*.f64 6 y) (*.f64 -6 x))) x)
(+.f64 x (*.f64 (*.f64 (-.f64 y x) 6) (-.f64 2/3 z)))
(+.f64 (*.f64 -4 x) (+.f64 (*.f64 6 (*.f64 y (-.f64 2/3 z))) x))
Outputs
(+.f64 x (*.f64 (*.f64 (-.f64 y x) 6) (-.f64 2/3 z)))
Calls

3 calls:

60.0ms
x
40.0ms
y
35.0ms
z
Results
ErrorSegmentsBranch
0.4b1x
0.4b1y
0.4b1z
Compiler

Compiled 260 to 162 computations (37.7% saved)

regimes513.0ms (3.5%)

Counts
31 → 3
Calls
Call 1
Inputs
(*.f64 -3 x)
(*.f64 4 y)
(*.f64 6 (*.f64 z x))
(*.f64 (*.f64 6 z) x)
(*.f64 (*.f64 -6 z) y)
(*.f64 x (*.f64 6 z))
(*.f64 -6 (*.f64 z y))
(*.f64 z (*.f64 -6 y))
(+.f64 x (*.f64 y 4))
(*.f64 6 (*.f64 z x))
(+.f64 (*.f64 y 4) (*.f64 x -3))
(+.f64 (*.f64 4 (-.f64 y x)) x)
(*.f64 z (*.f64 -6 (-.f64 y x)))
(+.f64 (*.f64 4 (-.f64 y x)) x)
(*.f64 (-.f64 (*.f64 6 z) 3) x)
(*.f64 (+.f64 4 (*.f64 -6 z)) y)
(+.f64 (*.f64 4 (-.f64 y x)) x)
(*.f64 (+.f64 4 (*.f64 -6 z)) y)
(*.f64 -6 (*.f64 z (-.f64 y x)))
(+.f64 (*.f64 (*.f64 6 z) x) (*.f64 -3 x))
(+.f64 x (*.f64 (*.f64 z 6) (-.f64 x y)))
(+.f64 (*.f64 4 y) (*.f64 -6 (*.f64 y z)))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) x)
(*.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x)
(+.f64 0 (*.f64 (-.f64 y x) (*.f64 -6 z)))
(*.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x)
(+.f64 x (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) x)
(*.f64 -6 (+.f64 (*.f64 z y) (*.f64 z (neg.f64 x))))
(+.f64 x (*.f64 (*.f64 (-.f64 y x) 6) (neg.f64 z)))
(+.f64 (*.f64 2/3 (+.f64 (*.f64 6 y) (*.f64 -6 x))) x)
Outputs
(*.f64 -6 (+.f64 (*.f64 z y) (*.f64 z (neg.f64 x))))
(+.f64 (*.f64 y 4) (*.f64 x -3))
(*.f64 -6 (*.f64 z (-.f64 y x)))
Calls

3 calls:

232.0ms
y
126.0ms
x
117.0ms
z
Results
ErrorSegmentsBranch
13.1b5x
15.3b3y
1.5b3z
Compiler

Compiled 236 to 147 computations (37.7% saved)

bsearch50.0ms (0.3%)

Algorithm
binary-search
Steps
TimeLeftRight
25.0ms
7.620482737871498e-9
918889.5598676383
25.0ms
-1.5035160011976247
-7.559811477330059e-7
Compiler

Compiled 22 to 17 computations (22.7% saved)

regimes348.0ms (2.4%)

Counts
28 → 3
Calls
Call 1
Inputs
(*.f64 -3 x)
(*.f64 4 y)
(*.f64 6 (*.f64 z x))
(*.f64 (*.f64 6 z) x)
(*.f64 (*.f64 -6 z) y)
(*.f64 x (*.f64 6 z))
(*.f64 -6 (*.f64 z y))
(*.f64 z (*.f64 -6 y))
(+.f64 x (*.f64 y 4))
(*.f64 6 (*.f64 z x))
(+.f64 (*.f64 y 4) (*.f64 x -3))
(+.f64 (*.f64 4 (-.f64 y x)) x)
(*.f64 z (*.f64 -6 (-.f64 y x)))
(+.f64 (*.f64 4 (-.f64 y x)) x)
(*.f64 (-.f64 (*.f64 6 z) 3) x)
(*.f64 (+.f64 4 (*.f64 -6 z)) y)
(+.f64 (*.f64 4 (-.f64 y x)) x)
(*.f64 (+.f64 4 (*.f64 -6 z)) y)
(*.f64 -6 (*.f64 z (-.f64 y x)))
(+.f64 (*.f64 (*.f64 6 z) x) (*.f64 -3 x))
(+.f64 x (*.f64 (*.f64 z 6) (-.f64 x y)))
(+.f64 (*.f64 4 y) (*.f64 -6 (*.f64 y z)))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) x)
(*.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x)
(+.f64 0 (*.f64 (-.f64 y x) (*.f64 -6 z)))
(*.f64 (+.f64 1 (*.f64 -6 (-.f64 2/3 z))) x)
(+.f64 x (*.f64 6 (*.f64 y (-.f64 2/3 z))))
(+.f64 (*.f64 -6 (*.f64 (-.f64 2/3 z) x)) x)
Outputs
(*.f64 -6 (*.f64 z (-.f64 y x)))
(+.f64 (*.f64 y 4) (*.f64 x -3))
(*.f64 -6 (*.f64 z (-.f64 y x)))
Calls

3 calls:

147.0ms
y
97.0ms
z
89.0ms
x
Results
ErrorSegmentsBranch
13.1b5x
15.3b3y
1.5b3z
Compiler

Compiled 205 to 129 computations (37.1% saved)

bsearch49.0ms (0.3%)

Algorithm
binary-search
Steps
TimeLeftRight
26.0ms
7.620482737871498e-9
918889.5598676383
23.0ms
-1.5035160011976247
-7.559811477330059e-7
Compiler

Compiled 22 to 17 computations (22.7% saved)

regimes357.0ms (2.5%)

Counts
18 → 3
Calls
Call 1
Inputs
(*.f64 -3 x)
(*.f64 4 y)
(*.f64 6 (*.f64 z x))
(*.f64 (*.f64 6 z) x)
(*.f64 (*.f64 -6 z) y)
(*.f64 x (*.f64 6 z))
(*.f64 -6 (*.f64 z y))
(*.f64 z (*.f64 -6 y))
(+.f64 x (*.f64 y 4))
(*.f64 6 (*.f64 z x))
(+.f64 (*.f64 y 4) (*.f64 x -3))
(+.f64 (*.f64 4 (-.f64 y x)) x)
(*.f64 z (*.f64 -6 (-.f64 y x)))
(+.f64 (*.f64 4 (-.f64 y x)) x)
(*.f64 (-.f64 (*.f64 6 z) 3) x)
(*.f64 (+.f64 4 (*.f64 -6 z)) y)
(+.f64 (*.f64 4 (-.f64 y x)) x)
(*.f64 (+.f64 4 (*.f64 -6 z)) y)
Outputs
(*.f64 z (*.f64 -6 (-.f64 y x)))
(+.f64 (*.f64 y 4) (*.f64 x -3))
(*.f64 z (*.f64 -6 (-.f64 y x)))
Calls

3 calls:

197.0ms
y
95.0ms
x
59.0ms
z
Results
ErrorSegmentsBranch
13.1b5x
15.3b3y
1.6b3z
Compiler

Compiled 117 to 72 computations (38.5% saved)

bsearch125.0ms (0.9%)

Algorithm
binary-search
Steps
TimeLeftRight
98.0ms
7.620482737871498e-9
918889.5598676383
26.0ms
-1.5035160011976247
-7.559811477330059e-7
Compiler

Compiled 22 to 17 computations (22.7% saved)

regimes84.0ms (0.6%)

Counts
12 → 5
Calls
Call 1
Inputs
(*.f64 -3 x)
(*.f64 4 y)
(*.f64 6 (*.f64 z x))
(*.f64 (*.f64 6 z) x)
(*.f64 (*.f64 -6 z) y)
(*.f64 x (*.f64 6 z))
(*.f64 -6 (*.f64 z y))
(*.f64 z (*.f64 -6 y))
(+.f64 x (*.f64 y 4))
(*.f64 6 (*.f64 z x))
(+.f64 (*.f64 y 4) (*.f64 x -3))
(+.f64 (*.f64 4 (-.f64 y x)) x)
Outputs
(*.f64 (*.f64 6 z) x)
(+.f64 (*.f64 y 4) (*.f64 x -3))
(*.f64 (*.f64 6 z) x)
(*.f64 (*.f64 -6 z) y)
(*.f64 6 (*.f64 z x))
Calls

3 calls:

37.0ms
z
36.0ms
x
8.0ms
y
Results
ErrorSegmentsBranch
21.6b1x
21.6b1y
9.6b5z
Compiler

Compiled 75 to 48 computations (36% saved)

bsearch252.0ms (1.7%)

Algorithm
binary-search
Steps
TimeLeftRight
86.0ms
1.094499240691888e+157
5.737947204727577e+161
78.0ms
1.412203146757213e+86
7.75256659378357e+87
63.0ms
7.620482737871498e-9
918889.5598676383
24.0ms
-74365371.24979533
-30373254.694336094
Compiler

Compiled 292 to 227 computations (22.3% saved)

regimes274.0ms (1.9%)

Counts
10 → 14
Calls
Call 1
Inputs
(*.f64 -3 x)
(*.f64 4 y)
(*.f64 6 (*.f64 z x))
(*.f64 (*.f64 6 z) x)
(*.f64 (*.f64 -6 z) y)
(*.f64 x (*.f64 6 z))
(*.f64 -6 (*.f64 z y))
(*.f64 z (*.f64 -6 y))
(+.f64 x (*.f64 y 4))
(*.f64 6 (*.f64 z x))
Outputs
(*.f64 (*.f64 6 z) x)
(*.f64 4 y)
(*.f64 -3 x)
(*.f64 4 y)
(*.f64 -3 x)
(*.f64 4 y)
(*.f64 -3 x)
(*.f64 4 y)
(*.f64 -3 x)
(*.f64 4 y)
(*.f64 -3 x)
(*.f64 (*.f64 6 z) x)
(*.f64 (*.f64 -6 z) y)
(*.f64 6 (*.f64 z x))
Calls

3 calls:

179.0ms
z
66.0ms
x
24.0ms
y
Results
ErrorSegmentsBranch
29.3b5x
29.3b3y
22.3b14z
Compiler

Compiled 61 to 39 computations (36.1% saved)

bsearch576.0ms (4%)

Algorithm
13×binary-search
Steps
TimeLeftRight
34.0ms
1.094499240691888e+157
5.737947204727577e+161
49.0ms
1.412203146757213e+86
7.75256659378357e+87
25.0ms
7.620482737871498e-9
918889.5598676383
28.0ms
7.266665387251684e-17
1.4412483272433775e-16
46.0ms
3.590934287959582e-149
1.288683010916668e-146
59.0ms
3.6078130878189284e-205
1.6203249048353603e-194
54.0ms
2.1772795084345767e-274
8.524967447905068e-269
47.0ms
3.495254158807163e-299
7.698901369619268e-296
41.0ms
-1.6399313263099076e-268
-1.3112553477514675e-268
47.0ms
-2.834875409293513e-220
-3.49798656231062e-221
32.0ms
-2.3053645700531945e-179
-1.1855876981379229e-179
87.0ms
-4.7769109537890575e-151
-3.518630219012741e-151
26.0ms
-74365371.24979533
-30373254.694336094
Compiler

Compiled 292 to 227 computations (22.3% saved)

regimes76.0ms (0.5%)

Counts
4 → 12
Calls
Call 1
Inputs
(*.f64 -3 x)
(*.f64 4 y)
(*.f64 6 (*.f64 z x))
(*.f64 (*.f64 6 z) x)
Outputs
(*.f64 (*.f64 6 z) x)
(*.f64 4 y)
(*.f64 -3 x)
(*.f64 4 y)
(*.f64 -3 x)
(*.f64 4 y)
(*.f64 -3 x)
(*.f64 4 y)
(*.f64 -3 x)
(*.f64 4 y)
(*.f64 -3 x)
(*.f64 6 (*.f64 z x))
Calls

3 calls:

47.0ms
z
16.0ms
y
11.0ms
x
Results
ErrorSegmentsBranch
30.8b3x
29.3b3y
24.1b12z
Compiler

Compiled 31 to 22 computations (29% saved)

bsearch477.0ms (3.3%)

Algorithm
11×binary-search
Steps
TimeLeftRight
43.0ms
7.620482737871498e-9
918889.5598676383
43.0ms
7.266665387251684e-17
1.4412483272433775e-16
49.0ms
3.590934287959582e-149
1.288683010916668e-146
54.0ms
3.6078130878189284e-205
1.6203249048353603e-194
58.0ms
2.1772795084345767e-274
8.524967447905068e-269
58.0ms
3.495254158807163e-299
7.698901369619268e-296
56.0ms
-1.6399313263099076e-268
-1.3112553477514675e-268
36.0ms
-2.834875409293513e-220
-3.49798656231062e-221
29.0ms
-2.3053645700531945e-179
-1.1855876981379229e-179
28.0ms
-4.7769109537890575e-151
-3.518630219012741e-151
23.0ms
-74365371.24979533
-30373254.694336094
Compiler

Compiled 22 to 17 computations (22.7% saved)

regimes172.0ms (1.2%)

Counts
3 → 12
Calls
Call 1
Inputs
(*.f64 -3 x)
(*.f64 4 y)
(*.f64 6 (*.f64 z x))
Outputs
(*.f64 6 (*.f64 z x))
(*.f64 4 y)
(*.f64 -3 x)
(*.f64 4 y)
(*.f64 -3 x)
(*.f64 4 y)
(*.f64 -3 x)
(*.f64 4 y)
(*.f64 -3 x)
(*.f64 4 y)
(*.f64 -3 x)
(*.f64 6 (*.f64 z x))
Calls

3 calls:

88.0ms
z
56.0ms
y
23.0ms
x
Results
ErrorSegmentsBranch
30.8b3x
29.3b3y
24.1b12z
Compiler

Compiled 26 to 19 computations (26.9% saved)

bsearch674.0ms (4.6%)

Algorithm
11×binary-search
Steps
TimeLeftRight
80.0ms
7.620482737871498e-9
918889.5598676383
57.0ms
7.266665387251684e-17
1.4412483272433775e-16
53.0ms
3.590934287959582e-149
1.288683010916668e-146
67.0ms
3.6078130878189284e-205
1.6203249048353603e-194
66.0ms
2.1772795084345767e-274
8.524967447905068e-269
53.0ms
3.495254158807163e-299
7.698901369619268e-296
53.0ms
-1.6399313263099076e-268
-1.3112553477514675e-268
54.0ms
-2.834875409293513e-220
-3.49798656231062e-221
54.0ms
-2.3053645700531945e-179
-1.1855876981379229e-179
71.0ms
-4.7769109537890575e-151
-3.518630219012741e-151
64.0ms
-74365371.24979533
-30373254.694336094
Compiler

Compiled 22 to 17 computations (22.7% saved)

regimes131.0ms (0.9%)

Accuracy

Total -33.0b remaining (-112.5%)

Threshold costs -33.0b (-112.5%)

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

3 calls:

78.0ms
z
29.0ms
y
23.0ms
x
Results
ErrorSegmentsBranch
30.8b3x
29.3b3y
34.5b10z
Compiler

Compiled 21 to 16 computations (23.8% saved)

bsearch91.0ms (0.6%)

Algorithm
binary-search
Steps
TimeLeftRight
48.0ms
1.0112159903330097e-97
1.2152340165322825e-77
42.0ms
-1.388374644839717e+79
-7.656176289067658e+73
Compiler

Compiled 22 to 17 computations (22.7% saved)

simplify42.0ms (0.3%)

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

Useful iterations: 1 (0.0ms)

IterNodesCost
0109661
1145659
2156659
3161659
4163659
Stop Event
fuel
saturated
Calls
Call 1
Inputs
(+.f64 (*.f64 4 (-.f64 y x)) (+.f64 (*.f64 -6 (*.f64 z (-.f64 y x))) x))
(+.f64 x (*.f64 (*.f64 1 (-.f64 y x)) (+.f64 4 (*.f64 -6 z))))
(+.f64 x (*.f64 (*.f64 (-.f64 y x) 6) (-.f64 2/3 z)))
(if (<=.f64 z -6771234102739201/4503599627370496) (*.f64 -6 (+.f64 (*.f64 z y) (*.f64 z (neg.f64 x)))) (if (<=.f64 z 4606299169870217/604462909807314587353088) (+.f64 (*.f64 y 4) (*.f64 x -3)) (*.f64 -6 (*.f64 z (-.f64 y x)))))
(if (<=.f64 z -6771234102739201/4503599627370496) (*.f64 -6 (*.f64 z (-.f64 y x))) (if (<=.f64 z 4606299169870217/604462909807314587353088) (+.f64 (*.f64 y 4) (*.f64 x -3)) (*.f64 -6 (*.f64 z (-.f64 y x)))))
(if (<=.f64 z -6771234102739201/4503599627370496) (*.f64 z (*.f64 -6 (-.f64 y x))) (if (<=.f64 z 4606299169870217/604462909807314587353088) (+.f64 (*.f64 y 4) (*.f64 x -3)) (*.f64 z (*.f64 -6 (-.f64 y x)))))
(if (<=.f64 z -319396837472769600/4294967296) (*.f64 (*.f64 6 z) x) (if (<=.f64 z 4606299169870217/604462909807314587353088) (+.f64 (*.f64 y 4) (*.f64 x -3)) (if (<=.f64 z 144999999999999995219704461657292802055900370963349531144289591969233917653892267507712) (*.f64 (*.f64 6 z) x) (if (<=.f64 z 550000000000000045734229689053419729916677920396489819120761375980738684379718917780587037116223558594031227217436278843319826609659303258137821846165957111709696) (*.f64 (*.f64 -6 z) y) (*.f64 6 (*.f64 z x))))))
(if (<=.f64 z -319396837472769600/4294967296) (*.f64 (*.f64 6 z) x) (if (<=.f64 z -7042141580593099/14742040721959145907193572581985425355144223517251720423344555860334469384344331453461432520225229560708860839963921269139728846210643721220943102544658968920505450496) (*.f64 4 y) (if (<=.f64 z -6731576929816207/291996199527820493993034982764818644793166624463907835557068321145553610701355352736378419924311769585833107812710042067884077102168028031888170324462221708048127659159056956805303948303782641664) (*.f64 -3 x) (if (<=.f64 z -3605459240834299/12718228212127407596740439969484820932664410252219978638451114295509409404406799452822555925124271947370395489870897751704957583721388559494711601357137355892362895163562802426267773219894054460008554489394925312007314201426461145956352) (*.f64 4 y) (if (<=.f64 z -6096514027413073/37175422711944576569951562453747514003281505041484861476394296482898516429010109338629207862403908764744968094754824326261364631138622642694770764527559865644574271011186496848567160245857443421755979894558785930151693717671947002203927473508716452075301127636353597820594133720367104) (*.f64 -3 x) (if (<=.f64 z 6588616572546943/188501787658138776526316391973679239907820382867140805681144220780050698265428977917842924316820804490882044531700026161400423140624345724347059987430217219443542346615871751089083876220596224387399635909565487009065232689887930358404389913798458461035797425091600762263250923357187307004059038598692050448905404416) (*.f64 4 y) (if (<=.f64 z 8487309000112633/38981256045599996321413529551500753243504907430380030107471625828851794763065704409862460263528041036901219664925634672733836679460812376186311949185250613678125110799825892119483158621960214593411198373916873515494742391701579499782985454461875862451310955212417110188327314359967656443904) (*.f64 -3 x) (if (<=.f64 z 130412985861258880/361473786714651839609485931802192366508973300717001923159475447150424810286233407987951861887389439612274926783780351561999781998832434041296198795326329101623141899709787663433296905279066051548640942013290819886814068736) (*.f64 4 y) (if (<=.f64 z 8271515547340551/230344386280611654799899571593522271174128492457058131614758685317726084130380178960334883128519211886075950624436269830308263222041308144077235977260296389382897664) (*.f64 -3 x) (if (<=.f64 z 2947709676738335/40564819207303340847894502572032) (*.f64 4 y) (if (<=.f64 z 4606299169870217/604462909807314587353088) (*.f64 -3 x) (if (<=.f64 z 144999999999999995219704461657292802055900370963349531144289591969233917653892267507712) (*.f64 (*.f64 6 z) x) (if (<=.f64 z 550000000000000045734229689053419729916677920396489819120761375980738684379718917780587037116223558594031227217436278843319826609659303258137821846165957111709696) (*.f64 (*.f64 -6 z) y) (*.f64 6 (*.f64 z x)))))))))))))))
(if (<=.f64 z -319396837472769600/4294967296) (*.f64 (*.f64 6 z) x) (if (<=.f64 z -7042141580593099/14742040721959145907193572581985425355144223517251720423344555860334469384344331453461432520225229560708860839963921269139728846210643721220943102544658968920505450496) (*.f64 4 y) (if (<=.f64 z -6731576929816207/291996199527820493993034982764818644793166624463907835557068321145553610701355352736378419924311769585833107812710042067884077102168028031888170324462221708048127659159056956805303948303782641664) (*.f64 -3 x) (if (<=.f64 z -3605459240834299/12718228212127407596740439969484820932664410252219978638451114295509409404406799452822555925124271947370395489870897751704957583721388559494711601357137355892362895163562802426267773219894054460008554489394925312007314201426461145956352) (*.f64 4 y) (if (<=.f64 z -6096514027413073/37175422711944576569951562453747514003281505041484861476394296482898516429010109338629207862403908764744968094754824326261364631138622642694770764527559865644574271011186496848567160245857443421755979894558785930151693717671947002203927473508716452075301127636353597820594133720367104) (*.f64 -3 x) (if (<=.f64 z 6588616572546943/188501787658138776526316391973679239907820382867140805681144220780050698265428977917842924316820804490882044531700026161400423140624345724347059987430217219443542346615871751089083876220596224387399635909565487009065232689887930358404389913798458461035797425091600762263250923357187307004059038598692050448905404416) (*.f64 4 y) (if (<=.f64 z 8487309000112633/38981256045599996321413529551500753243504907430380030107471625828851794763065704409862460263528041036901219664925634672733836679460812376186311949185250613678125110799825892119483158621960214593411198373916873515494742391701579499782985454461875862451310955212417110188327314359967656443904) (*.f64 -3 x) (if (<=.f64 z 130412985861258880/361473786714651839609485931802192366508973300717001923159475447150424810286233407987951861887389439612274926783780351561999781998832434041296198795326329101623141899709787663433296905279066051548640942013290819886814068736) (*.f64 4 y) (if (<=.f64 z 8271515547340551/230344386280611654799899571593522271174128492457058131614758685317726084130380178960334883128519211886075950624436269830308263222041308144077235977260296389382897664) (*.f64 -3 x) (if (<=.f64 z 2947709676738335/40564819207303340847894502572032) (*.f64 4 y) (if (<=.f64 z 4606299169870217/604462909807314587353088) (*.f64 -3 x) (*.f64 6 (*.f64 z x)))))))))))))
(if (<=.f64 z -319396837472769600/4294967296) (*.f64 6 (*.f64 z x)) (if (<=.f64 z -7042141580593099/14742040721959145907193572581985425355144223517251720423344555860334469384344331453461432520225229560708860839963921269139728846210643721220943102544658968920505450496) (*.f64 4 y) (if (<=.f64 z -6731576929816207/291996199527820493993034982764818644793166624463907835557068321145553610701355352736378419924311769585833107812710042067884077102168028031888170324462221708048127659159056956805303948303782641664) (*.f64 -3 x) (if (<=.f64 z -3605459240834299/12718228212127407596740439969484820932664410252219978638451114295509409404406799452822555925124271947370395489870897751704957583721388559494711601357137355892362895163562802426267773219894054460008554489394925312007314201426461145956352) (*.f64 4 y) (if (<=.f64 z -6096514027413073/37175422711944576569951562453747514003281505041484861476394296482898516429010109338629207862403908764744968094754824326261364631138622642694770764527559865644574271011186496848567160245857443421755979894558785930151693717671947002203927473508716452075301127636353597820594133720367104) (*.f64 -3 x) (if (<=.f64 z 6588616572546943/188501787658138776526316391973679239907820382867140805681144220780050698265428977917842924316820804490882044531700026161400423140624345724347059987430217219443542346615871751089083876220596224387399635909565487009065232689887930358404389913798458461035797425091600762263250923357187307004059038598692050448905404416) (*.f64 4 y) (if (<=.f64 z 8487309000112633/38981256045599996321413529551500753243504907430380030107471625828851794763065704409862460263528041036901219664925634672733836679460812376186311949185250613678125110799825892119483158621960214593411198373916873515494742391701579499782985454461875862451310955212417110188327314359967656443904) (*.f64 -3 x) (if (<=.f64 z 130412985861258880/361473786714651839609485931802192366508973300717001923159475447150424810286233407987951861887389439612274926783780351561999781998832434041296198795326329101623141899709787663433296905279066051548640942013290819886814068736) (*.f64 4 y) (if (<=.f64 z 8271515547340551/230344386280611654799899571593522271174128492457058131614758685317726084130380178960334883128519211886075950624436269830308263222041308144077235977260296389382897664) (*.f64 -3 x) (if (<=.f64 z 2947709676738335/40564819207303340847894502572032) (*.f64 4 y) (if (<=.f64 z 4606299169870217/604462909807314587353088) (*.f64 -3 x) (*.f64 6 (*.f64 z x)))))))))))))
(if (<=.f64 y -13883746448397170059184465789035712707199717115114973694184100032517832448147456) (*.f64 4 y) (if (<=.f64 y 3984393871699442688/39402006196394479212279040100143613805079739270465446667948293404245721771497210611414266254884915640806627990306816) (*.f64 -3 x) (*.f64 4 y)))
(*.f64 -3 x)
Outputs
(+.f64 (*.f64 4 (-.f64 y x)) (+.f64 (*.f64 -6 (*.f64 z (-.f64 y x))) x))
(+.f64 (*.f64 4 (-.f64 y x)) (+.f64 x (*.f64 -6 (*.f64 (-.f64 y x) z))))
(+.f64 x (*.f64 (*.f64 1 (-.f64 y x)) (+.f64 4 (*.f64 -6 z))))
(+.f64 x (*.f64 (-.f64 y x) (+.f64 4 (*.f64 -6 z))))
(+.f64 x (*.f64 (*.f64 (-.f64 y x) 6) (-.f64 2/3 z)))
(if (<=.f64 z -6771234102739201/4503599627370496) (*.f64 -6 (+.f64 (*.f64 z y) (*.f64 z (neg.f64 x)))) (if (<=.f64 z 4606299169870217/604462909807314587353088) (+.f64 (*.f64 y 4) (*.f64 x -3)) (*.f64 -6 (*.f64 z (-.f64 y x)))))
(if (<=.f64 z -6771234102739201/4503599627370496) (*.f64 -6 (+.f64 (*.f64 y z) (*.f64 z (neg.f64 x)))) (if (<=.f64 z 4606299169870217/604462909807314587353088) (+.f64 (*.f64 4 y) (*.f64 x -3)) (*.f64 -6 (*.f64 (-.f64 y x) z))))
(if (<=.f64 z -6771234102739201/4503599627370496) (*.f64 -6 (-.f64 (*.f64 y z) (*.f64 x z))) (if (<=.f64 z 4606299169870217/604462909807314587353088) (+.f64 (*.f64 4 y) (*.f64 x -3)) (*.f64 -6 (*.f64 (-.f64 y x) z))))
(if (<=.f64 z -6771234102739201/4503599627370496) (*.f64 -6 (*.f64 z (-.f64 y x))) (if (<=.f64 z 4606299169870217/604462909807314587353088) (+.f64 (*.f64 y 4) (*.f64 x -3)) (*.f64 -6 (*.f64 z (-.f64 y x)))))
(if (<=.f64 z -6771234102739201/4503599627370496) (*.f64 -6 (*.f64 (-.f64 y x) z)) (if (<=.f64 z 4606299169870217/604462909807314587353088) (+.f64 (*.f64 4 y) (*.f64 x -3)) (*.f64 -6 (*.f64 (-.f64 y x) z))))
(if (<=.f64 z -6771234102739201/4503599627370496) (*.f64 z (*.f64 -6 (-.f64 y x))) (if (<=.f64 z 4606299169870217/604462909807314587353088) (+.f64 (*.f64 y 4) (*.f64 x -3)) (*.f64 z (*.f64 -6 (-.f64 y x)))))
(if (<=.f64 z -6771234102739201/4503599627370496) (*.f64 z (*.f64 (-.f64 y x) -6)) (if (<=.f64 z 4606299169870217/604462909807314587353088) (+.f64 (*.f64 4 y) (*.f64 x -3)) (*.f64 z (*.f64 (-.f64 y x) -6))))
(if (<=.f64 z -319396837472769600/4294967296) (*.f64 (*.f64 6 z) x) (if (<=.f64 z 4606299169870217/604462909807314587353088) (+.f64 (*.f64 y 4) (*.f64 x -3)) (if (<=.f64 z 144999999999999995219704461657292802055900370963349531144289591969233917653892267507712) (*.f64 (*.f64 6 z) x) (if (<=.f64 z 550000000000000045734229689053419729916677920396489819120761375980738684379718917780587037116223558594031227217436278843319826609659303258137821846165957111709696) (*.f64 (*.f64 -6 z) y) (*.f64 6 (*.f64 z x))))))
(if (<=.f64 z -4990575585512025/67108864) (*.f64 x (*.f64 z 6)) (if (<=.f64 z 4606299169870217/604462909807314587353088) (+.f64 (*.f64 4 y) (*.f64 x -3)) (if (<=.f64 z 144999999999999995219704461657292802055900370963349531144289591969233917653892267507712) (*.f64 x (*.f64 z 6)) (if (<=.f64 z 550000000000000045734229689053419729916677920396489819120761375980738684379718917780587037116223558594031227217436278843319826609659303258137821846165957111709696) (*.f64 y (*.f64 -6 z)) (*.f64 6 (*.f64 x z))))))
(if (<=.f64 z -319396837472769600/4294967296) (*.f64 (*.f64 6 z) x) (if (<=.f64 z -7042141580593099/14742040721959145907193572581985425355144223517251720423344555860334469384344331453461432520225229560708860839963921269139728846210643721220943102544658968920505450496) (*.f64 4 y) (if (<=.f64 z -6731576929816207/291996199527820493993034982764818644793166624463907835557068321145553610701355352736378419924311769585833107812710042067884077102168028031888170324462221708048127659159056956805303948303782641664) (*.f64 -3 x) (if (<=.f64 z -3605459240834299/12718228212127407596740439969484820932664410252219978638451114295509409404406799452822555925124271947370395489870897751704957583721388559494711601357137355892362895163562802426267773219894054460008554489394925312007314201426461145956352) (*.f64 4 y) (if (<=.f64 z -6096514027413073/37175422711944576569951562453747514003281505041484861476394296482898516429010109338629207862403908764744968094754824326261364631138622642694770764527559865644574271011186496848567160245857443421755979894558785930151693717671947002203927473508716452075301127636353597820594133720367104) (*.f64 -3 x) (if (<=.f64 z 6588616572546943/188501787658138776526316391973679239907820382867140805681144220780050698265428977917842924316820804490882044531700026161400423140624345724347059987430217219443542346615871751089083876220596224387399635909565487009065232689887930358404389913798458461035797425091600762263250923357187307004059038598692050448905404416) (*.f64 4 y) (if (<=.f64 z 8487309000112633/38981256045599996321413529551500753243504907430380030107471625828851794763065704409862460263528041036901219664925634672733836679460812376186311949185250613678125110799825892119483158621960214593411198373916873515494742391701579499782985454461875862451310955212417110188327314359967656443904) (*.f64 -3 x) (if (<=.f64 z 130412985861258880/361473786714651839609485931802192366508973300717001923159475447150424810286233407987951861887389439612274926783780351561999781998832434041296198795326329101623141899709787663433296905279066051548640942013290819886814068736) (*.f64 4 y) (if (<=.f64 z 8271515547340551/230344386280611654799899571593522271174128492457058131614758685317726084130380178960334883128519211886075950624436269830308263222041308144077235977260296389382897664) (*.f64 -3 x) (if (<=.f64 z 2947709676738335/40564819207303340847894502572032) (*.f64 4 y) (if (<=.f64 z 4606299169870217/604462909807314587353088) (*.f64 -3 x) (if (<=.f64 z 144999999999999995219704461657292802055900370963349531144289591969233917653892267507712) (*.f64 (*.f64 6 z) x) (if (<=.f64 z 550000000000000045734229689053419729916677920396489819120761375980738684379718917780587037116223558594031227217436278843319826609659303258137821846165957111709696) (*.f64 (*.f64 -6 z) y) (*.f64 6 (*.f64 z x)))))))))))))))
(if (<=.f64 z -4990575585512025/67108864) (*.f64 x (*.f64 z 6)) (if (<=.f64 z -7042141580593099/14742040721959145907193572581985425355144223517251720423344555860334469384344331453461432520225229560708860839963921269139728846210643721220943102544658968920505450496) (*.f64 4 y) (if (<=.f64 z -6731576929816207/291996199527820493993034982764818644793166624463907835557068321145553610701355352736378419924311769585833107812710042067884077102168028031888170324462221708048127659159056956805303948303782641664) (*.f64 x -3) (if (<=.f64 z -3605459240834299/12718228212127407596740439969484820932664410252219978638451114295509409404406799452822555925124271947370395489870897751704957583721388559494711601357137355892362895163562802426267773219894054460008554489394925312007314201426461145956352) (*.f64 4 y) (if (<=.f64 z -6096514027413073/37175422711944576569951562453747514003281505041484861476394296482898516429010109338629207862403908764744968094754824326261364631138622642694770764527559865644574271011186496848567160245857443421755979894558785930151693717671947002203927473508716452075301127636353597820594133720367104) (*.f64 x -3) (if (<=.f64 z 6588616572546943/188501787658138776526316391973679239907820382867140805681144220780050698265428977917842924316820804490882044531700026161400423140624345724347059987430217219443542346615871751089083876220596224387399635909565487009065232689887930358404389913798458461035797425091600762263250923357187307004059038598692050448905404416) (*.f64 4 y) (if (<=.f64 z 8487309000112633/38981256045599996321413529551500753243504907430380030107471625828851794763065704409862460263528041036901219664925634672733836679460812376186311949185250613678125110799825892119483158621960214593411198373916873515494742391701579499782985454461875862451310955212417110188327314359967656443904) (*.f64 x -3) (if (<=.f64 z 1018851452041085/2824013958708217496949108842204627863351353911851577524683401930862693830361198499905873920995229996970897865498283996578123296865878390947626553088486946106430796091482716120572632072492703527723757359478834530365734912) (*.f64 4 y) (if (<=.f64 z 8271515547340551/230344386280611654799899571593522271174128492457058131614758685317726084130380178960334883128519211886075950624436269830308263222041308144077235977260296389382897664) (*.f64 x -3) (if (<=.f64 z 2947709676738335/40564819207303340847894502572032) (*.f64 4 y) (if (<=.f64 z 4606299169870217/604462909807314587353088) (*.f64 x -3) (if (<=.f64 z 144999999999999995219704461657292802055900370963349531144289591969233917653892267507712) (*.f64 x (*.f64 z 6)) (if (<=.f64 z 550000000000000045734229689053419729916677920396489819120761375980738684379718917780587037116223558594031227217436278843319826609659303258137821846165957111709696) (*.f64 y (*.f64 -6 z)) (*.f64 6 (*.f64 x z)))))))))))))))
(if (<=.f64 z -319396837472769600/4294967296) (*.f64 (*.f64 6 z) x) (if (<=.f64 z -7042141580593099/14742040721959145907193572581985425355144223517251720423344555860334469384344331453461432520225229560708860839963921269139728846210643721220943102544658968920505450496) (*.f64 4 y) (if (<=.f64 z -6731576929816207/291996199527820493993034982764818644793166624463907835557068321145553610701355352736378419924311769585833107812710042067884077102168028031888170324462221708048127659159056956805303948303782641664) (*.f64 -3 x) (if (<=.f64 z -3605459240834299/12718228212127407596740439969484820932664410252219978638451114295509409404406799452822555925124271947370395489870897751704957583721388559494711601357137355892362895163562802426267773219894054460008554489394925312007314201426461145956352) (*.f64 4 y) (if (<=.f64 z -6096514027413073/37175422711944576569951562453747514003281505041484861476394296482898516429010109338629207862403908764744968094754824326261364631138622642694770764527559865644574271011186496848567160245857443421755979894558785930151693717671947002203927473508716452075301127636353597820594133720367104) (*.f64 -3 x) (if (<=.f64 z 6588616572546943/188501787658138776526316391973679239907820382867140805681144220780050698265428977917842924316820804490882044531700026161400423140624345724347059987430217219443542346615871751089083876220596224387399635909565487009065232689887930358404389913798458461035797425091600762263250923357187307004059038598692050448905404416) (*.f64 4 y) (if (<=.f64 z 8487309000112633/38981256045599996321413529551500753243504907430380030107471625828851794763065704409862460263528041036901219664925634672733836679460812376186311949185250613678125110799825892119483158621960214593411198373916873515494742391701579499782985454461875862451310955212417110188327314359967656443904) (*.f64 -3 x) (if (<=.f64 z 130412985861258880/361473786714651839609485931802192366508973300717001923159475447150424810286233407987951861887389439612274926783780351561999781998832434041296198795326329101623141899709787663433296905279066051548640942013290819886814068736) (*.f64 4 y) (if (<=.f64 z 8271515547340551/230344386280611654799899571593522271174128492457058131614758685317726084130380178960334883128519211886075950624436269830308263222041308144077235977260296389382897664) (*.f64 -3 x) (if (<=.f64 z 2947709676738335/40564819207303340847894502572032) (*.f64 4 y) (if (<=.f64 z 4606299169870217/604462909807314587353088) (*.f64 -3 x) (*.f64 6 (*.f64 z x)))))))))))))
(if (<=.f64 z -4990575585512025/67108864) (*.f64 x (*.f64 z 6)) (if (<=.f64 z -7042141580593099/14742040721959145907193572581985425355144223517251720423344555860334469384344331453461432520225229560708860839963921269139728846210643721220943102544658968920505450496) (*.f64 4 y) (if (<=.f64 z -6731576929816207/291996199527820493993034982764818644793166624463907835557068321145553610701355352736378419924311769585833107812710042067884077102168028031888170324462221708048127659159056956805303948303782641664) (*.f64 x -3) (if (<=.f64 z -3605459240834299/12718228212127407596740439969484820932664410252219978638451114295509409404406799452822555925124271947370395489870897751704957583721388559494711601357137355892362895163562802426267773219894054460008554489394925312007314201426461145956352) (*.f64 4 y) (if (<=.f64 z -6096514027413073/37175422711944576569951562453747514003281505041484861476394296482898516429010109338629207862403908764744968094754824326261364631138622642694770764527559865644574271011186496848567160245857443421755979894558785930151693717671947002203927473508716452075301127636353597820594133720367104) (*.f64 x -3) (if (<=.f64 z 6588616572546943/188501787658138776526316391973679239907820382867140805681144220780050698265428977917842924316820804490882044531700026161400423140624345724347059987430217219443542346615871751089083876220596224387399635909565487009065232689887930358404389913798458461035797425091600762263250923357187307004059038598692050448905404416) (*.f64 4 y) (if (<=.f64 z 8487309000112633/38981256045599996321413529551500753243504907430380030107471625828851794763065704409862460263528041036901219664925634672733836679460812376186311949185250613678125110799825892119483158621960214593411198373916873515494742391701579499782985454461875862451310955212417110188327314359967656443904) (*.f64 x -3) (if (<=.f64 z 1018851452041085/2824013958708217496949108842204627863351353911851577524683401930862693830361198499905873920995229996970897865498283996578123296865878390947626553088486946106430796091482716120572632072492703527723757359478834530365734912) (*.f64 4 y) (if (<=.f64 z 8271515547340551/230344386280611654799899571593522271174128492457058131614758685317726084130380178960334883128519211886075950624436269830308263222041308144077235977260296389382897664) (*.f64 x -3) (if (<=.f64 z 2947709676738335/40564819207303340847894502572032) (*.f64 4 y) (if (<=.f64 z 4606299169870217/604462909807314587353088) (*.f64 x -3) (*.f64 6 (*.f64 x z)))))))))))))
(if (<=.f64 z -319396837472769600/4294967296) (*.f64 6 (*.f64 z x)) (if (<=.f64 z -7042141580593099/14742040721959145907193572581985425355144223517251720423344555860334469384344331453461432520225229560708860839963921269139728846210643721220943102544658968920505450496) (*.f64 4 y) (if (<=.f64 z -6731576929816207/291996199527820493993034982764818644793166624463907835557068321145553610701355352736378419924311769585833107812710042067884077102168028031888170324462221708048127659159056956805303948303782641664) (*.f64 -3 x) (if (<=.f64 z -3605459240834299/12718228212127407596740439969484820932664410252219978638451114295509409404406799452822555925124271947370395489870897751704957583721388559494711601357137355892362895163562802426267773219894054460008554489394925312007314201426461145956352) (*.f64 4 y) (if (<=.f64 z -6096514027413073/37175422711944576569951562453747514003281505041484861476394296482898516429010109338629207862403908764744968094754824326261364631138622642694770764527559865644574271011186496848567160245857443421755979894558785930151693717671947002203927473508716452075301127636353597820594133720367104) (*.f64 -3 x) (if (<=.f64 z 6588616572546943/188501787658138776526316391973679239907820382867140805681144220780050698265428977917842924316820804490882044531700026161400423140624345724347059987430217219443542346615871751089083876220596224387399635909565487009065232689887930358404389913798458461035797425091600762263250923357187307004059038598692050448905404416) (*.f64 4 y) (if (<=.f64 z 8487309000112633/38981256045599996321413529551500753243504907430380030107471625828851794763065704409862460263528041036901219664925634672733836679460812376186311949185250613678125110799825892119483158621960214593411198373916873515494742391701579499782985454461875862451310955212417110188327314359967656443904) (*.f64 -3 x) (if (<=.f64 z 130412985861258880/361473786714651839609485931802192366508973300717001923159475447150424810286233407987951861887389439612274926783780351561999781998832434041296198795326329101623141899709787663433296905279066051548640942013290819886814068736) (*.f64 4 y) (if (<=.f64 z 8271515547340551/230344386280611654799899571593522271174128492457058131614758685317726084130380178960334883128519211886075950624436269830308263222041308144077235977260296389382897664) (*.f64 -3 x) (if (<=.f64 z 2947709676738335/40564819207303340847894502572032) (*.f64 4 y) (if (<=.f64 z 4606299169870217/604462909807314587353088) (*.f64 -3 x) (*.f64 6 (*.f64 z x)))))))))))))
(if (<=.f64 z -4990575585512025/67108864) (*.f64 6 (*.f64 x z)) (if (<=.f64 z -7042141580593099/14742040721959145907193572581985425355144223517251720423344555860334469384344331453461432520225229560708860839963921269139728846210643721220943102544658968920505450496) (*.f64 4 y) (if (<=.f64 z -6731576929816207/291996199527820493993034982764818644793166624463907835557068321145553610701355352736378419924311769585833107812710042067884077102168028031888170324462221708048127659159056956805303948303782641664) (*.f64 x -3) (if (<=.f64 z -3605459240834299/12718228212127407596740439969484820932664410252219978638451114295509409404406799452822555925124271947370395489870897751704957583721388559494711601357137355892362895163562802426267773219894054460008554489394925312007314201426461145956352) (*.f64 4 y) (if (<=.f64 z -6096514027413073/37175422711944576569951562453747514003281505041484861476394296482898516429010109338629207862403908764744968094754824326261364631138622642694770764527559865644574271011186496848567160245857443421755979894558785930151693717671947002203927473508716452075301127636353597820594133720367104) (*.f64 x -3) (if (<=.f64 z 6588616572546943/188501787658138776526316391973679239907820382867140805681144220780050698265428977917842924316820804490882044531700026161400423140624345724347059987430217219443542346615871751089083876220596224387399635909565487009065232689887930358404389913798458461035797425091600762263250923357187307004059038598692050448905404416) (*.f64 4 y) (if (<=.f64 z 8487309000112633/38981256045599996321413529551500753243504907430380030107471625828851794763065704409862460263528041036901219664925634672733836679460812376186311949185250613678125110799825892119483158621960214593411198373916873515494742391701579499782985454461875862451310955212417110188327314359967656443904) (*.f64 x -3) (if (<=.f64 z 1018851452041085/2824013958708217496949108842204627863351353911851577524683401930862693830361198499905873920995229996970897865498283996578123296865878390947626553088486946106430796091482716120572632072492703527723757359478834530365734912) (*.f64 4 y) (if (<=.f64 z 8271515547340551/230344386280611654799899571593522271174128492457058131614758685317726084130380178960334883128519211886075950624436269830308263222041308144077235977260296389382897664) (*.f64 x -3) (if (<=.f64 z 2947709676738335/40564819207303340847894502572032) (*.f64 4 y) (if (<=.f64 z 4606299169870217/604462909807314587353088) (*.f64 x -3) (*.f64 6 (*.f64 x z)))))))))))))
(if (<=.f64 y -13883746448397170059184465789035712707199717115114973694184100032517832448147456) (*.f64 4 y) (if (<=.f64 y 3984393871699442688/39402006196394479212279040100143613805079739270465446667948293404245721771497210611414266254884915640806627990306816) (*.f64 -3 x) (*.f64 4 y)))
(if (<=.f64 y -13883746448397170059184465789035712707199717115114973694184100032517832448147456) (*.f64 4 y) (if (<=.f64 y 3891009640331487/38478521676166483605741250097796497856523182881313912761668255277583712667477744737709244389536050430475222646784) (*.f64 x -3) (*.f64 4 y)))
(*.f64 -3 x)
(*.f64 x -3)
Compiler

Compiled 495 to 344 computations (30.5% saved)

soundness704.0ms (4.8%)

Algorithm
egg-herbie
Rules
5304×fma-neg_binary64
682×unsub-neg_binary64
376×fma-def_binary64
347×sub-neg_binary64
287×distribute-rgt-in_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01416
12314
26014
320212
463412
5199612
6401712
7583512
8651812
9678612
10685012
11686912
12687312
13687312
14687312
15715512
16720612
17720612
Stop Event
node limit
Compiler

Compiled 245 to 185 computations (24.5% saved)

end192.0ms (1.3%)

Compiler

Compiled 462 to 300 computations (35.1% saved)

Profiling

Loading profile data...