Details

Time bar (total: 7.4s)

analyze980.0ms (13.3%)

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
6.2%93.7%0.1%6
9.4%90.5%0.1%7
14%85.9%0.1%8
16.4%83.5%0.1%9
19.1%80.8%0.1%10
20.5%79.4%0.1%11
22%78%0.1%12
22.7%77.2%0.1%13
23.4%76.5%0.1%14
Compiler

Compiled 9 to 7 computations (22.2% saved)

sample3.6s (48.4%)

Symmetry

(sort a x)

Results
1.3s2672×body8192exit
842.0ms1524×body2048valid
663.0ms1839×body1024valid
333.0ms3113×body128valid
292.0ms1172×body512valid
114.0ms608×body256valid
Compiler

Compiled 17 to 13 computations (23.5% saved)

simplify73.0ms (1%)

Algorithm
egg-herbie
Rules
571×fma-neg_binary64
455×*-commutative_binary64
440×unswap-sqr_binary64
344×associate-*l*_binary64
274×associate-+l+_binary64
Counts
1 → 2
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
076
1166
2236
3356
4706
51606
64326
715646
834906
949546
1049936
1148746

prune3.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New112
Fresh101
Picked000
Done000
Total213
Error
0.0b
Counts
3 → 1
Alt Table
StatusErrorProgram
0.0b
(expm1.f64 (*.f64 a x))
Compiler

Compiled 24 to 15 computations (37.5% saved)

