Details

Time bar (total: 3.9s)

analyze1.0ms (0%)

Algorithm
search
Search
TrueOtherFalseIter
0%100%0%0
100%0%0%1
Compiler

Compiled 9 to 7 computations (22.2% saved)

sample1.1s (27.4%)

Results
493.0ms2110×body1024valid
285.0ms4413×body128valid
161.0ms1030×body512valid
53.0ms220×body2048valid
50.0ms483×body256valid
Compiler

Compiled 26 to 20 computations (23.1% saved)

simplify11.0ms (0.3%)

Algorithm
egg-herbie
Rules
39×fma-def_binary64
32×fma-neg_binary64
14×cancel-sign-sub-inv_binary64
12×sub-neg_binary64
10×distribute-rgt-in_binary64
Counts
1 → 1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0711
11211
21611
32311
43011
54711
67211
79211
810911
911911
1012311
1112511
1211111

prune2.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New011
Fresh011
Picked000
Done000
Total022
Error
26.4b
Counts
2 → 1
Alt Table
StatusErrorProgram
26.4b
(-.f64 (cbrt.f64 (+.f64 x 1)) (cbrt.f64 x))
Compiler

Compiled 24 to 18 computations (25% saved)

localize5.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.3b
(cbrt.f64 (+.f64 x 1))
0.6b
(cbrt.f64 x)
2.6b
(-.f64 (cbrt.f64 (+.f64 x 1)) (cbrt.f64 x))

series57.0ms (1.4%)

Counts
3 → 36
Calls

3 calls:

40.0ms
(cbrt.f64 x)
11.0ms
(-.f64 (cbrt.f64 (+.f64 x 1)) (cbrt.f64 x))
6.0ms
(cbrt.f64 (+.f64 x 1))

rewrite20.0ms (0.5%)

Algorithm
rewrite-expression-head
Rules
67×cbrt-prod_binary64
58×*-un-lft-identity_binary64
43×add-sqr-sqrt_binary64
42×prod-diff_binary64
35×add-cube-cbrt_binary64
Counts
3 → 104
Calls

3 calls:

8.0ms
(-.f64 (cbrt.f64 (+.f64 x 1)) (cbrt.f64 x))
2.0ms
(cbrt.f64 (+.f64 x 1))
1.0ms
(cbrt.f64 x)

simplify120.0ms (3.1%)

Algorithm
egg-herbie
Rules
959×fma-neg_binary64
417×associate-/r*_binary64
348×times-frac_binary64
258×cancel-sign-sub-inv_binary64
133×associate--l+_binary64
Counts
140 → 181
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02003526
14552550
213362116
339572052
448882052
548142052

prune200.0ms (5.1%)

Pruning

7 alts after pruning (7 fresh and 0 done)

PrunedKeptTotal
New1747181
Fresh000
Picked101
Done000
Total1757182
Error
9.0b
Counts
182 → 7
Alt Table
StatusErrorProgram
27.4b
(-.f64 (pow.f64 (+.f64 x 1) 1/3) (cbrt.f64 x))
32.0b
(/.f64 1 (+.f64 (pow.f64 x 2/3) (*.f64 (cbrt.f64 (+.f64 1 x)) (+.f64 (cbrt.f64 x) (cbrt.f64 (+.f64 1 x))))))
26.5b
(fma.f64 (cbrt.f64 (*.f64 (cbrt.f64 (+.f64 x 1)) (cbrt.f64 (+.f64 x 1)))) (cbrt.f64 (cbrt.f64 (+.f64 x 1))) (neg.f64 (cbrt.f64 x)))
26.6b
(fma.f64 (*.f64 (cbrt.f64 (cbrt.f64 (+.f64 x 1))) (cbrt.f64 (cbrt.f64 (+.f64 x 1)))) (cbrt.f64 (cbrt.f64 (+.f64 x 1))) (neg.f64 (cbrt.f64 x)))
26.6b
(+.f64 (fma.f64 1 (cbrt.f64 (+.f64 x 1)) (neg.f64 (*.f64 (cbrt.f64 (cbrt.f64 x)) (cbrt.f64 (*.f64 (cbrt.f64 x) (cbrt.f64 x)))))) (fma.f64 (neg.f64 (cbrt.f64 (cbrt.f64 x))) (cbrt.f64 (*.f64 (cbrt.f64 x) (cbrt.f64 x))) (*.f64 (cbrt.f64 (cbrt.f64 x)) (cbrt.f64 (*.f64 (cbrt.f64 x) (cbrt.f64 x))))))
49.7b
(fma.f64 1/3 (cbrt.f64 (/.f64 1 (*.f64 x x))) (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 x 5))) -1/9))
44.3b
(*.f64 (+.f64 (cbrt.f64 (sqrt.f64 (+.f64 x 1))) (cbrt.f64 (sqrt.f64 x))) (-.f64 (cbrt.f64 (sqrt.f64 (+.f64 x 1))) (cbrt.f64 (sqrt.f64 x))))
Compiler

