Details

Time bar (total: 4.7s)

analyze123.0ms (2.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
25%74.9%0.1%5
25%62.4%12.6%6
31.2%50%18.8%7
40.6%37.5%22%8
45.3%26.5%28.2%9
46.8%19.5%33.7%10
48.8%14%37.2%11
51.7%10.1%38.1%12
52.8%7.1%40.1%13
53.3%5.1%41.6%14
Compiler

Compiled 20 to 12 computations (40% saved)

sample19.0ms (0.4%)

Algorithm
intervals
Results
12.0ms256×body128valid
1.0ms14×body128invalid
Compiler

Compiled 39 to 25 computations (35.9% saved)

simplify242.0ms (5.1%)

Algorithm
egg-herbie
Counts
1 → 1
Iterations

Useful iterations: 0 (141.0ms)

IterNodesCost
0495620
1495620

prune4.0ms (0.1%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New011
Fresh011
Picked000
Done000
Total022
Error
6.0b
Counts
2 → 2
Compiler

Compiled 41 to 29 computations (29.3% saved)

localize11.0ms (0.2%)

Local error

Found 4 expressions with local error:

0.0b
(+.f64 (*.f64 x.re x.im) (*.f64 x.im x.re))
0.1b
(-.f64 (*.f64 (-.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) x.re) (*.f64 (+.f64 (*.f64 x.re x.im) (*.f64 x.im x.re)) x.im))
0.2b
(*.f64 (+.f64 (*.f64 x.re x.im) (*.f64 x.im x.re)) x.im)
5.8b
(*.f64 (-.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) x.re)

rewrite34.0ms (0.7%)

Algorithm
rewrite-expression-head
Rules
12×add-sqr-sqrt_binary64_2828 associate-*l/_binary64_2749
add-exp-log_binary64_2844 add-cbrt-cube_binary64_2842 *-un-lft-identity_binary64_2806 add-log-exp_binary64_2845 add-cube-cbrt_binary64_2841 pow1_binary64_2867
associate-*l*_binary64_2747
associate-*r*_binary64_2746
flip3--_binary64_2810 flip-+_binary64_2780 frac-sub_binary64_2815 flip--_binary64_2781 flip3-+_binary64_2809
*-commutative_binary64_2737 prod-exp_binary64_2855 cbrt-unprod_binary64_2839 pow-prod-down_binary64_2877 unswap-sqr_binary64_2774
cancel-sign-sub-inv_binary64_2772 diff-log_binary64_2898 sub-neg_binary64_2799 sum-log_binary64_2897 difference-of-squares_binary64_2775 +-commutative_binary64_2736
Counts
4 → 68
Calls

4 calls:

9.0ms
(-.f64 (*.f64 (-.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) x.re) (*.f64 (+.f64 (*.f64 x.re x.im) (*.f64 x.im x.re)) x.im))
8.0ms
(*.f64 (-.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) x.re)
7.0ms
(*.f64 (+.f64 (*.f64 x.re x.im) (*.f64 x.im x.re)) x.im)
4.0ms
(+.f64 (*.f64 x.re x.im) (*.f64 x.im x.re))

series425.0ms (9%)

Counts
4 → 36
Calls

4 calls:

157.0ms
(-.f64 (*.f64 (-.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) x.re) (*.f64 (+.f64 (*.f64 x.re x.im) (*.f64 x.im x.re)) x.im))
140.0ms
(*.f64 (-.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) x.re)
78.0ms
(*.f64 (+.f64 (*.f64 x.re x.im) (*.f64 x.im x.re)) x.im)
50.0ms
(+.f64 (*.f64 x.re x.im) (*.f64 x.im x.re))
Compiler

Compiled 888 to 648 computations (27% saved)

simplify54.0ms (1.1%)

Algorithm
egg-herbie
Counts
104 → 104
Iterations

Useful iterations: 0 (25.0ms)

IterNodesCost
046912004
146912004

prune107.0ms (2.3%)

Pruning

6 alts after pruning (5 fresh and 1 done)

PrunedKeptTotal
New1004104
Fresh011
Picked011
Done000
Total1006106
Error
0.0b
Counts
106 → 6
Compiler

Compiled 2349 to 976 computations (58.5% saved)

localize11.0ms (0.2%)

Local error

Found 4 expressions with local error:

0.0b
(+.f64 (*.f64 x.re x.im) (*.f64 x.im x.re))
0.1b
(-.f64 (*.f64 (+.f64 x.re x.im) (*.f64 x.re (-.f64 x.re x.im))) (*.f64 (+.f64 (*.f64 x.re x.im) (*.f64 x.im x.re)) x.im))
0.2b
(*.f64 (+.f64 (*.f64 x.re x.im) (*.f64 x.im x.re)) x.im)
0.2b
(*.f64 (+.f64 x.re x.im) (*.f64 x.re (-.f64 x.re x.im)))

rewrite55.0ms (1.2%)

Algorithm
rewrite-expression-head
Rules
32×distribute-lft-in_binary64_2755 distribute-rgt-in_binary64_2756
25×cancel-sign-sub-inv_binary64_2772
24×associate-*r/_binary64_2748 associate-*l/_binary64_2749
19×flip-+_binary64_2780 flip3-+_binary64_2809
17×add-sqr-sqrt_binary64_2828 *-un-lft-identity_binary64_2806
16×associate--l+_binary64_2743 frac-sub_binary64_2815
15×add-cube-cbrt_binary64_2841
12×frac-times_binary64_2816
11×add-exp-log_binary64_2844 add-cbrt-cube_binary64_2842 pow1_binary64_2867
10×flip3--_binary64_2810 flip--_binary64_2781
sub-neg_binary64_2799
add-log-exp_binary64_2845
associate-*l*_binary64_2747
prod-exp_binary64_2855 cbrt-unprod_binary64_2839 associate-*r*_binary64_2746 pow-prod-down_binary64_2877
*-commutative_binary64_2737
distribute-lft-out_binary64_2757 diff-log_binary64_2898 sum-log_binary64_2897 unswap-sqr_binary64_2774 +-commutative_binary64_2736
Counts
4 → 118
Calls

4 calls:

16.0ms
(-.f64 (*.f64 (+.f64 x.re x.im) (*.f64 x.re (-.f64 x.re x.im))) (*.f64 (+.f64 (*.f64 x.re x.im) (*.f64 x.im x.re)) x.im))
12.0ms
(*.f64 (+.f64 x.re x.im) (*.f64 x.re (-.f64 x.re x.im)))
6.0ms
(*.f64 (+.f64 (*.f64 x.re x.im) (*.f64 x.im x.re)) x.im)
4.0ms
(+.f64 (*.f64 x.re x.im) (*.f64 x.im x.re))

series432.0ms (9.2%)

Counts
4 → 36
Calls

4 calls:

170.0ms
(-.f64 (*.f64 (+.f64 x.re x.im) (*.f64 x.re (-.f64 x.re x.im))) (*.f64 (+.f64 (*.f64 x.re x.im) (*.f64 x.im x.re)) x.im))
137.0ms
(*.f64 (+.f64 x.re x.im) (*.f64 x.re (-.f64 x.re x.im)))
74.0ms
(*.f64 (+.f64 (*.f64 x.re x.im) (*.f64 x.im x.re)) x.im)
51.0ms
(+.f64 (*.f64 x.re x.im) (*.f64 x.im x.re))
Compiler

Compiled 888 to 648 computations (27% saved)

simplify105.0ms (2.2%)

Algorithm
egg-herbie
Counts
154 → 154
Iterations

Useful iterations: 0 (58.0ms)

IterNodesCost
048733872
148733872

prune144.0ms (3.1%)

Pruning

8 alts after pruning (6 fresh and 2 done)

PrunedKeptTotal
New1504154
Fresh224
Picked011
Done011
Total1528160
Error
0.0b
Counts
160 → 8
Compiler

Compiled 3726 to 1378 computations (63% saved)

localize12.0ms (0.3%)

Local error

Found 4 expressions with local error:

0.0b
(+.f64 (*.f64 (*.f64 x.re x.re) (+.f64 x.re x.im)) (*.f64 (neg.f64 x.im) (+.f64 (*.f64 x.re (+.f64 x.re x.im)) (*.f64 x.re (*.f64 x.im 2)))))
0.1b
(+.f64 (*.f64 x.re (+.f64 x.re x.im)) (*.f64 x.re (*.f64 x.im 2)))
0.2b
(*.f64 (neg.f64 x.im) (+.f64 (*.f64 x.re (+.f64 x.re x.im)) (*.f64 x.re (*.f64 x.im 2))))
4.4b
(*.f64 (*.f64 x.re x.re) (+.f64 x.re x.im))

rewrite48.0ms (1%)

Algorithm
rewrite-expression-head
Rules
12×add-sqr-sqrt_binary64_2828 associate-*r/_binary64_2748
11×associate-*l*_binary64_2747 add-exp-log_binary64_2844 add-cbrt-cube_binary64_2842 *-un-lft-identity_binary64_2806 pow1_binary64_2867
add-cube-cbrt_binary64_2841
flip-+_binary64_2780 add-log-exp_binary64_2845 flip3-+_binary64_2809 associate-*r*_binary64_2746
distribute-lft-in_binary64_2755 distribute-rgt-in_binary64_2756
associate-+l+_binary64_2739 prod-exp_binary64_2855 cbrt-unprod_binary64_2839 frac-add_binary64_2814 pow-prod-down_binary64_2877
distribute-lft-neg-in_binary64_2763 distribute-lft-out_binary64_2757 distribute-rgt-neg-in_binary64_2764
*-commutative_binary64_2737 associate-+r+_binary64_2738 sum-log_binary64_2897 distribute-lft-neg-out_binary64_2765 unswap-sqr_binary64_2774 +-commutative_binary64_2736
unsub-neg_binary64_2800 neg-mul-1_binary64_2802
Counts
4 → 89
Calls

4 calls:

12.0ms
(*.f64 (neg.f64 x.im) (+.f64 (*.f64 x.re (+.f64 x.re x.im)) (*.f64 x.re (*.f64 x.im 2))))
11.0ms
(+.f64 (*.f64 (*.f64 x.re x.re) (+.f64 x.re x.im)) (*.f64 (neg.f64 x.im) (+.f64 (*.f64 x.re (+.f64 x.re x.im)) (*.f64 x.re (*.f64 x.im 2)))))
8.0ms
(*.f64 (*.f64 x.re x.re) (+.f64 x.re x.im))
8.0ms
(+.f64 (*.f64 x.re (+.f64 x.re x.im)) (*.f64 x.re (*.f64 x.im 2)))

series518.0ms (11%)

Counts
4 → 48
Calls

4 calls:

157.0ms
(*.f64 (neg.f64 x.im) (+.f64 (*.f64 x.re (+.f64 x.re x.im)) (*.f64 x.re (*.f64 x.im 2))))
155.0ms
(+.f64 (*.f64 (*.f64 x.re x.re) (+.f64 x.re x.im)) (*.f64 (neg.f64 x.im) (+.f64 (*.f64 x.re (+.f64 x.re x.im)) (*.f64 x.re (*.f64 x.im 2)))))
104.0ms
(+.f64 (*.f64 x.re (+.f64 x.re x.im)) (*.f64 x.re (*.f64 x.im 2)))
102.0ms
(*.f64 (*.f64 x.re x.re) (+.f64 x.re x.im))
Compiler

Compiled 1248 to 927 computations (25.7% saved)

simplify91.0ms (1.9%)

Algorithm
egg-herbie
Counts
137 → 137
Iterations

Useful iterations: 0 (54.0ms)

IterNodesCost
049843129
149843129

prune141.0ms (3%)

Pruning

7 alts after pruning (5 fresh and 2 done)

PrunedKeptTotal
New1343137
Fresh325
Picked011
Done112
Total1387145
Error
0b
Counts
145 → 7
Compiler

Compiled 3430 to 1541 computations (55.1% saved)

localize11.0ms (0.2%)

Local error

Found 4 expressions with local error:

0.0b
(+.f64 (+.f64 x.re x.im) (*.f64 x.im 2))
0.0b
(+.f64 (*.f64 (*.f64 x.re x.re) (+.f64 x.re x.im)) (*.f64 (*.f64 x.re (neg.f64 x.im)) (+.f64 (+.f64 x.re x.im) (*.f64 x.im 2))))
0.3b
(*.f64 (*.f64 x.re (neg.f64 x.im)) (+.f64 (+.f64 x.re x.im) (*.f64 x.im 2)))
4.4b
(*.f64 (*.f64 x.re x.re) (+.f64 x.re x.im))

rewrite48.0ms (1%)

Algorithm
rewrite-expression-head
Rules
14×add-exp-log_binary64_2844 add-cbrt-cube_binary64_2842 pow1_binary64_2867
12×associate-*r/_binary64_2748
11×add-log-exp_binary64_2845
*-un-lft-identity_binary64_2806 flip-+_binary64_2780 flip3-+_binary64_2809
add-sqr-sqrt_binary64_2828 associate-*r*_binary64_2746
prod-exp_binary64_2855 cbrt-unprod_binary64_2839 add-cube-cbrt_binary64_2841 pow-prod-down_binary64_2877
distribute-lft-in_binary64_2755 distribute-rgt-in_binary64_2756 sum-log_binary64_2897 frac-add_binary64_2814
associate-+l+_binary64_2739
associate-*l*_binary64_2747 distribute-rgt-neg-out_binary64_2766 *-commutative_binary64_2737 associate-+r+_binary64_2738 distribute-lft-neg-out_binary64_2765 +-commutative_binary64_2736
distribute-lft-out_binary64_2757 unsub-neg_binary64_2800 unswap-sqr_binary64_2774
Counts
4 → 80
Calls

4 calls:

13.0ms
(+.f64 (*.f64 (*.f64 x.re x.re) (+.f64 x.re x.im)) (*.f64 (*.f64 x.re (neg.f64 x.im)) (+.f64 (+.f64 x.re x.im) (*.f64 x.im 2))))
11.0ms
(*.f64 (*.f64 x.re x.re) (+.f64 x.re x.im))
11.0ms
(*.f64 (*.f64 x.re (neg.f64 x.im)) (+.f64 (+.f64 x.re x.im) (*.f64 x.im 2)))
6.0ms
(+.f64 (+.f64 x.re x.im) (*.f64 x.im 2))

series466.0ms (9.9%)

Counts
4 → 48
Calls

4 calls:

153.0ms
(+.f64 (*.f64 (*.f64 x.re x.re) (+.f64 x.re x.im)) (*.f64 (*.f64 x.re (neg.f64 x.im)) (+.f64 (+.f64 x.re x.im) (*.f64 x.im 2))))
152.0ms
(*.f64 (*.f64 x.re (neg.f64 x.im)) (+.f64 (+.f64 x.re x.im) (*.f64 x.im 2)))
102.0ms
(*.f64 (*.f64 x.re x.re) (+.f64 x.re x.im))
58.0ms
(+.f64 (+.f64 x.re x.im) (*.f64 x.im 2))
Compiler

Compiled 1188 to 882 computations (25.8% saved)

simplify86.0ms (1.8%)

Algorithm
egg-herbie
Counts
128 → 128
Iterations

Useful iterations: 0 (54.0ms)

IterNodesCost
049842712
149842712

prune112.0ms (2.4%)

Pruning

7 alts after pruning (4 fresh and 3 done)

PrunedKeptTotal
New1280128
Fresh044
Picked011
Done022
Total1287135
Error
0b
Counts
135 → 7
Compiler

Compiled 2888 to 1162 computations (59.8% saved)

regimes204.0ms (4.3%)

Accuracy

Total 0.2b remaining (98.4%)

Threshold costs 0.2b (98.4%)

Compiler

Compiled 2628 to 1668 computations (36.5% saved)

bsearch0.0ms (0%)

simplify4.0ms (0.1%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (2.0ms)

IterNodesCost
08233
18233

end0.0ms (0%)

sample1.2s (25.6%)

Algorithm
intervals
Results
373.0ms8000×body128valid
19.0ms407×body128invalid
Compiler

Compiled 916 to 582 computations (36.5% saved)

Profiling

Loading profile data...