Details

Time bar (total: 1.1min)

analyze9.7s (14.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
Symmetry
Compiler

Compiled 110 to 84 computations (23.6% saved)

sample1.2s (1.8%)

Algorithm
intervals
Results
289.0ms44×body4096invalid
245.0ms37×body4096valid
204.0ms56×body2048valid
116.0ms30×body2048invalid
73.0msbody8192valid
59.0ms118×body128valid
53.0ms22×body1024valid
50.0ms21×body1024invalid
20.0ms13×body512valid
19.0msbody8192invalid
17.0ms37×body128invalid
17.0ms11×body512invalid
6.0msbody256invalid
5.0msbody256valid
Compiler

Compiled 219 to 172 computations (21.5% saved)

simplify26.0ms (0%)

Algorithm
egg-herbie
Counts
1 → 1
Iterations

Useful iterations: 0 (19.0ms)

IterNodesCost
05232172

prune13.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

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

Compiled 323 to 229 computations (29.1% saved)

localize281.0ms (0.4%)

Local error

Found 4 expressions with local error:

27.2b
(cos.f64 (*.f64 (/.f64 angle 180) PI.f64))
27.2b
(cos.f64 (*.f64 (/.f64 angle 180) PI.f64))
27.2b
(cos.f64 (*.f64 (/.f64 angle 180) PI.f64))
27.9b
(-.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)))

rewrite387.0ms (0.6%)

Algorithm
rewrite-expression-head
Error
33.0b
Rules
15×associate-*r/_binary64_1725
frac-sub_binary64_1792
associate-*l/_binary64_1726
add-log-exp_binary64_1822 frac-times_binary64_1793
pow1_binary64_1844 add-exp-log_binary64_1821 add-cbrt-cube_binary64_1819 add-cube-cbrt_binary64_1818 add-sqr-sqrt_binary64_1805 *-un-lft-identity_binary64_1783
sub-div_binary64_1790
diff-log_binary64_1875 flip3--_binary64_1787 sub-neg_binary64_1776 flip--_binary64_1758 cancel-sign-sub-inv_binary64_1749
Counts
4 → 44
Calls

4 calls:

42.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.1s (7.6%)

Error
32.6b
Counts
4 → 24
Calls

4 calls:

4.9s
(-.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))
30.0ms
(cos.f64 (*.f64 (/.f64 angle 180) PI.f64))
29.0ms
(cos.f64 (*.f64 (/.f64 angle 180) PI.f64))
Compiler

Compiled 6565 to 5069 computations (22.8% saved)

simplify97.0ms (0.1%)

Algorithm
egg-herbie
Counts
68 → 68
Iterations

Useful iterations: 0 (48.0ms)

IterNodesCost
050676456

prune384.0ms (0.6%)

Pruning

8 alts after pruning (8 fresh and 0 done)

PrunedKeptTotal
New60868
Fresh101
Picked101
Done000
Total62870
Error
31.5b
Counts
70 → 8
Compiler

Compiled 8207 to 5277 computations (35.7% saved)

localize35.0ms (0.1%)

Local error

Found 4 expressions with local error:

27.1b
(cos.f64 (*.f64 1/180 (*.f64 angle PI.f64)))
27.1b
(cos.f64 (*.f64 1/180 (*.f64 angle PI.f64)))
27.2b
(sin.f64 (*.f64 1/180 (*.f64 angle PI.f64)))
27.2b
(sin.f64 (*.f64 1/180 (*.f64 angle PI.f64)))

rewrite90.0ms (0.1%)

Algorithm
rewrite-expression-head
Error
31.5b
Rules
pow1_binary64_1844 add-log-exp_binary64_1822 add-exp-log_binary64_1821 add-cbrt-cube_binary64_1819 add-cube-cbrt_binary64_1818 add-sqr-sqrt_binary64_1805 *-un-lft-identity_binary64_1783
Counts
4 → 28
Calls

4 calls:

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)))
3.0ms
(sin.f64 (*.f64 1/180 (*.f64 angle PI.f64)))
Compiler

Compiled 2100 to 1018 computations (51.5% saved)

series129.0ms (0.2%)

Error
31.5b
Counts
4 → 12
Calls

4 calls:

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

Compiled 2452 to 1480 computations (39.6% saved)

simplify166.0ms (0.2%)

Algorithm
egg-herbie
Counts
40 → 40
Iterations

Useful iterations: 0 (153.0ms)

IterNodesCost
05187494

prune133.0ms (0.2%)

Pruning

8 alts after pruning (7 fresh and 1 done)

PrunedKeptTotal
New40040
Fresh077
Picked011
Done000
Total40848
Error
31.5b
Counts
48 → 8
Compiler

Compiled 3463 to 1793 computations (48.2% saved)

localize54.0ms (0.1%)

Local error

Found 4 expressions with local error:

27.2b
(cos.f64 (*.f64 (/.f64 angle 180) PI.f64))
27.2b
(cos.f64 (*.f64 (/.f64 angle 180) PI.f64))
27.2b
(cos.f64 (*.f64 PI.f64 (/.f64 angle 180)))
27.9b
(-.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 (cbrt.f64 (pow.f64 (cos.f64 (*.f64 PI.f64 (/.f64 angle 180))) 3))) 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)))

