Details

Time bar (total: 22.6s)

analyze3.6s (16.1%)

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
9.4%90.4%0.2%9
9.4%90.4%0.2%10
10.9%88.9%0.2%11
10.9%88.9%0.2%12
10.9%88.9%0.2%13
10.9%88.9%0.2%14
Compiler

Compiled 21 to 15 computations (28.6% saved)

sample288.0ms (1.3%)

Algorithm
intervals
Results
187.0ms133×body1024valid
49.0ms61×body512valid
12.0msbody2048valid
10.0ms20×body256valid
9.0ms38×body128valid
Compiler

Compiled 41 to 33 computations (19.5% saved)

simplify328.0ms (1.5%)

Algorithm
egg-herbie
Counts
1 → 1
Iterations

Useful iterations: 0 (27.0ms)

IterNodesCost
021132
121132

prune6.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New011
Fresh011
Picked000
Done000
Total022

Merged error: 0.5b

Counts
2 → 1
Compiler

Compiled 40 to 28 computations (30% saved)

localize41.0ms (0.2%)

Local error

Found 4 expressions with local error:

0.2b
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))))
0.5b
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))
3.7b
(cos.f64 (-.f64 lambda1 lambda2))
3.9b
(sin.f64 (-.f64 lambda1 lambda2))

rewrite34.0ms (0.1%)

Algorithm
rewrite-expression-head
Rules
add-log-exp_binary64_450
pow1_binary64_472 add-cube-cbrt_binary64_446 add-exp-log_binary64_449 *-un-lft-identity_binary64_414 add-cbrt-cube_binary64_447 add-sqr-sqrt_binary64_435
cos-diff_binary64_548
associate-+r+_binary64_348 sub-neg_binary64_407
distribute-lft-in_binary64_365 flip3-+_binary64_417 distribute-rgt-in_binary64_366 sin-diff_binary64_547 +-commutative_binary64_346 cos-sum_binary64_545 flip-+_binary64_388 sin-sum_binary64_544 sum-log_binary64_502
Counts
4 → 38
Calls

4 calls:

9.0ms
(sin.f64 (-.f64 lambda1 lambda2))
9.0ms
(cos.f64 (-.f64 lambda1 lambda2))
8.0ms
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))
1.0ms
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))))

series653.0ms (2.9%)

Counts
4 → 12
Calls

4 calls:

410.0ms
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))
133.0ms
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))))
59.0ms
(sin.f64 (-.f64 lambda1 lambda2))
51.0ms
(cos.f64 (-.f64 lambda1 lambda2))

simplify207.0ms (0.9%)

Algorithm
egg-herbie
Counts
50 → 50
Iterations

Useful iterations: 0 (177.0ms)

IterNodesCost
04805950
14805950

prune172.0ms (0.8%)

Pruning

14 alts after pruning (14 fresh and 0 done)

PrunedKeptTotal
New361450
Fresh000
Picked101
Done000
Total371451

Merged error: 0.4b

Counts
51 → 14
Compiler

Compiled 1749 to 491 computations (71.9% saved)

localize63.0ms (0.3%)

Local error

Found 4 expressions with local error:

0.2b
(*.f64 (cos.f64 lambda1) (sin.f64 lambda2))
0.2b
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))))
0.5b
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))
3.7b
(cos.f64 (-.f64 lambda1 lambda2))

rewrite40.0ms (0.2%)

Algorithm
rewrite-expression-head
Rules
add-sqr-sqrt_binary64_435
pow1_binary64_472 add-cube-cbrt_binary64_446 add-exp-log_binary64_449 *-un-lft-identity_binary64_414 add-cbrt-cube_binary64_447 add-log-exp_binary64_450
cos-diff_binary64_548 associate-*l*_binary64_357 associate-*r*_binary64_356
associate-+r+_binary64_348
distribute-lft-in_binary64_365 flip3-+_binary64_417 distribute-rgt-in_binary64_366 *-commutative_binary64_347 +-commutative_binary64_346 prod-exp_binary64_460 cos-sum_binary64_545 pow-prod-down_binary64_482 sub-neg_binary64_407 flip-+_binary64_388 unswap-sqr_binary64_382 cbrt-unprod_binary64_444 sum-log_binary64_502
Counts
4 → 47
Calls

4 calls:

10.0ms
(*.f64 (cos.f64 lambda1) (sin.f64 lambda2))
9.0ms
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))
9.0ms
(cos.f64 (-.f64 lambda1 lambda2))
1.0ms
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))))

series791.0ms (3.5%)

Counts
4 → 12
Calls

4 calls:

427.0ms
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))
172.0ms
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))))
137.0ms
(*.f64 (cos.f64 lambda1) (sin.f64 lambda2))
55.0ms
(cos.f64 (-.f64 lambda1 lambda2))

simplify149.0ms (0.7%)

Algorithm
egg-herbie
Counts
59 → 59
Iterations

Useful iterations: 0 (115.0ms)

IterNodesCost
049211188
149211188

prune170.0ms (0.8%)

Pruning

13 alts after pruning (13 fresh and 0 done)

PrunedKeptTotal
New58159
Fresh11213
Picked101
Done000
Total601373

Merged error: 0.1b

Counts
73 → 13
Compiler

