Details

Time bar (total: 21.1s)

analyze4.3s (20.6%)

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 25 to 18 computations (28% saved)

sample319.0ms (1.5%)

Algorithm
intervals
Results
215.0ms176×body1024valid
39.0ms14×body2048valid
26.0ms39×body512valid
7.0ms15×body256valid
2.0ms12×body128valid
Compiler

Compiled 54 to 40 computations (25.9% saved)

simplify13.0ms (0.1%)

Algorithm
egg-herbie
Rules
15×sub-neg_binary64
14×cancel-sign-sub-inv_binary64
10×*-commutative_binary64
10×distribute-rgt-in_binary64
neg-mul-1_binary64
Counts
1 → 0
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01831
12731
23831
34431
45031
56631
68931
710231
811431
911631
1011031
119631

prune2.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New000
Fresh011
Picked000
Done000
Total011
Error
17.1b
Counts
1 → 1
Alt Table
StatusErrorProgram
17.1b
(*.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)
Compiler

Compiled 48 to 34 computations (29.2% saved)

localize20.0ms (0.1%)

Local error

Found 4 expressions with local error:

0.2b
(*.f64 (sin.f64 phi1) (sin.f64 phi2))
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)
1.0b
(acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
3.6b
(cos.f64 (-.f64 lambda1 lambda2))

rewrite71.0ms (0.3%)

Algorithm
rewrite-expression-head
Error
4.6b
Rules
13×add-sqr-sqrt_binary64
*-un-lft-identity_binary64
add-cube-cbrt_binary64
add-cbrt-cube_binary64
add-exp-log_binary64
Counts
4 → 57
Calls

4 calls:

4.0ms
(cos.f64 (-.f64 lambda1 lambda2))
3.0ms
(*.f64 (sin.f64 phi1) (sin.f64 phi2))
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)))))
Compiler

Compiled 1588 to 295 computations (81.4% saved)

series118.0ms (0.6%)

Error
16.4b
Counts
4 → 48
Calls

4 calls:

45.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)
25.0ms
(acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
19.0ms
(*.f64 (sin.f64 phi1) (sin.f64 phi2))
15.0ms
(cos.f64 (-.f64 lambda1 lambda2))
Compiler

Compiled 2568 to 1669 computations (35% saved)

simplify115.0ms (0.5%)

Algorithm
egg-herbie
Rules
424×sub-neg_binary64
400×unsub-neg_binary64
382×associate-*l*_binary64
354×distribute-rgt-neg-in_binary64
347×distribute-lft-neg-in_binary64
Counts
105 → 44
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01742635
13662379
28692356
320282348
440732348
550452348

prune59.0ms (0.3%)

Pruning

13 alts after pruning (13 fresh and 0 done)

PrunedKeptTotal
New311344
Fresh000
Picked101
Done000
Total321345
Error
4.7b
Counts
45 → 13
Alt Table
StatusErrorProgram
41.3b
(*.f64 (*.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (cos.f64 phi1))))) (sqrt.f64 R)) (sqrt.f64 R))
17.1b
(*.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (cbrt.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 3))))) R)
17.8b
(*.f64 (*.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (cos.f64 phi1))))) (*.f64 (cbrt.f64 R) (cbrt.f64 R))) (cbrt.f64 R))
4.9b
(*.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))) R)
41.3b
(*.f64 (*.f64 (sqrt.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (cos.f64 phi1)))))) (sqrt.f64 R)) (*.f64 (sqrt.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (cos.f64 phi1)))))) (sqrt.f64 R)))
17.7b
(*.f64 (*.f64 (cbrt.f64 (*.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (cos.f64 phi1))))) R)) (cbrt.f64 (*.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (cos.f64 phi1))))) R))) (cbrt.f64 (*.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (cos.f64 phi1))))) R)))
44.7b
(cbrt.f64 (pow.f64 (*.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (cos.f64 phi1))))) R) 3))
17.2b
(*.f64 (*.f64 (sqrt.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (cos.f64 phi1)))))) (sqrt.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (cos.f64 phi1))))))) R)
17.6b
(*.f64 (*.f64 (*.f64 (cbrt.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (cos.f64 phi1)))))) (cbrt.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (cos.f64 phi1))))))) (cbrt.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (cos.f64 phi1))))))) R)
17.3b
(*.f64 (cbrt.f64 (pow.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (cos.f64 phi1))))) 3)) R)
17.1b
(*.f64 (log.f64 (exp.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (cos.f64 phi1))))))) R)
17.1b
(*.f64 (-.f64 (/.f64 PI.f64 2) (asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (cos.f64 phi1)))))) R)
17.2b
(*.f64 (sqrt.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))) (*.f64 R (sqrt.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (cos.f64 phi1))))))))
Compiler

