Details

Time bar (total: 8.9s)

analyze205.0ms (2.3%)

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 13 to 9 computations (30.8% saved)

sample1.5s (17.3%)

Results
1.4s8256×body256valid
130.0ms1241×body256invalid

preprocess195.0ms (2.2%)

Algorithm
egg-herbie
Rules
1324×fma-neg_binary64
1187×fma-def_binary64
275×unsub-neg_binary64
241×distribute-rgt-in_binary64
150×associate-*r*_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02152
14744
211644
327644
466544
5126644
6243544
7388044
8410144
9414644
10414644
11516244
12532244
13532244
14532244
033
Stop Event
saturated
saturated
Calls
Call 1
Inputs
0
1
2
Outputs
0
1
2
Call 2
Inputs
(+.f64 x (*.f64 (*.f64 (-.f64 y x) 6) z))
(+.f64 y (*.f64 (*.f64 (-.f64 x y) 6) z))
(+.f64 z (*.f64 (*.f64 (-.f64 y z) 6) x))
(+.f64 x (*.f64 (*.f64 (-.f64 z x) 6) y))
Outputs
(+.f64 x (*.f64 (*.f64 (-.f64 y x) 6) z))
(+.f64 x (*.f64 (-.f64 y x) (*.f64 6 z)))
(fma.f64 (-.f64 y x) (*.f64 6 z) x)
(fma.f64 (*.f64 (-.f64 y x) 6) z x)
(+.f64 y (*.f64 (*.f64 (-.f64 x y) 6) z))
(+.f64 y (*.f64 z (*.f64 6 (-.f64 x y))))
(fma.f64 z (*.f64 6 (-.f64 x y)) y)
(fma.f64 6 (*.f64 z (-.f64 x y)) y)
(fma.f64 (-.f64 x y) (*.f64 6 z) y)
(fma.f64 z (*.f64 (-.f64 y x) -6) y)
(+.f64 z (*.f64 (*.f64 (-.f64 y z) 6) x))
(+.f64 z (*.f64 x (*.f64 6 (-.f64 y z))))
(fma.f64 x (*.f64 6 (-.f64 y z)) z)
(+.f64 x (*.f64 (*.f64 (-.f64 z x) 6) y))
(+.f64 x (*.f64 y (*.f64 6 (-.f64 z x))))
(fma.f64 y (*.f64 6 (-.f64 z x)) x)
Compiler

Compiled 15 to 11 computations (26.7% saved)

simplify71.0ms (0.8%)

Algorithm
egg-herbie
Rules
764×fma-def_binary64
522×fma-neg_binary64
141×cancel-sign-sub-inv_binary64
119×distribute-rgt-in_binary64
106×unsub-neg_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0913
11611
23711
39311
421911
541511
659911
794911
8156511
9214311
10260111
11266511
12266711
13266711
Stop Event
saturated
Counts
1 → 2
Calls
Call 1
Inputs
(+.f64 x (*.f64 (*.f64 (-.f64 y x) 6) z))
Outputs
(+.f64 x (*.f64 (*.f64 (-.f64 y x) 6) z))
(+.f64 x (*.f64 (-.f64 y x) (*.f64 6 z)))
(fma.f64 (-.f64 y x) (*.f64 6 z) x)
(fma.f64 (*.f64 (-.f64 y x) 6) z x)

eval1.0ms (0%)

Compiler

Compiled 20 to 11 computations (45% saved)

prune1.0ms (0%)

Pruning

3 alts after pruning (3 fresh and 0 done)

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

Compiled 23 to 15 computations (34.8% saved)

localize11.0ms (0.1%)

Local error

Found 3 expressions with local error:

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

Compiled 31 to 14 computations (54.8% saved)

series13.0ms (0.1%)

Counts
3 → 96
Calls

24 calls:

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

