Details

Time bar (total: 7.8s)

analyze381.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.2s (28.3%)

Results
1.1s3058×body256valid
866.0ms5198×body128valid
146.0ms847×body128invalid
Compiler

Compiled 106 to 76 computations (28.3% saved)

simplify351.0ms (4.5%)

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%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
45.5b
Counts
3 → 2
Alt Table
StatusErrorProgram
45.5b
(*.f64 (-.f64 (sqrt.f64 (fma.f64 a (*.f64 c -3) (*.f64 b b))) b) (/.f64 1/3 a))
45.5b
(/.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.3b
(/.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)
38.7b
(+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c))))

series168.0ms (2.1%)

Counts
4 → 100
Calls

4 calls:

96.0ms
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))) (*.f64 3 a))
55.0ms
(+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c))))
11.0ms
(-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c))
5.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:

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

simplify114.0ms (1.5%)

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

prune144.0ms (1.8%)

Pruning

12 alts after pruning (12 fresh and 0 done)

PrunedKeptTotal
New17512187
Fresh101
Picked101
Done000
Total17712189
Error
0.4b
Counts
189 → 12
Alt Table
StatusErrorProgram
45.4b
(/.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 (*.f64 3 a) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c))))))
45.4b
(/.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))
45.5b
(/.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.7b
(/.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))
45.5b
(cbrt.f64 (/.f64 (*.f64 (*.f64 (+.f64 (neg.f64 b) (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 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c))))) (*.f64 (*.f64 (*.f64 3 3) 3) (*.f64 (*.f64 a a) a))))
45.5b
(/.f64 (*.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)))))) (cbrt.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))))) (*.f64 3 a))
45.5b
(*.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))))
3.5b
(/.f64 (fma.f64 -3/2 (/.f64 (*.f64 c a) b) (fma.f64 (/.f64 (*.f64 (*.f64 c a) (*.f64 c a)) (pow.f64 b 3)) -9/8 (/.f64 -27/16 (/.f64 (pow.f64 b 5) (pow.f64 (*.f64 c a) 3))))) (*.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)))))))
45.9b
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (exp.f64 (log.f64 (fma.f64 (*.f64 c a) -3 (*.f64 b b)))))) (*.f64 3 a))
44.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))
45.4b
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3))))) (*.f64 3 a))
Compiler

Compiled 5690 to 3346 computations (41.2% saved)

localize29.0ms (0.4%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.3b
(/.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))
0.4b
(/.f64 (*.f64 (pow.f64 a 3) (pow.f64 c 4)) (pow.f64 b 7))
0.4b
(*.f64 (pow.f64 a 3) (pow.f64 c 4))

series328.0ms (4.2%)

Counts
4 → 132
Calls

4 calls:

127.0ms
(/.f64 (*.f64 (pow.f64 a 3) (pow.f64 c 4)) (pow.f64 b 7))
102.0ms
(/.f64 (*.f64 (*.f64 a a) (pow.f64 c 3)) (pow.f64 b 5))
74.0ms
(/.f64 (*.f64 c (*.f64 c a)) (pow.f64 b 3))
24.0ms
(*.f64 (pow.f64 a 3) (pow.f64 c 4))

rewrite44.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:

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

simplify168.0ms (2.1%)

Algorithm
egg-herbie
Rules
465×times-frac_binary64
407×associate-/l*_binary64
343×associate-*l*_binary64
299×associate-*r*_binary64
267×associate-/r*_binary64
Counts
342 → 241
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03115722
16685365
239335329
349565329
450755329

prune398.0ms (5.1%)

Pruning

12 alts after pruning (11 fresh and 1 done)

PrunedKeptTotal
New2410241
Fresh01111
Picked011
Done000
Total24112253
Error
0.4b
Counts
253 → 12
Alt Table
StatusErrorProgram
45.4b
(/.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 (*.f64 3 a) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c))))))
45.4b
(/.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))
45.5b
(/.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.7b
(/.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))
45.5b
(cbrt.f64 (/.f64 (*.f64 (*.f64 (+.f64 (neg.f64 b) (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 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c))))) (*.f64 (*.f64 (*.f64 3 3) 3) (*.f64 (*.f64 a a) a))))
45.5b
(/.f64 (*.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)))))) (cbrt.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))))) (*.f64 3 a))
45.5b
(*.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))))
3.5b
(/.f64 (fma.f64 -3/2 (/.f64 (*.f64 c a) b) (fma.f64 (/.f64 (*.f64 (*.f64 c a) (*.f64 c a)) (pow.f64 b 3)) -9/8 (/.f64 -27/16 (/.f64 (pow.f64 b 5) (pow.f64 (*.f64 c a) 3))))) (*.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)))))))
45.9b
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (exp.f64 (log.f64 (fma.f64 (*.f64 c a) -3 (*.f64 b b)))))) (*.f64 3 a))
44.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))
45.4b
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3))))) (*.f64 3 a))
Compiler

