Details

Time bar (total: 7.1s)

analyze353.0ms (4.9%)

Algorithm
search
Search
TrueOtherFalseIter
0%0%100%0
0%0%100%1
0%0%100%2
0%0%100%3
0%0%100%4
0%0%100%5
0%0%100%6
0%0%100%7
0%0%100%8
0%0%100%9
0%0%100%10
0%0%100%11
0%0%100%12
0%0%100%13
0%0%100%14
Compiler

Compiled 43 to 31 computations (27.9% saved)

sample2.4s (33%)

Results
1.1s3906×body256valid
617.0ms1536×body512valid
444.0ms2814×body128valid
131.0ms831×body128invalid
Compiler

Compiled 106 to 76 computations (28.3% saved)

simplify348.0ms (4.9%)

Algorithm
egg-herbie
Rules
1968×fma-neg_binary64
1363×fma-def_binary64
898×div-sub_binary64
743×associate-/l*_binary64
567×times-frac_binary64
Counts
1 → 2
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01326
13022
26422
313522
420122
533522
655422
792922
8147722
9211522
10259922
11255422
12260222
13267122
14311722
15232722
16237522
17238322
18238922
19239522
20239722
21239722
22258522
23268522
24261922
25263122
26266122
27267722
28270722
29270722
30275122
31285122
32282722
33282722
34263822

prune4.0ms (0.1%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
50.8b
Counts
3 → 2
Alt Table
StatusErrorProgram
50.8b
(*.f64 (-.f64 (sqrt.f64 (fma.f64 a (*.f64 c -3) (*.f64 b b))) b) (/.f64 1/3 a))
50.8b
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))) (*.f64 3 a))
Compiler

Compiled 111 to 74 computations (33.3% saved)

localize9.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c))
0.2b
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))) (*.f64 3 a))
0.3b
(*.f64 (*.f64 3 a) c)
25.2b
(+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c))))

series109.0ms (1.5%)

Counts
4 → 100
Calls

4 calls:

59.0ms
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))) (*.f64 3 a))
36.0ms
(+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c))))
9.0ms
(-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c))
4.0ms
(*.f64 (*.f64 3 a) c)

rewrite30.0ms (0.4%)

Algorithm
rewrite-expression-head
Rules
22×*-un-lft-identity_binary64
14×add-cbrt-cube_binary64
14×add-exp-log_binary64
10×add-log-exp_binary64
10×add-sqr-sqrt_binary64
Counts
4 → 93
Calls

4 calls:

9.0ms
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))) (*.f64 3 a))
7.0ms
(+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c))))
4.0ms
(*.f64 (*.f64 3 a) c)
3.0ms
(-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c))

simplify112.0ms (1.6%)

Algorithm
egg-herbie
Rules
791×fma-def_binary64
309×fma-neg_binary64
282×cancel-sign-sub-inv_binary64
189×associate-*r*_binary64
182×associate-*l*_binary64
Counts
193 → 187
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02473732
16873410
225793302
348083302
448893302

prune124.0ms (1.7%)

Pruning

10 alts after pruning (10 fresh and 0 done)