rewrite82.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
513×log-prod_binary64
404×fma-def_binary64
379×exp-prod_binary64
366×pow-prod-down_binary64
276×pow2_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0930
120128
2286228
Stop Event
node limit
Counts
3 → 130
Calls
Call 1
Inputs
(*.f64 (*.f64 (-.f64 y x) 6) z)
(*.f64 (-.f64 y x) 6)
(+.f64 x (*.f64 (*.f64 (-.f64 y x) 6) z))
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 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 z) (*.f64 (-.f64 y x) 6))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 z) (*.f64 (-.f64 y x) 6)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 z) (*.f64 (-.f64 y x) 6)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 z) (*.f64 (-.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 (pow.f64 y 3) (pow.f64 x 3)) (*.f64 6 z)) (fma.f64 y y (*.f64 x (+.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (*.f64 6 z)) (+.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 (pow.f64 (*.f64 (-.f64 y x) (*.f64 6 z)) 2) 1/2)))) (#(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 pow.f64 (exp.f64 1) (log.f64 (*.f64 (-.f64 y x) (*.f64 6 z))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 (-.f64 y x) (*.f64 6 z)))) 2)) (cbrt.f64 (log.f64 (*.f64 (-.f64 y x) (*.f64 6 z)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 (-.f64 y x) (*.f64 6 z))))) (sqrt.f64 (log.f64 (*.f64 (-.f64 y x) (*.f64 6 z)))))))) (#(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 (exp.f64 z) (*.f64 (-.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 exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (-.f64 y x) (*.f64 6 z)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (-.f64 y x) (*.f64 6 z)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (-.f64 y x) (*.f64 6 z)) 3)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (-.f64 y x) (*.f64 6 z))) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (-.f64 y x) (*.f64 6 z))) 3) 1/3))))))
((#(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 y y (*.f64 x (+.f64 y x))))))) (#(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 y y (*.f64 x (+.f64 y x))))))) (#(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 (*.f64 36 (pow.f64 (-.f64 y x) 2)) 1/2)))) (#(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 pow.f64 (exp.f64 1) (log.f64 (*.f64 (-.f64 y x) 6)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 (-.f64 y x) 6))) 2)) (cbrt.f64 (log.f64 (*.f64 (-.f64 y x) 6))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 (-.f64 y x) 6)))) (sqrt.f64 (log.f64 (*.f64 (-.f64 y x) 6))))))) (#(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 exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 (-.f64 y x) 6))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (-.f64 y x) 6))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (-.f64 y x) 6))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (-.f64 y x) 6)) 1) 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 (exp.f64 (log1p.f64 (fma.f64 (-.f64 y x) (*.f64 6 z) x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 x x) (-.f64 x (*.f64 (-.f64 y x) (*.f64 6 z)))) (/.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 (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 (+.f64 (pow.f64 x 3) (pow.f64 (*.f64 (-.f64 y x) (*.f64 6 z)) 3)) (/.f64 1 (fma.f64 (*.f64 (-.f64 y x) (*.f64 6 z)) (-.f64 (*.f64 (-.f64 y x) (*.f64 6 z)) x) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 (-.f64 y x) (*.f64 6 z)) 2)) (/.f64 1 (-.f64 x (*.f64 (-.f64 y x) (*.f64 6 z)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (*.f64 (-.f64 y x) (*.f64 6 z)) (-.f64 (*.f64 (-.f64 y x) (*.f64 6 z)) x) (*.f64 x x)) (+.f64 (pow.f64 x 3) (pow.f64 (*.f64 (-.f64 y x) (*.f64 6 z)) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 x (*.f64 (-.f64 y x) (*.f64 6 z))) (-.f64 (*.f64 x x) (pow.f64 (*.f64 (-.f64 y x) (*.f64 6 z)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 x 3) (pow.f64 (*.f64 (-.f64 y x) (*.f64 6 z)) 3)) (fma.f64 (*.f64 (-.f64 y x) (*.f64 6 z)) (-.f64 (*.f64 (-.f64 y x) (*.f64 6 z)) 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 z)) 3)) (+.f64 (pow.f64 (*.f64 (-.f64 y x) (*.f64 6 z)) 2) (-.f64 (*.f64 x x) (*.f64 (*.f64 x (-.f64 y x)) (*.f64 6 z)))))))) (#(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 /.f64 (neg.f64 (+.f64 (pow.f64 x 3) (pow.f64 (*.f64 (-.f64 y x) (*.f64 6 z)) 3))) (neg.f64 (fma.f64 (*.f64 (-.f64 y x) (*.f64 6 z)) (-.f64 (*.f64 (-.f64 y x) (*.f64 6 z)) 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 z)) 2))) (neg.f64 (-.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 pow.f64 (fma.f64 (-.f64 y x) (*.f64 6 z) x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (-.f64 y x) (*.f64 6 z) x) 2) 1/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 (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 (exp.f64 1) (log.f64 (fma.f64 (-.f64 y x) (*.f64 6 z) x)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 (*.f64 (-.f64 y x) (*.f64 6 z)) (-.f64 (*.f64 (-.f64 y x) (*.f64 6 z)) x) (*.f64 x x)) (+.f64 (pow.f64 x 3) (pow.f64 (*.f64 (-.f64 y x) (*.f64 6 z)) 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (-.f64 x (*.f64 (-.f64 y x) (*.f64 6 z))) (-.f64 (*.f64 x x) (pow.f64 (*.f64 (-.f64 y x) (*.f64 6 z)) 2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (fma.f64 (-.f64 y x) (*.f64 6 z) x))) 2)) (cbrt.f64 (log.f64 (fma.f64 (-.f64 y x) (*.f64 6 z) x))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (fma.f64 (-.f64 y x) (*.f64 6 z) x)))) (sqrt.f64 (log.f64 (fma.f64 (-.f64 y x) (*.f64 6 z) x))))))) (#(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 (exp.f64 z) (*.f64 (-.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 (exp.f64 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 (-.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 exp.f64 (*.f64 (*.f64 3 (log.f64 (fma.f64 (-.f64 y x) (*.f64 6 z) x))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (fma.f64 (-.f64 y x) (*.f64 6 z) x))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (fma.f64 (-.f64 y x) (*.f64 6 z) x))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (fma.f64 (-.f64 y x) (*.f64 6 z) x)) 1) 1))))) (#(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 6 (*.f64 (-.f64 y x) z) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 y x) 6) z 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 (*.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 (*.f64 36 (pow.f64 (-.f64 y x) 2))) (*.f64 (cbrt.f64 (*.f64 (-.f64 y x) 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 (cbrt.f64 (*.f64 z z)) (*.f64 (cbrt.f64 z) (*.f64 (-.f64 y x) 6)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (-.f64 y x) 2)) (*.f64 (cbrt.f64 (-.f64 y x)) (*.f64 6 z)) 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 (*.f64 (-.f64 y x) 6)) (*.f64 (sqrt.f64 (*.f64 (-.f64 y x) 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 z) (*.f64 (sqrt.f64 z) (*.f64 (-.f64 y x) 6)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 y x)) (*.f64 (sqrt.f64 (-.f64 y x)) (*.f64 6 z)) 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 (*.f64 (-.f64 y x) 6) (cbrt.f64 (*.f64 z z))) (cbrt.f64 z) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 (-.f64 y x) 6) (sqrt.f64 z)) (sqrt.f64 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 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 z (sqrt.f64 (*.f64 (-.f64 y x) 6))) (sqrt.f64 (*.f64 (-.f64 y x) 6)) x)))))

simplify105.0ms (1.2%)

Algorithm
egg-herbie
Rules
696×fma-def_binary64
545×fma-neg_binary64
110×cancel-sign-sub-inv_binary64
107×distribute-rgt-in_binary64
82×associate-*r*_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0321169
1761109
2158873
3330855
4613855
51055855
61659855
72206855
82439855
92529855
102529855
Stop Event
saturated
Counts
226 → 150
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 6 (*.f64 z (-.f64 y x)))
(*.f64 6 (*.f64 z (-.f64 y x)))
(*.f64 6 (*.f64 z (-.f64 y x)))
(*.f64 6 (*.f64 z (-.f64 y x)))
(*.f64 6 (*.f64 z (-.f64 y x)))
(*.f64 6 (*.f64 z (-.f64 y x)))
(*.f64 6 (*.f64 z (-.f64 y x)))
(*.f64 6 (*.f64 z (-.f64 y x)))
(*.f64 6 (*.f64 z (-.f64 y x)))
(*.f64 6 (*.f64 z (-.f64 y x)))
(*.f64 6 (*.f64 z (-.f64 y x)))
(*.f64 6 (*.f64 z (-.f64 y 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))
(*.f64 6 (*.f64 y z))
(+.f64 (*.f64 6 (*.f64 y z)) (*.f64 (+.f64 1 (*.f64 -6 z)) x))
(+.f64 (*.f64 6 (*.f64 y z)) (*.f64 (+.f64 1 (*.f64 -6 z)) x))
(+.f64 (*.f64 6 (*.f64 y z)) (*.f64 (+.f64 1 (*.f64 -6 z)) x))
(*.f64 (+.f64 1 (*.f64 -6 z)) x)
(+.f64 (*.f64 6 (*.f64 y z)) (*.f64 (+.f64 1 (*.f64 -6 z)) x))
(+.f64 (*.f64 6 (*.f64 y z)) (*.f64 (+.f64 1 (*.f64 -6 z)) x))
(+.f64 (*.f64 6 (*.f64 y z)) (*.f64 (+.f64 1 (*.f64 -6 z)) x))
(*.f64 -1 (*.f64 (-.f64 (*.f64 6 z) 1) x))
(+.f64 (*.f64 6 (*.f64 y z)) (*.f64 -1 (*.f64 (-.f64 (*.f64 6 z) 1) x)))
(+.f64 (*.f64 6 (*.f64 y z)) (*.f64 -1 (*.f64 (-.f64 (*.f64 6 z) 1) x)))
(+.f64 (*.f64 6 (*.f64 y z)) (*.f64 -1 (*.f64 (-.f64 (*.f64 6 z) 1) 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))
x
(+.f64 (*.f64 6 (*.f64 z (-.f64 y x))) x)
(+.f64 (*.f64 6 (*.f64 z (-.f64 y x))) x)
(+.f64 (*.f64 6 (*.f64 z (-.f64 y x))) x)
(*.f64 6 (*.f64 z (-.f64 y x)))
(+.f64 (*.f64 6 (*.f64 z (-.f64 y x))) x)
(+.f64 (*.f64 6 (*.f64 z (-.f64 y x))) x)
(+.f64 (*.f64 6 (*.f64 z (-.f64 y x))) x)
(*.f64 6 (*.f64 z (-.f64 y x)))
(+.f64 (*.f64 6 (*.f64 z (-.f64 y x))) x)
(+.f64 (*.f64 6 (*.f64 z (-.f64 y x))) x)
(+.f64 (*.f64 6 (*.f64 z (-.f64 y x))) x)
Outputs
(*.f64 -6 (*.f64 z 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 6 (*.f64 z (-.f64 y x)))
(*.f64 -6 (*.f64 z (-.f64 x 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 6 (*.f64 z (-.f64 y x)))
(*.f64 -6 (*.f64 z (-.f64 x 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 6 (*.f64 z (-.f64 y x)))
(*.f64 -6 (*.f64 z (-.f64 x y)))
(*.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 6 (*.f64 z (-.f64 y x)))
(*.f64 -6 (*.f64 z (-.f64 x 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 6 (*.f64 z (-.f64 y x)))
(*.f64 -6 (*.f64 z (-.f64 x 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 6 (*.f64 z (-.f64 y x)))
(*.f64 -6 (*.f64 z (-.f64 x y)))
(*.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 6 (*.f64 z (-.f64 y x)))
(*.f64 -6 (*.f64 z (-.f64 x 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 6 (*.f64 z (-.f64 y x)))
(*.f64 -6 (*.f64 z (-.f64 x 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 6 (*.f64 z (-.f64 y x)))
(*.f64 -6 (*.f64 z (-.f64 x y)))
(*.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 6 (*.f64 z (-.f64 y x)))
(*.f64 -6 (*.f64 z (-.f64 x 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 6 (*.f64 z (-.f64 y x)))
(*.f64 -6 (*.f64 z (-.f64 x 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 6 (*.f64 z (-.f64 y x)))
(*.f64 -6 (*.f64 z (-.f64 x y)))
(*.f64 -6 (*.f64 z 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 6 (*.f64 z (-.f64 y x)))
(*.f64 -6 (*.f64 z (-.f64 x 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 6 (*.f64 z (-.f64 y x)))
(*.f64 -6 (*.f64 z (-.f64 x 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 6 (*.f64 z (-.f64 y x)))
(*.f64 -6 (*.f64 z (-.f64 x y)))
(*.f64 -6 (*.f64 z 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 6 (*.f64 z (-.f64 y x)))
(*.f64 -6 (*.f64 z (-.f64 x 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 6 (*.f64 z (-.f64 y x)))
(*.f64 -6 (*.f64 z (-.f64 x 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 6 (*.f64 z (-.f64 y x)))
(*.f64 -6 (*.f64 z (-.f64 x y)))
(*.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 -6 (*.f64 z (-.f64 x y)))
(*.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 -6 (*.f64 z (-.f64 x y)))
(*.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 -6 (*.f64 z (-.f64 x y)))
(*.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 -6 (*.f64 z (-.f64 x y)))
(*.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 -6 (*.f64 z (-.f64 x y)))
(*.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 -6 (*.f64 z (-.f64 x y)))
(*.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 -6 (*.f64 z (-.f64 x y)))
(*.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 -6 (*.f64 z (-.f64 x y)))
(*.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 -6 (*.f64 z (-.f64 x y)))
(*.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 -6 (*.f64 z (-.f64 x y)))
(*.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 -6 (*.f64 z (-.f64 x y)))
(*.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 -6 (*.f64 z (-.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 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))
(*.f64 6 (*.f64 y z))
(*.f64 6 (*.f64 z y))
(*.f64 z (*.f64 6 y))
(+.f64 (*.f64 6 (*.f64 y z)) (*.f64 (+.f64 1 (*.f64 -6 z)) x))
(fma.f64 6 (*.f64 z y) (*.f64 x (+.f64 1 (*.f64 -6 z))))
(fma.f64 -6 (*.f64 z x) (fma.f64 6 (*.f64 z y) x))
(fma.f64 6 (*.f64 z (-.f64 y x)) x)
(fma.f64 z (*.f64 -6 (-.f64 x y)) x)
(fma.f64 -6 (*.f64 z (-.f64 x y)) x)
(+.f64 (*.f64 6 (*.f64 y z)) (*.f64 (+.f64 1 (*.f64 -6 z)) x))
(fma.f64 6 (*.f64 z y) (*.f64 x (+.f64 1 (*.f64 -6 z))))
(fma.f64 -6 (*.f64 z x) (fma.f64 6 (*.f64 z y) x))
(fma.f64 6 (*.f64 z (-.f64 y x)) x)
(fma.f64 z (*.f64 -6 (-.f64 x y)) x)
(fma.f64 -6 (*.f64 z (-.f64 x y)) x)
(+.f64 (*.f64 6 (*.f64 y z)) (*.f64 (+.f64 1 (*.f64 -6 z)) x))
(fma.f64 6 (*.f64 z y) (*.f64 x (+.f64 1 (*.f64 -6 z))))
(fma.f64 -6 (*.f64 z x) (fma.f64 6 (*.f64 z y) x))
(fma.f64 6 (*.f64 z (-.f64 y x)) x)
(fma.f64 z (*.f64 -6 (-.f64 x y)) x)
(fma.f64 -6 (*.f64 z (-.f64 x y)) x)
(*.f64 (+.f64 1 (*.f64 -6 z)) x)
(*.f64 x (+.f64 1 (*.f64 -6 z)))
(*.f64 x (fma.f64 -6 z 1))
(+.f64 (*.f64 6 (*.f64 y z)) (*.f64 (+.f64 1 (*.f64 -6 z)) x))
(fma.f64 6 (*.f64 z y) (*.f64 x (+.f64 1 (*.f64 -6 z))))
(fma.f64 -6 (*.f64 z x) (fma.f64 6 (*.f64 z y) x))
(fma.f64 6 (*.f64 z (-.f64 y x)) x)
(fma.f64 z (*.f64 -6 (-.f64 x y)) x)
(fma.f64 -6 (*.f64 z (-.f64 x y)) x)
(+.f64 (*.f64 6 (*.f64 y z)) (*.f64 (+.f64 1 (*.f64 -6 z)) x))
(fma.f64 6 (*.f64 z y) (*.f64 x (+.f64 1 (*.f64 -6 z))))
(fma.f64 -6 (*.f64 z x) (fma.f64 6 (*.f64 z y) x))
(fma.f64 6 (*.f64 z (-.f64 y x)) x)
(fma.f64 z (*.f64 -6 (-.f64 x y)) x)
(fma.f64 -6 (*.f64 z (-.f64 x y)) x)
(+.f64 (*.f64 6 (*.f64 y z)) (*.f64 (+.f64 1 (*.f64 -6 z)) x))
(fma.f64 6 (*.f64 z y) (*.f64 x (+.f64 1 (*.f64 -6 z))))
(fma.f64 -6 (*.f64 z x) (fma.f64 6 (*.f64 z y) x))
(fma.f64 6 (*.f64 z (-.f64 y x)) x)
(fma.f64 z (*.f64 -6 (-.f64 x y)) x)
(fma.f64 -6 (*.f64 z (-.f64 x y)) x)
(*.f64 -1 (*.f64 (-.f64 (*.f64 6 z) 1) x))
(*.f64 x (+.f64 1 (*.f64 -6 z)))
(*.f64 x (fma.f64 -6 z 1))
(+.f64 (*.f64 6 (*.f64 y z)) (*.f64 -1 (*.f64 (-.f64 (*.f64 6 z) 1) x)))
(fma.f64 6 (*.f64 z y) (*.f64 x (+.f64 1 (*.f64 -6 z))))
(fma.f64 -6 (*.f64 z x) (fma.f64 6 (*.f64 z y) x))
(fma.f64 6 (*.f64 z (-.f64 y x)) x)
(fma.f64 z (*.f64 -6 (-.f64 x y)) x)
(fma.f64 -6 (*.f64 z (-.f64 x y)) x)
(+.f64 (*.f64 6 (*.f64 y z)) (*.f64 -1 (*.f64 (-.f64 (*.f64 6 z) 1) x)))
(fma.f64 6 (*.f64 z y) (*.f64 x (+.f64 1 (*.f64 -6 z))))
(fma.f64 -6 (*.f64 z x) (fma.f64 6 (*.f64 z y) x))
(fma.f64 6 (*.f64 z (-.f64 y x)) x)
(fma.f64 z (*.f64 -6 (-.f64 x y)) x)
(fma.f64 -6 (*.f64 z (-.f64 x y)) x)
(+.f64 (*.f64 6 (*.f64 y z)) (*.f64 -1 (*.f64 (-.f64 (*.f64 6 z) 1) x)))
(fma.f64 6 (*.f64 z y) (*.f64 x (+.f64 1 (*.f64 -6 z))))
(fma.f64 -6 (*.f64 z x) (fma.f64 6 (*.f64 z y) x))
(fma.f64 6 (*.f64 z (-.f64 y x)) x)
(fma.f64 z (*.f64 -6 (-.f64 x y)) x)
(fma.f64 -6 (*.f64 z (-.f64 x y)) x)
(+.f64 (*.f64 -6 (*.f64 z x)) x)
(*.f64 x (+.f64 1 (*.f64 -6 z)))
(*.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 y) (*.f64 x (+.f64 1 (*.f64 -6 z))))
(fma.f64 -6 (*.f64 z x) (fma.f64 6 (*.f64 z y) x))
(fma.f64 6 (*.f64 z (-.f64 y x)) x)
(fma.f64 z (*.f64 -6 (-.f64 x y)) x)
(fma.f64 -6 (*.f64 z (-.f64 x y)) x)
(+.f64 (*.f64 -6 (*.f64 z x)) (+.f64 (*.f64 6 (*.f64 y z)) x))
(fma.f64 6 (*.f64 z y) (*.f64 x (+.f64 1 (*.f64 -6 z))))
(fma.f64 -6 (*.f64 z x) (fma.f64 6 (*.f64 z y) x))
(fma.f64 6 (*.f64 z (-.f64 y x)) x)
(fma.f64 z (*.f64 -6 (-.f64 x y)) x)
(fma.f64 -6 (*.f64 z (-.f64 x y)) x)
(+.f64 (*.f64 -6 (*.f64 z x)) (+.f64 (*.f64 6 (*.f64 y z)) x))
(fma.f64 6 (*.f64 z y) (*.f64 x (+.f64 1 (*.f64 -6 z))))
(fma.f64 -6 (*.f64 z x) (fma.f64 6 (*.f64 z y) x))
(fma.f64 6 (*.f64 z (-.f64 y x)) x)
(fma.f64 z (*.f64 -6 (-.f64 x y)) x)
(fma.f64 -6 (*.f64 z (-.f64 x y)) 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 y) (*.f64 x (+.f64 1 (*.f64 -6 z))))
(fma.f64 -6 (*.f64 z x) (fma.f64 6 (*.f64 z y) x))
(fma.f64 6 (*.f64 z (-.f64 y x)) x)
(fma.f64 z (*.f64 -6 (-.f64 x y)) x)
(fma.f64 -6 (*.f64 z (-.f64 x y)) x)
(+.f64 (*.f64 -6 (*.f64 z x)) (+.f64 (*.f64 6 (*.f64 y z)) x))
(fma.f64 6 (*.f64 z y) (*.f64 x (+.f64 1 (*.f64 -6 z))))
(fma.f64 -6 (*.f64 z x) (fma.f64 6 (*.f64 z y) x))
(fma.f64 6 (*.f64 z (-.f64 y x)) x)
(fma.f64 z (*.f64 -6 (-.f64 x y)) x)
(fma.f64 -6 (*.f64 z (-.f64 x y)) x)
(+.f64 (*.f64 -6 (*.f64 z x)) (+.f64 (*.f64 6 (*.f64 y z)) x))
(fma.f64 6 (*.f64 z y) (*.f64 x (+.f64 1 (*.f64 -6 z))))
(fma.f64 -6 (*.f64 z x) (fma.f64 6 (*.f64 z y) x))
(fma.f64 6 (*.f64 z (-.f64 y x)) x)
(fma.f64 z (*.f64 -6 (-.f64 x y)) x)
(fma.f64 -6 (*.f64 z (-.f64 x y)) 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 y) (*.f64 x (+.f64 1 (*.f64 -6 z))))
(fma.f64 -6 (*.f64 z x) (fma.f64 6 (*.f64 z y) x))
(fma.f64 6 (*.f64 z (-.f64 y x)) x)
(fma.f64 z (*.f64 -6 (-.f64 x y)) x)
(fma.f64 -6 (*.f64 z (-.f64 x y)) x)
(+.f64 (*.f64 -6 (*.f64 z x)) (+.f64 (*.f64 6 (*.f64 y z)) x))
(fma.f64 6 (*.f64 z y) (*.f64 x (+.f64 1 (*.f64 -6 z))))
(fma.f64 -6 (*.f64 z x) (fma.f64 6 (*.f64 z y) x))
(fma.f64 6 (*.f64 z (-.f64 y x)) x)
(fma.f64 z (*.f64 -6 (-.f64 x y)) x)
(fma.f64 -6 (*.f64 z (-.f64 x y)) x)
(+.f64 (*.f64 -6 (*.f64 z x)) (+.f64 (*.f64 6 (*.f64 y z)) x))
(fma.f64 6 (*.f64 z y) (*.f64 x (+.f64 1 (*.f64 -6 z))))
(fma.f64 -6 (*.f64 z x) (fma.f64 6 (*.f64 z y) x))
(fma.f64 6 (*.f64 z (-.f64 y x)) x)
(fma.f64 z (*.f64 -6 (-.f64 x y)) x)
(fma.f64 -6 (*.f64 z (-.f64 x y)) x)
x
(+.f64 (*.f64 6 (*.f64 z (-.f64 y x))) x)
(fma.f64 6 (*.f64 z y) (*.f64 x (+.f64 1 (*.f64 -6 z))))
(fma.f64 -6 (*.f64 z x) (fma.f64 6 (*.f64 z y) x))
(fma.f64 6 (*.f64 z (-.f64 y x)) x)
(fma.f64 z (*.f64 -6 (-.f64 x y)) x)
(fma.f64 -6 (*.f64 z (-.f64 x y)) x)
(+.f64 (*.f64 6 (*.f64 z (-.f64 y x))) x)
(fma.f64 6 (*.f64 z y) (*.f64 x (+.f64 1 (*.f64 -6 z))))
(fma.f64 -6 (*.f64 z x) (fma.f64 6 (*.f64 z y) x))
(fma.f64 6 (*.f64 z (-.f64 y x)) x)
(fma.f64 z (*.f64 -6 (-.f64 x y)) x)
(fma.f64 -6 (*.f64 z (-.f64 x y)) x)
(+.f64 (*.f64 6 (*.f64 z (-.f64 y x))) x)
(fma.f64 6 (*.f64 z y) (*.f64 x (+.f64 1 (*.f64 -6 z))))
(fma.f64 -6 (*.f64 z x) (fma.f64 6 (*.f64 z y) x))
(fma.f64 6 (*.f64 z (-.f64 y x)) x)
(fma.f64 z (*.f64 -6 (-.f64 x y)) x)
(fma.f64 -6 (*.f64 z (-.f64 x 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 -6 (*.f64 z (-.f64 x y)))
(+.f64 (*.f64 6 (*.f64 z (-.f64 y x))) x)
(fma.f64 6 (*.f64 z y) (*.f64 x (+.f64 1 (*.f64 -6 z))))
(fma.f64 -6 (*.f64 z x) (fma.f64 6 (*.f64 z y) x))
(fma.f64 6 (*.f64 z (-.f64 y x)) x)
(fma.f64 z (*.f64 -6 (-.f64 x y)) x)
(fma.f64 -6 (*.f64 z (-.f64 x y)) x)
(+.f64 (*.f64 6 (*.f64 z (-.f64 y x))) x)
(fma.f64 6 (*.f64 z y) (*.f64 x (+.f64 1 (*.f64 -6 z))))
(fma.f64 -6 (*.f64 z x) (fma.f64 6 (*.f64 z y) x))
(fma.f64 6 (*.f64 z (-.f64 y x)) x)
(fma.f64 z (*.f64 -6 (-.f64 x y)) x)
(fma.f64 -6 (*.f64 z (-.f64 x y)) x)
(+.f64 (*.f64 6 (*.f64 z (-.f64 y x))) x)
(fma.f64 6 (*.f64 z y) (*.f64 x (+.f64 1 (*.f64 -6 z))))
(fma.f64 -6 (*.f64 z x) (fma.f64 6 (*.f64 z y) x))
(fma.f64 6 (*.f64 z (-.f64 y x)) x)
(fma.f64 z (*.f64 -6 (-.f64 x y)) x)
(fma.f64 -6 (*.f64 z (-.f64 x 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 -6 (*.f64 z (-.f64 x y)))
(+.f64 (*.f64 6 (*.f64 z (-.f64 y x))) x)
(fma.f64 6 (*.f64 z y) (*.f64 x (+.f64 1 (*.f64 -6 z))))
(fma.f64 -6 (*.f64 z x) (fma.f64 6 (*.f64 z y) x))
(fma.f64 6 (*.f64 z (-.f64 y x)) x)
(fma.f64 z (*.f64 -6 (-.f64 x y)) x)
(fma.f64 -6 (*.f64 z (-.f64 x y)) x)
(+.f64 (*.f64 6 (*.f64 z (-.f64 y x))) x)
(fma.f64 6 (*.f64 z y) (*.f64 x (+.f64 1 (*.f64 -6 z))))
(fma.f64 -6 (*.f64 z x) (fma.f64 6 (*.f64 z y) x))
(fma.f64 6 (*.f64 z (-.f64 y x)) x)
(fma.f64 z (*.f64 -6 (-.f64 x y)) x)
(fma.f64 -6 (*.f64 z (-.f64 x y)) x)
(+.f64 (*.f64 6 (*.f64 z (-.f64 y x))) x)
(fma.f64 6 (*.f64 z y) (*.f64 x (+.f64 1 (*.f64 -6 z))))
(fma.f64 -6 (*.f64 z x) (fma.f64 6 (*.f64 z y) x))
(fma.f64 6 (*.f64 z (-.f64 y x)) x)
(fma.f64 z (*.f64 -6 (-.f64 x y)) x)
(fma.f64 -6 (*.f64 z (-.f64 x y)) x)

localize9.0ms (0.1%)

Local error

Found 2 expressions with local error:

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

Compiled 23 to 10 computations (56.5% saved)

series5.0ms (0.1%)

Counts
1 → 36
Calls

9 calls:

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

rewrite63.0ms (0.7%)

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

Useful iterations: 0 (0.0ms)

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

simplify91.0ms (1%)

Algorithm
egg-herbie
Rules
702×fma-def_binary64
563×fma-neg_binary64
110×cancel-sign-sub-inv_binary64
107×distribute-rgt-in_binary64
87×associate-*l*_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
028471
168471
2152363
3340363
4630363
51076363
61707363
72254363
82487363
92577363
102577363
Stop Event
saturated
Counts
57 → 35
Calls
Call 1
Inputs
(+.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 6 (*.f64 y z)) (*.f64 (+.f64 1 (*.f64 -6 z)) x))
(+.f64 (*.f64 6 (*.f64 y z)) (*.f64 (+.f64 1 (*.f64 -6 z)) x))
(+.f64 (*.f64 6 (*.f64 y z)) (*.f64 (+.f64 1 (*.f64 -6 z)) x))
(*.f64 (+.f64 1 (*.f64 -6 z)) x)
(+.f64 (*.f64 6 (*.f64 y z)) (*.f64 (+.f64 1 (*.f64 -6 z)) x))
(+.f64 (*.f64 6 (*.f64 y z)) (*.f64 (+.f64 1 (*.f64 -6 z)) x))
(+.f64 (*.f64 6 (*.f64 y z)) (*.f64 (+.f64 1 (*.f64 -6 z)) x))
(*.f64 -1 (*.f64 (-.f64 (*.f64 6 z) 1) x))
(+.f64 (*.f64 6 (*.f64 y z)) (*.f64 -1 (*.f64 (-.f64 (*.f64 6 z) 1) x)))
(+.f64 (*.f64 6 (*.f64 y z)) (*.f64 -1 (*.f64 (-.f64 (*.f64 6 z) 1) x)))
(+.f64 (*.f64 6 (*.f64 y z)) (*.f64 -1 (*.f64 (-.f64 (*.f64 6 z) 1) x)))
x
(+.f64 (*.f64 6 (*.f64 z (-.f64 y x))) x)
(+.f64 (*.f64 6 (*.f64 z (-.f64 y x))) x)
(+.f64 (*.f64 6 (*.f64 z (-.f64 y x))) x)
(*.f64 6 (*.f64 z (-.f64 y x)))
(+.f64 (*.f64 6 (*.f64 z (-.f64 y x))) x)
(+.f64 (*.f64 6 (*.f64 z (-.f64 y x))) x)
(+.f64 (*.f64 6 (*.f64 z (-.f64 y x))) x)
(*.f64 6 (*.f64 z (-.f64 y x)))
(+.f64 (*.f64 6 (*.f64 z (-.f64 y x))) x)
(+.f64 (*.f64 6 (*.f64 z (-.f64 y x))) x)
(+.f64 (*.f64 6 (*.f64 z (-.f64 y x))) x)
Outputs
(+.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))
(fma.f64 6 (*.f64 z (-.f64 y x)) x)
(fma.f64 (*.f64 z 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))
(fma.f64 6 (*.f64 z (-.f64 y x)) x)
(fma.f64 (*.f64 z 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))
(fma.f64 6 (*.f64 z (-.f64 y x)) x)
(fma.f64 (*.f64 z 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))
(fma.f64 6 (*.f64 z (-.f64 y x)) x)
(fma.f64 (*.f64 z 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))
(fma.f64 6 (*.f64 z (-.f64 y x)) x)
(fma.f64 (*.f64 z 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))
(fma.f64 6 (*.f64 z (-.f64 y x)) x)
(fma.f64 (*.f64 z 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))
(fma.f64 6 (*.f64 z (-.f64 y x)) x)
(fma.f64 (*.f64 z 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))
(fma.f64 6 (*.f64 z (-.f64 y x)) x)
(fma.f64 (*.f64 z 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))
(fma.f64 6 (*.f64 z (-.f64 y x)) x)
(fma.f64 (*.f64 z 6) (-.f64 y x) x)
(*.f64 6 (*.f64 y z))
(*.f64 6 (*.f64 z y))
(*.f64 z (*.f64 6 y))
(+.f64 (*.f64 6 (*.f64 y z)) (*.f64 (+.f64 1 (*.f64 -6 z)) x))
(fma.f64 -6 (*.f64 z x) (fma.f64 6 (*.f64 z y) x))
(fma.f64 6 (*.f64 z (-.f64 y x)) x)
(fma.f64 (*.f64 z 6) (-.f64 y x) x)
(+.f64 (*.f64 6 (*.f64 y z)) (*.f64 (+.f64 1 (*.f64 -6 z)) x))
(fma.f64 -6 (*.f64 z x) (fma.f64 6 (*.f64 z y) x))
(fma.f64 6 (*.f64 z (-.f64 y x)) x)
(fma.f64 (*.f64 z 6) (-.f64 y x) x)
(+.f64 (*.f64 6 (*.f64 y z)) (*.f64 (+.f64 1 (*.f64 -6 z)) x))
(fma.f64 -6 (*.f64 z x) (fma.f64 6 (*.f64 z y) x))
(fma.f64 6 (*.f64 z (-.f64 y x)) x)
(fma.f64 (*.f64 z 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 6 (*.f64 y z)) (*.f64 (+.f64 1 (*.f64 -6 z)) x))
(fma.f64 -6 (*.f64 z x) (fma.f64 6 (*.f64 z y) x))
(fma.f64 6 (*.f64 z (-.f64 y x)) x)
(fma.f64 (*.f64 z 6) (-.f64 y x) x)
(+.f64 (*.f64 6 (*.f64 y z)) (*.f64 (+.f64 1 (*.f64 -6 z)) x))
(fma.f64 -6 (*.f64 z x) (fma.f64 6 (*.f64 z y) x))
(fma.f64 6 (*.f64 z (-.f64 y x)) x)
(fma.f64 (*.f64 z 6) (-.f64 y x) x)
(+.f64 (*.f64 6 (*.f64 y z)) (*.f64 (+.f64 1 (*.f64 -6 z)) x))
(fma.f64 -6 (*.f64 z x) (fma.f64 6 (*.f64 z y) x))
(fma.f64 6 (*.f64 z (-.f64 y x)) x)
(fma.f64 (*.f64 z 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 6 (*.f64 y z)) (*.f64 -1 (*.f64 (-.f64 (*.f64 6 z) 1) x)))
(fma.f64 -6 (*.f64 z x) (fma.f64 6 (*.f64 z y) x))
(fma.f64 6 (*.f64 z (-.f64 y x)) x)
(fma.f64 (*.f64 z 6) (-.f64 y x) x)
(+.f64 (*.f64 6 (*.f64 y z)) (*.f64 -1 (*.f64 (-.f64 (*.f64 6 z) 1) x)))
(fma.f64 -6 (*.f64 z x) (fma.f64 6 (*.f64 z y) x))
(fma.f64 6 (*.f64 z (-.f64 y x)) x)
(fma.f64 (*.f64 z 6) (-.f64 y x) x)
(+.f64 (*.f64 6 (*.f64 y z)) (*.f64 -1 (*.f64 (-.f64 (*.f64 6 z) 1) x)))
(fma.f64 -6 (*.f64 z x) (fma.f64 6 (*.f64 z y) x))
(fma.f64 6 (*.f64 z (-.f64 y x)) x)
(fma.f64 (*.f64 z 6) (-.f64 y x) x)
x
(+.f64 (*.f64 6 (*.f64 z (-.f64 y x))) x)
(fma.f64 -6 (*.f64 z x) (fma.f64 6 (*.f64 z y) x))
(fma.f64 6 (*.f64 z (-.f64 y x)) x)
(fma.f64 (*.f64 z 6) (-.f64 y x) x)
(+.f64 (*.f64 6 (*.f64 z (-.f64 y x))) x)
(fma.f64 -6 (*.f64 z x) (fma.f64 6 (*.f64 z y) x))
(fma.f64 6 (*.f64 z (-.f64 y x)) x)
(fma.f64 (*.f64 z 6) (-.f64 y x) x)
(+.f64 (*.f64 6 (*.f64 z (-.f64 y x))) x)
(fma.f64 -6 (*.f64 z x) (fma.f64 6 (*.f64 z y) x))
(fma.f64 6 (*.f64 z (-.f64 y x)) x)
(fma.f64 (*.f64 z 6) (-.f64 y x) x)
(*.f64 6 (*.f64 z (-.f64 y x)))
(*.f64 z (*.f64 (-.f64 y x) 6))
(*.f64 z (*.f64 6 (-.f64 y x)))
(*.f64 -6 (*.f64 z (-.f64 x y)))
(+.f64 (*.f64 6 (*.f64 z (-.f64 y x))) x)
(fma.f64 -6 (*.f64 z x) (fma.f64 6 (*.f64 z y) x))
(fma.f64 6 (*.f64 z (-.f64 y x)) x)
(fma.f64 (*.f64 z 6) (-.f64 y x) x)
(+.f64 (*.f64 6 (*.f64 z (-.f64 y x))) x)
(fma.f64 -6 (*.f64 z x) (fma.f64 6 (*.f64 z y) x))
(fma.f64 6 (*.f64 z (-.f64 y x)) x)
(fma.f64 (*.f64 z 6) (-.f64 y x) x)
(+.f64 (*.f64 6 (*.f64 z (-.f64 y x))) x)
(fma.f64 -6 (*.f64 z x) (fma.f64 6 (*.f64 z y) x))
(fma.f64 6 (*.f64 z (-.f64 y x)) x)
(fma.f64 (*.f64 z 6) (-.f64 y x) x)
(*.f64 6 (*.f64 z (-.f64 y x)))
(*.f64 z (*.f64 (-.f64 y x) 6))
(*.f64 z (*.f64 6 (-.f64 y x)))
(*.f64 -6 (*.f64 z (-.f64 x y)))
(+.f64 (*.f64 6 (*.f64 z (-.f64 y x))) x)
(fma.f64 -6 (*.f64 z x) (fma.f64 6 (*.f64 z y) x))
(fma.f64 6 (*.f64 z (-.f64 y x)) x)
(fma.f64 (*.f64 z 6) (-.f64 y x) x)
(+.f64 (*.f64 6 (*.f64 z (-.f64 y x))) x)
(fma.f64 -6 (*.f64 z x) (fma.f64 6 (*.f64 z y) x))
(fma.f64 6 (*.f64 z (-.f64 y x)) x)
(fma.f64 (*.f64 z 6) (-.f64 y x) x)
(+.f64 (*.f64 6 (*.f64 z (-.f64 y x))) x)
(fma.f64 -6 (*.f64 z x) (fma.f64 6 (*.f64 z y) x))
(fma.f64 6 (*.f64 z (-.f64 y x)) x)
(fma.f64 (*.f64 z 6) (-.f64 y x) x)

eval104.0ms (1.2%)

Compiler

Compiled 3070 to 1650 computations (46.3% saved)

prune85.0ms (1%)

Pruning

14 alts after pruning (13 fresh and 1 done)

PrunedKeptTotal
New20813221
Fresh000
Picked101
Done011
Total20914223
Error
0b
Counts
223 → 14
Alt Table
Click to see full alt table
StatusErrorProgram
41.2b
(*.f64 6 (*.f64 y z))
29.4b
(+.f64 x (*.f64 (pow.f64 (sqrt.f64 (*.f64 (-.f64 y x) 6)) 2) z))
30.7b
(+.f64 x (pow.f64 (sqrt.f64 (*.f64 (-.f64 y x) (*.f64 6 z))) 2))
21.9b
(*.f64 (+.f64 1 (*.f64 -6 z)) x)
0.2b
(+.f64 x (*.f64 (*.f64 (-.f64 y x) 6) z))
21.9b
(*.f64 x (fma.f64 -6 z 1))
27.1b
(+.f64 x (/.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (*.f64 6 z)) (+.f64 y x)))
0.2b
(+.f64 (*.f64 (-.f64 y x) (*.f64 6 z)) x)
14.7b
(+.f64 x (*.f64 (*.f64 6 y) z))
27.0b
(*.f64 6 (*.f64 z (-.f64 y x)))
21.9b
(+.f64 x (*.f64 (*.f64 -6 x) z))
35.7b
x
14.6b
(+.f64 x (*.f64 6 (*.f64 y z)))
41.2b
(*.f64 z (*.f64 6 y))
Compiler

Compiled 290 to 205 computations (29.3% saved)

localize23.0ms (0.3%)

Local error

Found 2 expressions with local error:

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

Compiled 29 to 14 computations (51.7% saved)

series10.0ms (0.1%)

Counts
2 → 72
Calls

18 calls:

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

rewrite112.0ms (1.3%)

Algorithm
batch-egg-rewrite
Rules
514×log-prod_binary64
382×exp-prod_binary64
376×pow-prod-down_binary64
372×fma-def_binary64
276×pow2_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0921
120221
2283621
Stop Event
node limit
Counts
2 → 105
Calls
Call 1
Inputs
(*.f64 (-.f64 y x) (*.f64 6 z))
(+.f64 (*.f64 (-.f64 y x) (*.f64 6 z)) 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 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 6) (*.f64 z (-.f64 y x)))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 6) (*.f64 z (-.f64 y x))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 6) (*.f64 z (-.f64 y x))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 6) (*.f64 z (-.f64 y x))))))))) (#(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 (pow.f64 y 3) (pow.f64 x 3)) (*.f64 6 z)) (fma.f64 y y (*.f64 x (+.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (fma.f64 y y (*.f64 (neg.f64 x) x)) (*.f64 6 z)) (+.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 6 z) (-.f64 (pow.f64 y 3) (pow.f64 x 3))) (fma.f64 y y (*.f64 x (+.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 6 z) (fma.f64 y y (*.f64 (neg.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 (pow.f64 (*.f64 (-.f64 y x) (*.f64 6 z)) 2) 1/2)))) (#(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 pow.f64 (exp.f64 1) (log.f64 (*.f64 (-.f64 y x) (*.f64 6 z))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 (-.f64 y x) (*.f64 6 z)))) 2)) (cbrt.f64 (log.f64 (*.f64 (-.f64 y x) (*.f64 6 z)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 (-.f64 y x) (*.f64 6 z))))) (sqrt.f64 (log.f64 (*.f64 (-.f64 y x) (*.f64 6 z)))))))) (#(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 (exp.f64 6) (*.f64 z (-.f64 y x))))))) (#(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 exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (-.f64 y x) (*.f64 6 z)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (-.f64 y x) (*.f64 6 z)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (-.f64 y x) (*.f64 6 z)) 3)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (-.f64 y x) (*.f64 6 z))) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (-.f64 y x) (*.f64 6 z))) 3) 1/3))))) (#(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 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 (+.f64 (pow.f64 x 3) (pow.f64 (*.f64 (-.f64 y x) (*.f64 6 z)) 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)) (+.f64 (pow.f64 x 3) (pow.f64 (*.f64 (-.f64 y x) (*.f64 6 z)) 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 (+.f64 (pow.f64 x 3) (pow.f64 (*.f64 (-.f64 y x) (*.f64 6 z)) 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 (+.f64 (pow.f64 x 3) (pow.f64 (*.f64 (-.f64 y x) (*.f64 6 z)) 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 (+.f64 (pow.f64 x 3) (pow.f64 (*.f64 (-.f64 y x) (*.f64 6 z)) 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 (pow.f64 (fma.f64 (-.f64 y x) (*.f64 6 z) x) 2) 1/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 (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 (exp.f64 1) (log.f64 (fma.f64 (-.f64 y x) (*.f64 6 z) x)))))) (#(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)) (+.f64 (pow.f64 x 3) (pow.f64 (*.f64 (-.f64 y x) (*.f64 6 z)) 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 pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (fma.f64 (-.f64 y x) (*.f64 6 z) x))) 2)) (cbrt.f64 (log.f64 (fma.f64 (-.f64 y x) (*.f64 6 z) x))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (fma.f64 (-.f64 y x) (*.f64 6 z) x)))) (sqrt.f64 (log.f64 (fma.f64 (-.f64 y x) (*.f64 6 z) x))))))) (#(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 (exp.f64 6) (*.f64 z (-.f64 y x)))))))) (#(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 (exp.f64 6) (*.f64 z (-.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) (*.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 exp.f64 (*.f64 (*.f64 3 (log.f64 (fma.f64 (-.f64 y x) (*.f64 6 z) x))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (fma.f64 (-.f64 y x) (*.f64 6 z) x))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (fma.f64 (-.f64 y x) (*.f64 6 z) x))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (fma.f64 (-.f64 y x) (*.f64 6 z) x)) 1) 1))))) (#(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 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 (*.f64 6 z) (-.f64 y x) 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 (cbrt.f64 (pow.f64 (*.f64 6 z) 2)) (*.f64 (cbrt.f64 (*.f64 6 z)) (-.f64 y x)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (-.f64 y x) 2)) (*.f64 (cbrt.f64 (-.f64 y x)) (*.f64 6 z)) 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 6 z)) (*.f64 (sqrt.f64 (*.f64 6 z)) (-.f64 y x)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 y x)) (*.f64 (sqrt.f64 (-.f64 y x)) (*.f64 6 z)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 y x) 6) z x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 y x) z) 6 x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 y x) (cbrt.f64 (pow.f64 (*.f64 6 z) 2))) (cbrt.f64 (*.f64 6 z)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 y x) (sqrt.f64 (*.f64 6 z))) (sqrt.f64 (*.f64 6 z)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 6 z) (cbrt.f64 (pow.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)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 (-.f64 y x) 6) 1) z x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 (-.f64 y x) 6) (pow.f64 (cbrt.f64 z) 2)) (cbrt.f64 z) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 (-.f64 y x) 6) (sqrt.f64 z)) (sqrt.f64 z) x)))))

simplify136.0ms (1.5%)

Algorithm
egg-herbie
Rules
702×fma-def_binary64
542×fma-neg_binary64
110×cancel-sign-sub-inv_binary64
107×distribute-rgt-in_binary64
90×associate-*l*_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
029941
170941
2154705
3339705
4629705
51077705
61690705
72237705
82470705
92560705
102560705
Stop Event
saturated
Counts
177 → 121
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 6 (*.f64 z (-.f64 y x)))
(*.f64 6 (*.f64 z (-.f64 y x)))
(*.f64 6 (*.f64 z (-.f64 y x)))
(*.f64 6 (*.f64 z (-.f64 y x)))
(*.f64 6 (*.f64 z (-.f64 y x)))
(*.f64 6 (*.f64 z (-.f64 y x)))
(*.f64 6 (*.f64 z (-.f64 y x)))
(*.f64 6 (*.f64 z (-.f64 y x)))
(*.f64 6 (*.f64 z (-.f64 y x)))
(*.f64 6 (*.f64 z (-.f64 y 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 6 (*.f64 y z)) (*.f64 (+.f64 1 (*.f64 -6 z)) x))
(+.f64 (*.f64 6 (*.f64 y z)) (*.f64 (+.f64 1 (*.f64 -6 z)) x))
(+.f64 (*.f64 6 (*.f64 y z)) (*.f64 (+.f64 1 (*.f64 -6 z)) x))
(*.f64 (+.f64 1 (*.f64 -6 z)) x)
(+.f64 (*.f64 6 (*.f64 y z)) (*.f64 (+.f64 1 (*.f64 -6 z)) x))
(+.f64 (*.f64 6 (*.f64 y z)) (*.f64 (+.f64 1 (*.f64 -6 z)) x))
(+.f64 (*.f64 6 (*.f64 y z)) (*.f64 (+.f64 1 (*.f64 -6 z)) x))
(*.f64 -1 (*.f64 (-.f64 (*.f64 6 z) 1) x))
(+.f64 (*.f64 6 (*.f64 y z)) (*.f64 -1 (*.f64 (-.f64 (*.f64 6 z) 1) x)))
(+.f64 (*.f64 6 (*.f64 y z)) (*.f64 -1 (*.f64 (-.f64 (*.f64 6 z) 1) x)))
(+.f64 (*.f64 6 (*.f64 y z)) (*.f64 -1 (*.f64 (-.f64 (*.f64 6 z) 1) x)))
x
(+.f64 (*.f64 6 (*.f64 z (-.f64 y x))) x)
(+.f64 (*.f64 6 (*.f64 z (-.f64 y x))) x)
(+.f64 (*.f64 6 (*.f64 z (-.f64 y x))) x)
(*.f64 6 (*.f64 z (-.f64 y x)))
(+.f64 (*.f64 6 (*.f64 z (-.f64 y x))) x)
(+.f64 (*.f64 6 (*.f64 z (-.f64 y x))) x)
(+.f64 (*.f64 6 (*.f64 z (-.f64 y x))) x)
(*.f64 6 (*.f64 z (-.f64 y x)))
(+.f64 (*.f64 6 (*.f64 z (-.f64 y x))) x)
(+.f64 (*.f64 6 (*.f64 z (-.f64 y x))) x)
(+.f64 (*.f64 6 (*.f64 z (-.f64 y x))) x)
Outputs
(*.f64 -6 (*.f64 z 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 6 (*.f64 z (-.f64 y x)))
(*.f64 (-.f64 y x) (*.f64 z 6))
(*.f64 -6 (*.f64 z (-.f64 x 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 6 (*.f64 z (-.f64 y x)))
(*.f64 (-.f64 y x) (*.f64 z 6))
(*.f64 -6 (*.f64 z (-.f64 x 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 6 (*.f64 z (-.f64 y x)))
(*.f64 (-.f64 y x) (*.f64 z 6))
(*.f64 -6 (*.f64 z (-.f64 x y)))
(*.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 6 (*.f64 z (-.f64 y x)))
(*.f64 (-.f64 y x) (*.f64 z 6))
(*.f64 -6 (*.f64 z (-.f64 x 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 6 (*.f64 z (-.f64 y x)))
(*.f64 (-.f64 y x) (*.f64 z 6))
(*.f64 -6 (*.f64 z (-.f64 x 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 6 (*.f64 z (-.f64 y x)))
(*.f64 (-.f64 y x) (*.f64 z 6))
(*.f64 -6 (*.f64 z (-.f64 x y)))
(*.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 6 (*.f64 z (-.f64 y x)))
(*.f64 (-.f64 y x) (*.f64 z 6))
(*.f64 -6 (*.f64 z (-.f64 x 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 6 (*.f64 z (-.f64 y x)))
(*.f64 (-.f64 y x) (*.f64 z 6))
(*.f64 -6 (*.f64 z (-.f64 x 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 6 (*.f64 z (-.f64 y x)))
(*.f64 (-.f64 y x) (*.f64 z 6))
(*.f64 -6 (*.f64 z (-.f64 x y)))
(*.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 6 (*.f64 z (-.f64 y x)))
(*.f64 (-.f64 y x) (*.f64 z 6))
(*.f64 -6 (*.f64 z (-.f64 x 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 6 (*.f64 z (-.f64 y x)))
(*.f64 (-.f64 y x) (*.f64 z 6))
(*.f64 -6 (*.f64 z (-.f64 x 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 6 (*.f64 z (-.f64 y x)))
(*.f64 (-.f64 y x) (*.f64 z 6))
(*.f64 -6 (*.f64 z (-.f64 x y)))
(*.f64 -6 (*.f64 z 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 6 (*.f64 z (-.f64 y x)))
(*.f64 (-.f64 y x) (*.f64 z 6))
(*.f64 -6 (*.f64 z (-.f64 x 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 6 (*.f64 z (-.f64 y x)))
(*.f64 (-.f64 y x) (*.f64 z 6))
(*.f64 -6 (*.f64 z (-.f64 x 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 6 (*.f64 z (-.f64 y x)))
(*.f64 (-.f64 y x) (*.f64 z 6))
(*.f64 -6 (*.f64 z (-.f64 x y)))
(*.f64 -6 (*.f64 z 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 6 (*.f64 z (-.f64 y x)))
(*.f64 (-.f64 y x) (*.f64 z 6))
(*.f64 -6 (*.f64 z (-.f64 x 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 6 (*.f64 z (-.f64 y x)))
(*.f64 (-.f64 y x) (*.f64 z 6))
(*.f64 -6 (*.f64 z (-.f64 x 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 6 (*.f64 z (-.f64 y x)))
(*.f64 (-.f64 y x) (*.f64 z 6))
(*.f64 -6 (*.f64 z (-.f64 x y)))
(*.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 (-.f64 y x) (*.f64 z 6))
(*.f64 -6 (*.f64 z (-.f64 x y)))
(*.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 (-.f64 y x) (*.f64 z 6))
(*.f64 -6 (*.f64 z (-.f64 x y)))
(*.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 (-.f64 y x) (*.f64 z 6))
(*.f64 -6 (*.f64 z (-.f64 x y)))
(*.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 (-.f64 y x) (*.f64 z 6))
(*.f64 -6 (*.f64 z (-.f64 x y)))
(*.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 (-.f64 y x) (*.f64 z 6))
(*.f64 -6 (*.f64 z (-.f64 x y)))
(*.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 (-.f64 y x) (*.f64 z 6))
(*.f64 -6 (*.f64 z (-.f64 x y)))
(*.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 (-.f64 y x) (*.f64 z 6))
(*.f64 -6 (*.f64 z (-.f64 x y)))
(*.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 (-.f64 y x) (*.f64 z 6))
(*.f64 -6 (*.f64 z (-.f64 x y)))
(*.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 (-.f64 y x) (*.f64 z 6))
(*.f64 -6 (*.f64 z (-.f64 x y)))
(*.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 (-.f64 y x) (*.f64 z 6))
(*.f64 -6 (*.f64 z (-.f64 x y)))
(*.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 (-.f64 y x) (*.f64 z 6))
(*.f64 -6 (*.f64 z (-.f64 x y)))
(*.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 (-.f64 y x) (*.f64 z 6))
(*.f64 -6 (*.f64 z (-.f64 x y)))
(+.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))
(fma.f64 6 (*.f64 z (-.f64 y x)) x)
(fma.f64 z (*.f64 6 (-.f64 y x)) x)
(fma.f64 (-.f64 y x) (*.f64 z 6) x)
(fma.f64 -6 (*.f64 z (-.f64 x y)) 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))
(fma.f64 6 (*.f64 z (-.f64 y x)) x)
(fma.f64 z (*.f64 6 (-.f64 y x)) x)
(fma.f64 (-.f64 y x) (*.f64 z 6) x)
(fma.f64 -6 (*.f64 z (-.f64 x y)) 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))
(fma.f64 6 (*.f64 z (-.f64 y x)) x)
(fma.f64 z (*.f64 6 (-.f64 y x)) x)
(fma.f64 (-.f64 y x) (*.f64 z 6) x)
(fma.f64 -6 (*.f64 z (-.f64 x y)) 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))
(fma.f64 6 (*.f64 z (-.f64 y x)) x)
(fma.f64 z (*.f64 6 (-.f64 y x)) x)
(fma.f64 (-.f64 y x) (*.f64 z 6) x)
(fma.f64 -6 (*.f64 z (-.f64 x y)) 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))
(fma.f64 6 (*.f64 z (-.f64 y x)) x)
(fma.f64 z (*.f64 6 (-.f64 y x)) x)
(fma.f64 (-.f64 y x) (*.f64 z 6) x)
(fma.f64 -6 (*.f64 z (-.f64 x y)) 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))
(fma.f64 6 (*.f64 z (-.f64 y x)) x)
(fma.f64 z (*.f64 6 (-.f64 y x)) x)
(fma.f64 (-.f64 y x) (*.f64 z 6) x)
(fma.f64 -6 (*.f64 z (-.f64 x y)) 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))
(fma.f64 6 (*.f64 z (-.f64 y x)) x)
(fma.f64 z (*.f64 6 (-.f64 y x)) x)
(fma.f64 (-.f64 y x) (*.f64 z 6) x)
(fma.f64 -6 (*.f64 z (-.f64 x y)) 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))
(fma.f64 6 (*.f64 z (-.f64 y x)) x)
(fma.f64 z (*.f64 6 (-.f64 y x)) x)
(fma.f64 (-.f64 y x) (*.f64 z 6) x)
(fma.f64 -6 (*.f64 z (-.f64 x y)) 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))
(fma.f64 6 (*.f64 z (-.f64 y x)) x)
(fma.f64 z (*.f64 6 (-.f64 y x)) x)
(fma.f64 (-.f64 y x) (*.f64 z 6) x)
(fma.f64 -6 (*.f64 z (-.f64 x y)) x)
(*.f64 6 (*.f64 y z))
(*.f64 6 (*.f64 z y))
(*.f64 z (*.f64 6 y))
(+.f64 (*.f64 6 (*.f64 y z)) (*.f64 (+.f64 1 (*.f64 -6 z)) x))
(fma.f64 -6 (*.f64 z x) (fma.f64 6 (*.f64 z y) x))
(fma.f64 6 (*.f64 z (-.f64 y x)) x)
(fma.f64 z (*.f64 6 (-.f64 y x)) x)
(fma.f64 (-.f64 y x) (*.f64 z 6) x)
(fma.f64 -6 (*.f64 z (-.f64 x y)) x)
(+.f64 (*.f64 6 (*.f64 y z)) (*.f64 (+.f64 1 (*.f64 -6 z)) x))
(fma.f64 -6 (*.f64 z x) (fma.f64 6 (*.f64 z y) x))
(fma.f64 6 (*.f64 z (-.f64 y x)) x)
(fma.f64 z (*.f64 6 (-.f64 y x)) x)
(fma.f64 (-.f64 y x) (*.f64 z 6) x)
(fma.f64 -6 (*.f64 z (-.f64 x y)) x)
(+.f64 (*.f64 6 (*.f64 y z)) (*.f64 (+.f64 1 (*.f64 -6 z)) x))
(fma.f64 -6 (*.f64 z x) (fma.f64 6 (*.f64 z y) x))
(fma.f64 6 (*.f64 z (-.f64 y x)) x)
(fma.f64 z (*.f64 6 (-.f64 y x)) x)
(fma.f64 (-.f64 y x) (*.f64 z 6) x)
(fma.f64 -6 (*.f64 z (-.f64 x y)) x)
(*.f64 (+.f64 1 (*.f64 -6 z)) x)
(fma.f64 -6 (*.f64 z x) x)
(*.f64 x (fma.f64 -6 z 1))
(+.f64 (*.f64 6 (*.f64 y z)) (*.f64 (+.f64 1 (*.f64 -6 z)) x))
(fma.f64 -6 (*.f64 z x) (fma.f64 6 (*.f64 z y) x))
(fma.f64 6 (*.f64 z (-.f64 y x)) x)
(fma.f64 z (*.f64 6 (-.f64 y x)) x)
(fma.f64 (-.f64 y x) (*.f64 z 6) x)
(fma.f64 -6 (*.f64 z (-.f64 x y)) x)
(+.f64 (*.f64 6 (*.f64 y z)) (*.f64 (+.f64 1 (*.f64 -6 z)) x))
(fma.f64 -6 (*.f64 z x) (fma.f64 6 (*.f64 z y) x))
(fma.f64 6 (*.f64 z (-.f64 y x)) x)
(fma.f64 z (*.f64 6 (-.f64 y x)) x)
(fma.f64 (-.f64 y x) (*.f64 z 6) x)
(fma.f64 -6 (*.f64 z (-.f64 x y)) x)
(+.f64 (*.f64 6 (*.f64 y z)) (*.f64 (+.f64 1 (*.f64 -6 z)) x))
(fma.f64 -6 (*.f64 z x) (fma.f64 6 (*.f64 z y) x))
(fma.f64 6 (*.f64 z (-.f64 y x)) x)
(fma.f64 z (*.f64 6 (-.f64 y x)) x)
(fma.f64 (-.f64 y x) (*.f64 z 6) x)
(fma.f64 -6 (*.f64 z (-.f64 x y)) 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 6 (*.f64 y z)) (*.f64 -1 (*.f64 (-.f64 (*.f64 6 z) 1) x)))
(fma.f64 -6 (*.f64 z x) (fma.f64 6 (*.f64 z y) x))
(fma.f64 6 (*.f64 z (-.f64 y x)) x)
(fma.f64 z (*.f64 6 (-.f64 y x)) x)
(fma.f64 (-.f64 y x) (*.f64 z 6) x)
(fma.f64 -6 (*.f64 z (-.f64 x y)) x)
(+.f64 (*.f64 6 (*.f64 y z)) (*.f64 -1 (*.f64 (-.f64 (*.f64 6 z) 1) x)))
(fma.f64 -6 (*.f64 z x) (fma.f64 6 (*.f64 z y) x))
(fma.f64 6 (*.f64 z (-.f64 y x)) x)
(fma.f64 z (*.f64 6 (-.f64 y x)) x)
(fma.f64 (-.f64 y x) (*.f64 z 6) x)
(fma.f64 -6 (*.f64 z (-.f64 x y)) x)
(+.f64 (*.f64 6 (*.f64 y z)) (*.f64 -1 (*.f64 (-.f64 (*.f64 6 z) 1) x)))
(fma.f64 -6 (*.f64 z x) (fma.f64 6 (*.f64 z y) x))
(fma.f64 6 (*.f64 z (-.f64 y x)) x)
(fma.f64 z (*.f64 6 (-.f64 y x)) x)
(fma.f64 (-.f64 y x) (*.f64 z 6) x)
(fma.f64 -6 (*.f64 z (-.f64 x y)) x)
x
(+.f64 (*.f64 6 (*.f64 z (-.f64 y x))) x)
(fma.f64 -6 (*.f64 z x) (fma.f64 6 (*.f64 z y) x))
(fma.f64 6 (*.f64 z (-.f64 y x)) x)
(fma.f64 z (*.f64 6 (-.f64 y x)) x)
(fma.f64 (-.f64 y x) (*.f64 z 6) x)
(fma.f64 -6 (*.f64 z (-.f64 x y)) x)
(+.f64 (*.f64 6 (*.f64 z (-.f64 y x))) x)
(fma.f64 -6 (*.f64 z x) (fma.f64 6 (*.f64 z y) x))
(fma.f64 6 (*.f64 z (-.f64 y x)) x)
(fma.f64 z (*.f64 6 (-.f64 y x)) x)
(fma.f64 (-.f64 y x) (*.f64 z 6) x)
(fma.f64 -6 (*.f64 z (-.f64 x y)) x)
(+.f64 (*.f64 6 (*.f64 z (-.f64 y x))) x)
(fma.f64 -6 (*.f64 z x) (fma.f64 6 (*.f64 z y) x))
(fma.f64 6 (*.f64 z (-.f64 y x)) x)
(fma.f64 z (*.f64 6 (-.f64 y x)) x)
(fma.f64 (-.f64 y x) (*.f64 z 6) x)
(fma.f64 -6 (*.f64 z (-.f64 x 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 (-.f64 y x) (*.f64 z 6))
(*.f64 -6 (*.f64 z (-.f64 x y)))
(+.f64 (*.f64 6 (*.f64 z (-.f64 y x))) x)
(fma.f64 -6 (*.f64 z x) (fma.f64 6 (*.f64 z y) x))
(fma.f64 6 (*.f64 z (-.f64 y x)) x)
(fma.f64 z (*.f64 6 (-.f64 y x)) x)
(fma.f64 (-.f64 y x) (*.f64 z 6) x)
(fma.f64 -6 (*.f64 z (-.f64 x y)) x)
(+.f64 (*.f64 6 (*.f64 z (-.f64 y x))) x)
(fma.f64 -6 (*.f64 z x) (fma.f64 6 (*.f64 z y) x))
(fma.f64 6 (*.f64 z (-.f64 y x)) x)
(fma.f64 z (*.f64 6 (-.f64 y x)) x)
(fma.f64 (-.f64 y x) (*.f64 z 6) x)
(fma.f64 -6 (*.f64 z (-.f64 x y)) x)
(+.f64 (*.f64 6 (*.f64 z (-.f64 y x))) x)
(fma.f64 -6 (*.f64 z x) (fma.f64 6 (*.f64 z y) x))
(fma.f64 6 (*.f64 z (-.f64 y x)) x)
(fma.f64 z (*.f64 6 (-.f64 y x)) x)
(fma.f64 (-.f64 y x) (*.f64 z 6) x)
(fma.f64 -6 (*.f64 z (-.f64 x 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 (-.f64 y x) (*.f64 z 6))
(*.f64 -6 (*.f64 z (-.f64 x y)))
(+.f64 (*.f64 6 (*.f64 z (-.f64 y x))) x)
(fma.f64 -6 (*.f64 z x) (fma.f64 6 (*.f64 z y) x))
(fma.f64 6 (*.f64 z (-.f64 y x)) x)
(fma.f64 z (*.f64 6 (-.f64 y x)) x)
(fma.f64 (-.f64 y x) (*.f64 z 6) x)
(fma.f64 -6 (*.f64 z (-.f64 x y)) x)
(+.f64 (*.f64 6 (*.f64 z (-.f64 y x))) x)
(fma.f64 -6 (*.f64 z x) (fma.f64 6 (*.f64 z y) x))
(fma.f64 6 (*.f64 z (-.f64 y x)) x)
(fma.f64 z (*.f64 6 (-.f64 y x)) x)
(fma.f64 (-.f64 y x) (*.f64 z 6) x)
(fma.f64 -6 (*.f64 z (-.f64 x y)) x)
(+.f64 (*.f64 6 (*.f64 z (-.f64 y x))) x)
(fma.f64 -6 (*.f64 z x) (fma.f64 6 (*.f64 z y) x))
(fma.f64 6 (*.f64 z (-.f64 y x)) x)
(fma.f64 z (*.f64 6 (-.f64 y x)) x)
(fma.f64 (-.f64 y x) (*.f64 z 6) x)
(fma.f64 -6 (*.f64 z (-.f64 x y)) x)

localize12.0ms (0.1%)

Local error

Found 1 expressions with local error:

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

Compiled 14 to 7 computations (50% saved)

series5.0ms (0.1%)

Counts
1 → 0
Calls

6 calls:

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

rewrite48.0ms (0.5%)

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

Useful iterations: 0 (0.0ms)

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

simplify8.0ms (0.1%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

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

localize7.0ms (0.1%)

Local error

Found 2 expressions with local error:

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

Compiled 22 to 8 computations (63.6% saved)

series6.0ms (0.1%)

Counts
2 → 60
Calls

18 calls:

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

rewrite65.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
919×pow1_binary64
854×add-log-exp_binary64
854×log1p-expm1-u_binary64
854×expm1-log1p-u_binary64
837×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0817
117217
2226617
Stop Event
node limit
Counts
2 → 34
Calls
Call 1
Inputs
(*.f64 6 (*.f64 z (-.f64 y x)))
(*.f64 z (-.f64 y x))
Outputs
((#(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 (+.f64 1 (*.f64 6 (*.f64 z (-.f64 y x)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 6 z) (-.f64 (pow.f64 y 3) (pow.f64 x 3))) (fma.f64 y y (*.f64 x (+.f64 y x))))))) (#(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 6 (*.f64 z (-.f64 y x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 6 (*.f64 z (-.f64 y x))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 6 (*.f64 z (-.f64 y x)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 6 (*.f64 z (-.f64 y x)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 36 (pow.f64 (*.f64 z (-.f64 y x)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (*.f64 6 z)) (-.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 6 (*.f64 z (-.f64 y x))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 6 (*.f64 z (-.f64 y x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 6 (*.f64 z (-.f64 y x)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 6 (*.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 (+.f64 1 (*.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 y y (*.f64 x (+.f64 y x))))))) (#(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 y y (*.f64 x (+.f64 y x))))))) (#(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 (-.f64 y x)) z))))) (#(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))))))))

simplify78.0ms (0.9%)

Algorithm
egg-herbie
Rules
606×fma-def_binary64
299×fma-neg_binary64
98×distribute-rgt-in_binary64
89×associate-*l*_binary64
78×associate-*r*_binary64
Iterations

Useful iterations: 7 (0.0ms)

IterNodesCost
016534
135534
272516
3113480
4150480
5228480
6391480
7577462
8980462
91543462
101856462
111910462
121911462
131911462
Stop Event
saturated
Counts
94 → 47
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 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)))
Outputs
(*.f64 -6 (*.f64 z x))
(*.f64 (*.f64 -6 z) x)
(*.f64 z (*.f64 -6 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 (*.f64 -6 x) (*.f64 6 y)))
(*.f64 z (fma.f64 -6 x (*.f64 6 y)))
(*.f64 z (fma.f64 6 y (*.f64 -6 x)))
(*.f64 -6 (*.f64 z (-.f64 x 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 (*.f64 -6 x) (*.f64 6 y)))
(*.f64 z (fma.f64 -6 x (*.f64 6 y)))
(*.f64 z (fma.f64 6 y (*.f64 -6 x)))
(*.f64 -6 (*.f64 z (-.f64 x 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 (*.f64 -6 x) (*.f64 6 y)))
(*.f64 z (fma.f64 -6 x (*.f64 6 y)))
(*.f64 z (fma.f64 6 y (*.f64 -6 x)))
(*.f64 -6 (*.f64 z (-.f64 x y)))
(*.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 (*.f64 -6 x) (*.f64 6 y)))
(*.f64 z (fma.f64 -6 x (*.f64 6 y)))
(*.f64 z (fma.f64 6 y (*.f64 -6 x)))
(*.f64 -6 (*.f64 z (-.f64 x 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 (*.f64 -6 x) (*.f64 6 y)))
(*.f64 z (fma.f64 -6 x (*.f64 6 y)))
(*.f64 z (fma.f64 6 y (*.f64 -6 x)))
(*.f64 -6 (*.f64 z (-.f64 x 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 (*.f64 -6 x) (*.f64 6 y)))
(*.f64 z (fma.f64 -6 x (*.f64 6 y)))
(*.f64 z (fma.f64 6 y (*.f64 -6 x)))
(*.f64 -6 (*.f64 z (-.f64 x y)))
(*.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 (*.f64 -6 x) (*.f64 6 y)))
(*.f64 z (fma.f64 -6 x (*.f64 6 y)))
(*.f64 z (fma.f64 6 y (*.f64 -6 x)))
(*.f64 -6 (*.f64 z (-.f64 x 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 (*.f64 -6 x) (*.f64 6 y)))
(*.f64 z (fma.f64 -6 x (*.f64 6 y)))
(*.f64 z (fma.f64 6 y (*.f64 -6 x)))
(*.f64 -6 (*.f64 z (-.f64 x 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 (*.f64 -6 x) (*.f64 6 y)))
(*.f64 z (fma.f64 -6 x (*.f64 6 y)))
(*.f64 z (fma.f64 6 y (*.f64 -6 x)))
(*.f64 -6 (*.f64 z (-.f64 x y)))
(*.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 (*.f64 -6 x) (*.f64 6 y)))
(*.f64 z (fma.f64 -6 x (*.f64 6 y)))
(*.f64 z (fma.f64 6 y (*.f64 -6 x)))
(*.f64 -6 (*.f64 z (-.f64 x 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 (*.f64 -6 x) (*.f64 6 y)))
(*.f64 z (fma.f64 -6 x (*.f64 6 y)))
(*.f64 z (fma.f64 6 y (*.f64 -6 x)))
(*.f64 -6 (*.f64 z (-.f64 x 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 (*.f64 -6 x) (*.f64 6 y)))
(*.f64 z (fma.f64 -6 x (*.f64 6 y)))
(*.f64 z (fma.f64 6 y (*.f64 -6 x)))
(*.f64 -6 (*.f64 z (-.f64 x y)))
(*.f64 -6 (*.f64 z x))
(*.f64 (*.f64 -6 z) x)
(*.f64 z (*.f64 -6 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 (*.f64 -6 x) (*.f64 6 y)))
(*.f64 z (fma.f64 -6 x (*.f64 6 y)))
(*.f64 z (fma.f64 6 y (*.f64 -6 x)))
(*.f64 -6 (*.f64 z (-.f64 x 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 (*.f64 -6 x) (*.f64 6 y)))
(*.f64 z (fma.f64 -6 x (*.f64 6 y)))
(*.f64 z (fma.f64 6 y (*.f64 -6 x)))
(*.f64 -6 (*.f64 z (-.f64 x 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 (*.f64 -6 x) (*.f64 6 y)))
(*.f64 z (fma.f64 -6 x (*.f64 6 y)))
(*.f64 z (fma.f64 6 y (*.f64 -6 x)))
(*.f64 -6 (*.f64 z (-.f64 x y)))
(*.f64 -6 (*.f64 z x))
(*.f64 (*.f64 -6 z) x)
(*.f64 z (*.f64 -6 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 (*.f64 -6 x) (*.f64 6 y)))
(*.f64 z (fma.f64 -6 x (*.f64 6 y)))
(*.f64 z (fma.f64 6 y (*.f64 -6 x)))
(*.f64 -6 (*.f64 z (-.f64 x 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 (*.f64 -6 x) (*.f64 6 y)))
(*.f64 z (fma.f64 -6 x (*.f64 6 y)))
(*.f64 z (fma.f64 6 y (*.f64 -6 x)))
(*.f64 -6 (*.f64 z (-.f64 x 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 (*.f64 -6 x) (*.f64 6 y)))
(*.f64 z (fma.f64 -6 x (*.f64 6 y)))
(*.f64 z (fma.f64 6 y (*.f64 -6 x)))
(*.f64 -6 (*.f64 z (-.f64 x y)))
(*.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))

localize8.0ms (0.1%)

Local error

Found 2 expressions with local error:

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

Compiled 22 to 10 computations (54.5% saved)

series3.0ms (0%)

Counts
1 → 36
Calls

9 calls:

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

rewrite63.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
908×pow1_binary64
845×add-log-exp_binary64
845×log1p-expm1-u_binary64
845×expm1-log1p-u_binary64
828×add-exp-log_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify13.0ms (0.1%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
08255
114255
223255
329255
Stop Event
saturated
Counts
72 → 40
Calls
Call 1
Inputs
(*.f64 6 (*.f64 y z))
(+.f64 (*.f64 6 (*.f64 y z)) x)
(+.f64 (*.f64 6 (*.f64 y z)) x)
(+.f64 (*.f64 6 (*.f64 y z)) x)
x
(+.f64 (*.f64 6 (*.f64 y z)) x)
(+.f64 (*.f64 6 (*.f64 y z)) x)
(+.f64 (*.f64 6 (*.f64 y z)) x)
x
(+.f64 (*.f64 6 (*.f64 y z)) x)
(+.f64 (*.f64 6 (*.f64 y z)) x)
(+.f64 (*.f64 6 (*.f64 y z)) x)
x
(+.f64 (*.f64 6 (*.f64 y z)) x)
(+.f64 (*.f64 6 (*.f64 y z)) x)
(+.f64 (*.f64 6 (*.f64 y z)) x)
(*.f64 6 (*.f64 y z))
(+.f64 (*.f64 6 (*.f64 y z)) x)
(+.f64 (*.f64 6 (*.f64 y z)) x)
(+.f64 (*.f64 6 (*.f64 y z)) x)
(*.f64 6 (*.f64 y z))
(+.f64 (*.f64 6 (*.f64 y z)) x)
(+.f64 (*.f64 6 (*.f64 y z)) x)
(+.f64 (*.f64 6 (*.f64 y z)) x)
x
(+.f64 (*.f64 6 (*.f64 y z)) x)
(+.f64 (*.f64 6 (*.f64 y z)) x)
(+.f64 (*.f64 6 (*.f64 y z)) x)
(*.f64 6 (*.f64 y z))
(+.f64 (*.f64 6 (*.f64 y z)) x)
(+.f64 (*.f64 6 (*.f64 y z)) x)
(+.f64 (*.f64 6 (*.f64 y z)) x)
(*.f64 6 (*.f64 y z))
(+.f64 (*.f64 6 (*.f64 y z)) x)
(+.f64 (*.f64 6 (*.f64 y z)) x)
(+.f64 (*.f64 6 (*.f64 y z)) x)
Outputs
(*.f64 6 (*.f64 y z))
(+.f64 (*.f64 6 (*.f64 y z)) x)
(fma.f64 6 (*.f64 y z) x)
(fma.f64 (*.f64 6 y) z x)
(fma.f64 z (*.f64 6 y) x)
(+.f64 (*.f64 6 (*.f64 y z)) x)
(fma.f64 6 (*.f64 y z) x)
(fma.f64 (*.f64 6 y) z x)
(fma.f64 z (*.f64 6 y) x)
(+.f64 (*.f64 6 (*.f64 y z)) x)
(fma.f64 6 (*.f64 y z) x)
(fma.f64 (*.f64 6 y) z x)
(fma.f64 z (*.f64 6 y) x)
x
(+.f64 (*.f64 6 (*.f64 y z)) x)
(fma.f64 6 (*.f64 y z) x)
(fma.f64 (*.f64 6 y) z x)
(fma.f64 z (*.f64 6 y) x)
(+.f64 (*.f64 6 (*.f64 y z)) x)
(fma.f64 6 (*.f64 y z) x)
(fma.f64 (*.f64 6 y) z x)
(fma.f64 z (*.f64 6 y) x)
(+.f64 (*.f64 6 (*.f64 y z)) x)
(fma.f64 6 (*.f64 y z) x)
(fma.f64 (*.f64 6 y) z x)
(fma.f64 z (*.f64 6 y) x)
x
(+.f64 (*.f64 6 (*.f64 y z)) x)
(fma.f64 6 (*.f64 y z) x)
(fma.f64 (*.f64 6 y) z x)
(fma.f64 z (*.f64 6 y) x)
(+.f64 (*.f64 6 (*.f64 y z)) x)
(fma.f64 6 (*.f64 y z) x)
(fma.f64 (*.f64 6 y) z x)
(fma.f64 z (*.f64 6 y) x)
(+.f64 (*.f64 6 (*.f64 y z)) x)
(fma.f64 6 (*.f64 y z) x)
(fma.f64 (*.f64 6 y) z x)
(fma.f64 z (*.f64 6 y) x)
x
(+.f64 (*.f64 6 (*.f64 y z)) x)
(fma.f64 6 (*.f64 y z) x)
(fma.f64 (*.f64 6 y) z x)
(fma.f64 z (*.f64 6 y) x)
(+.f64 (*.f64 6 (*.f64 y z)) x)
(fma.f64 6 (*.f64 y z) x)
(fma.f64 (*.f64 6 y) z x)
(fma.f64 z (*.f64 6 y) x)
(+.f64 (*.f64 6 (*.f64 y z)) x)
(fma.f64 6 (*.f64 y z) x)
(fma.f64 (*.f64 6 y) z x)
(fma.f64 z (*.f64 6 y) x)
(*.f64 6 (*.f64 y z))
(+.f64 (*.f64 6 (*.f64 y z)) x)
(fma.f64 6 (*.f64 y z) x)
(fma.f64 (*.f64 6 y) z x)
(fma.f64 z (*.f64 6 y) x)
(+.f64 (*.f64 6 (*.f64 y z)) x)
(fma.f64 6 (*.f64 y z) x)
(fma.f64 (*.f64 6 y) z x)
(fma.f64 z (*.f64 6 y) x)
(+.f64 (*.f64 6 (*.f64 y z)) x)
(fma.f64 6 (*.f64 y z) x)
(fma.f64 (*.f64 6 y) z x)
(fma.f64 z (*.f64 6 y) x)
(*.f64 6 (*.f64 y z))
(+.f64 (*.f64 6 (*.f64 y z)) x)
(fma.f64 6 (*.f64 y z) x)
(fma.f64 (*.f64 6 y) z x)
(fma.f64 z (*.f64 6 y) x)
(+.f64 (*.f64 6 (*.f64 y z)) x)
(fma.f64 6 (*.f64 y z) x)
(fma.f64 (*.f64 6 y) z x)
(fma.f64 z (*.f64 6 y) x)
(+.f64 (*.f64 6 (*.f64 y z)) x)
(fma.f64 6 (*.f64 y z) x)
(fma.f64 (*.f64 6 y) z x)
(fma.f64 z (*.f64 6 y) x)
x
(+.f64 (*.f64 6 (*.f64 y z)) x)
(fma.f64 6 (*.f64 y z) x)
(fma.f64 (*.f64 6 y) z x)
(fma.f64 z (*.f64 6 y) x)
(+.f64 (*.f64 6 (*.f64 y z)) x)
(fma.f64 6 (*.f64 y z) x)
(fma.f64 (*.f64 6 y) z x)
(fma.f64 z (*.f64 6 y) x)
(+.f64 (*.f64 6 (*.f64 y z)) x)
(fma.f64 6 (*.f64 y z) x)
(fma.f64 (*.f64 6 y) z x)
(fma.f64 z (*.f64 6 y) x)
(*.f64 6 (*.f64 y z))
(+.f64 (*.f64 6 (*.f64 y z)) x)
(fma.f64 6 (*.f64 y z) x)
(fma.f64 (*.f64 6 y) z x)
(fma.f64 z (*.f64 6 y) x)
(+.f64 (*.f64 6 (*.f64 y z)) x)
(fma.f64 6 (*.f64 y z) x)
(fma.f64 (*.f64 6 y) z x)
(fma.f64 z (*.f64 6 y) x)
(+.f64 (*.f64 6 (*.f64 y z)) x)
(fma.f64 6 (*.f64 y z) x)
(fma.f64 (*.f64 6 y) z x)
(fma.f64 z (*.f64 6 y) x)
(*.f64 6 (*.f64 y z))
(+.f64 (*.f64 6 (*.f64 y z)) x)
(fma.f64 6 (*.f64 y z) x)
(fma.f64 (*.f64 6 y) z x)
(fma.f64 z (*.f64 6 y) x)
(+.f64 (*.f64 6 (*.f64 y z)) x)
(fma.f64 6 (*.f64 y z) x)
(fma.f64 (*.f64 6 y) z x)
(fma.f64 z (*.f64 6 y) x)
(+.f64 (*.f64 6 (*.f64 y z)) x)
(fma.f64 6 (*.f64 y z) x)
(fma.f64 (*.f64 6 y) z x)
(fma.f64 z (*.f64 6 y) x)

localize9.0ms (0.1%)

Local error

Found 2 expressions with local error:

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

Compiled 22 to 13 computations (40.9% saved)

series4.0ms (0%)

Counts
2 → 60
Calls

15 calls:

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

rewrite65.0ms (0.7%)

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

Useful iterations: 1 (0.0ms)

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

simplify17.0ms (0.2%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
08423
114423
223423
329423
Stop Event
saturated
Counts
107 → 50
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))
(*.f64 6 (*.f64 y z))
(+.f64 (*.f64 6 (*.f64 y z)) x)
(+.f64 (*.f64 6 (*.f64 y z)) x)
(+.f64 (*.f64 6 (*.f64 y z)) x)
x
(+.f64 (*.f64 6 (*.f64 y z)) x)
(+.f64 (*.f64 6 (*.f64 y z)) x)
(+.f64 (*.f64 6 (*.f64 y z)) x)
x
(+.f64 (*.f64 6 (*.f64 y z)) x)
(+.f64 (*.f64 6 (*.f64 y z)) x)
(+.f64 (*.f64 6 (*.f64 y z)) x)
x
(+.f64 (*.f64 6 (*.f64 y z)) x)
(+.f64 (*.f64 6 (*.f64 y z)) x)
(+.f64 (*.f64 6 (*.f64 y z)) x)
(*.f64 6 (*.f64 y z))
(+.f64 (*.f64 6 (*.f64 y z)) x)
(+.f64 (*.f64 6 (*.f64 y z)) x)
(+.f64 (*.f64 6 (*.f64 y z)) x)
(*.f64 6 (*.f64 y z))
(+.f64 (*.f64 6 (*.f64 y z)) x)
(+.f64 (*.f64 6 (*.f64 y z)) x)
(+.f64 (*.f64 6 (*.f64 y z)) x)
x
(+.f64 (*.f64 6 (*.f64 y z)) x)
(+.f64 (*.f64 6 (*.f64 y z)) x)
(+.f64 (*.f64 6 (*.f64 y z)) x)
(*.f64 6 (*.f64 y z))
(+.f64 (*.f64 6 (*.f64 y z)) x)
(+.f64 (*.f64 6 (*.f64 y z)) x)
(+.f64 (*.f64 6 (*.f64 y z)) x)
(*.f64 6 (*.f64 y z))
(+.f64 (*.f64 6 (*.f64 y z)) x)
(+.f64 (*.f64 6 (*.f64 y z)) x)
(+.f64 (*.f64 6 (*.f64 y z)) x)
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))
(*.f64 6 (*.f64 y z))
(+.f64 (*.f64 6 (*.f64 y z)) x)
(fma.f64 6 (*.f64 y z) x)
(fma.f64 (*.f64 6 y) z x)
(fma.f64 z (*.f64 6 y) x)
(+.f64 (*.f64 6 (*.f64 y z)) x)
(fma.f64 6 (*.f64 y z) x)
(fma.f64 (*.f64 6 y) z x)
(fma.f64 z (*.f64 6 y) x)
(+.f64 (*.f64 6 (*.f64 y z)) x)
(fma.f64 6 (*.f64 y z) x)
(fma.f64 (*.f64 6 y) z x)
(fma.f64 z (*.f64 6 y) x)
x
(+.f64 (*.f64 6 (*.f64 y z)) x)
(fma.f64 6 (*.f64 y z) x)
(fma.f64 (*.f64 6 y) z x)
(fma.f64 z (*.f64 6 y) x)
(+.f64 (*.f64 6 (*.f64 y z)) x)
(fma.f64 6 (*.f64 y z) x)
(fma.f64 (*.f64 6 y) z x)
(fma.f64 z (*.f64 6 y) x)
(+.f64 (*.f64 6 (*.f64 y z)) x)
(fma.f64 6 (*.f64 y z) x)
(fma.f64 (*.f64 6 y) z x)
(fma.f64 z (*.f64 6 y) x)
x
(+.f64 (*.f64 6 (*.f64 y z)) x)
(fma.f64 6 (*.f64 y z) x)
(fma.f64 (*.f64 6 y) z x)
(fma.f64 z (*.f64 6 y) x)
(+.f64 (*.f64 6 (*.f64 y z)) x)
(fma.f64 6 (*.f64 y z) x)
(fma.f64 (*.f64 6 y) z x)
(fma.f64 z (*.f64 6 y) x)
(+.f64 (*.f64 6 (*.f64 y z)) x)
(fma.f64 6 (*.f64 y z) x)
(fma.f64 (*.f64 6 y) z x)
(fma.f64 z (*.f64 6 y) x)
x
(+.f64 (*.f64 6 (*.f64 y z)) x)
(fma.f64 6 (*.f64 y z) x)
(fma.f64 (*.f64 6 y) z x)
(fma.f64 z (*.f64 6 y) x)
(+.f64 (*.f64 6 (*.f64 y z)) x)
(fma.f64 6 (*.f64 y z) x)
(fma.f64 (*.f64 6 y) z x)
(fma.f64 z (*.f64 6 y) x)
(+.f64 (*.f64 6 (*.f64 y z)) x)
(fma.f64 6 (*.f64 y z) x)
(fma.f64 (*.f64 6 y) z x)
(fma.f64 z (*.f64 6 y) x)
(*.f64 6 (*.f64 y z))
(+.f64 (*.f64 6 (*.f64 y z)) x)
(fma.f64 6 (*.f64 y z) x)
(fma.f64 (*.f64 6 y) z x)
(fma.f64 z (*.f64 6 y) x)
(+.f64 (*.f64 6 (*.f64 y z)) x)
(fma.f64 6 (*.f64 y z) x)
(fma.f64 (*.f64 6 y) z x)
(fma.f64 z (*.f64 6 y) x)
(+.f64 (*.f64 6 (*.f64 y z)) x)
(fma.f64 6 (*.f64 y z) x)
(fma.f64 (*.f64 6 y) z x)
(fma.f64 z (*.f64 6 y) x)
(*.f64 6 (*.f64 y z))
(+.f64 (*.f64 6 (*.f64 y z)) x)
(fma.f64 6 (*.f64 y z) x)
(fma.f64 (*.f64 6 y) z x)
(fma.f64 z (*.f64 6 y) x)
(+.f64 (*.f64 6 (*.f64 y z)) x)
(fma.f64 6 (*.f64 y z) x)
(fma.f64 (*.f64 6 y) z x)
(fma.f64 z (*.f64 6 y) x)
(+.f64 (*.f64 6 (*.f64 y z)) x)
(fma.f64 6 (*.f64 y z) x)
(fma.f64 (*.f64 6 y) z x)
(fma.f64 z (*.f64 6 y) x)
x
(+.f64 (*.f64 6 (*.f64 y z)) x)
(fma.f64 6 (*.f64 y z) x)
(fma.f64 (*.f64 6 y) z x)
(fma.f64 z (*.f64 6 y) x)
(+.f64 (*.f64 6 (*.f64 y z)) x)
(fma.f64 6 (*.f64 y z) x)
(fma.f64 (*.f64 6 y) z x)
(fma.f64 z (*.f64 6 y) x)
(+.f64 (*.f64 6 (*.f64 y z)) x)
(fma.f64 6 (*.f64 y z) x)
(fma.f64 (*.f64 6 y) z x)
(fma.f64 z (*.f64 6 y) x)
(*.f64 6 (*.f64 y z))
(+.f64 (*.f64 6 (*.f64 y z)) x)
(fma.f64 6 (*.f64 y z) x)
(fma.f64 (*.f64 6 y) z x)
(fma.f64 z (*.f64 6 y) x)
(+.f64 (*.f64 6 (*.f64 y z)) x)
(fma.f64 6 (*.f64 y z) x)
(fma.f64 (*.f64 6 y) z x)
(fma.f64 z (*.f64 6 y) x)
(+.f64 (*.f64 6 (*.f64 y z)) x)
(fma.f64 6 (*.f64 y z) x)
(fma.f64 (*.f64 6 y) z x)
(fma.f64 z (*.f64 6 y) x)
(*.f64 6 (*.f64 y z))
(+.f64 (*.f64 6 (*.f64 y z)) x)
(fma.f64 6 (*.f64 y z) x)
(fma.f64 (*.f64 6 y) z x)
(fma.f64 z (*.f64 6 y) x)
(+.f64 (*.f64 6 (*.f64 y z)) x)
(fma.f64 6 (*.f64 y z) x)
(fma.f64 (*.f64 6 y) z x)
(fma.f64 z (*.f64 6 y) x)
(+.f64 (*.f64 6 (*.f64 y z)) x)
(fma.f64 6 (*.f64 y z) x)
(fma.f64 (*.f64 6 y) z x)
(fma.f64 z (*.f64 6 y) x)

eval102.0ms (1.1%)

Compiler

Compiled 3658 to 1956 computations (46.5% saved)

prune81.0ms (0.9%)

Pruning

16 alts after pruning (10 fresh and 6 done)

PrunedKeptTotal
New2755280
Fresh358
Picked011
Done055
Total27816294
Error
0b
Counts
294 → 16
Alt Table
Click to see full alt table
StatusErrorProgram
41.2b
(*.f64 6 (*.f64 y z))
29.4b
(+.f64 x (*.f64 (pow.f64 (sqrt.f64 (*.f64 (-.f64 y x) 6)) 2) z))
48.5b
(*.f64 z (*.f64 -6 x))
43.2b
(/.f64 (*.f64 (*.f64 6 z) (-.f64 (*.f64 y y) (*.f64 x x))) (+.f64 y x))
48.5b
(*.f64 -6 (*.f64 z x))
21.9b
(*.f64 x (fma.f64 -6 z 1))
0.2b
(+.f64 (*.f64 (-.f64 y x) (*.f64 6 z)) x)
21.9b
(+.f64 (*.f64 -6 (*.f64 z x)) x)
21.9b
(*.f64 (+.f64 1 (*.f64 -6 z)) x)
0.2b
(+.f64 x (*.f64 (*.f64 (-.f64 y x) 6) z))
14.7b
(+.f64 x (*.f64 (*.f64 6 y) z))
27.0b
(*.f64 6 (*.f64 z (-.f64 y x)))
35.7b
x
14.6b
(+.f64 x (*.f64 6 (*.f64 y z)))
45.3b
(pow.f64 (sqrt.f64 (*.f64 6 (*.f64 z (-.f64 y x)))) 2)
41.2b
(*.f64 z (*.f64 6 y))
Compiler

Compiled 264 to 190 computations (28% saved)

localize7.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.1b
(fma.f64 -6 z 1)
0.1b
(*.f64 x (fma.f64 -6 z 1))
Compiler

Compiled 17 to 12 computations (29.4% saved)

series5.0ms (0.1%)

Counts
2 → 36
Calls

9 calls:

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

rewrite58.0ms (0.6%)

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

Useful iterations: 0 (0.0ms)

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

simplify18.0ms (0.2%)

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

Useful iterations: 1 (0.0ms)

IterNodesCost
011297
121237
239237
360237
483237
587237
689237
Stop Event
saturated
Counts
70 → 42
Calls
Call 1
Inputs
(*.f64 (+.f64 1 (*.f64 -6 z)) x)
(*.f64 (+.f64 1 (*.f64 -6 z)) x)
(*.f64 (+.f64 1 (*.f64 -6 z)) x)
(*.f64 (+.f64 1 (*.f64 -6 z)) x)
(*.f64 (+.f64 1 (*.f64 -6 z)) x)
(*.f64 (+.f64 1 (*.f64 -6 z)) x)
(*.f64 (+.f64 1 (*.f64 -6 z)) x)
(*.f64 (+.f64 1 (*.f64 -6 z)) x)
(*.f64 (+.f64 1 (*.f64 -6 z)) x)
(*.f64 (+.f64 1 (*.f64 -6 z)) x)
(*.f64 (+.f64 1 (*.f64 -6 z)) x)
(*.f64 (+.f64 1 (*.f64 -6 z)) x)
x
(+.f64 (*.f64 -6 (*.f64 z x)) x)
(+.f64 (*.f64 -6 (*.f64 z x)) x)
(+.f64 (*.f64 -6 (*.f64 z x)) x)
(*.f64 -6 (*.f64 z x))
(+.f64 (*.f64 -6 (*.f64 z x)) x)
(+.f64 (*.f64 -6 (*.f64 z x)) x)
(+.f64 (*.f64 -6 (*.f64 z x)) x)
(*.f64 -6 (*.f64 z x))
(+.f64 (*.f64 -6 (*.f64 z x)) x)
(+.f64 (*.f64 -6 (*.f64 z x)) x)
(+.f64 (*.f64 -6 (*.f64 z x)) x)
1
(+.f64 1 (*.f64 -6 z))
(+.f64 1 (*.f64 -6 z))
(+.f64 1 (*.f64 -6 z))
(*.f64 -6 z)
(+.f64 1 (*.f64 -6 z))
(+.f64 1 (*.f64 -6 z))
(+.f64 1 (*.f64 -6 z))
(*.f64 -6 z)
(+.f64 1 (*.f64 -6 z))
(+.f64 1 (*.f64 -6 z))
(+.f64 1 (*.f64 -6 z))
Outputs
(*.f64 (+.f64 1 (*.f64 -6 z)) x)
(*.f64 (fma.f64 -6 z 1) x)
(*.f64 (+.f64 1 (*.f64 -6 z)) x)
(*.f64 (fma.f64 -6 z 1) x)
(*.f64 (+.f64 1 (*.f64 -6 z)) x)
(*.f64 (fma.f64 -6 z 1) x)
(*.f64 (+.f64 1 (*.f64 -6 z)) x)
(*.f64 (fma.f64 -6 z 1) x)
(*.f64 (+.f64 1 (*.f64 -6 z)) x)
(*.f64 (fma.f64 -6 z 1) x)
(*.f64 (+.f64 1 (*.f64 -6 z)) x)
(*.f64 (fma.f64 -6 z 1) x)
(*.f64 (+.f64 1 (*.f64 -6 z)) x)
(*.f64 (fma.f64 -6 z 1) x)
(*.f64 (+.f64 1 (*.f64 -6 z)) x)
(*.f64 (fma.f64 -6 z 1) x)
(*.f64 (+.f64 1 (*.f64 -6 z)) x)
(*.f64 (fma.f64 -6 z 1) x)
(*.f64 (+.f64 1 (*.f64 -6 z)) x)
(*.f64 (fma.f64 -6 z 1) x)
(*.f64 (+.f64 1 (*.f64 -6 z)) x)
(*.f64 (fma.f64 -6 z 1) x)
(*.f64 (+.f64 1 (*.f64 -6 z)) x)
(*.f64 (fma.f64 -6 z 1) x)
x
(+.f64 (*.f64 -6 (*.f64 z x)) x)
(*.f64 (+.f64 1 (*.f64 -6 z)) x)
(*.f64 (fma.f64 -6 z 1) x)
(+.f64 (*.f64 -6 (*.f64 z x)) x)
(*.f64 (+.f64 1 (*.f64 -6 z)) x)
(*.f64 (fma.f64 -6 z 1) x)
(+.f64 (*.f64 -6 (*.f64 z x)) x)
(*.f64 (+.f64 1 (*.f64 -6 z)) x)
(*.f64 (fma.f64 -6 z 1) x)
(*.f64 -6 (*.f64 z x))
(+.f64 (*.f64 -6 (*.f64 z x)) x)
(*.f64 (+.f64 1 (*.f64 -6 z)) x)
(*.f64 (fma.f64 -6 z 1) x)
(+.f64 (*.f64 -6 (*.f64 z x)) x)
(*.f64 (+.f64 1 (*.f64 -6 z)) x)
(*.f64 (fma.f64 -6 z 1) x)
(+.f64 (*.f64 -6 (*.f64 z x)) x)
(*.f64 (+.f64 1 (*.f64 -6 z)) x)
(*.f64 (fma.f64 -6 z 1) x)
(*.f64 -6 (*.f64 z x))
(+.f64 (*.f64 -6 (*.f64 z x)) x)
(*.f64 (+.f64 1 (*.f64 -6 z)) x)
(*.f64 (fma.f64 -6 z 1) x)
(+.f64 (*.f64 -6 (*.f64 z x)) x)
(*.f64 (+.f64 1 (*.f64 -6 z)) x)
(*.f64 (fma.f64 -6 z 1) x)
(+.f64 (*.f64 -6 (*.f64 z x)) x)
(*.f64 (+.f64 1 (*.f64 -6 z)) x)
(*.f64 (fma.f64 -6 z 1) x)
1
(+.f64 1 (*.f64 -6 z))
(fma.f64 -6 z 1)
(+.f64 1 (*.f64 -6 z))
(fma.f64 -6 z 1)
(+.f64 1 (*.f64 -6 z))
(fma.f64 -6 z 1)
(*.f64 -6 z)
(+.f64 1 (*.f64 -6 z))
(fma.f64 -6 z 1)
(+.f64 1 (*.f64 -6 z))
(fma.f64 -6 z 1)
(+.f64 1 (*.f64 -6 z))
(fma.f64 -6 z 1)
(*.f64 -6 z)
(+.f64 1 (*.f64 -6 z))
(fma.f64 -6 z 1)
(+.f64 1 (*.f64 -6 z))
(fma.f64 -6 z 1)
(+.f64 1 (*.f64 -6 z))
(fma.f64 -6 z 1)

localize5.0ms (0.1%)

Local error

Found 1 expressions with local error:

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

Compiled 14 to 7 computations (50% saved)

series4.0ms (0%)

Counts
1 → 0
Calls

6 calls:

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

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

simplify8.0ms (0.1%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

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

localize6.0ms (0.1%)

Local error

Found 1 expressions with local error:

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

Compiled 14 to 9 computations (35.7% saved)

series2.0ms (0%)

Counts
1 → 24
Calls

6 calls:

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

rewrite49.0ms (0.5%)

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

Useful iterations: 0 (0.0ms)

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

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

localize7.0ms (0.1%)

Local error

Found 2 expressions with local error:

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

Compiled 21 to 10 computations (52.4% saved)

series2.0ms (0%)

Counts
1 → 15
Calls

6 calls:

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

rewrite60.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
811×pow1_binary64
757×add-log-exp_binary64
757×log1p-expm1-u_binary64
757×expm1-log1p-u_binary64
742×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify32.0ms (0.4%)

Algorithm
egg-herbie
Rules
270×fma-def_binary64
147×fma-neg_binary64
53×associate-*l*_binary64
48×associate-*r*_binary64
44×distribute-rgt-in_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
016135
133111
272111
3167111
4305111
5501111
6741111
7987111
81003111
91008111
Stop Event
saturated
Counts
54 → 45
Calls
Call 1
Inputs
x
(*.f64 -6 (*.f64 z x))
(*.f64 -6 (*.f64 z x))
(*.f64 (+.f64 1 (*.f64 -6 z)) x)
(*.f64 (+.f64 1 (*.f64 -6 z)) x)
(*.f64 (+.f64 1 (*.f64 -6 z)) x)
(*.f64 (+.f64 1 (*.f64 -6 z)) x)
(*.f64 (+.f64 1 (*.f64 -6 z)) x)
(*.f64 (+.f64 1 (*.f64 -6 z)) x)
(*.f64 (+.f64 1 (*.f64 -6 z)) x)
(*.f64 (+.f64 1 (*.f64 -6 z)) x)
(*.f64 -1 (*.f64 (-.f64 (*.f64 6 z) 1) x))
(*.f64 -1 (*.f64 (-.f64 (*.f64 6 z) 1) x))
(*.f64 -1 (*.f64 (-.f64 (*.f64 6 z) 1) x))
(*.f64 -1 (*.f64 (-.f64 (*.f64 6 z) 1) x))
Outputs
x
(*.f64 -6 (*.f64 z x))
(*.f64 -6 (*.f64 x z))
(*.f64 x (*.f64 -6 z))
(*.f64 -6 (*.f64 z x))
(*.f64 -6 (*.f64 x z))
(*.f64 x (*.f64 -6 z))
(*.f64 (+.f64 1 (*.f64 -6 z)) x)
(*.f64 x (+.f64 1 (*.f64 -6 z)))
(*.f64 x (fma.f64 -6 z 1))
(fma.f64 x (*.f64 -6 z) x)
(*.f64 (+.f64 1 (*.f64 -6 z)) x)
(*.f64 x (+.f64 1 (*.f64 -6 z)))
(*.f64 x (fma.f64 -6 z 1))
(fma.f64 x (*.f64 -6 z) x)
(*.f64 (+.f64 1 (*.f64 -6 z)) x)
(*.f64 x (+.f64 1 (*.f64 -6 z)))
(*.f64 x (fma.f64 -6 z 1))
(fma.f64 x (*.f64 -6 z) x)
(*.f64 (+.f64 1 (*.f64 -6 z)) x)
(*.f64 x (+.f64 1 (*.f64 -6 z)))
(*.f64 x (fma.f64 -6 z 1))
(fma.f64 x (*.f64 -6 z) x)
(*.f64 (+.f64 1 (*.f64 -6 z)) x)
(*.f64 x (+.f64 1 (*.f64 -6 z)))
(*.f64 x (fma.f64 -6 z 1))
(fma.f64 x (*.f64 -6 z) x)
(*.f64 (+.f64 1 (*.f64 -6 z)) x)
(*.f64 x (+.f64 1 (*.f64 -6 z)))
(*.f64 x (fma.f64 -6 z 1))
(fma.f64 x (*.f64 -6 z) x)
(*.f64 (+.f64 1 (*.f64 -6 z)) x)
(*.f64 x (+.f64 1 (*.f64 -6 z)))
(*.f64 x (fma.f64 -6 z 1))
(fma.f64 x (*.f64 -6 z) x)
(*.f64 (+.f64 1 (*.f64 -6 z)) x)
(*.f64 x (+.f64 1 (*.f64 -6 z)))
(*.f64 x (fma.f64 -6 z 1))
(fma.f64 x (*.f64 -6 z) x)
(*.f64 -1 (*.f64 (-.f64 (*.f64 6 z) 1) x))
(*.f64 x (+.f64 1 (*.f64 -6 z)))
(*.f64 x (fma.f64 -6 z 1))
(fma.f64 x (*.f64 -6 z) x)
(*.f64 -1 (*.f64 (-.f64 (*.f64 6 z) 1) x))
(*.f64 x (+.f64 1 (*.f64 -6 z)))
(*.f64 x (fma.f64 -6 z 1))
(fma.f64 x (*.f64 -6 z) x)
(*.f64 -1 (*.f64 (-.f64 (*.f64 6 z) 1) x))
(*.f64 x (+.f64 1 (*.f64 -6 z)))
(*.f64 x (fma.f64 -6 z 1))
(fma.f64 x (*.f64 -6 z) x)
(*.f64 -1 (*.f64 (-.f64 (*.f64 6 z) 1) x))
(*.f64 x (+.f64 1 (*.f64 -6 z)))
(*.f64 x (fma.f64 -6 z 1))
(fma.f64 x (*.f64 -6 z) x)

localize16.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(*.f64 z (-.f64 y x))
0.2b
(*.f64 6 (*.f64 z (-.f64 y x)))
0.3b
(pow.f64 (sqrt.f64 (*.f64 6 (*.f64 z (-.f64 y x)))) 2)
4.3b
(sqrt.f64 (*.f64 6 (*.f64 z (-.f64 y x))))
Compiler

Compiled 41 to 17 computations (58.5% saved)

series31.0ms (0.4%)

Counts
2 → 16
Calls

18 calls:

TimeVariablePointExpression
4.0ms
z
@-inf
(sqrt.f64 (*.f64 6 (*.f64 z (-.f64 y x))))
3.0ms
y
@-inf
(pow.f64 (sqrt.f64 (*.f64 6 (*.f64 z (-.f64 y x)))) 2)
3.0ms
y
@inf
(sqrt.f64 (*.f64 6 (*.f64 z (-.f64 y x))))
2.0ms
x
@-inf
(pow.f64 (sqrt.f64 (*.f64 6 (*.f64 z (-.f64 y x)))) 2)
2.0ms
y
@0
(pow.f64 (sqrt.f64 (*.f64 6 (*.f64 z (-.f64 y x)))) 2)

rewrite82.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
499×log-prod_binary64
369×exp-prod_binary64
359×prod-diff_binary64
334×pow-prod-down_binary64
268×pow2_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01122
123822
2271522
Stop Event
node limit
Counts
2 → 86
Calls
Call 1
Inputs
(sqrt.f64 (*.f64 6 (*.f64 z (-.f64 y x))))
(pow.f64 (sqrt.f64 (*.f64 6 (*.f64 z (-.f64 y x)))) 2)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (sqrt.f64 (*.f64 (-.f64 y x) (*.f64 6 z))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (*.f64 (-.f64 y x) (*.f64 6 z))))) 2)) (log.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (*.f64 (-.f64 y x) (*.f64 6 z)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (*.f64 (-.f64 y x) (*.f64 6 z)))))) (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (*.f64 (-.f64 y x) (*.f64 6 z)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (-.f64 y x) (*.f64 6 z))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (-.f64 y x) (*.f64 6 z))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (*.f64 (-.f64 y x) (*.f64 6 z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (-.f64 y x) (*.f64 6 z))) (pow.f64 (*.f64 (-.f64 y x) (*.f64 6 z)) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (-.f64 y x) (*.f64 6 z)) 1/6) (cbrt.f64 (*.f64 (-.f64 y x) (*.f64 6 z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 6) (sqrt.f64 (*.f64 z (-.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (-.f64 y x) (*.f64 6 z)) 1/4) (pow.f64 (*.f64 (-.f64 y x) (*.f64 6 z)) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 z (-.f64 y x))) (sqrt.f64 6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 6 z)) (sqrt.f64 (-.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (-.f64 y x) (*.f64 6 z)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (-.f64 y x) (*.f64 6 z))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 36 (pow.f64 (*.f64 z (-.f64 y x)) 2)) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (-.f64 y x) (*.f64 6 z)) 3) 1/6)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (-.f64 y x) (*.f64 6 z)) 3/2) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (-.f64 y x) (*.f64 6 z))) 3/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (-.f64 y x) (*.f64 6 z)) 1/6) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (-.f64 y x) (*.f64 6 z)) 1/4) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (sqrt.f64 (*.f64 (-.f64 y x) (*.f64 6 z)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1/2) (log.f64 (*.f64 (-.f64 y x) (*.f64 6 z))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (sqrt.f64 (*.f64 (-.f64 y x) (*.f64 6 z))))) 2)) (cbrt.f64 (log.f64 (sqrt.f64 (*.f64 (-.f64 y x) (*.f64 6 z))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (sqrt.f64 (*.f64 (-.f64 y x) (*.f64 6 z)))))) (sqrt.f64 (log.f64 (sqrt.f64 (*.f64 (-.f64 y x) (*.f64 6 z))))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (sqrt.f64 (*.f64 (-.f64 y x) (*.f64 6 z))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (sqrt.f64 (*.f64 (-.f64 y x) (*.f64 6 z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (sqrt.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/2))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 (-.f64 y x) (*.f64 6 z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 (-.f64 y x) (*.f64 6 z)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (sqrt.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/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (-.f64 y x) (*.f64 6 z)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3/2 (log.f64 (*.f64 (-.f64 y x) (*.f64 6 z)))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (-.f64 y x) (*.f64 6 z)) 1/6)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 1/4 (log.f64 (*.f64 (-.f64 y x) (*.f64 6 z)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (-.f64 y x) (*.f64 6 z))) 1) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (-.f64 y x) (*.f64 6 z))) 1/2) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (-.f64 y x) (*.f64 6 z)))) 1) 1))))))
((#(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 (pow.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 z) 6) (-.f64 y x))) 2)) (log.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 z) 6) (-.f64 y x)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 z) 6) (-.f64 y x)))) (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 z) 6) (-.f64 y x)))))))) (#(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 6 (*.f64 z (-.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 z (*.f64 (-.f64 y x) 6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 y x) (*.f64 6 z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 z (-.f64 y x)) 6)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 y x) (*.f64 6 z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (-.f64 y x) (*.f64 6 z))) (sqrt.f64 (*.f64 (-.f64 y x) (*.f64 6 z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (-.f64 y x) (*.f64 6 z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (-.f64 y x) (*.f64 6 z))) (pow.f64 (cbrt.f64 (*.f64 (-.f64 y x) (*.f64 6 z))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 y x) (*.f64 6 z))) 2) (cbrt.f64 (*.f64 (-.f64 y x) (*.f64 6 z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 z (-.f64 y x))) 2) (*.f64 (cbrt.f64 (*.f64 z (-.f64 y x))) 6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 6) (pow.f64 (*.f64 (*.f64 z (-.f64 y x)) (*.f64 (-.f64 y x) (*.f64 6 z))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (-.f64 y x) (*.f64 6 z)) 1/4) (pow.f64 (*.f64 (-.f64 y x) (*.f64 6 z)) 3/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 z (-.f64 y x))) (*.f64 (sqrt.f64 (*.f64 z (-.f64 y x))) 6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 6 z) (-.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (-.f64 y x) (*.f64 6 z)) 3/4) (pow.f64 (*.f64 (-.f64 y x) (*.f64 6 z)) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 6 (-.f64 y x)) z)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 6 (pow.f64 (cbrt.f64 (*.f64 z (-.f64 y x))) 2)) (cbrt.f64 (*.f64 z (-.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 6 (sqrt.f64 (*.f64 z (-.f64 y x)))) (sqrt.f64 (*.f64 z (-.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (-.f64 y x) (*.f64 6 z)) 5/6) (pow.f64 (*.f64 (-.f64 y x) (*.f64 6 z)) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (*.f64 (-.f64 y x) (*.f64 6 z)) 6) 1/2) (sqrt.f64 (*.f64 z (-.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 6 z) 1) (-.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 6 z) (pow.f64 (cbrt.f64 (-.f64 y x)) 2)) (cbrt.f64 (-.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 6 z) (sqrt.f64 (-.f64 y x))) (sqrt.f64 (-.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 6 z) (-.f64 (pow.f64 y 3) (pow.f64 x 3))) (fma.f64 y y (*.f64 x (+.f64 y x))))))) (#(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 sqrt.f64 (*.f64 36 (pow.f64 (*.f64 z (-.f64 y x)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (pow.f64 (exp.f64 z) 6) (-.f64 y x)))))) (#(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 exp.f64 (*.f64 (*.f64 2 (log.f64 (*.f64 (-.f64 y x) (*.f64 6 z)))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (-.f64 y x) (*.f64 6 z)) 3)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (-.f64 y x) (*.f64 6 z)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (-.f64 y x) (*.f64 6 z))) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (-.f64 y x) (*.f64 6 z))) 1/2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (-.f64 y x) (*.f64 6 z)))) 1) 2))))) (#(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)))))))

simplify62.0ms (0.7%)

Algorithm
egg-herbie
Rules
703×fma-def_binary64
593×associate-*r*_binary64
579×associate-*l*_binary64
416×times-frac_binary64
328×associate-*l/_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0114611
1345485
21339445
37383445
Stop Event
node limit
Counts
102 → 113
Calls
Call 1
Inputs
(*.f64 (*.f64 (sqrt.f64 -1) (sqrt.f64 6)) (sqrt.f64 (*.f64 z x)))
(+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 y (sqrt.f64 6)) (sqrt.f64 -1)) (sqrt.f64 (/.f64 z x)))) (*.f64 (*.f64 (sqrt.f64 -1) (sqrt.f64 6)) (sqrt.f64 (*.f64 z x))))
(+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 y (sqrt.f64 6)) (sqrt.f64 -1)) (sqrt.f64 (/.f64 z x)))) (+.f64 (*.f64 -1/8 (*.f64 (/.f64 (*.f64 (pow.f64 y 2) (sqrt.f64 6)) (pow.f64 (sqrt.f64 -1) 3)) (sqrt.f64 (/.f64 z (pow.f64 x 3))))) (*.f64 (*.f64 (sqrt.f64 -1) (sqrt.f64 6)) (sqrt.f64 (*.f64 z x)))))
(+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 y (sqrt.f64 6)) (sqrt.f64 -1)) (sqrt.f64 (/.f64 z x)))) (+.f64 (*.f64 1/16 (*.f64 (/.f64 (*.f64 (pow.f64 y 3) (sqrt.f64 6)) (pow.f64 (sqrt.f64 -1) 5)) (sqrt.f64 (/.f64 z (pow.f64 x 5))))) (+.f64 (*.f64 -1/8 (*.f64 (/.f64 (*.f64 (pow.f64 y 2) (sqrt.f64 6)) (pow.f64 (sqrt.f64 -1) 3)) (sqrt.f64 (/.f64 z (pow.f64 x 3))))) (*.f64 (*.f64 (sqrt.f64 -1) (sqrt.f64 6)) (sqrt.f64 (*.f64 z x))))))
(*.f64 (sqrt.f64 (*.f64 y z)) (sqrt.f64 6))
(+.f64 (*.f64 (sqrt.f64 (*.f64 y z)) (sqrt.f64 6)) (*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 z y)) (*.f64 (sqrt.f64 6) x))))
(+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 z (pow.f64 y 3))) (*.f64 (sqrt.f64 6) (pow.f64 x 2)))) (+.f64 (*.f64 (sqrt.f64 (*.f64 y z)) (sqrt.f64 6)) (*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 z y)) (*.f64 (sqrt.f64 6) x)))))
(+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 z (pow.f64 y 3))) (*.f64 (sqrt.f64 6) (pow.f64 x 2)))) (+.f64 (*.f64 (sqrt.f64 (*.f64 y z)) (sqrt.f64 6)) (+.f64 (*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 z y)) (*.f64 (sqrt.f64 6) x))) (*.f64 -1/16 (*.f64 (sqrt.f64 (/.f64 z (pow.f64 y 5))) (*.f64 (sqrt.f64 6) (pow.f64 x 3)))))))
(*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 z x)))
(+.f64 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 z x))) (*.f64 y (*.f64 (pow.f64 (sqrt.f64 6) 2) z)))
(+.f64 (*.f64 (pow.f64 y 2) (+.f64 (*.f64 1/4 (/.f64 (*.f64 (pow.f64 (sqrt.f64 6) 2) z) (*.f64 (pow.f64 (sqrt.f64 -1) 2) x))) (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 (sqrt.f64 6) 2) z) (*.f64 (pow.f64 (sqrt.f64 -1) 2) x))))) (+.f64 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 z x))) (*.f64 y (*.f64 (pow.f64 (sqrt.f64 6) 2) z))))
(+.f64 (*.f64 (pow.f64 y 3) (+.f64 (*.f64 1/8 (/.f64 (*.f64 (pow.f64 (sqrt.f64 6) 2) z) (*.f64 (pow.f64 (sqrt.f64 -1) 4) (pow.f64 x 2)))) (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 (sqrt.f64 6) 2) z) (*.f64 (pow.f64 (sqrt.f64 -1) 4) (pow.f64 x 2)))))) (+.f64 (*.f64 (pow.f64 y 2) (+.f64 (*.f64 1/4 (/.f64 (*.f64 (pow.f64 (sqrt.f64 6) 2) z) (*.f64 (pow.f64 (sqrt.f64 -1) 2) x))) (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 (sqrt.f64 6) 2) z) (*.f64 (pow.f64 (sqrt.f64 -1) 2) x))))) (+.f64 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 z x))) (*.f64 y (*.f64 (pow.f64 (sqrt.f64 6) 2) z)))))
(*.f64 y (*.f64 (pow.f64 (sqrt.f64 6) 2) z))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 z x))) (*.f64 y (*.f64 (pow.f64 (sqrt.f64 6) 2) z)))
(+.f64 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 (sqrt.f64 6) 2) z) y)) (*.f64 1/4 (/.f64 (*.f64 (pow.f64 (sqrt.f64 6) 2) z) y))) (pow.f64 x 2)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 z x))) (*.f64 y (*.f64 (pow.f64 (sqrt.f64 6) 2) z))))
(+.f64 (*.f64 (+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 (sqrt.f64 6) 2) z) (pow.f64 y 2))) (*.f64 1/8 (/.f64 (*.f64 (pow.f64 (sqrt.f64 6) 2) z) (pow.f64 y 2)))) (pow.f64 x 3)) (+.f64 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 (sqrt.f64 6) 2) z) y)) (*.f64 1/4 (/.f64 (*.f64 (pow.f64 (sqrt.f64 6) 2) z) y))) (pow.f64 x 2)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 z x))) (*.f64 y (*.f64 (pow.f64 (sqrt.f64 6) 2) z)))))
Outputs
(*.f64 (*.f64 (sqrt.f64 -1) (sqrt.f64 6)) (sqrt.f64 (*.f64 z x)))
(*.f64 (sqrt.f64 -1) (*.f64 (sqrt.f64 6) (sqrt.f64 (*.f64 z x))))
(+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 y (sqrt.f64 6)) (sqrt.f64 -1)) (sqrt.f64 (/.f64 z x)))) (*.f64 (*.f64 (sqrt.f64 -1) (sqrt.f64 6)) (sqrt.f64 (*.f64 z x))))
(fma.f64 1/2 (*.f64 (/.f64 y (/.f64 (sqrt.f64 -1) (sqrt.f64 6))) (sqrt.f64 (/.f64 z x))) (*.f64 (sqrt.f64 -1) (*.f64 (sqrt.f64 6) (sqrt.f64 (*.f64 z x)))))
(fma.f64 (sqrt.f64 -1) (*.f64 (sqrt.f64 6) (sqrt.f64 (*.f64 z x))) (*.f64 (sqrt.f64 (/.f64 z x)) (*.f64 1/2 (*.f64 (/.f64 y (sqrt.f64 -1)) (sqrt.f64 6)))))
(fma.f64 (sqrt.f64 -1) (*.f64 (sqrt.f64 6) (sqrt.f64 (*.f64 z x))) (*.f64 (*.f64 (sqrt.f64 6) (/.f64 y (sqrt.f64 -1))) (*.f64 1/2 (sqrt.f64 (/.f64 z x)))))
(+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 y (sqrt.f64 6)) (sqrt.f64 -1)) (sqrt.f64 (/.f64 z x)))) (+.f64 (*.f64 -1/8 (*.f64 (/.f64 (*.f64 (pow.f64 y 2) (sqrt.f64 6)) (pow.f64 (sqrt.f64 -1) 3)) (sqrt.f64 (/.f64 z (pow.f64 x 3))))) (*.f64 (*.f64 (sqrt.f64 -1) (sqrt.f64 6)) (sqrt.f64 (*.f64 z x)))))
(fma.f64 1/2 (*.f64 (/.f64 y (/.f64 (sqrt.f64 -1) (sqrt.f64 6))) (sqrt.f64 (/.f64 z x))) (fma.f64 -1/8 (*.f64 (/.f64 (*.f64 y y) (/.f64 (pow.f64 (sqrt.f64 -1) 3) (sqrt.f64 6))) (sqrt.f64 (/.f64 z (pow.f64 x 3)))) (*.f64 (sqrt.f64 -1) (*.f64 (sqrt.f64 6) (sqrt.f64 (*.f64 z x))))))
(fma.f64 1/2 (*.f64 (*.f64 (/.f64 y (sqrt.f64 -1)) (sqrt.f64 6)) (sqrt.f64 (/.f64 z x))) (fma.f64 (sqrt.f64 -1) (*.f64 (sqrt.f64 6) (sqrt.f64 (*.f64 z x))) (*.f64 (sqrt.f64 (/.f64 z (pow.f64 x 3))) (*.f64 -1/8 (/.f64 (*.f64 y y) (/.f64 (sqrt.f64 -1) (/.f64 (sqrt.f64 6) -1)))))))
(fma.f64 (sqrt.f64 -1) (*.f64 (sqrt.f64 6) (sqrt.f64 (*.f64 z x))) (fma.f64 1/2 (*.f64 (*.f64 (sqrt.f64 6) (/.f64 y (sqrt.f64 -1))) (sqrt.f64 (/.f64 z x))) (*.f64 (sqrt.f64 (/.f64 z (pow.f64 x 3))) (*.f64 1/8 (/.f64 (sqrt.f64 6) (/.f64 (sqrt.f64 -1) (*.f64 y y)))))))
(+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 y (sqrt.f64 6)) (sqrt.f64 -1)) (sqrt.f64 (/.f64 z x)))) (+.f64 (*.f64 1/16 (*.f64 (/.f64 (*.f64 (pow.f64 y 3) (sqrt.f64 6)) (pow.f64 (sqrt.f64 -1) 5)) (sqrt.f64 (/.f64 z (pow.f64 x 5))))) (+.f64 (*.f64 -1/8 (*.f64 (/.f64 (*.f64 (pow.f64 y 2) (sqrt.f64 6)) (pow.f64 (sqrt.f64 -1) 3)) (sqrt.f64 (/.f64 z (pow.f64 x 3))))) (*.f64 (*.f64 (sqrt.f64 -1) (sqrt.f64 6)) (sqrt.f64 (*.f64 z x))))))
(fma.f64 1/2 (*.f64 (/.f64 y (/.f64 (sqrt.f64 -1) (sqrt.f64 6))) (sqrt.f64 (/.f64 z x))) (fma.f64 1/16 (*.f64 (/.f64 (*.f64 (sqrt.f64 6) (pow.f64 y 3)) (pow.f64 (sqrt.f64 -1) 5)) (sqrt.f64 (/.f64 z (pow.f64 x 5)))) (fma.f64 -1/8 (*.f64 (/.f64 (*.f64 y y) (/.f64 (pow.f64 (sqrt.f64 -1) 3) (sqrt.f64 6))) (sqrt.f64 (/.f64 z (pow.f64 x 3)))) (*.f64 (sqrt.f64 -1) (*.f64 (sqrt.f64 6) (sqrt.f64 (*.f64 z x)))))))
(fma.f64 1/2 (*.f64 (*.f64 (/.f64 y (sqrt.f64 -1)) (sqrt.f64 6)) (sqrt.f64 (/.f64 z x))) (fma.f64 1/16 (*.f64 (*.f64 (/.f64 (pow.f64 y 3) (pow.f64 (sqrt.f64 -1) 5)) (sqrt.f64 6)) (sqrt.f64 (/.f64 z (pow.f64 x 5)))) (fma.f64 (sqrt.f64 -1) (*.f64 (sqrt.f64 6) (sqrt.f64 (*.f64 z x))) (*.f64 (sqrt.f64 (/.f64 z (pow.f64 x 3))) (*.f64 -1/8 (/.f64 (*.f64 y y) (/.f64 (sqrt.f64 -1) (/.f64 (sqrt.f64 6) -1))))))))
(fma.f64 1/2 (*.f64 (*.f64 (sqrt.f64 6) (/.f64 y (sqrt.f64 -1))) (sqrt.f64 (/.f64 z x))) (fma.f64 (sqrt.f64 -1) (*.f64 (sqrt.f64 6) (sqrt.f64 (*.f64 z x))) (fma.f64 (sqrt.f64 (/.f64 z (pow.f64 x 3))) (*.f64 1/8 (/.f64 (sqrt.f64 6) (/.f64 (sqrt.f64 -1) (*.f64 y y)))) (*.f64 (sqrt.f64 (/.f64 z (pow.f64 x 5))) (*.f64 1/16 (*.f64 (sqrt.f64 6) (/.f64 (pow.f64 y 3) (pow.f64 (sqrt.f64 -1) 5))))))))
(*.f64 (sqrt.f64 (*.f64 y z)) (sqrt.f64 6))
(*.f64 (sqrt.f64 6) (sqrt.f64 (*.f64 z y)))
(+.f64 (*.f64 (sqrt.f64 (*.f64 y z)) (sqrt.f64 6)) (*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 z y)) (*.f64 (sqrt.f64 6) x))))
(fma.f64 (sqrt.f64 (*.f64 z y)) (sqrt.f64 6) (*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 z y)) (*.f64 (sqrt.f64 6) x))))
(fma.f64 (sqrt.f64 6) (sqrt.f64 (*.f64 z y)) (*.f64 -1/2 (*.f64 x (*.f64 (sqrt.f64 6) (sqrt.f64 (/.f64 z y))))))
(*.f64 (sqrt.f64 6) (+.f64 (sqrt.f64 (*.f64 z y)) (*.f64 x (*.f64 -1/2 (sqrt.f64 (/.f64 z y))))))
(+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 z (pow.f64 y 3))) (*.f64 (sqrt.f64 6) (pow.f64 x 2)))) (+.f64 (*.f64 (sqrt.f64 (*.f64 y z)) (sqrt.f64 6)) (*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 z y)) (*.f64 (sqrt.f64 6) x)))))
(fma.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 z (pow.f64 y 3))) (*.f64 (sqrt.f64 6) (*.f64 x x))) (fma.f64 (sqrt.f64 (*.f64 z y)) (sqrt.f64 6) (*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 z y)) (*.f64 (sqrt.f64 6) x)))))
(fma.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 z (pow.f64 y 3))) (*.f64 (sqrt.f64 6) (*.f64 x x))) (fma.f64 (sqrt.f64 6) (sqrt.f64 (*.f64 z y)) (*.f64 -1/2 (*.f64 x (*.f64 (sqrt.f64 6) (sqrt.f64 (/.f64 z y)))))))
(fma.f64 -1/2 (*.f64 (sqrt.f64 6) (*.f64 x (sqrt.f64 (/.f64 z y)))) (*.f64 (sqrt.f64 6) (+.f64 (sqrt.f64 (*.f64 z y)) (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 z (pow.f64 y 3))) (*.f64 x x))))))
(+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 z (pow.f64 y 3))) (*.f64 (sqrt.f64 6) (pow.f64 x 2)))) (+.f64 (*.f64 (sqrt.f64 (*.f64 y z)) (sqrt.f64 6)) (+.f64 (*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 z y)) (*.f64 (sqrt.f64 6) x))) (*.f64 -1/16 (*.f64 (sqrt.f64 (/.f64 z (pow.f64 y 5))) (*.f64 (sqrt.f64 6) (pow.f64 x 3)))))))
(fma.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 z (pow.f64 y 3))) (*.f64 (sqrt.f64 6) (*.f64 x x))) (fma.f64 (sqrt.f64 (*.f64 z y)) (sqrt.f64 6) (fma.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 z y)) (*.f64 (sqrt.f64 6) x)) (*.f64 -1/16 (*.f64 (sqrt.f64 (/.f64 z (pow.f64 y 5))) (*.f64 (sqrt.f64 6) (pow.f64 x 3)))))))
(fma.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 z (pow.f64 y 3))) (*.f64 (sqrt.f64 6) (*.f64 x x))) (fma.f64 (sqrt.f64 6) (sqrt.f64 (*.f64 z y)) (fma.f64 -1/16 (*.f64 (pow.f64 x 3) (*.f64 (sqrt.f64 6) (sqrt.f64 (/.f64 z (pow.f64 y 5))))) (*.f64 -1/2 (*.f64 x (*.f64 (sqrt.f64 6) (sqrt.f64 (/.f64 z y))))))))
(+.f64 (*.f64 (sqrt.f64 6) (+.f64 (sqrt.f64 (*.f64 z y)) (*.f64 x (*.f64 -1/2 (sqrt.f64 (/.f64 z y)))))) (*.f64 (sqrt.f64 6) (+.f64 (*.f64 (pow.f64 x 3) (*.f64 -1/16 (sqrt.f64 (/.f64 z (pow.f64 y 5))))) (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 z (pow.f64 y 3))) (*.f64 x x))))))
(*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 z x)))
(*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (*.f64 z x) (pow.f64 (sqrt.f64 6) 2)))
(*.f64 (*.f64 z x) -6)
(*.f64 z (*.f64 x -6))
(+.f64 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 z x))) (*.f64 y (*.f64 (pow.f64 (sqrt.f64 6) 2) z)))
(fma.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (*.f64 z x) (pow.f64 (sqrt.f64 6) 2)) (*.f64 (*.f64 y (pow.f64 (sqrt.f64 6) 2)) z))
(fma.f64 y (*.f64 z 6) (*.f64 (*.f64 z x) -6))
(*.f64 (*.f64 z 6) (-.f64 y x))
(+.f64 (*.f64 (pow.f64 y 2) (+.f64 (*.f64 1/4 (/.f64 (*.f64 (pow.f64 (sqrt.f64 6) 2) z) (*.f64 (pow.f64 (sqrt.f64 -1) 2) x))) (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 (sqrt.f64 6) 2) z) (*.f64 (pow.f64 (sqrt.f64 -1) 2) x))))) (+.f64 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 z x))) (*.f64 y (*.f64 (pow.f64 (sqrt.f64 6) 2) z))))
(fma.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (*.f64 z x) (pow.f64 (sqrt.f64 6) 2)) (*.f64 (*.f64 y (pow.f64 (sqrt.f64 6) 2)) z))
(fma.f64 y (*.f64 z 6) (*.f64 (*.f64 z x) -6))
(*.f64 (*.f64 z 6) (-.f64 y x))
(+.f64 (*.f64 (pow.f64 y 3) (+.f64 (*.f64 1/8 (/.f64 (*.f64 (pow.f64 (sqrt.f64 6) 2) z) (*.f64 (pow.f64 (sqrt.f64 -1) 4) (pow.f64 x 2)))) (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 (sqrt.f64 6) 2) z) (*.f64 (pow.f64 (sqrt.f64 -1) 4) (pow.f64 x 2)))))) (+.f64 (*.f64 (pow.f64 y 2) (+.f64 (*.f64 1/4 (/.f64 (*.f64 (pow.f64 (sqrt.f64 6) 2) z) (*.f64 (pow.f64 (sqrt.f64 -1) 2) x))) (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 (sqrt.f64 6) 2) z) (*.f64 (pow.f64 (sqrt.f64 -1) 2) x))))) (+.f64 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 z x))) (*.f64 y (*.f64 (pow.f64 (sqrt.f64 6) 2) z)))))
(fma.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (*.f64 z x) (pow.f64 (sqrt.f64 6) 2)) (*.f64 (*.f64 y (pow.f64 (sqrt.f64 6) 2)) z))
(fma.f64 y (*.f64 z 6) (*.f64 (*.f64 z x) -6))
(*.f64 (*.f64 z 6) (-.f64 y x))
(*.f64 y (*.f64 (pow.f64 (sqrt.f64 6) 2) z))
(*.f64 (*.f64 y (pow.f64 (sqrt.f64 6) 2)) z)
(*.f64 z (*.f64 y 6))
(*.f64 (*.f64 z y) 6)
(+.f64 (*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 z x))) (*.f64 y (*.f64 (pow.f64 (sqrt.f64 6) 2) z)))
(fma.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (*.f64 z x) (pow.f64 (sqrt.f64 6) 2)) (*.f64 (*.f64 y (pow.f64 (sqrt.f64 6) 2)) z))
(fma.f64 y (*.f64 z 6) (*.f64 (*.f64 z x) -6))
(*.f64 (*.f64 z 6) (-.f64 y x))
(+.f64 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 (sqrt.f64 6) 2) z) y)) (*.f64 1/4 (/.f64 (*.f64 (pow.f64 (sqrt.f64 6) 2) z) y))) (pow.f64 x 2)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 z x))) (*.f64 y (*.f64 (pow.f64 (sqrt.f64 6) 2) z))))
(fma.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (*.f64 z x) (pow.f64 (sqrt.f64 6) 2)) (*.f64 (*.f64 y (pow.f64 (sqrt.f64 6) 2)) z))
(fma.f64 y (*.f64 z 6) (*.f64 (*.f64 z x) -6))
(*.f64 (*.f64 z 6) (-.f64 y x))
(+.f64 (*.f64 (+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 (sqrt.f64 6) 2) z) (pow.f64 y 2))) (*.f64 1/8 (/.f64 (*.f64 (pow.f64 (sqrt.f64 6) 2) z) (pow.f64 y 2)))) (pow.f64 x 3)) (+.f64 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 (sqrt.f64 6) 2) z) y)) (*.f64 1/4 (/.f64 (*.f64 (pow.f64 (sqrt.f64 6) 2) z) y))) (pow.f64 x 2)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 z x))) (*.f64 y (*.f64 (pow.f64 (sqrt.f64 6) 2) z)))))
(fma.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (*.f64 z x) (pow.f64 (sqrt.f64 6) 2)) (*.f64 (*.f64 y (pow.f64 (sqrt.f64 6) 2)) z))
(fma.f64 y (*.f64 z 6) (*.f64 (*.f64 z x) -6))
(*.f64 (*.f64 z 6) (-.f64 y x))

