Details

Time bar (total: 5.2s)

analyze503.0ms (9.6%)

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)

sample23.0ms (0.4%)

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

Compiled 31 to 27 computations (12.9% saved)

simplify411.0ms (7.9%)

Algorithm
egg-herbie
Counts
1 → 1
Iterations

Useful iterations: 0 (248.0ms)

IterNodesCost
0512730

prune2.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New011
Fresh011
Picked000
Done000
Total022

Merged error: 24.9b

Counts
2 → 1
Compiler

Compiled 30 to 22 computations (26.7% saved)

localize10.0ms (0.2%)

Local error

Found 3 expressions with local error:

0.0b
(+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))
0.2b
(-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
24.4b
(/.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.5%)

Algorithm
rewrite-expression-head
Rules
11×add-sqr-sqrt_binary64_1783 *-un-lft-identity_binary64_1762 add-cube-cbrt_binary64_1794
times-frac_binary64_1768
add-log-exp_binary64_1798
add-cbrt-cube_binary64_1795 add-exp-log_binary64_1797
associate-/r*_binary64_1708 associate-/l*_binary64_1709 pow1_binary64_1820
associate-/r/_binary64_1710 flip3--_binary64_1766 associate-/l/_binary64_1711 flip3-+_binary64_1765 flip-+_binary64_1736 flip--_binary64_1737
frac-2neg_binary64_1773 diff-log_binary64_1851 div-sub_binary64_1767 clear-num_binary64_1761 div-inv_binary64_1759 +-commutative_binary64_1694 cbrt-undiv_binary64_1793 div-exp_binary64_1810 sub-neg_binary64_1755 sum-log_binary64_1850
Counts
3 → 54
Calls

3 calls:

12.0ms
(/.f64 (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
4.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))

series335.0ms (6.4%)

Counts
3 → 9
Calls

3 calls:

199.0ms
(/.f64 (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
97.0ms
(-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
39.0ms
(+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))

simplify74.0ms (1.4%)

Algorithm
egg-herbie
Counts
63 → 63
Iterations

Useful iterations: 0 (53.0ms)

IterNodesCost
057161814

prune99.0ms (1.9%)

Pruning

10 alts after pruning (10 fresh and 0 done)

PrunedKeptTotal
New531063
Fresh000
Picked101
Done000
Total541064

Merged error: 24.0b

Counts
64 → 10
Compiler

Compiled 1721 to 736 computations (57.2% saved)

localize17.0ms (0.3%)

Local error

Found 4 expressions with local error:

0.2b
(-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
18.7b
(/.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))))
28.0b
(sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
28.0b
(sqrt.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))

rewrite46.0ms (0.9%)

Algorithm
rewrite-expression-head
Rules
43×*-un-lft-identity_binary64_1762
28×sqrt-prod_binary64_1777
25×add-sqr-sqrt_binary64_1783
24×times-frac_binary64_1768
23×add-cube-cbrt_binary64_1794
10×distribute-lft-out_binary64_1715 unpow-prod-down_binary64_1838
associate-/r*_binary64_1708
add-log-exp_binary64_1798 add-cbrt-cube_binary64_1795 sqrt-div_binary64_1778 add-exp-log_binary64_1797 pow1_binary64_1820
flip3-+_binary64_1765 flip-+_binary64_1736 associate-/l*_binary64_1709
associate-/r/_binary64_1710 flip3--_binary64_1766 rem-sqrt-square_binary64_1775 associate-/l/_binary64_1711 flip--_binary64_1737 sqrt-pow1_binary64_1779 pow1/2_binary64_1839
frac-2neg_binary64_1773 diff-log_binary64_1851 div-sub_binary64_1767 clear-num_binary64_1761 div-inv_binary64_1759 cbrt-undiv_binary64_1793 div-exp_binary64_1810 sub-neg_binary64_1755
Counts
4 → 95
Calls

4 calls:

15.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))))
11.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)))
4.0ms
(-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))

series422.0ms (8.1%)

Counts
4 → 12
Calls

4 calls:

251.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))))
75.0ms
(-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
50.0ms
(sqrt.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
46.0ms
(sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))

simplify66.0ms (1.3%)

Algorithm
egg-herbie
Counts
107 → 107
Iterations

Useful iterations: 0 (32.0ms)

IterNodesCost
051853239

prune156.0ms (3%)

Pruning

11 alts after pruning (11 fresh and 0 done)

PrunedKeptTotal
New1034107
Fresh279
Picked101
Done000
Total10611117

Merged error: 21.8b

Counts
117 → 11
Compiler

Compiled 3760 to 1598 computations (57.5% saved)

localize19.0ms (0.4%)

Local error

Found 4 expressions with local error:

0.2b
(-.f64 (*.f64 y.re x.im) (*.f64 y.im x.re))
18.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)))
28.0b
(sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
28.0b
(sqrt.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))

rewrite45.0ms (0.9%)