PrunedKeptTotal
New17710187
Fresh101
Picked101
Done000
Total17910189
Error
0.3b
Counts
189 → 10
Alt Table
StatusErrorProgram
50.8b
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (+.f64 (fma.f64 b b (neg.f64 (*.f64 c (*.f64 3 a)))) (fma.f64 (neg.f64 c) (*.f64 3 a) (*.f64 c (*.f64 3 a)))))) (*.f64 3 a))
49.9b
(/.f64 (fma.f64 (sqrt.f64 b) (neg.f64 (sqrt.f64 b)) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))) (*.f64 3 a))
2.4b
(neg.f64 (fma.f64 9/16 (/.f64 (*.f64 (*.f64 a a) (pow.f64 c 3)) (pow.f64 b 5)) (fma.f64 135/128 (/.f64 (*.f64 (pow.f64 a 3) (pow.f64 c 4)) (pow.f64 b 7)) (fma.f64 1/2 (/.f64 c b) (*.f64 3/8 (/.f64 (*.f64 c (*.f64 c a)) (pow.f64 b 3)))))))
50.8b
(*.f64 (*.f64 (cbrt.f64 (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))) (*.f64 3 a))) (cbrt.f64 (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))) (*.f64 3 a)))) (cbrt.f64 (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))) (*.f64 3 a))))
50.8b
(cbrt.f64 (*.f64 (*.f64 (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))) (*.f64 3 a)) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))) (*.f64 3 a))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))) (*.f64 3 a))))
2.8b
(/.f64 (-.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (fma.f64 9/8 (/.f64 (*.f64 (*.f64 c a) (*.f64 c a)) (pow.f64 b 3)) (fma.f64 27/16 (/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b 5)) (*.f64 405/128 (/.f64 (*.f64 (pow.f64 c 4) (pow.f64 a 4)) (pow.f64 b 7)))))) (*.f64 3 a))
50.8b
(/.f64 (/.f64 (-.f64 (*.f64 (neg.f64 b) (neg.f64 b)) (*.f64 (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c))) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c))))) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c))))) (*.f64 3 a))
50.9b
(/.f64 (/.f64 (+.f64 (pow.f64 (neg.f64 b) 3) (pow.f64 (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c))) 3)) (+.f64 (*.f64 (neg.f64 b) (neg.f64 b)) (-.f64 (*.f64 (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c))) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))) (*.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c))))))) (*.f64 3 a))
50.8b
(/.f64 (*.f64 (cbrt.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c))))) (cbrt.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))))) (/.f64 (*.f64 3 a) (cbrt.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))))))
50.8b
(*.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))) (/.f64 1/3 a))
Compiler

Compiled 5542 to 3260 computations (41.2% saved)

localize25.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.3b
(*.f64 (pow.f64 a 3) (pow.f64 c 4))
0.3b
(/.f64 (*.f64 (pow.f64 a 3) (pow.f64 c 4)) (pow.f64 b 7))
0.4b
(/.f64 (*.f64 c (*.f64 c a)) (pow.f64 b 3))
0.4b
(/.f64 (*.f64 (*.f64 a a) (pow.f64 c 3)) (pow.f64 b 5))

series263.0ms (3.7%)

Counts
4 → 132
Calls

4 calls:

95.0ms
(/.f64 (*.f64 (pow.f64 a 3) (pow.f64 c 4)) (pow.f64 b 7))
88.0ms
(/.f64 (*.f64 (*.f64 a a) (pow.f64 c 3)) (pow.f64 b 5))
63.0ms
(/.f64 (*.f64 c (*.f64 c a)) (pow.f64 b 3))
17.0ms
(*.f64 (pow.f64 a 3) (pow.f64 c 4))

rewrite43.0ms (0.6%)

Algorithm
rewrite-expression-head
Rules
155×add-exp-log_binary64
72×prod-exp_binary64
60×div-exp_binary64
50×pow-exp_binary64
50×pow-to-exp_binary64
Counts
4 → 210
Calls

4 calls:

9.0ms
(/.f64 (*.f64 (pow.f64 a 3) (pow.f64 c 4)) (pow.f64 b 7))
7.0ms
(/.f64 (*.f64 (*.f64 a a) (pow.f64 c 3)) (pow.f64 b 5))
6.0ms
(*.f64 (pow.f64 a 3) (pow.f64 c 4))
6.0ms
(/.f64 (*.f64 c (*.f64 c a)) (pow.f64 b 3))

simplify158.0ms (2.2%)

Algorithm
egg-herbie
Rules
465×times-frac_binary64
406×associate-/l*_binary64
344×associate-*l*_binary64
300×associate-*r*_binary64
267×associate-/r*_binary64
Counts
342 → 240
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03115722
16685365
239335329
349565329
450755329

prune408.0ms (5.7%)

Pruning

10 alts after pruning (9 fresh and 1 done)

