Details

Time bar (total: 1.1min)

analyze9.9s (15.5%)

Algorithm
search
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
051411925
055
155
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
0%99.8%0.2%9
0%99.8%0.2%10
6.2%93.5%0.2%11
6.2%93.5%0.2%12
7.8%92%0.2%13
8.6%91.2%0.2%14
Compiler

Compiled 110 to 84 computations (23.6% saved)

sample1.3s (2%)

Algorithm
intervals
Results
326.0ms50×body4096valid
226.0ms60×body2048valid
174.0ms27×body4096invalid
164.0ms42×body2048invalid
76.0ms31×body1024valid
69.0ms26×body1024invalid
60.0msbody8192invalid
55.0ms100×body128valid
28.0ms18×body512invalid
14.0msbody8192valid
13.0ms31×body128invalid
13.0msbody512valid
5.0msbody256invalid
5.0msbody256valid
Compiler

Compiled 219 to 172 computations (21.5% saved)

simplify27.0ms (0%)

Algorithm
egg-herbie
Counts
1 → 1
Iterations

Useful iterations: 0 (20.0ms)

IterNodesCost
05232172

prune13.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

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

Compiled 323 to 229 computations (29.1% saved)

localize49.0ms (0.1%)

Local error

Found 4 expressions with local error:

26.5b
(cos.f64 (*.f64 (/.f64 angle 180) PI.f64))
26.5b
(cos.f64 (*.f64 (/.f64 angle 180) PI.f64))
26.5b
(cos.f64 (*.f64 (/.f64 angle 180) PI.f64))
33.1b
(-.f64 (*.f64 (/.f64 (/.f64 (*.f64 (*.f64 (*.f64 2 (-.f64 (pow.f64 b 2) (pow.f64 a 2))) (sin.f64 (*.f64 (/.f64 angle 180) PI.f64))) (cos.f64 (*.f64 (/.f64 angle 180) PI.f64))) x-scale) y-scale) (/.f64 (/.f64 (*.f64 (*.f64 (*.f64 2 (-.f64 (pow.f64 b 2) (pow.f64 a 2))) (sin.f64 (*.f64 (/.f64 angle 180) PI.f64))) (cos.f64 (*.f64 (/.f64 angle 180) PI.f64))) x-scale) y-scale)) (*.f64 (*.f64 4 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) PI.f64))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) PI.f64))) 2)) x-scale) x-scale)) (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) PI.f64))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) PI.f64))) 2)) y-scale) y-scale)))

rewrite394.0ms (0.6%)

Algorithm
rewrite-expression-head
Error
38.5b
Rules
15×associate-*r/_binary64_20
frac-sub_binary64_87
associate-*l/_binary64_21
add-log-exp_binary64_117 frac-times_binary64_88
pow1_binary64_139 add-exp-log_binary64_116 add-cbrt-cube_binary64_114 add-cube-cbrt_binary64_113 add-sqr-sqrt_binary64_100 *-un-lft-identity_binary64_78
sub-div_binary64_85
diff-log_binary64_170 flip3--_binary64_82 sub-neg_binary64_71 flip--_binary64_53 cancel-sign-sub-inv_binary64_44
Counts
4 → 44
Calls

4 calls:

44.0ms
(-.f64 (*.f64 (/.f64 (/.f64 (*.f64 (*.f64 (*.f64 2 (-.f64 (pow.f64 b 2) (pow.f64 a 2))) (sin.f64 (*.f64 (/.f64 angle 180) PI.f64))) (cos.f64 (*.f64 (/.f64 angle 180) PI.f64))) x-scale) y-scale) (/.f64 (/.f64 (*.f64 (*.f64 (*.f64 2 (-.f64 (pow.f64 b 2) (pow.f64 a 2))) (sin.f64 (*.f64 (/.f64 angle 180) PI.f64))) (cos.f64 (*.f64 (/.f64 angle 180) PI.f64))) x-scale) y-scale)) (*.f64 (*.f64 4 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) PI.f64))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) PI.f64))) 2)) x-scale) x-scale)) (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) PI.f64))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) PI.f64))) 2)) y-scale) y-scale)))
2.0ms
(cos.f64 (*.f64 (/.f64 angle 180) PI.f64))
2.0ms
(cos.f64 (*.f64 (/.f64 angle 180) PI.f64))
2.0ms
(cos.f64 (*.f64 (/.f64 angle 180) PI.f64))
Compiler