eval134.0ms (1.5%)

Compiler

Compiled 3921 to 2522 computations (35.7% saved)

prune60.0ms (0.7%)

Pruning

17 alts after pruning (9 fresh and 8 done)

PrunedKeptTotal
New2747281
Fresh325
Picked101
Done2810
Total28017297
Error
0b
Counts
297 → 17
Alt Table
Click to see full alt table
StatusErrorProgram
41.2b
(*.f64 6 (*.f64 y z))
29.4b
(+.f64 x (*.f64 (pow.f64 (sqrt.f64 (*.f64 (-.f64 y x) 6)) 2) z))
48.5b
(*.f64 -6 (*.f64 z x))
21.9b
(*.f64 x (fma.f64 -6 z 1))
56.2b
(pow.f64 (sqrt.f64 (*.f64 z (*.f64 -6 x))) 2)
0.2b
(+.f64 (*.f64 (-.f64 y x) (*.f64 6 z)) x)
21.9b
(+.f64 (*.f64 -6 (*.f64 z x)) x)
27.1b
(*.f64 (-.f64 y x) (*.f64 6 z))
48.5b
(*.f64 x (*.f64 -6 z))
41.2b
(*.f64 z (*.f64 6 y))
21.9b
(*.f64 (+.f64 (*.f64 -6 z) 1) x)
27.1b
(*.f64 (*.f64 6 (-.f64 y x)) z)
14.7b
(+.f64 x (*.f64 (*.f64 6 y) z))
48.5b
(*.f64 z (*.f64 x -6))
43.2b
(/.f64 (*.f64 (*.f64 6 z) (-.f64 (*.f64 y y) (*.f64 x x))) (+.f64 y x))
35.7b
x
14.6b
(+.f64 x (*.f64 6 (*.f64 y z)))
Compiler

