Details

Time bar (total: 6.9s)

analyze414.0ms (6%)

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.7s (39.7%)

Results
1.1s3817×body256valid
725.0ms1489×body512valid
445.0ms2950×body128valid
360.0ms903×body128invalid
Compiler

Compiled 106 to 76 computations (28.3% saved)

simplify259.0ms (3.7%)

Algorithm
egg-herbie
Rules
1743×fma-neg_binary64
1393×fma-def_binary64
800×div-sub_binary64
619×times-frac_binary64
473×associate-/r/_binary64
Counts
1 → 2
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01526
13322
26722
313822
420422
533822
655822
792422
8138822
9160422
10237522
11274222
12253322
13262122
14317122
15331322
16387322
17367922
18402922
19431722
20448522
21456122
22480522
23479322
24479722
25479722
26494822

prune4.0ms (0.1%)

Pruning

3 alts after pruning (3 fresh and 0 done)

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

Compiled 111 to 74 computations (33.3% saved)

localize10.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))
0.1b
(-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))
0.1b
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a))
25.3b
(+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))

series131.0ms (1.9%)

Counts
4 → 96
Calls

4 calls:

56.0ms
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a))
37.0ms
(+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))
28.0ms
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))
9.0ms
(-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))

rewrite29.0ms (0.4%)

Algorithm
rewrite-expression-head
Rules
22×*-un-lft-identity_binary64
11×add-sqr-sqrt_binary64
10×add-log-exp_binary64
10×fma-def_binary64
10×add-cube-cbrt_binary64
Counts
4 → 90
Calls

4 calls:

10.0ms
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a))
7.0ms
(+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))
3.0ms
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))
3.0ms
(-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))

simplify118.0ms (1.7%)

Algorithm
egg-herbie
Rules
701×fma-neg_binary64
314×cancel-sign-sub-inv_binary64
215×distribute-rgt-neg-in_binary64
159×associate-*r*_binary64
150×distribute-rgt-neg-out_binary64
Counts
186 → 206
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02434178
16953846
225123724
346923704
450313704

prune143.0ms (2.1%)

Pruning

10 alts after pruning (10 fresh and 0 done)

PrunedKeptTotal
New19610206
Fresh101
Picked101
Done000
Total19810208
Error
0.3b
Counts
208 → 10
Alt Table
StatusErrorProgram
51.5b
(/.f64 (/.f64 (-.f64 (*.f64 (neg.f64 b) (neg.f64 b)) (*.f64 (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) (*.f64 2 a))
2.9b
(/.f64 (-.f64 (*.f64 -2 (+.f64 (/.f64 (*.f64 c a) b) (/.f64 (*.f64 (*.f64 c a) (*.f64 c a)) (pow.f64 b 3)))) (fma.f64 4 (/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b 5)) (*.f64 10 (/.f64 (*.f64 (pow.f64 c 4) (pow.f64 a 4)) (pow.f64 b 7))))) (*.f64 2 a))
51.4b
(/.f64 (+.f64 (pow.f64 (neg.f64 b) 3) (pow.f64 (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))) 3)) (*.f64 (*.f64 2 a) (+.f64 (*.f64 (neg.f64 b) (neg.f64 b)) (-.f64 (*.f64 (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))))))
51.4b
(/.f64 (cbrt.f64 (*.f64 (*.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))))) (*.f64 2 a))
51.4b
(/.f64 (+.f64 (neg.f64 b) (*.f64 (fabs.f64 (cbrt.f64 (fma.f64 (*.f64 c a) -4 (*.f64 b b)))) (sqrt.f64 (cbrt.f64 (fma.f64 (*.f64 c a) -4 (*.f64 b b)))))) (*.f64 2 a))
2.6b
(neg.f64 (fma.f64 2 (/.f64 (*.f64 (*.f64 a a) (pow.f64 c 3)) (pow.f64 b 5)) (fma.f64 5 (/.f64 (*.f64 (pow.f64 a 3) (pow.f64 c 4)) (pow.f64 b 7)) (+.f64 (/.f64 c b) (/.f64 (*.f64 c (*.f64 c a)) (pow.f64 b 3))))))
2.9b
(/.f64 (neg.f64 (+.f64 (*.f64 2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 10 (/.f64 (*.f64 (pow.f64 c 4) (pow.f64 a 4)) (pow.f64 b 7))) (*.f64 4 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))))))) (*.f64 2 a))
50.3b
(/.f64 (fma.f64 (sqrt.f64 b) (neg.f64 (sqrt.f64 b)) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a))
51.4b
(*.f64 (/.f64 (*.f64 (cbrt.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) (cbrt.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))))) 2) (/.f64 (cbrt.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) a))
51.4b
(cbrt.f64 (*.f64 (*.f64 (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a))))
Compiler

