Details

Time bar (total: 2.3s)

analyze4.0ms (0.2%)

Algorithm
search
Search
TrueOtherFalseIter
0%100%0%0
0%100%0%1
0%100%0%2
50%50%0%3
50%25%25%4
62.5%12.5%25%5
62.5%6.2%31.3%6
65.6%3.1%31.3%7
65.6%1.6%32.8%8
66.4%0.8%32.8%9
66.4%0.4%33.2%10
66.6%0.2%33.2%11
66.6%0.1%33.3%12
66.6%0%33.4%13
66.6%0%33.4%14
Compiler

Compiled 11 to 8 computations (27.3% saved)

sample839.0ms (37.1%)

Results
660.0ms8256×body128valid
Compiler

Compiled 32 to 23 computations (28.1% saved)

simplify160.0ms (7.1%)

Algorithm
egg-herbie
Rules
1514×fma-def_binary64
1229×fma-neg_binary64
587×distribute-rgt-neg-in_binary64
552×cancel-sign-sub-inv_binary64
522×sqr-pow_binary64
Counts
1 → 2
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0813
11713
24211
39611
416911
522411
634311
754911
872811
9120811
10166611
11230611
12290511
13302811
14323311
15341811
16428211
17323011
18359511
19471311
20475511

prune2.0ms (0.1%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New112
Fresh101
Picked000
Done000
Total213
Error
0.2b
Counts
3 → 1
Alt Table
StatusErrorProgram
0.2b
(*.f64 (*.f64 x x) (fma.f64 x -2 3))
Compiler

Compiled 36 to 23 computations (36.1% saved)

localize4.0ms (0.2%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.2b
(*.f64 (*.f64 x x) (fma.f64 x -2 3))

series3.0ms (0.1%)

Counts
1 → 12
Calls

1 calls:

3.0ms
(*.f64 (*.f64 x x) (fma.f64 x -2 3))

rewrite123.0ms (5.4%)

Algorithm
batch-egg-rewrite
Rules
588×log1p-expm1-u_binary64
588×expm1-log1p-u_binary64
296×log-prod_binary64
171×pow2_binary64
120×pow1/3_binary64
Counts
1 → 25
Calls

1 calls:

122.0ms
(*.f64 (*.f64 x x) (fma.f64 x -2 3))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0711
114411
2153211
3496711
4488811
000
100

simplify84.0ms (3.7%)

Algorithm
egg-herbie
Rules
906×fma-neg_binary64
851×fma-def_binary64
771×distribute-rgt-neg-in_binary64
628×distribute-lft-neg-in_binary64
439×neg-mul-1_binary64
Counts
37 → 31
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
011165
130147
277138
3219120
4616120
51129120
62106120
73386120
84690120
94971120
104943120

prune26.0ms (1.1%)

Pruning

5 alts after pruning (5 fresh and 0 done)

PrunedKeptTotal
New26531
Fresh000
Picked101
Done000
Total27532
Error
0.0b
Counts
32 → 5
Alt Table
StatusErrorProgram
23.8b
(cbrt.f64 (pow.f64 (*.f64 (*.f64 x x) (fma.f64 x -2 3)) 3))
10.1b
(pow.f64 (*.f64 x (sqrt.f64 (fma.f64 x -2 3))) 2)
0.9b
(pow.f64 (cbrt.f64 (*.f64 (*.f64 x x) (fma.f64 x -2 3))) 3)
0.1b
(*.f64 x (*.f64 x (fma.f64 x -2 3)))
0.1b
(-.f64 (*.f64 3 (pow.f64 x 2)) (*.f64 2 (pow.f64 x 3)))
Compiler

Compiled 460 to 303 computations (34.1% saved)

localize6.0ms (0.3%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(*.f64 2 (pow.f64 x 3))
0.0b
(-.f64 (*.f64 3 (pow.f64 x 2)) (*.f64 2 (pow.f64 x 3)))
0.2b
(*.f64 3 (pow.f64 x 2))

series9.0ms (0.4%)

Counts
3 → 3
Calls

3 calls:

3.0ms
(-.f64 (*.f64 3 (pow.f64 x 2)) (*.f64 2 (pow.f64 x 3)))
3.0ms
(*.f64 2 (pow.f64 x 3))
2.0ms
(*.f64 3 (pow.f64 x 2))

rewrite59.0ms (2.6%)

Algorithm
batch-egg-rewrite
Rules
888×log1p-expm1-u_binary64
888×expm1-log1p-u_binary64
94×add-sqr-sqrt_binary64
90×add-cube-cbrt_binary64
90×add-cbrt-cube_binary64
Counts
3 → 78
Calls

3 calls:

57.0ms
(*.f64 2 (pow.f64 x 3))
57.0ms
(-.f64 (*.f64 3 (pow.f64 x 2)) (*.f64 2 (pow.f64 x 3)))
57.0ms
(*.f64 3 (pow.f64 x 2))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0930
120628
2226628
3527628
000
100

simplify155.0ms (6.9%)

Algorithm
egg-herbie
Rules
968×sqr-pow_binary64
623×cube-prod_binary64
608×fabs-mul_binary64
562×pow-sqr_binary64
538×unswap-sqr_binary64
Counts
81 → 80
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0921
12221
25021
310421
424521
592321
6151621
7165521
8187921
9210621
10243721
11251621
12282721
13329621
14359321
15380621
16393021
17397621
18400321
19465821
20476421
21485521

prune64.0ms (2.8%)

Pruning

5 alts after pruning (4 fresh and 1 done)

PrunedKeptTotal
New80080
Fresh044
Picked011
Done000
Total80585
Error
0.0b
Counts
85 → 5
Alt Table
StatusErrorProgram
23.8b
(cbrt.f64 (pow.f64 (*.f64 (*.f64 x x) (fma.f64 x -2 3)) 3))
10.1b
(pow.f64 (*.f64 x (sqrt.f64 (fma.f64 x -2 3))) 2)
0.9b
(pow.f64 (cbrt.f64 (*.f64 (*.f64 x x) (fma.f64 x -2 3))) 3)
0.1b
(*.f64 x (*.f64 x (fma.f64 x -2 3)))
0.1b
(-.f64 (*.f64 3 (pow.f64 x 2)) (*.f64 2 (pow.f64 x 3)))
Compiler

Compiled 1629 to 1223 computations (24.9% saved)

localize4.0ms (0.2%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(*.f64 x (fma.f64 x -2 3))
0.1b
(*.f64 x (*.f64 x (fma.f64 x -2 3)))

series5.0ms (0.2%)

Counts
2 → 24
Calls

2 calls:

3.0ms
(*.f64 x (*.f64 x (fma.f64 x -2 3)))
2.0ms
(*.f64 x (fma.f64 x -2 3))

rewrite107.0ms (4.7%)

Algorithm
batch-egg-rewrite
Rules
600×log1p-expm1-u_binary64
600×expm1-log1p-u_binary64
319×log-prod_binary64
124×pow1/3_binary64
123×expm1-udef_binary64
Counts
2 → 50
Calls

2 calls:

106.0ms
(*.f64 x (fma.f64 x -2 3))
106.0ms
(*.f64 x (*.f64 x (fma.f64 x -2 3)))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0719
114319
2157019
3496919
4491219
000
100

simplify91.0ms (4%)

Algorithm
egg-herbie
Rules
807×fma-neg_binary64
685×fma-def_binary64
500×distribute-rgt-neg-in_binary64
442×neg-mul-1_binary64
438×neg-sub0_binary64
Counts
74 → 60
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
015300
141264
292246
3253210
4693210
51267210
62302210
73410210
84539210
94972210
104803210

prune39.0ms (1.7%)

Pruning

5 alts after pruning (3 fresh and 2 done)

PrunedKeptTotal
New60060
Fresh033
Picked011
Done011
Total60565
Error
0.0b
Counts
65 → 5
Alt Table
StatusErrorProgram
23.8b
(cbrt.f64 (pow.f64 (*.f64 (*.f64 x x) (fma.f64 x -2 3)) 3))
10.1b
(pow.f64 (*.f64 x (sqrt.f64 (fma.f64 x -2 3))) 2)
0.9b
(pow.f64 (cbrt.f64 (*.f64 (*.f64 x x) (fma.f64 x -2 3))) 3)
0.1b
(*.f64 x (*.f64 x (fma.f64 x -2 3)))
0.1b
(-.f64 (*.f64 3 (pow.f64 x 2)) (*.f64 2 (pow.f64 x 3)))
Compiler

Compiled 785 to 547 computations (30.3% saved)

localize7.0ms (0.3%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.2b
(*.f64 (*.f64 x x) (fma.f64 x -2 3))
0.5b
(pow.f64 (cbrt.f64 (*.f64 (*.f64 x x) (fma.f64 x -2 3))) 3)
23.2b
(cbrt.f64 (*.f64 (*.f64 x x) (fma.f64 x -2 3)))

series85.0ms (3.7%)

Counts
2 → 24
Calls

2 calls:

78.0ms
(pow.f64 (cbrt.f64 (*.f64 (*.f64 x x) (fma.f64 x -2 3))) 3)
6.0ms
(cbrt.f64 (*.f64 (*.f64 x x) (fma.f64 x -2 3)))

rewrite51.0ms (2.3%)

Algorithm
batch-egg-rewrite
Rules
688×log1p-expm1-u_binary64
688×expm1-log1p-u_binary64
355×log-prod_binary64
134×expm1-udef_binary64
134×log1p-udef_binary64
Counts
2 → 74
Calls

2 calls:

50.0ms
(pow.f64 (cbrt.f64 (*.f64 (*.f64 x x) (fma.f64 x -2 3))) 3)
50.0ms
(cbrt.f64 (*.f64 (*.f64 x x) (fma.f64 x -2 3)))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0924
117124
2180224
3521624
000
100

simplify66.0ms (2.9%)

Algorithm
egg-herbie
Rules
770×times-frac_binary64
768×fma-neg_binary64
243×fma-def_binary64
197×associate-*r*_binary64
187×sub-neg_binary64
Counts
98 → 110
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0851189
12561121
2721793
32721573
44910573
55037573

prune108.0ms (4.7%)

Pruning

5 alts after pruning (3 fresh and 2 done)

PrunedKeptTotal
New1401141
Fresh022
Picked101
Done022
Total1415146
Error
0.0b
Counts
146 → 5
Alt Table
StatusErrorProgram
0.6b
(*.f64 (*.f64 (*.f64 x x) (pow.f64 (cbrt.f64 (fma.f64 x -2 3)) 2)) (cbrt.f64 (fma.f64 x -2 3)))
0.1b
(-.f64 (*.f64 3 (pow.f64 x 2)) (*.f64 2 (pow.f64 x 3)))
23.8b
(cbrt.f64 (pow.f64 (*.f64 (*.f64 x x) (fma.f64 x -2 3)) 3))
10.1b
(pow.f64 (*.f64 x (sqrt.f64 (fma.f64 x -2 3))) 2)
0.1b
(*.f64 x (*.f64 x (fma.f64 x -2 3)))
Compiler

Compiled 2641 to 1949 computations (26.2% saved)

regimes81.0ms (3.6%)

Accuracy

Total 0.1b remaining (88.1%)

Threshold costs 0.1b (88.1%)

Counts
47 → 1
Compiler

Compiled 1124 to 850 computations (24.4% saved)

simplify4.0ms (0.2%)

Algorithm
egg-herbie
Rules
*-commutative_binary64
+-commutative_binary64
sub-neg_binary64
distribute-lft-neg-in_binary64
distribute-rgt-neg-in_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0916
11716
22516
32916
43216
53316
63216

end78.0ms (3.4%)

Compiler

Compiled 85 to 67 computations (21.2% saved)

Profiling

Loading profile data...