Compiled 259 to 187 computations (27.8% saved)

localize10.0ms (0.1%)

Local error

Found 2 expressions with local error:

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

Compiled 22 to 16 computations (27.3% saved)

series3.0ms (0%)

Counts
2 → 36
Calls

9 calls:

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

rewrite68.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
763×pow1_binary64
710×log1p-expm1-u_binary64
710×expm1-log1p-u_binary64
709×add-log-exp_binary64
696×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0813
116413
2196013
Stop Event
node limit
Counts
2 → 53
Calls
Call 1
Inputs
(*.f64 (+.f64 (*.f64 -6 z) 1) x)
(+.f64 (*.f64 -6 z) 1)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 x (*.f64 (*.f64 -6 z) x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 x (*.f64 x (*.f64 -6 z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 -6 z) x) x)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (*.f64 -6 z)) x)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 (fma.f64 -6 z 1) x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 1 (pow.f64 (*.f64 -6 z) 3)) x) (+.f64 (pow.f64 (*.f64 -6 z) 2) (-.f64 1 (*.f64 -6 z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (pow.f64 (*.f64 -6 z) 2) -1) x) (fma.f64 -6 z -1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (+.f64 1 (pow.f64 (*.f64 -6 z) 3))) (+.f64 (pow.f64 (*.f64 -6 z) 2) (-.f64 1 (*.f64 -6 z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (+.f64 (pow.f64 (*.f64 -6 z) 2) -1)) (fma.f64 -6 z -1))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (fma.f64 -6 z 1) x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (fma.f64 -6 z 1) x) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (fma.f64 -6 z 1) x)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (fma.f64 -6 z 1) x)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (fma.f64 -6 z 1) x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (fma.f64 -6 z 1)) x))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (fma.f64 -6 z 1) x) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (fma.f64 -6 z 1) 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 1) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (fma.f64 -6 z 1) x)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (fma.f64 -6 z 1) x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (fma.f64 -6 z 1) x)))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (fma.f64 -6 z 1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (*.f64 -6 z) 2) (fma.f64 -6 z -1)) (/.f64 1 (fma.f64 -6 z -1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 -6 z 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 -6 z 1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 -6 z 1)) (pow.f64 (cbrt.f64 (fma.f64 -6 z 1)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 -6 z 1)) 2) (cbrt.f64 (fma.f64 -6 z 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 -6 z 1)) (sqrt.f64 (fma.f64 -6 z 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 1 (pow.f64 (*.f64 -6 z) 3)) (/.f64 1 (+.f64 (pow.f64 (*.f64 -6 z) 2) (-.f64 1 (*.f64 -6 z)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (*.f64 -6 z) 2) -1) (/.f64 1 (fma.f64 -6 z -1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (pow.f64 (*.f64 -6 z) 2) (-.f64 1 (*.f64 -6 z))) (+.f64 1 (pow.f64 (*.f64 -6 z) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 -6 z -1) (+.f64 (pow.f64 (*.f64 -6 z) 2) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 1 (pow.f64 (*.f64 -6 z) 3)) (+.f64 (pow.f64 (*.f64 -6 z) 2) (-.f64 1 (*.f64 -6 z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 1 (pow.f64 (*.f64 -6 z) 3)) (+.f64 1 (-.f64 (pow.f64 (*.f64 -6 z) 2) (*.f64 -6 z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 -6 z) 2) -1) (fma.f64 -6 z -1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 1 (pow.f64 (*.f64 -6 z) 3))) (neg.f64 (+.f64 (pow.f64 (*.f64 -6 z) 2) (-.f64 1 (*.f64 -6 z)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 -6 z) 2) -1)) (neg.f64 (fma.f64 -6 z -1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 1 (pow.f64 (*.f64 -6 z) 2)) (-.f64 1 (*.f64 -6 z)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 -6 z 1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 -6 z 1) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 -6 z 1)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 -6 z 1)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 -6 z 1) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 -6 z 1)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 -6 z 1) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 -6 z 1)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 -6 z 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log1p.f64 (*.f64 -6 z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -6 z 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 z -6 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 -6 z) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 -6 z)) 2) (cbrt.f64 (*.f64 -6 z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 -6 z)) (sqrt.f64 (*.f64 -6 z)) 1)))))