Compiled 6110 to 4322 computations (29.3% saved)

series5.2s (8.1%)

Error
35.9b
Counts
4 → 24
Calls

4 calls:

5.0s
(-.f64 (*.f64 (/.f64 (/.f64 (*.f64 (*.f64 (*.f64 2 (-.f64 (pow.f64 b 2) (pow.f64 a 2))) (sin.f64 (*.f64 (/.f64 angle 180) PI.f64))) (cos.f64 (*.f64 (/.f64 angle 180) PI.f64))) x-scale) y-scale) (/.f64 (/.f64 (*.f64 (*.f64 (*.f64 2 (-.f64 (pow.f64 b 2) (pow.f64 a 2))) (sin.f64 (*.f64 (/.f64 angle 180) PI.f64))) (cos.f64 (*.f64 (/.f64 angle 180) PI.f64))) x-scale) y-scale)) (*.f64 (*.f64 4 (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (sin.f64 (*.f64 (/.f64 angle 180) PI.f64))) 2) (pow.f64 (*.f64 b (cos.f64 (*.f64 (/.f64 angle 180) PI.f64))) 2)) x-scale) x-scale)) (/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 a (cos.f64 (*.f64 (/.f64 angle 180) PI.f64))) 2) (pow.f64 (*.f64 b (sin.f64 (*.f64 (/.f64 angle 180) PI.f64))) 2)) y-scale) y-scale)))
35.0ms
(cos.f64 (*.f64 (/.f64 angle 180) PI.f64))
34.0ms
(cos.f64 (*.f64 (/.f64 angle 180) PI.f64))
33.0ms
(cos.f64 (*.f64 (/.f64 angle 180) PI.f64))
Compiler

Compiled 6565 to 5069 computations (22.8% saved)

simplify99.0ms (0.2%)

Algorithm
egg-herbie
Counts
68 → 68
Iterations

Useful iterations: 0 (48.0ms)

IterNodesCost
050676456

prune422.0ms (0.7%)

Pruning

9 alts after pruning (9 fresh and 0 done)

PrunedKeptTotal
New59968
Fresh101
Picked101
Done000
Total61970
Error
34.5b
Counts
70 → 9
Compiler

Compiled 8346 to 5382 computations (35.5% saved)

localize41.0ms (0.1%)

Local error

Found 4 expressions with local error:

26.4b
(cos.f64 (*.f64 1/180 (*.f64 angle PI.f64)))
26.4b
(cos.f64 (*.f64 1/180 (*.f64 angle PI.f64)))
26.7b
(sin.f64 (*.f64 1/180 (*.f64 angle PI.f64)))
26.7b
(sin.f64 (*.f64 1/180 (*.f64 angle PI.f64)))

rewrite98.0ms (0.2%)

Algorithm
rewrite-expression-head
Error
34.5b
Rules
pow1_binary64_139 add-log-exp_binary64_117 add-exp-log_binary64_116 add-cbrt-cube_binary64_114 add-cube-cbrt_binary64_113 add-sqr-sqrt_binary64_100 *-un-lft-identity_binary64_78
Counts
4 → 28
Calls

4 calls:

3.0ms
(sin.f64 (*.f64 1/180 (*.f64 angle PI.f64)))
3.0ms
(cos.f64 (*.f64 1/180 (*.f64 angle PI.f64)))
3.0ms
(sin.f64 (*.f64 1/180 (*.f64 angle PI.f64)))
3.0ms
(cos.f64 (*.f64 1/180 (*.f64 angle PI.f64)))
Compiler

Compiled 2212 to 1128 computations (49% saved)

series138.0ms (0.2%)

Error
34.5b
Counts
4 → 12
Calls

4 calls:

28.0ms
(sin.f64 (*.f64 1/180 (*.f64 angle PI.f64)))
26.0ms
(sin.f64 (*.f64 1/180 (*.f64 angle PI.f64)))
24.0ms
(cos.f64 (*.f64 1/180 (*.f64 angle PI.f64)))
23.0ms
(cos.f64 (*.f64 1/180 (*.f64 angle PI.f64)))
Compiler

Compiled 2596 to 1574 computations (39.4% saved)

simplify165.0ms (0.3%)

Algorithm
egg-herbie
Counts
40 → 40
Iterations

Useful iterations: 0 (155.0ms)

IterNodesCost
05187494

prune146.0ms (0.2%)

