Details

Time bar (total: 2.5min)

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

sample91.0ms

Algorithm
intervals
Results
24.0ms189×body128valid
15.0ms29×body1024valid
9.0ms17×body1024invalid
8.0ms24×body512valid
8.0ms80×body128invalid
3.0ms14×body256valid
3.0msbody512invalid
2.0msbody256invalid

simplify125.0ms

Algorithm
egg-herbie
Counts
1 → 1
Iterations

Useful iterations: 0 (119.0ms)

IterNodesCost
0496049
1496049

prune2.0ms

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New011
Fresh011
Picked000
Done000
Total022

Merged error: 39.1b

Counts
2 → 1

localize18.0ms

Local error

Found 4 expressions with local error:

0.2b
(*.f64 (*.f64 (-.f64 lambda1 lambda2) (cos.f64 (/.f64 (+.f64 phi1 phi2) 2))) (*.f64 (-.f64 lambda1 lambda2) (cos.f64 (/.f64 (+.f64 phi1 phi2) 2))))
3.2b
(cos.f64 (/.f64 (+.f64 phi1 phi2) 2))
3.2b
(cos.f64 (/.f64 (+.f64 phi1 phi2) 2))
35.8b
(sqrt.f64 (+.f64 (*.f64 (*.f64 (-.f64 lambda1 lambda2) (cos.f64 (/.f64 (+.f64 phi1 phi2) 2))) (*.f64 (-.f64 lambda1 lambda2) (cos.f64 (/.f64 (+.f64 phi1 phi2) 2)))) (*.f64 (-.f64 phi1 phi2) (-.f64 phi1 phi2))))

rewrite88.0ms

Algorithm
rewrite-expression-head
Rules
142×associate-*l/_binary64
102×flip3--_binary64 flip--_binary64
68×frac-times_binary64
66×sqrt-div_binary64
64×frac-add_binary64
44×pow1_binary64
34×associate-*r/_binary64
17×pow-prod-down_binary64
16×add-exp-log_binary64 add-cbrt-cube_binary64
cbrt-unprod_binary64 prod-exp_binary64
add-sqr-sqrt_binary64
*-un-lft-identity_binary64 add-cube-cbrt_binary64
add-log-exp_binary64 pow-prod-up_binary64 pow-sqr_binary64
sqrt-prod_binary64
pow-plus_binary64
flip3-+_binary64 pow1/2_binary64 swap-sqr_binary64 associate-*r*_binary64 associate-*l*_binary64 sqrt-pow1_binary64 rem-sqrt-square_binary64 flip-+_binary64 pow2_binary64 *-commutative_binary64
Counts
4 → 135
Calls
4 calls:
15.0ms
(*.f64 (*.f64 (-.f64 lambda1 lambda2) (cos.f64 (/.f64 (+.f64 phi1 phi2) 2))) (*.f64 (-.f64 lambda1 lambda2) (cos.f64 (/.f64 (+.f64 phi1 phi2) 2))))
6.0ms
(cos.f64 (/.f64 (+.f64 phi1 phi2) 2))
5.0ms
(cos.f64 (/.f64 (+.f64 phi1 phi2) 2))
23.0ms
(sqrt.f64 (+.f64 (*.f64 (*.f64 (-.f64 lambda1 lambda2) (cos.f64 (/.f64 (+.f64 phi1 phi2) 2))) (*.f64 (-.f64 lambda1 lambda2) (cos.f64 (/.f64 (+.f64 phi1 phi2) 2)))) (*.f64 (-.f64 phi1 phi2) (-.f64 phi1 phi2))))

series1.6s

Counts
4 → 12
Calls
4 calls:
288.0ms
(*.f64 (*.f64 (-.f64 lambda1 lambda2) (cos.f64 (/.f64 (+.f64 phi1 phi2) 2))) (*.f64 (-.f64 lambda1 lambda2) (cos.f64 (/.f64 (+.f64 phi1 phi2) 2))))
30.0ms
(cos.f64 (/.f64 (+.f64 phi1 phi2) 2))
25.0ms
(cos.f64 (/.f64 (+.f64 phi1 phi2) 2))
1.3s
(sqrt.f64 (+.f64 (*.f64 (*.f64 (-.f64 lambda1 lambda2) (cos.f64 (/.f64 (+.f64 phi1 phi2) 2))) (*.f64 (-.f64 lambda1 lambda2) (cos.f64 (/.f64 (+.f64 phi1 phi2) 2)))) (*.f64 (-.f64 phi1 phi2) (-.f64 phi1 phi2))))

