Details

Time bar (total: 6.1s)

analyze755.0ms (12.3%)

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%74.9%0.1%8
25%74.9%0.1%9
25%64%11.1%10
31.2%54.6%14.2%11
39%44.1%16.9%12
39%41.5%19.5%13
42.9%37%20.1%14
Compiler

Compiled 20 to 16 computations (20% saved)

sample93.0ms (1.5%)

Algorithm
intervals
Results
21.0ms40×body1280invalid
17.0ms41×body1280valid
11.0ms157×body80valid
11.0ms36×body640valid
10.0ms32×body640invalid
3.0ms15×body320invalid
3.0ms14×body320valid
1.0msbody160valid
1.0ms15×body80invalid
1.0msbody160invalid
Compiler

Compiled 39 to 34 computations (12.8% saved)

simplify15.0ms (0.3%)

Algorithm
egg-herbie
Counts
1 → 1
Iterations

Useful iterations: 0 (6.0ms)

IterNodesCost
010620
110620

prune8.0ms (0.1%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New011
Fresh011
Picked000
Done000
Total022

Merged error: 0.4b

Counts
2 → 2
Compiler

Compiled 45 to 37 computations (17.8% saved)

localize10.0ms (0.2%)

Local error

Found 2 expressions with local error:

0.2b
(*.f64 (cos.f64 th) (/.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (sqrt.f64 2)))
0.4b
(/.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (sqrt.f64 2))

rewrite22.0ms (0.4%)

Algorithm
rewrite-expression-head
Rules
39×add-sqr-sqrt_binary64
38×times-frac_binary64
31×*-un-lft-identity_binary64 add-cube-cbrt_binary64
22×associate-*r*_binary64 sqrt-prod_binary64
add-exp-log_binary64 add-cbrt-cube_binary64
associate-/r*_binary64
pow1_binary64
associate-*l*_binary64 unswap-sqr_binary64 associate-/l*_binary64
associate-/l/_binary64 add-log-exp_binary64 cbrt-unprod_binary64 cbrt-undiv_binary64 prod-exp_binary64 div-inv_binary64 div-exp_binary64
pow-prod-down_binary64 flip3-+_binary64 associate-*r/_binary64 clear-num_binary64 frac-2neg_binary64 flip-+_binary64 *-commutative_binary64
Counts
2 → 83
Calls

2 calls:

12.0ms
(*.f64 (cos.f64 th) (/.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (sqrt.f64 2)))
7.0ms
(/.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (sqrt.f64 2))

series58.0ms (0.9%)

Counts
2 → 6
Calls

2 calls:

42.0ms
(*.f64 (cos.f64 th) (/.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (sqrt.f64 2)))
16.0ms
(/.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (sqrt.f64 2))

simplify65.0ms (1.1%)

Algorithm
egg-herbie
Counts
89 → 89
Iterations

Useful iterations: 0 (37.0ms)

IterNodesCost
061412187

prune95.0ms (1.5%)

Pruning

8 alts after pruning (8 fresh and 0 done)

PrunedKeptTotal
New81889
Fresh101
Picked101
Done000
Total83891

Merged error: 0.0b

Counts
91 → 8
Compiler

Compiled 2208 to 873 computations (60.5% saved)

localize15.0ms (0.2%)

Local error

Found 3 expressions with local error:

0.2b
(*.f64 (cos.f64 th) (/.f64 (/.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (*.f64 (cbrt.f64 (sqrt.f64 2)) (cbrt.f64 (sqrt.f64 2)))) (cbrt.f64 (sqrt.f64 2))))
0.2b
(/.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (*.f64 (cbrt.f64 (sqrt.f64 2)) (cbrt.f64 (sqrt.f64 2))))
0.2b
(/.f64 (/.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (*.f64 (cbrt.f64 (sqrt.f64 2)) (cbrt.f64 (sqrt.f64 2)))) (cbrt.f64 (sqrt.f64 2)))

rewrite63.0ms (1%)

Algorithm
rewrite-expression-head
Rules
195×times-frac_binary64
110×add-sqr-sqrt_binary64
94×cbrt-prod_binary64
90×*-un-lft-identity_binary64 add-cube-cbrt_binary64
67×associate-*r*_binary64
47×sqrt-prod_binary64
31×add-exp-log_binary64
22×div-inv_binary64
19×add-cbrt-cube_binary64
12×cbrt-undiv_binary64 div-exp_binary64
10×associate-/r*_binary64 associate-/l*_binary64
cbrt-unprod_binary64 unswap-sqr_binary64 prod-exp_binary64
pow1_binary64
associate-/l/_binary64 add-log-exp_binary64 associate-*l*_binary64
clear-num_binary64 frac-2neg_binary64
pow-prod-down_binary64 flip3-+_binary64 associate-*r/_binary64 flip-+_binary64 *-commutative_binary64
Counts
3 → 214
Calls

3 calls:

27.0ms
(*.f64 (cos.f64 th) (/.f64 (/.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (*.f64 (cbrt.f64 (sqrt.f64 2)) (cbrt.f64 (sqrt.f64 2)))) (cbrt.f64 (sqrt.f64 2))))
14.0ms
(/.f64 (/.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (*.f64 (cbrt.f64 (sqrt.f64 2)) (cbrt.f64 (sqrt.f64 2)))) (cbrt.f64 (sqrt.f64 2)))
11.0ms
(/.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (*.f64 (cbrt.f64 (sqrt.f64 2)) (cbrt.f64 (sqrt.f64 2))))

series98.0ms (1.6%)

Counts
3 → 9
Calls

3 calls:

41.0ms
(*.f64 (cos.f64 th) (/.f64 (/.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (*.f64 (cbrt.f64 (sqrt.f64 2)) (cbrt.f64 (sqrt.f64 2)))) (cbrt.f64 (sqrt.f64 2))))
39.0ms
(/.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (*.f64 (cbrt.f64 (sqrt.f64 2)) (cbrt.f64 (sqrt.f64 2))))
18.0ms
(/.f64 (/.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (*.f64 (cbrt.f64 (sqrt.f64 2)) (cbrt.f64 (sqrt.f64 2)))) (cbrt.f64 (sqrt.f64 2)))

simplify124.0ms (2%)

Algorithm
egg-herbie
Counts
223 → 223
Iterations

Useful iterations: 0 (51.0ms)

IterNodesCost
053917868

prune256.0ms (4.2%)

Pruning

8 alts after pruning (8 fresh and 0 done)

PrunedKeptTotal
New2203223
Fresh257
Picked101
Done000
Total2238231

Merged error: 0b

Counts
231 → 8
Compiler

Compiled 7322 to 4109 computations (43.9% saved)

localize13.0ms (0.2%)

Local error

Found 3 expressions with local error:

0.2b
(*.f64 (cos.f64 th) (/.f64 (*.f64 (cbrt.f64 1/2) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (cbrt.f64 (sqrt.f64 2))))
0.2b
(/.f64 (*.f64 (cbrt.f64 1/2) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (cbrt.f64 (sqrt.f64 2)))
0.4b
(*.f64 (cbrt.f64 1/2) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))

rewrite34.0ms (0.5%)

Algorithm
rewrite-expression-head
Rules
23×add-sqr-sqrt_binary64
22×cbrt-prod_binary64
19×add-exp-log_binary64
18×times-frac_binary64
17×*-un-lft-identity_binary64 add-cube-cbrt_binary64
16×associate-*r*_binary64
12×add-cbrt-cube_binary64
associate-/r*_binary64 associate-*l*_binary64 sqrt-prod_binary64
pow1_binary64
cbrt-unprod_binary64 prod-exp_binary64
associate-*r/_binary64
cbrt-undiv_binary64 div-exp_binary64
add-log-exp_binary64 unswap-sqr_binary64
pow-prod-down_binary64 flip3-+_binary64 associate-/l/_binary64 div-inv_binary64 flip-+_binary64 *-commutative_binary64
distribute-lft-in_binary64 distribute-rgt-in_binary64 clear-num_binary64 frac-2neg_binary64 associate-/l*_binary64
Counts
3 → 94
Calls

3 calls:

12.0ms
(*.f64 (cos.f64 th) (/.f64 (*.f64 (cbrt.f64 1/2) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (cbrt.f64 (sqrt.f64 2))))
10.0ms
(/.f64 (*.f64 (cbrt.f64 1/2) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (cbrt.f64 (sqrt.f64 2)))
8.0ms
(*.f64 (cbrt.f64 1/2) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))

series120.0ms (2%)

Counts
3 → 9
Calls

3 calls:

75.0ms
(*.f64 (cos.f64 th) (/.f64 (*.f64 (cbrt.f64 1/2) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (cbrt.f64 (sqrt.f64 2))))
34.0ms
(/.f64 (*.f64 (cbrt.f64 1/2) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (cbrt.f64 (sqrt.f64 2)))
12.0ms
(*.f64 (cbrt.f64 1/2) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))

simplify107.0ms (1.7%)

Algorithm
egg-herbie
Counts
103 → 103
Iterations

Useful iterations: 0 (75.0ms)

IterNodesCost
049532415
149532415

prune100.0ms (1.6%)

Pruning

8 alts after pruning (7 fresh and 1 done)

PrunedKeptTotal
New1012103
Fresh257
Picked011
Done000
Total1038111

Merged error: 0b

Counts
111 → 8
Compiler

Compiled 2531 to 1378 computations (45.6% saved)

localize13.0ms (0.2%)

Local error

Found 3 expressions with local error:

0.2b
(*.f64 (cos.f64 th) (*.f64 (cbrt.f64 1/2) (/.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (cbrt.f64 (sqrt.f64 2)))))
0.3b
(/.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (cbrt.f64 (sqrt.f64 2)))
0.4b
(*.f64 (cbrt.f64 1/2) (/.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (cbrt.f64 (sqrt.f64 2))))

rewrite43.0ms (0.7%)

Algorithm
rewrite-expression-head
Rules
69×add-sqr-sqrt_binary64
60×times-frac_binary64
53×cbrt-prod_binary64
47×*-un-lft-identity_binary64 add-cube-cbrt_binary64
32×associate-*r*_binary64
23×sqrt-prod_binary64
19×add-exp-log_binary64
12×add-cbrt-cube_binary64
10×pow1_binary64
associate-/r*_binary64 associate-*l*_binary64
unswap-sqr_binary64
cbrt-unprod_binary64 prod-exp_binary64
pow-prod-down_binary64
add-log-exp_binary64 cbrt-undiv_binary64 associate-*r/_binary64 associate-/l*_binary64 div-exp_binary64
associate-/l/_binary64 div-inv_binary64 *-commutative_binary64
flip3-+_binary64 clear-num_binary64 frac-2neg_binary64 flip-+_binary64
Counts
3 → 133
Calls

3 calls:

16.0ms
(*.f64 (cbrt.f64 1/2) (/.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (cbrt.f64 (sqrt.f64 2))))
13.0ms
(*.f64 (cos.f64 th) (*.f64 (cbrt.f64 1/2) (/.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (cbrt.f64 (sqrt.f64 2)))))
9.0ms
(/.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (cbrt.f64 (sqrt.f64 2)))

series141.0ms (2.3%)

Counts
3 → 9
Calls

3 calls:

76.0ms
(*.f64 (cos.f64 th) (*.f64 (cbrt.f64 1/2) (/.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (cbrt.f64 (sqrt.f64 2)))))
37.0ms
(*.f64 (cbrt.f64 1/2) (/.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (cbrt.f64 (sqrt.f64 2))))
28.0ms
(/.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (cbrt.f64 (sqrt.f64 2)))

simplify130.0ms (2.1%)

Algorithm
egg-herbie
Counts
142 → 142
Iterations

Useful iterations: 0 (89.0ms)

IterNodesCost
049974094
149974094

prune112.0ms (1.8%)

Pruning

8 alts after pruning (6 fresh and 2 done)

PrunedKeptTotal
New1420142
Fresh066
Picked011
Done011
Total1428150

Merged error: 0b

Counts
150 → 8
Compiler

Compiled 3857 to 1890 computations (51% saved)

regimes262.0ms (4.3%)

Compiler

Compiled 1078 to 810 computations (24.9% saved)

bsearch0.0ms (0%)

simplify3.0ms (0.1%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (1.0ms)

IterNodesCost
01927
11927

end0.0ms (0%)

sample3.4s (55.2%)

Algorithm
intervals
Results
638.0ms1437×body1280valid
509.0ms1146×body1280invalid
359.0ms1156×body640valid
338.0ms4562×body80valid
292.0ms933×body640invalid
130.0ms572×body320valid
106.0ms472×body320invalid
41.0ms273×body160valid
39.0ms503×body80invalid
36.0ms236×body160invalid
Compiler

Compiled 213 to 162 computations (23.9% saved)

Profiling

Loading profile data...