Compiled 2076 to 768 computations (63% saved)

localize26.0ms (0.1%)

Local error

Found 4 expressions with local error:

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

rewrite122.0ms (0.6%)

Algorithm
rewrite-expression-head
Error
4.5b
Rules
13×add-sqr-sqrt_binary64
13×add-cbrt-cube_binary64
13×add-exp-log_binary64
13×pow1_binary64
associate-*r*_binary64
Counts
4 → 72
Calls

4 calls:

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

Compiled 2725 to 392 computations (85.6% saved)

series277.0ms (1.3%)

Error
4.6b
Counts
4 → 61
Calls

4 calls:

115.0ms
(*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))
67.0ms
(*.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))) R)
35.0ms
(acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
23.0ms
(*.f64 (sin.f64 phi1) (sin.f64 phi2))
Compiler

Compiled 5181 to 2971 computations (42.7% saved)

simplify140.0ms (0.7%)

Algorithm
egg-herbie
Rules
599×associate-*r*_binary64
559×associate-*l*_binary64
336×distribute-rgt-neg-in_binary64
313×*-commutative_binary64
313×distribute-lft-neg-in_binary64
Counts
133 → 106
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03395820
19835004
234354802
350354802

prune120.0ms (0.6%)

Pruning

16 alts after pruning (16 fresh and 0 done)

PrunedKeptTotal
New9115106
Fresh11112
Picked101
Done000
Total10316119
Error
4.5b
Counts
119 → 16
Alt Table
StatusErrorProgram
16.7b
(*.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (/.f64 (*.f64 (+.f64 (cos.f64 (-.f64 phi1 phi2)) (cos.f64 (+.f64 phi2 phi1))) (+.f64 (pow.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) 3) (pow.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) 3))) (*.f64 2 (+.f64 (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 lambda1) (*.f64 (sin.f64 lambda2) (-.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))))))) R)
5.7b
(*.f64 (*.f64 (cbrt.f64 (*.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))) R)) (cbrt.f64 (*.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))) R))) (cbrt.f64 (*.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))) R)))
5.4b
(*.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cbrt.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (cbrt.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))) (cbrt.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))))) R)
39.2b
(cbrt.f64 (pow.f64 (*.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))) R) 3))
5.1b
(*.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (cbrt.f64 (pow.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) 3)))) R)
5.1b
(*.f64 (*.f64 (sqrt.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))))) (sqrt.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))))) R)
5.0b
(*.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (log.f64 (pow.f64 (exp.f64 (*.f64 (cos.f64 phi2) (cos.f64 phi1))) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))) R)
5.6b
(*.f64 (*.f64 (*.f64 (cbrt.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))))) (cbrt.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))))) (cbrt.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))))) R)
17.1b
(*.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (cbrt.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 3))))) R)
4.9b
(*.f64 (-.f64 (/.f64 PI.f64 2) (asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))))) R)
5.1b
(*.f64 (sqrt.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))) (*.f64 R (sqrt.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))))))
5.6b
(*.f64 (*.f64 (cbrt.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))) (cbrt.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))) (*.f64 R (cbrt.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))))))
5.1b
(*.f64 (cbrt.f64 (pow.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))) 3)) R)
4.9b
(*.f64 (log.f64 (exp.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))))) R)
4.9b
(*.f64 (acos.f64 (+.f64 (cbrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) 3)) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))) R)
35.2b
(*.f64 (*.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))) (sqrt.f64 R)) (sqrt.f64 R))
Compiler

Compiled 4198 to 1338 computations (68.1% saved)

localize34.0ms (0.2%)

Local error

Found 4 expressions with local error:

0.3b
(*.f64 (acos.f64 (+.f64 (cbrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) 3)) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))) R)
0.3b
(pow.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) 3)
1.1b
(acos.f64 (+.f64 (cbrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) 3)) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
29.4b
(cbrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) 3))