simplify92.0ms

Algorithm
egg-herbie
Counts
147 → 147
Iterations

Useful iterations: 0 (19.0ms)

IterNodesCost
0518710334

prune183.0ms

Filtered
76 candidates to 147 candidates (-93.4%)
Pruning

10 alts after pruning (9 fresh and 1 done)

PrunedKeptTotal
New1389147
Fresh000
Picked011
Done000
Total13810148

Merged error: 25.3b

Counts
148 → 10

localize25.0ms

Local error

Found 4 expressions with local error:

3.2b
(cos.f64 (/.f64 (+.f64 phi1 phi2) 2))
3.2b
(cos.f64 (/.f64 (+.f64 phi1 phi2) 2))
3.2b
(cos.f64 (/.f64 (+.f64 phi1 phi2) 2))
35.8b
(sqrt.f64 (+.f64 (*.f64 (*.f64 (-.f64 lambda1 lambda2) (cos.f64 (/.f64 (+.f64 phi1 phi2) 2))) (*.f64 (-.f64 lambda1 lambda2) (*.f64 (*.f64 (cbrt.f64 (cos.f64 (/.f64 (+.f64 phi1 phi2) 2))) (cbrt.f64 (cos.f64 (/.f64 (+.f64 phi1 phi2) 2)))) (cbrt.f64 (cos.f64 (/.f64 (+.f64 phi1 phi2) 2)))))) (*.f64 (-.f64 phi1 phi2) (-.f64 phi1 phi2))))

rewrite84.0ms

Algorithm
rewrite-expression-head
Rules
128×associate-*l/_binary64
96×flip3--_binary64 flip--_binary64
66×sqrt-div_binary64
64×frac-add_binary64 frac-times_binary64
32×associate-*r/_binary64
add-sqr-sqrt_binary64
*-un-lft-identity_binary64 pow1_binary64 add-cube-cbrt_binary64
add-log-exp_binary64 add-exp-log_binary64 add-cbrt-cube_binary64
sqrt-prod_binary64
flip3-+_binary64 pow1/2_binary64 sqrt-pow1_binary64 rem-sqrt-square_binary64 flip-+_binary64
Counts
4 → 100
Calls
4 calls:
6.0ms
(cos.f64 (/.f64 (+.f64 phi1 phi2) 2))
6.0ms
(cos.f64 (/.f64 (+.f64 phi1 phi2) 2))
6.0ms
(cos.f64 (/.f64 (+.f64 phi1 phi2) 2))
33.0ms
(sqrt.f64 (+.f64 (*.f64 (*.f64 (-.f64 lambda1 lambda2) (cos.f64 (/.f64 (+.f64 phi1 phi2) 2))) (*.f64 (-.f64 lambda1 lambda2) (*.f64 (*.f64 (cbrt.f64 (cos.f64 (/.f64 (+.f64 phi1 phi2) 2))) (cbrt.f64 (cos.f64 (/.f64 (+.f64 phi1 phi2) 2)))) (cbrt.f64 (cos.f64 (/.f64 (+.f64 phi1 phi2) 2)))))) (*.f64 (-.f64 phi1 phi2) (-.f64 phi1 phi2))))

series1.4s

Counts
4 → 12
Calls
4 calls:
25.0ms
(cos.f64 (/.f64 (+.f64 phi1 phi2) 2))
25.0ms
(cos.f64 (/.f64 (+.f64 phi1 phi2) 2))
25.0ms
(cos.f64 (/.f64 (+.f64 phi1 phi2) 2))
1.3s
(sqrt.f64 (+.f64 (*.f64 (*.f64 (-.f64 lambda1 lambda2) (cos.f64 (/.f64 (+.f64 phi1 phi2) 2))) (*.f64 (-.f64 lambda1 lambda2) (*.f64 (*.f64 (cbrt.f64 (cos.f64 (/.f64 (+.f64 phi1 phi2) 2))) (cbrt.f64 (cos.f64 (/.f64 (+.f64 phi1 phi2) 2)))) (cbrt.f64 (cos.f64 (/.f64 (+.f64 phi1 phi2) 2)))))) (*.f64 (-.f64 phi1 phi2) (-.f64 phi1 phi2))))

