Details

Time bar (total: 10.8s)

analyze621.0ms (5.7%)

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
25%74.9%0.1%5
25%74.9%0.1%6
25%68.6%6.4%7
31.2%62.4%6.4%8
36.7%54.6%8.7%9
38.2%48.4%13.4%10
42.7%42.3%15%11
47.8%34.1%18.1%12
49.1%30.3%20.5%13
51.9%25.8%22.3%14
Compiler

Compiled 21 to 15 computations (28.6% saved)

sample135.0ms (1.2%)

Algorithm
intervals
Results
11.0ms166×body128valid
11.0ms35×body2048valid
7.0ms19×body1024valid
6.0ms16×body4096valid
3.0ms17×body512valid
1.0ms13×body128nan
1.0ms11×body128invalid
0.0msbody256valid
Compiler

Compiled 44 to 32 computations (27.3% saved)

simplify362.0ms (3.3%)

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
35.6b
Counts
3 → 2
Alt Table
StatusErrorProgram
35.7b
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))) (*.f64 3 a))
35.7b
(*.f64 (-.f64 (sqrt.f64 (fma.f64 a (*.f64 c -3) (*.f64 b b))) b) (/.f64 1/3 a))
Compiler

Compiled 111 to 74 computations (33.3% saved)

localize10.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))) (*.f64 3 a))
0.6b
(+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c))))
1.0b
(-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c))
23.1b
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))

series215.0ms (2%)

Counts
4 → 96
Calls

4 calls:

97.0ms
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))) (*.f64 3 a))
58.0ms
(+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c))))
49.0ms
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))
10.0ms
(-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c))

rewrite30.0ms (0.3%)

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

4 calls:

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

simplify123.0ms (1.1%)

Algorithm
egg-herbie
Rules
683×fma-neg_binary64
340×cancel-sign-sub-inv_binary64
242×distribute-rgt-neg-in_binary64
156×associate-*r*_binary64
151×distribute-rgt-neg-out_binary64
Counts
186 → 207
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02594286
17163943
225283797
347003771
450263771

prune171.0ms (1.6%)

Pruning

12 alts after pruning (12 fresh and 0 done)

PrunedKeptTotal
New19512207
Fresh101
Picked101
Done000
Total19712209
Error
6.2b
Counts
209 → 12
Alt Table
StatusErrorProgram
35.7b
(*.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))) (/.f64 1 (*.f64 3 a)))
39.1b
(/.f64 (+.f64 (neg.f64 b) (exp.f64 (log.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)))) (*.f64 3 a))
35.7b
(*.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))) (/.f64 1/3 a))
57.0b
(/.f64 (+.f64 (neg.f64 b) b) (*.f64 3 a))
36.5b
(/.f64 (+.f64 (neg.f64 b) (*.f64 (sqrt.f64 (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))) (sqrt.f64 (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))))) (*.f64 3 a))
47.6b
(/.f64 (fma.f64 (/.f64 (*.f64 (*.f64 c a) (*.f64 c a)) (pow.f64 b 3)) -9/8 (*.f64 (/.f64 (*.f64 c a) b) -3/2)) (*.f64 3 a))
34.1b
(*.f64 (/.f64 (sqrt.f64 (-.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) b)) 3) (/.f64 (sqrt.f64 (-.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) b)) a))
45.6b
(fma.f64 1/2 (/.f64 c b) (*.f64 (/.f64 b a) -2/3))
43.9b
(fma.f64 (/.f64 (*.f64 c (*.f64 c a)) (pow.f64 b 3)) -3/8 (*.f64 -1/2 (/.f64 c b)))
40.1b
(*.f64 -1/2 (/.f64 c b))
40.2b
(/.f64 (sqrt.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c))))) (/.f64 3 (/.f64 (sqrt.f64 (-.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) b)) a)))
45.4b
(/.f64 (*.f64 -2 b) (*.f64 3 a))
Compiler

Compiled 5841 to 3456 computations (40.8% saved)