simplify16.0ms (0.2%)

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

Useful iterations: 1 (0.0ms)

IterNodesCost
011255
121237
239237
360237
483237
587237
689237
Stop Event
saturated
Counts
89 → 62
Calls
Call 1
Inputs
x
(+.f64 (*.f64 -6 (*.f64 z x)) x)
(+.f64 (*.f64 -6 (*.f64 z x)) x)
(+.f64 (*.f64 -6 (*.f64 z x)) x)
(*.f64 -6 (*.f64 z x))
(+.f64 (*.f64 -6 (*.f64 z x)) x)
(+.f64 (*.f64 -6 (*.f64 z x)) x)
(+.f64 (*.f64 -6 (*.f64 z x)) x)
(*.f64 -6 (*.f64 z x))
(+.f64 (*.f64 -6 (*.f64 z x)) x)
(+.f64 (*.f64 -6 (*.f64 z x)) x)
(+.f64 (*.f64 -6 (*.f64 z x)) x)
(*.f64 (+.f64 1 (*.f64 -6 z)) x)
(*.f64 (+.f64 1 (*.f64 -6 z)) x)
(*.f64 (+.f64 1 (*.f64 -6 z)) x)
(*.f64 (+.f64 1 (*.f64 -6 z)) x)
(*.f64 (+.f64 1 (*.f64 -6 z)) x)
(*.f64 (+.f64 1 (*.f64 -6 z)) x)
(*.f64 (+.f64 1 (*.f64 -6 z)) x)
(*.f64 (+.f64 1 (*.f64 -6 z)) x)
(*.f64 (+.f64 1 (*.f64 -6 z)) x)
(*.f64 (+.f64 1 (*.f64 -6 z)) x)
(*.f64 (+.f64 1 (*.f64 -6 z)) x)
(*.f64 (+.f64 1 (*.f64 -6 z)) x)
1
(+.f64 1 (*.f64 -6 z))
(+.f64 1 (*.f64 -6 z))
(+.f64 1 (*.f64 -6 z))
(*.f64 -6 z)
(+.f64 1 (*.f64 -6 z))
(+.f64 1 (*.f64 -6 z))
(+.f64 1 (*.f64 -6 z))
(*.f64 -6 z)
(+.f64 1 (*.f64 -6 z))
(+.f64 1 (*.f64 -6 z))
(+.f64 1 (*.f64 -6 z))
Outputs
x
(+.f64 (*.f64 -6 (*.f64 z x)) x)
(fma.f64 -6 (*.f64 x z) x)
(*.f64 x (fma.f64 -6 z 1))
(+.f64 (*.f64 -6 (*.f64 z x)) x)
(fma.f64 -6 (*.f64 x z) x)
(*.f64 x (fma.f64 -6 z 1))
(+.f64 (*.f64 -6 (*.f64 z x)) x)
(fma.f64 -6 (*.f64 x z) x)
(*.f64 x (fma.f64 -6 z 1))
(*.f64 -6 (*.f64 z x))
(*.f64 -6 (*.f64 x z))
(*.f64 x (*.f64 -6 z))
(+.f64 (*.f64 -6 (*.f64 z x)) x)
(fma.f64 -6 (*.f64 x z) x)
(*.f64 x (fma.f64 -6 z 1))
(+.f64 (*.f64 -6 (*.f64 z x)) x)
(fma.f64 -6 (*.f64 x z) x)
(*.f64 x (fma.f64 -6 z 1))
(+.f64 (*.f64 -6 (*.f64 z x)) x)
(fma.f64 -6 (*.f64 x z) x)
(*.f64 x (fma.f64 -6 z 1))
(*.f64 -6 (*.f64 z x))
(*.f64 -6 (*.f64 x z))
(*.f64 x (*.f64 -6 z))
(+.f64 (*.f64 -6 (*.f64 z x)) x)
(fma.f64 -6 (*.f64 x z) x)
(*.f64 x (fma.f64 -6 z 1))
(+.f64 (*.f64 -6 (*.f64 z x)) x)
(fma.f64 -6 (*.f64 x z) x)
(*.f64 x (fma.f64 -6 z 1))
(+.f64 (*.f64 -6 (*.f64 z x)) x)
(fma.f64 -6 (*.f64 x z) x)
(*.f64 x (fma.f64 -6 z 1))
(*.f64 (+.f64 1 (*.f64 -6 z)) x)
(fma.f64 -6 (*.f64 x z) x)
(*.f64 x (fma.f64 -6 z 1))
(*.f64 (+.f64 1 (*.f64 -6 z)) x)
(fma.f64 -6 (*.f64 x z) x)
(*.f64 x (fma.f64 -6 z 1))
(*.f64 (+.f64 1 (*.f64 -6 z)) x)
(fma.f64 -6 (*.f64 x z) x)
(*.f64 x (fma.f64 -6 z 1))
(*.f64 (+.f64 1 (*.f64 -6 z)) x)
(fma.f64 -6 (*.f64 x z) x)
(*.f64 x (fma.f64 -6 z 1))
(*.f64 (+.f64 1 (*.f64 -6 z)) x)
(fma.f64 -6 (*.f64 x z) x)
(*.f64 x (fma.f64 -6 z 1))
(*.f64 (+.f64 1 (*.f64 -6 z)) x)
(fma.f64 -6 (*.f64 x z) x)
(*.f64 x (fma.f64 -6 z 1))
(*.f64 (+.f64 1 (*.f64 -6 z)) x)
(fma.f64 -6 (*.f64 x z) x)
(*.f64 x (fma.f64 -6 z 1))
(*.f64 (+.f64 1 (*.f64 -6 z)) x)
(fma.f64 -6 (*.f64 x z) x)
(*.f64 x (fma.f64 -6 z 1))
(*.f64 (+.f64 1 (*.f64 -6 z)) x)
(fma.f64 -6 (*.f64 x z) x)
(*.f64 x (fma.f64 -6 z 1))
(*.f64 (+.f64 1 (*.f64 -6 z)) x)
(fma.f64 -6 (*.f64 x z) x)
(*.f64 x (fma.f64 -6 z 1))
(*.f64 (+.f64 1 (*.f64 -6 z)) x)
(fma.f64 -6 (*.f64 x z) x)
(*.f64 x (fma.f64 -6 z 1))
(*.f64 (+.f64 1 (*.f64 -6 z)) x)
(fma.f64 -6 (*.f64 x z) x)
(*.f64 x (fma.f64 -6 z 1))
1
(+.f64 1 (*.f64 -6 z))
(fma.f64 -6 z 1)
(+.f64 1 (*.f64 -6 z))
(fma.f64 -6 z 1)
(+.f64 1 (*.f64 -6 z))
(fma.f64 -6 z 1)
(*.f64 -6 z)
(+.f64 1 (*.f64 -6 z))
(fma.f64 -6 z 1)
(+.f64 1 (*.f64 -6 z))
(fma.f64 -6 z 1)
(+.f64 1 (*.f64 -6 z))
(fma.f64 -6 z 1)
(*.f64 -6 z)
(+.f64 1 (*.f64 -6 z))
(fma.f64 -6 z 1)
(+.f64 1 (*.f64 -6 z))
(fma.f64 -6 z 1)
(+.f64 1 (*.f64 -6 z))
(fma.f64 -6 z 1)

localize6.0ms (0.1%)

Local error

Found 1 expressions with local error:

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

Compiled 14 to 9 computations (35.7% saved)

series2.0ms (0%)

Counts
1 → 24
Calls

6 calls:

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

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

simplify10.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 z x))
(*.f64 -6 (*.f64 z x))
(*.f64 -6 (*.f64 z x))
(*.f64 -6 (*.f64 z x))
(*.f64 -6 (*.f64 z x))
(*.f64 -6 (*.f64 z x))
(*.f64 -6 (*.f64 z x))
(*.f64 -6 (*.f64 z x))
(*.f64 -6 (*.f64 z x))
(*.f64 -6 (*.f64 z x))
(*.f64 -6 (*.f64 z x))
(*.f64 -6 (*.f64 z x))
(*.f64 -6 (*.f64 z x))
(*.f64 -6 (*.f64 z x))
(*.f64 -6 (*.f64 z x))
(*.f64 -6 (*.f64 z x))
(*.f64 -6 (*.f64 z x))
(*.f64 -6 (*.f64 z x))
(*.f64 -6 (*.f64 z x))
(*.f64 -6 (*.f64 z x))
(*.f64 -6 (*.f64 z x))
(*.f64 -6 (*.f64 z x))
(*.f64 -6 (*.f64 z x))
(*.f64 -6 (*.f64 z x))
Outputs
(*.f64 -6 (*.f64 z x))
(*.f64 -6 (*.f64 z x))
(*.f64 -6 (*.f64 z x))
(*.f64 -6 (*.f64 z x))
(*.f64 -6 (*.f64 z x))
(*.f64 -6 (*.f64 z x))
(*.f64 -6 (*.f64 z x))
(*.f64 -6 (*.f64 z x))
(*.f64 -6 (*.f64 z x))
(*.f64 -6 (*.f64 z x))
(*.f64 -6 (*.f64 z x))
(*.f64 -6 (*.f64 z x))
(*.f64 -6 (*.f64 z x))
(*.f64 -6 (*.f64 z x))
(*.f64 -6 (*.f64 z x))
(*.f64 -6 (*.f64 z x))
(*.f64 -6 (*.f64 z x))
(*.f64 -6 (*.f64 z x))
(*.f64 -6 (*.f64 z x))
(*.f64 -6 (*.f64 z x))
(*.f64 -6 (*.f64 z x))
(*.f64 -6 (*.f64 z x))
(*.f64 -6 (*.f64 z x))
(*.f64 -6 (*.f64 z x))

localize7.0ms (0.1%)

Local error

Found 2 expressions with local error:

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

Compiled 22 to 10 computations (54.5% saved)

series4.0ms (0%)

Counts
2 → 60
Calls

15 calls:

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

rewrite64.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
917×pow1_binary64
852×add-log-exp_binary64
852×log1p-expm1-u_binary64
852×expm1-log1p-u_binary64
834×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify71.0ms (0.8%)