simplify94.0ms

Algorithm
egg-herbie
Counts
112 → 112
Iterations

Useful iterations: 0 (20.0ms)

IterNodesCost
055589867

prune207.0ms

Filtered
80 candidates to 112 candidates (-40.0%)
Pruning

10 alts after pruning (8 fresh and 2 done)

PrunedKeptTotal
New1120112
Fresh088
Picked011
Done011
Total11210122

Merged error: 25.3b

Counts
122 → 10

localize25.0ms

Local error

Found 4 expressions with local error:

25.8b
(cbrt.f64 (*.f64 (*.f64 (-.f64 lambda1 lambda2) (cos.f64 (/.f64 (+.f64 phi1 phi2) 2))) (*.f64 (-.f64 lambda1 lambda2) (cos.f64 (/.f64 (+.f64 phi1 phi2) 2)))))
25.8b
(cbrt.f64 (*.f64 (*.f64 (-.f64 lambda1 lambda2) (cos.f64 (/.f64 (+.f64 phi1 phi2) 2))) (*.f64 (-.f64 lambda1 lambda2) (cos.f64 (/.f64 (+.f64 phi1 phi2) 2)))))
25.8b
(cbrt.f64 (*.f64 (*.f64 (-.f64 lambda1 lambda2) (cos.f64 (/.f64 (+.f64 phi1 phi2) 2))) (*.f64 (-.f64 lambda1 lambda2) (cos.f64 (/.f64 (+.f64 phi1 phi2) 2)))))
35.8b
(sqrt.f64 (+.f64 (*.f64 (*.f64 (cbrt.f64 (*.f64 (*.f64 (-.f64 lambda1 lambda2) (cos.f64 (/.f64 (+.f64 phi1 phi2) 2))) (*.f64 (-.f64 lambda1 lambda2) (cos.f64 (/.f64 (+.f64 phi1 phi2) 2))))) (cbrt.f64 (*.f64 (*.f64 (-.f64 lambda1 lambda2) (cos.f64 (/.f64 (+.f64 phi1 phi2) 2))) (*.f64 (-.f64 lambda1 lambda2) (cos.f64 (/.f64 (+.f64 phi1 phi2) 2)))))) (cbrt.f64 (*.f64 (*.f64 (-.f64 lambda1 lambda2) (cos.f64 (/.f64 (+.f64 phi1 phi2) 2))) (*.f64 (-.f64 lambda1 lambda2) (cos.f64 (/.f64 (+.f64 phi1 phi2) 2)))))) (*.f64 (-.f64 phi1 phi2) (-.f64 phi1 phi2))))

rewrite6.5s

