Details

Time bar (total: 16.4s)

analyze2.8s (17%)

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
1.2%98.6%0.2%12
1.8%98%0.2%13
2%97.7%0.2%14
Compiler

Compiled 20 to 18 computations (10% saved)

sample222.0ms (1.4%)

Algorithm
intervals
Results
157.0ms175×body1024valid
27.0ms51×body512valid
15.0msbody2048valid
4.0ms11×body256valid
2.0ms11×body128valid
Compiler

Compiled 39 to 40 computations (-2.6% saved)

simplify102.0ms (0.6%)

Algorithm
egg-herbie
Counts
1 → 1
Iterations

Useful iterations: 0 (6.0ms)

IterNodesCost
09631
19631

prune9.0ms (0.1%)

Pruning

2 alts after pruning (2 fresh and 0 done)

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

Compiled 38 to 34 computations (10.5% saved)

localize19.0ms (0.1%)

Local error

Found 4 expressions with local error:

0.2b
(*.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))) R)
0.2b
(*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))
0.9b
(acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
2.8b
(cos.f64 (-.f64 lambda1 lambda2))

rewrite23.0ms (0.1%)

Algorithm
rewrite-expression-head
Rules
11×add-cbrt-cube_binary64_1478 add-exp-log_binary64_1480 pow1_binary64_1503
10×add-sqr-sqrt_binary64_1464
add-cube-cbrt_binary64_1477 *-un-lft-identity_binary64_1442
associate-*r*_binary64_1382
cbrt-unprod_binary64_1475 associate-*l*_binary64_1383 pow-prod-down_binary64_1513 add-log-exp_binary64_1481 prod-exp_binary64_1491 cos-sum_binary64_1576
cancel-sign-sub-inv_binary64_1408 cos-diff_binary64_1579
*-commutative_binary64_1373
acos-asin_binary64_1623 sub-neg_binary64_1435 distribute-lft-in_binary64_1391 distribute-rgt-in_binary64_1392 cos-mult_binary64_1596 associate-*l/_binary64_1385 unswap-sqr_binary64_1410
Counts
4 → 59
Calls

4 calls:

7.0ms
(*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))
5.0ms
(cos.f64 (-.f64 lambda1 lambda2))
3.0ms
(*.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))) R)
1.0ms
(acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))

series303.0ms (1.9%)

Counts
4 → 12
Calls

4 calls:

130.0ms
(*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))
122.0ms
(*.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))) R)
35.0ms
(acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
16.0ms
(cos.f64 (-.f64 lambda1 lambda2))

simplify75.0ms (0.5%)

Algorithm
egg-herbie
Counts
71 → 71
Iterations

Useful iterations: 0 (54.0ms)

IterNodesCost
048941724
148941724

prune103.0ms (0.6%)

Pruning

15 alts after pruning (15 fresh and 0 done)

PrunedKeptTotal
New561571
Fresh000
Picked101
Done000
Total571572
Error
2.5b
Counts
72 → 15
Compiler

Compiled 2277 to 567 computations (75.1% saved)

localize28.0ms (0.2%)

Local error

Found 4 expressions with local error:

0.2b
(*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 phi1) (cos.f64 phi2)))
0.2b
(*.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (+.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 phi1) (cos.f64 phi2))) (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 phi1) (cos.f64 phi2)))))) R)
0.2b
(*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 phi1) (cos.f64 phi2)))
0.9b
(acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (+.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 phi1) (cos.f64 phi2))) (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 phi1) (cos.f64 phi2))))))

rewrite32.0ms (0.2%)

Algorithm
rewrite-expression-head
Rules
30×add-cbrt-cube_binary64_1478 add-exp-log_binary64_1480 pow1_binary64_1503
17×cbrt-unprod_binary64_1475 pow-prod-down_binary64_1513 prod-exp_binary64_1491
add-sqr-sqrt_binary64_1464
cos-mult_binary64_1596 add-cube-cbrt_binary64_1477 *-un-lft-identity_binary64_1442
associate-*r*_binary64_1382 associate-*l*_binary64_1383
add-log-exp_binary64_1481
*-commutative_binary64_1373
associate-*r/_binary64_1384 frac-times_binary64_1452 sin-mult_binary64_1597 associate-*l/_binary64_1385
acos-asin_binary64_1623 unswap-sqr_binary64_1410
Counts
4 → 76
Calls

4 calls:

9.0ms
(*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 phi1) (cos.f64 phi2)))
8.0ms
(*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 phi1) (cos.f64 phi2)))
4.0ms
(*.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (+.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 phi1) (cos.f64 phi2))) (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 phi1) (cos.f64 phi2)))))) R)
1.0ms
(acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (+.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 phi1) (cos.f64 phi2))) (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 phi1) (cos.f64 phi2))))))

series491.0ms (3%)

Counts
4 → 12
Calls

4 calls:

190.0ms
(*.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (+.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 phi1) (cos.f64 phi2))) (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 phi1) (cos.f64 phi2)))))) R)
126.0ms
(*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 phi1) (cos.f64 phi2)))
114.0ms
(*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 phi1) (cos.f64 phi2)))
60.0ms
(acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (+.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 phi1) (cos.f64 phi2))) (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 phi1) (cos.f64 phi2))))))

simplify78.0ms (0.5%)

Algorithm
egg-herbie
Counts
88 → 88
Iterations

Useful iterations: 0 (53.0ms)

IterNodesCost
050942589

prune128.0ms (0.8%)

Pruning

14 alts after pruning (14 fresh and 0 done)