PrunedKeptTotal
New2391240
Fresh189
Picked011
Done000
Total24010250
Error
0.3b
Counts
250 → 10
Alt Table
StatusErrorProgram
50.8b
(/.f64 (*.f64 (cbrt.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c))))) (cbrt.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))))) (/.f64 (*.f64 3 a) (cbrt.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))))))
3.2b
(neg.f64 (fma.f64 9/16 (/.f64 (*.f64 (*.f64 a a) (pow.f64 c 3)) (pow.f64 b 5)) (fma.f64 135/128 (log.f64 (exp.f64 (/.f64 (*.f64 (pow.f64 a 3) (pow.f64 c 4)) (pow.f64 b 7)))) (fma.f64 1/2 (/.f64 c b) (*.f64 3/8 (/.f64 (*.f64 c (*.f64 c a)) (pow.f64 b 3)))))))
2.4b
(neg.f64 (fma.f64 9/16 (/.f64 (*.f64 (*.f64 a a) (pow.f64 c 3)) (pow.f64 b 5)) (fma.f64 135/128 (/.f64 (*.f64 (pow.f64 a 3) (pow.f64 c 4)) (pow.f64 b 7)) (fma.f64 1/2 (/.f64 c b) (*.f64 3/8 (/.f64 (*.f64 c (*.f64 c a)) (pow.f64 b 3)))))))
50.8b
(*.f64 (*.f64 (cbrt.f64 (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))) (*.f64 3 a))) (cbrt.f64 (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))) (*.f64 3 a)))) (cbrt.f64 (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))) (*.f64 3 a))))
50.8b
(cbrt.f64 (*.f64 (*.f64 (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))) (*.f64 3 a)) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))) (*.f64 3 a))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))) (*.f64 3 a))))
2.8b
(/.f64 (-.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (fma.f64 9/8 (/.f64 (*.f64 (*.f64 c a) (*.f64 c a)) (pow.f64 b 3)) (fma.f64 27/16 (/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b 5)) (*.f64 405/128 (/.f64 (*.f64 (pow.f64 c 4) (pow.f64 a 4)) (pow.f64 b 7)))))) (*.f64 3 a))
50.8b
(/.f64 (/.f64 (-.f64 (*.f64 (neg.f64 b) (neg.f64 b)) (*.f64 (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c))) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c))))) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c))))) (*.f64 3 a))
50.9b
(/.f64 (/.f64 (+.f64 (pow.f64 (neg.f64 b) 3) (pow.f64 (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c))) 3)) (+.f64 (*.f64 (neg.f64 b) (neg.f64 b)) (-.f64 (*.f64 (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c))) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))) (*.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c))))))) (*.f64 3 a))
49.9b
(/.f64 (fma.f64 (sqrt.f64 b) (neg.f64 (sqrt.f64 b)) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))) (*.f64 3 a))
50.8b
(*.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))) (/.f64 1/3 a))
Compiler

Compiled 12785 to 7895 computations (38.2% saved)

localize27.0ms (0.4%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.4b
(/.f64 (*.f64 (*.f64 c a) (*.f64 c a)) (pow.f64 b 3))
0.4b
(/.f64 (-.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (fma.f64 9/8 (/.f64 (*.f64 (*.f64 c a) (*.f64 c a)) (pow.f64 b 3)) (fma.f64 27/16 (/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b 5)) (*.f64 405/128 (/.f64 (*.f64 (pow.f64 c 4) (pow.f64 a 4)) (pow.f64 b 7)))))) (*.f64 3 a))
0.5b
(*.f64 (*.f64 c a) (*.f64 c a))
0.7b
(pow.f64 (*.f64 c a) 3)

series153.0ms (2.1%)

Counts
4 → 120
Calls

4 calls:

67.0ms
(/.f64 (*.f64 (*.f64 c a) (*.f64 c a)) (pow.f64 b 3))
63.0ms
(/.f64 (-.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (fma.f64 9/8 (/.f64 (*.f64 (*.f64 c a) (*.f64 c a)) (pow.f64 b 3)) (fma.f64 27/16 (/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b 5)) (*.f64 405/128 (/.f64 (*.f64 (pow.f64 c 4) (pow.f64 a 4)) (pow.f64 b 7)))))) (*.f64 3 a))
11.0ms
(pow.f64 (*.f64 c a) 3)
11.0ms
(*.f64 (*.f64 c a) (*.f64 c a))

rewrite37.0ms (0.5%)

Algorithm
rewrite-expression-head
Rules
73×add-exp-log_binary64
46×pow1_binary64
42×add-cbrt-cube_binary64
34×prod-exp_binary64
18×cbrt-unprod_binary64
Counts
4 → 143
Calls

4 calls:

8.0ms
(/.f64 (*.f64 (*.f64 c a) (*.f64 c a)) (pow.f64 b 3))
7.0ms
(/.f64 (-.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (fma.f64 9/8 (/.f64 (*.f64 (*.f64 c a) (*.f64 c a)) (pow.f64 b 3)) (fma.f64 27/16 (/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b 5)) (*.f64 405/128 (/.f64 (*.f64 (pow.f64 c 4) (pow.f64 a 4)) (pow.f64 b 7)))))) (*.f64 3 a))
5.0ms
(*.f64 (*.f64 c a) (*.f64 c a))
4.0ms
(pow.f64 (*.f64 c a) 3)

simplify123.0ms (1.7%)

Algorithm
egg-herbie
Rules
479×unswap-sqr_binary64
346×times-frac_binary64
303×fma-def_binary64
247×associate-/l*_binary64
192×associate-*l*_binary64
Counts
263 → 186
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02416668
15675509
230875427
349755427

prune307.0ms (4.3%)

Pruning

13 alts after pruning (12 fresh and 1 done)

PrunedKeptTotal
New1824186
Fresh088
Picked101
Done011
Total18313196
Error
0.2b
Counts
196 → 13
Alt Table
StatusErrorProgram
3.6b
(/.f64 (*.f64 (cbrt.f64 (-.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (fma.f64 9/8 (/.f64 (*.f64 (*.f64 c a) (*.f64 c a)) (pow.f64 b 3)) (fma.f64 27/16 (/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b 5)) (*.f64 405/128 (/.f64 (*.f64 (pow.f64 c 4) (pow.f64 a 4)) (pow.f64 b 7))))))) (cbrt.f64 (-.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (fma.f64 9/8 (/.f64 (*.f64 (*.f64 c a) (*.f64 c a)) (pow.f64 b 3)) (fma.f64 27/16 (/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b 5)) (*.f64 405/128 (/.f64 (*.f64 (pow.f64 c 4) (pow.f64 a 4)) (pow.f64 b 7)))))))) (/.f64 3 (/.f64 (cbrt.f64 (-.f64 (*.f64 -3/2 (*.f64 (/.f64 c b) a)) (fma.f64 (/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3)) 9/8 (fma.f64 27/16 (/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b 5)) (*.f64 405/128 (/.f64 (pow.f64 (*.f64 c a) 4) (pow.f64 b 7))))))) a)))
50.8b
(*.f64 (*.f64 (cbrt.f64 (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))) (*.f64 3 a))) (cbrt.f64 (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))) (*.f64 3 a)))) (cbrt.f64 (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))) (*.f64 3 a))))
2.8b
(/.f64 1 (/.f64 3 (/.f64 (-.f64 (*.f64 -3/2 (*.f64 (/.f64 c b) a)) (fma.f64 (/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3)) 9/8 (fma.f64 27/16 (/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b 5)) (*.f64 405/128 (/.f64 (pow.f64 (*.f64 c a) 4) (pow.f64 b 7)))))) a)))
50.8b
(/.f64 (/.f64 (-.f64 (*.f64 (neg.f64 b) (neg.f64 b)) (*.f64 (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c))) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c))))) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c))))) (*.f64 3 a))
50.8b
(/.f64 (*.f64 (cbrt.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c))))) (cbrt.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))))) (/.f64 (*.f64 3 a) (cbrt.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))))))
3.2b
(neg.f64 (fma.f64 9/16 (/.f64 (*.f64 (*.f64 a a) (pow.f64 c 3)) (pow.f64 b 5)) (fma.f64 135/128 (log.f64 (exp.f64 (/.f64 (*.f64 (pow.f64 a 3) (pow.f64 c 4)) (pow.f64 b 7)))) (fma.f64 1/2 (/.f64 c b) (*.f64 3/8 (/.f64 (*.f64 c (*.f64 c a)) (pow.f64 b 3)))))))
2.4b
(neg.f64 (fma.f64 9/16 (/.f64 (*.f64 (*.f64 a a) (pow.f64 c 3)) (pow.f64 b 5)) (fma.f64 135/128 (/.f64 (*.f64 (pow.f64 a 3) (pow.f64 c 4)) (pow.f64 b 7)) (fma.f64 1/2 (/.f64 c b) (*.f64 3/8 (/.f64 (*.f64 c (*.f64 c a)) (pow.f64 b 3)))))))
3.0b
(cbrt.f64 (pow.f64 (/.f64 (-.f64 (*.f64 -3/2 (*.f64 (/.f64 c b) a)) (fma.f64 (/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3)) 9/8 (fma.f64 27/16 (/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b 5)) (*.f64 405/128 (/.f64 (pow.f64 (*.f64 c a) 4) (pow.f64 b 7)))))) (*.f64 3 a)) 3))
50.8b
(cbrt.f64 (*.f64 (*.f64 (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))) (*.f64 3 a)) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))) (*.f64 3 a))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))) (*.f64 3 a))))
50.9b
(/.f64 (/.f64 (+.f64 (pow.f64 (neg.f64 b) 3) (pow.f64 (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c))) 3)) (+.f64 (*.f64 (neg.f64 b) (neg.f64 b)) (-.f64 (*.f64 (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c))) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))) (*.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c))))))) (*.f64 3 a))
2.8b
(-.f64 (/.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 3 a)) (/.f64 (fma.f64 9/8 (/.f64 (*.f64 (*.f64 c a) (*.f64 c a)) (pow.f64 b 3)) (fma.f64 27/16 (/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b 5)) (*.f64 405/128 (/.f64 (*.f64 (pow.f64 c 4) (pow.f64 a 4)) (pow.f64 b 7))))) (*.f64 3 a)))
49.9b
(/.f64 (fma.f64 (sqrt.f64 b) (neg.f64 (sqrt.f64 b)) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))) (*.f64 3 a))
50.8b
(*.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))) (/.f64 1/3 a))
Compiler