Pruning

9 alts after pruning (8 fresh and 1 done)

PrunedKeptTotal
New40040
Fresh088
Picked011
Done000
Total40949
Error
34.5b
Counts
49 → 9
Compiler

Compiled 3758 to 2054 computations (45.3% saved)

localize12.0ms (0%)

Local error

Found 4 expressions with local error:

0.0b
(*.f64 -4 (/.f64 (*.f64 (*.f64 a a) (*.f64 b b)) (*.f64 (*.f64 x-scale x-scale) (*.f64 y-scale y-scale))))
17.2b
(*.f64 (*.f64 x-scale x-scale) (*.f64 y-scale y-scale))
17.4b
(*.f64 (*.f64 a a) (*.f64 b b))
19.3b
(/.f64 (*.f64 (*.f64 a a) (*.f64 b b)) (*.f64 (*.f64 x-scale x-scale) (*.f64 y-scale y-scale)))

rewrite532.0ms (0.8%)

Algorithm
rewrite-expression-head
Error
16.3b
Rules
315×add-exp-log_binary64_116 add-cbrt-cube_binary64_114
202×prod-exp_binary64_127 cbrt-unprod_binary64_111
62×pow1_binary64_139
50×div-exp_binary64_129 cbrt-undiv_binary64_112
29×pow-prod-down_binary64_149
add-sqr-sqrt_binary64_100 pow-prod-up_binary64_148 pow-plus_binary64_141
associate-*r*_binary64_18
add-cube-cbrt_binary64_113 *-un-lft-identity_binary64_78
associate-*l*_binary64_19
add-log-exp_binary64_117 pow2_binary64_159 pow-sqr_binary64_51
unswap-sqr_binary64_46 *-commutative_binary64_9
times-frac_binary64_84 div-inv_binary64_75
frac-2neg_binary64_89 clear-num_binary64_77 associate-/l*_binary64_23 associate-/r*_binary64_22 associate-*r/_binary64_20
Counts
4 → 192
Calls

4 calls:

23.0ms
(*.f64 -4 (/.f64 (*.f64 (*.f64 a a) (*.f64 b b)) (*.f64 (*.f64 x-scale x-scale) (*.f64 y-scale y-scale))))
20.0ms
(/.f64 (*.f64 (*.f64 a a) (*.f64 b b)) (*.f64 (*.f64 x-scale x-scale) (*.f64 y-scale y-scale)))
9.0ms
(*.f64 (*.f64 a a) (*.f64 b b))
8.0ms
(*.f64 (*.f64 x-scale x-scale) (*.f64 y-scale y-scale))
Compiler

Compiled 5975 to 992 computations (83.4% saved)

series970.0ms (1.5%)

Error
34.5b
Counts
4 → 36
Calls

4 calls:

407.0ms
(*.f64 -4 (/.f64 (*.f64 (*.f64 a a) (*.f64 b b)) (*.f64 (*.f64 x-scale x-scale) (*.f64 y-scale y-scale))))
385.0ms
(/.f64 (*.f64 (*.f64 a a) (*.f64 b b)) (*.f64 (*.f64 x-scale x-scale) (*.f64 y-scale y-scale)))
76.0ms
(*.f64 (*.f64 x-scale x-scale) (*.f64 y-scale y-scale))
71.0ms
(*.f64 (*.f64 a a) (*.f64 b b))
Compiler

Compiled 1836 to 1667 computations (9.2% saved)

simplify97.0ms (0.2%)

Algorithm
egg-herbie
Counts
228 → 228
Iterations

Useful iterations: 0 (50.0ms)

IterNodesCost
051543990

prune225.0ms (0.4%)

Pruning

11 alts after pruning (10 fresh and 1 done)

PrunedKeptTotal
New2226228
Fresh347
Picked011
Done101
Total22611237
Error
4.6b
Counts
237 → 11
Compiler

Compiled 4508 to 1991 computations (55.8% saved)

localize9.0ms (0%)

Local error

Found 4 expressions with local error:

0.0b
(*.f64 -4 (*.f64 (fabs.f64 (/.f64 (*.f64 a b) (*.f64 x-scale y-scale))) (fabs.f64 (/.f64 (*.f64 a b) (*.f64 x-scale y-scale)))))
0.3b
(*.f64 (fabs.f64 (/.f64 (*.f64 a b) (*.f64 x-scale y-scale))) (fabs.f64 (/.f64 (*.f64 a b) (*.f64 x-scale y-scale))))
7.8b
(/.f64 (*.f64 a b) (*.f64 x-scale y-scale))
7.8b
(/.f64 (*.f64 a b) (*.f64 x-scale y-scale))

