Details

Time bar (total: 9.4s)

analyze2.1s

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
0%99.8%0.2%8
0%99.8%0.2%9
0%99.8%0.2%10
0.8%99%0.2%11
4.7%95.1%0.2%12
5.9%93.2%0.8%13
8.5%90.2%1.3%14

sample105.0ms

Algorithm
intervals
Results
18.0ms175×body80valid
15.0ms33×body640valid
12.0ms17×body1280valid
10.0ms15×body1280invalid
8.0ms78×body80invalid
7.0ms21×body320valid
4.0msbody640invalid
2.0ms10×body160valid
2.0msbody320invalid
1.0msbody160invalid

simplify139.0ms

Algorithm
egg-herbie
Counts
1 → 1
Iterations

Useful iterations: 0 (136.0ms)

IterNodesCost
0509132

prune5.0ms

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New011
Fresh011
Picked000
Done000
Total022

Merged error: 39.1b

Counts
2 → 1

localize22.0ms

Local error

Found 4 expressions with local error:

0.2b
(*.f64 (-.f64 lambda1 lambda2) (cos.f64 (/.f64 (+.f64 phi1 phi2) 2.0)))
3.4b
(cos.f64 (/.f64 (+.f64 phi1 phi2) 2.0))
3.4b
(cos.f64 (/.f64 (+.f64 phi1 phi2) 2.0))
36.1b
(sqrt.f64 (+.f64 (*.f64 (*.f64 (-.f64 lambda1 lambda2) (cos.f64 (/.f64 (+.f64 phi1 phi2) 2.0))) (*.f64 (-.f64 lambda1 lambda2) (cos.f64 (/.f64 (+.f64 phi1 phi2) 2.0)))) (*.f64 (-.f64 phi1 phi2) (-.f64 phi1 phi2))))

rewrite50.0ms

Algorithm
rewrite-expression-head
Rules
130×associate-*l/_binary64
97×flip3--_binary64 flip--_binary64
66×sqrt-div_binary64
64×frac-add_binary64 frac-times_binary64
32×associate-*r/_binary64
12×add-sqr-sqrt_binary64
*-un-lft-identity_binary64
pow1_binary64 add-cube-cbrt_binary64
add-exp-log_binary64 add-cbrt-cube_binary64
associate-*l*_binary64
add-log-exp_binary64
associate-*r*_binary64 sqrt-prod_binary64
pow-prod-down_binary64 flip3-+_binary64 pow1/2_binary64 cbrt-unprod_binary64 sqrt-pow1_binary64 unswap-sqr_binary64 rem-sqrt-square_binary64 prod-exp_binary64 difference-of-squares_binary64 distribute-lft-out--_binary64 flip-+_binary64 *-commutative_binary64
Counts
4 → 115
Calls
4 calls:
7.0ms
(*.f64 (-.f64 lambda1 lambda2) (cos.f64 (/.f64 (+.f64 phi1 phi2) 2.0)))
5.0ms
(cos.f64 (/.f64 (+.f64 phi1 phi2) 2.0))
6.0ms
(cos.f64 (/.f64 (+.f64 phi1 phi2) 2.0))
21.0ms
(sqrt.f64 (+.f64 (*.f64 (*.f64 (-.f64 lambda1 lambda2) (cos.f64 (/.f64 (+.f64 phi1 phi2) 2.0))) (*.f64 (-.f64 lambda1 lambda2) (cos.f64 (/.f64 (+.f64 phi1 phi2) 2.0)))) (*.f64 (-.f64 phi1 phi2) (-.f64 phi1 phi2))))

series205.0ms

Counts
4 → 12
Calls
4 calls:
26.0ms
(*.f64 (-.f64 lambda1 lambda2) (cos.f64 (/.f64 (+.f64 phi1 phi2) 2.0)))
5.0ms
(cos.f64 (/.f64 (+.f64 phi1 phi2) 2.0))
5.0ms
(cos.f64 (/.f64 (+.f64 phi1 phi2) 2.0))
168.0ms
(sqrt.f64 (+.f64 (*.f64 (*.f64 (-.f64 lambda1 lambda2) (cos.f64 (/.f64 (+.f64 phi1 phi2) 2.0))) (*.f64 (-.f64 lambda1 lambda2) (cos.f64 (/.f64 (+.f64 phi1 phi2) 2.0)))) (*.f64 (-.f64 phi1 phi2) (-.f64 phi1 phi2))))

