Details

Time bar (total: 8.2s)

analyze580.0ms (7.1%)

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)

sample129.0ms (1.6%)

Algorithm
intervals
Results
11.0ms174×body128valid
10.0ms30×body2048valid
7.0ms25×body1024valid
4.0ms10×body4096valid
2.0ms12×body512valid
2.0ms25×body128nan
1.0ms13×body128invalid
1.0msbody256valid
Compiler

Compiled 44 to 32 computations (27.3% saved)

simplify350.0ms (4.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
33.0b
Counts
3 → 2
Alt Table
StatusErrorProgram
33.0b
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))) (*.f64 3 a))
33.1b
(*.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)

localize9.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.4b
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))) (*.f64 3 a))
1.0b
(-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c))
1.3b
(+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c))))
22.6b
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))

series205.0ms (2.5%)

Counts
4 → 96
Calls

4 calls:

92.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))))
45.0ms
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))
11.0ms
(-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c))

rewrite30.0ms (0.4%)

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:

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

simplify124.0ms (1.5%)

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

prune158.0ms (1.9%)

Pruning

13 alts after pruning (13 fresh and 0 done)

PrunedKeptTotal
New19512207
Fresh011
Picked101
Done000
Total19613209
Error
4.7b
Counts
209 → 13
Alt Table
StatusErrorProgram
33.9b
(/.f64 (exp.f64 (log.f64 (-.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) b))) (*.f64 3 a))
52.4b
(/.f64 (fma.f64 (/.f64 (*.f64 c a) b) -3/2 (fma.f64 (/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b 5)) -27/16 (*.f64 (/.f64 (*.f64 (*.f64 c a) (*.f64 c a)) (pow.f64 b 3)) -9/8))) (*.f64 3 a))
32.0b
(/.f64 (/.f64 (-.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) b) 3) a)
42.3b
(fma.f64 1/2 (/.f64 c b) (*.f64 (/.f64 b a) -2/3))
41.7b
(*.f64 -1/2 (/.f64 c b))
33.1b
(*.f64 (-.f64 (sqrt.f64 (fma.f64 a (*.f64 c -3) (*.f64 b b))) b) (/.f64 1/3 a))
42.1b
(/.f64 (*.f64 -2 b) (*.f64 3 a))
38.4b
(/.f64 (+.f64 (neg.f64 b) (exp.f64 (log.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)))) (*.f64 3 a))
33.1b
(/.f64 (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))) 3) a)
42.2b
(*.f64 -2/3 (/.f64 b a))
32.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))
43.9b
(*.f64 1/3 (/.f64 (sqrt.f64 (neg.f64 (*.f64 3 (*.f64 c a)))) a))
31.9b
(/.f64 (-.f64 b (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)) (*.f64 a -3))
Compiler

Compiled 5813 to 3440 computations (40.8% saved)

localize9.0ms (0.1%)

Local error

Found 4 expressions with local error:

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

series527.0ms (6.5%)

Counts
4 → 48
Calls

4 calls:

308.0ms
(/.f64 (-.f64 b (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)) (*.f64 a -3))
191.0ms
(-.f64 b (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b))
22.0ms
(sqrt.f64 (*.f64 c (*.f64 a -3)))
6.0ms
(*.f64 c (*.f64 a -3))

rewrite21.0ms (0.3%)

Algorithm
rewrite-expression-head
Rules
21×*-un-lft-identity_binary64
21×add-sqr-sqrt_binary64
15×add-cube-cbrt_binary64
15×pow1_binary64
14×add-cbrt-cube_binary64
Counts
4 → 94
Calls

4 calls:

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

simplify101.0ms (1.2%)

Algorithm
egg-herbie
Rules
514×fma-def_binary64
342×associate-*l/_binary64
283×fma-neg_binary64
230×cancel-sign-sub-inv_binary64
163×associate-*r*_binary64
Counts
142 → 188
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02453322
16102818
222192647
349672641
449682641

prune146.0ms (1.8%)

Pruning

13 alts after pruning (12 fresh and 1 done)