rewrite126.0ms (0.2%)

Algorithm
rewrite-expression-head
Error
4.4b
Rules
35×add-exp-log_binary64_116 add-cbrt-cube_binary64_114
16×pow1_binary64_139
12×prod-exp_binary64_127 cbrt-unprod_binary64_111 add-sqr-sqrt_binary64_100
add-cube-cbrt_binary64_113 *-un-lft-identity_binary64_78
div-exp_binary64_129 cbrt-undiv_binary64_112
associate-*l*_binary64_19
add-log-exp_binary64_117 pow-prod-down_binary64_149 associate-*r*_binary64_18
swap-sqr_binary64_45
frac-2neg_binary64_89 times-frac_binary64_84 clear-num_binary64_77 div-inv_binary64_75 associate-/l*_binary64_23 associate-/r*_binary64_22 unswap-sqr_binary64_46 *-commutative_binary64_9
pow2_binary64_159 pow-prod-up_binary64_148 pow-plus_binary64_141 sqr-abs_binary64_93 pow-sqr_binary64_51
Counts
4 → 87
Calls

4 calls:

6.0ms
(/.f64 (*.f64 a b) (*.f64 x-scale y-scale))
6.0ms
(/.f64 (*.f64 a b) (*.f64 x-scale y-scale))
5.0ms
(*.f64 -4 (*.f64 (fabs.f64 (/.f64 (*.f64 a b) (*.f64 x-scale y-scale))) (fabs.f64 (/.f64 (*.f64 a b) (*.f64 x-scale y-scale)))))
4.0ms
(*.f64 (fabs.f64 (/.f64 (*.f64 a b) (*.f64 x-scale y-scale))) (fabs.f64 (/.f64 (*.f64 a b) (*.f64 x-scale y-scale))))
Compiler

Compiled 2445 to 458 computations (81.3% saved)

series790.0ms (1.2%)

Error
4.6b
Counts
4 → 48
Calls

4 calls:

220.0ms
(*.f64 -4 (*.f64 (fabs.f64 (/.f64 (*.f64 a b) (*.f64 x-scale y-scale))) (fabs.f64 (/.f64 (*.f64 a b) (*.f64 x-scale y-scale)))))
207.0ms
(/.f64 (*.f64 a b) (*.f64 x-scale y-scale))
187.0ms
(/.f64 (*.f64 a b) (*.f64 x-scale y-scale))
146.0ms
(*.f64 (fabs.f64 (/.f64 (*.f64 a b) (*.f64 x-scale y-scale))) (fabs.f64 (/.f64 (*.f64 a b) (*.f64 x-scale y-scale))))
Compiler

Compiled 2232 to 1354 computations (39.3% saved)

simplify61.0ms (0.1%)

Algorithm
egg-herbie
Counts
135 → 135
Iterations

Useful iterations: 0 (35.0ms)

IterNodesCost
052081879

prune114.0ms (0.2%)

Pruning

18 alts after pruning (18 fresh and 0 done)

PrunedKeptTotal
New12312135
Fresh369
Picked101
Done101
Total12818146
Error
4.4b
Counts
146 → 18
Compiler

Compiled 2492 to 612 computations (75.4% saved)

regimes3.1s (4.8%)

Accuracy

Total 1.6b remaining (27.5%)

Threshold costs 0b (0%)

Compiler

Compiled 56047 to 39869 computations (28.9% saved)

bsearch0.0ms (0%)

simplify2.0ms (0%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (1.0ms)

IterNodesCost
02232
12232

end0.0ms (0%)

sample40.1s (62.5%)

Algorithm
intervals
Results
9.2s1406×body4096valid
6.7s1658×body2048valid
5.2s798×body4096invalid
4.7s1207×body2048invalid
2.2s879×body1024valid
1.8s3457×body128valid
1.6s657×body1024invalid
1.1s79×body8192valid
569.0ms40×body8192invalid
543.0ms357×body512valid
450.0ms969×body128invalid
428.0ms265×body512invalid
154.0ms164×body256valid
105.0ms112×body256invalid
Compiler

Compiled 6955 to 4945 computations (28.9% saved)

Profiling

Loading profile data...