simplify52.0ms

Algorithm
egg-herbie
Counts
127 → 127
Iterations

Useful iterations: 0 (21.0ms)

IterNodesCost
052326371

prune182.0ms

Filtered
76 candidates to 127 candidates (-67.1%)
Pruning

9 alts after pruning (9 fresh and 0 done)

PrunedKeptTotal
New1189127
Fresh000
Picked101
Done000
Total1199128

Merged error: 27.4b

Counts
128 → 9

localize27.0ms

Local error

Found 4 expressions with local error:

3.4b
(cos.f64 (/.f64 (+.f64 phi1 phi2) 2.0))
3.4b
(cos.f64 (/.f64 (+.f64 phi1 phi2) 2.0))
29.0b
(/.f64 (*.f64 (cos.f64 (/.f64 (+.f64 phi1 phi2) 2.0)) (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2))) (+.f64 lambda1 lambda2))
36.1b
(sqrt.f64 (+.f64 (*.f64 (*.f64 (-.f64 lambda1 lambda2) (cos.f64 (/.f64 (+.f64 phi1 phi2) 2.0))) (/.f64 (*.f64 (cos.f64 (/.f64 (+.f64 phi1 phi2) 2.0)) (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2))) (+.f64 lambda1 lambda2))) (*.f64 (-.f64 phi1 phi2) (-.f64 phi1 phi2))))

rewrite49.0ms

Algorithm
rewrite-expression-head
Rules
58×associate-*l/_binary64
47×flip3--_binary64 flip--_binary64
42×sqrt-div_binary64
40×frac-add_binary64
36×frac-times_binary64
20×associate-*r/_binary64
11×*-un-lft-identity_binary64
add-exp-log_binary64 add-cbrt-cube_binary64
add-sqr-sqrt_binary64
add-cube-cbrt_binary64
pow1_binary64
associate-/r*_binary64 add-log-exp_binary64 times-frac_binary64
sqrt-prod_binary64
flip3-+_binary64 associate-/l/_binary64 distribute-lft-out_binary64 cbrt-undiv_binary64 associate-/r/_binary64 div-exp_binary64 flip-+_binary64
pow1/2_binary64 cbrt-unprod_binary64 sqrt-pow1_binary64 rem-sqrt-square_binary64 clear-num_binary64 prod-exp_binary64 frac-2neg_binary64 associate-/l*_binary64 div-inv_binary64
Counts
4 → 96
Calls
4 calls:
5.0ms
(cos.f64 (/.f64 (+.f64 phi1 phi2) 2.0))
5.0ms
(cos.f64 (/.f64 (+.f64 phi1 phi2) 2.0))
12.0ms
(/.f64 (*.f64 (cos.f64 (/.f64 (+.f64 phi1 phi2) 2.0)) (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2))) (+.f64 lambda1 lambda2))
21.0ms
(sqrt.f64 (+.f64 (*.f64 (*.f64 (-.f64 lambda1 lambda2) (cos.f64 (/.f64 (+.f64 phi1 phi2) 2.0))) (/.f64 (*.f64 (cos.f64 (/.f64 (+.f64 phi1 phi2) 2.0)) (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2))) (+.f64 lambda1 lambda2))) (*.f64 (-.f64 phi1 phi2) (-.f64 phi1 phi2))))

series305.0ms

Counts
4 → 12
Calls
4 calls:
5.0ms
(cos.f64 (/.f64 (+.f64 phi1 phi2) 2.0))
6.0ms
(cos.f64 (/.f64 (+.f64 phi1 phi2) 2.0))
66.0ms
(/.f64 (*.f64 (cos.f64 (/.f64 (+.f64 phi1 phi2) 2.0)) (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2))) (+.f64 lambda1 lambda2))
228.0ms
(sqrt.f64 (+.f64 (*.f64 (*.f64 (-.f64 lambda1 lambda2) (cos.f64 (/.f64 (+.f64 phi1 phi2) 2.0))) (/.f64 (*.f64 (cos.f64 (/.f64 (+.f64 phi1 phi2) 2.0)) (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2))) (+.f64 lambda1 lambda2))) (*.f64 (-.f64 phi1 phi2) (-.f64 phi1 phi2))))