Compiled 6220 to 3650 computations (41.3% saved)

localize25.0ms (0.4%)

Local error

Found 4 expressions with local error:

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

series271.0ms (3.9%)

Counts
4 → 132
Calls

4 calls:

103.0ms
(/.f64 (*.f64 (*.f64 a a) (pow.f64 c 3)) (pow.f64 b 5))
93.0ms
(/.f64 (*.f64 (pow.f64 a 3) (pow.f64 c 4)) (pow.f64 b 7))
62.0ms
(/.f64 (*.f64 c (*.f64 c a)) (pow.f64 b 3))
13.0ms
(*.f64 (*.f64 a a) (pow.f64 c 3))

rewrite41.0ms (0.6%)

Algorithm
rewrite-expression-head
Rules
156×add-exp-log_binary64
72×prod-exp_binary64
60×div-exp_binary64
46×pow-exp_binary64
46×pow-to-exp_binary64
Counts
4 → 194
Calls

4 calls:

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

simplify127.0ms (1.8%)

Algorithm
egg-herbie
Rules
538×unswap-sqr_binary64
407×times-frac_binary64
382×associate-/l*_binary64
271×associate-*l*_binary64
237×associate-*r*_binary64
Counts
326 → 224
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02935430
16445027
233784964
349424964

prune372.0ms (5.4%)

Pruning

10 alts after pruning (9 fresh and 1 done)

PrunedKeptTotal
New2240224
Fresh099
Picked011
Done000
Total22410234
Error
0.3b
Counts
234 → 10
Alt Table
StatusErrorProgram
51.5b
(/.f64 (/.f64 (-.f64 (*.f64 (neg.f64 b) (neg.f64 b)) (*.f64 (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) (*.f64 2 a))
2.9b
(/.f64 (-.f64 (*.f64 -2 (+.f64 (/.f64 (*.f64 c a) b) (/.f64 (*.f64 (*.f64 c a) (*.f64 c a)) (pow.f64 b 3)))) (fma.f64 4 (/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b 5)) (*.f64 10 (/.f64 (*.f64 (pow.f64 c 4) (pow.f64 a 4)) (pow.f64 b 7))))) (*.f64 2 a))
51.4b
(/.f64 (+.f64 (pow.f64 (neg.f64 b) 3) (pow.f64 (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))) 3)) (*.f64 (*.f64 2 a) (+.f64 (*.f64 (neg.f64 b) (neg.f64 b)) (-.f64 (*.f64 (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))))))
51.4b
(/.f64 (cbrt.f64 (*.f64 (*.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))))) (*.f64 2 a))
51.4b
(/.f64 (+.f64 (neg.f64 b) (*.f64 (fabs.f64 (cbrt.f64 (fma.f64 (*.f64 c a) -4 (*.f64 b b)))) (sqrt.f64 (cbrt.f64 (fma.f64 (*.f64 c a) -4 (*.f64 b b)))))) (*.f64 2 a))
2.6b
(neg.f64 (fma.f64 2 (/.f64 (*.f64 (*.f64 a a) (pow.f64 c 3)) (pow.f64 b 5)) (fma.f64 5 (/.f64 (*.f64 (pow.f64 a 3) (pow.f64 c 4)) (pow.f64 b 7)) (+.f64 (/.f64 c b) (/.f64 (*.f64 c (*.f64 c a)) (pow.f64 b 3))))))
2.9b
(/.f64 (neg.f64 (+.f64 (*.f64 2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 10 (/.f64 (*.f64 (pow.f64 c 4) (pow.f64 a 4)) (pow.f64 b 7))) (*.f64 4 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))))))) (*.f64 2 a))
50.3b
(/.f64 (fma.f64 (sqrt.f64 b) (neg.f64 (sqrt.f64 b)) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a))
51.4b
(*.f64 (/.f64 (*.f64 (cbrt.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) (cbrt.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))))) 2) (/.f64 (cbrt.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) a))
51.4b
(cbrt.f64 (*.f64 (*.f64 (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a))))
Compiler

Compiled 11228 to 6646 computations (40.8% saved)