Algorithm
rewrite-expression-head
Rules
43×*-un-lft-identity_binary64_1762
28×sqrt-prod_binary64_1777
25×add-sqr-sqrt_binary64_1783
24×times-frac_binary64_1768
23×add-cube-cbrt_binary64_1794
10×distribute-lft-out_binary64_1715 unpow-prod-down_binary64_1838
associate-/l*_binary64_1709
add-log-exp_binary64_1798 add-cbrt-cube_binary64_1795 sqrt-div_binary64_1778 add-exp-log_binary64_1797 pow1_binary64_1820
flip3-+_binary64_1765 associate-/r*_binary64_1708 flip-+_binary64_1736
associate-/r/_binary64_1710 flip3--_binary64_1766 rem-sqrt-square_binary64_1775 associate-/l/_binary64_1711 flip--_binary64_1737 sqrt-pow1_binary64_1779 pow1/2_binary64_1839
frac-2neg_binary64_1773 diff-log_binary64_1851 clear-num_binary64_1761 div-inv_binary64_1759 cbrt-undiv_binary64_1793 div-exp_binary64_1810 sub-neg_binary64_1755
Counts
4 → 94
Calls

4 calls:

15.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)))
9.0ms
(sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
5.0ms
(sqrt.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
4.0ms
(-.f64 (*.f64 y.re x.im) (*.f64 y.im x.re))

series321.0ms (6.1%)

Counts
4 → 12
Calls

4 calls:

152.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)))
81.0ms
(-.f64 (*.f64 y.re x.im) (*.f64 y.im x.re))
45.0ms
(sqrt.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
42.0ms
(sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))

simplify82.0ms (1.6%)

Algorithm
egg-herbie
Counts
106 → 106
Iterations

Useful iterations: 0 (47.0ms)

IterNodesCost
049643259
149643259

prune162.0ms (3.1%)

Pruning

11 alts after pruning (10 fresh and 1 done)

PrunedKeptTotal
New1060106
Fresh01010
Picked011
Done000
Total10611117

Merged error: 21.8b

Counts
117 → 11
Compiler

Compiled 3945 to 1803 computations (54.3% saved)

localize14.0ms (0.3%)

Local error

Found 4 expressions with local error:

0.3b
(*.f64 (/.f64 1 (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) (/.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)))))
18.7b
(/.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))))
28.0b
(sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
28.0b
(sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))

rewrite107.0ms (2%)

Algorithm
rewrite-expression-head
Rules
107×*-un-lft-identity_binary64_1762
101×add-sqr-sqrt_binary64_1783
94×times-frac_binary64_1768
71×sqrt-prod_binary64_1777
53×add-cube-cbrt_binary64_1794
30×associate-*l*_binary64_1705 associate-*r*_binary64_1704
28×add-exp-log_binary64_1797
24×distribute-lft-out_binary64_1715 unpow-prod-down_binary64_1838
18×add-cbrt-cube_binary64_1795
15×unswap-sqr_binary64_1730
10×sqrt-div_binary64_1778
div-exp_binary64_1810
prod-exp_binary64_1808 associate-/r*_binary64_1708 pow1_binary64_1820
associate-/r/_binary64_1710
flip3-+_binary64_1765 flip-+_binary64_1736 cbrt-undiv_binary64_1793
add-log-exp_binary64_1798 cbrt-unprod_binary64_1792
div-inv_binary64_1759 associate-/l*_binary64_1709
rem-sqrt-square_binary64_1775 associate-/l/_binary64_1711 sqrt-pow1_binary64_1779 1-exp_binary64_1803 rec-exp_binary64_1809 pow1/2_binary64_1839
flip3--_binary64_1766 frac-2neg_binary64_1773 frac-times_binary64_1772 div-sub_binary64_1767 pow-prod-down_binary64_1830 clear-num_binary64_1761 associate-*l/_binary64_1707 associate-*r/_binary64_1706 flip--_binary64_1737 *-commutative_binary64_1695
Counts
4 → 185
Calls

4 calls:

48.0ms
(*.f64 (/.f64 1 (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) (/.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)))))
15.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))))
9.0ms
(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)))

series604.0ms (11.5%)

Counts
4 → 12
Calls

4 calls:

273.0ms
(*.f64 (/.f64 1 (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) (/.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)))))
245.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))))
44.0ms
(sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
42.0ms
(sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))

simplify117.0ms (2.2%)

Algorithm
egg-herbie
Counts
197 → 197
Iterations

Useful iterations: 0 (44.0ms)

IterNodesCost
054417497

prune546.0ms (10.4%)

Pruning

13 alts after pruning (11 fresh and 2 done)

PrunedKeptTotal
New1952197
Fresh099
Picked011
Done011
Total19513208

Merged error: 21.8b

Counts
208 → 13
Compiler

Compiled 6824 to 3923 computations (42.5% saved)

regimes115.0ms (2.2%)

Compiler

Compiled 1068 to 868 computations (18.7% saved)

bsearch0.0ms (0%)

simplify3.0ms (0.1%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (1.0ms)

IterNodesCost
05351
15351

end0.0ms (0%)

sample908.0ms (17.4%)

Algorithm
intervals
Results
347.0ms8000×body128valid
20.0ms479×body128invalid
Compiler

Compiled 308 to 246 computations (20.1% saved)

Profiling

Loading profile data...