simplify45.0ms

Algorithm
egg-herbie
Counts
108 → 108
Iterations

Useful iterations: 0 (20.0ms)

IterNodesCost
050064749

prune162.0ms

Filtered
77 candidates to 108 candidates (-40.3%)
Pruning

9 alts after pruning (8 fresh and 1 done)

PrunedKeptTotal
New1062108
Fresh268
Picked011
Done000
Total1089117

Merged error: 27.4b

Counts
117 → 9

localize28.0ms

Local error

Found 4 expressions with local error:

3.4b
(cos.f64 (/.f64 (+.f64 phi1 phi2) 2.0))
6.5b
(/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (cbrt.f64 (+.f64 lambda1 lambda2)))
22.5b
(*.f64 (/.f64 (cos.f64 (/.f64 (+.f64 phi1 phi2) 2.0)) (*.f64 (cbrt.f64 (+.f64 lambda1 lambda2)) (cbrt.f64 (+.f64 lambda1 lambda2)))) (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (cbrt.f64 (+.f64 lambda1 lambda2))))
36.1b
(sqrt.f64 (+.f64 (*.f64 (*.f64 (-.f64 lambda1 lambda2) (cos.f64 (/.f64 (+.f64 phi1 phi2) 2.0))) (*.f64 (/.f64 (cos.f64 (/.f64 (+.f64 phi1 phi2) 2.0)) (*.f64 (cbrt.f64 (+.f64 lambda1 lambda2)) (cbrt.f64 (+.f64 lambda1 lambda2)))) (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (cbrt.f64 (+.f64 lambda1 lambda2))))) (*.f64 (-.f64 phi1 phi2) (-.f64 phi1 phi2))))

rewrite110.0ms

Algorithm
rewrite-expression-head
Rules
129×associate-*l/_binary64
121×frac-times_binary64
99×flip3--_binary64 flip--_binary64
90×sqrt-div_binary64
88×frac-add_binary64
73×associate-*r/_binary64
66×times-frac_binary64
59×*-un-lft-identity_binary64
58×add-sqr-sqrt_binary64
41×add-cube-cbrt_binary64
38×cbrt-prod_binary64
34×associate-*r*_binary64
27×add-exp-log_binary64
19×add-cbrt-cube_binary64
16×cbrt-div_binary64
15×associate-*l*_binary64 difference-of-squares_binary64
12×associate-/r/_binary64
flip3-+_binary64 distribute-lft-out_binary64 flip-+_binary64
cbrt-unprod_binary64 cbrt-undiv_binary64 prod-exp_binary64 div-exp_binary64
associate-/r*_binary64 pow1_binary64
unswap-sqr_binary64
add-log-exp_binary64 associate-/l*_binary64
div-inv_binary64 sqrt-prod_binary64
associate-/l/_binary64
pow-prod-down_binary64 pow1/2_binary64 sqrt-pow1_binary64 div-sub_binary64 rem-sqrt-square_binary64 clear-num_binary64 frac-2neg_binary64 *-commutative_binary64
Counts
4 → 245
Calls
4 calls:
5.0ms
(cos.f64 (/.f64 (+.f64 phi1 phi2) 2.0))
10.0ms
(/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (cbrt.f64 (+.f64 lambda1 lambda2)))
31.0ms
(*.f64 (/.f64 (cos.f64 (/.f64 (+.f64 phi1 phi2) 2.0)) (*.f64 (cbrt.f64 (+.f64 lambda1 lambda2)) (cbrt.f64 (+.f64 lambda1 lambda2)))) (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (cbrt.f64 (+.f64 lambda1 lambda2))))
40.0ms
(sqrt.f64 (+.f64 (*.f64 (*.f64 (-.f64 lambda1 lambda2) (cos.f64 (/.f64 (+.f64 phi1 phi2) 2.0))) (*.f64 (/.f64 (cos.f64 (/.f64 (+.f64 phi1 phi2) 2.0)) (*.f64 (cbrt.f64 (+.f64 lambda1 lambda2)) (cbrt.f64 (+.f64 lambda1 lambda2)))) (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (cbrt.f64 (+.f64 lambda1 lambda2))))) (*.f64 (-.f64 phi1 phi2) (-.f64 phi1 phi2))))

