Details

Time bar (total: 15.0s)

analyze1.6s (10.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
0%99.9%0.1%5
0%99.9%0.1%6
0%93.6%6.4%7
0%93.6%6.4%8
0%91.3%8.7%9
0%86.6%13.4%10
0%85.8%14.2%11
0%83.1%16.9%12
0%80.6%19.4%13
0%79.4%20.6%14
Compiler

Compiled 21 to 15 computations (28.6% saved)

sample2.9s (19.1%)

Results
788.0ms5361×body128valid
672.0ms1145×body2048valid
360.0ms406×body8192exit
324.0ms712×body1024valid
279.0ms418×body4096valid
152.0ms422×body512valid
135.0ms923×body128invalid
48.0ms198×body256valid
Compiler

Compiled 41 to 29 computations (29.3% saved)

simplify352.0ms (2.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
34.7b
Counts
3 → 2
Alt Table
StatusErrorProgram
34.9b
(*.f64 (-.f64 (sqrt.f64 (fma.f64 a (*.f64 c -3) (*.f64 b b))) b) (/.f64 1/3 a))
34.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)

localize12.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(*.f64 (*.f64 3 a) c)
0.8b
(-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c))
1.2b
(+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c))))
24.7b
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))

series122.0ms (0.8%)

Counts
4 → 100
Calls

4 calls:

58.0ms
(+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c))))
46.0ms
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))
13.0ms
(-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c))
5.0ms
(*.f64 (*.f64 3 a) c)

rewrite24.0ms (0.2%)

Algorithm
rewrite-expression-head
Rules
13×*-un-lft-identity_binary64
10×fma-def_binary64
10×add-sqr-sqrt_binary64
10×add-log-exp_binary64
10×pow1_binary64
Counts
4 → 80
Calls

4 calls:

7.0ms
(+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c))))
7.0ms
(*.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))

simplify128.0ms (0.9%)

Algorithm
egg-herbie
Rules
677×fma-def_binary64
621×fma-neg_binary64
305×cancel-sign-sub-inv_binary64
228×distribute-rgt-neg-in_binary64
197×distribute-lft-neg-in_binary64
Counts
180 → 168
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02012955
15232836
218062732
345182728
449982728
549192728

prune154.0ms (1%)

Pruning

16 alts after pruning (16 fresh and 0 done)

PrunedKeptTotal
New15315168
Fresh011
Picked101
Done000
Total15416170
Error
14.7b
Counts
170 → 16
Alt Table
StatusErrorProgram
34.9b
(/.f64 (exp.f64 (log.f64 (-.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) b))) (*.f64 3 a))
56.7b
(/.f64 (+.f64 (neg.f64 b) b) (*.f64 3 a))
35.9b
(/.f64 (fma.f64 (*.f64 (cbrt.f64 b) (cbrt.f64 b)) (neg.f64 (cbrt.f64 b)) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))) (*.f64 3 a))
44.1b
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (*.f64 -3 (*.f64 c a)))) (*.f64 3 a))
34.9b
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 (*.f64 3 a) (*.f64 (cbrt.f64 c) (cbrt.f64 c))) (cbrt.f64 c))))) (*.f64 3 a))
49.8b
(/.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))
35.2b
(/.f64 (+.f64 (neg.f64 b) (*.f64 (sqrt.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)) (sqrt.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)))) (*.f64 3 a))
46.8b
(/.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 3 a))
33.4b
(/.f64 (*.f64 (*.f64 (cbrt.f64 (-.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) b)) (cbrt.f64 (-.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) b))) (cbrt.f64 (-.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) b))) (*.f64 3 a))
34.9b
(*.f64 (-.f64 (sqrt.f64 (fma.f64 a (*.f64 c -3) (*.f64 b b))) b) (/.f64 1/3 a))
35.2b
(/.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))
38.6b
(/.f64 (+.f64 (neg.f64 b) (exp.f64 (log.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)))) (*.f64 3 a))
40.8b
(/.f64 (cbrt.f64 (pow.f64 (-.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) b) 3)) (*.f64 3 a))
54.1b
(/.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))
48.7b
(/.f64 (*.f64 -2 b) (*.f64 3 a))
36.0b
(/.f64 (/.f64 (*.f64 3 (*.f64 c a)) (-.f64 (neg.f64 b) (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b))) (*.f64 3 a))
Compiler

Compiled 4912 to 2898 computations (41% saved)