Algorithm
egg-herbie
Rules
777×fma-def_binary64
278×fma-neg_binary64
120×distribute-rgt-in_binary64
94×distribute-lft-in_binary64
78×cancel-sign-sub-inv_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
017630
136630
275540
3133492
4220492
5306492
6481492
7825492
81459492
91903492
102110492
112198492
122198492
Stop Event
saturated
Counts
90 → 41
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 6 (*.f64 z (-.f64 y x)))
(*.f64 6 (*.f64 z (-.f64 y x)))
(*.f64 6 (*.f64 z (-.f64 y x)))
(*.f64 6 (*.f64 z (-.f64 y x)))
(*.f64 6 (*.f64 z (-.f64 y x)))
(*.f64 6 (*.f64 z (-.f64 y x)))
(*.f64 6 (*.f64 z (-.f64 y x)))
(*.f64 6 (*.f64 z (-.f64 y x)))
(*.f64 6 (*.f64 z (-.f64 y x)))
(*.f64 6 (*.f64 z (-.f64 y x)))
(*.f64 6 (*.f64 z (-.f64 y x)))
(*.f64 6 (*.f64 z (-.f64 y 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))
Outputs
(*.f64 -6 (*.f64 z x))
(*.f64 (*.f64 -6 z) x)
(*.f64 z (*.f64 -6 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 (fma.f64 -6 x (*.f64 6 y)))
(*.f64 z (*.f64 6 (-.f64 y x)))
(*.f64 z (*.f64 -6 (-.f64 x 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 (fma.f64 -6 x (*.f64 6 y)))
(*.f64 z (*.f64 6 (-.f64 y x)))
(*.f64 z (*.f64 -6 (-.f64 x 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 (fma.f64 -6 x (*.f64 6 y)))
(*.f64 z (*.f64 6 (-.f64 y x)))
(*.f64 z (*.f64 -6 (-.f64 x y)))
(*.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 (fma.f64 -6 x (*.f64 6 y)))
(*.f64 z (*.f64 6 (-.f64 y x)))
(*.f64 z (*.f64 -6 (-.f64 x 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 (fma.f64 -6 x (*.f64 6 y)))
(*.f64 z (*.f64 6 (-.f64 y x)))
(*.f64 z (*.f64 -6 (-.f64 x 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 (fma.f64 -6 x (*.f64 6 y)))
(*.f64 z (*.f64 6 (-.f64 y x)))
(*.f64 z (*.f64 -6 (-.f64 x y)))
(*.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 (fma.f64 -6 x (*.f64 6 y)))
(*.f64 z (*.f64 6 (-.f64 y x)))
(*.f64 z (*.f64 -6 (-.f64 x 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 (fma.f64 -6 x (*.f64 6 y)))
(*.f64 z (*.f64 6 (-.f64 y x)))
(*.f64 z (*.f64 -6 (-.f64 x 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 (fma.f64 -6 x (*.f64 6 y)))
(*.f64 z (*.f64 6 (-.f64 y x)))
(*.f64 z (*.f64 -6 (-.f64 x y)))
(*.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 (fma.f64 -6 x (*.f64 6 y)))
(*.f64 z (*.f64 6 (-.f64 y x)))
(*.f64 z (*.f64 -6 (-.f64 x 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 (fma.f64 -6 x (*.f64 6 y)))
(*.f64 z (*.f64 6 (-.f64 y x)))
(*.f64 z (*.f64 -6 (-.f64 x 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 (fma.f64 -6 x (*.f64 6 y)))
(*.f64 z (*.f64 6 (-.f64 y x)))
(*.f64 z (*.f64 -6 (-.f64 x y)))
(*.f64 -6 (*.f64 z x))
(*.f64 (*.f64 -6 z) x)
(*.f64 z (*.f64 -6 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 (fma.f64 -6 x (*.f64 6 y)))
(*.f64 z (*.f64 6 (-.f64 y x)))
(*.f64 z (*.f64 -6 (-.f64 x 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 (fma.f64 -6 x (*.f64 6 y)))
(*.f64 z (*.f64 6 (-.f64 y x)))
(*.f64 z (*.f64 -6 (-.f64 x 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 (fma.f64 -6 x (*.f64 6 y)))
(*.f64 z (*.f64 6 (-.f64 y x)))
(*.f64 z (*.f64 -6 (-.f64 x y)))
(*.f64 -6 (*.f64 z x))
(*.f64 (*.f64 -6 z) x)
(*.f64 z (*.f64 -6 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 (fma.f64 -6 x (*.f64 6 y)))
(*.f64 z (*.f64 6 (-.f64 y x)))
(*.f64 z (*.f64 -6 (-.f64 x 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 (fma.f64 -6 x (*.f64 6 y)))
(*.f64 z (*.f64 6 (-.f64 y x)))
(*.f64 z (*.f64 -6 (-.f64 x 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 (fma.f64 -6 x (*.f64 6 y)))
(*.f64 z (*.f64 6 (-.f64 y x)))
(*.f64 z (*.f64 -6 (-.f64 x y)))
(*.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 (fma.f64 -6 x (*.f64 6 y)))
(*.f64 z (*.f64 6 (-.f64 y x)))
(*.f64 z (*.f64 -6 (-.f64 x y)))
(*.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 (fma.f64 -6 x (*.f64 6 y)))
(*.f64 z (*.f64 6 (-.f64 y x)))
(*.f64 z (*.f64 -6 (-.f64 x y)))
(*.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 (fma.f64 -6 x (*.f64 6 y)))
(*.f64 z (*.f64 6 (-.f64 y x)))
(*.f64 z (*.f64 -6 (-.f64 x y)))
(*.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 (fma.f64 -6 x (*.f64 6 y)))
(*.f64 z (*.f64 6 (-.f64 y x)))
(*.f64 z (*.f64 -6 (-.f64 x y)))
(*.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 (fma.f64 -6 x (*.f64 6 y)))
(*.f64 z (*.f64 6 (-.f64 y x)))
(*.f64 z (*.f64 -6 (-.f64 x y)))
(*.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 (fma.f64 -6 x (*.f64 6 y)))
(*.f64 z (*.f64 6 (-.f64 y x)))
(*.f64 z (*.f64 -6 (-.f64 x y)))
(*.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 (fma.f64 -6 x (*.f64 6 y)))
(*.f64 z (*.f64 6 (-.f64 y x)))
(*.f64 z (*.f64 -6 (-.f64 x y)))
(*.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 (fma.f64 -6 x (*.f64 6 y)))
(*.f64 z (*.f64 6 (-.f64 y x)))
(*.f64 z (*.f64 -6 (-.f64 x y)))
(*.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 (fma.f64 -6 x (*.f64 6 y)))
(*.f64 z (*.f64 6 (-.f64 y x)))
(*.f64 z (*.f64 -6 (-.f64 x y)))
(*.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 (fma.f64 -6 x (*.f64 6 y)))
(*.f64 z (*.f64 6 (-.f64 y x)))
(*.f64 z (*.f64 -6 (-.f64 x y)))
(*.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 (fma.f64 -6 x (*.f64 6 y)))
(*.f64 z (*.f64 6 (-.f64 y x)))
(*.f64 z (*.f64 -6 (-.f64 x y)))
(*.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 (fma.f64 -6 x (*.f64 6 y)))
(*.f64 z (*.f64 6 (-.f64 y x)))
(*.f64 z (*.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 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))

localize15.0ms (0.2%)

Local error

Found 3 expressions with local error:

NewErrorProgram
2.6b
(-.f64 (*.f64 y y) (*.f64 x x))
12.2b
(*.f64 (*.f64 6 z) (-.f64 (*.f64 y y) (*.f64 x x)))
16.1b
(/.f64 (*.f64 (*.f64 6 z) (-.f64 (*.f64 y y) (*.f64 x x))) (+.f64 y x))
Compiler

Compiled 52 to 17 computations (67.3% saved)

series15.0ms (0.2%)

Counts
3 → 96
Calls

24 calls:

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

rewrite109.0ms (1.2%)

Algorithm
batch-egg-rewrite
Rules
743×log-prod_binary64
585×fma-def_binary64
253×fma-neg_binary64
244×expm1-udef_binary64
244×log1p-udef_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify77.0ms (0.9%)

Algorithm
egg-herbie
Rules
568×associate-/r/_binary64
558×associate-*l/_binary64
476×associate-/l/_binary64
443×associate-/r*_binary64
348×fma-def_binary64
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
0291452
1711452
21721452
34431182
414431092
537141092
Stop Event
node limit
Counts
387 → 310
Calls
Call 1
Inputs
(*.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 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 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 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 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 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 -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 6 (*.f64 z (-.f64 (pow.f64 y 2) (pow.f64 x 2))))
(*.f64 6 (*.f64 z (-.f64 (pow.f64 y 2) (pow.f64 x 2))))
(*.f64 6 (*.f64 z (-.f64 (pow.f64 y 2) (pow.f64 x 2))))
(*.f64 6 (*.f64 z (-.f64 (pow.f64 y 2) (pow.f64 x 2))))
(*.f64 6 (*.f64 z (-.f64 (pow.f64 y 2) (pow.f64 x 2))))
(*.f64 6 (*.f64 z (-.f64 (pow.f64 y 2) (pow.f64 x 2))))
(*.f64 6 (*.f64 z (-.f64 (pow.f64 y 2) (pow.f64 x 2))))
(*.f64 6 (*.f64 z (-.f64 (pow.f64 y 2) (pow.f64 x 2))))
(*.f64 6 (*.f64 z (-.f64 (pow.f64 y 2) (pow.f64 x 2))))
(*.f64 6 (*.f64 z (-.f64 (pow.f64 y 2) (pow.f64 x 2))))
(*.f64 6 (*.f64 z (-.f64 (pow.f64 y 2) (pow.f64 x 2))))
(*.f64 6 (*.f64 z (-.f64 (pow.f64 y 2) (pow.f64 x 2))))
(*.f64 -6 (*.f64 z (pow.f64 x 2)))
(+.f64 (*.f64 6 (*.f64 (pow.f64 y 2) z)) (*.f64 -6 (*.f64 z (pow.f64 x 2))))
(+.f64 (*.f64 6 (*.f64 (pow.f64 y 2) z)) (*.f64 -6 (*.f64 z (pow.f64 x 2))))
(+.f64 (*.f64 6 (*.f64 (pow.f64 y 2) z)) (*.f64 -6 (*.f64 z (pow.f64 x 2))))
(*.f64 6 (*.f64 (pow.f64 y 2) z))
(+.f64 (*.f64 6 (*.f64 (pow.f64 y 2) z)) (*.f64 -6 (*.f64 z (pow.f64 x 2))))
(+.f64 (*.f64 6 (*.f64 (pow.f64 y 2) z)) (*.f64 -6 (*.f64 z (pow.f64 x 2))))
(+.f64 (*.f64 6 (*.f64 (pow.f64 y 2) z)) (*.f64 -6 (*.f64 z (pow.f64 x 2))))
(*.f64 6 (*.f64 (pow.f64 y 2) z))
(+.f64 (*.f64 6 (*.f64 (pow.f64 y 2) z)) (*.f64 -6 (*.f64 z (pow.f64 x 2))))
(+.f64 (*.f64 6 (*.f64 (pow.f64 y 2) z)) (*.f64 -6 (*.f64 z (pow.f64 x 2))))
(+.f64 (*.f64 6 (*.f64 (pow.f64 y 2) z)) (*.f64 -6 (*.f64 z (pow.f64 x 2))))
(*.f64 6 (*.f64 (pow.f64 y 2) z))
(+.f64 (*.f64 6 (*.f64 (pow.f64 y 2) z)) (*.f64 -6 (*.f64 z (pow.f64 x 2))))
(+.f64 (*.f64 6 (*.f64 (pow.f64 y 2) z)) (*.f64 -6 (*.f64 z (pow.f64 x 2))))
(+.f64 (*.f64 6 (*.f64 (pow.f64 y 2) z)) (*.f64 -6 (*.f64 z (pow.f64 x 2))))
(*.f64 -6 (*.f64 z (pow.f64 x 2)))
(+.f64 (*.f64 6 (*.f64 (pow.f64 y 2) z)) (*.f64 -6 (*.f64 z (pow.f64 x 2))))
(+.f64 (*.f64 6 (*.f64 (pow.f64 y 2) z)) (*.f64 -6 (*.f64 z (pow.f64 x 2))))
(+.f64 (*.f64 6 (*.f64 (pow.f64 y 2) z)) (*.f64 -6 (*.f64 z (pow.f64 x 2))))
(*.f64 -6 (*.f64 z (pow.f64 x 2)))
(+.f64 (*.f64 6 (*.f64 (pow.f64 y 2) z)) (*.f64 -6 (*.f64 z (pow.f64 x 2))))
(+.f64 (*.f64 6 (*.f64 (pow.f64 y 2) z)) (*.f64 -6 (*.f64 z (pow.f64 x 2))))
(+.f64 (*.f64 6 (*.f64 (pow.f64 y 2) z)) (*.f64 -6 (*.f64 z (pow.f64 x 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))
(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))
Outputs
(*.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 y x) z)))
(*.f64 6 (/.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) z) (+.f64 y x)))
(*.f64 (/.f64 (*.f64 6 z) 1) (-.f64 y x))
(*.f64 6 (*.f64 z (-.f64 y x)))
(*.f64 (*.f64 z (-.f64 x y)) -6)
(*.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 y x) z)))
(*.f64 6 (/.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) z) (+.f64 y x)))
(*.f64 (/.f64 (*.f64 6 z) 1) (-.f64 y x))
(*.f64 6 (*.f64 z (-.f64 y x)))
(*.f64 (*.f64 z (-.f64 x y)) -6)
(*.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 y x) z)))
(*.f64 6 (/.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) z) (+.f64 y x)))
(*.f64 (/.f64 (*.f64 6 z) 1) (-.f64 y x))
(*.f64 6 (*.f64 z (-.f64 y x)))
(*.f64 (*.f64 z (-.f64 x y)) -6)
(*.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 y x) z)))
(*.f64 6 (/.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) z) (+.f64 y x)))
(*.f64 (/.f64 (*.f64 6 z) 1) (-.f64 y x))
(*.f64 6 (*.f64 z (-.f64 y x)))
(*.f64 (*.f64 z (-.f64 x y)) -6)
(*.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 y x) z)))
(*.f64 6 (/.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) z) (+.f64 y x)))
(*.f64 (/.f64 (*.f64 6 z) 1) (-.f64 y x))
(*.f64 6 (*.f64 z (-.f64 y x)))
(*.f64 (*.f64 z (-.f64 x y)) -6)
(*.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 y x) z)))
(*.f64 6 (/.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) z) (+.f64 y x)))
(*.f64 (/.f64 (*.f64 6 z) 1) (-.f64 y x))
(*.f64 6 (*.f64 z (-.f64 y x)))
(*.f64 (*.f64 z (-.f64 x y)) -6)
(*.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 y x) z)))
(*.f64 6 (/.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) z) (+.f64 y x)))
(*.f64 (/.f64 (*.f64 6 z) 1) (-.f64 y x))
(*.f64 6 (*.f64 z (-.f64 y x)))
(*.f64 (*.f64 z (-.f64 x y)) -6)
(*.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 y x) z)))
(*.f64 6 (/.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) z) (+.f64 y x)))
(*.f64 (/.f64 (*.f64 6 z) 1) (-.f64 y x))
(*.f64 6 (*.f64 z (-.f64 y x)))
(*.f64 (*.f64 z (-.f64 x y)) -6)
(*.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 y x) z)))
(*.f64 6 (/.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) z) (+.f64 y x)))
(*.f64 (/.f64 (*.f64 6 z) 1) (-.f64 y x))
(*.f64 6 (*.f64 z (-.f64 y x)))
(*.f64 (*.f64 z (-.f64 x y)) -6)
(*.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 y x) z)))
(*.f64 6 (/.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) z) (+.f64 y x)))
(*.f64 (/.f64 (*.f64 6 z) 1) (-.f64 y x))
(*.f64 6 (*.f64 z (-.f64 y x)))
(*.f64 (*.f64 z (-.f64 x y)) -6)
(*.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 y x) z)))
(*.f64 6 (/.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) z) (+.f64 y x)))
(*.f64 (/.f64 (*.f64 6 z) 1) (-.f64 y x))
(*.f64 6 (*.f64 z (-.f64 y x)))
(*.f64 (*.f64 z (-.f64 x y)) -6)
(*.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 y x) z)))
(*.f64 6 (/.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) z) (+.f64 y x)))
(*.f64 (/.f64 (*.f64 6 z) 1) (-.f64 y x))
(*.f64 6 (*.f64 z (-.f64 y x)))
(*.f64 (*.f64 z (-.f64 x y)) -6)
(*.f64 -6 (*.f64 z x))
(*.f64 -6 (*.f64 x z))
(*.f64 x (*.f64 z -6))
(+.f64 (*.f64 -6 (*.f64 z x)) (*.f64 6 (*.f64 y z)))
(*.f64 6 (/.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (/.f64 (+.f64 y x) z)))
(*.f64 6 (/.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) z) (+.f64 y x)))
(*.f64 (/.f64 (*.f64 6 z) 1) (-.f64 y x))
(*.f64 6 (*.f64 z (-.f64 y x)))
(*.f64 (*.f64 z (-.f64 x y)) -6)
(+.f64 (*.f64 -6 (*.f64 z x)) (*.f64 6 (*.f64 y z)))
(*.f64 6 (/.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (/.f64 (+.f64 y x) z)))
(*.f64 6 (/.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) z) (+.f64 y x)))
(*.f64 (/.f64 (*.f64 6 z) 1) (-.f64 y x))
(*.f64 6 (*.f64 z (-.f64 y x)))
(*.f64 (*.f64 z (-.f64 x y)) -6)
(+.f64 (*.f64 -6 (*.f64 z x)) (*.f64 6 (*.f64 y z)))
(*.f64 6 (/.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (/.f64 (+.f64 y x) z)))
(*.f64 6 (/.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) z) (+.f64 y x)))
(*.f64 (/.f64 (*.f64 6 z) 1) (-.f64 y x))
(*.f64 6 (*.f64 z (-.f64 y x)))
(*.f64 (*.f64 z (-.f64 x y)) -6)
(*.f64 6 (*.f64 y z))
(*.f64 y (*.f64 6 z))
(+.f64 (*.f64 -6 (*.f64 z x)) (*.f64 6 (*.f64 y z)))
(*.f64 6 (/.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (/.f64 (+.f64 y x) z)))
(*.f64 6 (/.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) z) (+.f64 y x)))
(*.f64 (/.f64 (*.f64 6 z) 1) (-.f64 y x))
(*.f64 6 (*.f64 z (-.f64 y x)))
(*.f64 (*.f64 z (-.f64 x y)) -6)
(+.f64 (*.f64 -6 (*.f64 z x)) (*.f64 6 (*.f64 y z)))
(*.f64 6 (/.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (/.f64 (+.f64 y x) z)))
(*.f64 6 (/.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) z) (+.f64 y x)))
(*.f64 (/.f64 (*.f64 6 z) 1) (-.f64 y x))
(*.f64 6 (*.f64 z (-.f64 y x)))
(*.f64 (*.f64 z (-.f64 x y)) -6)
(+.f64 (*.f64 -6 (*.f64 z x)) (*.f64 6 (*.f64 y z)))
(*.f64 6 (/.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (/.f64 (+.f64 y x) z)))
(*.f64 6 (/.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) z) (+.f64 y x)))
(*.f64 (/.f64 (*.f64 6 z) 1) (-.f64 y x))
(*.f64 6 (*.f64 z (-.f64 y x)))
(*.f64 (*.f64 z (-.f64 x y)) -6)
(*.f64 6 (*.f64 y z))
(*.f64 y (*.f64 6 z))
(+.f64 (*.f64 -6 (*.f64 z x)) (*.f64 6 (*.f64 y z)))
(*.f64 6 (/.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (/.f64 (+.f64 y x) z)))
(*.f64 6 (/.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) z) (+.f64 y x)))
(*.f64 (/.f64 (*.f64 6 z) 1) (-.f64 y x))
(*.f64 6 (*.f64 z (-.f64 y x)))
(*.f64 (*.f64 z (-.f64 x y)) -6)
(+.f64 (*.f64 -6 (*.f64 z x)) (*.f64 6 (*.f64 y z)))
(*.f64 6 (/.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (/.f64 (+.f64 y x) z)))
(*.f64 6 (/.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) z) (+.f64 y x)))
(*.f64 (/.f64 (*.f64 6 z) 1) (-.f64 y x))
(*.f64 6 (*.f64 z (-.f64 y x)))
(*.f64 (*.f64 z (-.f64 x y)) -6)
(+.f64 (*.f64 -6 (*.f64 z x)) (*.f64 6 (*.f64 y z)))
(*.f64 6 (/.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (/.f64 (+.f64 y x) z)))
(*.f64 6 (/.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) z) (+.f64 y x)))
(*.f64 (/.f64 (*.f64 6 z) 1) (-.f64 y x))
(*.f64 6 (*.f64 z (-.f64 y x)))
(*.f64 (*.f64 z (-.f64 x y)) -6)
(*.f64 6 (*.f64 y z))
(*.f64 y (*.f64 6 z))
(+.f64 (*.f64 -6 (*.f64 z x)) (*.f64 6 (*.f64 y z)))
(*.f64 6 (/.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (/.f64 (+.f64 y x) z)))
(*.f64 6 (/.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) z) (+.f64 y x)))
(*.f64 (/.f64 (*.f64 6 z) 1) (-.f64 y x))
(*.f64 6 (*.f64 z (-.f64 y x)))
(*.f64 (*.f64 z (-.f64 x y)) -6)
(+.f64 (*.f64 -6 (*.f64 z x)) (*.f64 6 (*.f64 y z)))
(*.f64 6 (/.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (/.f64 (+.f64 y x) z)))
(*.f64 6 (/.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) z) (+.f64 y x)))
(*.f64 (/.f64 (*.f64 6 z) 1) (-.f64 y x))
(*.f64 6 (*.f64 z (-.f64 y x)))
(*.f64 (*.f64 z (-.f64 x y)) -6)
(+.f64 (*.f64 -6 (*.f64 z x)) (*.f64 6 (*.f64 y z)))
(*.f64 6 (/.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (/.f64 (+.f64 y x) z)))
(*.f64 6 (/.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) z) (+.f64 y x)))
(*.f64 (/.f64 (*.f64 6 z) 1) (-.f64 y x))
(*.f64 6 (*.f64 z (-.f64 y x)))
(*.f64 (*.f64 z (-.f64 x y)) -6)
(*.f64 -6 (*.f64 z x))
(*.f64 -6 (*.f64 x z))
(*.f64 x (*.f64 z -6))
(+.f64 (*.f64 -6 (*.f64 z x)) (*.f64 6 (*.f64 y z)))
(*.f64 6 (/.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (/.f64 (+.f64 y x) z)))
(*.f64 6 (/.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) z) (+.f64 y x)))
(*.f64 (/.f64 (*.f64 6 z) 1) (-.f64 y x))
(*.f64 6 (*.f64 z (-.f64 y x)))
(*.f64 (*.f64 z (-.f64 x y)) -6)
(+.f64 (*.f64 -6 (*.f64 z x)) (*.f64 6 (*.f64 y z)))
(*.f64 6 (/.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (/.f64 (+.f64 y x) z)))
(*.f64 6 (/.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) z) (+.f64 y x)))
(*.f64 (/.f64 (*.f64 6 z) 1) (-.f64 y x))
(*.f64 6 (*.f64 z (-.f64 y x)))
(*.f64 (*.f64 z (-.f64 x y)) -6)
(+.f64 (*.f64 -6 (*.f64 z x)) (*.f64 6 (*.f64 y z)))
(*.f64 6 (/.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (/.f64 (+.f64 y x) z)))
(*.f64 6 (/.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) z) (+.f64 y x)))
(*.f64 (/.f64 (*.f64 6 z) 1) (-.f64 y x))
(*.f64 6 (*.f64 z (-.f64 y x)))
(*.f64 (*.f64 z (-.f64 x y)) -6)
(*.f64 -6 (*.f64 z x))
(*.f64 -6 (*.f64 x z))
(*.f64 x (*.f64 z -6))
(+.f64 (*.f64 -6 (*.f64 z x)) (*.f64 6 (*.f64 y z)))
(*.f64 6 (/.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (/.f64 (+.f64 y x) z)))
(*.f64 6 (/.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) z) (+.f64 y x)))
(*.f64 (/.f64 (*.f64 6 z) 1) (-.f64 y x))
(*.f64 6 (*.f64 z (-.f64 y x)))
(*.f64 (*.f64 z (-.f64 x y)) -6)
(+.f64 (*.f64 -6 (*.f64 z x)) (*.f64 6 (*.f64 y z)))
(*.f64 6 (/.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (/.f64 (+.f64 y x) z)))
(*.f64 6 (/.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) z) (+.f64 y x)))
(*.f64 (/.f64 (*.f64 6 z) 1) (-.f64 y x))
(*.f64 6 (*.f64 z (-.f64 y x)))
(*.f64 (*.f64 z (-.f64 x y)) -6)
(+.f64 (*.f64 -6 (*.f64 z x)) (*.f64 6 (*.f64 y z)))
(*.f64 6 (/.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (/.f64 (+.f64 y x) z)))
(*.f64 6 (/.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) z) (+.f64 y x)))
(*.f64 (/.f64 (*.f64 6 z) 1) (-.f64 y x))
(*.f64 6 (*.f64 z (-.f64 y x)))
(*.f64 (*.f64 z (-.f64 x y)) -6)
(*.f64 6 (*.f64 z (-.f64 (pow.f64 y 2) (pow.f64 x 2))))
(*.f64 (*.f64 6 z) (-.f64 (*.f64 y y) (*.f64 x x)))
(*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (*.f64 6 z))
(*.f64 6 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) z))
(*.f64 6 (*.f64 (fma.f64 y y (neg.f64 (*.f64 x x))) z))
(*.f64 6 (*.f64 (*.f64 (+.f64 y x) (-.f64 y x)) z))
(*.f64 6 (*.f64 z (-.f64 (pow.f64 y 2) (pow.f64 x 2))))
(*.f64 (*.f64 6 z) (-.f64 (*.f64 y y) (*.f64 x x)))
(*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (*.f64 6 z))
(*.f64 6 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) z))
(*.f64 6 (*.f64 (fma.f64 y y (neg.f64 (*.f64 x x))) z))
(*.f64 6 (*.f64 (*.f64 (+.f64 y x) (-.f64 y x)) z))
(*.f64 6 (*.f64 z (-.f64 (pow.f64 y 2) (pow.f64 x 2))))
(*.f64 (*.f64 6 z) (-.f64 (*.f64 y y) (*.f64 x x)))
(*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (*.f64 6 z))
(*.f64 6 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) z))
(*.f64 6 (*.f64 (fma.f64 y y (neg.f64 (*.f64 x x))) z))
(*.f64 6 (*.f64 (*.f64 (+.f64 y x) (-.f64 y x)) z))
(*.f64 6 (*.f64 z (-.f64 (pow.f64 y 2) (pow.f64 x 2))))
(*.f64 (*.f64 6 z) (-.f64 (*.f64 y y) (*.f64 x x)))
(*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (*.f64 6 z))
(*.f64 6 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) z))
(*.f64 6 (*.f64 (fma.f64 y y (neg.f64 (*.f64 x x))) z))
(*.f64 6 (*.f64 (*.f64 (+.f64 y x) (-.f64 y x)) z))
(*.f64 6 (*.f64 z (-.f64 (pow.f64 y 2) (pow.f64 x 2))))
(*.f64 (*.f64 6 z) (-.f64 (*.f64 y y) (*.f64 x x)))
(*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (*.f64 6 z))
(*.f64 6 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) z))
(*.f64 6 (*.f64 (fma.f64 y y (neg.f64 (*.f64 x x))) z))
(*.f64 6 (*.f64 (*.f64 (+.f64 y x) (-.f64 y x)) z))
(*.f64 6 (*.f64 z (-.f64 (pow.f64 y 2) (pow.f64 x 2))))
(*.f64 (*.f64 6 z) (-.f64 (*.f64 y y) (*.f64 x x)))
(*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (*.f64 6 z))
(*.f64 6 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) z))
(*.f64 6 (*.f64 (fma.f64 y y (neg.f64 (*.f64 x x))) z))
(*.f64 6 (*.f64 (*.f64 (+.f64 y x) (-.f64 y x)) z))
(*.f64 6 (*.f64 z (-.f64 (pow.f64 y 2) (pow.f64 x 2))))
(*.f64 (*.f64 6 z) (-.f64 (*.f64 y y) (*.f64 x x)))
(*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (*.f64 6 z))
(*.f64 6 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) z))
(*.f64 6 (*.f64 (fma.f64 y y (neg.f64 (*.f64 x x))) z))
(*.f64 6 (*.f64 (*.f64 (+.f64 y x) (-.f64 y x)) z))
(*.f64 6 (*.f64 z (-.f64 (pow.f64 y 2) (pow.f64 x 2))))
(*.f64 (*.f64 6 z) (-.f64 (*.f64 y y) (*.f64 x x)))
(*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (*.f64 6 z))
(*.f64 6 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) z))
(*.f64 6 (*.f64 (fma.f64 y y (neg.f64 (*.f64 x x))) z))
(*.f64 6 (*.f64 (*.f64 (+.f64 y x) (-.f64 y x)) z))
(*.f64 6 (*.f64 z (-.f64 (pow.f64 y 2) (pow.f64 x 2))))
(*.f64 (*.f64 6 z) (-.f64 (*.f64 y y) (*.f64 x x)))
(*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (*.f64 6 z))
(*.f64 6 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) z))
(*.f64 6 (*.f64 (fma.f64 y y (neg.f64 (*.f64 x x))) z))
(*.f64 6 (*.f64 (*.f64 (+.f64 y x) (-.f64 y x)) z))
(*.f64 6 (*.f64 z (-.f64 (pow.f64 y 2) (pow.f64 x 2))))
(*.f64 (*.f64 6 z) (-.f64 (*.f64 y y) (*.f64 x x)))
(*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (*.f64 6 z))
(*.f64 6 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) z))
(*.f64 6 (*.f64 (fma.f64 y y (neg.f64 (*.f64 x x))) z))
(*.f64 6 (*.f64 (*.f64 (+.f64 y x) (-.f64 y x)) z))
(*.f64 6 (*.f64 z (-.f64 (pow.f64 y 2) (pow.f64 x 2))))
(*.f64 (*.f64 6 z) (-.f64 (*.f64 y y) (*.f64 x x)))
(*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (*.f64 6 z))
(*.f64 6 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) z))
(*.f64 6 (*.f64 (fma.f64 y y (neg.f64 (*.f64 x x))) z))
(*.f64 6 (*.f64 (*.f64 (+.f64 y x) (-.f64 y x)) z))
(*.f64 6 (*.f64 z (-.f64 (pow.f64 y 2) (pow.f64 x 2))))
(*.f64 (*.f64 6 z) (-.f64 (*.f64 y y) (*.f64 x x)))
(*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (*.f64 6 z))
(*.f64 6 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) z))
(*.f64 6 (*.f64 (fma.f64 y y (neg.f64 (*.f64 x x))) z))
(*.f64 6 (*.f64 (*.f64 (+.f64 y x) (-.f64 y x)) z))
(*.f64 -6 (*.f64 z (pow.f64 x 2)))
(*.f64 (*.f64 -6 z) (*.f64 x x))
(*.f64 (*.f64 x x) (*.f64 z -6))
(*.f64 x (*.f64 x (*.f64 z -6)))
(+.f64 (*.f64 6 (*.f64 (pow.f64 y 2) z)) (*.f64 -6 (*.f64 z (pow.f64 x 2))))
(*.f64 (*.f64 6 z) (-.f64 (*.f64 y y) (*.f64 x x)))
(*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (*.f64 6 z))
(*.f64 6 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) z))
(*.f64 6 (*.f64 (fma.f64 y y (neg.f64 (*.f64 x x))) z))
(*.f64 6 (*.f64 (*.f64 (+.f64 y x) (-.f64 y x)) z))
(+.f64 (*.f64 6 (*.f64 (pow.f64 y 2) z)) (*.f64 -6 (*.f64 z (pow.f64 x 2))))
(*.f64 (*.f64 6 z) (-.f64 (*.f64 y y) (*.f64 x x)))
(*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (*.f64 6 z))
(*.f64 6 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) z))
(*.f64 6 (*.f64 (fma.f64 y y (neg.f64 (*.f64 x x))) z))
(*.f64 6 (*.f64 (*.f64 (+.f64 y x) (-.f64 y x)) z))
(+.f64 (*.f64 6 (*.f64 (pow.f64 y 2) z)) (*.f64 -6 (*.f64 z (pow.f64 x 2))))
(*.f64 (*.f64 6 z) (-.f64 (*.f64 y y) (*.f64 x x)))
(*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (*.f64 6 z))
(*.f64 6 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) z))
(*.f64 6 (*.f64 (fma.f64 y y (neg.f64 (*.f64 x x))) z))
(*.f64 6 (*.f64 (*.f64 (+.f64 y x) (-.f64 y x)) z))
(*.f64 6 (*.f64 (pow.f64 y 2) z))
(*.f64 6 (*.f64 (*.f64 y y) z))
(*.f64 6 (*.f64 y (*.f64 y z)))
(*.f64 y (*.f64 y (*.f64 6 z)))
(*.f64 (*.f64 y z) (*.f64 6 y))
(+.f64 (*.f64 6 (*.f64 (pow.f64 y 2) z)) (*.f64 -6 (*.f64 z (pow.f64 x 2))))
(*.f64 (*.f64 6 z) (-.f64 (*.f64 y y) (*.f64 x x)))
(*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (*.f64 6 z))
(*.f64 6 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) z))
(*.f64 6 (*.f64 (fma.f64 y y (neg.f64 (*.f64 x x))) z))
(*.f64 6 (*.f64 (*.f64 (+.f64 y x) (-.f64 y x)) z))
(+.f64 (*.f64 6 (*.f64 (pow.f64 y 2) z)) (*.f64 -6 (*.f64 z (pow.f64 x 2))))
(*.f64 (*.f64 6 z) (-.f64 (*.f64 y y) (*.f64 x x)))
(*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (*.f64 6 z))
(*.f64 6 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) z))
(*.f64 6 (*.f64 (fma.f64 y y (neg.f64 (*.f64 x x))) z))
(*.f64 6 (*.f64 (*.f64 (+.f64 y x) (-.f64 y x)) z))
(+.f64 (*.f64 6 (*.f64 (pow.f64 y 2) z)) (*.f64 -6 (*.f64 z (pow.f64 x 2))))
(*.f64 (*.f64 6 z) (-.f64 (*.f64 y y) (*.f64 x x)))
(*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (*.f64 6 z))
(*.f64 6 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) z))
(*.f64 6 (*.f64 (fma.f64 y y (neg.f64 (*.f64 x x))) z))
(*.f64 6 (*.f64 (*.f64 (+.f64 y x) (-.f64 y x)) z))
(*.f64 6 (*.f64 (pow.f64 y 2) z))
(*.f64 6 (*.f64 (*.f64 y y) z))
(*.f64 6 (*.f64 y (*.f64 y z)))
(*.f64 y (*.f64 y (*.f64 6 z)))
(*.f64 (*.f64 y z) (*.f64 6 y))
(+.f64 (*.f64 6 (*.f64 (pow.f64 y 2) z)) (*.f64 -6 (*.f64 z (pow.f64 x 2))))
(*.f64 (*.f64 6 z) (-.f64 (*.f64 y y) (*.f64 x x)))
(*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (*.f64 6 z))
(*.f64 6 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) z))
(*.f64 6 (*.f64 (fma.f64 y y (neg.f64 (*.f64 x x))) z))
(*.f64 6 (*.f64 (*.f64 (+.f64 y x) (-.f64 y x)) z))
(+.f64 (*.f64 6 (*.f64 (pow.f64 y 2) z)) (*.f64 -6 (*.f64 z (pow.f64 x 2))))
(*.f64 (*.f64 6 z) (-.f64 (*.f64 y y) (*.f64 x x)))
(*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (*.f64 6 z))
(*.f64 6 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) z))
(*.f64 6 (*.f64 (fma.f64 y y (neg.f64 (*.f64 x x))) z))
(*.f64 6 (*.f64 (*.f64 (+.f64 y x) (-.f64 y x)) z))
(+.f64 (*.f64 6 (*.f64 (pow.f64 y 2) z)) (*.f64 -6 (*.f64 z (pow.f64 x 2))))
(*.f64 (*.f64 6 z) (-.f64 (*.f64 y y) (*.f64 x x)))
(*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (*.f64 6 z))
(*.f64 6 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) z))
(*.f64 6 (*.f64 (fma.f64 y y (neg.f64 (*.f64 x x))) z))
(*.f64 6 (*.f64 (*.f64 (+.f64 y x) (-.f64 y x)) z))
(*.f64 6 (*.f64 (pow.f64 y 2) z))
(*.f64 6 (*.f64 (*.f64 y y) z))
(*.f64 6 (*.f64 y (*.f64 y z)))
(*.f64 y (*.f64 y (*.f64 6 z)))
(*.f64 (*.f64 y z) (*.f64 6 y))
(+.f64 (*.f64 6 (*.f64 (pow.f64 y 2) z)) (*.f64 -6 (*.f64 z (pow.f64 x 2))))
(*.f64 (*.f64 6 z) (-.f64 (*.f64 y y) (*.f64 x x)))
(*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (*.f64 6 z))
(*.f64 6 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) z))
(*.f64 6 (*.f64 (fma.f64 y y (neg.f64 (*.f64 x x))) z))
(*.f64 6 (*.f64 (*.f64 (+.f64 y x) (-.f64 y x)) z))
(+.f64 (*.f64 6 (*.f64 (pow.f64 y 2) z)) (*.f64 -6 (*.f64 z (pow.f64 x 2))))
(*.f64 (*.f64 6 z) (-.f64 (*.f64 y y) (*.f64 x x)))
(*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (*.f64 6 z))
(*.f64 6 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) z))
(*.f64 6 (*.f64 (fma.f64 y y (neg.f64 (*.f64 x x))) z))
(*.f64 6 (*.f64 (*.f64 (+.f64 y x) (-.f64 y x)) z))
(+.f64 (*.f64 6 (*.f64 (pow.f64 y 2) z)) (*.f64 -6 (*.f64 z (pow.f64 x 2))))
(*.f64 (*.f64 6 z) (-.f64 (*.f64 y y) (*.f64 x x)))
(*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (*.f64 6 z))
(*.f64 6 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) z))
(*.f64 6 (*.f64 (fma.f64 y y (neg.f64 (*.f64 x x))) z))
(*.f64 6 (*.f64 (*.f64 (+.f64 y x) (-.f64 y x)) z))
(*.f64 -6 (*.f64 z (pow.f64 x 2)))
(*.f64 (*.f64 -6 z) (*.f64 x x))
(*.f64 (*.f64 x x) (*.f64 z -6))
(*.f64 x (*.f64 x (*.f64 z -6)))
(+.f64 (*.f64 6 (*.f64 (pow.f64 y 2) z)) (*.f64 -6 (*.f64 z (pow.f64 x 2))))
(*.f64 (*.f64 6 z) (-.f64 (*.f64 y y) (*.f64 x x)))
(*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (*.f64 6 z))
(*.f64 6 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) z))
(*.f64 6 (*.f64 (fma.f64 y y (neg.f64 (*.f64 x x))) z))
(*.f64 6 (*.f64 (*.f64 (+.f64 y x) (-.f64 y x)) z))
(+.f64 (*.f64 6 (*.f64 (pow.f64 y 2) z)) (*.f64 -6 (*.f64 z (pow.f64 x 2))))
(*.f64 (*.f64 6 z) (-.f64 (*.f64 y y) (*.f64 x x)))
(*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (*.f64 6 z))
(*.f64 6 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) z))
(*.f64 6 (*.f64 (fma.f64 y y (neg.f64 (*.f64 x x))) z))
(*.f64 6 (*.f64 (*.f64 (+.f64 y x) (-.f64 y x)) z))
(+.f64 (*.f64 6 (*.f64 (pow.f64 y 2) z)) (*.f64 -6 (*.f64 z (pow.f64 x 2))))
(*.f64 (*.f64 6 z) (-.f64 (*.f64 y y) (*.f64 x x)))
(*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (*.f64 6 z))
(*.f64 6 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) z))
(*.f64 6 (*.f64 (fma.f64 y y (neg.f64 (*.f64 x x))) z))
(*.f64 6 (*.f64 (*.f64 (+.f64 y x) (-.f64 y x)) z))
(*.f64 -6 (*.f64 z (pow.f64 x 2)))
(*.f64 (*.f64 -6 z) (*.f64 x x))
(*.f64 (*.f64 x x) (*.f64 z -6))
(*.f64 x (*.f64 x (*.f64 z -6)))
(+.f64 (*.f64 6 (*.f64 (pow.f64 y 2) z)) (*.f64 -6 (*.f64 z (pow.f64 x 2))))
(*.f64 (*.f64 6 z) (-.f64 (*.f64 y y) (*.f64 x x)))
(*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (*.f64 6 z))
(*.f64 6 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) z))
(*.f64 6 (*.f64 (fma.f64 y y (neg.f64 (*.f64 x x))) z))
(*.f64 6 (*.f64 (*.f64 (+.f64 y x) (-.f64 y x)) z))
(+.f64 (*.f64 6 (*.f64 (pow.f64 y 2) z)) (*.f64 -6 (*.f64 z (pow.f64 x 2))))
(*.f64 (*.f64 6 z) (-.f64 (*.f64 y y) (*.f64 x x)))
(*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (*.f64 6 z))
(*.f64 6 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) z))
(*.f64 6 (*.f64 (fma.f64 y y (neg.f64 (*.f64 x x))) z))
(*.f64 6 (*.f64 (*.f64 (+.f64 y x) (-.f64 y x)) z))
(+.f64 (*.f64 6 (*.f64 (pow.f64 y 2) z)) (*.f64 -6 (*.f64 z (pow.f64 x 2))))
(*.f64 (*.f64 6 z) (-.f64 (*.f64 y y) (*.f64 x x)))
(*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (*.f64 6 z))
(*.f64 6 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) z))
(*.f64 6 (*.f64 (fma.f64 y y (neg.f64 (*.f64 x x))) z))
(*.f64 6 (*.f64 (*.f64 (+.f64 y x) (-.f64 y x)) z))
(*.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))
(fma.f64 y y (neg.f64 (*.f64 x x)))
(*.f64 (+.f64 y x) (-.f64 y x))
(+.f64 (*.f64 -1 (pow.f64 x 2)) (pow.f64 y 2))
(-.f64 (*.f64 y y) (*.f64 x x))
(fma.f64 y y (neg.f64 (*.f64 x x)))
(*.f64 (+.f64 y x) (-.f64 y x))
(+.f64 (*.f64 -1 (pow.f64 x 2)) (pow.f64 y 2))
(-.f64 (*.f64 y y) (*.f64 x x))
(fma.f64 y y (neg.f64 (*.f64 x x)))
(*.f64 (+.f64 y x) (-.f64 y 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))
(fma.f64 y y (neg.f64 (*.f64 x x)))
(*.f64 (+.f64 y x) (-.f64 y x))
(+.f64 (*.f64 -1 (pow.f64 x 2)) (pow.f64 y 2))
(-.f64 (*.f64 y y) (*.f64 x x))
(fma.f64 y y (neg.f64 (*.f64 x x)))
(*.f64 (+.f64 y x) (-.f64 y x))
(+.f64 (*.f64 -1 (pow.f64 x 2)) (pow.f64 y 2))
(-.f64 (*.f64 y y) (*.f64 x x))
(fma.f64 y y (neg.f64 (*.f64 x x)))
(*.f64 (+.f64 y x) (-.f64 y 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))
(fma.f64 y y (neg.f64 (*.f64 x x)))
(*.f64 (+.f64 y x) (-.f64 y x))
(+.f64 (*.f64 -1 (pow.f64 x 2)) (pow.f64 y 2))
(-.f64 (*.f64 y y) (*.f64 x x))
(fma.f64 y y (neg.f64 (*.f64 x x)))
(*.f64 (+.f64 y x) (-.f64 y x))
(+.f64 (*.f64 -1 (pow.f64 x 2)) (pow.f64 y 2))
(-.f64 (*.f64 y y) (*.f64 x x))
(fma.f64 y y (neg.f64 (*.f64 x x)))
(*.f64 (+.f64 y x) (-.f64 y 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))
(fma.f64 y y (neg.f64 (*.f64 x x)))
(*.f64 (+.f64 y x) (-.f64 y x))
(+.f64 (*.f64 -1 (pow.f64 x 2)) (pow.f64 y 2))
(-.f64 (*.f64 y y) (*.f64 x x))
(fma.f64 y y (neg.f64 (*.f64 x x)))
(*.f64 (+.f64 y x) (-.f64 y x))
(+.f64 (*.f64 -1 (pow.f64 x 2)) (pow.f64 y 2))
(-.f64 (*.f64 y y) (*.f64 x x))
(fma.f64 y y (neg.f64 (*.f64 x x)))
(*.f64 (+.f64 y x) (-.f64 y 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))
(fma.f64 y y (neg.f64 (*.f64 x x)))
(*.f64 (+.f64 y x) (-.f64 y x))
(+.f64 (*.f64 -1 (pow.f64 x 2)) (pow.f64 y 2))
(-.f64 (*.f64 y y) (*.f64 x x))
(fma.f64 y y (neg.f64 (*.f64 x x)))
(*.f64 (+.f64 y x) (-.f64 y x))
(+.f64 (*.f64 -1 (pow.f64 x 2)) (pow.f64 y 2))
(-.f64 (*.f64 y y) (*.f64 x x))
(fma.f64 y y (neg.f64 (*.f64 x x)))
(*.f64 (+.f64 y x) (-.f64 y 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))
(fma.f64 y y (neg.f64 (*.f64 x x)))
(*.f64 (+.f64 y x) (-.f64 y x))
(+.f64 (*.f64 -1 (pow.f64 x 2)) (pow.f64 y 2))
(-.f64 (*.f64 y y) (*.f64 x x))
(fma.f64 y y (neg.f64 (*.f64 x x)))
(*.f64 (+.f64 y x) (-.f64 y x))
(+.f64 (*.f64 -1 (pow.f64 x 2)) (pow.f64 y 2))
(-.f64 (*.f64 y y) (*.f64 x x))
(fma.f64 y y (neg.f64 (*.f64 x x)))
(*.f64 (+.f64 y x) (-.f64 y x))