rewrite382.0ms (0.6%)

Algorithm
rewrite-expression-head
Error
30.5b
Rules
15×associate-*r/_binary64_1725
frac-sub_binary64_1792
associate-*l/_binary64_1726
add-log-exp_binary64_1822 frac-times_binary64_1793
pow1_binary64_1844 add-exp-log_binary64_1821 add-cbrt-cube_binary64_1819 add-cube-cbrt_binary64_1818 add-sqr-sqrt_binary64_1805 *-un-lft-identity_binary64_1783
sub-div_binary64_1790
diff-log_binary64_1875 flip3--_binary64_1787 sub-neg_binary64_1776 flip--_binary64_1758 cancel-sign-sub-inv_binary64_1749
Counts
4 → 44
Calls

4 calls:

38.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 (cbrt.f64 (pow.f64 (cos.f64 (*.f64 PI.f64 (/.f64 angle 180))) 3))) 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 PI.f64 (/.f64 angle 180)))
2.0ms
(cos.f64 (*.f64 (/.f64 angle 180) PI.f64))
2.0ms
(cos.f64 (*.f64 (/.f64 angle 180) PI.f64))
Compiler

Compiled 6272 to 4484 computations (28.5% saved)

series5.1s (7.6%)

Error
31.5b
Counts
4 → 24
Calls

4 calls:

4.8s
(-.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 (cbrt.f64 (pow.f64 (cos.f64 (*.f64 PI.f64 (/.f64 angle 180))) 3))) 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)))
34.0ms
(cos.f64 (*.f64 (/.f64 angle 180) PI.f64))
33.0ms
(cos.f64 (*.f64 PI.f64 (/.f64 angle 180)))
33.0ms
(cos.f64 (*.f64 (/.f64 angle 180) PI.f64))
Compiler

Compiled 6646 to 5150 computations (22.5% saved)

simplify95.0ms (0.1%)

Algorithm
egg-herbie
Counts
68 → 68
Iterations

Useful iterations: 0 (47.0ms)

IterNodesCost
050726456

prune360.0ms (0.5%)

Pruning

8 alts after pruning (7 fresh and 1 done)

PrunedKeptTotal
New67168
Fresh066
Picked101
Done011
Total68876
Error
31.5b
Counts
76 → 8
Compiler

Compiled 8238 to 5331 computations (35.3% saved)

localize42.0ms (0.1%)

Local error

Found 4 expressions with local error:

27.1b
(cos.f64 (*.f64 1/180 (*.f64 angle PI.f64)))
27.1b
(cos.f64 (*.f64 1/180 (*.f64 angle PI.f64)))
27.2b
(sin.f64 (*.f64 1/180 (*.f64 angle PI.f64)))
27.2b
(sin.f64 (*.f64 1/180 (*.f64 angle PI.f64)))

rewrite95.0ms (0.1%)

Algorithm
rewrite-expression-head
Error
31.5b
Rules
pow1_binary64_1844 add-log-exp_binary64_1822 add-exp-log_binary64_1821 add-cbrt-cube_binary64_1819 add-cube-cbrt_binary64_1818 add-sqr-sqrt_binary64_1805 *-un-lft-identity_binary64_1783
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)

series135.0ms (0.2%)

Error
31.5b
Counts
4 → 12
Calls

4 calls:

29.0ms
(sin.f64 (*.f64 1/180 (*.f64 angle PI.f64)))
27.0ms
(sin.f64 (*.f64 1/180 (*.f64 angle PI.f64)))
23.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)

simplify164.0ms (0.2%)

Algorithm
egg-herbie
Counts
40 → 40
Iterations

Useful iterations: 0 (153.0ms)

IterNodesCost
05187494

prune112.0ms (0.2%)

Pruning

8 alts after pruning (6 fresh and 2 done)

PrunedKeptTotal
New40040
Fresh066
Picked011
Done011
Total40848
Error
31.5b
Counts
48 → 8
Compiler

Compiled 3016 to 1518 computations (49.7% saved)

regimes2.7s (4.1%)

Accuracy

Total 4.0b remaining (11.3%)

Threshold costs 0b (0%)

Compiler

Compiled 49333 to 36549 computations (25.9% saved)

bsearch13.0ms (0%)

Compiler

Compiled 109 to 83 computations (23.9% saved)

simplify13.0ms (0%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (7.0ms)

IterNodesCost
0397678
1397678
Removed

()

end0.0ms (0%)

sample39.5s (59.5%)

Algorithm
intervals
Results
8.9s1395×body4096valid
6.6s1660×body2048valid
5.4s839×body4096invalid
4.3s1123×body2048invalid
2.3s949×body1024valid
1.8s3415×body128valid
1.7s677×body1024invalid
1.1s75×body8192valid
568.0ms352×body512valid
517.0ms36×body8192invalid
470.0ms982×body128invalid
435.0ms269×body512invalid
151.0ms154×body256valid
127.0ms127×body256invalid
Compiler

Compiled 6560 to 4835 computations (26.3% saved)

Profiling

Loading profile data...