rewrite157.0ms (0.7%)

Algorithm
rewrite-expression-head
Error
4.5b
Rules
10×add-sqr-sqrt_binary64
add-cbrt-cube_binary64
add-exp-log_binary64
pow1_binary64
*-un-lft-identity_binary64
Counts
4 → 67
Calls

4 calls:

4.0ms
(pow.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) 3)
3.0ms
(*.f64 (acos.f64 (+.f64 (cbrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) 3)) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))) R)
2.0ms
(cbrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) 3))
1.0ms
(acos.f64 (+.f64 (cbrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) 3)) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
Compiler

Compiled 2483 to 655 computations (73.6% saved)

series215.0ms (1%)

Error
4.5b
Counts
4 → 47
Calls

4 calls:

75.0ms
(*.f64 (acos.f64 (+.f64 (cbrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) 3)) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))) R)
50.0ms
(pow.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) 3)
38.0ms
(acos.f64 (+.f64 (cbrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) 3)) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
23.0ms
(cbrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) 3))
Compiler

Compiled 3765 to 2361 computations (37.3% saved)

simplify142.0ms (0.7%)

Algorithm
egg-herbie
Rules
516×cancel-sign-sub-inv_binary64
502×unswap-sqr_binary64
446×*-commutative_binary64
303×distribute-rgt-neg-in_binary64
250×log-prod_binary64
Counts
114 → 98
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
01723891
13833232
211773173
325003155
446393152
549483152

prune132.0ms (0.6%)

Pruning

16 alts after pruning (15 fresh and 1 done)

PrunedKeptTotal
New97198
Fresh11415
Picked011
Done000
Total9816114
Error
4.5b
Counts
114 → 16
Alt Table
StatusErrorProgram
16.7b
(*.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (/.f64 (*.f64 (+.f64 (cos.f64 (-.f64 phi1 phi2)) (cos.f64 (+.f64 phi2 phi1))) (+.f64 (pow.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) 3) (pow.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) 3))) (*.f64 2 (+.f64 (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 lambda1) (*.f64 (sin.f64 lambda2) (-.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))))))) R)
5.7b
(*.f64 (*.f64 (cbrt.f64 (*.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))) R)) (cbrt.f64 (*.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))) R))) (cbrt.f64 (*.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))) R)))
5.4b
(*.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cbrt.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (cbrt.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))) (cbrt.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))))) R)
39.2b
(cbrt.f64 (pow.f64 (*.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))) R) 3))
5.1b
(*.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (cbrt.f64 (pow.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) 3)))) R)
5.1b
(*.f64 (*.f64 (sqrt.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))))) (sqrt.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))))) R)
5.0b
(*.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (log.f64 (pow.f64 (exp.f64 (*.f64 (cos.f64 phi2) (cos.f64 phi1))) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))) R)
5.6b
(*.f64 (*.f64 (*.f64 (cbrt.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))))) (cbrt.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))))) (cbrt.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))))) R)
17.1b
(*.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (cbrt.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 3))))) R)
4.9b
(*.f64 (-.f64 (/.f64 PI.f64 2) (asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))))) R)
5.1b
(*.f64 (sqrt.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))) (*.f64 R (sqrt.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))))))
5.7b
(*.f64 (*.f64 (cbrt.f64 (acos.f64 (+.f64 (cbrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) 3)) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))) (cbrt.f64 (acos.f64 (+.f64 (cbrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) 3)) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))) (*.f64 R (cbrt.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi2) (sin.f64 phi1)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))))))
5.1b
(*.f64 (cbrt.f64 (pow.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))) 3)) R)
4.9b
(*.f64 (log.f64 (exp.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))))) R)
4.9b
(*.f64 (acos.f64 (+.f64 (cbrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) 3)) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))) R)
35.2b
(*.f64 (*.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))) (sqrt.f64 R)) (sqrt.f64 R))
Compiler

Compiled 3521 to 1213 computations (65.5% saved)

localize31.0ms (0.1%)

Local error

Found 4 expressions with local error:

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

rewrite109.0ms (0.5%)

Algorithm
rewrite-expression-head
Error
4.5b
Rules
12×add-sqr-sqrt_binary64
10×*-un-lft-identity_binary64
10×add-cube-cbrt_binary64
exp-prod_binary64
log-pow_binary64
Counts
4 → 58
Calls