PrunedKeptTotal
New781088
Fresh10414
Picked101
Done000
Total8914103
Error
2.5b
Counts
103 → 14
Compiler

Compiled 3768 to 726 computations (80.7% saved)

localize28.0ms (0.2%)

Local error

Found 4 expressions with local error:

0.2b
(*.f64 (log.f64 (exp.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))))) R)
0.4b
(exp.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))))
0.5b
(log.f64 (exp.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))))
0.9b
(acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))

rewrite22.0ms (0.1%)

Algorithm
rewrite-expression-head
Rules
12×add-sqr-sqrt_binary64_1464
10×add-cube-cbrt_binary64_1477 *-un-lft-identity_binary64_1442
exp-prod_binary64_1494
log-pow_binary64_1531 pow1_binary64_1503
associate-*l*_binary64_1383
add-cbrt-cube_binary64_1478 add-exp-log_binary64_1480
add-log-exp_binary64_1481
associate-*r*_binary64_1382 acos-asin_binary64_1623 log-prod_binary64_1528
exp-diff_binary64_1490
cbrt-unprod_binary64_1475 rem-exp-log_binary64_1482 rem-log-exp_binary64_1483 pow-prod-down_binary64_1513 *-commutative_binary64_1373 prod-exp_binary64_1491 log-div_binary64_1529 unswap-sqr_binary64_1410
Counts
4 → 58
Calls

4 calls:

5.0ms
(*.f64 (log.f64 (exp.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))))) R)
2.0ms
(log.f64 (exp.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))))
2.0ms
(exp.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.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
(acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))

series982.0ms (6%)

Counts
4 → 12
Calls

4 calls:

602.0ms
(*.f64 (log.f64 (exp.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))))) R)
204.0ms
(log.f64 (exp.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))))
120.0ms
(exp.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))))
56.0ms
(acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))

simplify132.0ms (0.8%)

Algorithm
egg-herbie
Counts
70 → 70
Iterations

Useful iterations: 0 (99.0ms)

IterNodesCost
048663226
148663226

prune118.0ms (0.7%)

Pruning

17 alts after pruning (17 fresh and 0 done)

PrunedKeptTotal
New64670
Fresh21113
Picked101
Done000
Total671784
Error
2.4b
Counts
84 → 17
Compiler

Compiled 3488 to 613 computations (82.4% saved)

localize32.0ms (0.2%)

Local error

Found 4 expressions with local error:

0.4b
(exp.f64 (-.f64 (/.f64 PI.f64 2) (asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))))
0.5b
(log.f64 (exp.f64 (-.f64 (/.f64 PI.f64 2) (asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.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
(asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.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
(-.f64 (/.f64 PI.f64 2) (asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))))

rewrite37.0ms (0.2%)

Algorithm
rewrite-expression-head
Rules
25×add-sqr-sqrt_binary64_1464
16×*-un-lft-identity_binary64_1442
12×exp-prod_binary64_1494
10×add-cube-cbrt_binary64_1477 exp-sum_binary64_1488
cancel-sign-sub-inv_binary64_1408 add-log-exp_binary64_1481
log-prod_binary64_1528
log-pow_binary64_1531
difference-of-squares_binary64_1411
pow1_binary64_1503
add-cbrt-cube_binary64_1478 add-exp-log_binary64_1480 asin-acos_binary64_1622
times-frac_binary64_1448 sub-neg_binary64_1435 associate--r-_binary64_1381 distribute-lft-out--_binary64_1394
rem-exp-log_binary64_1482 diff-log_binary64_1534 exp-diff_binary64_1490
rem-log-exp_binary64_1483 flip3--_binary64_1446 flip--_binary64_1417 log-div_binary64_1529
Counts
4 → 71
Calls

4 calls:

9.0ms
(exp.f64 (-.f64 (/.f64 PI.f64 2) (asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.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
(log.f64 (exp.f64 (-.f64 (/.f64 PI.f64 2) (asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))))))
8.0ms
(-.f64 (/.f64 PI.f64 2) (asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.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
(asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))

series687.0ms (4.2%)

Counts
4 → 12
Calls

4 calls:

320.0ms
(log.f64 (exp.f64 (-.f64 (/.f64 PI.f64 2) (asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))))))
210.0ms
(exp.f64 (-.f64 (/.f64 PI.f64 2) (asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))))
104.0ms
(-.f64 (/.f64 PI.f64 2) (asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))))
52.0ms
(asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))

simplify102.0ms (0.6%)

Algorithm
egg-herbie
Counts
83 → 83
Iterations

Useful iterations: 0 (64.0ms)

IterNodesCost
050174254

prune111.0ms (0.7%)

Pruning

19 alts after pruning (19 fresh and 0 done)

PrunedKeptTotal
New78583
Fresh21416
Picked101
Done000
Total8119100
Error
2.3b
Counts
100 → 19
Compiler

Compiled 3590 to 678 computations (81.1% saved)

regimes1.5s (9.3%)

Accuracy

Total 0.5b remaining (14%)

Threshold costs 0.5b (14%)

Compiler

Compiled 23734 to 13878 computations (41.5% saved)

bsearch0.0ms (0%)

simplify2.0ms (0%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (1.0ms)

IterNodesCost
03353
13353

end0.0ms (0%)

sample8.2s (50.2%)

Algorithm
intervals
Results
4.7s5493×body1024valid
765.0ms1453×body512valid
477.0ms250×body2048valid
186.0ms508×body256valid
51.0ms296×body128valid
2.0msbody1024invalid
1.0msbody512invalid
Compiler

Compiled 2278 to 1328 computations (41.7% saved)

Profiling

Loading profile data...