localize25.0ms (0.4%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.3b
(/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b 5))
0.4b
(/.f64 (*.f64 (*.f64 c a) (*.f64 c a)) (pow.f64 b 3))
0.5b
(*.f64 (*.f64 c a) (*.f64 c a))
0.8b
(pow.f64 (*.f64 c a) 3)

series182.0ms (2.6%)

Counts
4 → 120
Calls

4 calls:

92.0ms
(/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b 5))
67.0ms
(/.f64 (*.f64 (*.f64 c a) (*.f64 c a)) (pow.f64 b 3))
13.0ms
(pow.f64 (*.f64 c a) 3)
10.0ms
(*.f64 (*.f64 c a) (*.f64 c a))

rewrite37.0ms (0.5%)

Algorithm
rewrite-expression-head
Rules
88×add-exp-log_binary64
68×times-frac_binary64
46×pow1_binary64
42×unpow-prod-down_binary64
39×add-cbrt-cube_binary64
Counts
4 → 213
Calls

4 calls:

8.0ms
(/.f64 (*.f64 (*.f64 c a) (*.f64 c a)) (pow.f64 b 3))
5.0ms
(/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b 5))
5.0ms
(*.f64 (*.f64 c a) (*.f64 c a))
4.0ms
(pow.f64 (*.f64 c a) 3)

simplify145.0ms (2.1%)

Algorithm
egg-herbie
Rules
506×unswap-sqr_binary64
466×times-frac_binary64
437×associate-/l*_binary64
329×log-div_binary64
211×associate-/r*_binary64
Counts
333 → 235
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02525256
14514597
231524443
347004443
451564443

prune405.0ms (5.8%)

Pruning

10 alts after pruning (8 fresh and 2 done)

PrunedKeptTotal
New2350235
Fresh088
Picked011
Done011
Total23510245
Error
0.3b
Counts
245 → 10
Alt Table
StatusErrorProgram
51.5b
(/.f64 (/.f64 (-.f64 (*.f64 (neg.f64 b) (neg.f64 b)) (*.f64 (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) (*.f64 2 a))
2.9b
(/.f64 (-.f64 (*.f64 -2 (+.f64 (/.f64 (*.f64 c a) b) (/.f64 (*.f64 (*.f64 c a) (*.f64 c a)) (pow.f64 b 3)))) (fma.f64 4 (/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b 5)) (*.f64 10 (/.f64 (*.f64 (pow.f64 c 4) (pow.f64 a 4)) (pow.f64 b 7))))) (*.f64 2 a))
51.4b
(/.f64 (+.f64 (pow.f64 (neg.f64 b) 3) (pow.f64 (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))) 3)) (*.f64 (*.f64 2 a) (+.f64 (*.f64 (neg.f64 b) (neg.f64 b)) (-.f64 (*.f64 (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))))))
51.4b
(/.f64 (cbrt.f64 (*.f64 (*.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))))) (*.f64 2 a))
51.4b
(/.f64 (+.f64 (neg.f64 b) (*.f64 (fabs.f64 (cbrt.f64 (fma.f64 (*.f64 c a) -4 (*.f64 b b)))) (sqrt.f64 (cbrt.f64 (fma.f64 (*.f64 c a) -4 (*.f64 b b)))))) (*.f64 2 a))
2.6b
(neg.f64 (fma.f64 2 (/.f64 (*.f64 (*.f64 a a) (pow.f64 c 3)) (pow.f64 b 5)) (fma.f64 5 (/.f64 (*.f64 (pow.f64 a 3) (pow.f64 c 4)) (pow.f64 b 7)) (+.f64 (/.f64 c b) (/.f64 (*.f64 c (*.f64 c a)) (pow.f64 b 3))))))
2.9b
(/.f64 (neg.f64 (+.f64 (*.f64 2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 10 (/.f64 (*.f64 (pow.f64 c 4) (pow.f64 a 4)) (pow.f64 b 7))) (*.f64 4 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))))))) (*.f64 2 a))
50.3b
(/.f64 (fma.f64 (sqrt.f64 b) (neg.f64 (sqrt.f64 b)) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a))
51.4b
(*.f64 (/.f64 (*.f64 (cbrt.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) (cbrt.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))))) 2) (/.f64 (cbrt.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) a))
51.4b
(cbrt.f64 (*.f64 (*.f64 (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a))))
Compiler

Compiled 13912 to 7974 computations (42.7% saved)