Compiled 12450 to 7352 computations (40.9% saved)

localize27.0ms (0.4%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.4b
(/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3))
0.5b
(pow.f64 (*.f64 c a) 2)
0.7b
(pow.f64 (*.f64 c a) 3)
0.9b
(pow.f64 (*.f64 c a) 4)

series88.0ms (1.2%)

Counts
3 → 84
Calls

3 calls:

67.0ms
(/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3))
14.0ms
(pow.f64 (*.f64 c a) 4)
7.0ms
(pow.f64 (*.f64 c a) 2)

rewrite22.0ms (0.3%)

Algorithm
rewrite-expression-head
Rules
72×times-frac_binary64
39×*-un-lft-identity_binary64
39×add-sqr-sqrt_binary64
39×add-cube-cbrt_binary64
36×unpow-prod-down_binary64
Counts
3 → 154
Calls

3 calls:

6.0ms
(/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3))
4.0ms
(pow.f64 (*.f64 c a) 2)
2.0ms
(pow.f64 (*.f64 c a) 4)

simplify118.0ms (1.7%)

Algorithm
egg-herbie
Rules
796×associate-*l*_binary64
592×associate-/l/_binary64
437×associate-*l/_binary64
379×associate-*r/_binary64
254×associate-/r/_binary64
Counts
238 → 158
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01873660
12723309
211633251
349693251
450003251

prune330.0ms (4.6%)

Pruning

13 alts after pruning (11 fresh and 2 done)