localize15.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.3b
(cbrt.f64 (-.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) b))
0.3b
(*.f64 (cbrt.f64 (-.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) b)) (cbrt.f64 (-.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) b)))
0.4b
(-.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) b)
15.5b
(sqrt.f64 (*.f64 c (*.f64 a -3)))

series2.6s (17.3%)

Counts
4 → 36
Calls

4 calls:

1.7s
(*.f64 (cbrt.f64 (-.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) b)) (cbrt.f64 (-.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) b)))
730.0ms
(cbrt.f64 (-.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) b))
175.0ms
(-.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) b)
24.0ms
(sqrt.f64 (*.f64 c (*.f64 a -3)))

rewrite32.0ms (0.2%)

Algorithm
rewrite-expression-head
Rules
41×add-sqr-sqrt_binary64
39×*-un-lft-identity_binary64
33×cbrt-prod_binary64
21×add-cube-cbrt_binary64
17×pow1_binary64
Counts
4 → 119
Calls

4 calls:

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

simplify175.0ms (1.2%)

Algorithm
egg-herbie
Rules
806×fma-def_binary64
410×cancel-sign-sub-inv_binary64
255×fma-neg_binary64
237×associate-*r*_binary64
195×unswap-sqr_binary64
Counts
155 → 241
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03396491
17885778
228255241
349935241
449295241

prune747.0ms (5%)

Pruning

16 alts after pruning (16 fresh and 0 done)

PrunedKeptTotal
New5103513
Fresh21315
Picked101
Done000
Total51316529
Error
14.7b
Counts
529 → 16
Alt Table
StatusErrorProgram
34.9b
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 (*.f64 3 a) (*.f64 (cbrt.f64 c) (cbrt.f64 c))) (cbrt.f64 c))))) (*.f64 3 a))
49.8b
(/.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))
35.2b
(/.f64 (+.f64 (neg.f64 b) (*.f64 (sqrt.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)) (sqrt.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)))) (*.f64 3 a))
46.8b
(/.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 3 a))
35.0b
(/.f64 (*.f64 (pow.f64 (-.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) b) 2/3) (cbrt.f64 (-.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) b))) (*.f64 3 a))
36.0b
(/.f64 (/.f64 (*.f64 3 (*.f64 c a)) (-.f64 (neg.f64 b) (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b))) (*.f64 3 a))
52.4b
(/.f64 (*.f64 (*.f64 (cbrt.f64 (-.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) b)) (cbrt.f64 (-.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) b))) (cbrt.f64 (-.f64 (hypot.f64 (*.f64 (sqrt.f64 c) (sqrt.f64 (*.f64 a -3))) b) b))) (*.f64 3 a))
35.2b
(/.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))
38.6b
(/.f64 (+.f64 (neg.f64 b) (exp.f64 (log.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)))) (*.f64 3 a))
40.8b
(/.f64 (cbrt.f64 (pow.f64 (-.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) b) 3)) (*.f64 3 a))
56.7b
(/.f64 (+.f64 (neg.f64 b) b) (*.f64 3 a))
54.1b
(/.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))
35.9b
(/.f64 (fma.f64 (*.f64 (cbrt.f64 b) (cbrt.f64 b)) (neg.f64 (cbrt.f64 b)) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))) (*.f64 3 a))
44.8b
(/.f64 (*.f64 (/.f64 (*.f64 (cbrt.f64 (-.f64 (*.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)) (*.f64 b b))) (cbrt.f64 (-.f64 (*.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)) (*.f64 b b)))) (*.f64 (cbrt.f64 (+.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) b)) (cbrt.f64 (+.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) b)))) (cbrt.f64 (-.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) b))) (*.f64 3 a))
48.7b
(/.f64 (*.f64 -2 b) (*.f64 3 a))
34.9b
(*.f64 (-.f64 (sqrt.f64 (fma.f64 a (*.f64 c -3) (*.f64 b b))) b) (/.f64 1/3 a))
Compiler

Compiled 29516 to 19759 computations (33.1% saved)

localize10.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(*.f64 (-.f64 (sqrt.f64 (fma.f64 a (*.f64 c -3) (*.f64 b b))) b) (/.f64 1/3 a))
0.4b
(/.f64 1/3 a)
1.2b
(-.f64 (sqrt.f64 (fma.f64 a (*.f64 c -3) (*.f64 b b))) b)
24.7b
(sqrt.f64 (fma.f64 a (*.f64 c -3) (*.f64 b b)))

