Details

Time bar (total: 2.2s)

analyze14.0ms (0.6%)

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
25%74.9%0.1%6
93.7%6.2%0.1%7
96.8%3.1%0.1%8
99.5%0.4%0.1%9
99.7%0.2%0.1%10
99.8%0.1%0.1%11
99.9%0%0.1%12
99.9%0%0.1%13
99.9%0%0.1%14
Compiler

Compiled 22 to 13 computations (40.9% saved)

sample203.0ms (9.2%)

Algorithm
intervals
Results
61.0ms256×body128valid
Compiler

Compiled 45 to 27 computations (40% saved)

simplify104.0ms (4.7%)

Algorithm
egg-herbie
Rules
620×fma-def_binary64
549×sub-neg_binary64
460×distribute-neg-frac_binary64
455×cancel-sign-sub-inv_binary64
430×times-frac_binary64
Counts
1 → 2
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01026
12324
25224
310524
419924
533024
644224
760324
890124
9230424
10338624
11395624
12445424
13473524
14523824

prune3.0ms (0.1%)

Pruning

1 alts after pruning (1 fresh and 0 done)

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

Compiled 76 to 42 computations (44.7% saved)

localize10.0ms (0.4%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(fma.f64 x x (*.f64 y (*.f64 y 4)))
4.2b
(fma.f64 -4 (*.f64 y y) (*.f64 x x))
31.0b
(/.f64 (fma.f64 -4 (*.f64 y y) (*.f64 x x)) (fma.f64 x x (*.f64 y (*.f64 y 4))))

series39.0ms (1.8%)

Counts
3 → 72
Calls

3 calls:

21.0ms
(/.f64 (fma.f64 -4 (*.f64 y y) (*.f64 x x)) (fma.f64 x x (*.f64 y (*.f64 y 4))))
10.0ms
(fma.f64 -4 (*.f64 y y) (*.f64 x x))
8.0ms
(fma.f64 x x (*.f64 y (*.f64 y 4)))

rewrite6.0ms (0.3%)

Algorithm
rewrite-expression-head
Rules
11×*-un-lft-identity_binary64
11×add-sqr-sqrt_binary64
11×add-cube-cbrt_binary64
times-frac_binary64
add-cbrt-cube_binary64
Counts
3 → 49
Calls

3 calls:

2.0ms
(/.f64 (fma.f64 -4 (*.f64 y y) (*.f64 x x)) (fma.f64 x x (*.f64 y (*.f64 y 4))))
0.0ms
(fma.f64 -4 (*.f64 y y) (*.f64 x x))
0.0ms
(fma.f64 x x (*.f64 y (*.f64 y 4)))

simplify114.0ms (5.2%)

Algorithm
egg-herbie
Rules
639×fma-def_binary64
500×div-sub_binary64
426×fma-neg_binary64
356×cancel-sign-sub-inv_binary64
223×distribute-rgt-in_binary64
Counts
121 → 111
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
01082496
12212296
25812284
320832266
444902230
555082230

prune77.0ms (3.5%)

Pruning

4 alts after pruning (4 fresh and 0 done)

PrunedKeptTotal
New1074111
Fresh000
Picked101
Done000
Total1084112
Error
0.7b
Counts
112 → 4
Alt Table
StatusErrorProgram
31.6b
(cbrt.f64 (pow.f64 (/.f64 (fma.f64 y (*.f64 y -4) (*.f64 x x)) (fma.f64 (*.f64 y y) 4 (*.f64 x x))) 3))
35.8b
(fma.f64 (pow.f64 (/.f64 x y) 4) -1/8 (fma.f64 1/2 (/.f64 (*.f64 x x) (*.f64 y y)) -1))
33.3b
-1
30.7b
1
Compiler

Compiled 2936 to 1416 computations (51.8% saved)

localize0.0ms (0%)

prune4.0ms (0.2%)

Pruning

4 alts after pruning (3 fresh and 1 done)

PrunedKeptTotal
New000
Fresh033
Picked011
Done000
Total044
Error
0.7b
Counts
4 → 4
Alt Table
StatusErrorProgram
31.6b
(cbrt.f64 (pow.f64 (/.f64 (fma.f64 y (*.f64 y -4) (*.f64 x x)) (fma.f64 (*.f64 y y) 4 (*.f64 x x))) 3))
35.8b
(fma.f64 (pow.f64 (/.f64 x y) 4) -1/8 (fma.f64 1/2 (/.f64 (*.f64 x x) (*.f64 y y)) -1))
33.3b
-1
30.7b
1
Compiler

Compiled 91 to 61 computations (33% saved)

localize12.0ms (0.6%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(fma.f64 (*.f64 y y) 4 (*.f64 x x))
0.0b
(pow.f64 (/.f64 (fma.f64 y (*.f64 y -4) (*.f64 x x)) (fma.f64 (*.f64 y y) 4 (*.f64 x x))) 3)
1.8b
(fma.f64 y (*.f64 y -4) (*.f64 x x))
31.0b
(/.f64 (fma.f64 y (*.f64 y -4) (*.f64 x x)) (fma.f64 (*.f64 y y) 4 (*.f64 x x)))

series76.0ms (3.5%)

Counts
4 → 96
Calls

4 calls:

35.0ms
(pow.f64 (/.f64 (fma.f64 y (*.f64 y -4) (*.f64 x x)) (fma.f64 (*.f64 y y) 4 (*.f64 x x))) 3)
22.0ms
(/.f64 (fma.f64 y (*.f64 y -4) (*.f64 x x)) (fma.f64 (*.f64 y y) 4 (*.f64 x x)))
10.0ms
(fma.f64 (*.f64 y y) 4 (*.f64 x x))
9.0ms
(fma.f64 y (*.f64 y -4) (*.f64 x x))

rewrite15.0ms (0.7%)

Algorithm
rewrite-expression-head
Rules
27×*-un-lft-identity_binary64
27×times-frac_binary64
27×add-sqr-sqrt_binary64
27×add-cube-cbrt_binary64
13×cube-prod_binary64
Counts
4 → 97
Calls

4 calls:

3.0ms
(pow.f64 (/.f64 (fma.f64 y (*.f64 y -4) (*.f64 x x)) (fma.f64 (*.f64 y y) 4 (*.f64 x x))) 3)
2.0ms
(/.f64 (fma.f64 y (*.f64 y -4) (*.f64 x x)) (fma.f64 (*.f64 y y) 4 (*.f64 x x)))
0.0ms
(fma.f64 (*.f64 y y) 4 (*.f64 x x))
0.0ms
(fma.f64 y (*.f64 y -4) (*.f64 x x))

simplify141.0ms (6.4%)

Algorithm
egg-herbie
Rules
956×times-frac_binary64
649×log-prod_binary64
469×fma-def_binary64
357×unswap-sqr_binary64
193×fma-neg_binary64
Counts
193 → 135
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01745004
14694683
215154579
343344555
457614555

prune96.0ms (4.3%)

Pruning

4 alts after pruning (3 fresh and 1 done)

PrunedKeptTotal
New1341135
Fresh022
Picked101
Done011
Total1354139
Error
0.7b
Counts
139 → 4
Alt Table
StatusErrorProgram
31.6b
(cbrt.f64 (pow.f64 (cbrt.f64 (pow.f64 (/.f64 (fma.f64 y (*.f64 y -4) (*.f64 x x)) (fma.f64 (*.f64 y y) 4 (*.f64 x x))) 3)) 3))
35.8b
(fma.f64 (pow.f64 (/.f64 x y) 4) -1/8 (fma.f64 1/2 (/.f64 (*.f64 x x) (*.f64 y y)) -1))
33.3b
-1
30.7b
1
Compiler

Compiled 4100 to 2130 computations (48% saved)

localize16.0ms (0.7%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(pow.f64 (/.f64 (fma.f64 y (*.f64 y -4) (*.f64 x x)) (fma.f64 (*.f64 y y) 4 (*.f64 x x))) 3)
0.0b
(pow.f64 (cbrt.f64 (pow.f64 (/.f64 (fma.f64 y (*.f64 y -4) (*.f64 x x)) (fma.f64 (*.f64 y y) 4 (*.f64 x x))) 3)) 3)
1.8b
(fma.f64 y (*.f64 y -4) (*.f64 x x))
31.0b
(/.f64 (fma.f64 y (*.f64 y -4) (*.f64 x x)) (fma.f64 (*.f64 y y) 4 (*.f64 x x)))

series35.0ms (1.6%)

Counts
1 → 24
Calls

1 calls:

35.0ms
(pow.f64 (cbrt.f64 (pow.f64 (/.f64 (fma.f64 y (*.f64 y -4) (*.f64 x x)) (fma.f64 (*.f64 y y) 4 (*.f64 x x))) 3)) 3)

rewrite23.0ms (1.1%)

Algorithm
rewrite-expression-head
Rules
64×cbrt-prod_binary64
61×cube-prod_binary64
61×unpow-prod-down_binary64
36×times-frac_binary64
34×*-un-lft-identity_binary64
Counts
1 → 91
Calls

1 calls:

8.0ms
(pow.f64 (cbrt.f64 (pow.f64 (/.f64 (fma.f64 y (*.f64 y -4) (*.f64 x x)) (fma.f64 (*.f64 y y) 4 (*.f64 x x))) 3)) 3)

simplify137.0ms (6.2%)

Algorithm
egg-herbie
Rules
713×times-frac_binary64
473×associate-/l*_binary64
390×unswap-sqr_binary64
335×fma-def_binary64
317×log-div_binary64
Counts
115 → 80
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01845129
14264528
212084340
346054328
453784328

prune159.0ms (7.2%)

Pruning

4 alts after pruning (2 fresh and 2 done)

PrunedKeptTotal
New2000200
Fresh022
Picked011
Done011
Total2004204
Error
0.7b
Counts
204 → 4
Alt Table
StatusErrorProgram
31.6b
(cbrt.f64 (pow.f64 (cbrt.f64 (pow.f64 (/.f64 (fma.f64 y (*.f64 y -4) (*.f64 x x)) (fma.f64 (*.f64 y y) 4 (*.f64 x x))) 3)) 3))
35.8b
(fma.f64 (pow.f64 (/.f64 x y) 4) -1/8 (fma.f64 1/2 (/.f64 (*.f64 x x) (*.f64 y y)) -1))
33.3b
-1
30.7b
1
Compiler

Compiled 6860 to 3811 computations (44.4% saved)

regimes176.0ms (8%)

Accuracy

Total 12.5b remaining (97.3%)

Threshold costs 0b (0%)

Counts
10 → 3
Compiler

Compiled 1253 to 763 computations (39.1% saved)

bsearch1.0ms (0%)

Compiler

Compiled 5 to 3 computations (40% saved)

simplify3.0ms (0.2%)

Algorithm
egg-herbie
Rules
*-commutative_binary64
1-exp_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02554
12854
22754

end1.0ms (0%)

Compiler

Compiled 39 to 24 computations (38.5% saved)

sample734.0ms (33.4%)

Algorithm
intervals
Results
459.0ms8000×body128valid
Compiler

Compiled 113 to 74 computations (34.5% saved)

Profiling

Loading profile data...