localize13.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(*.f64 (/.f64 (sqrt.f64 (-.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) b)) 3) (/.f64 (sqrt.f64 (-.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) b)) a))
0.2b
(*.f64 c (*.f64 a -3))
0.4b
(-.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) b)
14.1b
(sqrt.f64 (*.f64 c (*.f64 a -3)))

series497.0ms (4.6%)

Counts
4 → 48
Calls

4 calls:

293.0ms
(*.f64 (/.f64 (sqrt.f64 (-.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) b)) 3) (/.f64 (sqrt.f64 (-.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) b)) a))
177.0ms
(-.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) b)
23.0ms
(sqrt.f64 (*.f64 c (*.f64 a -3)))
5.0ms
(*.f64 c (*.f64 a -3))

rewrite53.0ms (0.5%)

Algorithm
rewrite-expression-head
Rules
87×add-sqr-sqrt_binary64
60×times-frac_binary64
57×*-un-lft-identity_binary64
43×add-cube-cbrt_binary64
37×sqrt-prod_binary64
Counts
4 → 151
Calls

4 calls:

21.0ms
(*.f64 (/.f64 (sqrt.f64 (-.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) b)) 3) (/.f64 (sqrt.f64 (-.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) b)) a))
5.0ms
(-.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) b)
4.0ms
(*.f64 c (*.f64 a -3))
3.0ms
(sqrt.f64 (*.f64 c (*.f64 a -3)))

simplify186.0ms (1.7%)

Algorithm
egg-herbie
Rules
512×fma-def_binary64
272×fma-neg_binary64
269×cancel-sign-sub-inv_binary64
236×associate-*r*_binary64
223×associate-*l*_binary64
Counts
199 → 258
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
03376145
18635413
230915148
347794954
449774954
548884954

prune353.0ms (3.3%)

Pruning

14 alts after pruning (13 fresh and 1 done)

PrunedKeptTotal
New3673370
Fresh11011
Picked011
Done000
Total36814382
Error
6.2b
Counts
382 → 14
Alt Table
StatusErrorProgram
35.7b
(*.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))) (/.f64 1 (*.f64 3 a)))
39.1b
(/.f64 (+.f64 (neg.f64 b) (exp.f64 (log.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)))) (*.f64 3 a))
45.6b
(fma.f64 (/.f64 (*.f64 -3 c) b) -1/6 (*.f64 (/.f64 b a) -2/3))
34.1b
(*.f64 (/.f64 (sqrt.f64 (-.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) b)) 3) (/.f64 (sqrt.f64 (-.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) b)) a))
35.7b
(*.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))) (/.f64 1/3 a))
57.0b
(/.f64 (+.f64 (neg.f64 b) b) (*.f64 3 a))
36.5b
(/.f64 (+.f64 (neg.f64 b) (*.f64 (sqrt.f64 (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))) (sqrt.f64 (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))))) (*.f64 3 a))
47.6b
(/.f64 (fma.f64 (/.f64 (*.f64 (*.f64 c a) (*.f64 c a)) (pow.f64 b 3)) -9/8 (*.f64 (/.f64 (*.f64 c a) b) -3/2)) (*.f64 3 a))
43.9b
(fma.f64 (/.f64 (*.f64 c (*.f64 c a)) (pow.f64 b 3)) -3/8 (*.f64 -1/2 (/.f64 c b)))
40.1b
(*.f64 -1/2 (/.f64 c b))
40.2b
(/.f64 (sqrt.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c))))) (/.f64 3 (/.f64 (sqrt.f64 (-.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) b)) a)))
49.6b
(*.f64 (/.f64 (sqrt.f64 (-.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) b)) 3) (/.f64 (sqrt.f64 (-.f64 (hypot.f64 (*.f64 (sqrt.f64 c) (sqrt.f64 (*.f64 a -3))) b) b)) a))
45.4b
(/.f64 (*.f64 -2 b) (*.f64 3 a))
40.2b
(*.f64 1/6 (/.f64 (*.f64 -3 c) b))
Compiler