PrunedKeptTotal
New1853188
Fresh3912
Picked011
Done000
Total18813201
Error
2.7b
Counts
201 → 13
Alt Table
StatusErrorProgram
33.1b
(/.f64 (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))) 3) a)
46.8b
(/.f64 (-.f64 b (hypot.f64 (*.f64 (sqrt.f64 c) (sqrt.f64 (*.f64 a -3))) b)) (*.f64 a -3))
43.9b
(*.f64 1/3 (/.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) a))
41.7b
(*.f64 -1/2 (/.f64 c b))
33.1b
(*.f64 (-.f64 (sqrt.f64 (fma.f64 a (*.f64 c -3) (*.f64 b b))) b) (/.f64 1/3 a))
32.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))
42.3b
(fma.f64 (/.f64 (*.f64 -3 c) b) -1/6 (*.f64 (/.f64 b a) -2/3))
42.1b
(/.f64 (*.f64 -2 b) (*.f64 3 a))
52.4b
(/.f64 (fma.f64 (/.f64 (*.f64 c a) b) -3/2 (fma.f64 (/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b 5)) -27/16 (*.f64 (/.f64 (*.f64 (*.f64 c a) (*.f64 c a)) (pow.f64 b 3)) -9/8))) (*.f64 3 a))
38.4b
(/.f64 (+.f64 (neg.f64 b) (exp.f64 (log.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)))) (*.f64 3 a))
32.0b
(/.f64 (/.f64 (-.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) b) 3) a)
42.2b
(*.f64 -2/3 (/.f64 b a))
31.9b
(/.f64 (-.f64 b (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)) (*.f64 a -3))
Compiler

Compiled 5391 to 3504 computations (35% saved)

localize9.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(/.f64 (/.f64 (-.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) b) 3) a)
0.2b
(*.f64 c (*.f64 a -3))
0.7b
(-.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) b)
13.0b
(sqrt.f64 (*.f64 c (*.f64 a -3)))

series455.0ms (5.6%)

Counts
2 → 24
Calls

2 calls:

283.0ms
(/.f64 (/.f64 (-.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) b) 3) a)
171.0ms
(-.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) b)

rewrite25.0ms (0.3%)

Algorithm
rewrite-expression-head
Rules
117×times-frac_binary64
92×*-un-lft-identity_binary64
92×add-sqr-sqrt_binary64
66×add-cube-cbrt_binary64
19×associate-/l*_binary64
Counts
2 → 127
Calls

2 calls:

7.0ms
(/.f64 (/.f64 (-.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) b) 3) a)
3.0ms
(-.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) b)

simplify182.0ms (2.2%)

Algorithm
egg-herbie
Rules
521×fma-def_binary64
337×fma-neg_binary64
330×cancel-sign-sub-inv_binary64
286×div-sub_binary64
270×neg-mul-1_binary64
Counts
151 → 243
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
03395782
18115144
225015078
343035071
449065071

prune234.0ms (2.9%)

Pruning

11 alts after pruning (10 fresh and 1 done)

PrunedKeptTotal
New2884292
Fresh5611
Picked101
Done011
Total29411305
Error
2.6b
Counts
305 → 11
Alt Table
StatusErrorProgram
43.9b
(*.f64 1/3 (/.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) a))
41.7b
(*.f64 -1/2 (/.f64 c b))
33.1b
(*.f64 (-.f64 (sqrt.f64 (fma.f64 a (*.f64 c -3) (*.f64 b b))) b) (/.f64 1/3 a))
32.0b
(*.f64 (/.f64 1 (*.f64 (cbrt.f64 3) (cbrt.f64 3))) (/.f64 (/.f64 (-.f64 (hypot.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b) b) (cbrt.f64 3)) a))
42.3b
(fma.f64 (/.f64 (*.f64 -3 c) b) -1/6 (*.f64 (/.f64 b a) -2/3))
48.1b
(exp.f64 (-.f64 (log.f64 (/.f64 (-.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) b) 3)) (log.f64 a)))
42.1b
(/.f64 (/.f64 (*.f64 -2 b) 3) a)
52.4b
(/.f64 (fma.f64 (/.f64 (*.f64 c a) b) -3/2 (fma.f64 (/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b 5)) -27/16 (*.f64 (/.f64 (*.f64 (*.f64 c a) (*.f64 c a)) (pow.f64 b 3)) -9/8))) (*.f64 3 a))
46.8b
(/.f64 (/.f64 (-.f64 (hypot.f64 (*.f64 (sqrt.f64 c) (sqrt.f64 (*.f64 -3 a))) b) b) 3) a)
42.2b
(*.f64 -2/3 (/.f64 b a))
31.9b
(/.f64 (-.f64 b (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)) (*.f64 a -3))
Compiler

Compiled 8701 to 5510 computations (36.7% saved)

localize14.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(/.f64 (-.f64 (hypot.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b) b) (cbrt.f64 3))
0.2b
(*.f64 -3 (*.f64 c a))
0.7b
(-.f64 (hypot.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b) b)
13.0b
(sqrt.f64 (*.f64 -3 (*.f64 c a)))

