Details

Time bar (total: 5.6s)

analyze76.0ms (1.3%)

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
12.5%87.4%0.1%5
46.8%53.1%0.1%6
70.2%29.7%0.1%7
76.5%23.4%0.1%8
83.5%16.4%0.1%9
87%12.9%0.1%10
91.1%8.8%0.1%11
93.2%6.7%0.1%12
95.4%4.5%0.1%13
96.5%3.4%0.1%14
Compiler

Compiled 18 to 10 computations (44.4% saved)

sample16.0ms (0.3%)

Algorithm
intervals
Results
10.0ms256×body128valid
Compiler

Compiled 35 to 21 computations (40% saved)

simplify304.0ms (5.4%)

Algorithm
egg-herbie
Counts
1 → 1
Iterations

Useful iterations: 0 (134.0ms)

IterNodesCost
0493625
1493625

prune2.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New011
Fresh011
Picked000
Done000
Total022

Merged error: 21.4b

Counts
2 → 1
Compiler

Compiled 34 to 18 computations (47.1% saved)

localize8.0ms (0.1%)

Local error

Found 3 expressions with local error:

0.0b
(*.f64 (+.f64 x y) (+.f64 x y))
0.0b
(*.f64 (*.f64 (+.f64 x y) (+.f64 x y)) (+.f64 (+.f64 x y) 1))
21.2b
(/.f64 (*.f64 x y) (*.f64 (*.f64 (+.f64 x y) (+.f64 x y)) (+.f64 (+.f64 x y) 1)))

rewrite75.0ms (1.3%)

Algorithm
rewrite-expression-head
Rules
60×frac-times_binary64_9977 flip3-+_binary64_9970 flip-+_binary64_9941
31×add-cbrt-cube_binary64_10003 add-exp-log_binary64_10005
30×associate-*l/_binary64_9910
27×*-un-lft-identity_binary64_9967
26×associate-/r/_binary64_9913
18×associate-*r/_binary64_9909
15×pow1_binary64_10028
13×prod-exp_binary64_10016 cbrt-unprod_binary64_10000
11×add-sqr-sqrt_binary64_9989
distribute-lft-out_binary64_9918 associate-*r*_binary64_9907
add-cube-cbrt_binary64_10002
div-exp_binary64_10018 cbrt-undiv_binary64_10001 swap-sqr_binary64_9934
associate-*l*_binary64_9908
pow-prod-down_binary64_10038
add-log-exp_binary64_10006
distribute-lft-in_binary64_9916 distribute-rgt-in_binary64_9917 unswap-sqr_binary64_9935 *-commutative_binary64_9898
times-frac_binary64_9973 associate-/l*_binary64_9912 pow2_binary64_10048 div-inv_binary64_9964 pow-plus_binary64_10030 associate-/r*_binary64_9911 pow-sqr_binary64_9940 frac-2neg_binary64_9978 clear-num_binary64_9966 pow-prod-up_binary64_10037
Counts
3 → 140
Calls

3 calls:

22.0ms
(/.f64 (*.f64 x y) (*.f64 (*.f64 (+.f64 x y) (+.f64 x y)) (+.f64 (+.f64 x y) 1)))
20.0ms
(*.f64 (*.f64 (+.f64 x y) (+.f64 x y)) (+.f64 (+.f64 x y) 1))
10.0ms
(*.f64 (+.f64 x y) (+.f64 x y))

series311.0ms (5.5%)

Counts
3 → 9
Calls

3 calls:

214.0ms
(/.f64 (*.f64 x y) (*.f64 (*.f64 (+.f64 x y) (+.f64 x y)) (+.f64 (+.f64 x y) 1)))
71.0ms
(*.f64 (*.f64 (+.f64 x y) (+.f64 x y)) (+.f64 (+.f64 x y) 1))
26.0ms
(*.f64 (+.f64 x y) (+.f64 x y))

simplify86.0ms (1.5%)

Algorithm
egg-herbie
Counts
149 → 149
Iterations

Useful iterations: 0 (53.0ms)

IterNodesCost
049573602
149573602

prune182.0ms (3.2%)

Pruning

9 alts after pruning (9 fresh and 0 done)

PrunedKeptTotal
New1409149
Fresh000
Picked101
Done000
Total1419150

Merged error: 7.5b

Counts
150 → 9
Compiler

Compiled 4247 to 1691 computations (60.2% saved)

localize11.0ms (0.2%)

Local error

Found 4 expressions with local error:

0.0b
(pow.f64 (+.f64 x y) 2)
0.1b
(/.f64 (*.f64 y (/.f64 x (pow.f64 (+.f64 x y) 2))) (+.f64 (+.f64 x y) 1))
7.8b
(*.f64 y (/.f64 x (pow.f64 (+.f64 x y) 2)))
20.0b
(/.f64 x (pow.f64 (+.f64 x y) 2))

rewrite62.0ms (1.1%)