localize19.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(*.f64 (-.f64 y x) 6)
0.1b
(sqrt.f64 (*.f64 (-.f64 y x) 6))
0.1b
(*.f64 (pow.f64 (sqrt.f64 (*.f64 (-.f64 y x) 6)) 2) z)
0.3b
(pow.f64 (sqrt.f64 (*.f64 (-.f64 y x) 6)) 2)
Compiler

Compiled 52 to 29 computations (44.2% saved)

series25.0ms (0.3%)

Counts
3 → 52
Calls

21 calls:

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

rewrite80.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
481×log-prod_binary64
359×prod-diff_binary64
355×exp-prod_binary64
317×pow-prod-down_binary64
265×pow2_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01126
123726
2266326
Stop Event
node limit
Counts
3 → 104
Calls
Call 1
Inputs
(pow.f64 (sqrt.f64 (*.f64 (-.f64 y x) 6)) 2)
(*.f64 (pow.f64 (sqrt.f64 (*.f64 (-.f64 y x) 6)) 2) z)
(sqrt.f64 (*.f64 (-.f64 y x) 6))
Outputs
((#(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 y x) 6)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 6 (-.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 y x) 6) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (-.f64 y x) 6)) (sqrt.f64 (*.f64 (-.f64 y x) 6)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (-.f64 y x) 6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (-.f64 y x) 6)) (cbrt.f64 (*.f64 36 (pow.f64 (-.f64 y x) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 36 (pow.f64 (-.f64 y x) 2))) (cbrt.f64 (*.f64 (-.f64 y x) 6)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (-.f64 y x)) 2) (*.f64 (cbrt.f64 (-.f64 y x)) 6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (-.f64 y x) 6) 1/4) (pow.f64 (*.f64 (-.f64 y x) 6) 3/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 y x)) (*.f64 (sqrt.f64 (-.f64 y x)) 6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 y x)) (pow.f64 (*.f64 6 (*.f64 (-.f64 y x) 6)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (-.f64 y x) 6) 3/4) (pow.f64 (*.f64 (-.f64 y x) 6) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 6 (pow.f64 (cbrt.f64 (-.f64 y x)) 2)) (cbrt.f64 (-.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 6 (sqrt.f64 (-.f64 y x))) (sqrt.f64 (-.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (-.f64 y x) 6) 5/6) (pow.f64 (*.f64 (-.f64 y x) 6) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (*.f64 (-.f64 y x) 6) (-.f64 y x)) 1/2) (sqrt.f64 6))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 y 3) (pow.f64 x 3)) 6) (fma.f64 y y (*.f64 x (+.f64 y x))))))) (#(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 y y (*.f64 x (+.f64 y x))))))) (#(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 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 exp.f64 (*.f64 (log.f64 (*.f64 36 (pow.f64 (-.f64 y x) 2))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 (-.f64 y x) 6))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (-.f64 y x) 6))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (-.f64 y x) 6)) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (-.f64 y x) 6)) 1/2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (-.f64 y x) 6))) 1) 2))))) (#(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 0 (*.f64 (-.f64 y x) (*.f64 6 z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 6) (*.f64 (-.f64 y x) z))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 6) (*.f64 (-.f64 y x) z)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 6) (*.f64 (-.f64 y x) z)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 6) (*.f64 (-.f64 y x) z)))))))) (#(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 pow.f64 (*.f64 (-.f64 y x) (*.f64 6 z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (-.f64 y x) (*.f64 6 z)) 2) 1/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 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 (exp.f64 1) (log.f64 (*.f64 (-.f64 y x) (*.f64 6 z))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 (-.f64 y x) (*.f64 6 z)))) 2)) (cbrt.f64 (log.f64 (*.f64 (-.f64 y x) (*.f64 6 z)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 (-.f64 y x) (*.f64 6 z))))) (sqrt.f64 (log.f64 (*.f64 (-.f64 y x) (*.f64 6 z)))))))) (#(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 (exp.f64 6) (*.f64 (-.f64 y x) z)))))) (#(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 exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 (-.f64 y x) (*.f64 6 z)))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (-.f64 y x) (*.f64 6 z)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (-.f64 y x) (*.f64 6 z)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (-.f64 y x) (*.f64 6 z))) 1) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (sqrt.f64 (*.f64 (-.f64 y x) 6)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (*.f64 (-.f64 y x) 6)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (*.f64 (-.f64 y x) 6))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (*.f64 (-.f64 y x) 6))))) (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (*.f64 (-.f64 y x) 6))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (-.f64 y x) 6)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (-.f64 y x) 6)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (*.f64 (-.f64 y x) 6)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (-.f64 y x) 6)) (pow.f64 (*.f64 (-.f64 y x) 6) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (-.f64 y x) 6) 1/6) (cbrt.f64 (*.f64 (-.f64 y x) 6)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 6) (sqrt.f64 (-.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (-.f64 y x) 6) 1/4) (pow.f64 (*.f64 (-.f64 y x) 6) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 y x)) (sqrt.f64 6))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (-.f64 y x) 6) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (-.f64 y x) 6)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 36 (pow.f64 (-.f64 y x) 2)) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (-.f64 y x) 6) 3) 1/6)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (-.f64 y x) 6) 3/2) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (-.f64 y x) 6)) 3/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (-.f64 y x) 6) 1/6) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (-.f64 y x) 6) 1/4) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (sqrt.f64 (*.f64 (-.f64 y x) 6))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1/2) (log.f64 (*.f64 (-.f64 y x) 6)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (sqrt.f64 (*.f64 (-.f64 y x) 6)))) 2)) (cbrt.f64 (log.f64 (sqrt.f64 (*.f64 (-.f64 y x) 6)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (sqrt.f64 (*.f64 (-.f64 y x) 6))))) (sqrt.f64 (log.f64 (sqrt.f64 (*.f64 (-.f64 y x) 6)))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (sqrt.f64 (*.f64 (-.f64 y x) 6)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (sqrt.f64 (*.f64 (-.f64 y x) 6))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (*.f64 (-.f64 y x) 6)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (-.f64 y x) 6) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 (-.f64 y x) 6))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 (-.f64 y x) 6))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (sqrt.f64 (*.f64 (-.f64 y x) 6))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (-.f64 y x) 6)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (-.f64 y x) 6))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3/2 (log.f64 (*.f64 (-.f64 y x) 6))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (-.f64 y x) 6) 1/6)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 1/4 (log.f64 (*.f64 (-.f64 y x) 6))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (-.f64 y x) 6)) 1) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (-.f64 y x) 6)) 1/2) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (-.f64 y x) 6))) 1) 1))))))

simplify67.0ms (0.8%)

Algorithm
egg-herbie
Rules
663×fma-def_binary64
509×associate-*r*_binary64
504×associate-*l*_binary64
266×unswap-sqr_binary64
240×*-commutative_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01341403
1380761
21383739
35931716
Stop Event
node limit
Counts
156 → 140
Calls
Call 1
Inputs
(*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (pow.f64 (sqrt.f64 6) 2) x))
(+.f64 (*.f64 y (pow.f64 (sqrt.f64 6) 2)) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (pow.f64 (sqrt.f64 6) 2) x)))
(+.f64 (*.f64 (+.f64 (*.f64 1/4 (/.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 (pow.f64 (sqrt.f64 -1) 2) x))) (*.f64 -1/4 (/.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 (pow.f64 (sqrt.f64 -1) 2) x)))) (pow.f64 y 2)) (+.f64 (*.f64 y (pow.f64 (sqrt.f64 6) 2)) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (pow.f64 (sqrt.f64 6) 2) x))))
(+.f64 (*.f64 (+.f64 (*.f64 1/4 (/.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 (pow.f64 (sqrt.f64 -1) 2) x))) (*.f64 -1/4 (/.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 (pow.f64 (sqrt.f64 -1) 2) x)))) (pow.f64 y 2)) (+.f64 (*.f64 y (pow.f64 (sqrt.f64 6) 2)) (+.f64 (*.f64 (pow.f64 y 3) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 (pow.f64 (sqrt.f64 -1) 4) (pow.f64 x 2)))) (*.f64 1/8 (/.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 (pow.f64 (sqrt.f64 -1) 4) (pow.f64 x 2)))))) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (pow.f64 (sqrt.f64 6) 2) x)))))
(*.f64 y (pow.f64 (sqrt.f64 6) 2))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 6) 2) x)) (*.f64 y (pow.f64 (sqrt.f64 6) 2)))
(+.f64 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 (sqrt.f64 6) 2) y)) (*.f64 1/4 (/.f64 (pow.f64 (sqrt.f64 6) 2) y))) (pow.f64 x 2)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 6) 2) x)) (*.f64 y (pow.f64 (sqrt.f64 6) 2))))
(+.f64 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 (sqrt.f64 6) 2) y)) (*.f64 1/4 (/.f64 (pow.f64 (sqrt.f64 6) 2) y))) (pow.f64 x 2)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 6) 2) x)) (+.f64 (*.f64 y (pow.f64 (sqrt.f64 6) 2)) (*.f64 (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 (sqrt.f64 6) 2) (pow.f64 y 2))) (*.f64 1/8 (/.f64 (pow.f64 (sqrt.f64 6) 2) (pow.f64 y 2)))) (pow.f64 x 3)))))
(*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 z x)))
(+.f64 (*.f64 y (*.f64 (pow.f64 (sqrt.f64 6) 2) z)) (*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 z x))))
(+.f64 (*.f64 y (*.f64 (pow.f64 (sqrt.f64 6) 2) z)) (*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 z x))))
(+.f64 (*.f64 y (*.f64 (pow.f64 (sqrt.f64 6) 2) z)) (*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 z x))))
(*.f64 y (*.f64 (pow.f64 (sqrt.f64 6) 2) z))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 z x))) (*.f64 y (*.f64 (pow.f64 (sqrt.f64 6) 2) z)))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 z x))) (*.f64 y (*.f64 (pow.f64 (sqrt.f64 6) 2) z)))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 z x))) (*.f64 y (*.f64 (pow.f64 (sqrt.f64 6) 2) z)))
(*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 -6) 2) (*.f64 y z)))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 -6) 2) (*.f64 y z))) (*.f64 (pow.f64 (sqrt.f64 -6) 2) (*.f64 z x)))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 -6) 2) (*.f64 y z))) (*.f64 (pow.f64 (sqrt.f64 -6) 2) (*.f64 z x)))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 -6) 2) (*.f64 y z))) (*.f64 (pow.f64 (sqrt.f64 -6) 2) (*.f64 z x)))
(*.f64 y (*.f64 (pow.f64 (sqrt.f64 6) 2) z))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 z x))) (*.f64 y (*.f64 (pow.f64 (sqrt.f64 6) 2) z)))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 z x))) (*.f64 y (*.f64 (pow.f64 (sqrt.f64 6) 2) z)))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 z x))) (*.f64 y (*.f64 (pow.f64 (sqrt.f64 6) 2) z)))
(*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 z x)))
(+.f64 (*.f64 y (*.f64 (pow.f64 (sqrt.f64 6) 2) z)) (*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 z x))))
(+.f64 (*.f64 y (*.f64 (pow.f64 (sqrt.f64 6) 2) z)) (*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 z x))))
(+.f64 (*.f64 y (*.f64 (pow.f64 (sqrt.f64 6) 2) z)) (*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 z x))))
(*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 z x)))
(+.f64 (*.f64 y (*.f64 (pow.f64 (sqrt.f64 6) 2) z)) (*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 z x))))
(+.f64 (*.f64 y (*.f64 (pow.f64 (sqrt.f64 6) 2) z)) (*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 z x))))
(+.f64 (*.f64 y (*.f64 (pow.f64 (sqrt.f64 6) 2) z)) (*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 z x))))
(*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 z (-.f64 y x)))
(*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 z (-.f64 y x)))
(*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 z (-.f64 y x)))
(*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 z (-.f64 y x)))
(*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 z (-.f64 y x)))
(*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 z (-.f64 y x)))
(*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 z (-.f64 y x)))
(*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 z (-.f64 y x)))
(*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 z (-.f64 y x)))
(*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 z (-.f64 y x)))
(*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 z (-.f64 y x)))
(*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 z (-.f64 y x)))
(*.f64 (*.f64 (sqrt.f64 -1) (sqrt.f64 6)) (sqrt.f64 x))
(+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 y (sqrt.f64 6)) (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 x)))) (*.f64 (*.f64 (sqrt.f64 -1) (sqrt.f64 6)) (sqrt.f64 x)))
(+.f64 (*.f64 -1/8 (*.f64 (/.f64 (*.f64 (pow.f64 y 2) (sqrt.f64 6)) (pow.f64 (sqrt.f64 -1) 3)) (sqrt.f64 (/.f64 1 (pow.f64 x 3))))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 y (sqrt.f64 6)) (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 x)))) (*.f64 (*.f64 (sqrt.f64 -1) (sqrt.f64 6)) (sqrt.f64 x))))
(+.f64 (*.f64 -1/8 (*.f64 (/.f64 (*.f64 (pow.f64 y 2) (sqrt.f64 6)) (pow.f64 (sqrt.f64 -1) 3)) (sqrt.f64 (/.f64 1 (pow.f64 x 3))))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 y (sqrt.f64 6)) (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 x)))) (+.f64 (*.f64 1/16 (*.f64 (/.f64 (*.f64 (pow.f64 y 3) (sqrt.f64 6)) (pow.f64 (sqrt.f64 -1) 5)) (sqrt.f64 (/.f64 1 (pow.f64 x 5))))) (*.f64 (*.f64 (sqrt.f64 -1) (sqrt.f64 6)) (sqrt.f64 x)))))
(*.f64 (sqrt.f64 y) (sqrt.f64 6))
(+.f64 (*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 y)) (*.f64 (sqrt.f64 6) x))) (*.f64 (sqrt.f64 y) (sqrt.f64 6)))
(+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 y 3))) (*.f64 (sqrt.f64 6) (pow.f64 x 2)))) (+.f64 (*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 y)) (*.f64 (sqrt.f64 6) x))) (*.f64 (sqrt.f64 y) (sqrt.f64 6))))
(+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 y 3))) (*.f64 (sqrt.f64 6) (pow.f64 x 2)))) (+.f64 (*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 y)) (*.f64 (sqrt.f64 6) x))) (+.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 y 5))) (*.f64 (sqrt.f64 6) (pow.f64 x 3)))) (*.f64 (sqrt.f64 y) (sqrt.f64 6)))))
Outputs
(*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (pow.f64 (sqrt.f64 6) 2) x))
(*.f64 x -6)
(+.f64 (*.f64 y (pow.f64 (sqrt.f64 6) 2)) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (pow.f64 (sqrt.f64 6) 2) x)))
(fma.f64 y (pow.f64 (sqrt.f64 6) 2) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (pow.f64 (sqrt.f64 6) 2) x)))
(fma.f64 6 y (*.f64 x -6))
(*.f64 6 (-.f64 y x))
(+.f64 (*.f64 (+.f64 (*.f64 1/4 (/.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 (pow.f64 (sqrt.f64 -1) 2) x))) (*.f64 -1/4 (/.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 (pow.f64 (sqrt.f64 -1) 2) x)))) (pow.f64 y 2)) (+.f64 (*.f64 y (pow.f64 (sqrt.f64 6) 2)) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (pow.f64 (sqrt.f64 6) 2) x))))
(fma.f64 y (pow.f64 (sqrt.f64 6) 2) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (pow.f64 (sqrt.f64 6) 2) x)))
(fma.f64 6 y (*.f64 x -6))
(*.f64 6 (-.f64 y x))
(+.f64 (*.f64 (+.f64 (*.f64 1/4 (/.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 (pow.f64 (sqrt.f64 -1) 2) x))) (*.f64 -1/4 (/.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 (pow.f64 (sqrt.f64 -1) 2) x)))) (pow.f64 y 2)) (+.f64 (*.f64 y (pow.f64 (sqrt.f64 6) 2)) (+.f64 (*.f64 (pow.f64 y 3) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 (pow.f64 (sqrt.f64 -1) 4) (pow.f64 x 2)))) (*.f64 1/8 (/.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 (pow.f64 (sqrt.f64 -1) 4) (pow.f64 x 2)))))) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (pow.f64 (sqrt.f64 6) 2) x)))))
(fma.f64 y (pow.f64 (sqrt.f64 6) 2) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (pow.f64 (sqrt.f64 6) 2) x)))
(fma.f64 6 y (*.f64 x -6))
(*.f64 6 (-.f64 y x))
(*.f64 y (pow.f64 (sqrt.f64 6) 2))
(*.f64 (pow.f64 (sqrt.f64 6) 2) y)
(*.f64 6 y)
(+.f64 (*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 6) 2) x)) (*.f64 y (pow.f64 (sqrt.f64 6) 2)))
(fma.f64 y (pow.f64 (sqrt.f64 6) 2) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (pow.f64 (sqrt.f64 6) 2) x)))
(fma.f64 6 y (*.f64 x -6))
(*.f64 6 (-.f64 y x))
(+.f64 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 (sqrt.f64 6) 2) y)) (*.f64 1/4 (/.f64 (pow.f64 (sqrt.f64 6) 2) y))) (pow.f64 x 2)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 6) 2) x)) (*.f64 y (pow.f64 (sqrt.f64 6) 2))))
(fma.f64 y (pow.f64 (sqrt.f64 6) 2) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (pow.f64 (sqrt.f64 6) 2) x)))
(fma.f64 6 y (*.f64 x -6))
(*.f64 6 (-.f64 y x))
(+.f64 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 (sqrt.f64 6) 2) y)) (*.f64 1/4 (/.f64 (pow.f64 (sqrt.f64 6) 2) y))) (pow.f64 x 2)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 6) 2) x)) (+.f64 (*.f64 y (pow.f64 (sqrt.f64 6) 2)) (*.f64 (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 (sqrt.f64 6) 2) (pow.f64 y 2))) (*.f64 1/8 (/.f64 (pow.f64 (sqrt.f64 6) 2) (pow.f64 y 2)))) (pow.f64 x 3)))))
(fma.f64 y (pow.f64 (sqrt.f64 6) 2) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (pow.f64 (sqrt.f64 6) 2) x)))
(fma.f64 6 y (*.f64 x -6))
(*.f64 6 (-.f64 y x))
(*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 z x)))
(neg.f64 (*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 x z)))
(*.f64 (*.f64 x -6) z)
(+.f64 (*.f64 y (*.f64 (pow.f64 (sqrt.f64 6) 2) z)) (*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 z x))))
(fma.f64 y (*.f64 (pow.f64 (sqrt.f64 6) 2) z) (neg.f64 (*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 x z))))
(*.f64 (*.f64 6 z) (-.f64 y x))
(+.f64 (*.f64 y (*.f64 (pow.f64 (sqrt.f64 6) 2) z)) (*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 z x))))
(fma.f64 y (*.f64 (pow.f64 (sqrt.f64 6) 2) z) (neg.f64 (*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 x z))))
(*.f64 (*.f64 6 z) (-.f64 y x))
(+.f64 (*.f64 y (*.f64 (pow.f64 (sqrt.f64 6) 2) z)) (*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 z x))))
(fma.f64 y (*.f64 (pow.f64 (sqrt.f64 6) 2) z) (neg.f64 (*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 x z))))
(*.f64 (*.f64 6 z) (-.f64 y x))
(*.f64 y (*.f64 (pow.f64 (sqrt.f64 6) 2) z))
(*.f64 6 (*.f64 y z))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 z x))) (*.f64 y (*.f64 (pow.f64 (sqrt.f64 6) 2) z)))
(fma.f64 y (*.f64 (pow.f64 (sqrt.f64 6) 2) z) (neg.f64 (*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 x z))))
(*.f64 (*.f64 6 z) (-.f64 y x))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 z x))) (*.f64 y (*.f64 (pow.f64 (sqrt.f64 6) 2) z)))
(fma.f64 y (*.f64 (pow.f64 (sqrt.f64 6) 2) z) (neg.f64 (*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 x z))))
(*.f64 (*.f64 6 z) (-.f64 y x))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 z x))) (*.f64 y (*.f64 (pow.f64 (sqrt.f64 6) 2) z)))
(fma.f64 y (*.f64 (pow.f64 (sqrt.f64 6) 2) z) (neg.f64 (*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 x z))))
(*.f64 (*.f64 6 z) (-.f64 y x))
(*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 -6) 2) (*.f64 y z)))
(*.f64 y (*.f64 (pow.f64 (sqrt.f64 6) 2) z))
(*.f64 6 (*.f64 y z))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 -6) 2) (*.f64 y z))) (*.f64 (pow.f64 (sqrt.f64 -6) 2) (*.f64 z x)))
(fma.f64 y (*.f64 (pow.f64 (sqrt.f64 6) 2) z) (neg.f64 (*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 x z))))
(*.f64 (*.f64 6 z) (-.f64 y x))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 -6) 2) (*.f64 y z))) (*.f64 (pow.f64 (sqrt.f64 -6) 2) (*.f64 z x)))
(fma.f64 y (*.f64 (pow.f64 (sqrt.f64 6) 2) z) (neg.f64 (*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 x z))))
(*.f64 (*.f64 6 z) (-.f64 y x))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 -6) 2) (*.f64 y z))) (*.f64 (pow.f64 (sqrt.f64 -6) 2) (*.f64 z x)))
(fma.f64 y (*.f64 (pow.f64 (sqrt.f64 6) 2) z) (neg.f64 (*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 x z))))
(*.f64 (*.f64 6 z) (-.f64 y x))
(*.f64 y (*.f64 (pow.f64 (sqrt.f64 6) 2) z))
(*.f64 6 (*.f64 y z))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 z x))) (*.f64 y (*.f64 (pow.f64 (sqrt.f64 6) 2) z)))
(fma.f64 y (*.f64 (pow.f64 (sqrt.f64 6) 2) z) (neg.f64 (*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 x z))))
(*.f64 (*.f64 6 z) (-.f64 y x))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 z x))) (*.f64 y (*.f64 (pow.f64 (sqrt.f64 6) 2) z)))
(fma.f64 y (*.f64 (pow.f64 (sqrt.f64 6) 2) z) (neg.f64 (*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 x z))))
(*.f64 (*.f64 6 z) (-.f64 y x))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 z x))) (*.f64 y (*.f64 (pow.f64 (sqrt.f64 6) 2) z)))
(fma.f64 y (*.f64 (pow.f64 (sqrt.f64 6) 2) z) (neg.f64 (*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 x z))))
(*.f64 (*.f64 6 z) (-.f64 y x))
(*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 z x)))
(neg.f64 (*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 x z)))
(*.f64 (*.f64 x -6) z)
(+.f64 (*.f64 y (*.f64 (pow.f64 (sqrt.f64 6) 2) z)) (*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 z x))))
(fma.f64 y (*.f64 (pow.f64 (sqrt.f64 6) 2) z) (neg.f64 (*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 x z))))
(*.f64 (*.f64 6 z) (-.f64 y x))
(+.f64 (*.f64 y (*.f64 (pow.f64 (sqrt.f64 6) 2) z)) (*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 z x))))
(fma.f64 y (*.f64 (pow.f64 (sqrt.f64 6) 2) z) (neg.f64 (*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 x z))))
(*.f64 (*.f64 6 z) (-.f64 y x))
(+.f64 (*.f64 y (*.f64 (pow.f64 (sqrt.f64 6) 2) z)) (*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 z x))))
(fma.f64 y (*.f64 (pow.f64 (sqrt.f64 6) 2) z) (neg.f64 (*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 x z))))
(*.f64 (*.f64 6 z) (-.f64 y x))
(*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 z x)))
(neg.f64 (*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 x z)))
(*.f64 (*.f64 x -6) z)
(+.f64 (*.f64 y (*.f64 (pow.f64 (sqrt.f64 6) 2) z)) (*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 z x))))
(fma.f64 y (*.f64 (pow.f64 (sqrt.f64 6) 2) z) (neg.f64 (*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 x z))))
(*.f64 (*.f64 6 z) (-.f64 y x))
(+.f64 (*.f64 y (*.f64 (pow.f64 (sqrt.f64 6) 2) z)) (*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 z x))))
(fma.f64 y (*.f64 (pow.f64 (sqrt.f64 6) 2) z) (neg.f64 (*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 x z))))
(*.f64 (*.f64 6 z) (-.f64 y x))
(+.f64 (*.f64 y (*.f64 (pow.f64 (sqrt.f64 6) 2) z)) (*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 z x))))
(fma.f64 y (*.f64 (pow.f64 (sqrt.f64 6) 2) z) (neg.f64 (*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 x z))))
(*.f64 (*.f64 6 z) (-.f64 y x))
(*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 z (-.f64 y x)))
(fma.f64 y (*.f64 (pow.f64 (sqrt.f64 6) 2) z) (neg.f64 (*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 x z))))
(*.f64 (*.f64 6 z) (-.f64 y x))
(*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 z (-.f64 y x)))
(fma.f64 y (*.f64 (pow.f64 (sqrt.f64 6) 2) z) (neg.f64 (*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 x z))))
(*.f64 (*.f64 6 z) (-.f64 y x))
(*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 z (-.f64 y x)))
(fma.f64 y (*.f64 (pow.f64 (sqrt.f64 6) 2) z) (neg.f64 (*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 x z))))
(*.f64 (*.f64 6 z) (-.f64 y x))
(*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 z (-.f64 y x)))
(fma.f64 y (*.f64 (pow.f64 (sqrt.f64 6) 2) z) (neg.f64 (*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 x z))))
(*.f64 (*.f64 6 z) (-.f64 y x))
(*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 z (-.f64 y x)))
(fma.f64 y (*.f64 (pow.f64 (sqrt.f64 6) 2) z) (neg.f64 (*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 x z))))
(*.f64 (*.f64 6 z) (-.f64 y x))
(*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 z (-.f64 y x)))
(fma.f64 y (*.f64 (pow.f64 (sqrt.f64 6) 2) z) (neg.f64 (*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 x z))))
(*.f64 (*.f64 6 z) (-.f64 y x))
(*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 z (-.f64 y x)))
(fma.f64 y (*.f64 (pow.f64 (sqrt.f64 6) 2) z) (neg.f64 (*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 x z))))
(*.f64 (*.f64 6 z) (-.f64 y x))
(*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 z (-.f64 y x)))
(fma.f64 y (*.f64 (pow.f64 (sqrt.f64 6) 2) z) (neg.f64 (*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 x z))))
(*.f64 (*.f64 6 z) (-.f64 y x))
(*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 z (-.f64 y x)))
(fma.f64 y (*.f64 (pow.f64 (sqrt.f64 6) 2) z) (neg.f64 (*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 x z))))
(*.f64 (*.f64 6 z) (-.f64 y x))
(*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 z (-.f64 y x)))
(fma.f64 y (*.f64 (pow.f64 (sqrt.f64 6) 2) z) (neg.f64 (*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 x z))))
(*.f64 (*.f64 6 z) (-.f64 y x))
(*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 z (-.f64 y x)))
(fma.f64 y (*.f64 (pow.f64 (sqrt.f64 6) 2) z) (neg.f64 (*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 x z))))
(*.f64 (*.f64 6 z) (-.f64 y x))
(*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 z (-.f64 y x)))
(fma.f64 y (*.f64 (pow.f64 (sqrt.f64 6) 2) z) (neg.f64 (*.f64 (pow.f64 (sqrt.f64 6) 2) (*.f64 x z))))
(*.f64 (*.f64 6 z) (-.f64 y x))
(*.f64 (*.f64 (sqrt.f64 -1) (sqrt.f64 6)) (sqrt.f64 x))
(*.f64 (sqrt.f64 -1) (*.f64 (sqrt.f64 6) (sqrt.f64 x)))
(+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 y (sqrt.f64 6)) (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 x)))) (*.f64 (*.f64 (sqrt.f64 -1) (sqrt.f64 6)) (sqrt.f64 x)))
(fma.f64 1/2 (*.f64 (/.f64 y (/.f64 (sqrt.f64 -1) (sqrt.f64 6))) (sqrt.f64 (/.f64 1 x))) (*.f64 (sqrt.f64 -1) (*.f64 (sqrt.f64 6) (sqrt.f64 x))))
(fma.f64 1/2 (*.f64 (*.f64 (/.f64 y (sqrt.f64 -1)) (sqrt.f64 6)) (sqrt.f64 (/.f64 1 x))) (*.f64 (sqrt.f64 -1) (*.f64 (sqrt.f64 6) (sqrt.f64 x))))
(fma.f64 (sqrt.f64 -1) (*.f64 (sqrt.f64 6) (sqrt.f64 x)) (*.f64 (sqrt.f64 (/.f64 1 x)) (*.f64 1/2 (/.f64 (sqrt.f64 6) (/.f64 (sqrt.f64 -1) y)))))
(*.f64 (sqrt.f64 6) (+.f64 (*.f64 (sqrt.f64 -1) (sqrt.f64 x)) (*.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 x))) (/.f64 y (sqrt.f64 -1)))))
(+.f64 (*.f64 -1/8 (*.f64 (/.f64 (*.f64 (pow.f64 y 2) (sqrt.f64 6)) (pow.f64 (sqrt.f64 -1) 3)) (sqrt.f64 (/.f64 1 (pow.f64 x 3))))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 y (sqrt.f64 6)) (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 x)))) (*.f64 (*.f64 (sqrt.f64 -1) (sqrt.f64 6)) (sqrt.f64 x))))
(fma.f64 -1/8 (*.f64 (/.f64 (*.f64 y y) (/.f64 (pow.f64 (sqrt.f64 -1) 3) (sqrt.f64 6))) (sqrt.f64 (/.f64 1 (pow.f64 x 3)))) (fma.f64 1/2 (*.f64 (/.f64 y (/.f64 (sqrt.f64 -1) (sqrt.f64 6))) (sqrt.f64 (/.f64 1 x))) (*.f64 (sqrt.f64 -1) (*.f64 (sqrt.f64 6) (sqrt.f64 x)))))
(fma.f64 -1/8 (*.f64 (*.f64 (/.f64 (sqrt.f64 6) -1) (/.f64 (*.f64 y y) (sqrt.f64 -1))) (sqrt.f64 (/.f64 1 (pow.f64 x 3)))) (fma.f64 1/2 (*.f64 (*.f64 (/.f64 y (sqrt.f64 -1)) (sqrt.f64 6)) (sqrt.f64 (/.f64 1 x))) (*.f64 (sqrt.f64 -1) (*.f64 (sqrt.f64 6) (sqrt.f64 x)))))
(fma.f64 (sqrt.f64 -1) (*.f64 (sqrt.f64 6) (sqrt.f64 x)) (fma.f64 1/2 (*.f64 (/.f64 (sqrt.f64 6) (/.f64 (sqrt.f64 -1) y)) (sqrt.f64 (/.f64 1 x))) (*.f64 1/8 (/.f64 (*.f64 (sqrt.f64 6) (*.f64 y y)) (/.f64 (sqrt.f64 -1) (sqrt.f64 (/.f64 1 (pow.f64 x 3))))))))
(fma.f64 (sqrt.f64 (/.f64 1 (pow.f64 x 3))) (*.f64 1/8 (/.f64 (sqrt.f64 6) (/.f64 (sqrt.f64 -1) (*.f64 y y)))) (*.f64 (sqrt.f64 6) (+.f64 (*.f64 (sqrt.f64 -1) (sqrt.f64 x)) (*.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 x))) (/.f64 y (sqrt.f64 -1))))))
(+.f64 (*.f64 -1/8 (*.f64 (/.f64 (*.f64 (pow.f64 y 2) (sqrt.f64 6)) (pow.f64 (sqrt.f64 -1) 3)) (sqrt.f64 (/.f64 1 (pow.f64 x 3))))) (+.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 y (sqrt.f64 6)) (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 x)))) (+.f64 (*.f64 1/16 (*.f64 (/.f64 (*.f64 (pow.f64 y 3) (sqrt.f64 6)) (pow.f64 (sqrt.f64 -1) 5)) (sqrt.f64 (/.f64 1 (pow.f64 x 5))))) (*.f64 (*.f64 (sqrt.f64 -1) (sqrt.f64 6)) (sqrt.f64 x)))))
(fma.f64 -1/8 (*.f64 (/.f64 (*.f64 y y) (/.f64 (pow.f64 (sqrt.f64 -1) 3) (sqrt.f64 6))) (sqrt.f64 (/.f64 1 (pow.f64 x 3)))) (fma.f64 1/2 (*.f64 (/.f64 y (/.f64 (sqrt.f64 -1) (sqrt.f64 6))) (sqrt.f64 (/.f64 1 x))) (fma.f64 1/16 (*.f64 (/.f64 (pow.f64 y 3) (/.f64 (pow.f64 (sqrt.f64 -1) 5) (sqrt.f64 6))) (sqrt.f64 (/.f64 1 (pow.f64 x 5)))) (*.f64 (sqrt.f64 -1) (*.f64 (sqrt.f64 6) (sqrt.f64 x))))))
(fma.f64 -1/8 (*.f64 (*.f64 (/.f64 (sqrt.f64 6) -1) (/.f64 (*.f64 y y) (sqrt.f64 -1))) (sqrt.f64 (/.f64 1 (pow.f64 x 3)))) (fma.f64 1/2 (*.f64 (*.f64 (/.f64 y (sqrt.f64 -1)) (sqrt.f64 6)) (sqrt.f64 (/.f64 1 x))) (fma.f64 (sqrt.f64 -1) (*.f64 (sqrt.f64 6) (sqrt.f64 x)) (*.f64 (/.f64 (*.f64 (sqrt.f64 6) (pow.f64 y 3)) (pow.f64 (sqrt.f64 -1) 5)) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 x 5))) 1/16)))))
(fma.f64 1/2 (*.f64 (/.f64 (sqrt.f64 6) (/.f64 (sqrt.f64 -1) y)) (sqrt.f64 (/.f64 1 x))) (fma.f64 (sqrt.f64 (/.f64 1 (pow.f64 x 3))) (*.f64 1/8 (/.f64 (sqrt.f64 6) (/.f64 (sqrt.f64 -1) (*.f64 y y)))) (fma.f64 (sqrt.f64 -1) (*.f64 (sqrt.f64 6) (sqrt.f64 x)) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 x 5))) (*.f64 1/16 (*.f64 (sqrt.f64 6) (/.f64 (pow.f64 y 3) (pow.f64 (sqrt.f64 -1) 5))))))))
(fma.f64 (sqrt.f64 (/.f64 1 (pow.f64 x 3))) (*.f64 1/8 (/.f64 (sqrt.f64 6) (/.f64 (sqrt.f64 -1) (*.f64 y y)))) (fma.f64 (*.f64 (sqrt.f64 6) (/.f64 (pow.f64 y 3) (pow.f64 (sqrt.f64 -1) 5))) (*.f64 1/16 (sqrt.f64 (/.f64 1 (pow.f64 x 5)))) (*.f64 (sqrt.f64 6) (+.f64 (*.f64 (sqrt.f64 -1) (sqrt.f64 x)) (*.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 x))) (/.f64 y (sqrt.f64 -1)))))))
(*.f64 (sqrt.f64 y) (sqrt.f64 6))
(*.f64 (sqrt.f64 6) (sqrt.f64 y))
(+.f64 (*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 y)) (*.f64 (sqrt.f64 6) x))) (*.f64 (sqrt.f64 y) (sqrt.f64 6)))
(fma.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 (/.f64 1 y)) (sqrt.f64 6)) x) (*.f64 (sqrt.f64 6) (sqrt.f64 y)))
(fma.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 y)) (*.f64 (sqrt.f64 6) x)) (*.f64 (sqrt.f64 6) (sqrt.f64 y)))
(*.f64 (sqrt.f64 6) (+.f64 (sqrt.f64 y) (*.f64 x (*.f64 -1/2 (sqrt.f64 (/.f64 1 y))))))
(+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 y 3))) (*.f64 (sqrt.f64 6) (pow.f64 x 2)))) (+.f64 (*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 y)) (*.f64 (sqrt.f64 6) x))) (*.f64 (sqrt.f64 y) (sqrt.f64 6))))
(fma.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 y 3))) (*.f64 (sqrt.f64 6) (*.f64 x x))) (fma.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 (/.f64 1 y)) (sqrt.f64 6)) x) (*.f64 (sqrt.f64 6) (sqrt.f64 y))))
(fma.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 y 3))) (*.f64 (sqrt.f64 6) (*.f64 x x))) (fma.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 y)) (*.f64 (sqrt.f64 6) x)) (*.f64 (sqrt.f64 6) (sqrt.f64 y))))
(fma.f64 (sqrt.f64 6) (sqrt.f64 y) (*.f64 (sqrt.f64 6) (+.f64 (*.f64 x (*.f64 -1/2 (sqrt.f64 (/.f64 1 y)))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 y 3))) (*.f64 x (*.f64 x -1/8))))))
(*.f64 (sqrt.f64 6) (+.f64 (sqrt.f64 y) (*.f64 x (+.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 y))) (*.f64 (*.f64 -1/8 (sqrt.f64 (/.f64 1 (pow.f64 y 3)))) x)))))
(+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 y 3))) (*.f64 (sqrt.f64 6) (pow.f64 x 2)))) (+.f64 (*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 y)) (*.f64 (sqrt.f64 6) x))) (+.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 y 5))) (*.f64 (sqrt.f64 6) (pow.f64 x 3)))) (*.f64 (sqrt.f64 y) (sqrt.f64 6)))))
(fma.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 y 3))) (*.f64 (sqrt.f64 6) (*.f64 x x))) (fma.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 (/.f64 1 y)) (sqrt.f64 6)) x) (fma.f64 -1/16 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 y 5))) (*.f64 (sqrt.f64 6) (pow.f64 x 3))) (*.f64 (sqrt.f64 6) (sqrt.f64 y)))))
(fma.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 y 3))) (*.f64 (sqrt.f64 6) (*.f64 x x))) (fma.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 y)) (*.f64 (sqrt.f64 6) x)) (fma.f64 -1/16 (*.f64 (pow.f64 x 3) (*.f64 (sqrt.f64 6) (sqrt.f64 (/.f64 1 (pow.f64 y 5))))) (*.f64 (sqrt.f64 6) (sqrt.f64 y)))))
(+.f64 (*.f64 (sqrt.f64 6) (+.f64 (sqrt.f64 y) (*.f64 -1/16 (*.f64 (pow.f64 x 3) (sqrt.f64 (/.f64 1 (pow.f64 y 5))))))) (*.f64 (sqrt.f64 6) (+.f64 (*.f64 x (*.f64 -1/2 (sqrt.f64 (/.f64 1 y)))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 y 3))) (*.f64 x (*.f64 x -1/8))))))
(*.f64 (sqrt.f64 6) (+.f64 (+.f64 (sqrt.f64 y) (*.f64 -1/16 (*.f64 (pow.f64 x 3) (sqrt.f64 (/.f64 1 (pow.f64 y 5)))))) (*.f64 x (+.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 y))) (*.f64 (*.f64 -1/8 (sqrt.f64 (/.f64 1 (pow.f64 y 3)))) x)))))