series445.0ms (5.5%)

Counts
4 → 24
Calls

4 calls:

243.0ms
(/.f64 (-.f64 (hypot.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b) b) (cbrt.f64 3))
170.0ms
(-.f64 (hypot.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b) b)
26.0ms
(sqrt.f64 (*.f64 -3 (*.f64 c a)))
5.0ms
(*.f64 -3 (*.f64 c a))

rewrite24.0ms (0.3%)

Algorithm
rewrite-expression-head
Rules
48×*-un-lft-identity_binary64
48×add-sqr-sqrt_binary64
32×add-cube-cbrt_binary64
30×times-frac_binary64
18×cbrt-prod_binary64
Counts
4 → 122
Calls

4 calls:

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

simplify146.0ms (1.8%)

Algorithm
egg-herbie
Rules
506×fma-def_binary64
384×fma-neg_binary64
307×associate-*l/_binary64
275×cancel-sign-sub-inv_binary64
227×associate-/r/_binary64
Counts
146 → 174
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02684362
16083720
220383660
347643660
449813660
549203660

prune167.0ms (2%)

Pruning

11 alts after pruning (9 fresh and 2 done)

PrunedKeptTotal
New1731174
Fresh189
Picked011
Done011
Total17411185
Error
2.6b
Counts
185 → 11
Alt Table
StatusErrorProgram
43.9b
(*.f64 1/3 (/.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) a))
41.7b
(*.f64 -1/2 (/.f64 c b))
33.1b
(*.f64 (-.f64 (sqrt.f64 (fma.f64 a (*.f64 c -3) (*.f64 b b))) b) (/.f64 1/3 a))
32.0b
(*.f64 (/.f64 1 (*.f64 (cbrt.f64 3) (cbrt.f64 3))) (/.f64 (/.f64 (-.f64 (hypot.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b) b) (cbrt.f64 3)) a))
42.3b
(fma.f64 (/.f64 (*.f64 -3 c) b) -1/6 (*.f64 (/.f64 b a) -2/3))
48.1b
(exp.f64 (-.f64 (log.f64 (/.f64 (-.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) b) 3)) (log.f64 a)))
42.1b
(/.f64 (/.f64 (*.f64 -2 b) 3) a)
52.4b
(/.f64 (fma.f64 (/.f64 (*.f64 c a) b) -3/2 (fma.f64 (/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b 5)) -27/16 (*.f64 (/.f64 (*.f64 (*.f64 c a) (*.f64 c a)) (pow.f64 b 3)) -9/8))) (*.f64 3 a))
46.8b
(/.f64 (/.f64 (-.f64 (hypot.f64 (*.f64 (sqrt.f64 c) (sqrt.f64 (*.f64 -3 a))) b) b) 3) a)
31.9b
(/.f64 (-.f64 b (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)) (*.f64 a -3))
42.2b
(*.f64 (/.f64 1 (*.f64 (cbrt.f64 3) (cbrt.f64 3))) (/.f64 (/.f64 (*.f64 -2 b) (cbrt.f64 3)) a))
Compiler

Compiled 6600 to 4690 computations (28.9% saved)

regimes2.2s (26.5%)

Accuracy

Total 7.9b remaining (72.5%)

Threshold costs 0b (0%)

Counts
104 → 5
Compiler

Compiled 11381 to 8190 computations (28% saved)

bsearch149.0ms (1.8%)

Steps
ItersRangePoint
9
4.776015378910846e-53
1.0834101923941394e-43
3.0301703971888995e-45
9
3.2359481583204323e-81
2.7656155080322435e-74
1.579289878984042e-78
9
2.1274064195080037e-148
1.2780114457606662e-142
1.2626367882715619e-142
9
-5.9019355413215405e+115
-1.8680124251966107e+109
-1.3971509965545484e+115
Compiler

Compiled 4 to 3 computations (25% saved)

simplify6.0ms (0.1%)

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

Useful iterations: 1 (0.0ms)

IterNodesCost
037102
15598
27398
38298
48898
59098
68898

end1.0ms (0%)

Compiler

Compiled 69 to 45 computations (34.8% saved)

sample1.7s (21.3%)

Algorithm
intervals
Results
391.0ms1150×body2048valid
367.0ms5173×body128valid
182.0ms695×body1024valid
172.0ms431×body4096valid
72.0ms358×body512valid
43.0ms691×body128nan
26.0ms414×body128invalid
23.0ms193×body256valid
Compiler

Compiled 295 to 211 computations (28.5% saved)

Profiling

Loading profile data...