Details

Time bar (total: 12.5s)

analyze1.6s (12.7%)

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
0%99.9%0.1%5
25%74.9%0.1%6
25%74.9%0.1%7
25%62.4%12.6%8
31.2%56.2%12.6%9
34.3%53%12.6%10
42.9%44.5%12.6%11
46.8%40.6%12.6%12
47.8%39.6%12.6%13
52.6%34.8%12.6%14
Compiler

Compiled 22 to 20 computations (9.1% saved)

sample193.0ms (1.5%)

Algorithm
intervals
Results
52.0ms57×body1024valid
49.0ms50×body1024invalid
20.0ms155×body128valid
14.0ms24×body512valid
14.0ms23×body512invalid
12.0msbody2048valid
4.0ms12×body256invalid
4.0ms11×body256valid
3.0ms25×body128invalid
Compiler

Compiled 43 to 42 computations (2.3% saved)

simplify241.0ms (1.9%)

Algorithm
egg-herbie
Counts
1 → 1
Iterations

Useful iterations: 0 (147.0ms)

IterNodesCost
0525234

prune3.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

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

Compiled 42 to 38 computations (9.5% saved)

localize18.0ms (0.1%)

Local error

Found 8 expressions with local error:

0.2b
(pow.f64 (*.f64 b (sin.f64 (*.f64 PI.f64 (/.f64 angle 180)))) 2)
0.2b
(*.f64 b (sin.f64 (*.f64 PI.f64 (/.f64 angle 180))))
0.1b
(pow.f64 (*.f64 a (cos.f64 (*.f64 PI.f64 (/.f64 angle 180)))) 2)
0.1b
(*.f64 a (cos.f64 (*.f64 PI.f64 (/.f64 angle 180))))
0.3b
(*.f64 PI.f64 (/.f64 angle 180))
0.3b
(*.f64 PI.f64 (/.f64 angle 180))
25.5b
(cos.f64 (*.f64 PI.f64 (/.f64 angle 180)))
25.7b
(sin.f64 (*.f64 PI.f64 (/.f64 angle 180)))

rewrite26.0ms (0.2%)

Algorithm
rewrite-expression-head
Rules
30×add-sqr-sqrt_binary64_100
26×associate-*r*_binary64_18
20×add-cube-cbrt_binary64_113 times-frac_binary64_84 *-un-lft-identity_binary64_78
14×add-cbrt-cube_binary64_114 add-exp-log_binary64_116
pow1_binary64_139
associate-*l*_binary64_19
add-log-exp_binary64_117 cbrt-unprod_binary64_111 prod-exp_binary64_127 unswap-sqr_binary64_46
*-commutative_binary64_9 cbrt-undiv_binary64_112 div-exp_binary64_129 div-inv_binary64_75 pow-prod-down_binary64_149 associate-*r/_binary64_20
Counts
4 → 78
Calls

8 calls:

7.0ms
(*.f64 PI.f64 (/.f64 angle 180))
7.0ms
(*.f64 PI.f64 (/.f64 angle 180))
2.0ms
(sin.f64 (*.f64 PI.f64 (/.f64 angle 180)))
2.0ms
(cos.f64 (*.f64 PI.f64 (/.f64 angle 180)))
0.0ms
(*.f64 a (cos.f64 (*.f64 PI.f64 (/.f64 angle 180))))

series95.0ms (0.8%)

Counts
4 → 13
Calls

4 calls:

31.0ms
(*.f64 PI.f64 (/.f64 angle 180))
27.0ms
(*.f64 PI.f64 (/.f64 angle 180))
20.0ms
(cos.f64 (*.f64 PI.f64 (/.f64 angle 180)))
17.0ms
(sin.f64 (*.f64 PI.f64 (/.f64 angle 180)))
Compiler

Compiled 548 to 496 computations (9.5% saved)

simplify85.0ms (0.7%)

Algorithm
egg-herbie
Counts
91 → 91
Iterations

Useful iterations: 0 (68.0ms)

IterNodesCost
049631034
149631034

prune293.0ms (2.4%)

Pruning

28 alts after pruning (28 fresh and 0 done)

PrunedKeptTotal
New632891
Fresh000
Picked101
Done000
Total642892
Error
20.2b
Counts
92 → 28
Compiler

Compiled 3111 to 2331 computations (25.1% saved)

localize25.0ms (0.2%)