4 calls:

4.0ms
(*.f64 (log.f64 (exp.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))))) R)
2.0ms
(log.f64 (exp.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))))))
2.0ms
(exp.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))))
1.0ms
(acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))))
Compiler

Compiled 2589 to 212 computations (91.8% saved)

series478.0ms (2.3%)

Error
4.5b
Counts
4 → 51
Calls

4 calls:

218.0ms
(*.f64 (log.f64 (exp.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))))) R)
156.0ms
(log.f64 (exp.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))))))
58.0ms
(exp.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))))
40.0ms
(acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))))
Compiler

Compiled 4051 to 2684 computations (33.7% saved)

simplify283.0ms (1.3%)

Algorithm
egg-herbie
Rules
666×times-frac_binary64
385×associate-/r/_binary64
373×log-prod_binary64
336×unswap-sqr_binary64
297×distribute-rgt-out_binary64
Counts
109 → 89
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
01065909
11754844
23234844
34504844
46094838
510854838
627774838
745104838
849334838
949124838

prune70.0ms (0.3%)

Pruning

16 alts after pruning (15 fresh and 1 done)

PrunedKeptTotal
New85489
Fresh31114
Picked101
Done011
Total8916105
Error
4.5b
Counts
105 → 16
Alt Table
StatusErrorProgram
5.4b
(*.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cbrt.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (cbrt.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))) (cbrt.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))))) R)
39.2b
(cbrt.f64 (pow.f64 (*.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))) R) 3))
5.0b
(*.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (log.f64 (pow.f64 (exp.f64 (*.f64 (cos.f64 phi2) (cos.f64 phi1))) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))) R)
5.6b
(*.f64 (*.f64 (*.f64 (cbrt.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))))) (cbrt.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))))) (cbrt.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))))) R)
17.1b
(*.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (cbrt.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 3))))) R)
4.9b
(*.f64 (-.f64 (/.f64 PI.f64 2) (asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))))) R)
35.2b
(*.f64 (*.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))) (sqrt.f64 R)) (sqrt.f64 R))
5.0b
(*.f64 (log.f64 (/.f64 (sqrt.f64 (exp.f64 PI.f64)) (exp.f64 (asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))))))) R)
5.0b
(*.f64 (log.f64 (pow.f64 E.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))))) R)
4.9b
(*.f64 (exp.f64 (log.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))))) R)
5.1b
(*.f64 (sqrt.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))) (*.f64 R (sqrt.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))))))
5.5b
(*.f64 (+.f64 (*.f64 2 (log.f64 (cbrt.f64 (exp.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))))))) (log.f64 (cbrt.f64 (exp.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))))))) R)
5.7b
(*.f64 (*.f64 (cbrt.f64 (acos.f64 (+.f64 (cbrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) 3)) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))) (cbrt.f64 (acos.f64 (+.f64 (cbrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) 3)) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))) (*.f64 R (cbrt.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi2) (sin.f64 phi1)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))))))
5.7b
(*.f64 (*.f64 (cbrt.f64 (*.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))) R)) (cbrt.f64 (*.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))) R))) (cbrt.f64 (*.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))) R)))
5.1b
(*.f64 (acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (cbrt.f64 (pow.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) 3)))) R)
4.9b
(*.f64 (acos.f64 (+.f64 (cbrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) 3)) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))) R)
Compiler

Compiled 2173 to 557 computations (74.4% saved)

regimes3.9s (18.2%)

Accuracy

Total 0.3b remaining (9%)

Threshold costs 0.3b (9%)

Compiler

Compiled 106390 to 59399 computations (44.2% saved)

simplify4.0ms (0%)

Algorithm
egg-herbie
Rules
*-commutative_binary64
+-commutative_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02553
13553
23553

end35.0ms (0.2%)

Compiler

Compiled 185 to 120 computations (35.1% saved)

sample9.8s (46.5%)

Algorithm
intervals
Results
6.5s5467×body1024valid
943.0ms1441×body512valid
754.0ms274×body2048valid
213.0ms507×body256valid
64.0ms311×body128valid
5.0msbody1024invalid
1.0msbody512invalid
0.0msbody128invalid
Compiler

Compiled 857 to 466 computations (45.6% saved)

Profiling

Loading profile data...