PrunedKeptTotal
New1840184
Fresh01111
Picked011
Done011
Total18413197
Error
0.2b
Counts
197 → 13
Alt Table
StatusErrorProgram
3.6b
(/.f64 (*.f64 (cbrt.f64 (-.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (fma.f64 9/8 (/.f64 (*.f64 (*.f64 c a) (*.f64 c a)) (pow.f64 b 3)) (fma.f64 27/16 (/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b 5)) (*.f64 405/128 (/.f64 (*.f64 (pow.f64 c 4) (pow.f64 a 4)) (pow.f64 b 7))))))) (cbrt.f64 (-.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (fma.f64 9/8 (/.f64 (*.f64 (*.f64 c a) (*.f64 c a)) (pow.f64 b 3)) (fma.f64 27/16 (/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b 5)) (*.f64 405/128 (/.f64 (*.f64 (pow.f64 c 4) (pow.f64 a 4)) (pow.f64 b 7)))))))) (/.f64 3 (/.f64 (cbrt.f64 (-.f64 (*.f64 -3/2 (*.f64 (/.f64 c b) a)) (fma.f64 (/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3)) 9/8 (fma.f64 27/16 (/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b 5)) (*.f64 405/128 (/.f64 (pow.f64 (*.f64 c a) 4) (pow.f64 b 7))))))) a)))
50.8b
(*.f64 (*.f64 (cbrt.f64 (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))) (*.f64 3 a))) (cbrt.f64 (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))) (*.f64 3 a)))) (cbrt.f64 (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))) (*.f64 3 a))))
2.8b
(/.f64 1 (/.f64 3 (/.f64 (-.f64 (*.f64 -3/2 (*.f64 (/.f64 c b) a)) (fma.f64 (/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3)) 9/8 (fma.f64 27/16 (/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b 5)) (*.f64 405/128 (/.f64 (pow.f64 (*.f64 c a) 4) (pow.f64 b 7)))))) a)))
50.8b
(/.f64 (/.f64 (-.f64 (*.f64 (neg.f64 b) (neg.f64 b)) (*.f64 (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c))) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c))))) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c))))) (*.f64 3 a))
50.8b
(/.f64 (*.f64 (cbrt.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c))))) (cbrt.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))))) (/.f64 (*.f64 3 a) (cbrt.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))))))
3.2b
(neg.f64 (fma.f64 9/16 (/.f64 (*.f64 (*.f64 a a) (pow.f64 c 3)) (pow.f64 b 5)) (fma.f64 135/128 (log.f64 (exp.f64 (/.f64 (*.f64 (pow.f64 a 3) (pow.f64 c 4)) (pow.f64 b 7)))) (fma.f64 1/2 (/.f64 c b) (*.f64 3/8 (/.f64 (*.f64 c (*.f64 c a)) (pow.f64 b 3)))))))
2.4b
(neg.f64 (fma.f64 9/16 (/.f64 (*.f64 (*.f64 a a) (pow.f64 c 3)) (pow.f64 b 5)) (fma.f64 135/128 (/.f64 (*.f64 (pow.f64 a 3) (pow.f64 c 4)) (pow.f64 b 7)) (fma.f64 1/2 (/.f64 c b) (*.f64 3/8 (/.f64 (*.f64 c (*.f64 c a)) (pow.f64 b 3)))))))
3.0b
(cbrt.f64 (pow.f64 (/.f64 (-.f64 (*.f64 -3/2 (*.f64 (/.f64 c b) a)) (fma.f64 (/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3)) 9/8 (fma.f64 27/16 (/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b 5)) (*.f64 405/128 (/.f64 (pow.f64 (*.f64 c a) 4) (pow.f64 b 7)))))) (*.f64 3 a)) 3))
50.8b
(cbrt.f64 (*.f64 (*.f64 (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))) (*.f64 3 a)) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))) (*.f64 3 a))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))) (*.f64 3 a))))
50.9b
(/.f64 (/.f64 (+.f64 (pow.f64 (neg.f64 b) 3) (pow.f64 (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c))) 3)) (+.f64 (*.f64 (neg.f64 b) (neg.f64 b)) (-.f64 (*.f64 (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c))) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))) (*.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c))))))) (*.f64 3 a))
2.8b
(-.f64 (/.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 3 a)) (/.f64 (fma.f64 9/8 (/.f64 (*.f64 (*.f64 c a) (*.f64 c a)) (pow.f64 b 3)) (fma.f64 27/16 (/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b 5)) (*.f64 405/128 (/.f64 (*.f64 (pow.f64 c 4) (pow.f64 a 4)) (pow.f64 b 7))))) (*.f64 3 a)))
49.9b
(/.f64 (fma.f64 (sqrt.f64 b) (neg.f64 (sqrt.f64 b)) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))) (*.f64 3 a))
50.8b
(*.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))) (/.f64 1/3 a))
Compiler

Compiled 10705 to 6625 computations (38.1% saved)

regimes1.1s (16.1%)

Accuracy

Total 1.3b remaining (85%)

Threshold costs 0b (0%)

Counts
97 → 1
Compiler

Compiled 24700 to 16475 computations (33.3% saved)

simplify2.0ms (0%)

Algorithm
egg-herbie
Rules
*-commutative_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
03161
13561
23561

end420.0ms (5.9%)

Compiler

Compiled 808 to 529 computations (34.5% saved)

Profiling

Loading profile data...