Local error

Found 8 expressions with local error:

0.2b
(pow.f64 (*.f64 b (sin.f64 (*.f64 PI.f64 (/.f64 angle 180)))) 2)
0.2b
(*.f64 b (sin.f64 (*.f64 PI.f64 (/.f64 angle 180))))
0.2b
(pow.f64 (*.f64 a (cos.f64 (*.f64 (*.f64 PI.f64 (/.f64 (*.f64 (cbrt.f64 angle) (cbrt.f64 angle)) (sqrt.f64 180))) (/.f64 (cbrt.f64 angle) (sqrt.f64 180))))) 2)
0.1b
(*.f64 a (cos.f64 (*.f64 (*.f64 PI.f64 (/.f64 (*.f64 (cbrt.f64 angle) (cbrt.f64 angle)) (sqrt.f64 180))) (/.f64 (cbrt.f64 angle) (sqrt.f64 180)))))
0.6b
(cbrt.f64 angle)
0.6b
(cbrt.f64 angle)
25.7b
(sin.f64 (*.f64 PI.f64 (/.f64 angle 180)))
25.8b
(cos.f64 (*.f64 (*.f64 PI.f64 (/.f64 (*.f64 (cbrt.f64 angle) (cbrt.f64 angle)) (sqrt.f64 180))) (/.f64 (cbrt.f64 angle) (sqrt.f64 180))))

rewrite11.0ms (0.1%)

Algorithm
rewrite-expression-head
Rules
add-sqr-sqrt_binary64_100 add-cube-cbrt_binary64_113 cbrt-prod_binary64_109 *-un-lft-identity_binary64_78
add-cbrt-cube_binary64_114 add-log-exp_binary64_117 add-exp-log_binary64_116 pow1_binary64_139
pow1/3_binary64_160
Counts
4 → 36
Calls

8 calls:

3.0ms
(cos.f64 (*.f64 (*.f64 PI.f64 (/.f64 (*.f64 (cbrt.f64 angle) (cbrt.f64 angle)) (sqrt.f64 180))) (/.f64 (cbrt.f64 angle) (sqrt.f64 180))))
2.0ms
(sin.f64 (*.f64 PI.f64 (/.f64 angle 180)))
1.0ms
(cbrt.f64 angle)
1.0ms
(cbrt.f64 angle)
0.0ms
(*.f64 a (cos.f64 (*.f64 (*.f64 PI.f64 (/.f64 (*.f64 (cbrt.f64 angle) (cbrt.f64 angle)) (sqrt.f64 180))) (/.f64 (cbrt.f64 angle) (sqrt.f64 180)))))

series215.0ms (1.7%)

Counts
4 → 13
Calls

4 calls:

77.0ms
(cbrt.f64 angle)
72.0ms
(cbrt.f64 angle)
47.0ms
(cos.f64 (*.f64 (*.f64 PI.f64 (/.f64 (*.f64 (cbrt.f64 angle) (cbrt.f64 angle)) (sqrt.f64 180))) (/.f64 (cbrt.f64 angle) (sqrt.f64 180))))
19.0ms
(sin.f64 (*.f64 PI.f64 (/.f64 angle 180)))
Compiler

Compiled 819 to 707 computations (13.7% saved)

simplify35.0ms (0.3%)

Algorithm
egg-herbie
Counts
49 → 49
Iterations

Useful iterations: 0 (24.0ms)

IterNodesCost
05022426

prune152.0ms (1.2%)

Pruning

32 alts after pruning (31 fresh and 1 done)

PrunedKeptTotal
New44549
Fresh12627
Picked011
Done000
Total453277
Error
20.1b
Counts
77 → 32
Compiler

Compiled 2549 to 1835 computations (28% saved)

localize18.0ms (0.1%)

Local error

Found 8 expressions with local error:

0.2b
(*.f64 PI.f64 angle)
0.2b
(*.f64 b (sin.f64 (*.f64 PI.f64 (/.f64 angle 180))))
0.1b
(pow.f64 (*.f64 a (cos.f64 (*.f64 (*.f64 PI.f64 angle) (/.f64 1 180)))) 2)
0.1b
(*.f64 a (cos.f64 (*.f64 (*.f64 PI.f64 angle) (/.f64 1 180))))
0.3b
(*.f64 (*.f64 PI.f64 angle) (/.f64 1 180))
0.3b
(*.f64 PI.f64 (/.f64 angle 180))
25.4b
(cos.f64 (*.f64 (*.f64 PI.f64 angle) (/.f64 1 180)))
25.7b
(sin.f64 (*.f64 PI.f64 (/.f64 angle 180)))