Algorithm
rewrite-expression-head
Rules
69×*-un-lft-identity_binary64_9967
63×times-frac_binary64_9973
55×add-sqr-sqrt_binary64_9989
43×add-cube-cbrt_binary64_10002
36×add-exp-log_binary64_10005
33×unpow-prod-down_binary64_10046
31×associate-*r*_binary64_9907
20×add-cbrt-cube_binary64_10003
14×div-exp_binary64_10018 distribute-lft-out_binary64_9918 associate-/r*_binary64_9911
unpow2_binary64_10032 sqr-pow_binary64_9939
prod-exp_binary64_10016
pow1_binary64_10028
cbrt-undiv_binary64_10001
unswap-sqr_binary64_9935
cbrt-unprod_binary64_10000 pow-to-exp_binary64_10036 associate-/l*_binary64_9912 add-log-exp_binary64_10006 pow-exp_binary64_10035
associate-*l*_binary64_9908 pow-unpow_binary64_10044 div-inv_binary64_9964
associate-*r/_binary64_9909 frac-2neg_binary64_9978 clear-num_binary64_9966 associate-/r/_binary64_9913
flip3-+_binary64_9970 associate-/l/_binary64_9914 flip-+_binary64_9941 pow-prod-down_binary64_10038 *-commutative_binary64_9898 pow-pow_binary64_10039
Counts
4 → 159
Calls

4 calls:

17.0ms
(/.f64 (*.f64 y (/.f64 x (pow.f64 (+.f64 x y) 2))) (+.f64 (+.f64 x y) 1))
16.0ms
(*.f64 y (/.f64 x (pow.f64 (+.f64 x y) 2)))
8.0ms
(/.f64 x (pow.f64 (+.f64 x y) 2))
5.0ms
(pow.f64 (+.f64 x y) 2)

series639.0ms (11.4%)

Counts
4 → 12
Calls

4 calls:

404.0ms
(/.f64 (*.f64 y (/.f64 x (pow.f64 (+.f64 x y) 2))) (+.f64 (+.f64 x y) 1))
114.0ms
(*.f64 y (/.f64 x (pow.f64 (+.f64 x y) 2)))
94.0ms
(/.f64 x (pow.f64 (+.f64 x y) 2))
27.0ms
(pow.f64 (+.f64 x y) 2)

simplify54.0ms (1%)

Algorithm
egg-herbie
Counts
171 → 171
Iterations

Useful iterations: 0 (23.0ms)

IterNodesCost
052742666

prune174.0ms (3.1%)

Pruning

10 alts after pruning (9 fresh and 1 done)

PrunedKeptTotal
New1647171
Fresh628
Picked011
Done000
Total17010180

Merged error: 0.0b

Counts
180 → 10
Compiler

Compiled 3638 to 1638 computations (55% saved)

localize8.0ms (0.1%)

Local error

Found 4 expressions with local error:

0.0b
(/.f64 x (+.f64 x y))
0.0b
(/.f64 y (+.f64 x y))
0.0b
(*.f64 (/.f64 y (+.f64 x y)) (/.f64 x (+.f64 x y)))
0.1b
(/.f64 (*.f64 (/.f64 y (+.f64 x y)) (/.f64 x (+.f64 x y))) (+.f64 (+.f64 x y) 1))

rewrite68.0ms (1.2%)

Algorithm
rewrite-expression-head
Rules
78×*-un-lft-identity_binary64_9967
57×times-frac_binary64_9973
52×add-sqr-sqrt_binary64_9989
40×add-cube-cbrt_binary64_10002
38×add-cbrt-cube_binary64_10003 add-exp-log_binary64_10005
20×distribute-lft-out_binary64_9918
18×associate-*l*_binary64_9908 associate-*r*_binary64_9907
15×div-exp_binary64_10018 cbrt-undiv_binary64_10001
13×associate-/r*_binary64_9911
10×associate-/r/_binary64_9913
prod-exp_binary64_10016 cbrt-unprod_binary64_10000
associate-/l*_binary64_9912
pow1_binary64_10028
flip3-+_binary64_9970 flip-+_binary64_9941 div-inv_binary64_9964
add-log-exp_binary64_10006 unswap-sqr_binary64_9935
associate-/l/_binary64_9914 frac-2neg_binary64_9978 clear-num_binary64_9966
frac-times_binary64_9977 associate-*l/_binary64_9910 associate-*r/_binary64_9909
pow-prod-down_binary64_10038 *-commutative_binary64_9898
Counts
4 → 162
Calls

4 calls:

21.0ms
(*.f64 (/.f64 y (+.f64 x y)) (/.f64 x (+.f64 x y)))
19.0ms
(/.f64 (*.f64 (/.f64 y (+.f64 x y)) (/.f64 x (+.f64 x y))) (+.f64 (+.f64 x y) 1))
6.0ms
(/.f64 y (+.f64 x y))
6.0ms
(/.f64 x (+.f64 x y))

series453.0ms (8.1%)