Compiled 12946 to 7979 computations (38.4% saved)

localize28.0ms (0.4%)

Local error

Found 4 expressions with local error:

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

series247.0ms (3.2%)

Counts
4 → 84
Calls

4 calls:

115.0ms
(/.f64 (*.f64 (pow.f64 c 4) (pow.f64 a 4)) (pow.f64 b 7))
106.0ms
(/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b 5))
14.0ms
(pow.f64 (*.f64 c a) 3)
12.0ms
(*.f64 (*.f64 c a) (*.f64 c a))

rewrite37.0ms (0.5%)

Algorithm
rewrite-expression-head
Rules
98×add-exp-log_binary64
63×times-frac_binary64
46×pow1_binary64
42×div-exp_binary64
42×unpow-prod-down_binary64
Counts
4 → 215
Calls

4 calls:

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

simplify142.0ms (1.8%)

Algorithm
egg-herbie
Rules
441×unswap-sqr_binary64
397×log-prod_binary64
350×associate-/l*_binary64
261×times-frac_binary64
204×log-div_binary64
Counts
299 → 224
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02714661
14904203
226144055
343804055
451274055

prune355.0ms (4.5%)

Pruning

12 alts after pruning (10 fresh and 2 done)

PrunedKeptTotal
New2240224
Fresh01010
Picked011
Done011
Total22412236
Error
0.4b
Counts
236 → 12
Alt Table
StatusErrorProgram
45.4b
(/.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 (*.f64 3 a) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c))))))
45.4b
(/.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))
45.5b
(/.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.7b
(/.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))
45.5b
(cbrt.f64 (/.f64 (*.f64 (*.f64 (+.f64 (neg.f64 b) (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 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c))))) (*.f64 (*.f64 (*.f64 3 3) 3) (*.f64 (*.f64 a a) a))))
45.5b
(/.f64 (*.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)))))) (cbrt.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))))) (*.f64 3 a))
45.5b
(*.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))))
3.5b
(/.f64 (fma.f64 -3/2 (/.f64 (*.f64 c a) b) (fma.f64 (/.f64 (*.f64 (*.f64 c a) (*.f64 c a)) (pow.f64 b 3)) -9/8 (/.f64 -27/16 (/.f64 (pow.f64 b 5) (pow.f64 (*.f64 c a) 3))))) (*.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)))))))
45.9b
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (exp.f64 (log.f64 (fma.f64 (*.f64 c a) -3 (*.f64 b b)))))) (*.f64 3 a))
44.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))
45.4b
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3))))) (*.f64 3 a))
Compiler

Compiled 13625 to 7918 computations (41.9% saved)

localize17.0ms (0.2%)

Local error

Found 4 expressions with local error:

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

series276.0ms (3.5%)

Counts
2 → 72
Calls

2 calls:

149.0ms
(/.f64 (pow.f64 b 5) (pow.f64 (*.f64 c a) 3))
127.0ms
(/.f64 (fma.f64 -3/2 (/.f64 (*.f64 c a) b) (fma.f64 (/.f64 (*.f64 (*.f64 c a) (*.f64 c a)) (pow.f64 b 3)) -9/8 (/.f64 -27/16 (/.f64 (pow.f64 b 5) (pow.f64 (*.f64 c a) 3))))) (*.f64 3 a))

rewrite19.0ms (0.2%)

Algorithm
rewrite-expression-head
Rules
59×times-frac_binary64
35×unpow-prod-down_binary64
30×*-un-lft-identity_binary64
30×add-sqr-sqrt_binary64
30×add-cube-cbrt_binary64
Counts
2 → 119
Calls

2 calls:

5.0ms
(/.f64 (pow.f64 b 5) (pow.f64 (*.f64 c a) 3))
3.0ms
(/.f64 (fma.f64 -3/2 (/.f64 (*.f64 c a) b) (fma.f64 (/.f64 (*.f64 (*.f64 c a) (*.f64 c a)) (pow.f64 b 3)) -9/8 (/.f64 -27/16 (/.f64 (pow.f64 b 5) (pow.f64 (*.f64 c a) 3))))) (*.f64 3 a))

simplify128.0ms (1.6%)

Algorithm
egg-herbie
Rules
603×associate-*l/_binary64
500×associate-*r/_binary64
406×associate-/r/_binary64
241×associate-/r*_binary64
198×times-frac_binary64
Counts
191 → 157
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02285552
14335189
218685006
350775006

prune322.0ms (4.1%)

Pruning

14 alts after pruning (12 fresh and 2 done)

PrunedKeptTotal
New2143217
Fresh099
Picked101
Done022
Total21514229
Error
0.4b
Counts
229 → 14
Alt Table
StatusErrorProgram
45.4b
(/.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 (*.f64 3 a) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c))))))
45.4b
(/.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))
45.5b
(/.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.7b
(/.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))
45.5b
(cbrt.f64 (/.f64 (*.f64 (*.f64 (+.f64 (neg.f64 b) (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 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c))))) (*.f64 (*.f64 (*.f64 3 3) 3) (*.f64 (*.f64 a a) a))))
45.5b
(/.f64 (*.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)))))) (cbrt.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))))) (*.f64 3 a))
3.5b
(*.f64 (fma.f64 -3/2 (/.f64 (*.f64 c a) b) (fma.f64 (/.f64 (*.f64 (*.f64 c a) (*.f64 c a)) (pow.f64 b 3)) -9/8 (/.f64 -27/16 (/.f64 (pow.f64 b 5) (pow.f64 (*.f64 c a) 3))))) (/.f64 1/3 a))
44.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))
45.4b
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3))))) (*.f64 3 a))
3.7b
(cbrt.f64 (/.f64 (*.f64 (*.f64 (fma.f64 -3/2 (/.f64 (*.f64 c a) b) (fma.f64 (/.f64 (*.f64 (*.f64 c a) (*.f64 c a)) (pow.f64 b 3)) -9/8 (/.f64 -27/16 (/.f64 (pow.f64 b 5) (pow.f64 (*.f64 c a) 3))))) (fma.f64 -3/2 (/.f64 (*.f64 c a) b) (fma.f64 (/.f64 (*.f64 (*.f64 c a) (*.f64 c a)) (pow.f64 b 3)) -9/8 (/.f64 -27/16 (/.f64 (pow.f64 b 5) (pow.f64 (*.f64 c a) 3)))))) (fma.f64 -3/2 (/.f64 (*.f64 c a) b) (fma.f64 (/.f64 (*.f64 (*.f64 c a) (*.f64 c a)) (pow.f64 b 3)) -9/8 (/.f64 -27/16 (/.f64 (pow.f64 b 5) (pow.f64 (*.f64 c a) 3)))))) (*.f64 (*.f64 (*.f64 3 3) 3) (*.f64 (*.f64 a a) 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)))))))
45.9b
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (exp.f64 (log.f64 (fma.f64 (*.f64 c a) -3 (*.f64 b b)))))) (*.f64 3 a))
3.5b
(*.f64 1/3 (/.f64 (fma.f64 -3/2 (*.f64 (/.f64 c b) a) (fma.f64 (pow.f64 (*.f64 c a) 3) (/.f64 -27/16 (pow.f64 b 5)) (*.f64 (*.f64 (/.f64 (*.f64 a (*.f64 c c)) (pow.f64 b 3)) a) -9/8))) a))
45.5b
(*.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))))
Compiler

Compiled 10435 to 5377 computations (48.5% saved)

regimes1.1s (14.1%)

Accuracy

Total 2.4b remaining (86%)

Threshold costs 0b (0%)

Counts
147 → 1
Compiler

Compiled 29798 to 19196 computations (35.6% saved)

simplify3.0ms (0%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
03263
14163
24363
34463
44463

end760.0ms (9.7%)

Compiler

Compiled 769 to 483 computations (37.2% saved)

Profiling

Loading profile data...