Compiled 14772 to 9641 computations (34.7% saved)

localize11.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(/.f64 1 (*.f64 3 a))
0.6b
(+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c))))
1.0b
(-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c))
23.1b
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))

series2.0ms (0%)

Counts
1 → 12
Calls

1 calls:

2.0ms
(/.f64 1 (*.f64 3 a))

rewrite5.0ms (0%)

Algorithm
rewrite-expression-head
Rules
12×add-exp-log_binary64
add-cbrt-cube_binary64
div-exp_binary64
pow1_binary64
associate-/l*_binary64
Counts
1 → 30
Calls

1 calls:

4.0ms
(/.f64 1 (*.f64 3 a))

simplify98.0ms (0.9%)

Algorithm
egg-herbie
Rules
847×fma-def_binary64
542×fma-neg_binary64
519×fabs-mul_binary64
423×sqr-pow_binary64
412×pow-sqr_binary64
Counts
42 → 41
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
047231
187204
2206204
3455204
4592204
5854204
61622204
72005204
82446204
92753204
103111204
113895204
124649204
134837204

prune160.0ms (1.5%)

Pruning

14 alts after pruning (12 fresh and 2 done)

PrunedKeptTotal
New1810181
Fresh01212
Picked011
Done011
Total18114195
Error
6.2b
Counts
195 → 14
Alt Table
StatusErrorProgram
35.7b
(*.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))) (/.f64 1 (*.f64 3 a)))
39.1b
(/.f64 (+.f64 (neg.f64 b) (exp.f64 (log.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)))) (*.f64 3 a))
45.6b
(fma.f64 (/.f64 (*.f64 -3 c) b) -1/6 (*.f64 (/.f64 b a) -2/3))
34.1b
(*.f64 (/.f64 (sqrt.f64 (-.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) b)) 3) (/.f64 (sqrt.f64 (-.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) b)) a))
35.7b
(*.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))) (/.f64 1/3 a))
57.0b
(/.f64 (+.f64 (neg.f64 b) b) (*.f64 3 a))
36.5b
(/.f64 (+.f64 (neg.f64 b) (*.f64 (sqrt.f64 (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))) (sqrt.f64 (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))))) (*.f64 3 a))
47.6b
(/.f64 (fma.f64 (/.f64 (*.f64 (*.f64 c a) (*.f64 c a)) (pow.f64 b 3)) -9/8 (*.f64 (/.f64 (*.f64 c a) b) -3/2)) (*.f64 3 a))
43.9b
(fma.f64 (/.f64 (*.f64 c (*.f64 c a)) (pow.f64 b 3)) -3/8 (*.f64 -1/2 (/.f64 c b)))
40.1b
(*.f64 -1/2 (/.f64 c b))
40.2b
(/.f64 (sqrt.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c))))) (/.f64 3 (/.f64 (sqrt.f64 (-.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) b)) a)))
49.6b
(*.f64 (/.f64 (sqrt.f64 (-.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) b)) 3) (/.f64 (sqrt.f64 (-.f64 (hypot.f64 (*.f64 (sqrt.f64 c) (sqrt.f64 (*.f64 a -3))) b) b)) a))
45.4b
(/.f64 (*.f64 -2 b) (*.f64 3 a))
40.2b
(*.f64 1/6 (/.f64 (*.f64 -3 c) b))
Compiler

Compiled 5254 to 3260 computations (38% saved)

localize11.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.4b
(/.f64 1/3 a)
0.6b
(+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c))))
1.0b
(-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c))
23.1b
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))

series2.0ms (0%)

Counts
1 → 0
Calls

1 calls:

2.0ms
(/.f64 1/3 a)

rewrite5.0ms (0%)

Algorithm
rewrite-expression-head
Rules
*-un-lft-identity_binary64
times-frac_binary64
add-sqr-sqrt_binary64
add-cube-cbrt_binary64
associate-/r*_binary64
Counts
1 → 29
Calls