localize31.0ms (0.5%)

Local error

Found 4 expressions with local error:

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

series186.0ms (2.7%)

Counts
4 → 0
Calls

4 calls:

88.0ms
(/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))
69.0ms
(/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))
18.0ms
(*.f64 (pow.f64 c 3) (pow.f64 a 3))
11.0ms
(*.f64 (pow.f64 c 2) (pow.f64 a 2))

rewrite44.0ms (0.6%)

Algorithm
rewrite-expression-head
Rules
146×add-exp-log_binary64
72×prod-exp_binary64
68×pow-exp_binary64
68×pow-to-exp_binary64
64×add-sqr-sqrt_binary64
Counts
4 → 242
Calls

4 calls:

8.0ms
(*.f64 (pow.f64 c 3) (pow.f64 a 3))
7.0ms
(/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))
6.0ms
(/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))
6.0ms
(*.f64 (pow.f64 c 2) (pow.f64 a 2))

simplify128.0ms (1.8%)

Algorithm
egg-herbie
Rules
776×associate-/r/_binary64
289×associate-*l*_binary64
270×associate-*r*_binary64
268×associate-/l*_binary64
259×times-frac_binary64
Counts
242 → 242
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02754029
15283649
228673469
349273469
449423469

prune439.0ms (6.3%)

Pruning

10 alts after pruning (7 fresh and 3 done)

PrunedKeptTotal
New2420242
Fresh077
Picked011
Done022
Total24210252
Error
0.3b
Counts
252 → 10
Alt Table
StatusErrorProgram
51.5b
(/.f64 (/.f64 (-.f64 (*.f64 (neg.f64 b) (neg.f64 b)) (*.f64 (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) (*.f64 2 a))
2.9b
(/.f64 (-.f64 (*.f64 -2 (+.f64 (/.f64 (*.f64 c a) b) (/.f64 (*.f64 (*.f64 c a) (*.f64 c a)) (pow.f64 b 3)))) (fma.f64 4 (/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b 5)) (*.f64 10 (/.f64 (*.f64 (pow.f64 c 4) (pow.f64 a 4)) (pow.f64 b 7))))) (*.f64 2 a))
51.4b
(/.f64 (+.f64 (pow.f64 (neg.f64 b) 3) (pow.f64 (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))) 3)) (*.f64 (*.f64 2 a) (+.f64 (*.f64 (neg.f64 b) (neg.f64 b)) (-.f64 (*.f64 (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))))))
51.4b
(/.f64 (cbrt.f64 (*.f64 (*.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))))) (*.f64 2 a))
51.4b
(/.f64 (+.f64 (neg.f64 b) (*.f64 (fabs.f64 (cbrt.f64 (fma.f64 (*.f64 c a) -4 (*.f64 b b)))) (sqrt.f64 (cbrt.f64 (fma.f64 (*.f64 c a) -4 (*.f64 b b)))))) (*.f64 2 a))
2.6b
(neg.f64 (fma.f64 2 (/.f64 (*.f64 (*.f64 a a) (pow.f64 c 3)) (pow.f64 b 5)) (fma.f64 5 (/.f64 (*.f64 (pow.f64 a 3) (pow.f64 c 4)) (pow.f64 b 7)) (+.f64 (/.f64 c b) (/.f64 (*.f64 c (*.f64 c a)) (pow.f64 b 3))))))
2.9b
(/.f64 (neg.f64 (+.f64 (*.f64 2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 10 (/.f64 (*.f64 (pow.f64 c 4) (pow.f64 a 4)) (pow.f64 b 7))) (*.f64 4 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))))))) (*.f64 2 a))
50.3b
(/.f64 (fma.f64 (sqrt.f64 b) (neg.f64 (sqrt.f64 b)) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a))
51.4b
(*.f64 (/.f64 (*.f64 (cbrt.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) (cbrt.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))))) 2) (/.f64 (cbrt.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) a))
51.4b
(cbrt.f64 (*.f64 (*.f64 (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a))))
Compiler

Compiled 15029 to 10586 computations (29.6% saved)

regimes337.0ms (4.9%)

Accuracy

Total 1.5b remaining (86.2%)

Threshold costs 0b (0%)

Counts
72 → 1
Compiler

Compiled 8929 to 6095 computations (31.7% 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
02859
13759
23959
34059
44059

end270.0ms (3.9%)

Compiler

Compiled 562 to 363 computations (35.4% saved)

Profiling

Loading profile data...