Compiled 3946 to 2285 computations (42.1% saved)

localize10.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(cbrt.f64 (*.f64 (cbrt.f64 (+.f64 x 1)) (cbrt.f64 (+.f64 x 1))))
0.3b
(cbrt.f64 (+.f64 x 1))
0.6b
(cbrt.f64 x)
26.4b
(fma.f64 (cbrt.f64 (*.f64 (cbrt.f64 (+.f64 x 1)) (cbrt.f64 (+.f64 x 1)))) (cbrt.f64 (cbrt.f64 (+.f64 x 1))) (neg.f64 (cbrt.f64 x)))

series33.0ms (0.8%)

Counts
2 → 24
Calls

2 calls:

27.0ms
(fma.f64 (cbrt.f64 (*.f64 (cbrt.f64 (+.f64 x 1)) (cbrt.f64 (+.f64 x 1)))) (cbrt.f64 (cbrt.f64 (+.f64 x 1))) (neg.f64 (cbrt.f64 x)))
6.0ms
(cbrt.f64 (*.f64 (cbrt.f64 (+.f64 x 1)) (cbrt.f64 (+.f64 x 1))))

rewrite10.0ms (0.3%)

Algorithm
rewrite-expression-head
Rules
20×cbrt-div_binary64
flip-+_binary64
flip3-+_binary64
frac-times_binary64
associate-*r/_binary64
Counts
2 → 29
Calls

2 calls:

8.0ms
(cbrt.f64 (*.f64 (cbrt.f64 (+.f64 x 1)) (cbrt.f64 (+.f64 x 1))))
0.0ms
(fma.f64 (cbrt.f64 (*.f64 (cbrt.f64 (+.f64 x 1)) (cbrt.f64 (+.f64 x 1)))) (cbrt.f64 (cbrt.f64 (+.f64 x 1))) (neg.f64 (cbrt.f64 x)))

simplify85.0ms (2.2%)

Algorithm
egg-herbie
Rules
926×fma-neg_binary64
497×fma-def_binary64
260×sub-neg_binary64
234×cancel-sign-sub-inv_binary64
188×associate-*r*_binary64
Counts
53 → 89
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
01701690
13851605
29981475
328621434
447741433
549771433

prune356.0ms (9.1%)

Pruning

7 alts after pruning (7 fresh and 0 done)