rewrite32.0ms (0.3%)

Algorithm
rewrite-expression-head
Rules
31×add-exp-log_binary64_116
26×associate-*r*_binary64_18
24×add-sqr-sqrt_binary64_100
21×add-cbrt-cube_binary64_114
19×add-cube-cbrt_binary64_113 times-frac_binary64_84 *-un-lft-identity_binary64_78
14×prod-exp_binary64_127
11×pow1_binary64_139
cbrt-unprod_binary64_111
div-exp_binary64_129
associate-*l*_binary64_19 add-log-exp_binary64_117 pow-prod-down_binary64_149
cbrt-undiv_binary64_112
*-commutative_binary64_9 1-exp_binary64_122 div-inv_binary64_75 rec-exp_binary64_128 unswap-sqr_binary64_46 associate-*r/_binary64_20
un-div-inv_binary64_76
Counts
4 → 84
Calls

8 calls:

8.0ms
(*.f64 (*.f64 PI.f64 angle) (/.f64 1 180))
8.0ms
(*.f64 PI.f64 (/.f64 angle 180))
2.0ms
(cos.f64 (*.f64 (*.f64 PI.f64 angle) (/.f64 1 180)))
2.0ms
(sin.f64 (*.f64 PI.f64 (/.f64 angle 180)))
0.0ms
(*.f64 a (cos.f64 (*.f64 (*.f64 PI.f64 angle) (/.f64 1 180))))

series90.0ms (0.7%)

Counts
4 → 13
Calls

4 calls:

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

Compiled 572 to 520 computations (9.1% saved)

simplify90.0ms (0.7%)

Algorithm
egg-herbie
Counts
97 → 97
Iterations

Useful iterations: 0 (70.0ms)

IterNodesCost
049351060
149351060

prune193.0ms (1.5%)

Pruning

32 alts after pruning (30 fresh and 2 done)

PrunedKeptTotal
New96197
Fresh12930
Picked011
Done011
Total9732129
Error
20.1b
Counts
129 → 32
Compiler

Compiled 3440 to 2590 computations (24.7% saved)

localize34.0ms (0.3%)

Local error

Found 8 expressions with local error:

0.2b
(pow.f64 (*.f64 b (sin.f64 (*.f64 PI.f64 (/.f64 angle 180)))) 2)
0.2b
(pow.f64 (*.f64 a (cos.f64 (*.f64 (*.f64 PI.f64 (/.f64 (*.f64 (cbrt.f64 angle) (cbrt.f64 angle)) (sqrt.f64 180))) (/.f64 (*.f64 (*.f64 (cbrt.f64 (cbrt.f64 angle)) (cbrt.f64 (cbrt.f64 angle))) (cbrt.f64 (cbrt.f64 angle))) (sqrt.f64 180))))) 2)
0.2b
(*.f64 b (sin.f64 (*.f64 PI.f64 (/.f64 angle 180))))
0.1b
(*.f64 a (cos.f64 (*.f64 (*.f64 PI.f64 (/.f64 (*.f64 (cbrt.f64 angle) (cbrt.f64 angle)) (sqrt.f64 180))) (/.f64 (*.f64 (*.f64 (cbrt.f64 (cbrt.f64 angle)) (cbrt.f64 (cbrt.f64 angle))) (cbrt.f64 (cbrt.f64 angle))) (sqrt.f64 180)))))
0.6b
(cbrt.f64 (cbrt.f64 angle))
0.6b
(cbrt.f64 (cbrt.f64 angle))
25.7b
(sin.f64 (*.f64 PI.f64 (/.f64 angle 180)))
25.8b
(cos.f64 (*.f64 (*.f64 PI.f64 (/.f64 (*.f64 (cbrt.f64 angle) (cbrt.f64 angle)) (sqrt.f64 180))) (/.f64 (*.f64 (*.f64 (cbrt.f64 (cbrt.f64 angle)) (cbrt.f64 (cbrt.f64 angle))) (cbrt.f64 (cbrt.f64 angle))) (sqrt.f64 180))))

rewrite14.0ms (0.1%)

