Details

Time bar (total: 8.1s)

analyze872.0ms (10.8%)

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
6.2%93.6%0.2%8
25%74.9%0.2%9
28.1%71.7%0.2%10
29.6%70.2%0.2%11
53%46.8%0.2%12
71.3%28.5%0.2%13
71.7%28.1%0.2%14
Compiler

Compiled 16 to 12 computations (25% saved)

sample35.0ms (0.4%)

Algorithm
intervals
Results
19.0ms256×body128valid
1.0ms15×body128invalid
Compiler

Compiled 31 to 27 computations (12.9% saved)

simplify260.0ms (3.2%)

Algorithm
egg-herbie
Counts
1 → 1
Iterations

Useful iterations: 0 (133.0ms)

IterNodesCost
0523230

prune2.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New011
Fresh011
Picked000
Done000
Total022

Merged error: 28.6b

Counts
2 → 1
Compiler

Compiled 30 to 22 computations (26.7% saved)

localize17.0ms (0.2%)

Local error

Found 3 expressions with local error:

0.0b
(-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
0.0b
(+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))
28.0b
(/.f64 (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))

rewrite25.0ms (0.3%)

Algorithm
rewrite-expression-head
Rules
11×add-sqr-sqrt_binary64_1805 add-cube-cbrt_binary64_1818 *-un-lft-identity_binary64_1783
times-frac_binary64_1789
add-log-exp_binary64_1822
add-cbrt-cube_binary64_1819 add-exp-log_binary64_1821
associate-/l*_binary64_1728 associate-/r*_binary64_1727 pow1_binary64_1844
flip3--_binary64_1787 associate-/l/_binary64_1730 associate-/r/_binary64_1729 flip-+_binary64_1757 flip3-+_binary64_1786 flip--_binary64_1758
div-sub_binary64_1788 +-commutative_binary64_1713 div-inv_binary64_1780 cancel-sign-sub-inv_binary64_1749 diff-log_binary64_1875 cbrt-undiv_binary64_1817 frac-2neg_binary64_1794 sum-log_binary64_1874 div-exp_binary64_1834 clear-num_binary64_1782 sub-neg_binary64_1776
Counts
3 → 55
Calls

3 calls:

10.0ms
(/.f64 (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
7.0ms
(+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))
4.0ms
(-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))

series238.0ms (2.9%)

Counts
3 → 9
Calls

3 calls:

142.0ms
(/.f64 (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
54.0ms
(-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
41.0ms
(+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))

simplify168.0ms (2.1%)

Algorithm
egg-herbie
Counts
64 → 64
Iterations

Useful iterations: 0 (124.0ms)

IterNodesCost
049811822
149811822

prune144.0ms (1.8%)

Pruning

10 alts after pruning (10 fresh and 0 done)

PrunedKeptTotal
New541064
Fresh000
Picked101
Done000
Total551065

Merged error: 27.7b

Counts
65 → 10
Compiler

Compiled 1701 to 733 computations (56.9% saved)

localize17.0ms (0.2%)

Local error

Found 4 expressions with local error:

0.1b
(/.f64 (/.f64 (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) (sqrt.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))))
16.6b
(/.f64 (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
33.1b
(sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
33.1b
(sqrt.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))

rewrite148.0ms (1.8%)

Algorithm
rewrite-expression-head
Rules
372×times-frac_binary64_1789
294×*-un-lft-identity_binary64_1783
226×sqrt-prod_binary64_1799
192×add-sqr-sqrt_binary64_1805
190×add-cube-cbrt_binary64_1818
52×distribute-lft-out_binary64_1734 unpow-prod-down_binary64_1862
33×associate-/l*_binary64_1728
22×sqrt-div_binary64_1800
18×associate-/r/_binary64_1729
14×associate-/r*_binary64_1727
11×add-cbrt-cube_binary64_1819 add-exp-log_binary64_1821 flip-+_binary64_1757 flip3-+_binary64_1786
div-inv_binary64_1780
pow1_binary64_1844
cbrt-undiv_binary64_1817 div-exp_binary64_1834 add-log-exp_binary64_1822
div-sub_binary64_1788 associate-/l/_binary64_1730
pow1/2_binary64_1863 frac-2neg_binary64_1794 sqrt-pow1_binary64_1801 clear-num_binary64_1782 rem-sqrt-square_binary64_1796
flip3--_binary64_1787 flip--_binary64_1758
Counts
4 → 318
Calls

4 calls:

44.0ms
(/.f64 (/.f64 (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) (sqrt.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))))
14.0ms
(/.f64 (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
8.0ms
(sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
4.0ms
(sqrt.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))

series360.0ms (4.5%)

Counts
4 → 12
Calls

4 calls:

157.0ms
(/.f64 (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
142.0ms
(/.f64 (/.f64 (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) (sqrt.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))))
34.0ms
(sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
26.0ms
(sqrt.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))

simplify348.0ms (4.3%)

Algorithm
egg-herbie
Counts
330 → 330
Iterations

Useful iterations: 0 (84.0ms)

IterNodesCost
0497819342
1497819342

prune856.0ms (10.6%)

Pruning

11 alts after pruning (11 fresh and 0 done)

PrunedKeptTotal
New3255330
Fresh369
Picked101
Done000
Total32911340

Merged error: 25.3b

Counts
340 → 11
Compiler

Compiled 13075 to 6601 computations (49.5% saved)

localize22.0ms (0.3%)

Local error

Found 4 expressions with local error:

0.1b
(/.f64 (*.f64 (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) (/.f64 1 (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (sqrt.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))))
16.7b
(*.f64 (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) (/.f64 1 (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
33.1b
(sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
33.1b
(sqrt.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))

rewrite115.0ms (1.4%)

Algorithm
rewrite-expression-head
Rules
44×*-un-lft-identity_binary64_1783
40×add-sqr-sqrt_binary64_1805
34×times-frac_binary64_1789
31×sqrt-prod_binary64_1799
30×associate-*r*_binary64_1723
28×add-exp-log_binary64_1821
26×add-cube-cbrt_binary64_1818
18×add-cbrt-cube_binary64_1819
div-exp_binary64_1834
distribute-lft-out_binary64_1734 prod-exp_binary64_1832 unpow-prod-down_binary64_1862 sqrt-div_binary64_1800 pow1_binary64_1844
associate-/l/_binary64_1730 associate-/r*_binary64_1727
cbrt-undiv_binary64_1817 unswap-sqr_binary64_1751
flip3--_binary64_1787 associate-/r/_binary64_1729 cbrt-unprod_binary64_1816 flip-+_binary64_1757 associate-*l/_binary64_1726 frac-times_binary64_1793 flip3-+_binary64_1786 flip--_binary64_1758 add-log-exp_binary64_1822
associate-*l*_binary64_1724
associate-*r/_binary64_1725 un-div-inv_binary64_1781 1-exp_binary64_1827 div-inv_binary64_1780 pow1/2_binary64_1863 sqrt-pow1_binary64_1801 rem-sqrt-square_binary64_1796 rec-exp_binary64_1833
associate-/l*_binary64_1728 *-commutative_binary64_1714 frac-2neg_binary64_1794 clear-num_binary64_1782 pow-prod-down_binary64_1854
Counts
4 → 130
Calls

4 calls:

47.0ms
(/.f64 (*.f64 (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) (/.f64 1 (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (sqrt.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))))
24.0ms
(*.f64 (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) (/.f64 1 (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
8.0ms
(sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
7.0ms
(sqrt.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))

series390.0ms (4.8%)

Counts
4 → 12
Calls

4 calls:

195.0ms
(*.f64 (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) (/.f64 1 (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
136.0ms
(/.f64 (*.f64 (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) (/.f64 1 (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (sqrt.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))))
37.0ms
(sqrt.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
22.0ms
(sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))

simplify99.0ms (1.2%)

Algorithm
egg-herbie
Counts
142 → 142
Iterations

Useful iterations: 0 (50.0ms)

IterNodesCost
050364117

prune225.0ms (2.8%)

Pruning

11 alts after pruning (10 fresh and 1 done)

PrunedKeptTotal
New1420142
Fresh01010
Picked011
Done000
Total14211153

Merged error: 25.3b

Counts
153 → 11
Compiler

Compiled 4651 to 2261 computations (51.4% saved)

localize28.0ms (0.3%)

Local error

Found 4 expressions with local error:

0.2b
(/.f64 1 (/.f64 (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (-.f64 (*.f64 y.re x.im) (*.f64 y.im x.re))))
16.7b
(/.f64 (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (-.f64 (*.f64 y.re x.im) (*.f64 y.im x.re)))
33.1b
(sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
33.1b
(sqrt.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))

rewrite91.0ms (1.1%)

Algorithm
rewrite-expression-head
Rules
210×times-frac_binary64_1789
182×*-un-lft-identity_binary64_1783
116×add-sqr-sqrt_binary64_1805
114×add-cube-cbrt_binary64_1818
88×sqrt-prod_binary64_1799
34×distribute-lft-out_binary64_1734 unpow-prod-down_binary64_1862
33×associate-/r*_binary64_1727
17×add-exp-log_binary64_1821
11×add-cbrt-cube_binary64_1819 associate-/r/_binary64_1729 associate-/l*_binary64_1728
div-exp_binary64_1834
pow1_binary64_1844
div-inv_binary64_1780 sqrt-div_binary64_1800
flip3--_binary64_1787 flip--_binary64_1758
cbrt-undiv_binary64_1817 add-log-exp_binary64_1822
flip-+_binary64_1757 flip3-+_binary64_1786
associate-/l/_binary64_1730 1-exp_binary64_1827 pow1/2_binary64_1863 frac-2neg_binary64_1794 sqrt-pow1_binary64_1801 clear-num_binary64_1782 rem-sqrt-square_binary64_1796 rec-exp_binary64_1833
inv-pow_binary64_1868 pow-flip_binary64_1857
Counts
4 → 227
Calls

4 calls:

29.0ms
(/.f64 1 (/.f64 (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (-.f64 (*.f64 y.re x.im) (*.f64 y.im x.re))))
14.0ms
(/.f64 (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (-.f64 (*.f64 y.re x.im) (*.f64 y.im x.re)))
8.0ms
(sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
6.0ms
(sqrt.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))

series290.0ms (3.6%)

Counts
4 → 12
Calls

4 calls:

123.0ms
(/.f64 1 (/.f64 (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (-.f64 (*.f64 y.re x.im) (*.f64 y.im x.re))))
104.0ms
(/.f64 (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (-.f64 (*.f64 y.re x.im) (*.f64 y.im x.re)))
32.0ms
(sqrt.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
31.0ms
(sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))

simplify184.0ms (2.3%)

Algorithm
egg-herbie
Counts
239 → 239
Iterations

Useful iterations: 0 (68.0ms)

IterNodesCost
0519510472

prune450.0ms (5.6%)

Pruning

11 alts after pruning (9 fresh and 2 done)

PrunedKeptTotal
New2390239
Fresh099
Picked011
Done011
Total23911250

Merged error: 25.3b

Counts
250 → 11
Compiler

Compiled 9349 to 3856 computations (58.8% saved)

regimes482.0ms (6%)

Compiler

Compiled 4639 to 3412 computations (26.4% saved)

bsearch7.0ms (0.1%)

Compiler

Compiled 15 to 11 computations (26.7% saved)

simplify6.0ms (0.1%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (2.0ms)

IterNodesCost
064105
164105

end0.0ms (0%)

sample2.2s (27.1%)

Algorithm
intervals
Results
427.0ms8000×body128valid
22.0ms426×body128invalid
Compiler

Compiled 981 to 705 computations (28.1% saved)

Profiling

Loading profile data...