Compiled 2383 to 537 computations (77.5% saved)

localize60.0ms (0.3%)

Local error

Found 4 expressions with local error:

0.2b
(*.f64 (cos.f64 lambda1) (sin.f64 lambda2))
0.2b
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
0.3b
(*.f64 (sin.f64 lambda1) (sin.f64 lambda2))
0.4b
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))

rewrite46.0ms (0.2%)

Algorithm
rewrite-expression-head
Rules
12×add-sqr-sqrt_binary64_435
pow1_binary64_472 add-cube-cbrt_binary64_446 add-exp-log_binary64_449 *-un-lft-identity_binary64_414 add-cbrt-cube_binary64_447
associate-*l*_binary64_357 add-log-exp_binary64_450 associate-*r*_binary64_356
*-commutative_binary64_347 prod-exp_binary64_460 pow-prod-down_binary64_482 associate-+r+_binary64_348 unswap-sqr_binary64_382 cbrt-unprod_binary64_444
distribute-lft-in_binary64_365 flip3-+_binary64_417 distribute-rgt-in_binary64_366 +-commutative_binary64_346 flip-+_binary64_388 sum-log_binary64_502 sin-mult_binary64_566
Counts
4 → 57
Calls

4 calls:

11.0ms
(*.f64 (sin.f64 lambda1) (sin.f64 lambda2))
10.0ms
(*.f64 (cos.f64 lambda1) (sin.f64 lambda2))
9.0ms
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))
1.0ms
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))

series1.3s (5.7%)

Counts
4 → 12
Calls

4 calls:

838.0ms
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))
203.0ms
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
129.0ms
(*.f64 (sin.f64 lambda1) (sin.f64 lambda2))
122.0ms
(*.f64 (cos.f64 lambda1) (sin.f64 lambda2))

simplify146.0ms (0.6%)

Algorithm
egg-herbie
Counts
69 → 69
Iterations

Useful iterations: 0 (107.0ms)

IterNodesCost
049781626
149781626

prune190.0ms (0.8%)

Pruning

13 alts after pruning (13 fresh and 0 done)

PrunedKeptTotal
New68169
Fresh01212
Picked101
Done000
Total691382

Merged error: 0.1b

Counts
82 → 13
Compiler

Compiled 3221 to 602 computations (81.3% saved)

localize66.0ms (0.3%)

Local error

Found 4 expressions with local error:

0.2b
(exp.f64 (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
0.3b
(*.f64 (sin.f64 lambda1) (sin.f64 lambda2))
0.4b
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))
0.6b
(log.f64 (exp.f64 (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))

rewrite62.0ms (0.3%)

Algorithm
rewrite-expression-head
Rules
11×add-sqr-sqrt_binary64_435
add-cube-cbrt_binary64_446 *-un-lft-identity_binary64_414 add-log-exp_binary64_450
pow1_binary64_472
add-exp-log_binary64_449 add-cbrt-cube_binary64_447 exp-prod_binary64_463
log-pow_binary64_500 log-prod_binary64_497
associate-*l*_binary64_357 associate-*r*_binary64_356
exp-sum_binary64_457 rem-exp-log_binary64_451 associate-+r+_binary64_348 sum-log_binary64_502
distribute-lft-in_binary64_365 flip3-+_binary64_417 rem-log-exp_binary64_452 distribute-rgt-in_binary64_366 *-commutative_binary64_347 +-commutative_binary64_346 prod-exp_binary64_460 pow-prod-down_binary64_482 flip-+_binary64_388 unswap-sqr_binary64_382 cbrt-unprod_binary64_444 sin-mult_binary64_566
Counts
4 → 61
Calls

4 calls:

11.0ms
(exp.f64 (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
10.0ms
(*.f64 (sin.f64 lambda1) (sin.f64 lambda2))
10.0ms
(log.f64 (exp.f64 (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))
9.0ms
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))

series3.3s (14.8%)

Counts
4 → 12
Calls

4 calls:

1.3s
(log.f64 (exp.f64 (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))
1.2s
(exp.f64 (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
806.0ms
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))
121.0ms
(*.f64 (sin.f64 lambda1) (sin.f64 lambda2))

simplify127.0ms (0.6%)

Algorithm
egg-herbie
Counts
73 → 73
Iterations

Useful iterations: 0 (89.0ms)

IterNodesCost
050311890

prune172.0ms (0.8%)

Pruning

15 alts after pruning (14 fresh and 1 done)

PrunedKeptTotal
New70373
Fresh11112
Picked011
Done000
Total711586

Merged error: 0.1b

Counts
86 → 15
Compiler

Compiled 3140 to 409 computations (87% saved)

regimes473.0ms (2.1%)

Compiler

Compiled 3502 to 1786 computations (49% saved)

bsearch0.0ms (0%)

simplify5.0ms (0%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (2.0ms)

IterNodesCost
05960
15960

end0.0ms (0%)

sample10.0s (44.4%)

Algorithm
intervals
Results
6.3s4443×body1024valid
1.4s1787×body512valid
359.0ms719×body256valid
349.0ms107×body2048valid
216.0ms944×body128valid
Compiler

Compiled 638 to 331 computations (48.1% saved)

Profiling

Loading profile data...