series201.0ms (1.3%)

Counts
4 → 60
Calls

4 calls:

94.0ms
(*.f64 (-.f64 (sqrt.f64 (fma.f64 a (*.f64 c -3) (*.f64 b b))) b) (/.f64 1/3 a))
57.0ms
(-.f64 (sqrt.f64 (fma.f64 a (*.f64 c -3) (*.f64 b b))) b)
49.0ms
(sqrt.f64 (fma.f64 a (*.f64 c -3) (*.f64 b b)))
2.0ms
(/.f64 1/3 a)

rewrite26.0ms (0.2%)

Algorithm
rewrite-expression-head
Rules
50×add-sqr-sqrt_binary64
40×*-un-lft-identity_binary64
36×add-cube-cbrt_binary64
19×times-frac_binary64
18×prod-diff_binary64
Counts
4 → 128
Calls

4 calls:

10.0ms
(*.f64 (-.f64 (sqrt.f64 (fma.f64 a (*.f64 c -3) (*.f64 b b))) b) (/.f64 1/3 a))
4.0ms
(-.f64 (sqrt.f64 (fma.f64 a (*.f64 c -3) (*.f64 b b))) b)
2.0ms
(/.f64 1/3 a)
1.0ms
(sqrt.f64 (fma.f64 a (*.f64 c -3) (*.f64 b b)))

simplify158.0ms (1.1%)

Algorithm
egg-herbie
Rules
446×fma-neg_binary64
318×distribute-rgt-in_binary64
276×cancel-sign-sub-inv_binary64
271×neg-mul-1_binary64
161×associate-*r*_binary64
Counts
188 → 240
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02955224
17094328
225814143
344884131
448644131

prune213.0ms (1.4%)

Pruning

15 alts after pruning (15 fresh and 0 done)

PrunedKeptTotal
New23010240
Fresh10515
Picked101
Done000
Total24115256
Error
7.3b
Counts
256 → 15
Alt Table
StatusErrorProgram
48.7b
(/.f64 (*.f64 -2 b) (*.f64 3 a))
39.1b
(*.f64 -1/2 (/.f64 c b))
33.1b
(/.f64 (*.f64 1/3 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3)))) b)) a)
52.4b
(/.f64 (*.f64 (*.f64 (cbrt.f64 (-.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) b)) (cbrt.f64 (-.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) b))) (cbrt.f64 (-.f64 (hypot.f64 (*.f64 (sqrt.f64 c) (sqrt.f64 (*.f64 a -3))) b) b))) (*.f64 3 a))
37.2b
(/.f64 (*.f64 1/3 (+.f64 (*.f64 a (*.f64 c -3)) 0)) (*.f64 a (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3)))))))
56.7b
(*.f64 (-.f64 b b) (/.f64 1/3 a))
34.9b
(*.f64 (-.f64 (sqrt.f64 (fma.f64 a (*.f64 c -3) (*.f64 b b))) b) (/.f64 1 (/.f64 a 1/3)))
35.9b
(/.f64 (fma.f64 (*.f64 (cbrt.f64 b) (cbrt.f64 b)) (neg.f64 (cbrt.f64 b)) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))) (*.f64 3 a))
49.0b
(exp.f64 (+.f64 (log.f64 (-.f64 (sqrt.f64 (fma.f64 a (*.f64 c -3) (*.f64 b b))) b)) (log.f64 (/.f64 1/3 a))))
47.5b
(*.f64 (-.f64 (sqrt.f64 (fma.f64 a (*.f64 c -3) (*.f64 b b))) b) (*.f64 (sqrt.f64 (/.f64 1/3 a)) (sqrt.f64 (/.f64 1/3 a))))
34.9b
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 (*.f64 3 a) (*.f64 (cbrt.f64 c) (cbrt.f64 c))) (cbrt.f64 c))))) (*.f64 3 a))
35.0b
(/.f64 (*.f64 (pow.f64 (-.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) b) 2/3) (cbrt.f64 (-.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) b))) (*.f64 3 a))
38.6b
(*.f64 (-.f64 (exp.f64 (log.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3)))))) b) (/.f64 1/3 a))
33.1b
(/.f64 (*.f64 (+.f64 (*.f64 a (*.f64 c -3)) 0) (/.f64 1/3 a)) (+.f64 (sqrt.f64 (fma.f64 a (*.f64 c -3) (*.f64 b b))) b))
48.7b
(*.f64 -2/3 (/.f64 b a))
Compiler