series349.0ms

Counts
4 → 12
Calls
4 calls:
6.0ms
(cos.f64 (/.f64 (+.f64 phi1 phi2) 2.0))
25.0ms
(/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (cbrt.f64 (+.f64 lambda1 lambda2)))
68.0ms
(*.f64 (/.f64 (cos.f64 (/.f64 (+.f64 phi1 phi2) 2.0)) (*.f64 (cbrt.f64 (+.f64 lambda1 lambda2)) (cbrt.f64 (+.f64 lambda1 lambda2)))) (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (cbrt.f64 (+.f64 lambda1 lambda2))))
250.0ms
(sqrt.f64 (+.f64 (*.f64 (*.f64 (-.f64 lambda1 lambda2) (cos.f64 (/.f64 (+.f64 phi1 phi2) 2.0))) (*.f64 (/.f64 (cos.f64 (/.f64 (+.f64 phi1 phi2) 2.0)) (*.f64 (cbrt.f64 (+.f64 lambda1 lambda2)) (cbrt.f64 (+.f64 lambda1 lambda2)))) (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (cbrt.f64 (+.f64 lambda1 lambda2))))) (*.f64 (-.f64 phi1 phi2) (-.f64 phi1 phi2))))

simplify97.0ms

Algorithm
egg-herbie
Counts
257 → 257
Iterations

Useful iterations: 0 (32.0ms)

IterNodesCost
0703012904

prune400.0ms

Filtered
192 candidates to 257 candidates (-33.9%)
Pruning

11 alts after pruning (9 fresh and 2 done)

PrunedKeptTotal
New2552257
Fresh077
Picked011
Done011
Total25511266

Merged error: 26.7b

Counts
266 → 11

localize33.0ms

Local error

Found 4 expressions with local error:

3.4b
(cos.f64 (/.f64 (+.f64 phi1 phi2) 2.0))
14.4b
(/.f64 (*.f64 (cos.f64 (/.f64 (+.f64 phi1 phi2) 2.0)) (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2))) (*.f64 (cbrt.f64 (+.f64 lambda1 lambda2)) (cbrt.f64 (+.f64 lambda1 lambda2))))
14.4b
(/.f64 (/.f64 (*.f64 (cos.f64 (/.f64 (+.f64 phi1 phi2) 2.0)) (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2))) (*.f64 (cbrt.f64 (+.f64 lambda1 lambda2)) (cbrt.f64 (+.f64 lambda1 lambda2)))) (cbrt.f64 (+.f64 lambda1 lambda2)))
36.1b
(sqrt.f64 (+.f64 (*.f64 (*.f64 (-.f64 lambda1 lambda2) (cos.f64 (/.f64 (+.f64 phi1 phi2) 2.0))) (/.f64 (/.f64 (*.f64 (cos.f64 (/.f64 (+.f64 phi1 phi2) 2.0)) (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2))) (*.f64 (cbrt.f64 (+.f64 lambda1 lambda2)) (cbrt.f64 (+.f64 lambda1 lambda2)))) (cbrt.f64 (+.f64 lambda1 lambda2)))) (*.f64 (-.f64 phi1 phi2) (-.f64 phi1 phi2))))

rewrite104.0ms