Algorithm
rewrite-expression-head
Rules
29930×associate-*l/_binary64
20428×frac-times_binary64
16050×flip3--_binary64 flip--_binary64
15576×cbrt-div_binary64
5990×associate-*r/_binary64
5826×sqrt-div_binary64
5824×frac-add_binary64
add-sqr-sqrt_binary64
*-un-lft-identity_binary64 pow1_binary64 add-cube-cbrt_binary64
add-log-exp_binary64 add-exp-log_binary64 add-cbrt-cube_binary64
pow1/3_binary64 sqrt-prod_binary64 cbrt-prod_binary64
flip3-+_binary64 pow1/2_binary64 sqrt-pow1_binary64 rem-sqrt-square_binary64 flip-+_binary64
Counts
4 → 5890
Calls
4 calls:
14.0ms
(cbrt.f64 (*.f64 (*.f64 (-.f64 lambda1 lambda2) (cos.f64 (/.f64 (+.f64 phi1 phi2) 2))) (*.f64 (-.f64 lambda1 lambda2) (cos.f64 (/.f64 (+.f64 phi1 phi2) 2)))))
14.0ms
(cbrt.f64 (*.f64 (*.f64 (-.f64 lambda1 lambda2) (cos.f64 (/.f64 (+.f64 phi1 phi2) 2))) (*.f64 (-.f64 lambda1 lambda2) (cos.f64 (/.f64 (+.f64 phi1 phi2) 2)))))
14.0ms
(cbrt.f64 (*.f64 (*.f64 (-.f64 lambda1 lambda2) (cos.f64 (/.f64 (+.f64 phi1 phi2) 2))) (*.f64 (-.f64 lambda1 lambda2) (cos.f64 (/.f64 (+.f64 phi1 phi2) 2)))))
798.0ms
(sqrt.f64 (+.f64 (*.f64 (*.f64 (cbrt.f64 (*.f64 (*.f64 (-.f64 lambda1 lambda2) (cos.f64 (/.f64 (+.f64 phi1 phi2) 2))) (*.f64 (-.f64 lambda1 lambda2) (cos.f64 (/.f64 (+.f64 phi1 phi2) 2))))) (cbrt.f64 (*.f64 (*.f64 (-.f64 lambda1 lambda2) (cos.f64 (/.f64 (+.f64 phi1 phi2) 2))) (*.f64 (-.f64 lambda1 lambda2) (cos.f64 (/.f64 (+.f64 phi1 phi2) 2)))))) (cbrt.f64 (*.f64 (*.f64 (-.f64 lambda1 lambda2) (cos.f64 (/.f64 (+.f64 phi1 phi2) 2))) (*.f64 (-.f64 lambda1 lambda2) (cos.f64 (/.f64 (+.f64 phi1 phi2) 2)))))) (*.f64 (-.f64 phi1 phi2) (-.f64 phi1 phi2))))

series3.5s

Counts
4 → 12
Calls
4 calls:
692.0ms
(cbrt.f64 (*.f64 (*.f64 (-.f64 lambda1 lambda2) (cos.f64 (/.f64 (+.f64 phi1 phi2) 2))) (*.f64 (-.f64 lambda1 lambda2) (cos.f64 (/.f64 (+.f64 phi1 phi2) 2)))))
722.0ms
(cbrt.f64 (*.f64 (*.f64 (-.f64 lambda1 lambda2) (cos.f64 (/.f64 (+.f64 phi1 phi2) 2))) (*.f64 (-.f64 lambda1 lambda2) (cos.f64 (/.f64 (+.f64 phi1 phi2) 2)))))
716.0ms
(cbrt.f64 (*.f64 (*.f64 (-.f64 lambda1 lambda2) (cos.f64 (/.f64 (+.f64 phi1 phi2) 2))) (*.f64 (-.f64 lambda1 lambda2) (cos.f64 (/.f64 (+.f64 phi1 phi2) 2)))))
1.4s
(sqrt.f64 (+.f64 (*.f64 (*.f64 (cbrt.f64 (*.f64 (*.f64 (-.f64 lambda1 lambda2) (cos.f64 (/.f64 (+.f64 phi1 phi2) 2))) (*.f64 (-.f64 lambda1 lambda2) (cos.f64 (/.f64 (+.f64 phi1 phi2) 2))))) (cbrt.f64 (*.f64 (*.f64 (-.f64 lambda1 lambda2) (cos.f64 (/.f64 (+.f64 phi1 phi2) 2))) (*.f64 (-.f64 lambda1 lambda2) (cos.f64 (/.f64 (+.f64 phi1 phi2) 2)))))) (cbrt.f64 (*.f64 (*.f64 (-.f64 lambda1 lambda2) (cos.f64 (/.f64 (+.f64 phi1 phi2) 2))) (*.f64 (-.f64 lambda1 lambda2) (cos.f64 (/.f64 (+.f64 phi1 phi2) 2)))))) (*.f64 (-.f64 phi1 phi2) (-.f64 phi1 phi2))))

simplify11.4s

Algorithm
egg-herbie
Counts
5902 → 5902
Iterations

Useful iterations: 0 (313.0ms)

IterNodesCost
0223991728874

prune2.0min

Filtered
5898 candidates to 5902 candidates (-0.1%)

Profiling

Loading profile data...