eval274.0ms (3.1%)

Compiler

Compiled 11966 to 5618 computations (53.1% saved)

prune193.0ms (2.2%)

Pruning

19 alts after pruning (8 fresh and 11 done)

PrunedKeptTotal
New5965601
Fresh134
Picked101
Done11112
Total59919618
Error
0b
Counts
618 → 19
Alt Table
Click to see full alt table
StatusErrorProgram
51.8b
(/.f64 (*.f64 (*.f64 6 z) (*.f64 y y)) (+.f64 y x))
41.2b
(*.f64 y (*.f64 6 z))
41.2b
(*.f64 6 (*.f64 y z))
48.5b
(*.f64 -6 (*.f64 z x))
21.9b
(*.f64 x (fma.f64 -6 z 1))
56.2b
(pow.f64 (sqrt.f64 (*.f64 z (*.f64 -6 x))) 2)
53.9b
(/.f64 (*.f64 (*.f64 6 z) (*.f64 x (neg.f64 x))) (+.f64 y x))
0.2b
(+.f64 (*.f64 (-.f64 y x) (*.f64 6 z)) x)
21.9b
(+.f64 (*.f64 -6 (*.f64 z x)) x)
27.1b
(*.f64 (-.f64 y x) (*.f64 6 z))
48.5b
(*.f64 x (*.f64 -6 z))
38.2b
(*.f64 (*.f64 -6 (*.f64 (*.f64 z (+.f64 y x)) (-.f64 y x))) (/.f64 1 (neg.f64 (+.f64 y x))))
41.2b
(*.f64 z (*.f64 6 y))
21.9b
(*.f64 (+.f64 (*.f64 -6 z) 1) x)
27.1b
(*.f64 (*.f64 6 (-.f64 y x)) z)
14.7b
(+.f64 x (*.f64 (*.f64 6 y) z))
48.5b
(*.f64 (*.f64 -6 x) z)
35.7b
x
14.6b
(+.f64 x (*.f64 6 (*.f64 y z)))
Compiler

Compiled 194 to 138 computations (28.9% saved)

regimes202.0ms (2.3%)

Counts
32 → 1
Calls
Call 1
Inputs
x
(*.f64 y (*.f64 6 z))
(*.f64 (*.f64 -6 x) z)
(*.f64 x (*.f64 -6 z))
(*.f64 z (*.f64 x -6))
(*.f64 z (*.f64 -6 x))
(*.f64 -6 (*.f64 z x))
(*.f64 6 (*.f64 y z))
(*.f64 z (*.f64 6 y))
(*.f64 (-.f64 y x) (*.f64 6 z))
(*.f64 (+.f64 (*.f64 -6 z) 1) x)
(*.f64 (*.f64 6 (-.f64 y x)) z)
(+.f64 (*.f64 -6 (*.f64 z x)) x)
(*.f64 (+.f64 1 (*.f64 -6 z)) x)
(+.f64 x (*.f64 (*.f64 6 y) z))
(*.f64 6 (*.f64 z (-.f64 y x)))
(+.f64 x (*.f64 (*.f64 -6 x) z))
(+.f64 x (*.f64 6 (*.f64 y z)))
(+.f64 (*.f64 (-.f64 y x) (*.f64 6 z)) x)
(+.f64 x (*.f64 (*.f64 (-.f64 y x) 6) z))
(/.f64 (*.f64 (*.f64 6 z) (*.f64 y y)) (+.f64 y x))
(/.f64 (*.f64 (*.f64 6 z) (*.f64 x (neg.f64 x))) (+.f64 y x))
(/.f64 (*.f64 (*.f64 6 z) (-.f64 (*.f64 y y) (*.f64 x x))) (+.f64 y x))
(/.f64 (*.f64 (*.f64 6 z) (-.f64 (*.f64 y y) (*.f64 x x))) (+.f64 y x))
(+.f64 x (/.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (*.f64 6 z)) (+.f64 y x)))
(*.f64 (*.f64 -6 (*.f64 (*.f64 z (+.f64 y x)) (-.f64 y x))) (/.f64 1 (neg.f64 (+.f64 y x))))
(*.f64 x (fma.f64 -6 z 1))
(fma.f64 (*.f64 (-.f64 y x) 6) z x)
(pow.f64 (sqrt.f64 (*.f64 z (*.f64 -6 x))) 2)
(pow.f64 (sqrt.f64 (*.f64 6 (*.f64 z (-.f64 y x)))) 2)
(+.f64 x (*.f64 (pow.f64 (sqrt.f64 (*.f64 (-.f64 y x) 6)) 2) z))
(+.f64 x (pow.f64 (sqrt.f64 (*.f64 (-.f64 y x) (*.f64 6 z))) 2))
Outputs
(fma.f64 (*.f64 (-.f64 y x) 6) z x)
Calls

4 calls:

33.0ms
x
32.0ms
(+.f64 x (*.f64 (*.f64 (-.f64 y x) 6) z))
31.0ms
y
30.0ms
z
Results
ErrorSegmentsBranch
0.2b1x
0.2b1y
0.2b1z
0.2b1(+.f64 x (*.f64 (*.f64 (-.f64 y x) 6) z))
Compiler

Compiled 293 to 153 computations (47.8% saved)

regimes210.0ms (2.4%)

Counts
27 → 1
Calls
Call 1
Inputs
x
(*.f64 y (*.f64 6 z))
(*.f64 (*.f64 -6 x) z)
(*.f64 x (*.f64 -6 z))
(*.f64 z (*.f64 x -6))
(*.f64 z (*.f64 -6 x))
(*.f64 -6 (*.f64 z x))
(*.f64 6 (*.f64 y z))
(*.f64 z (*.f64 6 y))
(*.f64 (-.f64 y x) (*.f64 6 z))
(*.f64 (+.f64 (*.f64 -6 z) 1) x)
(*.f64 (*.f64 6 (-.f64 y x)) z)
(+.f64 (*.f64 -6 (*.f64 z x)) x)
(*.f64 (+.f64 1 (*.f64 -6 z)) x)
(+.f64 x (*.f64 (*.f64 6 y) z))
(*.f64 6 (*.f64 z (-.f64 y x)))
(+.f64 x (*.f64 (*.f64 -6 x) z))
(+.f64 x (*.f64 6 (*.f64 y z)))
(+.f64 (*.f64 (-.f64 y x) (*.f64 6 z)) x)
(+.f64 x (*.f64 (*.f64 (-.f64 y x) 6) z))
(/.f64 (*.f64 (*.f64 6 z) (*.f64 y y)) (+.f64 y x))
(/.f64 (*.f64 (*.f64 6 z) (*.f64 x (neg.f64 x))) (+.f64 y x))
(/.f64 (*.f64 (*.f64 6 z) (-.f64 (*.f64 y y) (*.f64 x x))) (+.f64 y x))
(/.f64 (*.f64 (*.f64 6 z) (-.f64 (*.f64 y y) (*.f64 x x))) (+.f64 y x))
(+.f64 x (/.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (*.f64 6 z)) (+.f64 y x)))
(*.f64 (*.f64 -6 (*.f64 (*.f64 z (+.f64 y x)) (-.f64 y x))) (/.f64 1 (neg.f64 (+.f64 y x))))
(*.f64 x (fma.f64 -6 z 1))
Outputs
(+.f64 x (*.f64 (*.f64 (-.f64 y x) 6) z))
Calls

4 calls:

58.0ms
(+.f64 x (*.f64 (*.f64 (-.f64 y x) 6) z))
56.0ms
z
55.0ms
x
27.0ms
y
Results
ErrorSegmentsBranch
0.2b1x
0.2b1y
0.2b1z
0.2b1(+.f64 x (*.f64 (*.f64 (-.f64 y x) 6) z))
Compiler

Compiled 243 to 125 computations (48.6% saved)

regimes103.0ms (1.2%)

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

3 calls:

50.0ms
y
21.0ms
x
21.0ms
z
Results
ErrorSegmentsBranch
0.2b1x
0.2b1y
0.2b1z
Compiler

Compiled 128 to 74 computations (42.2% saved)

regimes224.0ms (2.5%)

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

3 calls:

106.0ms
x
56.0ms
z
53.0ms
y
Results
ErrorSegmentsBranch
8.3b4x
6.6b3y
0.8b3z
Compiler

Compiled 119 to 70 computations (41.2% saved)

bsearch93.0ms (1%)

Algorithm
binary-search
Steps
TimeLeftRight
34.0ms
5.396997530105683e-7
30284.525102377243
59.0ms
-165539980012.59372
-160033704.54018337
Compiler

Compiled 18 to 13 computations (27.8% saved)

regimes123.0ms (1.4%)

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

3 calls:

52.0ms
z
35.0ms
x
28.0ms
y
Results
ErrorSegmentsBranch
8.3b4x
6.6b3y
0.8b3z
Compiler

Compiled 112 to 67 computations (40.2% saved)

bsearch80.0ms (0.9%)

Algorithm
binary-search
Steps
TimeLeftRight
59.0ms
5.396997530105683e-7
30284.525102377243
20.0ms
-165539980012.59372
-160033704.54018337
Compiler

Compiled 18 to 13 computations (27.8% saved)

regimes184.0ms (2.1%)

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

3 calls:

104.0ms
z
49.0ms
x
28.0ms
y
Results
ErrorSegmentsBranch
8.3b4x
6.6b3y
0.8b3z
Compiler

Compiled 98 to 60 computations (38.8% saved)

bsearch41.0ms (0.5%)

Algorithm
binary-search
Steps
TimeLeftRight
20.0ms
5.396997530105683e-7
30284.525102377243
20.0ms
-165539980012.59372
-160033704.54018337
Compiler

Compiled 18 to 13 computations (27.8% saved)

regimes118.0ms (1.3%)

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

3 calls:

44.0ms
y
43.0ms
x
26.0ms
z
Results
ErrorSegmentsBranch
11.7b5x
12.9b5y
9.2b3z
Compiler

Compiled 91 to 56 computations (38.5% saved)

bsearch41.0ms (0.5%)

Algorithm
binary-search
Steps
TimeLeftRight
19.0ms
8.787229659038187e-16
5.6782155552210817e-11
23.0ms
-11746.95108953019
-5.620233357598957e-7
Compiler

Compiled 18 to 13 computations (27.8% saved)

regimes94.0ms (1.1%)

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

3 calls:

34.0ms
y
33.0ms
x
23.0ms
z
Results
ErrorSegmentsBranch
11.7b5x
12.9b5y
9.2b3z
Compiler

Compiled 77 to 48 computations (37.7% saved)

bsearch40.0ms (0.4%)

Algorithm
binary-search
Steps
TimeLeftRight
19.0ms
8.787229659038187e-16
5.6782155552210817e-11
20.0ms
-11746.95108953019
-5.620233357598957e-7
Compiler

Compiled 18 to 13 computations (27.8% saved)

regimes91.0ms (1%)

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

3 calls:

38.0ms
x
32.0ms
y
19.0ms
z
Results
ErrorSegmentsBranch
11.8b5x
12.9b5y
9.2b3z
Compiler

Compiled 70 to 45 computations (35.7% saved)

bsearch39.0ms (0.4%)

Algorithm
binary-search
Steps
TimeLeftRight
18.0ms
8.787229659038187e-16
5.6782155552210817e-11
21.0ms
-11746.95108953019
-5.620233357598957e-7
Compiler

Compiled 18 to 13 computations (27.8% saved)

regimes92.0ms (1%)

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

3 calls:

38.0ms
x
26.0ms
y
21.0ms
z
Results
ErrorSegmentsBranch
17.4b5x
23.7b3y
9.3b3z
Compiler

Compiled 63 to 40 computations (36.5% saved)

bsearch43.0ms (0.5%)

Algorithm
binary-search
Steps
TimeLeftRight
21.0ms
8.787229659038187e-16
5.6782155552210817e-11
22.0ms
-2.0837208492410545e-53
-1.4882204485966135e-66
Compiler

Compiled 18 to 13 computations (27.8% saved)

regimes98.0ms (1.1%)

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

3 calls:

35.0ms
x
32.0ms
z
28.0ms
y
Results
ErrorSegmentsBranch
25.8b5x
26.9b5y
20.9b4z
Compiler

Compiled 56 to 36 computations (35.7% saved)

bsearch91.0ms (1%)

Algorithm
binary-search
Steps
TimeLeftRight
54.0ms
3.1368519751671334e+110
2.540015462611571e+115
18.0ms
5.396997530105683e-7
30284.525102377243
20.0ms
-160033704.54018337
-11746.95108953019
Compiler

Compiled 180 to 139 computations (22.8% saved)

regimes75.0ms (0.8%)

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

3 calls:

26.0ms
z
24.0ms
x
23.0ms
y
Results
ErrorSegmentsBranch
25.9b5x
26.9b5y
20.9b4z
Compiler

Compiled 46 to 30 computations (34.8% saved)

bsearch89.0ms (1%)

Algorithm
binary-search
Steps
TimeLeftRight
53.0ms
3.1368519751671334e+110
2.540015462611571e+115
17.0ms
5.396997530105683e-7
30284.525102377243
19.0ms
-160033704.54018337
-11746.95108953019
Compiler

Compiled 180 to 139 computations (22.8% saved)

regimes131.0ms (1.5%)

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

3 calls:

46.0ms
y
46.0ms
x
36.0ms
z
Results
ErrorSegmentsBranch
25.9b5x
26.9b5y
20.9b4z
Compiler

Compiled 41 to 27 computations (34.1% saved)

bsearch263.0ms (3%)

Algorithm
binary-search
Steps
TimeLeftRight
194.0ms
3.1368519751671334e+110
2.540015462611571e+115
35.0ms
5.396997530105683e-7
30284.525102377243
35.0ms
-160033704.54018337
-11746.95108953019
Compiler

Compiled 180 to 139 computations (22.8% saved)

regimes222.0ms (2.5%)

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

3 calls:

125.0ms
z
60.0ms
x
34.0ms
y
Results
ErrorSegmentsBranch
25.9b5x
26.9b5y
20.9b4z
Compiler

Compiled 26 to 18 computations (30.8% saved)

bsearch161.0ms (1.8%)

Algorithm
binary-search
Steps
TimeLeftRight
74.0ms
3.1368519751671334e+110
2.540015462611571e+115
32.0ms
5.396997530105683e-7
30284.525102377243
53.0ms
-160033704.54018337
-11746.95108953019
Compiler

Compiled 180 to 139 computations (22.8% saved)

regimes82.0ms (0.9%)

Accuracy

Total -38.6b remaining (-165.1%)

Threshold costs -38.6b (-165.1%)

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

3 calls:

45.0ms
z
19.0ms
y
17.0ms
x
Results
ErrorSegmentsBranch
25.9b5x
26.9b5y
23.4b3z
Compiler

Compiled 21 to 15 computations (28.6% saved)

bsearch39.0ms (0.4%)

Algorithm
binary-search
Steps
TimeLeftRight
19.0ms
8.787229659038187e-16
5.6782155552210817e-11
19.0ms
-2.0837208492410545e-53
-1.4882204485966135e-66
Compiler

Compiled 18 to 13 computations (27.8% saved)

simplify58.0ms (0.7%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
073510
1102510
2106510
3108510
4109510
Stop Event
fuel
saturated
Calls
Call 1
Inputs
(fma.f64 (*.f64 (-.f64 y x) 6) z x)
(+.f64 x (*.f64 (*.f64 (-.f64 y x) 6) z))
(+.f64 (*.f64 (-.f64 y x) (*.f64 6 z)) x)
(if (<=.f64 z -5424414065052671/32768) (*.f64 6 (*.f64 z (-.f64 y x))) (if (<=.f64 z 5097320048860267/9444732965739290427392) (+.f64 x (*.f64 6 (*.f64 y z))) (*.f64 (*.f64 6 (-.f64 y x)) z)))
(if (<=.f64 z -5424414065052671/32768) (*.f64 6 (*.f64 z (-.f64 y x))) (if (<=.f64 z 5097320048860267/9444732965739290427392) (+.f64 x (*.f64 (*.f64 6 y) z)) (*.f64 (*.f64 6 (-.f64 y x)) z)))
(if (<=.f64 z -5424414065052671/32768) (*.f64 (-.f64 y x) (*.f64 6 z)) (if (<=.f64 z 5097320048860267/9444732965739290427392) (+.f64 x (*.f64 (*.f64 6 y) z)) (*.f64 (*.f64 6 (-.f64 y x)) z)))
(if (<=.f64 z -3228977328463599/274877906944) (*.f64 (-.f64 y x) (*.f64 6 z)) (if (<=.f64 z 4455654780649223/5070602400912917605986812821504) (+.f64 (*.f64 -6 (*.f64 z x)) x) (*.f64 (*.f64 6 (-.f64 y x)) z)))
(if (<=.f64 z -3228977328463599/274877906944) (*.f64 (-.f64 y x) (*.f64 6 z)) (if (<=.f64 z 4455654780649223/5070602400912917605986812821504) (*.f64 (+.f64 (*.f64 -6 z) 1) x) (*.f64 (*.f64 6 (-.f64 y x)) z)))
(if (<=.f64 z -3228977328463599/274877906944) (*.f64 (-.f64 y x) (*.f64 6 z)) (if (<=.f64 z 4455654780649223/5070602400912917605986812821504) (*.f64 (+.f64 (*.f64 -6 z) 1) x) (*.f64 (-.f64 y x) (*.f64 6 z))))
(if (<=.f64 z -8988320474362987/431359146674410236714672241392314090778194310760649159697657763987456) (*.f64 (-.f64 y x) (*.f64 6 z)) (if (<=.f64 z 4455654780649223/5070602400912917605986812821504) x (*.f64 (-.f64 y x) (*.f64 6 z))))
(if (<=.f64 z -687339527257814272/4294967296) (*.f64 -6 (*.f64 z x)) (if (<=.f64 z 5097320048860267/9444732965739290427392) x (if (<=.f64 z 319999999999999994192278630028793851670964830858501479934668747836770321740161705542585709580580405640427470848) (*.f64 (*.f64 -6 x) z) (*.f64 6 (*.f64 y z)))))
(if (<=.f64 z -687339527257814272/4294967296) (*.f64 -6 (*.f64 z x)) (if (<=.f64 z 5097320048860267/9444732965739290427392) x (if (<=.f64 z 319999999999999994192278630028793851670964830858501479934668747836770321740161705542585709580580405640427470848) (*.f64 (*.f64 -6 x) z) (*.f64 y (*.f64 6 z)))))
(if (<=.f64 z -687339527257814272/4294967296) (*.f64 x (*.f64 -6 z)) (if (<=.f64 z 5097320048860267/9444732965739290427392) x (if (<=.f64 z 319999999999999994192278630028793851670964830858501479934668747836770321740161705542585709580580405640427470848) (*.f64 (*.f64 -6 x) z) (*.f64 y (*.f64 6 z)))))
(if (<=.f64 z -687339527257814272/4294967296) (*.f64 (*.f64 -6 x) z) (if (<=.f64 z 5097320048860267/9444732965739290427392) x (if (<=.f64 z 319999999999999994192278630028793851670964830858501479934668747836770321740161705542585709580580405640427470848) (*.f64 (*.f64 -6 x) z) (*.f64 y (*.f64 6 z)))))
(if (<=.f64 z -8988320474362987/431359146674410236714672241392314090778194310760649159697657763987456) (*.f64 y (*.f64 6 z)) (if (<=.f64 z 4455654780649223/5070602400912917605986812821504) x (*.f64 y (*.f64 6 z))))
x
Outputs
(fma.f64 (*.f64 (-.f64 y x) 6) z x)
(+.f64 x (*.f64 (*.f64 (-.f64 y x) 6) z))
(+.f64 (*.f64 (-.f64 y x) (*.f64 6 z)) x)
(+.f64 x (*.f64 (-.f64 y x) (*.f64 6 z)))
(if (<=.f64 z -5424414065052671/32768) (*.f64 6 (*.f64 z (-.f64 y x))) (if (<=.f64 z 5097320048860267/9444732965739290427392) (+.f64 x (*.f64 6 (*.f64 y z))) (*.f64 (*.f64 6 (-.f64 y x)) z)))
(if (<=.f64 z -5424414065052671/32768) (*.f64 6 (*.f64 (-.f64 y x) z)) (if (<=.f64 z 5097320048860267/9444732965739290427392) (+.f64 x (*.f64 6 (*.f64 y z))) (*.f64 (*.f64 (-.f64 y x) 6) z)))
(if (<=.f64 z -5424414065052671/32768) (*.f64 6 (*.f64 z (-.f64 y x))) (if (<=.f64 z 5097320048860267/9444732965739290427392) (+.f64 x (*.f64 (*.f64 6 y) z)) (*.f64 (*.f64 6 (-.f64 y x)) z)))
(if (<=.f64 z -5424414065052671/32768) (*.f64 6 (*.f64 (-.f64 y x) z)) (if (<=.f64 z 5097320048860267/9444732965739290427392) (+.f64 x (*.f64 z (*.f64 y 6))) (*.f64 (*.f64 (-.f64 y x) 6) z)))
(if (<=.f64 z -5424414065052671/32768) (*.f64 (-.f64 y x) (*.f64 6 z)) (if (<=.f64 z 5097320048860267/9444732965739290427392) (+.f64 x (*.f64 (*.f64 6 y) z)) (*.f64 (*.f64 6 (-.f64 y x)) z)))
(if (<=.f64 z -5424414065052671/32768) (*.f64 (-.f64 y x) (*.f64 6 z)) (if (<=.f64 z 5097320048860267/9444732965739290427392) (+.f64 x (*.f64 z (*.f64 y 6))) (*.f64 (*.f64 (-.f64 y x) 6) z)))
(if (<=.f64 z -3228977328463599/274877906944) (*.f64 (-.f64 y x) (*.f64 6 z)) (if (<=.f64 z 4455654780649223/5070602400912917605986812821504) (+.f64 (*.f64 -6 (*.f64 z x)) x) (*.f64 (*.f64 6 (-.f64 y x)) z)))
(if (<=.f64 z -3228977328463599/274877906944) (*.f64 (-.f64 y x) (*.f64 6 z)) (if (<=.f64 z 4455654780649223/5070602400912917605986812821504) (+.f64 x (*.f64 -6 (*.f64 x z))) (*.f64 (*.f64 (-.f64 y x) 6) z)))
(if (<=.f64 z -3228977328463599/274877906944) (*.f64 (-.f64 y x) (*.f64 6 z)) (if (<=.f64 z 4455654780649223/5070602400912917605986812821504) (*.f64 (+.f64 (*.f64 -6 z) 1) x) (*.f64 (*.f64 6 (-.f64 y x)) z)))
(if (<=.f64 z -3228977328463599/274877906944) (*.f64 (-.f64 y x) (*.f64 6 z)) (if (<=.f64 z 4455654780649223/5070602400912917605986812821504) (*.f64 x (+.f64 (*.f64 z -6) 1)) (*.f64 (*.f64 (-.f64 y x) 6) z)))
(if (<=.f64 z -3228977328463599/274877906944) (*.f64 (-.f64 y x) (*.f64 6 z)) (if (<=.f64 z 4455654780649223/5070602400912917605986812821504) (*.f64 (+.f64 (*.f64 -6 z) 1) x) (*.f64 (-.f64 y x) (*.f64 6 z))))
(if (<=.f64 z -3228977328463599/274877906944) (*.f64 (-.f64 y x) (*.f64 6 z)) (if (<=.f64 z 4455654780649223/5070602400912917605986812821504) (*.f64 x (+.f64 (*.f64 z -6) 1)) (*.f64 (-.f64 y x) (*.f64 6 z))))
(if (<=.f64 z -8988320474362987/431359146674410236714672241392314090778194310760649159697657763987456) (*.f64 (-.f64 y x) (*.f64 6 z)) (if (<=.f64 z 4455654780649223/5070602400912917605986812821504) x (*.f64 (-.f64 y x) (*.f64 6 z))))
(if (<=.f64 z -687339527257814272/4294967296) (*.f64 -6 (*.f64 z x)) (if (<=.f64 z 5097320048860267/9444732965739290427392) x (if (<=.f64 z 319999999999999994192278630028793851670964830858501479934668747836770321740161705542585709580580405640427470848) (*.f64 (*.f64 -6 x) z) (*.f64 6 (*.f64 y z)))))
(if (<=.f64 z -2684920028350837/16777216) (*.f64 -6 (*.f64 x z)) (if (<=.f64 z 5097320048860267/9444732965739290427392) x (if (<=.f64 z 319999999999999994192278630028793851670964830858501479934668747836770321740161705542585709580580405640427470848) (*.f64 z (*.f64 x -6)) (*.f64 6 (*.f64 y z)))))
(if (<=.f64 z -687339527257814272/4294967296) (*.f64 -6 (*.f64 z x)) (if (<=.f64 z 5097320048860267/9444732965739290427392) x (if (<=.f64 z 319999999999999994192278630028793851670964830858501479934668747836770321740161705542585709580580405640427470848) (*.f64 (*.f64 -6 x) z) (*.f64 y (*.f64 6 z)))))
(if (<=.f64 z -2684920028350837/16777216) (*.f64 -6 (*.f64 x z)) (if (<=.f64 z 5097320048860267/9444732965739290427392) x (if (<=.f64 z 319999999999999994192278630028793851670964830858501479934668747836770321740161705542585709580580405640427470848) (*.f64 z (*.f64 x -6)) (*.f64 y (*.f64 6 z)))))
(if (<=.f64 z -687339527257814272/4294967296) (*.f64 x (*.f64 -6 z)) (if (<=.f64 z 5097320048860267/9444732965739290427392) x (if (<=.f64 z 319999999999999994192278630028793851670964830858501479934668747836770321740161705542585709580580405640427470848) (*.f64 (*.f64 -6 x) z) (*.f64 y (*.f64 6 z)))))
(if (<=.f64 z -2684920028350837/16777216) (*.f64 x (*.f64 z -6)) (if (<=.f64 z 5097320048860267/9444732965739290427392) x (if (<=.f64 z 319999999999999994192278630028793851670964830858501479934668747836770321740161705542585709580580405640427470848) (*.f64 z (*.f64 x -6)) (*.f64 y (*.f64 6 z)))))
(if (<=.f64 z -687339527257814272/4294967296) (*.f64 (*.f64 -6 x) z) (if (<=.f64 z 5097320048860267/9444732965739290427392) x (if (<=.f64 z 319999999999999994192278630028793851670964830858501479934668747836770321740161705542585709580580405640427470848) (*.f64 (*.f64 -6 x) z) (*.f64 y (*.f64 6 z)))))
(if (<=.f64 z -2684920028350837/16777216) (*.f64 z (*.f64 x -6)) (if (<=.f64 z 5097320048860267/9444732965739290427392) x (if (<=.f64 z 319999999999999994192278630028793851670964830858501479934668747836770321740161705542585709580580405640427470848) (*.f64 z (*.f64 x -6)) (*.f64 y (*.f64 6 z)))))
(if (<=.f64 z -8988320474362987/431359146674410236714672241392314090778194310760649159697657763987456) (*.f64 y (*.f64 6 z)) (if (<=.f64 z 4455654780649223/5070602400912917605986812821504) x (*.f64 y (*.f64 6 z))))
x
Compiler

Compiled 403 to 263 computations (34.7% saved)

soundness156.0ms (1.7%)

Algorithm
egg-herbie
Rules
764×fma-def_binary64
522×fma-neg_binary64
141×cancel-sign-sub-inv_binary64
119×distribute-rgt-in_binary64
106×unsub-neg_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0913
11611
23711
39311
421911
541511
659911
794911
8156511
9214311
10260111
11266511
12266711
13266711
Stop Event
saturated
Compiler

Compiled 35 to 23 computations (34.3% saved)

end283.0ms (3.2%)

Compiler

Compiled 358 to 205 computations (42.7% saved)

Profiling

Loading profile data...