Details

Time bar (total: 5.2s)

analyze1.3s (25.3%)

Algorithm
search
Search
TrueOtherFalseIter
0%99.8%0.2%0
0%99.8%0.2%1
0%99.8%0.2%2
0%99.8%0.2%3
0%99.8%0.2%4
0%99.8%0.2%5
0%99.8%0.2%6
0%99.8%0.2%7
0%99.8%0.2%8
6.2%93.6%0.2%9
28.1%68.6%3.3%10
29.6%65.5%4.9%11
32%61.7%6.3%12
35.5%56.9%7.6%13
48%38.7%13.4%14
Compiler

Compiled 20 to 12 computations (40% saved)

sample39.0ms (0.7%)

Algorithm
intervals
Results
13.0ms256×body128valid
4.0ms74×body128invalid
Compiler

Compiled 43 to 27 computations (37.2% saved)

simplify101.0ms (1.9%)

Algorithm
egg-herbie
Rules
1400×fma-neg_binary64
654×fma-def_binary64
233×sub-neg_binary64
210×unsub-neg_binary64
158×cancel-sign-sub-inv_binary64
Counts
1 → 2
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01219
13214
29413
326313
465513
5155613
6169113
7150013
8150013
9273913
10270713
11270713
12263213

prune3.0ms (0.1%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
0.0b
Counts
3 → 2
Alt Table
StatusErrorProgram
0.0b
(*.f64 d1 (+.f64 d4 (-.f64 (-.f64 d2 d3) d1)))
0.0b
(-.f64 (+.f64 (-.f64 (*.f64 d1 d2) (*.f64 d1 d3)) (*.f64 d4 d1)) (*.f64 d1 d1))
Compiler

Compiled 92 to 53 computations (42.4% saved)

localize9.0ms (0.2%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(-.f64 (*.f64 d1 d2) (*.f64 d1 d3))
0.0b
(-.f64 (+.f64 (-.f64 (*.f64 d1 d2) (*.f64 d1 d3)) (*.f64 d4 d1)) (*.f64 d1 d1))
0.0b
(+.f64 (-.f64 (*.f64 d1 d2) (*.f64 d1 d3)) (*.f64 d4 d1))

series42.0ms (0.8%)

Counts
3 → 132
Calls

3 calls:

21.0ms
(-.f64 (+.f64 (-.f64 (*.f64 d1 d2) (*.f64 d1 d3)) (*.f64 d4 d1)) (*.f64 d1 d1))
13.0ms
(+.f64 (-.f64 (*.f64 d1 d2) (*.f64 d1 d3)) (*.f64 d4 d1))
7.0ms
(-.f64 (*.f64 d1 d2) (*.f64 d1 d3))

rewrite18.0ms (0.3%)

Algorithm
rewrite-expression-head
Rules
19×add-log-exp_binary64
add-sqr-sqrt_binary64
diff-log_binary64
*-un-lft-identity_binary64
add-cube-cbrt_binary64
Counts
3 → 64
Calls

3 calls:

7.0ms
(-.f64 (+.f64 (-.f64 (*.f64 d1 d2) (*.f64 d1 d3)) (*.f64 d4 d1)) (*.f64 d1 d1))
5.0ms
(+.f64 (-.f64 (*.f64 d1 d2) (*.f64 d1 d3)) (*.f64 d4 d1))
3.0ms
(-.f64 (*.f64 d1 d2) (*.f64 d1 d3))

simplify101.0ms (1.9%)

Algorithm
egg-herbie
Rules
713×associate-*l*_binary64
685×fma-def_binary64
488×fma-neg_binary64
459×distribute-rgt-in_binary64
440×distribute-lft-in_binary64
Counts
196 → 127
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01282558
13612139
212302096
349662096
452292096

prune119.0ms (2.3%)

Pruning

5 alts after pruning (5 fresh and 0 done)

PrunedKeptTotal
New1225127
Fresh101
Picked101
Done000
Total1245129
Error
0.0b
Counts
129 → 5
Alt Table
StatusErrorProgram
33.4b
(-.f64 (/.f64 (*.f64 d1 (*.f64 (-.f64 (-.f64 d2 d3) d4) (*.f64 (-.f64 (+.f64 d2 d4) d3) d1))) (*.f64 d1 (-.f64 (-.f64 d2 d3) d4))) (*.f64 d1 d1))
37.8b
(-.f64 (/.f64 (+.f64 (pow.f64 (-.f64 (*.f64 d1 d2) (*.f64 d1 d3)) 3) (pow.f64 (*.f64 d4 d1) 3)) (+.f64 (*.f64 (-.f64 (*.f64 d1 d2) (*.f64 d1 d3)) (-.f64 (*.f64 d1 d2) (*.f64 d1 d3))) (-.f64 (*.f64 (*.f64 d4 d1) (*.f64 d4 d1)) (*.f64 (-.f64 (*.f64 d1 d2) (*.f64 d1 d3)) (*.f64 d4 d1))))) (*.f64 d1 d1))
0.0b
(+.f64 (-.f64 (*.f64 d1 d2) (*.f64 d1 d3)) (*.f64 d1 (-.f64 d4 d1)))
0.0b
(-.f64 (+.f64 (fma.f64 d1 d2 (neg.f64 (*.f64 d3 d1))) (+.f64 (fma.f64 (neg.f64 d3) d1 (*.f64 d3 d1)) (*.f64 d4 d1))) (*.f64 d1 d1))
27.5b
(/.f64 (-.f64 (*.f64 (*.f64 (-.f64 (+.f64 d2 d4) d3) d1) (*.f64 (-.f64 (+.f64 d2 d4) d3) d1)) (pow.f64 d1 4)) (*.f64 d1 (+.f64 (-.f64 (+.f64 d2 d4) d3) d1)))
Compiler

Compiled 2850 to 600 computations (78.9% saved)

localize13.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(fma.f64 d1 d2 (neg.f64 (*.f64 d3 d1)))
0.0b
(-.f64 (+.f64 (fma.f64 d1 d2 (neg.f64 (*.f64 d3 d1))) (+.f64 (fma.f64 (neg.f64 d3) d1 (*.f64 d3 d1)) (*.f64 d4 d1))) (*.f64 d1 d1))
0.0b
(+.f64 (fma.f64 d1 d2 (neg.f64 (*.f64 d3 d1))) (+.f64 (fma.f64 (neg.f64 d3) d1 (*.f64 d3 d1)) (*.f64 d4 d1)))
49.9b
(fma.f64 (neg.f64 d3) d1 (*.f64 d3 d1))

series70.0ms (1.3%)

Counts
4 → 156
Calls

4 calls:

28.0ms
(-.f64 (+.f64 (fma.f64 d1 d2 (neg.f64 (*.f64 d3 d1))) (+.f64 (fma.f64 (neg.f64 d3) d1 (*.f64 d3 d1)) (*.f64 d4 d1))) (*.f64 d1 d1))
21.0ms
(+.f64 (fma.f64 d1 d2 (neg.f64 (*.f64 d3 d1))) (+.f64 (fma.f64 (neg.f64 d3) d1 (*.f64 d3 d1)) (*.f64 d4 d1)))
11.0ms
(fma.f64 d1 d2 (neg.f64 (*.f64 d3 d1)))
9.0ms
(fma.f64 (neg.f64 d3) d1 (*.f64 d3 d1))

rewrite15.0ms (0.3%)

Algorithm
rewrite-expression-head
Rules
18×add-log-exp_binary64
13×*-un-lft-identity_binary64
add-sqr-sqrt_binary64
add-cube-cbrt_binary64
sum-log_binary64
Counts
4 → 66
Calls

4 calls:

6.0ms
(-.f64 (+.f64 (fma.f64 d1 d2 (neg.f64 (*.f64 d3 d1))) (+.f64 (fma.f64 (neg.f64 d3) d1 (*.f64 d3 d1)) (*.f64 d4 d1))) (*.f64 d1 d1))
4.0ms
(+.f64 (fma.f64 d1 d2 (neg.f64 (*.f64 d3 d1))) (+.f64 (fma.f64 (neg.f64 d3) d1 (*.f64 d3 d1)) (*.f64 d4 d1)))
0.0ms
(fma.f64 (neg.f64 d3) d1 (*.f64 d3 d1))
0.0ms
(fma.f64 d1 d2 (neg.f64 (*.f64 d3 d1)))

simplify105.0ms (2%)

Algorithm
egg-herbie
Rules
704×distribute-rgt-in_binary64
579×distribute-lft-in_binary64
566×fma-neg_binary64
513×fma-def_binary64
385×associate-*l*_binary64
Counts
222 → 132
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01233429
13082672
210222069
343702069
448622069

prune95.0ms (1.8%)

Pruning

5 alts after pruning (4 fresh and 1 done)

PrunedKeptTotal
New1302132
Fresh224
Picked011
Done000
Total1325137
Error
0.0b
Counts
137 → 5
Alt Table
StatusErrorProgram
37.8b
(-.f64 (/.f64 (+.f64 (pow.f64 (*.f64 d1 (-.f64 d2 d3)) 3) (pow.f64 (*.f64 d4 d1) 3)) (fma.f64 (*.f64 d4 d1) (*.f64 d4 d1) (*.f64 (*.f64 d1 (-.f64 d2 d3)) (*.f64 d1 (-.f64 (-.f64 d2 d3) d4))))) (*.f64 d1 d1))
27.5b
(/.f64 (-.f64 (*.f64 (*.f64 (-.f64 (+.f64 d2 d4) d3) d1) (*.f64 (-.f64 (+.f64 d2 d4) d3) d1)) (pow.f64 d1 4)) (*.f64 d1 (+.f64 (-.f64 (+.f64 d2 d4) d3) d1)))
33.4b
(-.f64 (/.f64 (*.f64 d1 (*.f64 (-.f64 (-.f64 d2 d3) d4) (*.f64 (-.f64 (+.f64 d2 d4) d3) d1))) (*.f64 d1 (-.f64 (-.f64 d2 d3) d4))) (*.f64 d1 d1))
0.0b
(-.f64 (+.f64 (fma.f64 d1 d2 (neg.f64 (*.f64 d3 d1))) (+.f64 (fma.f64 (neg.f64 d3) d1 (*.f64 d3 d1)) (*.f64 d4 d1))) (*.f64 d1 d1))
0.0b
(+.f64 (fma.f64 d1 d2 (neg.f64 (*.f64 d3 d1))) (*.f64 d1 (-.f64 d4 d1)))
Compiler

Compiled 3687 to 617 computations (83.3% saved)

localize11.0ms (0.2%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(fma.f64 d1 d2 (neg.f64 (*.f64 d3 d1)))
0.0b
(*.f64 d1 (-.f64 d4 d1))
0.0b
(+.f64 (fma.f64 d1 d2 (neg.f64 (*.f64 d3 d1))) (*.f64 d1 (-.f64 d4 d1)))

series29.0ms (0.6%)

Counts
2 → 72
Calls

2 calls:

23.0ms
(+.f64 (fma.f64 d1 d2 (neg.f64 (*.f64 d3 d1))) (*.f64 d1 (-.f64 d4 d1)))
6.0ms
(*.f64 d1 (-.f64 d4 d1))

rewrite21.0ms (0.4%)

Algorithm
rewrite-expression-head
Rules
37×add-sqr-sqrt_binary64
36×prod-diff_binary64
35×*-un-lft-identity_binary64
33×add-cube-cbrt_binary64
26×distribute-lft-in_binary64
Counts
2 → 93
Calls

2 calls:

6.0ms
(*.f64 d1 (-.f64 d4 d1))
5.0ms
(+.f64 (fma.f64 d1 d2 (neg.f64 (*.f64 d3 d1))) (*.f64 d1 (-.f64 d4 d1)))

simplify91.0ms (1.7%)

Algorithm
egg-herbie
Rules
895×fma-neg_binary64
727×fma-def_binary64
457×distribute-rgt-in_binary64
427×distribute-lft-in_binary64
179×associate-*l*_binary64
Counts
165 → 141
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01712548
12992087
211581752
345241752
450821752

prune127.0ms (2.4%)

Pruning

4 alts after pruning (3 fresh and 1 done)

PrunedKeptTotal
New1593162
Fresh303
Picked101
Done011
Total1634167
Error
0b
Counts
167 → 4
Alt Table
StatusErrorProgram
29.2b
(+.f64 (fma.f64 d1 d2 (neg.f64 (*.f64 d3 d1))) (*.f64 (sqrt.f64 d1) (*.f64 (sqrt.f64 d1) (-.f64 d4 d1))))
0.5b
(+.f64 (fma.f64 d1 d2 (neg.f64 (*.f64 d3 d1))) (*.f64 (*.f64 (cbrt.f64 d1) (cbrt.f64 d1)) (*.f64 (cbrt.f64 d1) (-.f64 d4 d1))))
0.5b
(+.f64 (fma.f64 d1 d2 (neg.f64 (*.f64 d3 d1))) (*.f64 (*.f64 (cbrt.f64 (*.f64 d1 (-.f64 d4 d1))) (cbrt.f64 (*.f64 d1 (-.f64 d4 d1)))) (cbrt.f64 (*.f64 d1 (-.f64 d4 d1)))))
0.0b
(-.f64 (+.f64 (fma.f64 d1 d2 (neg.f64 (*.f64 d3 d1))) (+.f64 (fma.f64 (neg.f64 d3) d1 (*.f64 d3 d1)) (*.f64 d4 d1))) (*.f64 d1 d1))
Compiler

Compiled 3726 to 733 computations (80.3% saved)

localize12.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(*.f64 (cbrt.f64 d1) (-.f64 d4 d1))
0.2b
(*.f64 (*.f64 (cbrt.f64 d1) (cbrt.f64 d1)) (*.f64 (cbrt.f64 d1) (-.f64 d4 d1)))
0.5b
(*.f64 (cbrt.f64 d1) (cbrt.f64 d1))
0.7b
(cbrt.f64 d1)

series163.0ms (3.1%)

Counts
4 → 72
Calls

4 calls:

73.0ms
(*.f64 (cbrt.f64 d1) (-.f64 d4 d1))
36.0ms
(*.f64 (cbrt.f64 d1) (cbrt.f64 d1))
36.0ms
(cbrt.f64 d1)
18.0ms
(*.f64 (*.f64 (cbrt.f64 d1) (cbrt.f64 d1)) (*.f64 (cbrt.f64 d1) (-.f64 d4 d1)))

rewrite43.0ms (0.8%)

Algorithm
rewrite-expression-head
Rules
72×add-sqr-sqrt_binary64
65×distribute-lft-in_binary64
65×distribute-rgt-in_binary64
60×*-un-lft-identity_binary64
58×add-cube-cbrt_binary64
Counts
4 → 187
Calls

4 calls:

14.0ms
(*.f64 (*.f64 (cbrt.f64 d1) (cbrt.f64 d1)) (*.f64 (cbrt.f64 d1) (-.f64 d4 d1)))
7.0ms
(*.f64 (cbrt.f64 d1) (-.f64 d4 d1))
5.0ms
(*.f64 (cbrt.f64 d1) (cbrt.f64 d1))
1.0ms
(cbrt.f64 d1)

simplify172.0ms (3.3%)

Algorithm
egg-herbie
Rules
441×associate-*l*_binary64
430×exp-prod_binary64
416×fma-neg_binary64
397×unswap-sqr_binary64
339×distribute-rgt-in_binary64
Counts
259 → 238
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
02623249
14212775
214222413
337572199
441132101
548352101
646462101

prune215.0ms (4.1%)

Pruning

4 alts after pruning (2 fresh and 2 done)

PrunedKeptTotal
New2740274
Fresh022
Picked011
Done011
Total2744278
Error
0b
Counts
278 → 4
Alt Table
StatusErrorProgram
29.2b
(+.f64 (fma.f64 d1 d2 (neg.f64 (*.f64 d3 d1))) (*.f64 (sqrt.f64 d1) (*.f64 (sqrt.f64 d1) (-.f64 d4 d1))))
0.5b
(+.f64 (fma.f64 d1 d2 (neg.f64 (*.f64 d3 d1))) (*.f64 (*.f64 (cbrt.f64 d1) (cbrt.f64 d1)) (*.f64 (cbrt.f64 d1) (-.f64 d4 d1))))
0.5b
(+.f64 (fma.f64 d1 d2 (neg.f64 (*.f64 d3 d1))) (*.f64 (*.f64 (cbrt.f64 (*.f64 d1 (-.f64 d4 d1))) (cbrt.f64 (*.f64 d1 (-.f64 d4 d1)))) (cbrt.f64 (*.f64 d1 (-.f64 d4 d1)))))
0.0b
(-.f64 (+.f64 (fma.f64 d1 d2 (neg.f64 (*.f64 d3 d1))) (+.f64 (fma.f64 (neg.f64 d3) d1 (*.f64 d3 d1)) (*.f64 d4 d1))) (*.f64 d1 d1))
Compiler

Compiled 8219 to 1543 computations (81.2% saved)

regimes1.0s (19.3%)

Accuracy

Total 0.0b remaining (41.1%)

Threshold costs 0.0b (41.1%)

Counts
163 → 1
Compiler

Compiled 16570 to 9637 computations (41.8% saved)

simplify3.0ms (0.1%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
01319
12719
24019
34419
44619
54419

end6.0ms (0.1%)

Compiler

Compiled 51 to 30 computations (41.2% saved)

sample1.3s (24.4%)

Algorithm
intervals
Results
437.0ms8000×body128valid
119.0ms2319×body128invalid
Compiler

Compiled 145 to 78 computations (46.2% saved)

Profiling

Loading profile data...