Algorithm
rewrite-expression-head
Rules
110×cbrt-div_binary64
100×times-frac_binary64
76×associate-*l/_binary64
74×associate-/r/_binary64
72×frac-times_binary64
69×*-un-lft-identity_binary64
56×flip3-+_binary64 flip-+_binary64 cbrt-prod_binary64
47×flip3--_binary64 flip--_binary64
42×add-sqr-sqrt_binary64 sqrt-div_binary64
41×add-cube-cbrt_binary64
40×frac-add_binary64
38×associate-*r/_binary64
34×add-exp-log_binary64
21×add-cbrt-cube_binary64
14×distribute-lft-out_binary64 associate-/l*_binary64
13×cbrt-undiv_binary64 div-exp_binary64
10×div-inv_binary64
associate-/r*_binary64 cbrt-unprod_binary64 prod-exp_binary64
pow1_binary64
add-log-exp_binary64
associate-/l/_binary64 sqrt-prod_binary64
clear-num_binary64 frac-2neg_binary64
pow1/2_binary64 sqrt-pow1_binary64 rem-sqrt-square_binary64
Counts
4 → 227
Calls
4 calls:
5.0ms
(cos.f64 (/.f64 (+.f64 phi1 phi2) 2.0))
17.0ms
(/.f64 (*.f64 (cos.f64 (/.f64 (+.f64 phi1 phi2) 2.0)) (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2))) (*.f64 (cbrt.f64 (+.f64 lambda1 lambda2)) (cbrt.f64 (+.f64 lambda1 lambda2))))
23.0ms
(/.f64 (/.f64 (*.f64 (cos.f64 (/.f64 (+.f64 phi1 phi2) 2.0)) (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2))) (*.f64 (cbrt.f64 (+.f64 lambda1 lambda2)) (cbrt.f64 (+.f64 lambda1 lambda2)))) (cbrt.f64 (+.f64 lambda1 lambda2)))
38.0ms
(sqrt.f64 (+.f64 (*.f64 (*.f64 (-.f64 lambda1 lambda2) (cos.f64 (/.f64 (+.f64 phi1 phi2) 2.0))) (/.f64 (/.f64 (*.f64 (cos.f64 (/.f64 (+.f64 phi1 phi2) 2.0)) (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2))) (*.f64 (cbrt.f64 (+.f64 lambda1 lambda2)) (cbrt.f64 (+.f64 lambda1 lambda2)))) (cbrt.f64 (+.f64 lambda1 lambda2)))) (*.f64 (-.f64 phi1 phi2) (-.f64 phi1 phi2))))

series440.0ms

Counts
4 → 12
Calls
4 calls:
6.0ms
(cos.f64 (/.f64 (+.f64 phi1 phi2) 2.0))
117.0ms
(/.f64 (*.f64 (cos.f64 (/.f64 (+.f64 phi1 phi2) 2.0)) (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2))) (*.f64 (cbrt.f64 (+.f64 lambda1 lambda2)) (cbrt.f64 (+.f64 lambda1 lambda2))))
68.0ms
(/.f64 (/.f64 (*.f64 (cos.f64 (/.f64 (+.f64 phi1 phi2) 2.0)) (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2))) (*.f64 (cbrt.f64 (+.f64 lambda1 lambda2)) (cbrt.f64 (+.f64 lambda1 lambda2)))) (cbrt.f64 (+.f64 lambda1 lambda2)))
249.0ms
(sqrt.f64 (+.f64 (*.f64 (*.f64 (-.f64 lambda1 lambda2) (cos.f64 (/.f64 (+.f64 phi1 phi2) 2.0))) (/.f64 (/.f64 (*.f64 (cos.f64 (/.f64 (+.f64 phi1 phi2) 2.0)) (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2))) (*.f64 (cbrt.f64 (+.f64 lambda1 lambda2)) (cbrt.f64 (+.f64 lambda1 lambda2)))) (cbrt.f64 (+.f64 lambda1 lambda2)))) (*.f64 (-.f64 phi1 phi2) (-.f64 phi1 phi2))))

simplify87.0ms

Algorithm
egg-herbie
Counts
239 → 239
Iterations

Useful iterations: 0 (27.0ms)

IterNodesCost
0533910958

prune306.0ms

Filtered
163 candidates to 239 candidates (-46.6%)
Pruning

12 alts after pruning (9 fresh and 3 done)

PrunedKeptTotal
New2381239
Fresh088
Picked011
Done022
Total23812250

Merged error: 26.7b

Counts
250 → 12

regimes1.1s

Accuracy

71.5% (4.0b remaining)

Error of 29.1b against oracle of 25.1b and baseline of 39.2b

bsearch2.0ms

simplify3.0ms

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (1.0ms)

IterNodesCost
07577
17577

end0.0ms

sample2.9s

Algorithm
intervals
Results
603.0ms5813×body80valid
414.0ms880×body640valid
367.0ms518×body1280valid
242.0ms2351×body80invalid
219.0ms311×body1280invalid
188.0ms417×body640invalid
174.0ms519×body320valid
71.0ms224×body320invalid
63.0ms270×body160valid
28.0ms112×body160invalid

Profiling

Loading profile data...