1 calls:

2.0ms
(/.f64 1/3 a)

simplify139.0ms (1.3%)

Algorithm
egg-herbie
Rules
826×associate-/r/_binary64
688×*-commutative_binary64
667×associate-*l/_binary64
521×sqr-pow_binary64
416×unswap-sqr_binary64
Counts
29 → 33
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
055281
185263
2139263
3190263
4313263
5429263
6604263
71144263
82174263
92628263
102830263
113019263
123234263
133496263
144158263
154864263
164949263
174906263

prune136.0ms (1.3%)

Pruning

14 alts after pruning (11 fresh and 3 done)

PrunedKeptTotal
New1721173
Fresh11011
Picked011
Done022
Total17314187
Error
6.2b
Counts
187 → 14
Alt Table
StatusErrorProgram
35.7b
(*.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))) (/.f64 1 (*.f64 3 a)))
39.1b
(/.f64 (+.f64 (neg.f64 b) (exp.f64 (log.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)))) (*.f64 3 a))
45.6b
(fma.f64 (/.f64 (*.f64 -3 c) b) -1/6 (*.f64 (/.f64 b a) -2/3))
34.1b
(*.f64 (/.f64 (sqrt.f64 (-.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) b)) 3) (/.f64 (sqrt.f64 (-.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) b)) a))
35.7b
(*.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))) (/.f64 1/3 a))
57.0b
(/.f64 (+.f64 (neg.f64 b) b) (*.f64 3 a))
40.1b
(*.f64 -1/2 (/.f64 c b))
45.3b
(*.f64 (*.f64 (/.f64 (*.f64 c a) b) -3/2) (/.f64 1/3 a))
43.9b
(fma.f64 (/.f64 (*.f64 c (*.f64 c a)) (pow.f64 b 3)) -3/8 (*.f64 -1/2 (/.f64 c b)))
40.2b
(/.f64 (sqrt.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c))))) (/.f64 3 (/.f64 (sqrt.f64 (-.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) b)) a)))
49.6b
(*.f64 (/.f64 (sqrt.f64 (-.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) b)) 3) (/.f64 (sqrt.f64 (-.f64 (hypot.f64 (*.f64 (sqrt.f64 c) (sqrt.f64 (*.f64 a -3))) b) b)) a))
45.4b
(/.f64 (*.f64 -2 b) (*.f64 3 a))
36.5b
(/.f64 (+.f64 (neg.f64 b) (*.f64 (sqrt.f64 (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))) (sqrt.f64 (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))))) (*.f64 3 a))
40.2b
(*.f64 1/6 (/.f64 (*.f64 -3 c) b))
Compiler

Compiled 4544 to 2665 computations (41.4% saved)

regimes5.6s (51.7%)

Accuracy

Total 4.5b remaining (42.5%)

Threshold costs 0b (0%)

Counts
195 → 3
Compiler

Compiled 22753 to 16420 computations (27.8% saved)

bsearch76.0ms (0.7%)

Steps
ItersRangePoint
9
7.887287202447545e-118
2.413147661260739e-112
3.0226493936156176e-114
10
-4.2754358006107786e+150
-9.919316662771207e+140
-1.7974151351567604e+142
Compiler

Compiled 4 to 3 computations (25% saved)

simplify5.0ms (0%)

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

Useful iterations: 1 (0.0ms)

IterNodesCost
02760
14558
26758
38058
48958
59258
69058

end1.0ms (0%)

Compiler

Compiled 42 to 29 computations (31% saved)

sample1.8s (16.7%)

Algorithm
intervals
Results
389.0ms5222×body128valid
383.0ms1147×body2048valid
186.0ms681×body1024valid
173.0ms423×body4096valid
71.0ms366×body512valid
48.0ms667×body128nan
27.0ms374×body128invalid
22.0ms161×body256valid
Compiler

Compiled 342 to 244 computations (28.7% saved)

Profiling

Loading profile data...