PrunedKeptTotal
New2453248
Fresh246
Picked101
Done000
Total2487255
Error
9.0b
Counts
255 → 7
Alt Table
StatusErrorProgram
32.0b
(/.f64 1 (+.f64 (pow.f64 x 2/3) (*.f64 (cbrt.f64 (+.f64 1 x)) (+.f64 (cbrt.f64 x) (cbrt.f64 (+.f64 1 x))))))
26.7b
(exp.f64 (log.f64 (fma.f64 (cbrt.f64 (*.f64 (cbrt.f64 (+.f64 x 1)) (cbrt.f64 (+.f64 x 1)))) (cbrt.f64 (cbrt.f64 (+.f64 x 1))) (neg.f64 (cbrt.f64 x)))))
26.5b
(fma.f64 (cbrt.f64 (*.f64 (cbrt.f64 (+.f64 x 1)) (*.f64 (cbrt.f64 (*.f64 (cbrt.f64 (+.f64 1 x)) (cbrt.f64 (+.f64 1 x)))) (cbrt.f64 (cbrt.f64 (+.f64 1 x)))))) (cbrt.f64 (cbrt.f64 (+.f64 x 1))) (neg.f64 (cbrt.f64 x)))
26.6b
(fma.f64 (*.f64 (cbrt.f64 (cbrt.f64 (+.f64 x 1))) (cbrt.f64 (cbrt.f64 (+.f64 x 1)))) (cbrt.f64 (cbrt.f64 (+.f64 x 1))) (neg.f64 (cbrt.f64 x)))
26.6b
(+.f64 (fma.f64 1 (cbrt.f64 (+.f64 x 1)) (neg.f64 (*.f64 (cbrt.f64 (cbrt.f64 x)) (cbrt.f64 (*.f64 (cbrt.f64 x) (cbrt.f64 x)))))) (fma.f64 (neg.f64 (cbrt.f64 (cbrt.f64 x))) (cbrt.f64 (*.f64 (cbrt.f64 x) (cbrt.f64 x))) (*.f64 (cbrt.f64 (cbrt.f64 x)) (cbrt.f64 (*.f64 (cbrt.f64 x) (cbrt.f64 x))))))
27.7b
(fma.f64 x (+.f64 1/3 (*.f64 x -1/9)) (-.f64 1 (cbrt.f64 x)))
49.7b
(fma.f64 1/3 (cbrt.f64 (/.f64 1 (*.f64 x x))) (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 x 5))) -1/9))
Compiler

Compiled 7200 to 5232 computations (27.3% saved)

localize17.0ms (0.4%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.3b
(cbrt.f64 (+.f64 x 1))
0.3b
(cbrt.f64 (+.f64 1 x))
0.6b
(cbrt.f64 x)
26.4b
(fma.f64 (cbrt.f64 (*.f64 (cbrt.f64 (+.f64 x 1)) (*.f64 (cbrt.f64 (*.f64 (cbrt.f64 (+.f64 1 x)) (cbrt.f64 (+.f64 1 x)))) (cbrt.f64 (cbrt.f64 (+.f64 1 x)))))) (cbrt.f64 (cbrt.f64 (+.f64 x 1))) (neg.f64 (cbrt.f64 x)))

series24.0ms (0.6%)

Counts
2 → 24
Calls

2 calls:

19.0ms
(fma.f64 (cbrt.f64 (*.f64 (cbrt.f64 (+.f64 x 1)) (*.f64 (cbrt.f64 (*.f64 (cbrt.f64 (+.f64 1 x)) (cbrt.f64 (+.f64 1 x)))) (cbrt.f64 (cbrt.f64 (+.f64 1 x)))))) (cbrt.f64 (cbrt.f64 (+.f64 x 1))) (neg.f64 (cbrt.f64 x)))
5.0ms
(cbrt.f64 (+.f64 1 x))

rewrite4.0ms (0.1%)

Algorithm
rewrite-expression-head
Rules
*-un-lft-identity_binary64
cbrt-prod_binary64
add-sqr-sqrt_binary64
add-cube-cbrt_binary64
cbrt-div_binary64
Counts
2 → 26
Calls

2 calls:

2.0ms
(cbrt.f64 (+.f64 1 x))
0.0ms
(fma.f64 (cbrt.f64 (*.f64 (cbrt.f64 (+.f64 x 1)) (*.f64 (cbrt.f64 (*.f64 (cbrt.f64 (+.f64 1 x)) (cbrt.f64 (+.f64 1 x)))) (cbrt.f64 (cbrt.f64 (+.f64 1 x)))))) (cbrt.f64 (cbrt.f64 (+.f64 x 1))) (neg.f64 (cbrt.f64 x)))

simplify104.0ms (2.6%)

Algorithm
egg-herbie
Rules
879×fma-neg_binary64
652×times-frac_binary64
478×fma-def_binary64
274×sub-neg_binary64
198×cancel-sign-sub-inv_binary64
Counts
50 → 82
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01491706
13821585
210011362
329931307
446871307
550001307
648871307

prune470.0ms (12%)

Pruning

7 alts after pruning (7 fresh and 0 done)

PrunedKeptTotal
New2731274
Fresh066
Picked101
Done000
Total2747281
Error
9.0b
Counts
281 → 7
Alt Table
StatusErrorProgram
32.0b
(/.f64 1 (+.f64 (pow.f64 x 2/3) (*.f64 (cbrt.f64 (+.f64 1 x)) (+.f64 (cbrt.f64 x) (cbrt.f64 (+.f64 1 x))))))
26.7b
(exp.f64 (log.f64 (fma.f64 (cbrt.f64 (*.f64 (cbrt.f64 (+.f64 x 1)) (cbrt.f64 (+.f64 x 1)))) (cbrt.f64 (cbrt.f64 (+.f64 x 1))) (neg.f64 (cbrt.f64 x)))))
26.6b
(fma.f64 (*.f64 (cbrt.f64 (cbrt.f64 (+.f64 x 1))) (cbrt.f64 (cbrt.f64 (+.f64 x 1)))) (cbrt.f64 (cbrt.f64 (+.f64 x 1))) (neg.f64 (cbrt.f64 x)))
26.8b
(expm1.f64 (log1p.f64 (fma.f64 (cbrt.f64 (*.f64 (cbrt.f64 (+.f64 x 1)) (*.f64 (cbrt.f64 (*.f64 (cbrt.f64 (+.f64 1 x)) (cbrt.f64 (+.f64 1 x)))) (cbrt.f64 (cbrt.f64 (+.f64 1 x)))))) (cbrt.f64 (cbrt.f64 (+.f64 x 1))) (neg.f64 (cbrt.f64 x)))))
26.6b
(+.f64 (fma.f64 1 (cbrt.f64 (+.f64 x 1)) (neg.f64 (*.f64 (cbrt.f64 (cbrt.f64 x)) (cbrt.f64 (*.f64 (cbrt.f64 x) (cbrt.f64 x)))))) (fma.f64 (neg.f64 (cbrt.f64 (cbrt.f64 x))) (cbrt.f64 (*.f64 (cbrt.f64 x) (cbrt.f64 x))) (*.f64 (cbrt.f64 (cbrt.f64 x)) (cbrt.f64 (*.f64 (cbrt.f64 x) (cbrt.f64 x))))))
27.7b
(fma.f64 x (+.f64 1/3 (*.f64 x -1/9)) (-.f64 1 (cbrt.f64 x)))
49.7b
(fma.f64 1/3 (cbrt.f64 (/.f64 1 (*.f64 x x))) (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 x 5))) -1/9))
Compiler