Algorithm
rewrite-expression-head
Rules
18×cbrt-prod_binary64_109
add-sqr-sqrt_binary64_100 add-cube-cbrt_binary64_113 *-un-lft-identity_binary64_78
add-cbrt-cube_binary64_114 add-log-exp_binary64_117 add-exp-log_binary64_116 pow1_binary64_139
pow1/3_binary64_160
Counts
4 → 42
Calls

8 calls:

3.0ms
(cos.f64 (*.f64 (*.f64 PI.f64 (/.f64 (*.f64 (cbrt.f64 angle) (cbrt.f64 angle)) (sqrt.f64 180))) (/.f64 (*.f64 (*.f64 (cbrt.f64 (cbrt.f64 angle)) (cbrt.f64 (cbrt.f64 angle))) (cbrt.f64 (cbrt.f64 angle))) (sqrt.f64 180))))
2.0ms
(cbrt.f64 (cbrt.f64 angle))
2.0ms
(cbrt.f64 (cbrt.f64 angle))
2.0ms
(sin.f64 (*.f64 PI.f64 (/.f64 angle 180)))
0.0ms
(*.f64 a (cos.f64 (*.f64 (*.f64 PI.f64 (/.f64 (*.f64 (cbrt.f64 angle) (cbrt.f64 angle)) (sqrt.f64 180))) (/.f64 (*.f64 (*.f64 (cbrt.f64 (cbrt.f64 angle)) (cbrt.f64 (cbrt.f64 angle))) (cbrt.f64 (cbrt.f64 angle))) (sqrt.f64 180)))))

series281.0ms (2.3%)

Counts
4 → 13
Calls

4 calls:

107.0ms
(cbrt.f64 (cbrt.f64 angle))
106.0ms
(cbrt.f64 (cbrt.f64 angle))
49.0ms
(cos.f64 (*.f64 (*.f64 PI.f64 (/.f64 (*.f64 (cbrt.f64 angle) (cbrt.f64 angle)) (sqrt.f64 180))) (/.f64 (*.f64 (*.f64 (cbrt.f64 (cbrt.f64 angle)) (cbrt.f64 (cbrt.f64 angle))) (cbrt.f64 (cbrt.f64 angle))) (sqrt.f64 180))))
19.0ms
(sin.f64 (*.f64 PI.f64 (/.f64 angle 180)))
Compiler

Compiled 977 to 769 computations (21.3% saved)

simplify54.0ms (0.4%)

Algorithm
egg-herbie
Counts
55 → 55
Iterations

Useful iterations: 0 (40.0ms)

IterNodesCost
04950574
14950574

prune125.0ms (1%)

Pruning

34 alts after pruning (32 fresh and 2 done)

PrunedKeptTotal
New50555
Fresh22729
Picked101
Done022
Total533487
Error
20.1b
Counts
87 → 34
Compiler

Compiled 2280 to 1253 computations (45% saved)

simplify48.0ms (0.4%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (5.0ms)

IterNodesCost
06153233
16153233

regimes856.0ms (6.9%)

Compiler

Compiled 11043 to 9308 computations (15.7% saved)

bsearch0.0ms (0%)

regimes558.0ms (4.5%)

Compiler

Compiled 6441 to 5720 computations (11.2% saved)

bsearch0.0ms (0%)

regimes67.0ms (0.5%)

Compiler

Compiled 307 to 352 computations (-14.7% saved)

bsearch0.0ms (0%)

regimes25.0ms (0.2%)

Accuracy

Total 1.5b remaining (7.2%)

Threshold costs 0b (0%)

Compiler

Compiled 15 to 54 computations (-260% saved)

bsearch5.0ms (0%)

Compiler

Compiled 69 to 67 computations (2.9% saved)

simplify3.0ms (0%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (1.0ms)

IterNodesCost
045111
145111

end0.0ms (0%)

sample7.0s (56.1%)

Algorithm
intervals
Results
1.4s1576×body1024valid
1.2s1346×body1024invalid
639.0ms5044×body128valid
494.0ms847×body512valid
436.0ms697×body512invalid
232.0ms169×body2048valid
123.0ms364×body256valid
122.0ms347×body256invalid
78.0ms616×body128invalid
Compiler

Compiled 2042 to 1716 computations (16% saved)

Pareto

0.663266495927317

Profiling

Loading profile data...