Counts
4 → 12
Calls

4 calls:

223.0ms
(/.f64 (*.f64 (/.f64 y (+.f64 x y)) (/.f64 x (+.f64 x y))) (+.f64 (+.f64 x y) 1))
127.0ms
(*.f64 (/.f64 y (+.f64 x y)) (/.f64 x (+.f64 x y)))
51.0ms
(/.f64 x (+.f64 x y))
51.0ms
(/.f64 y (+.f64 x y))

simplify85.0ms (1.5%)

Algorithm
egg-herbie
Counts
174 → 174
Iterations

Useful iterations: 0 (53.0ms)

IterNodesCost
049732987
149732987

prune151.0ms (2.7%)

Pruning

9 alts after pruning (9 fresh and 0 done)

PrunedKeptTotal
New1704174
Fresh358
Picked101
Done101
Total1759184

Merged error: 0b

Counts
184 → 9
Compiler

Compiled 4087 to 1137 computations (72.2% saved)

localize10.0ms (0.2%)

Local error

Found 4 expressions with local error:

0.0b
(/.f64 x (+.f64 x y))
0.0b
(*.f64 (/.f64 1 (/.f64 (+.f64 y x) y)) (/.f64 x (+.f64 x y)))
0.1b
(/.f64 (*.f64 (/.f64 1 (/.f64 (+.f64 y x) y)) (/.f64 x (+.f64 x y))) (+.f64 (+.f64 x y) 1))
0.4b
(/.f64 1 (/.f64 (+.f64 y x) y))

rewrite118.0ms (2.1%)

Algorithm
rewrite-expression-head
Rules
226×times-frac_binary64_9973
183×*-un-lft-identity_binary64_9967
146×add-sqr-sqrt_binary64_9989
123×add-exp-log_binary64_10005
113×add-cube-cbrt_binary64_10002
65×div-exp_binary64_10018
61×add-cbrt-cube_binary64_10003
53×associate-*l*_binary64_9908
34×distribute-lft-out_binary64_9918
29×cbrt-undiv_binary64_10001
28×prod-exp_binary64_10016
25×associate-/r*_binary64_9911
18×associate-*r*_binary64_9907
12×cbrt-unprod_binary64_10000 div-inv_binary64_9964
10×1-exp_binary64_10011 rec-exp_binary64_10017 unswap-sqr_binary64_9935
associate-/r/_binary64_9913
associate-/l*_binary64_9912 pow1_binary64_10028
add-log-exp_binary64_10006
flip3-+_binary64_9970 associate-/l/_binary64_9914 flip-+_binary64_9941 frac-2neg_binary64_9978 clear-num_binary64_9966
frac-times_binary64_9977 associate-*l/_binary64_9910 associate-*r/_binary64_9909
inv-pow_binary64_10052 pow-prod-down_binary64_10038 pow-flip_binary64_10041 *-commutative_binary64_9898
Counts
4 → 282
Calls

4 calls:

40.0ms
(*.f64 (/.f64 1 (/.f64 (+.f64 y x) y)) (/.f64 x (+.f64 x y)))
25.0ms
(/.f64 (*.f64 (/.f64 1 (/.f64 (+.f64 y x) y)) (/.f64 x (+.f64 x y))) (+.f64 (+.f64 x y) 1))
9.0ms
(/.f64 1 (/.f64 (+.f64 y x) y))
6.0ms
(/.f64 x (+.f64 x y))

series420.0ms (7.5%)

Counts
4 → 12
Calls

4 calls:

201.0ms
(/.f64 (*.f64 (/.f64 1 (/.f64 (+.f64 y x) y)) (/.f64 x (+.f64 x y))) (+.f64 (+.f64 x y) 1))
112.0ms
(*.f64 (/.f64 1 (/.f64 (+.f64 y x) y)) (/.f64 x (+.f64 x y)))
58.0ms
(/.f64 1 (/.f64 (+.f64 y x) y))
48.0ms
(/.f64 x (+.f64 x y))

simplify115.0ms (2%)

Algorithm
egg-herbie
Counts
294 → 294
Iterations

Useful iterations: 0 (60.0ms)

IterNodesCost
049655551
149655551

prune266.0ms (4.7%)

Pruning

9 alts after pruning (8 fresh and 1 done)

PrunedKeptTotal
New2940294
Fresh088
Picked011
Done000
Total2949303

Merged error: 0b

Counts
303 → 9
Compiler

Compiled 7260 to 2127 computations (70.7% saved)

regimes372.0ms (6.6%)

Compiler

Compiled 5064 to 2915 computations (42.4% saved)

bsearch0.0ms (0%)

simplify2.0ms (0%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (1.0ms)

IterNodesCost
01425
11425

end0.0ms (0%)

sample1.6s (27.6%)

Algorithm
intervals
Results
291.0ms8000×body128valid
Compiler

Compiled 1712 to 986 computations (42.4% saved)

Profiling

Loading profile data...