Compiled 6887 to 4078 computations (40.8% saved)

localize10.0ms (0.1%)

Local error

Found 4 expressions with local error:

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

series419.0ms (2.8%)

Counts
4 → 48
Calls

4 calls:

216.0ms
(*.f64 1/3 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3)))) b))
176.0ms
(-.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3)))) b)
23.0ms
(sqrt.f64 (*.f64 a (*.f64 c -3)))
5.0ms
(*.f64 a (*.f64 c -3))

rewrite24.0ms (0.2%)

Algorithm
rewrite-expression-head
Rules
35×add-sqr-sqrt_binary64
33×*-un-lft-identity_binary64
29×add-cube-cbrt_binary64
27×prod-diff_binary64
17×pow1_binary64
Counts
4 → 114
Calls

4 calls:

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

simplify89.0ms (0.6%)

Algorithm
egg-herbie
Rules
804×associate-/l*_binary64
599×fma-def_binary64
312×cancel-sign-sub-inv_binary64
213×fma-neg_binary64
177×associate-*r*_binary64
Counts
162 → 204
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02613438
15502854
218552734
349602734

prune173.0ms (1.2%)

Pruning

12 alts after pruning (12 fresh and 0 done)

PrunedKeptTotal
New2022204
Fresh41014
Picked101
Done000
Total20712219
Error
3.8b
Counts
219 → 12
Alt Table
StatusErrorProgram
48.7b
(/.f64 (*.f64 -2 b) (*.f64 3 a))
39.1b
(*.f64 -1/2 (/.f64 c b))
43.0b
(/.f64 (*.f64 1/3 (-.f64 (hypot.f64 b (*.f64 (sqrt.f64 a) (sqrt.f64 (*.f64 c -3)))) b)) a)
52.4b
(/.f64 (*.f64 (*.f64 (cbrt.f64 (-.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) b)) (cbrt.f64 (-.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) b))) (cbrt.f64 (-.f64 (hypot.f64 (*.f64 (sqrt.f64 c) (sqrt.f64 (*.f64 a -3))) b) b))) (*.f64 3 a))
48.7b
(*.f64 -2/3 (/.f64 b a))
33.1b
(/.f64 (+.f64 (*.f64 1/3 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a))))) (*.f64 b -1/3)) a)
37.2b
(/.f64 (*.f64 1/3 (+.f64 (*.f64 a (*.f64 c -3)) 0)) (*.f64 a (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3)))))))
56.7b
(*.f64 (-.f64 b b) (/.f64 1/3 a))
35.9b
(/.f64 (fma.f64 (*.f64 (cbrt.f64 b) (cbrt.f64 b)) (neg.f64 (cbrt.f64 b)) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))) (*.f64 3 a))
47.5b
(*.f64 (-.f64 (sqrt.f64 (fma.f64 a (*.f64 c -3) (*.f64 b b))) b) (*.f64 (sqrt.f64 (/.f64 1/3 a)) (sqrt.f64 (/.f64 1/3 a))))
34.9b
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 (*.f64 3 a) (*.f64 (cbrt.f64 c) (cbrt.f64 c))) (cbrt.f64 c))))) (*.f64 3 a))
33.1b
(/.f64 (*.f64 (+.f64 (*.f64 a (*.f64 c -3)) 0) (/.f64 1/3 a)) (+.f64 (sqrt.f64 (fma.f64 a (*.f64 c -3) (*.f64 b b))) b))
Compiler

Compiled 5585 to 3430 computations (38.6% saved)

regimes4.5s (30%)

Accuracy

Total 5.9b remaining (65.9%)

Threshold costs 0b (0%)

Counts
200 → 4
Compiler

Compiled 24367 to 17073 computations (29.9% saved)

bsearch126.0ms (0.8%)

Steps
ItersRangePoint
7
4433117232081432.0
178105692377813630.0
124046118059855380.0
9
1.077746902856963e-175
1.237737096621307e-166
1.2177854566716303e-166
6
-1.7788453873958272e+162
-2.4253433369542276e+152
-1.4427673897213551e+153
Compiler

Compiled 4 to 3 computations (25% saved)

simplify6.0ms (0%)

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

Useful iterations: 1 (0.0ms)

IterNodesCost
04296
15892
27192
38892
49892
510492
610692
710592

end225.0ms (1.5%)

Compiler

Compiled 374 to 254 computations (32.1% saved)

Profiling

Loading profile data...