localize3.0ms (0%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.0b
(expm1.f64 (*.f64 a x))

series7.0ms (0.1%)

Counts
1 → 24
Calls

1 calls:

7.0ms
(expm1.f64 (*.f64 a x))

rewrite1.0ms (0%)

Algorithm
rewrite-expression-head
Rules
log1p-expm1-u_binary64
*-un-lft-identity_binary64
add-sqr-sqrt_binary64
add-cube-cbrt_binary64
add-cbrt-cube_binary64
Counts
1 → 11
Calls

1 calls:

0.0ms
(expm1.f64 (*.f64 a x))

simplify68.0ms (0.9%)

Algorithm
egg-herbie
Rules
910×fma-def_binary64
844×distribute-lft-out_binary64
785×fma-neg_binary64
383×*-commutative_binary64
308×unswap-sqr_binary64
Counts
35 → 19
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
040382
196369
2262363
3966347
42376333
53696333
64842333
75375333

prune10.0ms (0.1%)

Pruning

2 alts after pruning (1 fresh and 1 done)

PrunedKeptTotal
New18119
Fresh000
Picked011
Done000
Total18220
Error
0.0b
Counts
20 → 2
Alt Table
StatusErrorProgram
19.6b
(cbrt.f64 (pow.f64 (expm1.f64 (*.f64 a x)) 3))
0.0b
(expm1.f64 (*.f64 a x))
Compiler

Compiled 245 to 121 computations (50.6% saved)

localize7.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(expm1.f64 (*.f64 a x))
0.1b
(pow.f64 (expm1.f64 (*.f64 a x)) 3)
19.6b
(cbrt.f64 (pow.f64 (expm1.f64 (*.f64 a x)) 3))

series30.0ms (0.4%)

Counts
2 → 48
Calls

2 calls:

23.0ms
(pow.f64 (expm1.f64 (*.f64 a x)) 3)
7.0ms
(cbrt.f64 (pow.f64 (expm1.f64 (*.f64 a x)) 3))

rewrite6.0ms (0.1%)

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

2 calls:

2.0ms
(pow.f64 (expm1.f64 (*.f64 a x)) 3)
2.0ms
(cbrt.f64 (pow.f64 (expm1.f64 (*.f64 a x)) 3))

simplify85.0ms (1.2%)

Algorithm
egg-herbie
Rules
674×associate-*l*_binary64
587×associate-*r*_binary64
337×log-prod_binary64
288×fma-def_binary64
278×exp-prod_binary64
Counts
96 → 70
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0941262
12021199
26291177
330981171
447911171
549621171

prune45.0ms (0.6%)

Pruning

3 alts after pruning (1 fresh and 2 done)

PrunedKeptTotal
New88189
Fresh000
Picked011
Done011
Total88391
Error
0.0b
Counts
91 → 3
Alt Table
StatusErrorProgram
19.6b
(cbrt.f64 (pow.f64 (expm1.f64 (*.f64 a x)) 3))
0.0b
(expm1.f64 (*.f64 a x))
48.8b
(pow.f64 (pow.f64 (expm1.f64 (*.f64 a x)) 3) 1/3)
Compiler

Compiled 1312 to 701 computations (46.6% saved)

localize7.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(expm1.f64 (*.f64 a x))
0.1b
(pow.f64 (expm1.f64 (*.f64 a x)) 3)
26.1b
(pow.f64 (pow.f64 (expm1.f64 (*.f64 a x)) 3) 1/3)

series618.0ms (8.4%)

Counts
1 → 24
Calls

1 calls:

618.0ms
(pow.f64 (pow.f64 (expm1.f64 (*.f64 a x)) 3) 1/3)

rewrite5.0ms (0.1%)

Algorithm
rewrite-expression-head
Rules
15×unpow-prod-down_binary64
*-un-lft-identity_binary64
add-sqr-sqrt_binary64
add-cube-cbrt_binary64
pow-exp_binary64
Counts
1 → 31
Calls

1 calls:

3.0ms
(pow.f64 (pow.f64 (expm1.f64 (*.f64 a x)) 3) 1/3)

simplify55.0ms (0.7%)

Algorithm
egg-herbie
Rules
746×distribute-rgt-in_binary64
551×associate-*l*_binary64
462×associate-*r*_binary64
447×log-prod_binary64
296×fma-def_binary64
Counts
55 → 49
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01141018
1230903
2648619
32618591
45595591

prune56.0ms (0.8%)

Pruning

3 alts after pruning (1 fresh and 2 done)

PrunedKeptTotal
New1011102
Fresh000
Picked101
Done022
Total1023105
Error
0b
Counts
105 → 3
Alt Table
StatusErrorProgram
19.6b
(cbrt.f64 (pow.f64 (expm1.f64 (*.f64 a x)) 3))
48.8b
(*.f64 (pow.f64 (*.f64 (cbrt.f64 (pow.f64 (expm1.f64 (*.f64 a x)) 3)) (cbrt.f64 (pow.f64 (expm1.f64 (*.f64 a x)) 3))) 1/3) (pow.f64 (cbrt.f64 (pow.f64 (expm1.f64 (*.f64 a x)) 3)) 1/3))
0.0b
(expm1.f64 (*.f64 a x))
Compiler

Compiled 1798 to 1072 computations (40.4% saved)

localize14.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(*.f64 (cbrt.f64 (pow.f64 (expm1.f64 (*.f64 a x)) 3)) (cbrt.f64 (pow.f64 (expm1.f64 (*.f64 a x)) 3)))
10.3b
(pow.f64 (cbrt.f64 (pow.f64 (expm1.f64 (*.f64 a x)) 3)) 1/3)
19.6b
(cbrt.f64 (pow.f64 (expm1.f64 (*.f64 a x)) 3))
22.5b
(pow.f64 (*.f64 (cbrt.f64 (pow.f64 (expm1.f64 (*.f64 a x)) 3)) (cbrt.f64 (pow.f64 (expm1.f64 (*.f64 a x)) 3))) 1/3)

series1.1s (14.7%)

Counts
3 → 72
Calls

3 calls:

605.0ms
(pow.f64 (*.f64 (cbrt.f64 (pow.f64 (expm1.f64 (*.f64 a x)) 3)) (cbrt.f64 (pow.f64 (expm1.f64 (*.f64 a x)) 3))) 1/3)
465.0ms
(pow.f64 (cbrt.f64 (pow.f64 (expm1.f64 (*.f64 a x)) 3)) 1/3)
14.0ms
(*.f64 (cbrt.f64 (pow.f64 (expm1.f64 (*.f64 a x)) 3)) (cbrt.f64 (pow.f64 (expm1.f64 (*.f64 a x)) 3)))

rewrite38.0ms (0.5%)

Algorithm
rewrite-expression-head
Rules
112×cbrt-prod_binary64
69×add-sqr-sqrt_binary64
47×unpow-prod-down_binary64
31×cube-prod_binary64
29×*-un-lft-identity_binary64
Counts
3 → 156
Calls

3 calls:

11.0ms
(*.f64 (cbrt.f64 (pow.f64 (expm1.f64 (*.f64 a x)) 3)) (cbrt.f64 (pow.f64 (expm1.f64 (*.f64 a x)) 3)))
7.0ms
(pow.f64 (*.f64 (cbrt.f64 (pow.f64 (expm1.f64 (*.f64 a x)) 3)) (cbrt.f64 (pow.f64 (expm1.f64 (*.f64 a x)) 3))) 1/3)
4.0ms
(pow.f64 (cbrt.f64 (pow.f64 (expm1.f64 (*.f64 a x)) 3)) 1/3)

simplify145.0ms (2%)

Algorithm
egg-herbie
Rules
767×fma-def_binary64
539×*-commutative_binary64
349×exp-prod_binary64
247×sqr-pow_binary64
241×log-prod_binary64
Counts
228 → 216
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
02393286
14763134
214722788
330832654
446592630
549212630

prune260.0ms (3.5%)

Pruning

3 alts after pruning (0 fresh and 3 done)

PrunedKeptTotal
New3240324
Fresh000
Picked011
Done022
Total3243327
Error
0b
Counts
327 → 3
Alt Table
StatusErrorProgram
19.6b
(cbrt.f64 (pow.f64 (expm1.f64 (*.f64 a x)) 3))
48.8b
(*.f64 (pow.f64 (*.f64 (cbrt.f64 (pow.f64 (expm1.f64 (*.f64 a x)) 3)) (cbrt.f64 (pow.f64 (expm1.f64 (*.f64 a x)) 3))) 1/3) (pow.f64 (cbrt.f64 (pow.f64 (expm1.f64 (*.f64 a x)) 3)) 1/3))
0.0b
(expm1.f64 (*.f64 a x))
Compiler

Compiled 11010 to 6155 computations (44.1% saved)

regimes138.0ms (1.9%)

Accuracy

Total 0.0b remaining (17.3%)

Threshold costs 0.0b (17.3%)

Counts
23 → 1
Compiler

Compiled 2590 to 1764 computations (31.9% saved)

simplify3.0ms (0%)

Algorithm
egg-herbie
Rules
*-commutative_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
056
166
266

end62.0ms (0.8%)

Remove

(sort a x)

Compiler

Compiled 68 to 46 computations (32.4% saved)

Profiling

Loading profile data...