Compiled 11106 to 8381 computations (24.5% saved)

localize63.0ms (1.6%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(*.f64 (cbrt.f64 (cbrt.f64 (+.f64 x 1))) (cbrt.f64 (cbrt.f64 (+.f64 x 1))))
0.3b
(cbrt.f64 (+.f64 x 1))
0.6b
(cbrt.f64 x)
26.2b
(fma.f64 (*.f64 (cbrt.f64 (cbrt.f64 (+.f64 x 1))) (cbrt.f64 (cbrt.f64 (+.f64 x 1)))) (cbrt.f64 (cbrt.f64 (+.f64 x 1))) (neg.f64 (cbrt.f64 x)))

series30.0ms (0.8%)

Counts
2 → 24
Calls

2 calls:

17.0ms
(fma.f64 (*.f64 (cbrt.f64 (cbrt.f64 (+.f64 x 1))) (cbrt.f64 (cbrt.f64 (+.f64 x 1)))) (cbrt.f64 (cbrt.f64 (+.f64 x 1))) (neg.f64 (cbrt.f64 x)))
13.0ms
(*.f64 (cbrt.f64 (cbrt.f64 (+.f64 x 1))) (cbrt.f64 (cbrt.f64 (+.f64 x 1))))

rewrite20.0ms (0.5%)

Algorithm
rewrite-expression-head
Rules
70×cbrt-prod_binary64
32×add-sqr-sqrt_binary64
28×*-un-lft-identity_binary64
24×cbrt-div_binary64
14×add-cube-cbrt_binary64
Counts
2 → 79
Calls

2 calls:

11.0ms
(*.f64 (cbrt.f64 (cbrt.f64 (+.f64 x 1))) (cbrt.f64 (cbrt.f64 (+.f64 x 1))))
0.0ms
(fma.f64 (*.f64 (cbrt.f64 (cbrt.f64 (+.f64 x 1))) (cbrt.f64 (cbrt.f64 (+.f64 x 1)))) (cbrt.f64 (cbrt.f64 (+.f64 x 1))) (neg.f64 (cbrt.f64 x)))

simplify115.0ms (2.9%)

Algorithm
egg-herbie
Rules
745×fma-neg_binary64
502×fma-def_binary64
317×associate-*l*_binary64
286×associate-*r*_binary64
261×sub-neg_binary64
Counts
103 → 152
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02002729
14372522
211802233
333042181
448162181
549132181

prune443.0ms (11.3%)

Pruning

7 alts after pruning (6 fresh and 1 done)

PrunedKeptTotal
New3110311
Fresh066
Picked011
Done000
Total3117318
Error
9.0b
Counts
318 → 7
Alt Table
StatusErrorProgram
32.0b
(/.f64 1 (+.f64 (pow.f64 x 2/3) (*.f64 (cbrt.f64 (+.f64 1 x)) (+.f64 (cbrt.f64 x) (cbrt.f64 (+.f64 1 x))))))
26.7b
(exp.f64 (log.f64 (fma.f64 (cbrt.f64 (*.f64 (cbrt.f64 (+.f64 x 1)) (cbrt.f64 (+.f64 x 1)))) (cbrt.f64 (cbrt.f64 (+.f64 x 1))) (neg.f64 (cbrt.f64 x)))))
26.6b
(fma.f64 (*.f64 (cbrt.f64 (cbrt.f64 (+.f64 x 1))) (cbrt.f64 (cbrt.f64 (+.f64 x 1)))) (cbrt.f64 (cbrt.f64 (+.f64 x 1))) (neg.f64 (cbrt.f64 x)))
26.8b
(expm1.f64 (log1p.f64 (fma.f64 (cbrt.f64 (*.f64 (cbrt.f64 (+.f64 x 1)) (*.f64 (cbrt.f64 (*.f64 (cbrt.f64 (+.f64 1 x)) (cbrt.f64 (+.f64 1 x)))) (cbrt.f64 (cbrt.f64 (+.f64 1 x)))))) (cbrt.f64 (cbrt.f64 (+.f64 x 1))) (neg.f64 (cbrt.f64 x)))))
26.6b
(+.f64 (fma.f64 1 (cbrt.f64 (+.f64 x 1)) (neg.f64 (*.f64 (cbrt.f64 (cbrt.f64 x)) (cbrt.f64 (*.f64 (cbrt.f64 x) (cbrt.f64 x)))))) (fma.f64 (neg.f64 (cbrt.f64 (cbrt.f64 x))) (cbrt.f64 (*.f64 (cbrt.f64 x) (cbrt.f64 x))) (*.f64 (cbrt.f64 (cbrt.f64 x)) (cbrt.f64 (*.f64 (cbrt.f64 x) (cbrt.f64 x))))))
27.7b
(fma.f64 x (+.f64 1/3 (*.f64 x -1/9)) (-.f64 1 (cbrt.f64 x)))
49.7b
(fma.f64 1/3 (cbrt.f64 (/.f64 1 (*.f64 x x))) (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 x 5))) -1/9))
Compiler

Compiled 8926 to 6609 computations (26% saved)

regimes417.0ms (10.6%)

Accuracy

Total 0.4b remaining (4.5%)

Threshold costs 0.4b (4.5%)

Counts
116 → 3
Compiler

Compiled 4373 to 3072 computations (29.8% saved)

bsearch21.0ms (0.5%)

Steps
ItersRangePoint
1
1.3245244896681527e-12
50115910.61651929
0.0077146496144738985
10
-25839770606.22214
-0.00030729904005259695
-0.9890530257632301
Compiler

Compiled 2 to 1 computations (50% saved)

simplify4.0ms (0.1%)

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
03376
14176
24576
34776
44876
54776

end214.0ms (5.4%)

Compiler

Compiled 267 to 194 computations (27.3% saved)

Profiling

Loading profile data...